用于机器人过程自动化的系统和方法技术方案

技术编号:37163207 阅读:14 留言:0更新日期:2023-04-06 22:30
公开了一种训练RPA机器人使用GUI的方法。所述方法包括:捕捉当操作者使用GUI执行过程时所述GUI的视频;捕获当所述操作者使用所述GUI执行所述过程时触发的事件的序列;以及分析所述视频和所述事件的序列,从而生成工作流。所述工作流当由RPA机器人执行时使所述RPA机器人使用所述GUI执行所述过程。机器人使用所述GUI执行所述过程。机器人使用所述GUI执行所述过程。

【技术实现步骤摘要】
【国外来华专利技术】用于机器人过程自动化的系统和方法


[0001]本专利技术涉及用于机器人过程自动化的系统和方法,并且特别地,涉及机器人过程自动化机器人的自动训练。

技术介绍

[0002]人类引导的计算机过程在许多
和努力中无处不在。现代图形用户界面(GUI)已被证明在允许人类操作者使用计算机系统来执行通常复杂的数据处理和/或系统控制任务方面是极其宝贵的。然而,虽然GUI通常允许人类操作者迅速地习惯于执行新任务,但是它们对任务的任何进一步自动化提供了高障碍。
[0003]传统的工作流自动化旨在使用GUI来获取通常由操作者执行的任务并使它们自动化,以使得计算机系统可以执行相同的任务,而无需对用于执行该任务的底层软件进行显著的再设计。最初,这需要展示软件的应用编程接口(API),使得脚本可以被手动地设计成执行软件的所需功能以便执行所需任务。
[0004]机器人过程自动化(RPA)系统代表了这种方法的发展,并且使用软件代理(被称为RPA机器人)来经由现有的图形用户界面(GUI)与计算机系统交互。RPA机器人然后可以生成用于GUI的适当输入命令,以使得计算机系统执行给定过程。这使得过程自动化,将有人值守过程变成无人值守过程。这种方法的优点是众多的,并且包括允许多个RPA机器人跨多个计算机系统执行相同任务的更大的可扩展性,以及由于给定过程中的人为错误的可能性被减少或甚至被消除而具有更大的可重复性。
[0005]然而,训练RPA机器人以执行特定任务的过程可能是繁琐的,并且需要人类操作者使用RPA系统本身来在特定过程中编程,以使用RPA系统具体地识别每个单独的步骤。还要求人类操作者识别要交互的GUI的特定部分,并构建RPA机器人使用的工作流程。

技术实现思路

[0006]本专利技术提供了一种仅基于对使用GUI的操作者的视频和在执行过程时由操作者触发的事件(或输入)的分析训练RPA机器人使用GUI执行任务的方法。这样,可以避免现有技术中关于RPA机器人训练的上述问题。
[0007]在第一方面,提供了一种训练RPA机器人(或脚本或系统)以使用GUI的方法。所述方法包括以下步骤:捕获当操作者(或用户)使用GUI执行过程(或任务)时所述GUI的视频;捕获当操作者使用GUI执行所述过程时触发的事件的序列,以及分析所述视频和所述事件的序列,从而生成工作流。所述工作流是这样的,当由RPA机器人执行时,使得RPA机器人使用GUI执行所述过程。捕获的步骤可以由远程桌面系统执行。
[0008]所述分析的步骤还可以包括以下步骤:从所述视频识别所述GUI的一个或多个交互式元素,以及将所述事件的序列中的各个事件的至少一个匹配为对应于所述一个或多个交互式元素中的至少一个。交互式元素可以是任何典型的GUI元素,诸如(但不限于)文本框、按钮、上下文菜单、选项卡、单选按钮(或其阵列)、复选框(或其阵列)等。所述识别交互
式元素的步骤可以通过将已训练的机器学习算法应用于视频的至少一部分来执行。
[0009]识别交互式元素可以包括:识别所述GUI中的一个或多个锚元素相对于所述交互式元素的位置。例如,机器学习算法(诸如图形神经网络)可以用于基于一个或多个预定特征值来识别所述一个或多个锚元素。所述特征值还可以经由机器学习算法的训练来确定。
[0010]所述特征值可以包括以下中的任何一个或多个:各个元素之间的距离、元素的定向;以及各个元素是否在相同的窗口中。
[0011]所述事件的序列可以包括以下中的任何一个或多个:按键事件;点击事件(诸如单击或其多次);拖动事件;以及手势事件。基于视频的推断事件(诸如悬停事件)也可以被包括在所述事件的序列中。通常,悬停事件可以基于一个或多个界面元素在GUI中变得可见来推断。
[0012]所述分析的步骤还可以步包括:识别所述过程的子过程的序列。在子过程的序列中,RPA机器人可使用所述序列中的各个子序列的一个的过程输出作为所述序列中的另一子过程的过程输入。
[0013]所生成的工作流是可由用户编辑以使得能够包括先前生成的工作流的与另一子过程相对应的部分,使得所述编辑的工作流在由RPA机器人执行时使RPA机器人使用GUI来执行所述过程的版本,所述过程的所述版本包括另一子过程。所述过程的所述版本可以包括替代所述过程的现有子过程的另一子过程。
[0014]在第二方面,提供了使用GUI来执行过程的方法,其使用由根据上述第一方面的方法训练的RPA机器人。具体地,所述方法可以包括:所述RPA机器人基于工作流中指定的相应锚元素来重新识别所述GUI中的一个或多个交互式元素。机器学习算法(例如图形神经网络)可以用于基于一个或多个预定特征值(例如作为第一方面的方法的一部分确定的那些)来重新识别所述一个或多个交互式元素。
[0015]还提供了布置为执行上述方法中的任何方法的系统和设备。例如,提供了一种用于训练RPA机器人(或脚本或系统)以使用GUI的系统。所述系统布置为捕获当操作者(或用户)使用GUI执行过程(或任务)时GUI的视频,以及捕获当所述操作者使用所述GUI执行所述过程时触发的事件的序列。该系统还包括工作流生成模块,其布置为分析所述视频和所述事件的序列,从而生成工作流。
[0016]本专利技术还提供了适于由一个或多个处理器执行的一个或多个计算机程序,这种计算机程序布置成实施上文概述和本文描述的方法。本专利技术还提供了一个或多个计算机可读介质和/或通过网络承载的数据信号,其包括(或在其上存储)这样的一个或多个计算机程序。
附图说明
[0017]现在将参考附图仅通过示例的方式描述本专利技术的实施例,其中:
[0018]图1示意性地示出了计算机系统的示例;
[0019]图2示意性地示出了用于机器人过程自动化(RPA)的系统;
[0020]图3a是示意性地示出用于训练RPA机器人的示例方法的流程图;
[0021]图3b是示意性地示出RPA系统的RPA机器人执行工作流以执行过程的示例方法的流程图;
[0022]图4示意性地示出了诸如图2的RPA系统之类的RPA系统的示例工作流分析模块;
[0023]图5示意性地示出了诸如可以与图2和图4的RPA系统一起使用的计算机视觉模块;
[0024]图6示意性地示出了诸如可以与图2和图4的RPA系统一起使用的动作识别模块;
[0025]图7示意性地示出了工作流的示例和工作流的编辑版本;
[0026]图8示意性地示出了诸如图2中描述的RPA系统之类的RPA系统的示例执行模块。
[0027]图9a示出了来自GUI的视频的图像;
[0028]图9b示出了来自GUI的视频的经过了重新识别过程的另一图像。
具体实施方式
[0029]在以下描述和附图中,描述了本专利技术的某些实施例。然而,应当理解,本专利技术不限于所描述的实施例,并且一些实施例可以不包括下面描述的所有特征。然而,很明显,在不背离所附权利要求中提出的本专利技术的更宽的精神和范围的情况下,可以在此进行各种修改本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种训练RPA机器人使用GUI的方法,所述方法包括:捕获当操作者使用所述GUI执行过程时所述GUI的视频;捕获当所述操作者使用所述GUI执行所述过程时触发的事件的序列;分析所述视频和所述事件的序列,从而生成工作流,所述工作流当由所述RPA机器人执行时使所述RPA机器人使用所述GUI执行所述过程。2.根据权利要求1所述的方法,其中,所述分析进一步包括:从所述视频识别所述GUI的一个或多个交互式元素;以及将所述事件的序列中的各个事件的至少一个匹配为对应于所述一个或多个交互式元素中的至少一个。3.根据权利要求1或2所述的方法,其中,识别交互式元素是通过将经训练的机器学习算法应用于所述视频的至少一部分来执行的。4.根据任一前述权利要求所述的方法,其中,识别交互式元素包括识别所述GUI中的一个或多个锚元素相对于所述交互式元素的位置。5.根据权利要求4所述的方法,其中,机器学习算法被用于基于一个或多个预定特征值来识别所述一个或多个锚元素。6.根据权利要求5所述的方法,其中,所述特征值是经由所述机器学习算法的训练来确定的。7.根据权利要求5或6所述的方法,其中,所述特征值包括以下中的任何一个或多个:各个元素之间的距离,元素的定向;以及各个元素是否在相同的窗口中。8.根据任一前述权利要求所述的方法,其中,所述事件的序列包括以下中的任何一个或多个:按键事件;悬停事件;点击事件;拖动事件;以及手势事件。9.根据任一前述权利要求所述的方法,包括:基于所述视频在所述事件的序列中包括一个或多个推断的事件。10.如权利要求9所述的方法,其中,基于一个或多个界面元素在所述GUI中变得可见来推断悬停事件。11.根据任一前述权利要求所述的方法,其中所述分析的步骤...

【专利技术属性】
技术研发人员:雅克
申请(专利权)人:蓝色棱镜有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1