IP Library Granted Patent US 11,748,682
Granted Patent B2
US 11,748,682 · App. 17/559,524 · Granted Sep 5, 2023

Systems and methods for discovery of automation opportunities

Inventors: Ariel Smutko (Rehovot, IL); Aviv Yehezkel (Ramat-Gan, IL); Eran Roseberg (Hogla, IL); Yaron Moshe Bialy (Madrid, ES)
Assignee: Nice Ltd.
G06Q10/0633G06Q10/063114G06Q10/103H04M3/5175
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,748,682
App. No.
17/559,524
Granted
Sep 5, 2023
Kind
B2
Abstract

A system and method analyzes computer actions to identify computer-based processes (e.g. computer-user interactions) which are automation candidates. A data gathering process executed by a processor on a computer may collect low-level user action information or items, each low-level user action information or item including for example an input type description, a user name, and screen window information. At a computer sequential pattern mining may be applied to determine a set of subprocesses, each subprocess including a series of low-level user actions, each user action associated with a user action vector, and each subprocess associated with a subprocess vector generated from user action vectors associated with (typically generalized) low-level user actions comprised in the subprocess. The subprocess vectors may be grouped or clustered to create processes. For each process, an automation score may be calculated using the actions in the subprocesses in the process.

Claims (52)

1. A method for analyzing computer actions on a computer desktop system to identify computer-based processes which are automation candidates, the method comprising using one or more computers:

using a data gathering process executed by a processor on a computer of the one or more computers, gathering low-level user action computer information items describing user input to the computer, each low-level user action computer information item comprising an input type description, a username of the person inputting the user action, and screen window information; and

at a computer of the one or more computers:

applying pattern mining to determine a set of subprocesses, each subprocess comprising a series of low-level user actions, each user action associated with a user action vector, and each subprocess associated with a subprocess vector generated from user action vectors associated with low-level user actions comprised in the subprocess;

clustering the subprocess vectors to create a new plurality of processes;

grouping the new plurality of processes using contexts using a learning algorithm;

using the learning algorithm, continuously updating the new plurality of processes for each low-level user actions;

for each of the new plurality of processes, calculating an automation score using the actions comprised in the subprocesses comprised in the process;

determining whether the automation score of the new plurality of processes has passed a support threshold; and

once a support threshold has been passed, creating an automation bot through a remote server, wherein the automation bot automatically performs the new process within the plurality of new processes, by replacing the low-level user actions in the new process with automated bot actions.

2. The method of claim 1 , wherein calculating an automation score for a process is based on the time spent for each subprocess comprised in the process and a quality score for each low-level user action comprised in each subprocess comprised in the process.

3. The method of claim 1 , comprising creating a user action vector by:

creating a text string from at least the input type description, the name of the application executing the screen window, and the screen window information; and

calculating as the user action vector a word embedding of the text string.

4. The method of claim 1 comprising displaying a visualization for a process including the automation score.

5. The method of claim 1 wherein the pattern mining comprises sequential pattern mining.

6. The method of claim 1 wherein the learning algorithm comprises a TD-IDF (term frequency-inverse document frequency) learning algorithm.

7. The method of claim 1 comprising ordering subprocesses using a maximum likelihood estimator.

8. The method of claim 1 wherein determining whether the automation score of the new plurality of processes has passed a support threshold is performed using a PrefixSpan algorithm.

9. A method for identifying automation candidates on a computer desktop system, the method comprising:

using a data gathering process executed by a processor on a computer of one or more computers, gathering low-level user action computer information items describing user input to the computer, each low-level user action computer information item comprising a username of the person inputting the user action, and screen window information; and

at a computer of the one or more computers:

determining a set of subprocesses, each subprocess comprising a series of low-level user actions, each user action associated with a user action vector, and each subprocess associated with a subprocess vector generated from user action vectors;

clustering the subprocess vectors to create a new plurality of processes;

using a learning algorithm, updating the new plurality of processes for each low-level user actions;

for each of the new plurality of processes, calculating an automation score using the actions comprised in the subprocesses comprised in the process;

determining whether the automation score of the new plurality of processes has passed a support threshold; and

if a support threshold has been passed, creating an automation bot through a remote server, wherein the automation bot automatically performs the new process within the plurality of new processes, by replacing the low-level user actions in the new process with bot actions.

10. The method of claim 9 , wherein calculating an automation score for a process is based on the time spent for each subprocess comprised in the process and a quality score for each low-level user action comprised in each subprocess comprised in the process.

11. The method of claim 9 , comprising creating a user action vector by:

creating a text string from at least the input type description, the name of the application executing the screen window, and the window information; and

calculating as the user action vector a word embedding of the text string.

12. The method of claim 9 comprising displaying a visualization for a process including the score.

13. The method of claim 9 wherein the pattern mining comprises sequential pattern mining.

14. The method of claim 9 wherein the learning algorithm comprises a TD-IDF (term frequency-inverse document frequency) learning algorithm.

15. A system for analyzing computer actions on a computer desktop system to identify computer-based processes which are automation candidates, the system comprising:

a first processor configured to gather low-level user action computer information items describing user input to a computer, each low-level user action computer information item comprising an input type description and window information; and

a second processor configured to:

apply pattern mining to determine a set of subprocesses, each subprocess comprising a series of low-level user actions, each user action associated with a user action vector, and each subprocess associated with a subprocess vector generated from user action vectors associated with low-level user actions comprised in the subprocess;

cluster the subprocess vectors to create a new plurality of processes;

group the new plurality of processes using contexts using a learning algorithm;

using the learning algorithm, update the new plurality of processes for each low-level user actions;

for each of the new plurality of processes, calculate an automation score;

determine, using a PrefixSpan algorithm, whether the automation score of the new plurality of processes has passed a support threshold; and

once a support threshold has been passed, create an automation bot through a remote server, wherein the automation bot automatically performs the new process within the plurality of new processes, by replacing the low-level user actions in the new process with automated bot actions.

16. The system of claim 15 , wherein the second processor is configured to calculate an automation score for a process based on the time spent for each subprocess comprised in the process and a quality score for each low-level user action comprised in each subprocess comprised in the process.

17. The system of claim 15 , wherein the second processor is configured to create a user action vector by:

creating a text string from at least the input type description, the name of the application executing the screen window, and the screen window information; and

calculating as the user action vector a word embedding of the text string.

18. The system of claim 15 , wherein the second processor is configured to display a visualization for a process including the automation score.

19. The system of claim 15 , wherein the pattern mining comprises sequential pattern mining.

20. The system of claim 15 , wherein calculating an automation score is performed using a duration for the process.

Assignments (2)
SECURITY INTEREST Recorded Feb 26, 2026
From: NICE LTD; NICE SYSTEMS INC.; NICE SYSTEMS TECHNOLOGIES INC.; INCONTACT, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 074986/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2022
From: SMUTKO, ARIEL; YEHEZKEL, AVIV; ROSEBERG, ERAN; BIALY, YARON MOSHE
To: NICE LTD.
Reel/Frame 058525/0462 →
Continuity (2)
Continuation 16440287 · Jun 13, 2019
Related Publication 20220114516A1 · Apr 14, 2022
Cited By (1)
US 12,518,229