CN116610082A - 基于深度强化学习的rpa作业工作流冗余调度方法及系统 - Google Patents
基于深度强化学习的rpa作业工作流冗余调度方法及系统 Download PDFInfo
- Publication number
- CN116610082A CN116610082A CN202310876522.7A CN202310876522A CN116610082A CN 116610082 A CN116610082 A CN 116610082A CN 202310876522 A CN202310876522 A CN 202310876522A CN 116610082 A CN116610082 A CN 116610082A
- Authority
- CN
- China
- Prior art keywords
- job
- rpa
- resource
- workflow
- scheduling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000002787 reinforcement Effects 0.000 title claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 44
- 230000006870 function Effects 0.000 claims abstract description 29
- 230000008569 process Effects 0.000 claims description 22
- 230000009471 action Effects 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 19
- 238000013139 quantization Methods 0.000 claims description 17
- 238000012550 audit Methods 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 238000005457 optimization Methods 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000004801 process automation Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于深度强化学习的RPA作业工作流冗余调度方法及系统,包括步骤:S1:绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;S2:通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;S3:构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。本发明能够根据RPA工作流的作业特征和集群中的资源特征,制定面向成功率、资源开销和执行时间的多目标优化调度策略,通过冗余调度策略最大程度保证RPA作业工作流的执行成功率的同时,降低资源开销和执行时间。
Description
技术领域
本发明涉及分布式任务调度技术领域,尤其涉及一种基于深度强化学习的RPA作业工作流冗余调度方法及系统。
背景技术
机器人过程自动化(RPA)是近年来快速发展的自动化技术,人工智能的发展迫使人们审视什么工作应该被自动化,什么工作应该由人类来完成。RPA自动化技术是一种利用机器人软件来模拟和执行人工业务流程的技术。它可以模拟人类用户的操作,例如鼠标点击、键盘输入、数据提取和处理等,从而完成各种繁琐的重复性任务。RPA技术通常不需要编写代码,而是通过简单地录制操作,或者使用预定义的操作来创建自动化任务。在RPA自动化技术中,任务的调度是至关重要的一环。任务的调度需要根据任务的执行时间、执行顺序等信息,指定每个任务由哪个执行器执行。这是一个经典的分布式任务调度系统,常见的调度算法包括:优先级调度法——将任务按照优先级和队列的方式进行调度;贪心法——根据任务资源需求和节点负载进行分配;元启发式算法——对调度问题进行数学建模,在满足资源约束下迭代优化求解调度决策。
RPA作业工作流是由一组RPA作业以及作业之间数据和控制依赖关系组成的任务。工作流任务的成功执行需要每个RPA作业能够顺利完成,因此工作流的可靠性需要高度重视。而现有的工作流调度方法大多只关注将执行时间最小化,没用考虑RPA任务在调度过程中需要的高成功率和低机器开销,导致RPA调度效果不佳。
发明内容
为解决上述技术问题,本发明提供一种基于深度强化学习的RPA作业工作流冗余调度方法,包括步骤:
S1:绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;
S2:通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;
S3:构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。
优选的,作业jobi的作业特征表示为一个三元组(Ti,Ci,Pi),其中,i为作业的编号,Ti是作业jobi的最大执行时间,Ci,Pi计算公式如下:
其中cpui、memi分别表示作业jobi的最大CPU占用率、最大内存占用率,countsucceed、countfail分别表示作业jobi的成功执行次数、失败执行次数。
优选的,步骤S2具体为:
S21:RPA执行器启动时注册中心立刻自动感知,将执行器登记到管理中心,全程维护执行器的运行状态;
S22:执行器启动后台执行流时,自动定时上报执行器硬件资源到注册中心,实时收集对应机器的硬件信息;
S23:执行器后台执行流自动上报执行器软件环境至注册中心;
S24:执行器在运行过程中,实时记录每个被分配的任务审计日志;通过任务审计日志判断执行器的运行状态,获得对应机器的资源波动并上报至管理中心;
S25:管理中心将各机器的资源波动和硬件信息打包为集群机器的资源特征。
优选的,步骤S3具体为:
S31:在一次RPA作业工作流调度过程中,M个执行器表示为E={e 1,e 2,...,e M},N个作业表示为J={job1,job2,...,jobN},将一次RPA作业工作流调度过程建模成马尔科夫决策过程M=(S,A,R),通过作业特征和资源特征构建系统环境状态集合S,其中,A表示调度动作集合,R表示奖励函数;
S32:构建深度强化学习智能体,深度强化学习智能体包括:训练网络和目标网络;
S33:当作业工作流需要第t次调度时,从系统环境状态集合S中获取系统环境状态st作为训练网络的输入,训练网络经过训练后输出调度动作at,通过调度动作at对作业工作流进行调度后,根据奖励函数R获取奖励rt,从系统环境状态集合S中获取系统环境状态st+1,将更新数据(st,at,rt,st+1)放入经验回放池;
S34:从经验回放池中提取U个更新数据用于更新训练网络和目标网络;
S35:通过调度动作at计算获得冗余调度策略a*t,令t=t+1后返回步骤S33。
优选的:
系统环境状态集合S中的系统环境状态st表示为st={jobs,time,resource,D},其中,jobs表示在调度问题中已执行作业的作业特征集合,time表示每个执行器执行作业所消耗的时间,resource表示每个执行器执行作业所消耗的资源,D表示RPA作业工作流的可靠性量化值;
D的计算公式为:
其中,i表示作业的编号,di表示作业i的可靠性量化值。
优选的:
调度动作集合A的表达式为:A=[a1,a2,...,an],n为调度的总次数;
an={e(jobn),replican,retryn}
其中,e(jobn)表示作业jobn对应的执行器,replican表示启用执行副本数量,retryn表示重启次数,设置执行副本数上限replicamax,重启次数上限retrymax。
优选的:
考虑执行时间的奖励函数R1定义如下:
其中,i为作业的编号;j为执行器的编号;ETi,j是工作流中作业jobi在执行器ej上运行一次的执行时间;makespan是运行作业jobi前所有工作流的最大完成时间;makespan’是运行作业ti后所有工作流的最大完成时间;retrymax为重启次数上限;
考虑资源消耗的奖励函数R2定义如下:
其中ci是作业jobi单个执行副本的资源消耗,cactual是实际资源消耗,replicamax是执行副本数上限;
考虑可靠性的奖励函数R3定义如下:
其中di表示在采取动作后作业jobi的可靠性量化值,success_ratei是作业jobi在没有任何冗余策略的情况下稳定运行的成功率,d_besti表示在不考虑时间和资源的情况下所能达到的最佳可靠性量化值;
其中,若作业jobi启动N个执行副本,设置失败后重启次数上限为M的可靠性量化计算公式如下:
其中,PM i表示当重启次数上限为M时,每个作业i执行副本的成功率,di表示作业i的可靠性量化值,当N为replicamax,M为retrymax时计算得到d_besti;
奖励函数R定义为:R=R1+R2+R3。
优选的,步骤S34具体为:
S341:从经验回放池中提取U个更新数据{(su,au,ru,su+1)}u=1,2,...,U
S342:通过更新数据{(su,au,ru,su+1)}更新训练网络的参数,令目标网络输出为Qω-(su+1,a),计算获得更新目标TargetQ,计算公式为:
训练网络的目标损失函数定义为:
令u=u+1;
S342:重复步骤S342,直至达到预定的训练轮次,每当训练网络的参数更新C次后,令目标网络的参数与训练网络进行同步。
优选的:
冗余调度策略a*t的表达式为:
其中,replicamax表示执行副本数上限,retrymax表示重启次数上限,mod为同余符号。
一种基于深度强化学习的RPA作业工作流冗余调度系统,包括步骤:
作业特征获取模块,用于绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;
资源特征获取模块,用于通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;
冗余调度策略获取模块,用于构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。
本发明具有以下有益效果:
本发明提出了一种基于深度强化学习的RPA作业工作流冗余调度方法,能够提取工作流中各RPA的作业特征,以及从注册的执行机器中实时监控集群中各机器资源波动和硬件信息,辅助调度系统快速执行任务调度;能够根据RPA工作流的作业特征和集群中的资源特征,制定面向成功率、资源开销和执行时间的多目标优化调度策略,通过冗余调度策略最大程度保证RPA作业工作流的执行成功率的同时,降低资源开销和执行时间。
附图说明
图1为本发明实施例方法流程图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,本发明提供一种基于深度强化学习的RPA作业工作流冗余调度方法,包括步骤:
S1:绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;
S2:通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;
S3:构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。
进一步的,步骤S1具体为:
S11、根据用户上传的RPA作业工作流脚本,从历史数据源中获取各RPA作业的历史执行数据,包括作业的最大执行时间、最大CPU消耗率、最大内存消耗率、作业成功执行次数、作业失败执行次数;
S12、将执行数据进行处理转换为作业特征,包装成对应的RPA作业工作流模型,模型中包含工作流各作业的作业特征;
作业jobi的作业特征表示为一个三元组(Ti,Ci,Pi),其中,i为作业的编号,Ti是作业jobi的最大执行时间,Ci,Pi计算公式如下:
其中cpui、memi分别表示作业jobi的最大CPU占用率、最大内存占用率,countsucceed、countfail分别表示作业jobi的成功执行次数、失败执行次数。
进一步的,步骤S2具体为:
S21:RPA执行器启动时注册中心立刻自动感知,将执行器登记到管理中心,全程维护执行器的运行状态;
具体的,本发明中针对更好的实现自动化的运维管理,提出执行器自动注册。执行器自动注册时,RPA 执行器启动时执行器注册中心立刻自动感知并且将执行器登记到统一管理中心,实现管理员全局无感知动态扩容缩容。全程维护执行器的各种运行状态,实现集群内执行器整体的高可用性、高可扩展性、高可运维性;
S22:执行器启动后台执行流时,自动定时上报执行器硬件资源到注册中心,实时收集对应机器的硬件信息;
具体的,本发明中针对更好的衡量执行器的当前执行能力以及最大执行能力,用于更加精确高效的调度,提出实时动态收集执行器的硬件层面资源信息。执行器启动后台执行流,自动定时上报执行器机器硬件资源到注册中心,做到实时收集执行器机器的最大内存容量、内存使用率、最大 CPU 核数、CPU 使用率、网络带宽、磁盘 IO 速率。除收集计算硬件资源,同时收集普通外部设备硬件资源,比如显示器分辨率,显示器数量,摄像头数量,麦克风数量等,以支持更加细粒度、精确化、合理化的 RPA 任务调度与分配;
CPU 使用率计算方法为:
其中, kernel 是当前操作系统内核时钟与特定时间前操作系统内核时钟的差值, user 是当前用户进程时钟与特定时间前用户进程时钟的差值, idle 指计算使用率时需要统计的开始时间点和结束时间点之间的间隔长度。
内存使用率计算公式为:
其中, total 指执行器机器物理内存总容量, buffered 指操作系统用于块设备的缓冲区大小, cached 指操作系统用于文件系统的缓冲区大小, free 指当前执行器机器物理内存空闲内存容量;
用一次 IO 时间IO_Time表述IO速率:
seek_time 指磁盘平均寻址时间, rotation_speed 指磁盘平均旋转延时,IO_chunk_size 指磁盘单次 IO 数据量的大小,transfer_rate 指磁盘最大读写速率;
S23:执行器后台执行流自动上报执行器软件环境至注册中心;
具体的,本发明针对确定执行器软件执行环境,提出了执行器机器软件生态探测,执行器后台执行流自动上报至执行器注册中心。具体探测的软件环境包括浏览器内核版本,浏览器发布版本,excel 版本,word 版本等;
S24:执行器在运行过程中,实时记录每个被分配的任务审计日志;通过任务审计日志判断执行器的运行状态,获得对应机器的资源波动并上报至管理中心;
具体的,本发明针对执行器执行任务负载与资源使用情况,提出了执行器任务统计与自动收集。执行器在运行过程中,时刻记录每个被分配的任务审计日志,包含:任务分配时记录,任务运行时记录,任务结束时记录。通过审计日志判断执行器的运行状态,构造基于审计日志的执行器资源计算方法,实时计算执行器占用计算资源情况并且上报至资源管理中心;
S25:管理中心将各机器的资源波动和硬件信息打包为集群机器的资源特征。
进一步的,步骤S3具体为:
S31:在一次RPA作业工作流调度过程中,M个执行器表示为E={e 1,e 2,...,e M},N个作业表示为J={job1,job2,...,jobN},将一次RPA作业工作流调度过程建模成马尔科夫决策过程M=(S,A,R),通过作业特征和资源特征构建系统环境状态集合S,其中,A表示调度动作集合,R表示奖励函数;
具体的,RPA作业工作流调度过程可以被视为一个有限状态的序列,其中每个状态都对应着工作流中一次RPA作业的执行前系统全局状态,而每个状态之间的转移概率则由马尔科夫链的性质来决定,以最大化RPA作业执行成功率和最小化执行时间和资源开销为目标,对每个 RPA 作业进行冗余调度:分配对应的执行器、执行副本数和失败后重启次数上限;
S32:构建深度强化学习智能体,深度强化学习智能体包括:训练网络和目标网络;
具体的,基于Deep Q-Network(DQN)算法实现RPA作业工作流冗余调度决策,即实现两个神经网络:训练网络和目标网络,两者具有相同的网络结构,但网络参数不同。目标网络使用训练网络的一套较旧的参数,训练网络在训练中的每一步都会更新,而目标网络的参数每隔C步才会与训练网络同步一次,使得目标网络相对于训练网络更加稳定。网络结构由两层全连接层组成,第一层含有20个神经元,第二层含有replicamax×retrymax个神经元,全连接层之间由激活函数ReLU连接,最后训练网络输出动作决策a;
S33:当作业工作流需要第t次调度时,从系统环境状态集合S中获取系统环境状态st作为训练网络的输入,训练网络经过训练后输出调度动作at,通过调度动作at对作业工作流进行调度后,根据奖励函数R获取奖励rt,从系统环境状态集合S中获取系统环境状态st+1,将更新数据(st,at,rt,st+1)放入经验回放池;
S34:从经验回放池中提取U个更新数据用于更新训练网络和目标网络;
S35:通过调度动作at计算获得冗余调度策略a*t,令t=t+1后返回步骤S33。
进一步的:
系统环境状态集合S中的系统环境状态st表示为st={jobs,time,resource,D},其中,jobs表示在调度问题中已执行作业的作业特征集合,time表示每个执行器执行作业所消耗的时间,resource表示每个执行器执行作业所消耗的资源,D表示RPA作业工作流的可靠性量化值;
D的计算公式为:
其中,i表示作业的编号,di表示作业i的可靠性量化值。
进一步的:
调度动作集合A的表达式为:A=[a1,a2,...,an],n为调度的总次数;
an={e(jobn),replican,retryn}
其中,e(jobn)表示作业jobn对应的执行器,replican表示启用执行副本数量,retryn表示重启次数,设置执行副本数上限replicamax,重启次数上限retrymax。
进一步的:
考虑执行时间的奖励函数R1定义如下:
其中,i为作业的编号;j为执行器的编号;ETi,j是工作流中作业jobi在执行器ej上运行一次的执行时间;makespan是运行作业jobi前所有工作流的最大完成时间;makespan’是运行作业ti后所有工作流的最大完成时间;retrymax为重启次数上限;
考虑资源消耗的奖励函数R2定义如下:
其中ci是作业jobi单个执行副本的资源消耗,cactual是实际资源消耗,replicamax是执行副本数上限;
考虑可靠性的奖励函数R3定义如下:
其中di表示在采取动作后作业jobi的可靠性量化值,success_ratei是作业jobi在没有任何冗余策略的情况下稳定运行的成功率,d_besti表示在不考虑时间和资源的情况下所能达到的最佳可靠性量化值;
其中,若作业jobi启动N个执行副本,设置失败后重启次数上限为M的可靠性量化计算公式如下:
其中,PM i表示当重启次数上限为M时,每个作业i执行副本的成功率,di表示作业i的可靠性量化值,当M为replicamax,N为retrymax时计算得到d_besti;
奖励函数R定义为:R=R1+R2+R3。
进一步的,步骤S34具体为:
S341:从经验回放池中提取U个更新数据{(su,au,ru,su+1)}u=1,2,...,U
S342:通过更新数据{(su,au,ru,su+1)}更新训练网络的参数,令目标网络输出为Qω-(su+1,a),计算获得更新目标TargetQ,计算公式为:
训练网络的目标损失函数定义为:
令u=u+1;
S342:重复步骤S342,直至达到预定的训练轮次,每当训练网络的参数更新C次后,令目标网络的参数与训练网络进行同步。
进一步的:
冗余调度策略a*t的表达式为:
其中,replicamax表示执行副本数上限,retrymax表示重启次数上限,mod为同余符号。
本发明提供一种基于深度强化学习的RPA作业工作流冗余调度系统,包括步骤:
作业特征获取模块,用于绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;
资源特征获取模块,用于通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;
冗余调度策略获取模块,用于构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为标识。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于,包括步骤:
S1:绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;
S2:通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;
S3:构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。
2.根据权利要求1所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于,作业jobi的作业特征表示为一个三元组(Ti,Ci,Pi),其中,i为作业的编号,Ti是作业jobi的最大执行时间,Ci,Pi计算公式如下:
其中cpui、memi分别表示作业jobi的最大CPU占用率、最大内存占用率,countsucceed、countfail分别表示作业jobi的成功执行次数、失败执行次数。
3.根据权利要求1所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于,步骤S2具体为:
S21:RPA执行器启动时注册中心立刻自动感知,将执行器登记到管理中心,全程维护执行器的运行状态;
S22:执行器启动后台执行流时,自动定时上报执行器硬件资源到注册中心,实时收集对应机器的硬件信息;
S23:执行器后台执行流自动上报执行器软件环境至注册中心;
S24:执行器在运行过程中,实时记录每个被分配的任务审计日志;通过任务审计日志判断执行器的运行状态,获得对应机器的资源波动并上报至管理中心;
S25:管理中心将各机器的资源波动和硬件信息打包为集群机器的资源特征。
4.根据权利要求2所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于,步骤S3具体为:
S31:在一次RPA作业工作流调度过程中,M个执行器表示为E={e 1,e 2,...,e M},N个作业表示为J={job1,job2,...,jobN},将一次RPA作业工作流调度过程建模成马尔科夫决策过程M=(S,A,R),通过作业特征和资源特征构建系统环境状态集合S,其中,A表示调度动作集合,R表示奖励函数;
S32:构建深度强化学习智能体,深度强化学习智能体包括:训练网络和目标网络;
S33:当作业工作流需要第t次调度时,从系统环境状态集合S中获取系统环境状态st作为训练网络的输入,训练网络经过训练后输出调度动作at,通过调度动作at对作业工作流进行调度后,根据奖励函数R获取奖励rt,从系统环境状态集合S中获取系统环境状态st+1,将更新数据(st,at,rt,st+1)放入经验回放池;
S34:从经验回放池中提取U个更新数据用于更新训练网络和目标网络;
S35:通过调度动作at计算获得冗余调度策略a*t,令t=t+1后返回步骤S33。
5.根据权利要求4所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于:
系统环境状态集合S中的系统环境状态st表示为st={jobs,time,resource,D},其中,jobs表示在调度问题中已执行作业的作业特征集合,time表示每个执行器执行作业所消耗的时间,resource表示每个执行器执行作业所消耗的资源,D表示RPA作业工作流的可靠性量化值;
D的计算公式为:
其中,i表示作业的编号,di表示作业i的可靠性量化值。
6.根据权利要求4所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于:
调度动作集合A的表达式为:A=[a1,a2,...,an],n为调度的总次数;
an={e(jobn),replican,retryn}
其中,e(jobn)表示作业jobn对应的执行器,replican表示启用执行副本数量,retryn表示重启次数,设置执行副本数上限replicamax,重启次数上限retrymax。
7.根据权利要求4所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于:
考虑执行时间的奖励函数R1定义如下:
其中,i为作业的编号;j为执行器的编号;ETi,j是工作流中作业jobi在执行器ej上运行一次的执行时间;makespan是运行作业jobi前所有工作流的最大完成时间;makespan’是运行作业ti后所有工作流的最大完成时间;retrymax为重启次数上限;
考虑资源消耗的奖励函数R2定义如下:
其中ci是作业jobi单个执行副本的资源消耗,cactual是实际资源消耗,replicamax是执行副本数上限;
考虑可靠性的奖励函数R3定义如下:
其中di表示在采取动作后作业jobi的可靠性量化值,success_ratei是作业jobi在没有任何冗余策略的情况下稳定运行的成功率,d_besti表示在不考虑时间和资源的情况下所能达到的最佳可靠性量化值;
其中,若作业jobi启动N个执行副本,设置失败后重启次数上限为M的可靠性量化计算公式如下:
其中,PM i表示当重启次数上限为M时,每个作业i执行副本的成功率,di表示作业i的可靠性量化值,当N为replicamax,M为retrymax时计算得到d_besti;
奖励函数R定义为:R=R1+R2+R3。
8.根据权利要求4所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于,步骤S34具体为:
S341:从经验回放池中提取U个更新数据{(su,au,ru,su+1)}u=1,2,...,U
S342:通过更新数据{(su,au,ru,su+1)}更新训练网络的参数,令目标网络输出为Qω-(su+1,a),计算获得更新目标TargetQ,计算公式为:
训练网络的目标损失函数定义为:
令u=u+1;
S342:重复步骤S342,直至达到预定的训练轮次,每当训练网络的参数更新C次后,令目标网络的参数与训练网络进行同步。
9.根据权利要求4所述的基于深度强化学习的RPA作业工作流冗余调度方法,其特征在于:
冗余调度策略a*t的表达式为:
其中,replicamax表示执行副本数上限,retrymax表示重启次数上限,mod为同余符号。
10.一种基于深度强化学习的RPA作业工作流冗余调度系统,其特征在于,包括步骤:
作业特征获取模块,用于绘制RPA作业工作流,通过RPA作业工作流获取各RPA作业的执行数据,将执行数据处理转换为作业特征;
资源特征获取模块,用于通过RPA执行器获取对应机器的资源波动和硬件信息,将资源波动和硬件信息转换为集群机器的资源特征;
冗余调度策略获取模块,用于构建深度强化学习智能体,通过作业特征和资源特征构建智能体的输入状态,根据奖励函数对智能体进行训练优化并输出冗余调度策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310876522.7A CN116610082B (zh) | 2023-07-18 | 2023-07-18 | 基于深度强化学习的rpa作业工作流冗余调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310876522.7A CN116610082B (zh) | 2023-07-18 | 2023-07-18 | 基于深度强化学习的rpa作业工作流冗余调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116610082A true CN116610082A (zh) | 2023-08-18 |
CN116610082B CN116610082B (zh) | 2023-10-31 |
Family
ID=87678621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310876522.7A Active CN116610082B (zh) | 2023-07-18 | 2023-07-18 | 基于深度强化学习的rpa作业工作流冗余调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610082B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117634867A (zh) * | 2024-01-26 | 2024-03-01 | 杭州实在智能科技有限公司 | 结合大语言模型与强化学习的rpa流程自动构建方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05165397A (ja) * | 1991-12-12 | 1993-07-02 | Mitsubishi Electric Corp | スケジューリング装置 |
US20160352770A1 (en) * | 2015-06-01 | 2016-12-01 | Shanghai Redneurons Co., Ltd. | Software/Hardware Device with Uncertain Service Function and Structural Characterization, and Scheduling Method for Thereof |
CN111381950A (zh) * | 2020-03-05 | 2020-07-07 | 南京大学 | 一种面向边缘计算环境基于多副本的任务调度方法和系统 |
KR102190459B1 (ko) * | 2020-04-28 | 2020-12-11 | 농업협동조합중앙회 | Rpa의 공유를 위한 사용자 인터페이스 장치 |
CN113792924A (zh) * | 2021-09-16 | 2021-12-14 | 郑州轻工业大学 | 一种基于Deep Q-network深度强化学习的单件作业车间调度方法 |
CN115408136A (zh) * | 2022-11-01 | 2022-11-29 | 安徽思高智能科技有限公司 | 一种基于遗传算法的rpa流程调度方法 |
-
2023
- 2023-07-18 CN CN202310876522.7A patent/CN116610082B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05165397A (ja) * | 1991-12-12 | 1993-07-02 | Mitsubishi Electric Corp | スケジューリング装置 |
US20160352770A1 (en) * | 2015-06-01 | 2016-12-01 | Shanghai Redneurons Co., Ltd. | Software/Hardware Device with Uncertain Service Function and Structural Characterization, and Scheduling Method for Thereof |
CN111381950A (zh) * | 2020-03-05 | 2020-07-07 | 南京大学 | 一种面向边缘计算环境基于多副本的任务调度方法和系统 |
KR102190459B1 (ko) * | 2020-04-28 | 2020-12-11 | 농업협동조합중앙회 | Rpa의 공유를 위한 사용자 인터페이스 장치 |
CN113792924A (zh) * | 2021-09-16 | 2021-12-14 | 郑州轻工业大学 | 一种基于Deep Q-network深度强化学习的单件作业车间调度方法 |
CN115408136A (zh) * | 2022-11-01 | 2022-11-29 | 安徽思高智能科技有限公司 | 一种基于遗传算法的rpa流程调度方法 |
Non-Patent Citations (1)
Title |
---|
王文达: "基于深度强化学习的动态作业车间调度问题研究", 《2022中国自动化大会论文集》, pages 1 - 6 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117634867A (zh) * | 2024-01-26 | 2024-03-01 | 杭州实在智能科技有限公司 | 结合大语言模型与强化学习的rpa流程自动构建方法及系统 |
CN117634867B (zh) * | 2024-01-26 | 2024-05-24 | 杭州实在智能科技有限公司 | 结合大语言模型与强化学习的rpa流程自动构建方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116610082B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8069446B2 (en) | Parallel programming and execution systems and techniques | |
CN110389820B (zh) | 一种基于v-TGRU模型进行资源预测的私有云任务调度方法 | |
US7945909B2 (en) | Initiating recovery of an executing task using historical information and task information | |
CN116610082B (zh) | 基于深度强化学习的rpa作业工作流冗余调度方法及系统 | |
CN115408136B (zh) | 一种基于遗传算法的rpa流程调度方法 | |
DE102020114218A1 (de) | Verfahren und Vorrichtungen zum Verbessern der Laufzeitleistung auf einem heterogenen System ausgeführter Software | |
CN115237581B (zh) | 一种面向异构算力的多策略智能调度方法和装置 | |
Talagala et al. | {ECO}: Harmonizing Edge and Cloud with {ML/DL} Orchestration | |
DE102020108374A1 (de) | Verfahren und vorrichtung zur laufzeitmehrfachplanung von software, die in einem heterogenen system ausgeführt wird | |
CN112052081B (zh) | 一种任务调度方法、装置及电子设备 | |
CN112749041B (zh) | 虚拟化网络功能备份策略自决策方法、装置及计算设备 | |
CN116578403A (zh) | 一种基于深度强化学习的rpa流程调度方法及系统 | |
CN112579267A (zh) | 一种去中心化大数据作业流调度方法及装置 | |
CN100405306C (zh) | 程序排程系统及方法 | |
Cunha et al. | Context-aware execution migration tool for data science Jupyter Notebooks on hybrid clouds | |
CN112948096A (zh) | 一种批量调度方法、装置和设备 | |
WO2023165512A1 (zh) | 一种故障文件保存方法及相关装置 | |
CN115982049A (zh) | 性能测试中的异常检测方法、装置和计算机设备 | |
US20220019461A1 (en) | Platform health engine in infrastructure processing unit | |
Chorey et al. | Failure recovery model in big data using the checkpoint approach | |
Zhou et al. | AntTune: An efficient distributed hyperparameter optimization system for large-scale data | |
CN111988412A (zh) | 一种多租户服务资源需求智能预测系统及方法 | |
EP3989074B1 (en) | Method for optimizing execution of high-performance computing workflows | |
Li et al. | Selective checkpointing for minimizing recovery energy and efforts of smartphone apps | |
CN116225696B (zh) | 用于流处理系统的算子并发度调优方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |