Task scheduling method, device and equipment for intelligent industrial remote control scene

By determining the key path of the DAG task map and the time nodes under the constraints of computing resource in the intelligent industrial remote control scenario, task scheduling is optimized, and the shortcomings of traditional methods in resource coordination and task optimization are solved, and efficient task allocation and scheduling are achieved.

CN120087716AActive Publication Date: 2025-06-03STATE GRID HUBEI ELECTRIC POWER INFORMATION & TELECOMMUNICATION COMPANY +1
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202510570470.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-06
Publication Date
2025-06-03
Estimated Expiration
2045-05-06

AI Technical Summary

Technical Problem

When traditional task scheduling methods face complex intelligent industrial remote control scenarios, it is difficult to effectively coordinate heterogeneous resources, resulting in low resource utilization and long task completion time.

Method used

By determining the key path of the DAG task map, calculate the earliest and latest start time of the task under the dual resource constraints of equipment and personnel, select the task with the smallest relaxation time for scheduling, and assign equipment and personnel to the task based on the principle of maximizing the resource time window, determine the execution order of the task.

Benefits of technology

It realizes efficient task allocation and scheduling under limited resources and complex tasks, maximize resource utilization and minimize task completion time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120087716A_ABST
    Figure CN120087716A_ABST
Patent Text Reader

Abstract

The invention discloses a task scheduling method, device and equipment for an intelligent industrial remote control scene, and the method comprises the steps: determining a key path of a DAG task graph, and selecting the DAG task graph with the longest key path for scheduling; calculating the earliest start time, the latest start time and the relaxation time of the task under the dual resource constraints of execution equipment and personnel; the task with the minimum relaxation time is selected for scheduling, and a resource time window is calculated according to the insertion positions of the tasks in the equipment task sequence and the personnel task sequence; based on a resource time window maximization principle, distributing equipment and personnel for the tasks, and determining an execution sequence of the tasks; and updating the earliest start time and the latest start time of each task in the currently scheduled and scheduled DAG task graphs in real time until all tasks are scheduled. According to the method, efficient task allocation and scheduling can be realized under the conditions of limited resources and complex tasks.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of industrial remote control task scheduling, and particularly to a task scheduling method, device and equipment for an intelligent industrial remote control scenario. Background Art

[0002] With the rapid development of industrial Internet, artificial intelligence and 5G communication technology, modern intelligent industrial remote control has gradually become an important means to promote the high-efficiency and intelligentization of the industrial system. However, in the process of remote control, the task scheduling problem becomes particularly complex and challenging due to the influence of dual resource constraints of equipment and personnel. As the core link of industrial remote control, the optimization effect of task scheduling is directly related to the system operation efficiency and resource utilization rate. Traditional task allocation methods mainly rely on fixed scheduling rules and linear programming methods. Although these methods have clear logic and low implementation cost, they are unable to cope when facing increasingly complex industrial scenarios.

[0003] In remote control tasks, it is usually necessary to coordinate two types of resources, industrial equipment and technical personnel, simultaneously. These two types of resources have significant heterogeneity in terms of capabilities, adaptability, and availability. For example, different models or performances of industrial equipment may have significant differences in efficiency when performing the same task, and the skill levels and professional backgrounds of technical personnel also directly affect the quality and efficiency of task execution. In addition, some tasks have more stringent resource requirements, not only requiring the support of specific equipment but also the cooperation of technical personnel with professional qualifications. The heterogeneity of the above resources significantly increases the complexity of the task scheduling problem.

[0004] In actual application scenarios, intelligent industrial remote control often involves distributed work points and diverse tasks. These tasks include both remote maintenance of equipment and quality inspection and dynamic adjustment of production processes. There may be dependencies between these tasks, and tasks without dependencies can be executed in parallel. The decomposition of tasks and the management of dependency relationships further increase the difficulty of scheduling. In addition, due to limited resources in the industrial field, task scheduling also needs to fully consider the availability and dynamics of equipment and personnel. For example, some key equipment may be shared by multiple tasks, and the workload and time arrangements of technical personnel also need to be reasonably planned. This complex interaction scenario of multiple tasks and multiple resources makes traditional scheduling methods expose obvious deficiencies in solving resource conflicts, optimizing resource utilization rate, and dynamically adjusting task priorities.

[0005] Traditional scheduling methods usually adopt fixed rules or optimization models based on linear programming. These methods cannot fully cope with the complexity of tasks and resources in the remote industrial control scenario. On the one hand, when solving resource conflicts, these methods usually rely on simple priority rules and it is difficult to achieve efficient allocation of heterogeneous resources. On the other hand, the priority management of tasks often adopts static setting and lacks the ability to flexibly adjust according to the responsible environment. In addition, for complex multi-task scenarios, traditional methods have limited capabilities in handling task dependencies and optimizing parallel execution, and it is difficult to meet the requirements of intelligent industries for efficient collaborative scheduling. Therefore, how to design an intelligent task scheduling method that can fully adapt to the characteristics of heterogeneous resources of devices and personnel has become an urgent problem to be solved in the current industrial remote control field. Summary of the Invention

[0006] The object of the present invention is to overcome the above-mentioned defects and problems in the prior art, and provide a task scheduling method, device and equipment for an intelligent industrial remote control scenario. The method can achieve efficient task allocation and scheduling in the case of limited resources and complex tasks.

[0007] To achieve the above object, the technical solution of the present invention is: a task scheduling method for an intelligent industrial remote control scenario, including:

[0008] Determine the critical path of the DAG task graph, and select the DAG task graph with the longest critical path for scheduling; calculate the earliest start time, the latest start time and the slack time of the task under the dual resource constraints of the execution device and personnel;

[0009] Select the task with the smallest slack time for scheduling, and calculate the resource time window according to the insertion positions of the task in the device task sequence and the personnel task sequence;

[0010] Based on the principle of maximizing the resource time window, allocate devices and personnel to the task, and determine the execution order of the task;

[0011] Real-time update the earliest start time and the latest start time of each task in the currently scheduled and already scheduled DAG task graphs until all tasks are scheduled.

[0012] The earliest start time is:

[0013] ;

[0014] In the formula, is the earliest start time of task ; is the earliest start time restricted by the predecessor dependent task of task ; is task The earliest start time of the execution order limit on its assigned device; For the task The earliest start time of the execution order limit of the task assigned to the person;

[0015] ;

[0016] Wherein, For the task The set of predecessor dependent tasks;

[0017] If the task Has no predecessor dependent tasks, then ; If the predecessor dependent task Has not been decided for scheduling, then:

[0018] ;

[0019] Wherein, Is the actual execution time of the predecessor dependent task ; Is the number of devices adapted to the predecessor dependent task ; Is the number of persons adapted to the predecessor dependent task ; Is the time taken when the predecessor dependent task Is executed by the device No. And the person No. ; Is the set of persons adapted to the predecessor dependent task ; Is the set of devices adapted to the predecessor dependent task ;

[0020] ; ;

[0021] Wherein, Is the set of previous order tasks of the task On the assigned device; Is the previous order task of the task On the assigned device; Is the actual execution time of the task ;

[0022] If the task Has not been scheduled yet, or is the first order task on the assigned device, then ;

[0023] ; ;

[0024] In the formula, is the task previous sequential task set on the assigned personnel;

[0025] If the task has not been scheduled yet, or it is the first sequential task on the assigned personnel, then .

[0026] The latest start time is:

[0027] ;

[0028] In the formula, is the latest start time of the task ; is the latest start time of the task restricted by its subsequent dependent tasks; is the latest start time of the task restricted by the execution sequence on the assigned device; is the latest start time of the task restricted by the execution sequence on the assigned personnel;

[0029] ;

[0030] In the formula, is the subsequent dependent task set of the task ;

[0031] If the task has no subsequent dependent tasks, then ; if the task has not been scheduled yet, then:

[0032] ;

[0033] In the formula, is the actual execution time of the task ; is the set of personnel adapted to the task ; is the set of devices adapted to the task ; is the time taken when the task is executed by the th device and th personnel; is the number of devices adapted to the task ; is the number of personnel adapted to the task ;

[0034] ; ;

[0035] In the formula, is the task in the set of subsequent sequential tasks on the assigned device;

[0036] If the task has not been scheduled yet, or is the last task on the assigned device, then ;

[0037] ; ;

[0038] In the formula, is the task in the set of subsequent sequential tasks on the assigned personnel;

[0039] If the task has not been scheduled yet, or is the last task on the assigned personnel, then .

[0040] The slack time is:

[0041] ;

[0042] In the formula, is the slack time of the task ; is the latest start time of the task ; is the earliest start time of the task .

[0043] Inserting a task into the task sequence of a device includes:

[0044] The task sequence of the device is:

[0045] ;

[0046] In the formula, is the th task that has been scheduled to the device ; is the number of tasks that have been arranged for the device currently;

[0047] After selecting the device , the candidate insertion area of the task in the task sequence of the device is:

[0048] ;

[0049] In the formula, It represents a virtual start task, indicating the device There is a task with a start time of 0 and an execution time of 0; It represents a virtual end task, indicating the device There is a task with a start time of positive infinity and an execution time of 0;

[0050] If the task is inserted into then the task sequence of the device is updated to:

[0051] ;

[0052] The task needs to meet the following conditions when inserted into the task sequence of the device :

[0053] When in the task sequence of the device there shall be no task that can be started only after it is completed; in the task sequence of the device there shall be no task that must be completed before it can be executed;

[0054] When if the task is inserted into the starting position of the sequence of the device then there is no task that must be completed before it can be executed; if the task is inserted into the ending position of the sequence of the device then there is no task that can be started only after it is completed.

[0055] The resource time window is:

[0056] ;

[0057] In the formula, is the resource time window between inserting the task into the device task sequence and and between inserting the personnel task sequence and ; is the task in the task And the task The earliest start time when executed later; For the task During the task And the task The latest start time when executed before; Is the th task scheduled to the device ; Is the th task of the currently scheduled device ; Is the th task scheduled to the person ; Is the th task of the currently scheduled person ; For the task Executed by the th device and the th person, the time taken;

[0058] The said Is:

[0059] ;

[0060] In the formula, Is the earliest start time of the task ; Is the earliest start time of the task ; Is the actual running time of the task sequence ; Is the earliest start time of the task ; Is the actual running time of the task sequence ;

[0061] When , then ;

[0062] When , then ;

[0063] The said Is:

[0064] ;

[0065] In the formula, Is the latest start time of the task ; Is the latest start time of the task ; For the task the actual execution time; For the task the latest start time;

[0066] If , then ;

[0067] If , then ;

[0068] In the formula, is the number of tasks currently scheduled for the device ; is the number of tasks currently scheduled for the personnel .

[0069] The longest critical path is:

[0070] ;

[0071] ;

[0072] In the formula, is the number of DAG task graphs in the current scheduling scenario; is the critical path of the th DAG task graph; is the earliest start time of the task ; is the actual execution time of the task ; is the th task set in the DAG task graph.

[0073] The currently scheduled DAG task graph and the already scheduled DAG task graph are connected through a virtual end task, and the earliest start time and the latest start time of each task in the currently scheduled DAG task graph are recalculated.

[0074] A task scheduling device for an intelligent industrial remote control scenario, the device is applied to the method described above, and the device includes:

[0075] A first calculation module, configured to determine the critical path of the DAG task graph, and select the DAG task graph with the longest critical path for scheduling; calculate the earliest start time, the latest start time, and the slack time of the task under the dual resource constraints of the execution device and the personnel;

[0076] A second calculation module, configured to select the task with the smallest slack time for scheduling, and calculate the resource time window according to the insertion positions of the task in the device task sequence and the personnel task sequence;

[0077] A task scheduling module, which is used to allocate devices and personnel for tasks based on the principle of maximizing the resource time window, and determine the execution order of tasks; and to update in real time the earliest start time and the latest start time of each task in the DAG task graph that is currently being scheduled and has been scheduled until all tasks are scheduled.

[0078] A task scheduling device for an intelligent industrial remote control scenario, including a memory and a processor;

[0079] The memory is used to store computer program code and transmit the computer program code to the processor;

[0080] The processor is used to execute the above-mentioned method according to the instructions in the computer program code.

[0081] Compared with the prior art, the beneficial effects of the present invention are:

[0082] In the task scheduling method, device and equipment for an intelligent industrial remote control scenario of the present invention, the method calculates the earliest and latest start times of tasks based on a DAG graph, determines the critical path and preferentially schedules tasks on the longest critical path; introduces the concept of the resource time window of devices and personnel, dynamically calculates the insertable positions of tasks to be scheduled according to the task execution order and resource time window of the current resources, and preferentially allocates the resource combination with the largest resource time window; optimizes the task scheduling order by updating the global critical path in real time, and finally realizes a globally optimal scheduling scheme. The present invention can achieve efficient task allocation and scheduling in the case of limited resources and complex tasks. Description of the Drawings

[0083] Figure 1 is a flowchart of a task scheduling method for an intelligent industrial remote control scenario of the present invention.

[0084] Figure 2 is a schematic diagram of dual-resource constraint scheduling in an intelligent industrial remote control scenario in an embodiment of the present invention.

[0085] Figure 3 is a structural block diagram of a task scheduling device for an intelligent industrial remote control scenario of the present invention.

[0086] Figure 4 is a structural block diagram of a task scheduling device for an intelligent industrial remote control scenario of the present invention. Detailed Embodiment

[0087] The present invention will be further described in detail below in conjunction with the description of the drawings and the detailed embodiment.

[0088] The core task of an intelligent industrial control system is to coordinate distributed resources and tasks to complete diverse operation processes. For example, in scenarios such as remote device maintenance, production line adjustment, or industrial equipment inspection, the execution of tasks requires the simultaneous occupation of two types of resources: one is industrial equipment resources (such as detection equipment, robots, production instruments, etc.), and the other is technical personnel resources (such as operators, engineers, or experts). The execution of tasks needs to take into account the heterogeneity and adaptability of equipment and personnel, and there are differences in the resource requirements for different tasks. The scheduling goal of tasks is to maximize resource utilization and minimize the overall task completion time.

[0089] Specifically, as Figure 2 shown, intelligent industrial control scenarios usually include multiple distributed on-site work points. Each work point is equipped with a limited number of industrial equipment and sufficient technical personnel, and at the same time faces a large number of tasks to be executed. These tasks can form multiple DAG task graphs. There may be strict priority relationships among the tasks in the same DAG task graph. For example, a task may depend on the completion of other tasks to start, but the tasks in different DAG task graphs are often independent. The completion process of tasks requires the collaboration of dual resources. For example, the execution of a task requires a certain piece of equipment, but the operation of this equipment must be carried out by personnel with matching skills.

[0090] The system uploads the task execution data of each on-site point to the central scheduling system through real-time monitoring technology. The central scheduling system performs optimized scheduling based on task dependencies and resource status. The scheduling process needs to solve the following problems simultaneously:

[0091] 1) Allocate suitable equipment and personnel resources for each task to ensure that the resources meet the requirements of task execution.

[0092] 2) Reasonably arrange the execution order of tasks according to task dependencies.

[0093] 3) Ensure that each type of resource can only execute one task at any time point to avoid resource conflicts.

[0094] 4) Minimize the total completion time of all tasks on the basis of meeting the above constraints.

[0095] The present invention provides a task scheduling algorithm based on a DAG task graph, which comprehensively analyzes the attributes and resource adaptability of tasks through a central scheduling system to achieve efficient task scheduling. During the implementation of the present invention, the central scheduling system first collects all DAG task graphs and related attribute information of tasks within the system. These information include the dependency relationships between tasks, the resource requirements of tasks, the types of personnel and equipment to which they are adapted, and basic attributes such as the time spent by different personnel and equipment in executing the task. Through the comprehensive collection of this information, the central scheduling system can accurately grasp the heterogeneity and adaptability of task resource requirements, laying a data foundation for subsequent scheduling optimization.

[0096] See Figure 1 , the present invention provides a task scheduling method for an intelligent industrial remote control scenario, including:

[0097] S1. Determine the critical path of the DAG task graph, and select the DAG task graph with the longest critical path for scheduling; calculate the earliest start time, the latest start time, and the slack time of the task under the dual resource constraints of the execution device and personnel;

[0098] S2. Select the task with the smallest slack time for scheduling, and calculate the resource time window according to the insertion positions of the task in the device task sequence and the personnel task sequence;

[0099] S3. Based on the principle of maximizing the resource time window, allocate devices and personnel to the task, and determine the execution order of the task;

[0100] Real-time update the earliest start time and the latest start time of each task in the DAG task graph that is currently being scheduled and has been scheduled until all tasks are scheduled.

[0101] At the beginning stage of scheduling, the central scheduling system calculates the earliest start time (EST, Earliest Start Time), the latest start time (LST, Latest Start Time), and the slack time (ST, Slack Time) metrics of each task respectively according to the calculation method designed by the present invention. At the same time, based on the topological structure of the DAG task graph, the critical path of the DAG task graph is determined. By calculating the critical path, the present invention can identify the critical tasks in the task graph that have the greatest impact on the overall time consumption.

[0102] The task execution time is jointly determined by the baseline workload, the executing personnel, and the executing equipment. When the same task is executed by different combinations of personnel and equipment, its actual execution time varies. For the earliest start time of a task in dual-resource-constrained scheduling, the earliest start time restricted by the task's precedence dependency relationship needs to be considered (a precedence-dependent task means that the preceding task must be completed before this task can start), the earliest start time restricted by the execution order on the allocated equipment, and the earliest start time restricted by the task execution order of the allocated personnel. The latest start time needs to consider the latest start time restricted by the task's subsequent dependency relationship, the latest start time restricted by the execution order on the allocated equipment, and the latest start time restricted by the execution order on the allocated personnel.

[0103] For the scheduling of a specific DAG task graph, the present invention adopts the strategy of preferentially scheduling the task with the smallest slack time (ST). Tasks with smaller slack times usually have greater constraints on the overall completion time of the system. Preferentially scheduling these tasks can effectively reduce time conflicts during the scheduling process. When scheduling each task, the central scheduling system evaluates the size of the resource time window of this task on all compatible equipment and personnel according to the resource time window calculation method of the present invention. The resource time window reflects the length of the time period during which a certain combination of equipment and personnel can be used to execute this task. The present invention determines the task execution order and resource allocation plan by selecting the combination of equipment and personnel with the largest resource time window.

[0104] Whenever the scheduling of a task is completed, the central scheduling system will dynamically update the earliest start time (EST) and the latest start time (LST) of each task in the currently being scheduled and already scheduled DAG task graph.

[0105] The above process will continue to loop until all tasks have completed the allocation of equipment and personnel and the execution order of each task on the equipment and personnel has been determined. After the entire scheduling is completed, the central scheduling system will recalculate the earliest start time of each task according to the final scheduling result. Among them, the earliest start time obtained in the last calculation will be determined as the actual execution time of each task to guide the final execution of the task.

[0106] Furthermore, the earliest start time is:

[0107] ;

[0108] In the formula, is the earliest start time of task ; is the earliest start time restricted by the precedence-dependent task of task A precedence-dependent task means that the preceding task must be completed before this task can start, ensuring that the task can only be started after all preceding tasks are completed; For a task The earliest start time with respect to the execution order limit on its assigned device, i.e., the start time of the task must be later than the completion time of the previous task on this device; For a task The earliest start time with respect to the task execution order limit of its assigned personnel, indicating that the task can only be executed after the person has completed their previous assigned task;

[0109] ;

[0110] In the formula, For a task The set of predecessor dependent tasks;

[0111] If the task has no predecessor dependent tasks (i.e., is an empty set), then ; If the predecessor dependent task has not yet been scheduled, then:

[0112] ;

[0113] In the formula, Is the actual execution time of the predecessor dependent task ; Is the number of devices adapted to the predecessor dependent task ; Is the number of personnel adapted to the predecessor dependent task ; Is the time taken when the predecessor dependent task is executed by the th device and th personnel; Is the set of personnel adapted to the predecessor dependent task ; Is the set of devices adapted to the predecessor dependent task ; Adaptation means that the personnel or device can handle this task;

[0114] ; ;

[0115] In the formula, For a task The set of previous order tasks on the assigned device, which has at most one element; Is the previous order task of the task on the assigned device; For a task Is the actual execution time;

[0116] If the task has not been scheduled yet, or is the first-order task on the assigned device (i.e., is an empty set), then ;

[0117] ; ;

[0118] wherein, is the set of previous-order tasks of task on the assigned personnel, and has at most one element;

[0119] If the task has not been scheduled yet, or is the first-order task on the assigned personnel (i.e., is an empty set), then .

[0120] Furthermore, the latest start time is:

[0121] ;

[0122] wherein, is the latest start time of task ; is the latest start time of task restricted by its subsequent dependent tasks, and the subsequent dependent tasks refer to the post-tasks that can be executed only after this task ends; is the latest start time of task restricted by the execution order on the assigned device, that is, the completion time of this task shall not be later than the latest start time of the next assigned task of this device; is the latest start time of task restricted by the execution order on the assigned personnel, that is, the completion time of this task shall not be later than the latest start time of the next assigned task of this personnel;

[0123] ;

[0124] wherein, is the set of subsequent dependent tasks of task ;

[0125] If the task has no subsequent dependent tasks (i.e., is an empty set), then ; if the task has not been scheduled yet, then:

[0126] ;

[0127] wherein, is the actual execution time of the task; is the set of personnel suitable for the task; is the set of devices suitable for the task; is the time spent when the task is executed by device No. is the number of devices suitable for the task; is the number of personnel suitable for the task; ; ; No., personnel No. In the formula, is the set of subsequent sequential tasks of task on the assigned device, and has at most one element;

[0128] ; ;

[0129] If the task has not been scheduled yet, or is the last task on the assigned device (i.e., is an empty set), then ;

[0130] ; ; ; ;

[0131] ; ;

[0132] In the formula, is the set of subsequent sequential tasks of task on the assigned personnel, and has at most one element;

[0133] If the task has not been scheduled yet, or is the last task on the assigned personnel (i.e., is an empty set), then .

[0134] Furthermore, the slack time is:

[0135] ;

[0136] In the formula, is the slack time of task ; is the latest start time of task ; is the earliest start time of task .

[0137] Further, it is necessary to insert the scheduling task into the task sequences of the devices and personnel that meet the constraint conditions, and update the task execution order of the devices and personnel.

[0138] Each device maintains a task sequence, representing the execution order of its scheduling tasks, that is, the task sequence of the device is:

[0139] ;

[0140] wherein, is the th task scheduled to the device ; is the number of tasks currently arranged for the device

[0141] Each person also maintains a task sequence, representing the execution order of its scheduling tasks, that is, the task sequence of the person is:

[0142] ;

[0143] wherein, is the th task scheduled to the person ; is the number of tasks currently arranged for the person

[0144] After selecting the device , the candidate insertion position area of the task in the task sequence of the device is:

[0145] ;

[0146] wherein, is the virtual start task, indicating that there is a task with a start time of 0 and an execution time of 0 for the device , which is convenient for representing the position before the task ; is the virtual end task, indicating that there is a task with a start time of positive infinity and an execution time of 0 for the device , which is convenient for representing the position after the task ;

[0147] If the task is inserted into , then the task sequence of the device is updated to:

[0148] ;

[0149] To ensure the correctness of task dependencies, when a task is inserted into the task sequence of a device , the following conditions need to be met:

[0150] When , in the task sequence of the device , there shall be no task that can only be started after it is completed; in the task sequence of the device , there shall be no task that must be completed before it is executed;

[0151] When , if the task is inserted at the start position of the sequence of the device , then there is no task that must be completed before it is executed; if the task is inserted at the end position of the sequence of the device , then there is no task that can only be started after it is completed.

[0152] The adjustment rules for task assignment to personnel and their task sequences are the same as those for device task assignment and will not be elaborated here.

[0153] Furthermore, the resource time window is as follows:

[0154] ;

[0155] wherein, is the resource time window between inserting the task into the device task sequence and , and between inserting it into the personnel task sequence and ; is the earliest start time when the task is executed after the task and the task ; is the latest start time when the task is executed before the task and the task ; is the th task that has been scheduled to the device ; For the currently scheduled device 's th task; For the currently scheduled personnel 's th task; For the currently scheduled personnel 's th task; For task The time taken when executed by device No. and personnel No. ;

[0156] The said is:

[0157] ;

[0158] In the formula, For the earliest start time of task ; For the earliest start time of task ; For the actual running time of task sequence ; For the earliest start time of task ; For the actual running time of task sequence ;

[0159] When , then ;

[0160] When , then ;

[0161] The said is:

[0162] ;

[0163] In the formula, For the latest start time of task ; For the latest start time of task ; For the actual execution time of task ; For the latest start time of task ;

[0164] If , then ;

[0165] If , then ;

[0166] In the formula, is the number of tasks currently scheduled for the device ; is the number of tasks currently scheduled for the personnel ;

[0167] Furthermore, the longest critical path is:

[0168] ;

[0169] ;

[0170] In the formula, is the number of DAG task graphs in the current scheduling scenario; is the critical path of the th DAG task graph; is the th number task in the th DAG task graph 's earliest start time; is the actual execution time of task ;

[0171] Furthermore, the currently scheduled DAG task graph and the already scheduled DAG task graphs are connected by a virtual end task, and the earliest start time and the latest start time of each task in the currently scheduled DAG task graph are recalculated to determine the priority order and the global optimal solution of task scheduling.

[0172] During the scheduling execution process, the central scheduling system preferentially selects the DAG task graph with the largest critical path index for scheduling. To maintain the overall coordination between different DAG task graphs, each time a new DAG task graph is scheduled, the central scheduling system connects this task graph with the already scheduled DAG task graphs through a virtual end task. The introduction of the virtual end task realizes the logical integration between DAG task graphs and recalculates the earliest start time (EST) and the latest start time (LST) of each task in the current DAG task graph through dynamic adjustment.

[0173] The present invention aims to solve the scheduling complexity problem caused by tasks simultaneously occupying device and personnel resources, and designs an uncertain start time scheduling method applicable to multi-DAG task graphs. By updating the execution order of tasks and resource allocation in real time, the global task scheduling scheme is dynamically optimized to maximize resource utilization and minimize task completion time. Specifically, when the algorithm assigns tasks each time, it comprehensively evaluates the impact of metering devices and personnel on the overall project duration, and adopts a dynamic adjustment strategy to optimize the execution order of tasks. During the assignment process, it does not determine the start execution time of tasks, but only determines the devices and personnel to which tasks are assigned and the execution order on the devices and personnel. After all tasks are scheduled, the global optimized device and personnel scheduling sequence and the specific execution time of each task are formed, thereby minimizing the overall project duration of the system and optimizing resource utilization.

[0174] See Figure 3 , the present invention also provides a task scheduling device for an intelligent industrial remote control scenario. The device is applied to the above-mentioned task scheduling method for an intelligent industrial remote control scenario. The device includes:

[0175] The first calculation module is used to determine the critical path of the DAG task graph, and select the DAG task graph with the longest critical path for scheduling; calculate the earliest start time, the latest start time, and the slack time of tasks under the dual resource constraints of execution devices and personnel;

[0176] The second calculation module is used to select the task with the smallest slack time for scheduling, and calculate the resource time window according to the insertion positions of the task in the device task sequence and the personnel task sequence;

[0177] The task scheduling module is used to allocate devices and personnel to tasks based on the principle of maximizing the resource time window, and determine the execution order of tasks; update the earliest start time and the latest start time of each task in the currently scheduled and already scheduled DAG task graphs in real time until all tasks are scheduled.

[0178] See Figure 4 , the present invention also provides a task scheduling device for an intelligent industrial remote control scenario, including a memory and a processor;

[0179] The memory is used to store computer program code and transmit the computer program code to the processor;

[0180] The processor is used to execute the above-mentioned task scheduling method for an intelligent industrial remote control scenario according to the instructions in the computer program code.

[0181] The present invention also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the task scheduling method for an intelligent industrial remote control scenario described above is implemented.

[0182] Generally speaking, the computer instructions for implementing the method of the present invention can be carried by any combination of one or more computer-readable storage media. The non-transitory computer-readable storage medium can include any computer-readable medium, except for the signal itself in transient propagation.

[0183] The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples (non-exhaustive list) of the computer-readable storage medium include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, the computer-readable storage medium can be any tangible medium that contains or stores a program, and the program can be used by or in combination with an instruction execution system, apparatus, or device.

[0184] The computer program code for executing the operations of the present invention can be written in one or more programming languages or combinations thereof. The programming languages include object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. In particular, the Python language suitable for neural network computing and platform frameworks based on TensorFlow, PyTorch, etc. can be used. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or connected to an external computer (for example, by using an Internet service provider to connect through the Internet).

[0185] For the above-mentioned device and non-transitory computer-readable storage medium, reference can be made to the specific description of a task scheduling method for an intelligent industrial remote control scenario and its beneficial effects, which will not be elaborated here.

[0186] Although the embodiments of the present invention have been shown and described above, it should be understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those of ordinary skill in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present invention.

Claims

1. A task scheduling method for intelligent industrial remote control scenarios, characterized in that: include: Determine the critical path of the DAG task graph and select the DAG task graph with the longest critical path for scheduling; Calculate the earliest start time, latest start time and slack time of the task under the dual resource constraints of execution equipment and personnel; Select the task with the smallest slack time for scheduling, and calculate the resource time window according to the insertion position of the task in the equipment task sequence and the personnel task sequence; Based on the principle of maximizing resource time windows, equipment and personnel are allocated to tasks, and the execution order of tasks is determined; Update the earliest start time and latest start time of each task in the DAG task graph that is currently being scheduled and has been scheduled in real time until all tasks have been scheduled.

2. According to claim 1, a task scheduling method for intelligent industrial remote control scenarios is characterized in that: The earliest start time stated is: ; In the formula, For the task The earliest start time; For the task The earliest start time constrained by the predecessor dependent task; For the task The earliest start time of the execution order constraint on its assigned device; For the task The earliest start time constrained by the order in which the tasks to which the personnel are assigned are executed; ; In the formula, For the task The set of pre-dependent tasks; If the task If there is no previous dependent task, ; If the previous dependent task If the scheduling has not yet been decided, then: ; In the formula, For the predecessor dependent task The actual execution time of For the predecessor dependent task The number of compatible devices; For the predecessor dependent task Number of adapted personnel; For the predecessor dependent task By Equipment No. The time it takes for the personnel to perform the task; For the predecessor dependent task Suitable personnel collection; For the predecessor dependent task Adapted device set; ; ; In the formula, For the task the set of previous sequential tasks on the assigned equipment; For the task The previous sequential task on the assigned equipment; For the task The actual execution time of If the task has not yet been scheduled, or is the first sequential task on the assigned device, then ; ; ; In the formula, For the task The set of previous sequential tasks on the assigned personnel; If the task Has not been scheduled yet, or is the first order task on the assigned personnel, then .

3. The task scheduling method for intelligent industrial remote control scenarios according to claim 2 is characterized in that: The latest start time is: ; In the formula, For the task The latest start time of For the task The latest start time constrained by its subsequent dependent tasks; For the task The latest start time constrained by the execution order on its assigned device; For the task The latest start time subject to the execution order on its assigned personnel; ; In the formula, For the task The set of subsequent dependent tasks; If the task If there is no subsequent dependent task, then If the task If it has not been scheduled yet: ; In the formula, For the task The actual execution time of For the task Suitable personnel collection; For the task Adapted device set; For the task By Equipment No. The time it takes for the personnel to perform the task; For the task The number of compatible devices; For the task Number of adapted personnel; ; ; In the formula, For the task A subsequent set of sequential tasks on the assigned equipment; If the task has not been scheduled yet, or is the last task on the assigned device, then ; ; ; In the formula, For the task The set of subsequent sequential tasks on the assigned personnel; If the task has not been scheduled yet, or is the last task on the assigned person, then .

4. The task scheduling method for intelligent industrial remote control scenarios according to claim 3 is characterized in that: The relaxation time is: ; In the formula, For the task relaxation time; For the task The latest start time of For the task The earliest start time.

5. The task scheduling method for intelligent industrial remote control scenarios according to claim 1 is characterized in that: Insert tasks into the device's task sequence, including: The task sequence for the device is: ; In the formula, Currently scheduled to the device No. tasks; For equipment The number of tasks currently scheduled; When selecting a device After that, the task On the device The candidate regions for insertion positions in the task sequence are: ; In the formula, It is a virtual start task, indicating the device There is a task with a start time of 0 and an execution time of 0; This is a virtual end task, indicating that the device There exists a task with a start time of positive infinity and an execution time of 0; If the task insert arrive Between, the device The task sequence is updated to: ; Task Insert into device The following conditions must be met when the task sequence is: when When the device Task Sequence There must be no tasks in Tasks that can be started after completion; on the device Task Sequence There must be no tasks in Tasks that must be completed before execution; when If the task Insert into device The starting position of the sequence ,but There is no task in The tasks that must be completed before execution; if the task Insert into device The end position of the sequence ,but There is no task in The task can be started only after it is completed.

6. The task scheduling method for intelligent industrial remote control scenarios according to claim 5 is characterized in that: The resource time window is: ; In the formula, For the task Insert a device task sequence and Between, inserting personnel task sequence and Resource time windows between; For the task On Task and tasks The earliest start time for subsequent executions; For the task On Task and tasks The latest start time of the previous execution; Currently scheduled to the device No. tasks; For currently scheduled equipment No. tasks; For the current dispatch personnel No. tasks; For the current dispatch personnel No. tasks; For the task By Equipment No. The time it takes for the personnel to perform the task; Said for: ; In the formula, For the task The earliest start time; For the task The earliest start time; For task sequence The actual running time; For the task The earliest start time; For task sequence The actual running time; when When ; when When ; Said for: ; In the formula, For the task The latest start time of For the task The latest start time of For the task The actual execution time of For the task The latest start time of like ,but ; like ,but ; In the formula, For equipment The number of tasks currently scheduled; For personnel The number of tasks currently scheduled.

7. The task scheduling method for intelligent industrial remote control scenarios according to claim 1 is characterized in that: Longest critical path for: ; ; In the formula, The number of DAG task graphs in the current scheduling scenario; For the The critical path of a DAG task graph; For the task The earliest start time; For the task The actual execution time of For the A collection of tasks in a DAG task graph.

8. The task scheduling method for intelligent industrial remote control scenarios according to claim 1 is characterized in that: The DAG task graph currently being scheduled is connected to the DAG task graph that has completed scheduling through a virtual end task, and the earliest start time and the latest start time of each task in the DAG task graph currently being scheduled are recalculated.

9. A task scheduling device for intelligent industrial remote control scenarios, characterized in that: The device is applied to the method described in any one of claims 1 to 8, and the device comprises: The first calculation module is used to determine the critical path of the DAG task graph and select the DAG task graph with the longest critical path for scheduling; calculate the earliest start time, the latest start time and the slack time of the task under the dual resource constraints of the execution equipment and personnel; The second calculation module is used to select the task with the smallest slack time for scheduling, and calculate the resource time window according to the insertion position of the task in the equipment task sequence and the personnel task sequence; The task scheduling module is used to allocate equipment and personnel to tasks and determine the execution order of tasks based on the principle of maximizing resource time windows; it updates the earliest start time and the latest start time of each task in the DAG task graph that is currently being scheduled and has been scheduled in real time until all tasks are scheduled.

10. A task scheduling device for intelligent industrial remote control scenarios, characterized in that: including memory and processor; The memory is used to store computer program code and transmit the computer program code to the processor; The processor is configured to execute the method according to any one of claims 1 to 8 according to instructions in the computer program code.

Citation Information

Patent Citations

  • Dependent task scheduling method of heterogeneous multi-core processor

    CN103473134A

  • Task scheduling method and device, computer equipment and storage medium

    CN112631751A

  • Task scheduling method and device, equipment and storage medium

    CN116932154A

  • Task scheduling method and device, electronic equipment, storage medium and product

    CN119201410A

  • A multi-project scheduling optimization algorithm and system based on resource constraints

    CN119784035A