# US 2021/0240320 A1 · Custom user interface generation for completing a predicted task

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0240320 A1
- Document ID: US20210240320A1
- Status: Published application
- Kind: A1
- Application number: 16/941,176
- Filed: 2020-07-28
- Published: 2021-08-05
- Earliest claimed: 2020-01-31
- Assignees: salesforce.com, inc.
- Applicants: salesforce.com, inc.
- Inventors: David James WOODWARD; Brian J. LONSDORF; Owen Winne SCHOPPE; Alan Martin ROSS; Jessica LUNDIN; Sönke ROHDE
- Web page: https://patentgrep.com/patent/US20210240320A1

## CPC

- G06F 3/0484: for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 9/451: Execution arrangements for user interfaces
- G06F 9/452: {Remote windowing, e.g. X-Window System, desktop virtualisation (protocols for virtual reality H04L67/131)}
- G06F 9/453: {Help systems}
- G06F 11/3438: {monitoring of user actions (tracking the activity of the user H04L67/535)}
- G06N 5/04: Inference or reasoning models
- G06N 20/00: Machine learning
- G06Q 10/10: Office automation; Time management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Disclosed herein are system, method, and computer program product embodiments for generating custom user interfaces (UIs) for completing a task. One embodiment operates by obtaining contextual information associated with a user and an application on a user device operated by the user, where the application includes a plurality of UI elements. Then, determining the user is attempting to complete a first task within the application based on the contextual information and a prediction model. The embodiment further operates by obtaining a minimum set of UI elements required for the first task. Further, the embodiment operates by transmitting a first custom UI including the minimum set of UI elements for the first task to the user device for display to the user.

## Claims

### Claim 1

A method, comprising:
obtaining, by one or more computing devices, contextual information associated with a user and an application on a user device operated by the user, wherein the application comprises a plurality of user interface (UI) elements;
determining, by one or more computing devices, the user is attempting to complete a first task within the application based on the contextual information and a prediction model;
obtaining, by the one or more computing devices, a minimum set of UI elements required for the first task; and
transmitting, by the one or more computing devices, a first custom UI comprising the minimum set of UI elements for the first task to the user device for display to the user.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
transmitting for display a prompt requesting confirmation that the user is attempting to complete the first task;
receiving a response to the prompt; and
updating the prediction model based on the response to the prompt.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
obtaining a minimum set of UI elements required to complete a second task;
generating an image of a second custom UI comprising the minimum set of UI elements required to complete the second task; and
transmitting the image to the user device,
wherein the image is displayed to the user in response to the user selecting an option corresponding to the second task,
wherein the option is displayed with the first custom UI.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
obtaining a first age statistic associated with the first task and a second age statistic associated with the second task,
wherein the prediction model ranks the first task and the second task based on the first age statistic and the second age statistic,
wherein the second task is determined based on the contextual information and the prediction model, and
wherein the first task is ranked higher than the second task.

### Claim 5 (depends on 3)

The method of claim 3, further comprising:
obtaining, by the one or more computing devices, a plurality of data structures comprising:
a first data structure identifying a first subset of the plurality of UI elements manipulated by a first user while the first user was completing the first task in the application; and
a second data structure identifying a second subset of the plurality of UI elements manipulated by a second user while the second user was completing the second task in the application;
grouping, using a machine learning model executing on the one or more computing devices, the plurality of data structures into a plurality of clusters comprising:
a first cluster corresponding to the first task and comprising the first data structure; and
a second cluster corresponding to the second task and comprising the second data structure;
determining the minimum set of UI elements required for the first task based on the first cluster; and
determining the minimum set of UI elements required for the second task based on a subset of the plurality of data structures in the second cluster.

### Claim 6 (depends on 5)

The method of claim 5, further comprising:
obtaining a plurality of distances between the plurality of clusters,
wherein generating the image is based on the second cluster being the nearest neighbor of the first cluster.

### Claim 7 (depends on 1)

The method of claim 1, wherein the contextual information comprises an application object that has been generated or modified since the user last logged into the application.

### Claim 8 (depends on 1)

The method of claim 1, wherein the contextual information comprises a current date and an application object with a date within a range from the current date.

### Claim 9

A system, comprising:
one or more computer processor;
a memory storing instructions that when executed by the one or more computer processors cause the one or more computer processors to:
obtain, contextual information associated with a user and an application on a user device operated by the user, wherein the application comprises a plurality of user interface (UI) elements;
determine the user is attempting to complete a first task within the application based on the contextual information and a prediction model;
obtain a minimum set of UI elements required for the first task; and
transmit a first custom UI comprising the minimum set of UI elements for the first task to the user device for display to the user.

### Claim 10 (depends on 9)

The system of claim 9, wherein executing the instructions further cause the one or more computer processors to:
obtain a minimum set of UI elements required to complete a second task;
generate an image of a second custom UI comprising the minimum set of UI elements required to complete the second task; and
transmit the image to the user device,
wherein the image is displayed to the user in response to the user selecting an option corresponding to the second task,
wherein the option is displayed with the first custom UI.

### Claim 11 (depends on 10)

The system of claim 10, wherein executing the instructions further cause the one or more computer processors to:
obtain a first age statistic associated with the first task and a second age statistic associated with the second task,
wherein the prediction model ranks the first task and the second task based on the first age statistic and the second age statistic,
wherein the second task is determined based on the contextual information and the prediction model, and
and wherein the first task is ranked higher than the second task.

### Claim 12 (depends on 10)

The system of claim 10, wherein executing the instructions further cause the one or more computer processors to:
obtain a plurality of data structures comprising:
a first data structure identifying a first subset of the plurality of UI elements manipulated by a first user while the first user was completing the first task in the application; and
a second data structure identifying a second subset of the plurality of UI elements manipulated by a second user while the second user was completing the second task in the application;
group, using a machine learning model, the plurality of data structures into a plurality of clusters comprising:
a first cluster corresponding to the first task and comprising the first data structure; and
a second cluster corresponding to the second task and comprising the second data structure;
determine the minimum set of UI elements required for the first task based on the first cluster; and
determine the minimum set of UI elements required for the second task based on a subset of the plurality of data structures in the second cluster.

### Claim 13 (depends on 12)

The system of claim 12, wherein executing the instructions further cause the one or more computer processors to:
obtain a plurality of distances between the plurality of clusters,
wherein generating the image is based on the second cluster corresponding to the second task being the nearest neighbor of the first cluster corresponding to the first task.

### Claim 14 (depends on 9)

The system of claim 9, wherein the contextual information comprises an application object that has been generated or modified since the user last logged into the application.

### Claim 15 (depends on 9)

The system of claim 9, wherein the contextual information comprises a current date and an application object with a date within a range from the current date.

### Claim 16

A non-transitory computer readable medium (CRM) storing instructions that when executed by one or more computer processors cause the one or more computer processors to:
obtain, contextual information associated with a user and an application on a user device operated by the user, wherein the application comprises a plurality of user interface (UI) elements;
determine the user is attempting to complete a first task within the application based on the contextual information and a prediction model;
obtain a minimum set of UI elements required for the first task; and
transmit a first custom UI comprising the minimum set of UI elements for the first task to the user device for display to the user.

### Claim 17 (depends on 16)

The non-transitory CRM of claim 16, wherein the instructions further cause the one or more computer processors to::
obtain a minimum set of UI elements required to complete a second task;
generate an image of a second custom UI comprising the minimum set of UI elements required to complete the second task; and
transmit the image to the user device,
wherein the image is displayed to the user in response to the user selecting an option corresponding to the second task,
wherein the option is displayed with the first custom UI.

### Claim 18 (depends on 17)

The non-transitory CRM of claim 17, wherein the instructions further cause the one or more computer processors to:
obtain a plurality of data structures comprising:
a first data structure identifying a first subset of the plurality of UI elements manipulated by a first user while the first user was completing the first task in the application; and
a second data structure identifying a second subset of the plurality of UI elements manipulated by a second user while the second user was completing the second task in the application;
group, using a machine learning model, the plurality of data structures into a plurality of clusters comprising:
a first cluster corresponding to the first task and comprising the first data structure; and
a second cluster corresponding to the second task and comprising the second data structure;
determine the minimum set of UI elements required for the first task based on the first cluster;
determine the minimum set of UI elements required for the second task based on a subset of the plurality of data structures in the second cluster; and
obtain a plurality of distances between the plurality of clusters,
wherein generating the image is based on the second cluster corresponding to the second task being the nearest neighbor of the first cluster corresponding to the first task.

### Claim 19 (depends on 16)

The non-transitory CRM of claim 16, wherein the contextual information comprises an application object that has been generated or modified since the user last logged into the application.

### Claim 20 (depends on 16)

The non-transitory CRM of claim 16, wherein the contextual information comprises a current date and an application object with a date within a range from the current date.
