CN111427683A - Task allocation method and device of robot for process automation in computer - Google Patents
Task allocation method and device of robot for process automation in computer Download PDFInfo
- Publication number
- CN111427683A CN111427683A CN202010201103.XA CN202010201103A CN111427683A CN 111427683 A CN111427683 A CN 111427683A CN 202010201103 A CN202010201103 A CN 202010201103A CN 111427683 A CN111427683 A CN 111427683A
- Authority
- CN
- China
- Prior art keywords
- task
- robot
- computer
- robots
- tasks
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004801 process automation Methods 0.000 title claims abstract description 16
- 238000012216 screening Methods 0.000 claims abstract description 5
- 230000001419 dependent effect Effects 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Manipulator (AREA)
Abstract
The invention discloses a task allocation method and a device of a robot for process automation in a computer, wherein the task allocation method comprises the following steps: establishing timing contact with a plurality of robots to generate a robot available sequence; detecting whether the loss of link time of the robot is overtime or not, and removing the overtime robot from the available sequence; screening out the robot with the best running state of the machine in the available sequence according to the running state information of the machine which is conveyed by the robot and represents the machine; and distributing the tasks to the screened robots to execute. The invention has the beneficial effect of improving the task execution efficiency.
Description
Technical Field
The invention belongs to the technical field of computers, and particularly relates to a task allocation method and device of a robot for process automation in a computer.
Background
Rpa (robotic Process automation), which is robot Process automation, is software that can record human operations on a computer and repeat operations. The RPA is composed of a designer, a console and a robot. The designer is responsible for making a repetitive work into a flow; the console is responsible for creating tasks of different rules based on the process and issuing the tasks to different robots; the robot is responsible for executing tasks and completing related work.
Currently, many problems still exist in the application process of the existing RPA system.
1. The robot depends on the computer, when the computer is in abnormal conditions such as shutdown and power failure, the robot cannot complete expected work, and a new task needs to be created and assigned to the robot again through manual intervention, so that a large amount of labor and time are consumed.
2. In the specific task execution process, information such as a CPU, a memory, a hard disk and the like of a computer where the robot is located are dynamically changed. When the occupation of a CPU, a memory and a hard disk of a computer is too high, the robot executes tasks possibly with the situations of flow blockage, program execution crash and the like, so that the tasks cannot be normally completed.
3. In the existing RPA system, the robot can only execute a complete flow, cannot only execute a partial flow, and cannot meet the requirement of cross-department cooperative processing tasks.
Disclosure of Invention
The invention provides a method and a device for distributing tasks of a robot for process automation in a computer, aiming at the problems in the prior art, the partial embodiment of the invention can divide a business process into a plurality of sub-processes in an RPA automatic process system, create a plurality of sub-tasks, a console distributes the plurality of sub-tasks to a plurality of robots for cooperative execution, dependency exists among the tasks, for example, the output of the task A is used as the input data of the task B, the task B starts to execute the task after waiting for the execution of the task A, and the transmission among the data is completed through the console, so that the plurality of robots cooperatively process the tasks, and the goal of cooperatively processing the tasks by co-operation across departments is realized. When the robot executes the tasks, if the robot is not connected with the control console for a long time, the control console can distribute the tasks of the current offline robot to other available alternative robots, so that the tasks are guaranteed to be normally completed, meanwhile, the condition that a plurality of tasks are blocked by the same robot and are not executed in time is avoided, and the task execution efficiency is improved to a certain extent.
In order to achieve the purpose, the invention adopts the following technical scheme:
in a first aspect, the present invention provides a task assigning method for a robot for process automation in a computer, the task assigning method including: establishing timing contact with a plurality of robots to generate a robot available sequence; detecting whether the loss of link time of the robot is overtime or not, and removing the overtime robot from the available sequence; screening out the robot with the best running state of the machine in the available sequence according to the running state information of the machine which is conveyed by the robot and represents the machine; and distributing the tasks to the screened robots to execute.
Preferably, the status message includes: network information, cpu information, memory information, and hard disk information.
Preferably, the cpu information includes a cpu occupancy ratio, and the status preferably indicates that the cpu occupancy ratio is minimum.
Preferably, the assigning the task to the screened robot to perform includes: taking the robots in the available sequence which are not allocated to the tasks as alternative robots; and when the time of the robot for executing the task is overtime in the task executing process, the task is redistributed to the alternative robots.
In a second aspect, the present invention provides a task assigning method for a robot for process automation in a computer, the task assigning method including: before task allocation, a task execution dependency relationship database established in advance is inquired to detect whether a dependent task exists, and if the dependent task does not exist or the execution result of the dependent task is obtained, the task is allocated to the robot to be executed according to the task allocation method in the first aspect; otherwise, waiting for obtaining the execution result of the dependent task.
Preferably, for the task with the dependent task, the execution result of the dependent task and the task are distributed to the robot to be executed together.
A task assigning apparatus of a robot for process automation in a computer, the apparatus comprising: the connection unit establishes timed contact with a plurality of robots and generates a robot available sequence; the detection unit detects whether the loss of link time of the robot is overtime or not and eliminates the overtime robot from the available sequence; the screening unit screens out the robot with the best running state of the machine in the available sequence according to the running state information of the machine, which is transmitted by the robot and represents the running state of the machine; and
an assigning unit that assigns the task to the screened robot to be executed.
An electronic device, comprising: a processor; and
a memory having stored therein processor-executable instructions; wherein the processor implements the task allocation method of the first aspect by executing the executable instructions.
An electronic device, comprising: a processor; and
a memory having stored therein processor-executable instructions; wherein the processor implements the task allocation method of the second aspect by executing the executable instructions.
A computer-readable storage medium storing computer instructions which, when executed by a processor, implement the task allocation method of the first aspect.
A computer readable storage medium storing computer instructions which, when executed by a processor, implement the task allocation method of the second aspect.
Compared with the prior art, the invention has the beneficial effects that:
1. a heartbeat mechanism is established between the console and the robot, the console grasps the state of the robot in real time, and when the robot is abnormal, the console can assign the current task to other robots to be executed, so that a disaster recovery function is achieved, and the task execution is guaranteed;
2. when the console allocates tasks, the weight index is added, the robot in the optimal state is acquired in real time according to the information of a CPU (central processing unit), a memory and a hard disk of a computer where the current robot is located, the tasks are allocated to the robot to execute the tasks, the tasks are ensured to be executed quickly, and meanwhile, the situation that a plurality of tasks are blocked by the same robot and are not executed in time is avoided;
3. the multiple robots cooperatively process tasks, and the goal of cooperatively processing the tasks by crossing departments is achieved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic flow chart of an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be obtained by a person skilled in the art without inventive effort based on the embodiments of the present invention, are within the scope of the present invention.
As shown in fig. 1, a complex manual process is divided into a plurality of processes according to different service scenarios of different departments, different processes are designed in a designer, and the processes are uploaded to a console. Different departments select the flows related to self-service, and the newly-built tasks are distributed to a plurality of robots. Whether a dependent task exists is selected when a task is newly built, if the dependent task exists, the dependent task needs to be waited to be executed before the current task is executed, and the execution result of the dependent task is used as the input parameter of the current task. The robot is connected to the console online, the robot requests the console every 3 seconds, a heartbeat mechanism is established, and when the robot is connected to the console, the current network, CPU, memory and hard disk use information of a computer where the robot is located are uploaded to the console. The console stores the data in the database in fields of network, cpu, memory and hardDisk respectively. The robot waits for the console to assign a task to a predetermined point in time. The console starts to assign tasks to the robot 30 seconds before the scheduled execution time of the tasks is reached.
The console first queries the database whether there are dependent tasks for the current task. If the dependent task exists but the dependent data is not inquired, continuing to wait for the execution of the dependent task to be finished; and if the dependent tasks do not exist or the dependent data is stored in the database, inquiring the relevant information of the computers where all the robots can be selected by the current tasks. And selecting the computer with the minimum occupation ratio to execute the task according to the CPU occupation ratio of the computer where the current robot is located. Other robots are considered alternatives.
And if the task of the current running task depends on other tasks, detecting whether the dependent data is wrong or not in the execution process. When the dependent data is wrong, reporting the information of the dependent data error to the console, and the console allocates the robot to execute the depended task again, sets the current reported task state to be executed, and waits for the dependent task to finish execution.
In the task operation process, if the console and the robot have no heartbeat for more than 30 seconds, the console considers that the current robot is abnormal and can not execute the task, and the current task is redistributed to the robot. And inquiring the computer related information of all the robots available for selection of the current task. And selecting the computer with the minimum occupation ratio to execute the task according to the CPU occupation ratio of the computer where the current robot is located. Other robots are considered alternatives.
In the task execution process, a flow execution error condition occurs, the robot reports error information to the console in the form of errorInfo field, and the console redistributes the current robot to execute the task once again. The number of retries is 3 in total.
When the execution task is completed normally, the robot uploads the execution result to the console. The execution result mainly contains two fields of resultInfo and file. ResultInfo contains json' string and file contains the file produced by the task after execution, and is stored in a zip format. The console queries the task table to determine whether the current task is relied on. And if the current task is depended, inserting the reported execution result into a database table of the depended task.
Dependent task embodiment:
the approval process needs the three departments A-B-C to take effect after the three departments A-B-C pass the approval in sequence.
And uploading the new flow of the department A to a console, creating a task A, and appointing the robot of the department A to execute the task at a specific time point.
And B department newly-built processes are uploaded to a console, a task B is created, a dependent task is selected as an A department task, and a B department robot is appointed to execute the task at a specific time point.
And C, uploading the new flow of the department C to a console, creating a task C, selecting a dependent task as a task of the department B, and appointing the robot of the department C to execute the task at a specific time point.
And after the task A is executed and the examination and approval are passed, the task B starts to execute the task. And after the task B is executed and the approval is passed, the task C starts to execute the task. And if the task B is executed, the data of the task A which is relied on is found to be wrong, error information is reported, the console distribution robot executes the task A again, and the task B is executed again after the task A is completed. If the execution fails in the middle of executing the task, the task is repeatedly executed by the current robot; if the robot loses contact during task execution, the console selects a standby robot to execute the task.
Although the present invention has been described in detail with respect to the above embodiments, it will be understood by those skilled in the art that modifications or improvements based on the disclosure of the present invention may be made without departing from the spirit and scope of the invention, and these modifications and improvements are within the spirit and scope of the invention.
Claims (11)
1. A task assigning method for a robot for process automation in a computer, the task assigning method comprising:
establishing timing contact with a plurality of robots to generate a robot available sequence;
detecting whether the loss of link time of the robot is overtime or not, and removing the overtime robot from the available sequence;
screening out the robot with the best running state of the machine in the available sequence according to the running state information of the machine which is conveyed by the robot and represents the machine;
and distributing the tasks to the screened robots to execute.
2. The method of claim 1, wherein the status message comprises: network information, cpu information, memory information, and hard disk information.
3. The method for task allocation of a robot for process automation in a computer according to claim 2, wherein the cpu information includes a cpu occupancy ratio, and the status preferably means that the cpu occupancy ratio is minimum.
4. The method of assigning tasks to a robot for process automation in a computer according to claim 1, wherein the assigning tasks to the screened robots to be performed comprises:
taking the robots in the available sequence which are not allocated to the tasks as alternative robots;
and when the time of the robot for executing the task is overtime in the task executing process, the task is redistributed to the alternative robots.
5. A task assigning method for a robot for process automation in a computer, the task assigning method comprising:
inquiring a task execution dependency relationship database established in advance before task allocation to detect whether a dependent task exists, and if the dependent task does not exist or the execution result of the dependent task is obtained, allocating the task to a robot for execution according to the task allocation method of any one of claims 1-4; otherwise, waiting for obtaining the execution result of the dependent task.
6. The method for task assignment in a robot for process automation in a computer according to claim 5, wherein for a task in which a task is dependent, the execution result of the task is assigned to the robot together with the task.
7. A task assigning apparatus of a robot for process automation in a computer, the apparatus comprising:
the connection unit establishes timed contact with a plurality of robots and generates a robot available sequence;
the detection unit detects whether the loss of link time of the robot is overtime or not and eliminates the overtime robot from the available sequence;
the screening unit screens out the robot with the best running state of the machine in the available sequence according to the running state information of the machine, which is transmitted by the robot and represents the running state of the machine; and
an assigning unit that assigns the task to the screened robot to be executed.
8. An electronic device, comprising:
a processor; and
a memory having stored therein processor-executable instructions;
wherein the processor implements the task allocation method of any one of claims 1-4 by executing the executable instructions.
9. An electronic device, comprising:
a processor; and
a memory having stored therein processor-executable instructions;
wherein the processor implements the task allocation method of claim 5 by executing the executable instructions.
10. A computer-readable storage medium storing computer instructions which, when executed by a processor, implement the task allocation method of any one of claims 1-4.
11. A computer-readable storage medium storing computer instructions which, when executed by a processor, implement the task assignment method of claim 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010201103.XA CN111427683A (en) | 2020-03-20 | 2020-03-20 | Task allocation method and device of robot for process automation in computer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010201103.XA CN111427683A (en) | 2020-03-20 | 2020-03-20 | Task allocation method and device of robot for process automation in computer |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111427683A true CN111427683A (en) | 2020-07-17 |
Family
ID=71548447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010201103.XA Pending CN111427683A (en) | 2020-03-20 | 2020-03-20 | Task allocation method and device of robot for process automation in computer |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427683A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113220378A (en) * | 2021-05-11 | 2021-08-06 | 中电金信软件有限公司 | Flow processing method and device, electronic equipment, storage medium and system |
TWI781492B (en) * | 2020-12-08 | 2022-10-21 | 國泰人壽保險股份有限公司 | Process robot management system and process robot management method |
WO2023035755A1 (en) * | 2021-09-10 | 2023-03-16 | 北京京东乾石科技有限公司 | Task processing method, apparatus and system for multiple robots, and robot |
WO2023168923A1 (en) * | 2022-03-07 | 2023-09-14 | 达而观信息科技(上海)有限公司 | Robotic process automation cloud service system and implementation method |
CN117193232A (en) * | 2023-07-26 | 2023-12-08 | 珠海金智维信息科技有限公司 | RPA-based flow node fault processing method, system, device and medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401712A (en) * | 2013-07-31 | 2013-11-20 | 北京华易互动科技有限公司 | Content distribution based intelligent high-availability task processing method and system |
CN105955072A (en) * | 2016-02-19 | 2016-09-21 | 青岛克路德机器人有限公司 | Loss of communication control system and method of wireless remote control robot |
CN110046818A (en) * | 2019-04-15 | 2019-07-23 | 广州高新兴机器人有限公司 | A kind of multi-robot Task Allocation |
CN110308740A (en) * | 2019-06-28 | 2019-10-08 | 天津大学 | A kind of unmanned aerial vehicle group dynamic task allocation method towards mobile target tracking |
CN110648054A (en) * | 2019-09-04 | 2020-01-03 | 中国建设银行股份有限公司 | Task parallel processing method and device for robot process automation |
-
2020
- 2020-03-20 CN CN202010201103.XA patent/CN111427683A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401712A (en) * | 2013-07-31 | 2013-11-20 | 北京华易互动科技有限公司 | Content distribution based intelligent high-availability task processing method and system |
CN105955072A (en) * | 2016-02-19 | 2016-09-21 | 青岛克路德机器人有限公司 | Loss of communication control system and method of wireless remote control robot |
CN110046818A (en) * | 2019-04-15 | 2019-07-23 | 广州高新兴机器人有限公司 | A kind of multi-robot Task Allocation |
CN110308740A (en) * | 2019-06-28 | 2019-10-08 | 天津大学 | A kind of unmanned aerial vehicle group dynamic task allocation method towards mobile target tracking |
CN110648054A (en) * | 2019-09-04 | 2020-01-03 | 中国建设银行股份有限公司 | Task parallel processing method and device for robot process automation |
Non-Patent Citations (3)
Title |
---|
季秀才;崔连虎;郑志强;: "混合分布式任务分配机制在足球机器人系统中的应用研究" * |
李可佳;丁希仑;: "用于星球探测的多机器人任务规划技术" * |
董炀斌;蒋静坪;何衍;: "基于适应度的多机器人任务分配策略" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI781492B (en) * | 2020-12-08 | 2022-10-21 | 國泰人壽保險股份有限公司 | Process robot management system and process robot management method |
CN113220378A (en) * | 2021-05-11 | 2021-08-06 | 中电金信软件有限公司 | Flow processing method and device, electronic equipment, storage medium and system |
WO2023035755A1 (en) * | 2021-09-10 | 2023-03-16 | 北京京东乾石科技有限公司 | Task processing method, apparatus and system for multiple robots, and robot |
WO2023168923A1 (en) * | 2022-03-07 | 2023-09-14 | 达而观信息科技(上海)有限公司 | Robotic process automation cloud service system and implementation method |
CN117193232A (en) * | 2023-07-26 | 2023-12-08 | 珠海金智维信息科技有限公司 | RPA-based flow node fault processing method, system, device and medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427683A (en) | Task allocation method and device of robot for process automation in computer | |
CN105912399B (en) | Task processing method, device and system | |
CN111381950A (en) | Task scheduling method and system based on multiple copies for edge computing environment | |
CN109343939B (en) | Distributed cluster and parallel computing task scheduling method | |
CN107968802A (en) | The method, apparatus and filtering type scheduler of a kind of scheduling of resource | |
CN109656782A (en) | Visual scheduling monitoring method, device and server | |
CN101149689A (en) | Load distributing apparatus | |
CN111045795A (en) | Resource scheduling method and device | |
CN107316124B (en) | Extensive affairs type job scheduling and processing general-purpose system under big data environment | |
CN104850394B (en) | The management method and distributed system of distributed application program | |
CN113032102B (en) | Resource rescheduling method, device, equipment and medium | |
CN110750331B (en) | Container cluster scheduling method and platform for education desktop cloud application | |
DE102017130613A1 (en) | Task scheduler | |
CN106874109A (en) | A kind of distributed job distribution processing method and system | |
CN114968601B (en) | Scheduling method and scheduling system for AI training jobs with resources reserved in proportion | |
CN109508843A (en) | A kind of intelligent Service implementation method and device | |
CN114911613A (en) | Cross-cluster resource high-availability scheduling method and system in inter-cloud computing environment | |
CN111966597A (en) | Test data generation method and device | |
US20050096957A1 (en) | System and method for manufacturing job rescheduling | |
CN114219189A (en) | Task processing method and task processing device | |
CN110413393B (en) | Cluster resource management method and device, computer cluster and readable storage medium | |
CN113051063B (en) | Task scheduling method and device for distributed tasks and electronic equipment | |
TWI594131B (en) | Cloud batch scheduling system and batch management server computer program products | |
CN107315395A (en) | One kind production automatic error-correcting program system and method | |
Miao et al. | Distributed stochastic resource allocation in teams |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200717 |