MLchartDataset catalogue

Patent · US12423609B2 · B2 · US

Automatic activation and configuration of robotic process automation workflows using machine learning

(11) Publication number
US12423609B2
(21) Application number
16/707,814
(22) Filing date
2019-12-09
(30) Priority date
2019-10-15
(43) Publication date
2025-09-23
(45) Date of grant
2025-09-23
(51) IPC
G06F 18/21; G06F 18/214; G06N 20/00; G06N 20/20; G06N 7/01; G06V 10/778
(52) CPC
  • G06N Computing arrangements based on specific computational models: 20/00, 20/20, 3/006, 3/047, 3/08, 5/043, 7/01
  • B25J Manipulators; chambers provided with manipulation devices: 9/161
  • G06F Electric digital data processing: 18/2148, 18/2178, 18/25
  • G06V Image or video recognition or understanding: 10/7747, 10/7784, 10/80
(73) Assignee
UiPath Inc
(72) Inventors
Prabhdeep Singh; Anton MCGONNELL
(54) Title
Automatic activation and configuration of robotic process automation workflows using machine learning
(57) Abstract

Automatic activation and configuration of robotic process automation (RPA) workflows using machine learning (ML) is disclosed. One or more parts of an RPA workflow may be turned on or off based on one or more probabilistic ML models. RPA robots may be configured to modify parameters, determine how much of a certain resource to provide, determine more optimal thresholds, etc. Such RPA workflows implementing ML may thus be hybrids of both deterministic and probabilistic logic, and may learn and improve over time by retraining the ML models, adjusting the confidence thresholds, using local/global confidence thresholds, providing or adjusting modifiers for the local confidence thresholds, implement a supervisor system that monitors ML model performance, etc.

Full text
View on Google Patents

Claims (20)

  1. A computer-implemented method, comprising: calling at least one machine learning (ML) model, by a robotic process automation (RPA) robot, when executing a probabilistic activity of an RPA workflow; receiving, by the RPA robot, at least one confidence value from the at least one ML model; responsive to the at least one confidence value not exceeding a confidence threshold: turning off a workflow section after the probabilistic activity, by the RPA robot, via the probabilistic activity; and responsive to the at least one confidence value exceeding the confidence threshold: turning on the workflow section after the probabilistic activity, by the RPA robot, via the probabilistic activity, and executing the workflow section following the probabilistic activity, by the RPA robot, wherein the RPA robot, in the probabilistic activity, determines whether the at least one confidence value exceeds the confidence threshold, and the turning on or off of the workflow section after the probabilistic activity comprises modifying activity parameters within the RPA workflow.
  2. The computer-implemented method of claim 1, further comprising: generating the RPA workflow comprising a plurality of deterministic activities and the at least one probabilistic activity configured to call the at least one ML model; and generating the RPA robot that implements the generated RPA workflow.
  3. The computer-implemented method of claim 1, further comprising: raising or lowering the confidence threshold, by the RPA robot, after the process of the workflow has been run a predetermined number of times.
  4. The computer-implemented method of claim 3, wherein the raising or lowering of the confidence threshold by the RPA robot is repeated until a winning state is achieved.
  5. The computer-implemented method of claim 3, further comprising: determining, by the RPA robot, that the at least one ML models are not achieving an outcome after a predetermined number of modifications to the confidence threshold; and retraining the at least one ML models.
  6. The computer-implemented method of claim 1, wherein the RPA robot is configured to determine how much of a certain resource to provide, determine a more optimal confidence threshold, or both.
  7. The computer-implemented method of claim 1, wherein the RPA robot calls multiple ML models and the confidence values from each ML model are combined to determine a global confidence value that is compared against the confidence threshold for the probabilistic activity.
  8. The computer-implemented method of claim 7, wherein the global confidence value is determined by applying a respective weight to the confidence values and combining the weighted confidence values.
  9. A non-transitory computer-readable medium storing a computer program, the computer program configured to cause at least one processor to: call a machine learning (ML) model while executing a probabilistic activity of an RPA workflow; receive a confidence value from the ML model; responsive to the confidence value not exceeding a confidence threshold, turn off a workflow section after the probabilistic activity, via the probabilistic activity; and responsive to the confidence value exceeding the confidence threshold: turn on a workflow section after the probabilistic activity, via the probabilistic activity, and execute the workflow section following the probabilistic activity, wherein the RPA robot, in the probabilistic activity, determines whether the at least one confidence value exceeds the confidence threshold, and the turning on or off of the workflow section after the probabilistic activity comprises modifying activity parameters within the RPA workflow.
  10. The non-transitory computer-readable medium of claim 9, wherein the computer program is further configured to cause the at least one processor to: raise or lower the confidence threshold after the process of the workflow has been run a predetermined number of times.
  11. The non-transitory computer-readable medium of claim 10, wherein the raising or lowering of the confidence threshold is repeated until a winning state is achieved.
  12. The non-transitory computer-readable medium of claim 10, wherein the computer program is further configured to cause the at least one processor to: determine that the ML model is not achieving an outcome after a predetermined number of modifications to the confidence threshold; and provide an indication to a server to retrain the ML model.
  13. The non-transitory computer-readable medium of claim 9, wherein the computer program is further configured to cause the at least one processor to: determine how much of a certain resource to provide, determine a more optimal confidence threshold, or both.
  14. A computer-implemented method, comprising: calling at least one machine learning (ML) model, by a robotic process automation (RPA) robot, while executing a probabilistic activity of an RPA workflow; receiving, by the RPA robot, at least one confidence value from the at least one ML model; comparing the at least one confidence value to a plurality of confidence threshold ranges, by the RPA robot; modifying the confidence threshold ranges based on an applied scenario; and responsive to the at least one confidence value falling within a confidence threshold range: turning on a workflow section after the probabilistic activity for that confidence threshold range, by the RPA robot, via the probabilistic activity, and executing the workflow section following the probabilistic activity for that confidence threshold range, by the RPA robot, wherein the RPA robot, in the probabilistic activity, determines whether the at least one confidence value exceeds the confidence threshold, and the turning on or off of the workflow section after the probabilistic activity comprises modifying activity parameters within the RPA workflow.
  15. The computer-implemented method of claim 14, further comprising: generating the RPA workflow comprising a plurality of deterministic activities and the at least one probabilistic activity configured to call the at least one ML model; and generating the RPA robot that implements the generated RPA workflow.
  16. The computer-implemented method of claim 14, further comprising: modifying one or more of the confidence threshold ranges, by the RPA robot, after the process of the workflow is run a predetermined number of times.
  17. The computer-implemented method of claim 16, wherein the modification of the one or more confidence threshold ranges by the RPA robot is repeated until a winning state is achieved.
  18. The computer-implemented method of claim 16, further comprising: determining, by the RPA robot, that the at least one ML models are not achieving an outcome after a predetermined number of modifications to the confidence threshold range; and retraining the at least one ML models.
  19. The computer-implemented method of claim 14, wherein the RPA robot is configured to determine how much of a certain resource to provide, determine a more optimal confidence threshold range, or both.
  20. The computer-implemented method of claim 14, wherein the RPA robot calls multiple ML models and the confidence values from each ML model are combined to determine a global confidence value that is compared against the confidence threshold ranges for the probabilistic activity, and the global confidence value is determined by applying a respective weight to the confidence values and combining the weighted confidence values.

Description

The present invention generally relates to robotic process automation (RPA), and more specifically, to automatic activation and configuration of RPA workflows using machine learning (ML).

Current RPA workflows are deterministic in nature. In other words, the workflows follow a series of logical steps similar to a flowchart. However, this deterministic logic may not be optimal for all situations, and particularly those that change over time. Accordingly, an improved solution may be beneficial.

Certain embodiments of the present invention may provide solutions to the problems and needs in the art that have not yet been fully identified, appreciated, or solved by current RPA technologies. For example, some embodiments of the present invention pertain to automatic activation and configuration of RPA workflows using ML.

In an embodiment, a computer-implemented method includes calling at least one ML model, by an RPA robot, when executing a probabilistic activity of an RPA workflow and receiving, by the RPA robot, at least one confidence value from the at least one ML model. When the at least one confidence value does not exceed a confidence threshold, the computer-implemented method includes turning off, not taking, or otherwise logically avoiding a workflow section after the probabilistic activity, by the RPA robot.

Citations (17)

  • US9195955B2
  • US20160366036A1
  • US20170082555A1
  • CN108352339A
  • US20200333777A1
  • US20180241881A1
  • CN109426543A
  • US20190102452A1
  • US20190138596A1
  • US20190163594A1
  • US20190180746A1
  • US20190205761A1
  • EP3564871A1
  • US10270644B1
  • US20200180148A1
  • US20190317805A1
  • US20190362269A1
Record as JSON
{
  "publication_number": "US12423609B2",
  "country": "US",
  "kind": "B2",
  "title": "Automatic activation and configuration of robotic process automation workflows using machine learning",
  "abstract": "Automatic activation and configuration of robotic process automation (RPA) workflows using machine learning (ML) is disclosed. One or more parts of an RPA workflow may be turned on or off based on one or more probabilistic ML models. RPA robots may be configured to modify parameters, determine how much of a certain resource to provide, determine more optimal thresholds, etc. Such RPA workflows implementing ML may thus be hybrids of both deterministic and probabilistic logic, and may learn and improve over time by retraining the ML models, adjusting the confidence thresholds, using local/global confidence thresholds, providing or adjusting modifiers for the local confidence thresholds, implement a supervisor system that monitors ML model performance, etc.",
  "claims": [
    "1. A computer-implemented method, comprising: calling at least one machine learning (ML) model, by a robotic process automation (RPA) robot, when executing a probabilistic activity of an RPA workflow; receiving, by the RPA robot, at least one confidence value from the at least one ML model; responsive to the at least one confidence value not exceeding a confidence threshold: turning off a workflow section after the probabilistic activity, by the RPA robot, via the probabilistic activity; and responsive to the at least one confidence value exceeding the confidence threshold: turning on the workflow section after the probabilistic activity, by the RPA robot, via the probabilistic activity, and executing the workflow section following the probabilistic activity, by the RPA robot, wherein the RPA robot, in the probabilistic activity, determines whether the at least one confidence value exceeds the confidence threshold, and the turning on or off of the workflow section after the probabilistic activity comprises modifying activity parameters within the RPA workflow.",
    "2. The computer-implemented method of claim 1, further comprising: generating the RPA workflow comprising a plurality of deterministic activities and the at least one probabilistic activity configured to call the at least one ML model; and generating the RPA robot that implements the generated RPA workflow.",
    "3. The computer-implemented method of claim 1, further comprising: raising or lowering the confidence threshold, by the RPA robot, after the process of the workflow has been run a predetermined number of times.",
    "4. The computer-implemented method of claim 3, wherein the raising or lowering of the confidence threshold by the RPA robot is repeated until a winning state is achieved.",
    "5. The computer-implemented method of claim 3, further comprising: determining, by the RPA robot, that the at least one ML models are not achieving an outcome after a predetermined number of modifications to the confidence threshold; and retraining the at least one ML models.",
    "6. The computer-implemented method of claim 1, wherein the RPA robot is configured to determine how much of a certain resource to provide, determine a more optimal confidence threshold, or both.",
    "7. The computer-implemented method of claim 1, wherein the RPA robot calls multiple ML models and the confidence values from each ML model are combined to determine a global confidence value that is compared against the confidence threshold for the probabilistic activity.",
    "8. The computer-implemented method of claim 7, wherein the global confidence value is determined by applying a respective weight to the confidence values and combining the weighted confidence values.",
    "9. A non-transitory computer-readable medium storing a computer program, the computer program configured to cause at least one processor to: call a machine learning (ML) model while executing a probabilistic activity of an RPA workflow; receive a confidence value from the ML model; responsive to the confidence value not exceeding a confidence threshold, turn off a workflow section after the probabilistic activity, via the probabilistic activity; and responsive to the confidence value exceeding the confidence threshold: turn on a workflow section after the probabilistic activity, via the probabilistic activity, and execute the workflow section following the probabilistic activity, wherein the RPA robot, in the probabilistic activity, determines whether the at least one confidence value exceeds the confidence threshold, and the turning on or off of the workflow section after the probabilistic activity comprises modifying activity parameters within the RPA workflow.",
    "10. The non-transitory computer-readable medium of claim 9, wherein the computer program is further configured to cause the at least one processor to: raise or lower the confidence threshold after the process of the workflow has been run a predetermined number of times.",
    "11. The non-transitory computer-readable medium of claim 10, wherein the raising or lowering of the confidence threshold is repeated until a winning state is achieved.",
    "12. The non-transitory computer-readable medium of claim 10, wherein the computer program is further configured to cause the at least one processor to: determine that the ML model is not achieving an outcome after a predetermined number of modifications to the confidence threshold; and provide an indication to a server to retrain the ML model.",
    "13. The non-transitory computer-readable medium of claim 9, wherein the computer program is further configured to cause the at least one processor to: determine how much of a certain resource to provide, determine a more optimal confidence threshold, or both.",
    "14. A computer-implemented method, comprising: calling at least one machine learning (ML) model, by a robotic process automation (RPA) robot, while executing a probabilistic activity of an RPA workflow; receiving, by the RPA robot, at least one confidence value from the at least one ML model; comparing the at least one confidence value to a plurality of confidence threshold ranges, by the RPA robot; modifying the confidence threshold ranges based on an applied scenario; and responsive to the at least one confidence value falling within a confidence threshold range: turning on a workflow section after the probabilistic activity for that confidence threshold range, by the RPA robot, via the probabilistic activity, and executing the workflow section following the probabilistic activity for that confidence threshold range, by the RPA robot, wherein the RPA robot, in the probabilistic activity, determines whether the at least one confidence value exceeds the confidence threshold, and the turning on or off of the workflow section after the probabilistic activity comprises modifying activity parameters within the RPA workflow.",
    "15. The computer-implemented method of claim 14, further comprising: generating the RPA workflow comprising a plurality of deterministic activities and the at least one probabilistic activity configured to call the at least one ML model; and generating the RPA robot that implements the generated RPA workflow.",
    "16. The computer-implemented method of claim 14, further comprising: modifying one or more of the confidence threshold ranges, by the RPA robot, after the process of the workflow is run a predetermined number of times.",
    "17. The computer-implemented method of claim 16, wherein the modification of the one or more confidence threshold ranges by the RPA robot is repeated until a winning state is achieved.",
    "18. The computer-implemented method of claim 16, further comprising: determining, by the RPA robot, that the at least one ML models are not achieving an outcome after a predetermined number of modifications to the confidence threshold range; and retraining the at least one ML models.",
    "19. The computer-implemented method of claim 14, wherein the RPA robot is configured to determine how much of a certain resource to provide, determine a more optimal confidence threshold range, or both.",
    "20. The computer-implemented method of claim 14, wherein the RPA robot calls multiple ML models and the confidence values from each ML model are combined to determine a global confidence value that is compared against the confidence threshold ranges for the probabilistic activity, and the global confidence value is determined by applying a respective weight to the confidence values and combining the weighted confidence values."
  ],
  "description_excerpt": "The present invention generally relates to robotic process automation (RPA), and more specifically, to automatic activation and configuration of RPA workflows using machine learning (ML).\n\nCurrent RPA workflows are deterministic in nature. In other words, the workflows follow a series of logical steps similar to a flowchart. However, this deterministic logic may not be optimal for all situations, and particularly those that change over time. Accordingly, an improved solution may be beneficial.\n\nCertain embodiments of the present invention may provide solutions to the problems and needs in the art that have not yet been fully identified, appreciated, or solved by current RPA technologies. For example, some embodiments of the present invention pertain to automatic activation and configuration of RPA workflows using ML.\n\nIn an embodiment, a computer-implemented method includes calling at least one ML model, by an RPA robot, when executing a probabilistic activity of an RPA workflow and receiving, by the RPA robot, at least one confidence value from the at least one ML model. When the at least one confidence value does not exceed a confidence threshold, the computer-implemented method includes turning off, not taking, or otherwise logically avoiding a workflow section after the probabilistic activity, by the RPA robot.",
  "cpc": [
    "G06N 20/00",
    "B25J 9/161",
    "G06F 18/2148",
    "G06F 18/2178",
    "G06F 18/25",
    "G06N 20/20",
    "G06N 3/006",
    "G06N 3/047",
    "G06N 3/08",
    "G06N 5/043",
    "G06N 7/01",
    "G06V 10/7747",
    "G06V 10/7784",
    "G06V 10/80"
  ],
  "ipc": [
    "G06F 18/21",
    "G06F 18/214",
    "G06N 20/00",
    "G06N 20/20",
    "G06N 7/01",
    "G06V 10/778"
  ],
  "assignees": [
    "UiPath Inc"
  ],
  "inventors": [
    "Prabhdeep Singh",
    "Anton MCGONNELL"
  ],
  "filing_date": "2019-12-09",
  "publication_date": "2025-09-23",
  "grant_date": "2025-09-23",
  "priority_date": "2019-10-15",
  "application_number": "US-201916707814-A",
  "family_id": "75384025",
  "cited_by_count": 0,
  "citations": [
    "US9195955B2",
    "US20160366036A1",
    "US20170082555A1",
    "CN108352339A",
    "US20200333777A1",
    "US20180241881A1",
    "CN109426543A",
    "US20190102452A1",
    "US20190138596A1",
    "US20190163594A1",
    "US20190180746A1",
    "US20190205761A1",
    "EP3564871A1",
    "US10270644B1",
    "US20200180148A1",
    "US20190317805A1",
    "US20190362269A1"
  ]
}

Record 113 of 8,000 in Patents full text (MLC-0201). Request the full dataset.