IP Library › Granted Patent US 12,153,400
Granted Patent B2
US 12,153,400 · App. 16/708,036 · Granted Nov 26, 2024

Human-in-the-loop robot training for robotic process automation

Inventors: Prabhdeep Singh (Bellevue, WA); Liji Kunnath (Bangalore, IN); Palak Kadakia (Bellevue, WA)
Assignee: UiPath, Inc.
G05B19/4155B25J9/163G06F8/60G06N20/00G05B2219/39371
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 12,153,400
App. No.
16/708,036
Filed
Dec 9, 2019
Granted
Nov 26, 2024
Kind
B2
Art Unit
2194
USPC
700/250
Abstract

Human-in-the-loop robot training using artificial intelligence (AI) for robotic process automation (RPA) is disclosed. This may be accomplished by a listener robot watching interactions of a user or another robot with a computing system. Based on the interactions by the user or robot with the computing system, the robot may be improved and/or personalized for the user or a group of users.

Claims (50)

1. A system, comprising:

a user computing system comprising a robotic process automation (RPA) robot and a listener; and

a server, wherein

the listener is configured to:

monitor user interactions with the RPA robot via the user computing system and log data pertaining to the interactions, and

transmit the logged data pertaining to the user interactions to the server, and the server is configured to:

receive the logged data pertaining to the user interactions, determine whether a modification should be made to an RPA workflow for the RPA robot based on the logged data, and

when the server determines that the modification should be made and the modification is addressable by inserting an activity or sequence of activities into the RPA workflow for the RPA robot, insert the activity or sequence of activities into the RPA workflow for the RPA robot that makes the determined modification.

2. The system of claim 1 , wherein the server is further configured to:

generate a new version of the RPA robot using the modified RPA workflow; and

deploy the new version of the RPA robot to the user computing system.

3. The system of claim 1 , wherein the user computing system is configured to:

receive a new version of the RPA robot from the server; and

deploy the new version of the RPA robot.

4. The system of claim 1 , wherein the logged data comprises exceptions noted by the user via the user computing system during operation of the RPA robot.

5. The system of claim 4 , wherein the exceptions pertain to errors by the RPA robot, user preferences, or both.

6. The system of claim 1 , wherein the determination of whether a modification should be made is based on a predetermined number of exceptions of a same type being received, due to passage of a predetermined amount of time, based on an exception frequency, or any combination thereof.

7. The system of claim 1 , wherein when the modification is not addressable by inserting the activity or sequence of activities into the RPA workflow, the server is further configured to:

train a local machine learning (ML) model based on the logged data; and

modify the RPA workflow to call the trained ML model.

8. The system of claim 1 , wherein the server is further configured to:

collect logged data pertaining to interactions of other users of other computing systems with respective RPA robots,

when exceptions for the user are similar to those in the collected logged data for a group of the other users that is a subset of all of the other users:

train a community ML model for the subset of users, and

modify the RPA workflow to call the community model, and

when exceptions for the user are similar to those in the collected logged data for a group of the other users and exceeds a global retraining threshold:

train a global ML model for all users, and

modify the RPA workflow to call the global model.

9. The system of claim 1 , wherein the logged data is transmitted to the server by the listener as part of a heartbeat message to a conductor application running on the server.

10. A computer-implemented method, comprising:

receiving, by a computing system, logged data pertaining to interactions of a user with a robotic process automation (RPA) robot;

determining, by the computing system, whether a modification should be made to an RPA workflow for the RPA robot based on the logged data; and

when the computing system determines that the modification should be made and the modification is addressable by inserting an activity or sequence of activities into the RPA workflow for the RPA robot, inserting the activity or sequence of activities into the RPA workflow for the RPA robot that makes the determined modification, by the computing system.

11. The computer-implemented method of claim 10 , further comprising:

generating a new version of the RPA robot, by the computing system, using the modified RPA workflow; and

deploying the new version of the RPA robot, by the computing system.

12. The computer-implemented method of claim 10 , wherein the logged data comprises exceptions noted by the user during operation of the RPA robot.

13. The computer-implemented method of claim 12 , wherein the exceptions pertain to errors by the RPA robot, user preferences, or both.

14. The computer-implemented method of claim 10 , wherein the determination of whether a modification should be made is based on a predetermined number of exceptions of a same type being received, due to passage of a predetermined amount of time, based on an exception frequency, or any combination thereof.

15. The computer-implemented method of claim 10 , wherein when the modification is not addressable by inserting the activity or sequence of activities into the RPA workflow, the method further comprises:

training a local machine learning (ML) model based on the logged data, by the computing system; and

modifying the RPA workflow to call the trained ML model, by the computing system.

16. The computer-implemented method of claim 10 , further comprising:

collecting logged data pertaining to interactions of other users with respective RPA robots, by the computing system;

when exceptions for the user are similar to those in the collected logged data for a group of the other users that is a subset of all of the other users:

training a community ML model for the subset of users, by the computing system, and

modifying the RPA workflow to call the community model, by the computing system; and

when exceptions for the user are similar to those in the collected logged data for a group of the other users and exceeds a global retraining threshold:

training a global ML model for all users, by the computing system, and

modifying the RPA workflow to call the global model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2020
From: SINGH, PRABHDEEP; KUNNATH, LIJI; KADAKIA, PALAK
To: UIPATH, INC.
Reel/Frame 051528/0536 →
Continuity (2)
Provisional Application 62915429 · Oct 15, 2019
Related Publication 20210109503A1 · Apr 15, 2021