CN115061809B - Android-based RPA multi-task scheduling method and system - Google Patents
Android-based RPA multi-task scheduling method and system Download PDFInfo
- Publication number
- CN115061809B CN115061809B CN202210944420.XA CN202210944420A CN115061809B CN 115061809 B CN115061809 B CN 115061809B CN 202210944420 A CN202210944420 A CN 202210944420A CN 115061809 B CN115061809 B CN 115061809B
- Authority
- CN
- China
- Prior art keywords
- task
- rpa
- micro
- execution
- 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.)
- Active
Links
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/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
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention belongs to the technical field of computers, and particularly relates to an RPA multi-task scheduling method and system based on android. The method comprises the steps that S1, an android RPA robot is directly connected with an RPA task scheduling center through a network, and a user manages an RPA process through the RPA task scheduling center; s2, a user creates an RPA flow and executes a scheduling strategy; s3, the RPA task scheduling center generates an RPA task according to a scheduling strategy; s4, manually pulling the RPA task, performing task dependency calculation and disassembly after the RPA task is pulled, and disassembling the RPA task dependency calculation and the RPA task dependency calculation into a micro-task dependency tree; s5, performing parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree; s6, reporting the micro task execution result after all the micro tasks are executed; and S7, analyzing and recording the micro task execution result, and finishing the optimization processing of the RPA task execution flow. The invention has the characteristics of high execution efficiency, cost saving and easy optimization.
Description
Technical Field
The invention belongs to the technical field of computers, and particularly relates to an RPA multi-task scheduling method and system based on android.
Background
An RPA (resilient Process Automation, abbreviated as RPA) is a robot Process Automation abbreviation, which replaces or assists a human to complete repetitive work and tasks in digital equipment such as a computer, a mobile phone and the like by software, and replaces a human to complete Automation. The intelligent digital tool is a novel digital tool, and can help enterprises or employees to complete repeated and monotonous flow work, reduce manual errors, improve operation efficiency and reduce operation cost.
The current RPA tool is mainly aimed at the desktop end and mainly takes a Windows system as a main tool. Along with the development of the mobile internet, the demand of the RPA software of the mobile terminal is also increasing. The 5G era has come, data traffic no longer becomes a factor restricting a mobile phone use scenario and complex service processing, more and more mobile terminal automation scenarios are brought by breakthrough and leap of mobile terminal services, and the RPA process of the mobile terminal is widely used. The RPA process of the mobile phone terminal means that with the help of a brand-new mobile terminal device (such as a physical mobile phone and a cloud mobile phone), the RPA automatically operates (clicks, slides, captures pictures, collects data, and the like) the mobile phone application software so as to meet the requirements of automatic scene operation and task execution based on the mobile phone. Android is favored by various large mobile phone manufacturers as an open-source mobile phone operating system, and hardware equipment of mobile phone manufacturers is adapted based on secondary development, so that the android successfully occupies a large market. As an open source mobile phone operating system, the mobile phone operating system is also widely used for RPA process operation.
With the development of the RPA technology at the mobile phone end, more and more third-party RPA applications based on the android system are provided. The RPA software An Zhuoduan, which is realized by using the open source software Appium and uiautomator2 through secondary development, is widely used. The software has the characteristics of easy use, high stability and simple development, and can be used quickly by realizing simple training. The currently known android RPA process is not limited to User Interface (UI) based operation, but also includes functions of data cleaning, data analysis, report generation, document processing, warning and the like.
In recent years, an Zhuoduan RPA processes are increasingly complicated, and in an RPA task running in a real scene, usually one An Zhuoduan needs to execute a plurality of processes. A plurality of subtasks are generated in the process of executing the flow, mutual dependency relationships exist in the process of executing the subtasks, some subtasks need to monopolize an operating system, and some subtasks only need to perform data processing of a background. Along with the fact that fragmented and lightweight mobile phone RPA tasks are widely operated, task scheduling becomes an indispensable or deficient part in an android RPA process.
The current An Zhuoduan RPA flow scheduling widely adopts the execution process of unified scheduling by an RPA task scheduling center and matching of a computer end and a mobile phone end. When the process is executed, the computing resources of the computer end and the mobile phone end are occupied in an exclusive mode. All tasks are queued up while multitasking is running. After each task is scheduled, the execution state of the task (including information such as success or failure, task execution time, task execution log and the like) is reported to the RPA task scheduling center. The RPA task scheduling center records the execution condition of each robot, and presents information such as task execution success rate, execution efficiency and the like in a report form. At present, the RPA flow execution scheduling mode excessively depends on an RPA task scheduling center. The starting or stopping of the RPA android mobile phone robot needs a task scheduling center, and the scheduling efficiency is not high.
The existing RPA An Zhuoduan multi-task execution scheduling technology has the following disadvantages in task issuing and execution, execution mode and execution process.
1. The traditional RPA task execution depends heavily on the RPA robot at the computer terminal. For the lightweight An Zhuoduan RPA task and the data processing and analyzing task, only the android mobile phone end is needed to complete the task well originally. At present, the An Zhuoduan RPA robot scheme does not have task scheduling related functional modules, so that the scheduling execution of RPA tasks cannot be completed independently. In addition, from the reliability index analysis of the system, the more modules are introduced, the more factors cause the instability of the system. In addition, the communication between the RPA robot at the computer end and the An Zhuoduan RPA robot is usually realized through a USB interface or a wireless debugging mode, which undoubtedly increases unstable risk points to the service in the process of actually executing the RPA process.
2. An Zhuoduan RPA performs inefficiently. The existing computer RPA robot and android RPA robot are in serial synchronous operation in the scheduling execution process, and only a certain computing resource executes RPA operation at any time. From the execution time index analysis, the serial execution mode has idle waiting time, which undoubtedly increases the time for the whole RPA to execute. The modern CPU design is optimized by multi-thread parallel computing, and has great advantages in the aspect of parallel computing. As an excellent scheduling technique, the utilization of computing resources is also a measure for evaluating whether a scheduling technique is advanced.
3. Existing scheduling implementations may increase RPA implementation costs. For a light-weight mobile phone RPA process, only one mobile phone + RPA task scheduling center is needed to complete the process, and the existing scheduling scheme at least needs one computer and one android mobile phone to complete the process, so that the analysis is not reasonable enough in terms of resource consumption. From the economic benefit analysis, the combination of the mobile phone RPA robot and the computer RPA robot brings higher RPA execution cost.
And 4, the RPA flow is not easy to perform analysis and optimization. The conventional An Zhuoduan RPA task execution is generally used as a minimum unit for data analysis and statistics as a whole, the time, the log and the execution result of the flow execution are recorded in the execution process, and the execution result is returned to the RPA task scheduling center after the execution is finished to record the execution condition of the task. The RPA task scheduling center can analyze the execution process according to the time dimension, the result dimension and the efficiency dimension of the task execution result, and find out the execution performance bottleneck so as to further optimize the RPA execution flow. For the RPA task with a complex flow, optimization analysis is a non-negligible task, however, the existing scheme performs task analysis by taking the RPA task at the mobile phone end as a whole, and the operability difficulty is high from the executable point of view.
Therefore, it is very important to design an android-based RPA multitask scheduling method and system with high execution efficiency, cost saving and easy optimization.
For example, chinese patent application No. CN202110075707.9 describes a method for processing tasks based on an android virtual machine, and a computer device, where the method is executed by the computer device, the computer device is configured with a plurality of virtual machines, the virtual machines are created based on the android system, each virtual machine is configured with a first application and a first program, and when the first program is executed by the virtual machine, the first application detects an operation of a simulated user associated with the first program. The method comprises the following steps: when a plurality of tasks to be processed are received, a first virtual machine is determined, the first tasks are distributed to the first virtual machine, and the first virtual machine is called to process the first tasks. Although the method provided can realize parallel processing of a plurality of tasks to be processed at the same time due to the simultaneous operation of a plurality of virtual machines, thereby improving the processing efficiency of the RPA tasks, the method still has the problems of increasing the RPA execution cost and difficulty in analysis and optimization of the RPA flow execution process.
Disclosure of Invention
The invention provides an android-based RPA multi-task scheduling method and system with high execution efficiency, cost saving and easiness in optimization, and aims to solve the problems that in the prior art, the dependence is strong, the execution efficiency is low, the RPA execution cost is increased, and the analysis and optimization of the RPA process execution process are not easy in the conventional RPA An Zhuoduan multi-task execution scheduling technology.
In order to achieve the purpose of the invention, the invention adopts the following technical scheme:
an RPA multi-task scheduling method based on android comprises the following steps;
s1, an android RPA robot is directly connected with an RPA task scheduling center through a network, so that a user manages an RPA process through the RPA task scheduling center;
s2, a user creates an RPA flow and executes a scheduling strategy;
s3, the RPA task scheduling center generates an RPA task according to a scheduling strategy;
s4, manually pulling the RPA task, performing dependency calculation and disassembly on the RPA task, and disassembling the RPA task into a micro-task dependency tree;
s5, performing parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree;
s6, reporting the micro task execution result after all the micro tasks are executed;
and S7, analyzing and recording the micro task execution result, and finishing the optimization processing of the RPA task execution flow.
Preferably, in step S3, the RPA task includes a plurality of micro tasks; each micro-task is considered a minimum executable unit.
Preferably, each micro task contains a task ID, task upper level dependencies, and micro task meta-information.
Preferably, in step S6, the start time, the end time, and the information about whether the execution is abnormal or not are recorded during the execution of each micro task, and the information is collectively reported to the RPA task scheduling center after the RPA task is completed.
Preferably, the parallel execution process in step S5 is specifically as follows:
s51, setting to pull the RPA task A and the RPA task B, and calculating a DAG (demand directed graph) for the micro-tasks of the two RPA tasks according to the ID (identity), dependence and meta-information of the micro-tasks;
setting that the task 4 meta-information in the task B and the micro-task 3 in the task A are both { UI: true }, and indicating that the task is a UI exclusive task;
s52, opening 4 parallel-executed micro-task execution units, executing a DAG graph through the micro-tasks completed in the step S51, and starting to execute the micro-tasks;
s53, analyzing executable micro tasks A-1 and B-1 from the two DAG graphs, and respectively recording the execution starting time of the two micro tasks A-1 and B-1;
wherein, A-1 and B-1 respectively represent a micro task 1 in a task A and a micro task 1 in a task B;
s54, when the 2 micro tasks in the step S53 are executed, recording the execution result of the micro tasks into a global variable, and starting to analyze the next executable micro tasks by a micro task execution unit, wherein the next executable micro tasks are A-2, A-3, B-2 and B-3 respectively;
wherein A-2, A-3, B-2 and B-3 respectively represent a micro task 2 and a micro task 3 in a task A and a micro task 2 and a micro task 3 in a task B;
s55, when the execution of the 4 micro tasks in the step S54 is finished, the executable micro tasks A-4, B-4 and B-5 are analyzed, and the execution of all the tasks is finished.
Preferably, step S6 includes the steps of:
s61, when all the micro tasks of one RPA task are executed, the RPA task is executed, and the result of all the micro tasks is reported to the RPA task scheduling center.
The invention also provides an RPA multitask scheduling system based on android, which comprises the following steps of;
the RPA task scheduling center module is used for managing the RPA process, creating the RPA process and executing a scheduling strategy;
the RPA task generating module is used for generating an RPA task by the RPA task scheduling center according to the scheduling strategy;
the calculation disassembling module is used for performing dependency calculation and disassembly on the RPA task after the RPA task is pulled, and disassembling the RPA task into a micro-task dependency tree;
the parallel execution module is used for carrying out parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree;
the result reporting module is used for reporting the execution result of the micro tasks after the execution of all the micro tasks is finished;
and the analysis optimization module is used for analyzing and recording the micro-task execution result and finishing the optimization processing of the RPA task execution flow.
Preferably, the parallel execution module specifically includes:
setting and pulling an RPA task A and an RPA task B, and calculating a DAG (micro-task execution DAG) graph of the two RPA tasks according to the ID, the dependence and the meta-information of the micro-tasks;
setting that the task 4 meta-information in the task B and the micro-task 3 in the task A are both { UI: true }, and indicating that the task is a UI exclusive task;
starting 4 parallel execution units of the micro tasks, executing the DAG graph through the completed micro tasks, and starting to execute the micro tasks;
analyzing executable micro tasks A-1 and B-1 from the two DAG graphs, and respectively recording the execution starting time of the two micro tasks A-1 and B-1;
wherein, A-1 and B-1 respectively represent a micro task 1 in a task A and a micro task 1 in a task B;
when the execution of the 2 micro tasks is finished, recording the execution result of the micro tasks into a global variable, and starting to analyze the next executable micro task by a micro task execution unit, wherein the next executable micro task is A-2, A-3, B-2 and B-3;
wherein, A-2, A-3, B-2 and B-3 respectively represent a micro task 2 and a micro task 3 in a task A and a micro task 2 and a micro task 3 in a task B;
when the execution of the 4 micro tasks is completed, the executable micro tasks A-4, B-4 and B-5 are analyzed, and the execution of all the tasks is finished.
Preferably, the RPA task scheduling center module includes:
the RPA flow management module is used for managing the RPA flow of the user and a flow scheduling strategy;
the task queue module is used for placing RPA tasks generated according to the RPA flow and the scheduling strategy;
the task analysis module is used for analyzing and summarizing an execution result of the RPA task;
and the micro-task analysis module is used for analyzing the micro-task execution condition in the RPA task, and comprises micro-task execution time analysis, execution result analysis, user optimization and task processing result.
Compared with the prior art, the invention has the beneficial effects that: (1) The android-based RPA multi-task scheduling system is creatively realized by directly connecting the android phone with the RPA task scheduling center, the RPA minimum executable unit micro-task is provided by standardizing RPA task definition, the economic cost and the execution efficiency in use are comprehensively considered, and the defects of the existing android RPA multi-task scheduling scheme can be overcome; (2) The invention breaks through the conventional scheme that the conventional computer RPA robot controls the android RPA robot, introduces fewer subsystems to solve the problem of RPA multi-task scheduling, and improves the reliability of the system to a certain extent; (3) In the execution efficiency, the traditional lengthy process that the RPA task is sent to the android RPA robot in serial according to the instruction and the result is returned through USB or wireless debugging after the execution is finished is abandoned, and the RPA task of the mobile phone is completely and independently operated on the android mobile phone, so that the execution efficiency and the performance are improved; (3) The method and the system use the pure android RPA robot, can save more economic cost for a user when deploying the mobile RPA process, can complete the rapid deployment and scheduling of the mobile RPA process only by one android mobile phone and the cloud RPA task scheduling center, and have remarkable effect particularly in the aspect of large-batch mobile RPA robots; (4) The invention has the characteristics of high scheduling efficiency, high execution speed, low economic cost and more reasonable design.
Drawings
FIG. 1 is a flow chart of an android-based RPA multitask scheduling method of the present invention;
FIG. 2 is a functional architecture diagram of a system of the android-based RPA multitask scheduling system of the present invention;
FIG. 3 is a schematic diagram of an architecture of the RPA task of the present invention;
FIG. 4 is a diagram of a micro-task execution DAG for two RPA tasks, as exemplified in the present invention;
fig. 5 is a flowchart of a user comment public opinion monitoring system according to an embodiment of the present invention.
Detailed Description
In order to more clearly illustrate the embodiments of the present invention, the following description will explain the embodiments of the present invention with reference to the accompanying drawings. It is obvious that the drawings in the following description are only some examples of the invention, and that for a person skilled in the art, without inventive effort, other drawings and embodiments can be derived from them.
Example (b):
the android-based RPA multitask scheduling method shown in FIG. 1 comprises the following steps;
s1, directly connecting an RPA task scheduling center through a network by using an android RPA robot, and enabling a user to manage an RPA process through the RPA task scheduling center;
s2, a user creates an RPA flow and executes a scheduling strategy;
s3, the RPA task scheduling center generates an RPA task according to a scheduling strategy;
s4, manually pulling the RPA task, performing dependency calculation and disassembly on the RPA task, and disassembling the RPA task into a micro-task dependency tree;
s5, performing parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree;
s6, reporting the micro task execution result after all the micro tasks are executed;
and S7, analyzing and recording the micro task execution result, and finishing the optimization processing of the RPA task execution flow.
In the aspect of task scheduling, the invention optimizes the execution mode that the traditional computer RPA robot is used as a main scheduling object and the android RPA robot is used as a task execution unit. Instead, an android RPA robot is directly connected with an RPA task scheduling center through a network, and the most efficient execution mode is achieved through task pulling, task dependent computation, task disassembling and parallel operation.
In the aspect of task specification and execution, the traditional RPA task is decomposed with finer granularity. The user manages the RPA flow through the scheduling center, and creates an RPA flow execution scheduling strategy. The RPA scheduling center generates an RPA task according to a scheduling strategy, the robot pulls the RPA task and then performs task dependency calculation and disassembly, the RPA task dependency calculation and disassembly are split into a micro-task dependency tree, then the android micro-task execution unit performs maximum parallel execution on the micro-tasks according to the micro-task dependency tree, and reports the task execution result after all the micro-tasks are executed. And analyzing and recording the micro-task execution result in the task execution process, and using the analysis and recording to perform optimization processing on the RPA task in the later period.
In the RPA component execution level, the conventional computer RPA robot serially sends an instruction to the android RPA robot to complete the execution of the instruction is abandoned. In general, the RPA process has a large number of operations such as determining the state of a mobile phone in multiple cycles, acquiring UI elements in multiple cycles, operating UI elements in multiple cycles, reading and writing mobile phone files, and the like, and if a conventional serial instruction transmission execution manner is adopted, a large amount of processes in the execution process are consumed in the processes of data transmission, data reception, and data waiting. By the scheme of integrally executing the scheduling and executing on the android mobile phone, the same flow is executed in the aspect of designing excessive UI circulation judgment complex flows, and the efficiency is greatly improved.
The invention also provides an RPA multitask scheduling system based on android, which comprises the following steps of;
the RPA task scheduling center module is used for managing the RPA process, creating the RPA process and executing a scheduling strategy;
the RPA task generating module is used for generating an RPA task by the RPA task scheduling center according to the scheduling strategy;
the calculation disassembling module is used for performing dependency calculation and disassembly on the tasks after the RPA tasks are pulled, and disassembling the RPA tasks into a micro-task dependency tree;
the parallel execution module is used for carrying out parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree;
the result reporting module is used for reporting the execution result of the micro tasks after the execution of all the micro tasks is finished;
and the analysis optimization module is used for analyzing and recording the micro-task execution result and finishing the RPA task execution flow optimization processing.
Specifically, as shown in fig. 2, in the RPA multitask scheduling system based on android, at the RPA task scheduling center side, an RPA process management subsystem, a task analysis subsystem, a data report subsystem, and a task queue subsystem are adopted:
the process management is used for managing the user RPA process and the process scheduling strategy, comprises a rear-end interface and a user operation WEB interface, RPA tasks generated according to the RPA process and the scheduling strategy are located in an RPA task queue, and the tasks in the task queue are distributed to the android RPA robot for execution according to the setting of the scheduling equipment and the setting of the scheduling resources.
The task analysis is used for analyzing and summarizing RPA task execution results, and the micro-task analysis subsystem is used for analyzing micro-task execution conditions in the android RPA task, and comprises micro-task execution time analysis, execution result analysis, user optimization and task processing results.
In the aspect of the RPA task, the invention redefines the RPA task, as shown in FIG. 3:
an RPA task comprises a plurality of micro tasks, each micro task is a minimum executable unit, and data collection, data analysis and data early warning can be used as the minimum executable micro task. In the technical implementation mode, one micro task is a function which can be called and comprises a task parameter, and after the execution of each micro task is finished, an execution result is written into a global variable of an RPA task and is persisted into a file. The exception thrown by the micro task in the execution process indicates that the micro task fails to be executed, and the micro task is marked as the micro task failure.
Each micro task comprises a task ID, task upper level dependency and micro task meta-information. The attribute information of the micro-tasks is implemented in a functional annotation manner in technical implementation, such as the following is an example micro-task:
/*
@microTask
@id test
@depends foo,bar
@meta {ui:true}
*/
function TestMiroTask(task){
// micro-task execution
}
The @ microTask indicates that a micro task is declared, the @ ID indicates the ID of the micro task, the @ depends indicates an upstream micro task on which the micro task depends, and the @ meta indicates the meta-information of the micro task, for example, UI indicates that the task is a task exclusive to the UI and cannot be executed in parallel with other tasks exclusive to the UI.
And recording information such as starting time, ending time, abnormal execution and the like in the execution process of each micro task, and reporting the information to an RPA task scheduling center after the RPA task is executed.
In the aspect of task execution, the invention furthest ensures the parallel execution of multiple tasks:
1. the mobile phone RPA robot pulls a plurality of executable RPA tasks from the task scheduling center. And after the pulling is finished, the android task scheduling center carries out micro-task decomposition and dependency calculation on the RPA task. As shown in fig. 4, for the pulled task a and task B, a DAG graph for the execution of the micro tasks of the two tasks is calculated according to the ID, dependency, and meta information of the micro tasks, where the meta information of the micro task 3 in the task a and the meta information of the task 4 in the task B are both { UI: true }, which indicates that the tasks are exclusive UI tasks.
2. The android RPA robot multitask scheduling system defaults to open 4 parallel execution micro-task execution units, technically realized through a Java thread pool, and starts to execute micro-tasks through the micro-task execution DAG graph completed in the step 1.
3. Executable micro tasks A-1 and B-1 are analyzed from the two DAG graphs (A-1 and B-1 respectively represent micro task 1 in task A and micro task 1 in task B, the same is applied below), and the execution starting time of the two micro tasks A-1 and B-1 is recorded respectively.
4. When the execution of 2 micro tasks in the previous step is completed (this example facilitates the demonstration and explains that it is assumed that two micro tasks are simultaneously executed), the execution result of the micro task is recorded into the global variable, the micro task execution unit starts to resolve the next executable micro task, which is respectively a-2, a-3, B-2, and B-3, and since only one UI exclusively occupies the task and does not conflict with other tasks, 4 micro task execution units start to simultaneously execute 4 micro tasks.
5. When the execution of the 4 micro tasks in the last step is completed, the multi-task scheduling system starts A-4, B-4 and B-5 until the execution of all the tasks is finished.
6. When all the micro tasks of one RPA task are executed, the RPA task is executed, and the micro tasks are reported to the RPA task scheduling center in a unified way.
On the aspect of task analysis, the invention also provides great data support, and facilitates the later optimization of the RPA process:
whether the RPA task or the micro-task executed by the multi-task scheduling system, the task execution time and the execution result are reported to the RPA task scheduling center.
In the aspect of RPA process optimization analysis, aiming at the execution time and execution result of the RPA task and the micro-task given in the previous step, the RPA task can be analyzed and summarized on the micro-task level, the execution success rate and the execution time consumption of finer granularity can be obtained, and particularly, the RPA process analysis with low success rate and low execution speed in the later period has very large data support.
In conclusion, the invention realizes an RPA multitask scheduling system based on android by optimizing a task scheduling level, a task specification, an execution level and an RPA component execution level in multiple aspects.
Based on the technical scheme of the invention, taking an android RPA flow of a user comment public opinion monitoring system as an example, a service scene in the specific implementation and operation process is as shown in fig. 5:
1. and uploading the RPA flow of the user comment public opinion monitoring mobile phone to an RPA task scheduling center, and setting to execute the user comment public opinion monitoring once per hour according to a scheduling strategy.
2. The android RPA robot draws the user comment public opinion monitoring RPA task, and locally analyzes the user comment public opinion monitoring micro task execution dependency tree.
3. According to the micro-task execution condition, the mobile phone multi-task scheduling system starts to execute APP1 comments and collect micro-tasks, the micro-task execution time and the micro-task execution result are recorded, and the execution result of the APP1 is stored into a global variable after the micro-task execution is finished. Since both micro task (1) and micro task (2) have meta-information of { UI: true }, meaning that both are UI exclusive micro tasks, they cannot be executed in parallel.
And 4, after the execution of the APP1 comment acquisition micro-task is finished, synchronously executing the APP2 comment acquisition micro-task and the APP1 comment analysis micro-task. The APP1 comment analysis micro task sends comment information to the NLP for comment emotion recognition, and information concerned such as poor comment is recognized.
5. And after the execution of the APP2 comment acquisition micro-task is finished, executing the APP2 comment analysis micro-task, and after the execution of the APP1 and APP2 comment analysis tasks is finished, starting to execute the analysis summary micro-task. The analysis summarization micro task carries out data summarization processing on the comment information collected by the APP1 and the APP2, and data index analysis on the next step is facilitated.
6. And after the analysis and collection micro-task is completed, synchronously executing a data report micro-task and an index analysis public opinion warning micro-task, wherein the data report micro-task generates a comment data report according to the data result collected in the last step and uploads the comment data report to a data center of an RPA (resilient packet access) scheduling center in a unified manner, the index analysis public opinion warning micro-task is used for analyzing whether comment information triggers public opinion warning or not, and if so, a related notification mail is sent to a customer service staff in time.
7. And after all the micro tasks are executed, the android RPA robot reports the execution time of the RPA tasks and the execution result data.
The invention provides a method and a system for connecting an RPA (resilient packet access) with an AI (AI) algorithm platform, wherein data are stored in an RPA rear-end database according to a tenant ID (identity), the algorithm platform acquires the data from a data system by sending a request, models and stores the data information after an automatic analytic training process and registers the data information to a sop, the RPA acquires a service information list and finally analyzes and encapsulates the service information list into an RPA component to be presented on an RPA platform, and then the tenant can use the AI model which is generated by the algorithm platform in a customized manner by dragging the RPA component. The mode of rapidly deploying the user-defined AI model into the RPA service of the user can reduce cost and improve efficiency and meet wider requirements of tenants.
The innovation points of the invention are as follows:
the invention makes breakthroughs in multiple aspects of RPA task multi-task parallel execution at the mobile phone end, improvement of execution efficiency, reduction of An Zhuoduan RPA deployment cost and the like, and completes the scheduling of the RPA task in the most efficient way.
In the aspect of task scheduling, the execution of the conventional android RPA process which can be completed only by the cooperation of a computer RPA robot is upgraded, and the android mobile phone RPA robot can directly connect with an RPA task scheduling center in an innovative manner, so that fewer system execution dependencies are introduced, and the stability of the system is improved. Meanwhile, the cooperative execution of a computer end RPA robot is not needed, and the deployment cost of the An Zhuoduan RPA process is greatly reduced. The direct connection scheduling mode thoroughly solves the problem of needing computer end matching.
In the aspect of execution efficiency, the RPA task is disassembled into a plurality of parallel micro tasks in the execution process, and the parallel RPA micro task execution units execute the micro tasks simultaneously, so that the execution speed is improved. Meanwhile, the phenomenon that the existing computer RPA robot sends a single serial RPA instruction is avoided, and the overall execution efficiency of the RPA process is improved.
In the aspect of task monitoring and optimization, the execution process of a plurality of micro tasks is monitored simultaneously, the execution state and the execution time of the micro tasks are recorded, and important data support and analysis basis is provided for the RPA execution optimization in the later period.
The foregoing has outlined, rather broadly, the preferred embodiment and principles of the present invention in order that those skilled in the art may better understand the detailed description of the invention without departing from its broader aspects.
Claims (5)
1. The RPA multitask scheduling method based on android is characterized by comprising the following steps;
s1, an android RPA robot is directly connected with an RPA task scheduling center through a network, so that a user manages an RPA process through the RPA task scheduling center;
s2, a user creates an RPA flow and executes a scheduling strategy;
s3, the RPA task scheduling center generates an RPA task according to a scheduling strategy;
s4, manually pulling the RPA task, performing dependency calculation and disassembly on the RPA task, and disassembling the RPA task into a micro-task dependency tree;
s5, performing parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree;
s6, reporting the micro task execution result after all the micro tasks are executed;
s7, analyzing and recording the micro task execution result, and finishing the optimization processing of the RPA task execution flow;
in step S3, the RPA task comprises a plurality of micro tasks; each micro task is regarded as a minimum executable unit;
each micro task comprises a task ID, task superior dependency and micro task meta-information;
in the step S6, the starting time, the ending time and the information whether the execution is abnormal or not are recorded in the execution process of each micro task, and the information is uniformly reported to an RPA task scheduling center after the execution of the RPA task is finished;
the parallel execution process in step S5 is specifically as follows:
s51, setting to pull the RPA task A and the RPA task B, and calculating a DAG (micro-task execution DAG) graph of the two RPA tasks according to the ID, the dependence and the meta-information of the micro-tasks;
setting that the task 4-bit information in the task A and the task 3 in the task B are both { UI: true }, wherein the setting is that the setting is a UI exclusive task;
s52, opening 4 parallel-executed micro-task execution units, executing a DAG graph through the micro-tasks completed in the step S51, and starting to execute the micro-tasks;
s53, analyzing executable micro tasks A-1 and B-1 from the two DAG graphs, and respectively recording the execution starting time of the two micro tasks A-1 and B-1;
wherein, A-1 and B-1 respectively represent a micro task 1 in a task A and a micro task 1 in a task B;
s54, when the 2 micro tasks in the step S53 are executed, recording the execution result of the micro tasks into a global variable, and starting to analyze the next executable micro tasks by a micro task execution unit, wherein the next executable micro tasks are A-2, A-3, B-2 and B-3 respectively;
wherein A-2, A-3, B-2 and B-3 respectively represent a micro task 2 and a micro task 3 in a task A and a micro task 2 and a micro task 3 in a task B;
s55, when the execution of the 4 micro tasks in the step S54 is finished, the executable micro tasks A-4, B-4 and B-5 are analyzed, and the execution of all the tasks is finished.
2. The android-based RPA multitasking scheduling method according to claim 1, wherein step S6 comprises the following steps:
s61, when all the micro tasks of one RPA task are executed, the RPA task is executed, and the result of all the micro tasks is reported to the RPA task scheduling center.
3. An android-based RPA multitask scheduling system for implementing the android-based RPA multitask scheduling method according to any one of claims 1-2, wherein the android-based RPA multitask scheduling system comprises;
the RPA task scheduling center module is used for managing the RPA process, creating the RPA process and executing a scheduling strategy;
the RPA task generating module is used for generating an RPA task by the RPA task scheduling center according to the scheduling strategy;
the calculation disassembling module is used for performing dependency calculation and disassembly on the tasks after the RPA tasks are pulled, and disassembling the RPA tasks into a micro-task dependency tree;
the parallel execution module is used for carrying out parallel execution on the micro tasks to the maximum extent according to the micro task dependency tree;
the result reporting module is used for reporting the execution result of the micro tasks after the execution of all the micro tasks is finished;
and the analysis optimization module is used for analyzing and recording the micro-task execution result and finishing the RPA task execution flow optimization processing.
4. The android-based RPA multitasking scheduling system according to claim 3, wherein said parallel execution module is specifically as follows:
setting and pulling an RPA task A and an RPA task B, and calculating a DAG (micro-task execution DAG) graph of the two RPA tasks according to the ID, the dependence and the meta-information of the micro-tasks;
setting that the task 4 meta-information in the task B and the micro-task 3 in the task A are both { UI: true }, and indicating that the task is a UI exclusive task;
starting 4 parallel execution units of the micro tasks, executing the DAG graph through the completed micro tasks, and starting to execute the micro tasks;
analyzing executable micro tasks A-1 and B-1 from the two DAG graphs, and respectively recording the execution starting time of the two micro tasks A-1 and B-1;
wherein, A-1 and B-1 respectively represent a micro task 1 in a task A and a micro task 1 in a task B;
when the execution of the 2 micro tasks is finished, recording the execution result of the micro tasks into a global variable, and enabling a micro task execution unit to begin to analyze the next executable micro task, namely A-2, A-3, B-2 and B-3;
wherein, A-2, A-3, B-2 and B-3 respectively represent a micro task 2 and a micro task 3 in a task A and a micro task 2 and a micro task 3 in a task B;
when the execution of the 4 micro tasks is completed, the executable micro tasks A-4, B-4 and B-5 are analyzed, and the execution of all the tasks is finished.
5. The android-based RPA multitasking scheduling system according to claim 3, wherein said RPA task scheduling center module includes:
the RPA flow management module is used for managing the RPA flow of the user and a flow scheduling strategy;
the task queue module is used for placing RPA tasks generated according to the RPA flow and the scheduling strategy;
the task analysis module is used for analyzing and summarizing an execution result of the RPA task;
and the micro-task analysis module is used for analyzing the micro-task execution condition in the RPA task, and comprises micro-task execution time analysis, execution result analysis, user optimization and task processing result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210944420.XA CN115061809B (en) | 2022-08-08 | 2022-08-08 | Android-based RPA multi-task scheduling method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210944420.XA CN115061809B (en) | 2022-08-08 | 2022-08-08 | Android-based RPA multi-task scheduling method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115061809A CN115061809A (en) | 2022-09-16 |
CN115061809B true CN115061809B (en) | 2022-11-11 |
Family
ID=83207495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210944420.XA Active CN115061809B (en) | 2022-08-08 | 2022-08-08 | Android-based RPA multi-task scheduling method and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115061809B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115408136B (en) * | 2022-11-01 | 2023-03-24 | 安徽思高智能科技有限公司 | RPA flow scheduling method based on genetic algorithm |
CN115580616B (en) * | 2022-12-07 | 2023-03-24 | 北财在线科技(北京)有限公司 | Cloud RPA system under multi-tenant architecture and multi-cloud platform and application method |
CN115686540B (en) * | 2023-01-03 | 2023-04-11 | 杭州实在智能科技有限公司 | RPA control method and system based on Hongmong system |
CN116225725A (en) * | 2023-05-10 | 2023-06-06 | 西安敦讯信息技术有限公司 | Flow configuration method and system based on RPA robot |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427252A (en) * | 2019-06-18 | 2019-11-08 | 平安银行股份有限公司 | Method for scheduling task, device and the storage medium of task based access control dependence |
CN111209301A (en) * | 2019-12-29 | 2020-05-29 | 南京云帐房网络科技有限公司 | Method and system for improving operation performance based on dependency tree splitting |
CN111429083A (en) * | 2020-02-21 | 2020-07-17 | 达而观信息科技(上海)有限公司 | Web front end and system for realizing batch management of RPA robots |
CN112001594A (en) * | 2020-07-24 | 2020-11-27 | 国网冀北电力有限公司物资分公司 | Robot management system based on material contract management and management method thereof |
US10853097B1 (en) * | 2018-01-29 | 2020-12-01 | Automation Anywhere, Inc. | Robotic process automation with secure recording |
KR102190459B1 (en) * | 2020-04-28 | 2020-12-11 | 농업협동조합중앙회 | User interface apparatus for sharing of rpa |
JP2021033998A (en) * | 2019-12-12 | 2021-03-01 | 株式会社Shift | Signal processing apparatus, monitoring control system, monitoring control method, monitoring control program, and manufacturing method of monitoring control system |
CN112817748A (en) * | 2021-01-20 | 2021-05-18 | 深圳魔栗科技有限公司 | Task processing method based on android virtual machine and computer equipment |
CN113157409A (en) * | 2021-03-25 | 2021-07-23 | 北京来也网络科技有限公司 | AI-based RPA task scheduling method, device, electronic equipment and storage medium |
CN113467383A (en) * | 2021-07-06 | 2021-10-01 | 福建水口发电集团有限公司 | Task management method, device and storage medium for RPA robot |
CN113570093A (en) * | 2021-06-25 | 2021-10-29 | 北京来也网络科技有限公司 | Information reporting method, device, equipment and medium based on AI and RPA |
CN113570347A (en) * | 2021-09-24 | 2021-10-29 | 国网江苏省电力有限公司营销服务中心 | RPA operation and maintenance method for micro-service architecture system |
WO2021238045A1 (en) * | 2020-05-27 | 2021-12-02 | 重庆邮电大学 | Rpa-based customer requirement obtaining and querying method under large-scale customization |
CN113836264A (en) * | 2021-09-18 | 2021-12-24 | 北京来也网络科技有限公司 | Process monitoring method, device, equipment and medium based on RPA and AI |
CN114415691A (en) * | 2022-01-28 | 2022-04-29 | 中银金融科技(苏州)有限公司 | Robot scheduling method, scheduling platform and system |
CN114675948A (en) * | 2022-02-18 | 2022-06-28 | 珠海紫讯信息科技有限公司 | DAG data model dynamic scheduling method and system |
CN114755984A (en) * | 2022-03-18 | 2022-07-15 | 达而观信息科技(上海)有限公司 | Dispatching method and system of automatic flow robot and automatic flow robot |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11243803B2 (en) * | 2019-04-30 | 2022-02-08 | Automation Anywhere, Inc. | Platform agnostic robotic process automation |
US11593709B2 (en) * | 2019-10-15 | 2023-02-28 | UiPath, Inc. | Inserting and/or replacing machine learning models in a pipeline for robotic process automation workflows |
US20220129931A1 (en) * | 2020-10-22 | 2022-04-28 | UiPath, Inc. | Quantifying usage of robotic process automation related resources |
-
2022
- 2022-08-08 CN CN202210944420.XA patent/CN115061809B/en active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10853097B1 (en) * | 2018-01-29 | 2020-12-01 | Automation Anywhere, Inc. | Robotic process automation with secure recording |
CN110427252A (en) * | 2019-06-18 | 2019-11-08 | 平安银行股份有限公司 | Method for scheduling task, device and the storage medium of task based access control dependence |
JP2021033998A (en) * | 2019-12-12 | 2021-03-01 | 株式会社Shift | Signal processing apparatus, monitoring control system, monitoring control method, monitoring control program, and manufacturing method of monitoring control system |
CN111209301A (en) * | 2019-12-29 | 2020-05-29 | 南京云帐房网络科技有限公司 | Method and system for improving operation performance based on dependency tree splitting |
CN111429083A (en) * | 2020-02-21 | 2020-07-17 | 达而观信息科技(上海)有限公司 | Web front end and system for realizing batch management of RPA robots |
KR102190459B1 (en) * | 2020-04-28 | 2020-12-11 | 농업협동조합중앙회 | User interface apparatus for sharing of rpa |
WO2021238045A1 (en) * | 2020-05-27 | 2021-12-02 | 重庆邮电大学 | Rpa-based customer requirement obtaining and querying method under large-scale customization |
CN112001594A (en) * | 2020-07-24 | 2020-11-27 | 国网冀北电力有限公司物资分公司 | Robot management system based on material contract management and management method thereof |
CN112817748A (en) * | 2021-01-20 | 2021-05-18 | 深圳魔栗科技有限公司 | Task processing method based on android virtual machine and computer equipment |
CN113157409A (en) * | 2021-03-25 | 2021-07-23 | 北京来也网络科技有限公司 | AI-based RPA task scheduling method, device, electronic equipment and storage medium |
CN113570093A (en) * | 2021-06-25 | 2021-10-29 | 北京来也网络科技有限公司 | Information reporting method, device, equipment and medium based on AI and RPA |
CN113467383A (en) * | 2021-07-06 | 2021-10-01 | 福建水口发电集团有限公司 | Task management method, device and storage medium for RPA robot |
CN113836264A (en) * | 2021-09-18 | 2021-12-24 | 北京来也网络科技有限公司 | Process monitoring method, device, equipment and medium based on RPA and AI |
CN113570347A (en) * | 2021-09-24 | 2021-10-29 | 国网江苏省电力有限公司营销服务中心 | RPA operation and maintenance method for micro-service architecture system |
CN114415691A (en) * | 2022-01-28 | 2022-04-29 | 中银金融科技(苏州)有限公司 | Robot scheduling method, scheduling platform and system |
CN114675948A (en) * | 2022-02-18 | 2022-06-28 | 珠海紫讯信息科技有限公司 | DAG data model dynamic scheduling method and system |
CN114755984A (en) * | 2022-03-18 | 2022-07-15 | 达而观信息科技(上海)有限公司 | Dispatching method and system of automatic flow robot and automatic flow robot |
Non-Patent Citations (5)
Title |
---|
Multiobjective Differential Evolution Algorithm for Solving Robotic Cell Scheduling Problem With Batch-Processing Machines;Xiuli Wu 等;《IEEE Transactions on Automation Science and Engineering 》;20210430;第18卷(第2期);第757-774页 * |
内存计算框架局部数据优先拉取策略;卞琛等;《计算机研究与发展》;20170430(第04期);全文 * |
基于RPA+AI 的数字员工在电力;刘海涛 等;《电力信息与通信技术》;20220430;第20卷(第4期);第88-92页 * |
实时控制系统中的任务模型及调度算法设计;王福军等;《石家庄经济学院学报》;20041230(第06期);全文 * |
异构多核DAG任务模型的微粒群优化调度算法;翟文正等;《计算机工程与设计》;20160731(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115061809A (en) | 2022-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115061809B (en) | Android-based RPA multi-task scheduling method and system | |
CN104298550B (en) | A kind of dynamic dispatching method towards Hadoop | |
CN110647387B (en) | Education cloud big data task scheduling method and system | |
US9043788B2 (en) | Experiment manager for manycore systems | |
US8612805B2 (en) | Processor system optimization supporting apparatus and supporting method | |
US8990783B1 (en) | Scheduling generated code based on target characteristics | |
CN110286892B (en) | Rapid development engine system based on business process design | |
CN111125444A (en) | Big data task scheduling management method, device, equipment and storage medium | |
US20130080760A1 (en) | Execution Environment with Feedback Loop | |
CN115373835A (en) | Task resource adjusting method and device for Flink cluster and electronic equipment | |
CN104778124A (en) | Automatic testing method for software application | |
CN111338791A (en) | Method, device and equipment for scheduling cluster queue resources and storage medium | |
CN102457578B (en) | A kind of distributed network monitoring method based on case mechanism | |
CN110519100A (en) | A kind of more cluster management methods, terminal and computer readable storage medium | |
CN103593192A (en) | Algorithm integration and evaluation platform and method based on SLURM scheduling | |
CN109408341A (en) | Distributed memory system method for monitoring performance, device, equipment and readable storage medium storing program for executing | |
CN106897133B (en) | Implementation method for managing cluster load based on PBS job scheduling | |
CN115686540A (en) | RPA control method and system based on Hongmong system | |
CN112052073A (en) | Script performance analysis method and device, readable storage medium and electronic equipment | |
CN114356714A (en) | Resource integration monitoring and scheduling device based on Kubernetes intelligent board card cluster | |
Doan et al. | Tuning logstash garbage collection for high throughput in a monitoring platform | |
Feitelson et al. | Experience with the parallel workloads archive | |
CN113407430A (en) | Single index parameter acquisition method and device based on application performance monitoring | |
Huckvale et al. | gpu_tracker: Python package for tracking and profiling GPU utilization in both desktop and high-performance computing environments | |
CN113672452A (en) | Method and system for monitoring operation of data acquisition task |
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 |