A robot dynamic task management method
By combining multiple factors with multiple factors to dynamically calculate task allocation priorities and merge similar tasks, the problem of unreasonable task allocation in multi-robot task management is solved, efficient, orderly and reasonable execution of tasks is achieved, and the overall performance of the system and robot load utilization rate are improved.
Patent Information
- Application Number
- CN202510764798.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-10
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2045-06-10
AI Technical Summary
The existing technology fails to effectively consider factors such as task waiting time, robot position and movement speed in multi-robot task management, resulting in unreasonable task delays and task allocation, making it difficult to meet the needs of efficiency, real-time and rationality.
Through the scheduling management system, the task allocation priority is dynamically calculated based on the current position and movement speed of the candidate robot, and the task allocation is calculated based on factors such as the candidate robot, optimization of task allocation, merge similar tasks to generate batch task groups, set a stripping mechanism and along-way task allocation to ensure the orderly execution of the task.
It improves the efficiency and rationality of task allocation, reduces task completion time, improves the system's execution efficiency and reliability in complex environments, enhances the ability to respond to emergencies, and optimizes the robot's load utilization rate.
Smart Images

Figure CN120278495B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of robot task management, and in particular to a robot dynamic task management method. Background Art
[0002] Mobile robots rely on autonomous navigation algorithms to plan their own paths and execute tasks autonomously. When multiple robots are performing multiple tasks, unified management and allocation of all tasks is necessary. Existing technologies and patents in the field of multi-robot task management have numerous limitations. For one thing, some systems allocate tasks based solely on fixed priorities, ignoring factors such as task waiting time. This can cause urgent tasks to miss their optimal execution opportunities due to prolonged waiting times. Furthermore, some methods fail to fully consider key factors such as the robots' actual location and movement speed when allocating tasks, potentially resulting in tasks being assigned to robots farther away, thus extending the task execution cycle. Furthermore, when robots already have tasks, most existing technologies lack effective mechanisms to comprehensively consider the addition of new tasks and the adjustment of the execution order of existing tasks, making it difficult to achieve orderly task execution. Furthermore, there is no effective dynamic allocation mechanism for similar orders or on-the-go orders. While existing patents have proposed some improvements, most focus on optimizing a single factor and lack a comprehensive dynamic management process. This makes it difficult to address complex and changing robot task scenarios and fails to meet the comprehensive requirements for efficient, timely, and reasonable task allocation.
[0003] Therefore, it is necessary to develop a robot dynamic task management method to solve the above defects. Summary of the Invention
[0004] In response to the technical problems existing in the above-mentioned prior art, the purpose of this application is to provide a mobile robot navigation method and system based on deep learning.
[0005] To achieve the purpose of the present invention, the present invention proposes a technical solution for a dynamic task management method for robots. The method manages the task allocation among multiple robots through a scheduling management system. After the robots obtain the tasks, they execute them autonomously. The specific steps are as follows:
[0006] S1: The task manager of the scheduling management system receives the task and places it in the task pool waiting for allocation;
[0007] S2: The task manager dynamically calculates the task allocation priority by combining at least the maximum waiting time, the waiting time, the initial task priority, and the subsidy coefficient of each task;
[0008] S3: Screen candidate robots that can perform tasks, calculate the time cost based on at least the current position, maximum movement speed, and task destination of the candidate robots, and calculate the movement cost of the candidate robots to perform the task with the highest priority based on the starting cost, movement coefficient, and time cost;
[0009] S4: Assign the task with the highest priority to the robot with the lowest movement cost;
[0010] S5: The task manager sets the assigned tasks in the task pool to be running, updates the waiting time of the unassigned tasks to be run, and continues to dynamically calculate the allocation priority in the task pool. Tasks are assigned according to the above steps S2, S3, and S4 until there are no tasks or no robots that can perform the tasks.
[0011] S6: After a robot with an existing task obtains a new task, it calculates the execution priority of the task based on the initial task priority and the compensation coefficient, and reorders the task according to the execution priority;
[0012] S7: The robot executes tasks according to the reordered task queue;
[0013] The subsidy coefficient is the subsidy cost coefficient of the waiting time of the task to be run, the starting cost is the cost of the idle robot starting to execute the task from idle, the movement coefficient is the time cost coefficient spent by the robot to execute the task, and the compensation coefficient is the compensation cost coefficient for the delayed execution of the original task when a robot with an existing task obtains a new task.
[0014] Furthermore, before generating a task, task parameters and robot parameters are preset, wherein the task parameters include at least the initial task priority, maximum waiting time, and subsidy coefficient of each task, and the robot parameters include at least the maximum load, maximum moving speed, starting cost, compensation coefficient, and moving coefficient, and are set to be adjustable.
[0015] Furthermore, before assigning tasks, the scheduling management system collects all robot information, including at least the robot's status, current position, remaining power, maximum load, remaining load, existing task running status, running map, and running path.
[0016] Preferably, S2a: the task manager can be configured to merge similar tasks, specifically including: clustering the tasks to be run in the task pool, such as clustering the subtasks within the starting point clustering radius and the end point clustering radius, combining the current maximum remaining load of the robot to generate a batch task group, and calculating the allocation priority of the task group based on the minimum value of the longest waiting time among the subtasks in the task group, the maximum value of the waiting time, the highest priority of the initial task priority, and the subsidy coefficient, and assigning the task group with the highest allocation priority to the robot with the lowest moving cost.
[0017] Preferably, S2b: dynamically calculate the urgency of the subtasks in the task group to be run, where the urgency = waiting time / maximum waiting time, and set the urgency threshold of the stripping mechanism. When the urgency is greater than or equal to the threshold, the stripping mechanism is triggered, and the task manager strips the subtask from the task group and forcibly assigns it to the robot with the lowest movement cost for priority execution.
[0018] Preferably, S3a: for the task allocation of transportation between different floors, the elevator time cost is calculated by at least combining the robot's current floor, the floor where the task destination is located, the elevator interaction time, the elevator speed, the robot's current position, the maximum moving speed, and the task destination; and the starting cost, the moving coefficient, and the time cost are combined to calculate the elevator movement cost of the candidate robot to perform the task with the highest assigned priority.
[0019] Preferably, S3b: the scheduling management system marks the congested nodes according to the traffic conditions in the operating area, calculates the traffic time cost based on at least the current position, maximum moving speed, task destination, and number of congested nodes of the robot, and calculates the traffic movement cost of the candidate robot to perform the task with the highest assigned priority in combination with the starting cost, moving coefficient, and time cost.
[0020] Preferably, S4a: when there are two or more candidate robots with the same comprehensive score, tasks are allocated in combination with other robot parameters such as remaining power and cumulative number of completed tasks.
[0021] Preferably, S4b: The task manager can be set to assign a along-the-way task to the robot after it obtains the task with the highest assigned priority, specifically including: judging whether the current robot is fully loaded, if it is fully loaded, not calculating the along-the-way task, if it is not fully loaded, calculating the path for the robot to execute the currently assigned task with the highest assigned priority, calculating the distance difference between the destination point of the task to be run and the current task path, judging whether the along-the-way condition is met, and if there is an along-the-way task, assigning the along-the-way task to the robot, and after the robot obtains the along-the-way task, it is bound to the aforementioned task with the highest assigned priority for execution.
[0022] Compared with the prior art, the present invention utilizes the above-mentioned robot dynamic task management method, which has the following main advantages or beneficial effects:
[0023] (1) Optimize task allocation priority: Taking into account the longest waiting time, waiting time, initial priority and subsidy coefficient of the task, dynamically calculate the task allocation priority to ensure that urgent tasks with long waiting times are allocated in a timely manner and improve task processing efficiency;
[0024] (2) Accurate robot selection: By calculating the movement cost of candidate robots, including starting cost, movement coefficient, and time cost, tasks are assigned to the robot with the lowest movement cost, thereby improving task execution efficiency and reducing task completion time;
[0025] Effective multi-tasking management: When a robot with existing tasks receives a new task, the robot calculates the task execution priority based on the initial task priority and the compensation coefficient and reorders the tasks to ensure orderly execution, improving the flexibility and adaptability of the robot's task management.
[0026] (3) Improve the overall performance of the system: By merging similar tasks to generate batch task groups, the task allocation process is optimized, the complexity of task allocation and resource waste are reduced; at the same time, a stripping mechanism is set up to ensure that urgent subtasks are executed in a timely manner, further improving the system's ability to respond to emergencies;
[0027] (4) Adapting to complex environments: Considering the time cost of taking the elevator when transporting tasks on different floors and the time cost of traveling in traffic congestion, the task allocation is more in line with the actual scenario, and the efficiency and reliability of the robot's task execution in complex environments are improved;
[0028] (5) Enhance the rationality of task allocation: When the robots have the same comprehensive scores, task allocation is performed based on the remaining power and the cumulative number of completed tasks, further improving the rationality and fairness of task allocation;
[0029] (6) Make full use of the robot's load capacity: Through the on-route task allocation mechanism, when the robot is not fully loaded, the on-route tasks are bound to the main task for execution, thereby improving the robot's load utilization and further optimizing the overall task execution efficiency of the system. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 Shown is a schematic diagram of the process of this application method; DETAILED DESCRIPTION
[0031] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0032] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present application. As used herein, unless the context clearly indicates otherwise, the singular form is intended to include the plural form. In addition, it should be understood that when the terms "comprise" and / or "include" are used in this specification, they indicate the presence of features, steps, operations, components or modules, assemblies and / or combinations thereof.
[0033] It should be noted that the terms "including" and "having" and any variations thereof in the specification and claims of this application and the above-mentioned drawings are intended to cover non-exclusive inclusions. For example, a process, method, system, product or apparatus that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or are inherent to these processes, methods, products or apparatuses.
[0034] It should be understood that the solutions of the present invention can be implemented through a single or multiple combination of hardware, software or other devices. In the description of the following embodiments, the methods and steps of the present invention can be implemented by storing in storage devices including but not limited to hard disks, removable storage devices, magnetic disks, optical disks, etc.
[0035] It should be noted that, unless there is any conflict, the embodiments and features in the embodiments of this application can be combined with each other. Example
[0036] like Figure 1 As shown, the present invention provides a method for dynamic task management of robots. Task allocation among multiple robots is managed by a scheduling management system. After the robots obtain tasks, they execute them autonomously. The specific steps are as follows:
[0037] 1. Preset parameters: Preset task parameters and robot parameters. The task parameters include at least the initial task priority, maximum waiting time, and subsidy coefficient of each task. The robot parameters include at least the maximum load, maximum moving speed, starting cost, compensation coefficient, and moving coefficient. They are set to be adjustable according to actual operation needs.
[0038] 2. The dispatching management system communicates with the robot: The dispatching management system collects all robot information, including at least the robot's type, status, current position, remaining power, maximum load, remaining load, existing task operation status, operation map, operation path, etc. It should be noted that the robot load (including maximum load and remaining load) involved in this technical solution refers to the number of subtasks that the robot can accept. For example, a box-holding robot can transport multiple boxes at the same time, and a roller robot can carry multiple materials at the same time.
[0039] 3.Task management and execution:
[0040] S1: Task reception and storage: The task manager of the scheduling management system receives tasks from external sources or submitted by the system, and places these tasks in the task pool for allocation. Each task contains at least the following parameters:
[0041] Initial task priority: A pre-set priority based on the importance and urgency of the task. A higher value indicates a more important and urgent task.
[0042] Maximum waiting time: The maximum time a task can wait for allocation. If this time is exceeded, the task may not be completed or may affect subsequent business operations.
[0043] Waiting time: The time a task waits for assignment in the task pool. The initial value is 0 and it increases gradually over time.
[0044] S2: Task allocation priority calculation: The task manager combines at least the maximum waiting time, the waiting time, the initial task priority, and the subsidy coefficient of each task. In other embodiments, other parameters can also be added for dynamic calculation. In this embodiment, the dynamic calculation of task allocation priority is as follows:
[0045] , Formula 1;
[0046] Among them, P t : The priority of task allocation. The larger the value, the higher the priority of task allocation. t0 : The initial task priority of the task, which reflects the importance and urgency of the task itself, α: Subsidy coefficient, which is used to adjust the weight of the task with a long waiting time in the priority allocation. The larger the subsidy coefficient, the greater the weight of the task with a long waiting time being allocated first, T w : The waiting time of the task, the time the task waits for allocation in the task pool, T wmax : The maximum waiting time of a task, the maximum time a task can wait for allocation.
[0047] S2a: Merge similar tasks: The task manager can be set to merge similar tasks, or it can be set not to merge according to the actual situation. Just calculate the task allocation priority according to the S2 step. The following are the specific steps for merging similar tasks:
[0048] (1) Task clustering: clustering the tasks to be run in the task pool, for example, merging the subtasks within the radius of the starting cluster and the radius of the end cluster, to improve the efficiency of task allocation and reduce the number and distance of robot movements;
[0049] (2) Generate batch task groups: Generate batch task groups based on the robot's current maximum remaining load. The robot's maximum remaining load refers to the maximum amount of tasks that the robot can still carry in its current state.
[0050] (3) Calculate the allocation priority of the task group: Calculate the allocation priority of the task group based on the minimum value of the longest waiting time of the subtasks in the task group, the maximum value of the waiting time, the highest priority of the initial task priority, and the subsidy coefficient to ensure that the allocation priority of the task group can reflect the most urgent task requirements in the group. The calculation principle is the same as S2 and will not be repeated here;
[0051] (4) Assign task groups: Assign the task group with the highest priority to the robot with the lowest movement cost.
[0052] S2b: Urgency calculation and stripping mechanism: The task manager can set the task group to enable the stripping mechanism. In a specific embodiment, the urgency can be monitored within a certain period of time. The specific steps are as follows:
[0053] Urgency calculation: Dynamically calculate the urgency of subtasks in the task group to be run, as follows:
[0054] , Formula 2;
[0055] in, U : The urgency of the task. The larger the value, the more urgent the task. T w : The waiting time of the task, T wmax : The maximum waiting time of the task.
[0056] (2) Setting the urgency threshold: Set the urgency threshold of the stripping mechanism according to actual needs;
[0057] (3) Triggering the stripping mechanism: When the urgency is greater than or equal to the threshold, the stripping mechanism is triggered. The task manager strips the subtask from the task group and forces it to be assigned to the robot with the lowest movement cost for priority execution, ensuring that the urgent task is processed in a timely manner.
[0058] S3: Screen candidate robots that can perform the task and calculate the movement cost. The specific steps are as follows:
[0059] Filter out candidate robots that can perform tasks based on task requirements and robot type, status, etc.
[0060] The time cost is calculated based on the current position, maximum moving speed, and mission destination of the candidate robot. The calculation is as follows:
[0061] , Formula 3;
[0062] Among them, T d is the time cost of the robot moving from the current position to the task destination, D: the path length from the current position of the robot to the task destination, and v is the maximum moving speed of the robot.
[0063] Combining the starting cost, movement coefficient, and time cost, calculate the movement cost of the candidate robot to perform the task with the highest priority:
[0064] , Formula 4;
[0065] Among them, Cm : The movement cost of the candidate robot to perform the task, which is used to determine which robot the task is assigned to, C s : Starting cost, the cost of the robot starting to perform a task from the idle state. The larger the starting cost, the smaller the weight assigned to the idle robot. β: Moving coefficient, the time cost coefficient of the robot performing the task. The larger the moving coefficient, the smaller the weight of the robot performing the task. T d It is the time cost for the robot to move from its current position to the task destination.
[0066] Preferably, in different application scenarios, such as robots performing transportation tasks between multiple floors, robots that may encounter traffic congestion, etc., in these scenarios, more dynamic calculation factors can be added to make task allocation more efficient and timely. The following examples are given for taking an elevator and traffic congestion. Those skilled in the art in other working conditions can refer to this technical solution for optimization. Improvements and optimizations that do not depart from the scope of the principles of the solution of the present invention are all within the scope of protection of the solution of the present invention.
[0067] S3a: Calculation of elevator time cost: For the task allocation of transportation between different floors, the elevator time cost is calculated by combining at least the robot's current floor, the floor of the task destination, the elevator interaction time, the elevator speed, the robot's current position, the maximum moving speed, and the task destination. The specific calculation method can be modeled according to the actual situation, for example:
[0068] , Formula 5;
[0069] Among them, T etotal : The total time cost required for the robot to complete the elevator process, T r2e : The sum of the time it takes for the robot to reach the elevator and the time it takes to reach the mission destination from the elevator. The calculation formula is T r2e =D r2e / v, where D r2e is the sum of the distance from the robot's current position to the elevator position and the length of the path from the elevator position to the mission destination, v is the robot's maximum moving speed, T ew : Elevator waiting time cost, that is, the time cost of the elevator reaching the floor where the robot is located, T er : The elevator running time cost, that is, the time cost of the elevator running from the floor where the robot is located to the floor where the mission destination is located, is calculated as follows: , where F t is the floor where the mission destination is located, F r is the robot's current floor, v e is the average speed of the elevator.
[0070] S3b: Calculation of traffic time cost: The scheduling management system marks the congested nodes according to the traffic conditions in the operating area, and calculates the traffic time cost based on the robot's current position, maximum moving speed, mission destination, and number of congested nodes. Modeling can be done based on actual conditions, for example:
[0071] , Formula 6;
[0072] Among them, T ttraffic : The total time cost required for the robot to complete the task under traffic congestion, T tnormal : Normal driving time cost, that is, the time cost required for the robot to move from the current position to the mission destination in the absence of congestion. The calculation formula is T tnormal =D / v, where D is the path length from the robot's current position to the task destination, and v is the robot's maximum moving speed; T tdelay : Congestion delay time cost, that is, the additional time cost incurred by the robot due to traffic congestion, calculated as T tdelay =N congestion ×T dper , where N congestion is the number of congested nodes on the path, T dper is the average delay cost of each congested node.
[0073] Comprehensive calculation of movement cost: replace the original time cost with the elevator time cost or traffic time cost, combine the starting cost and movement coefficient, and calculate the elevator movement cost or traffic movement cost of the candidate robot to perform the task with the highest priority. The principle is the same as S3 and will not be repeated here.
[0074] S4: Task allocation: Assign the task with the highest priority to the robot with the lowest movement cost, ensuring that the task is assigned to the robot most suitable for execution and improving task execution efficiency.
[0075] S4a: Task allocation when comprehensive scores are the same: When there are two or more candidate robots with the same comprehensive scores, tasks are allocated based on other robot parameters such as remaining battery power and cumulative number of completed tasks. For example, robots with higher remaining battery power are given priority in task allocation because they have longer working time, ensuring that tasks are completed and other robots with lower remaining battery power have enough time to charge. For example, robots with fewer cumulative number of completed tasks are given priority in task allocation to balance the workload of the robots.
[0076] S4b: Allocation of side-by-side tasks: The task manager can be set to allocate side-by-side tasks to the robot after it obtains the task with the highest priority, according to actual usage needs. The specific steps are as follows:
[0077] (1) Determine the robot load: Determine whether the current robot is fully loaded. If it is fully loaded, the en route task is not calculated; if it is not fully loaded, the subsequent operation is continued;
[0078] (2) Calculate the current task path: Calculate the path for the robot to execute the task with the highest priority currently assigned;
[0079] (3) Calculate the distance difference: Calculate the distance difference between the destination point of the task to be run and the current task path, reflecting the degree of proximity between the destination point of the task to be run and the current task path;
[0080] (4) Determine the on-the-way condition: Determine whether the on-the-way condition is met based on the distance difference. For example, a distance threshold can be set. If the distance difference is less than or equal to the threshold, the on-the-way condition is considered to be met.
[0081] (5) Assigning on-the-go tasks: If there are on-the-go tasks, assign them to the robot. After the robot obtains the on-the-go task, it will be bound to the task with the highest priority assigned above and executed. For example, the on-the-go task will be executed directly after the main task to ensure that the on-the-go task is not queued up by other tasks.
[0082] S5: The task manager sets the assigned tasks in the task pool to be running, updates the waiting time of the unassigned tasks to be run, and continues to dynamically calculate the allocation priority in the task pool. Tasks are assigned according to the above steps S2, S3, S4 and related sub-steps until there are no tasks or no robots that can perform tasks.
[0083] S6: Adjust the robot task execution priority. The specific steps are as follows:
[0084] When a robot with an existing task obtains a new task, it calculates the execution priority of the task by combining the initial task priority and the compensation coefficient:
[0085] , Formula 7;
[0086] Among them, P ex : The execution priority of the task, which is used to determine the execution order of tasks in the robot task queue. t0 : The initial task priority of the task, which reflects the importance and urgency of the task itself, γ: Compensation coefficient, which is used to adjust the compensation cost weight for the delayed execution of the original task when the robot with existing tasks obtains a new task. The larger the compensation coefficient, the greater the weight of the robot running the original task first, T w : The waiting time of the task, the time the task waits for allocation in the task pool, T wmax : The maximum waiting time of a task, the maximum time a task can wait for allocation.
[0087] (2) Reorder tasks according to their execution priority to ensure that they can be executed in a reasonable order.
[0088] S7: The robot executes tasks according to the reordered task queue.
[0089] The present invention can effectively improve the deficiencies of the prior art and has great promotion value.
[0090] The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.
Claims
1. A robot dynamic task management method, characterized in that: The dispatching management system manages the task allocation among multiple robots. After the robots receive the task, they execute it autonomously, including the following steps: S1: The task manager of the scheduling management system receives the task and places it in the task pool waiting for allocation; S2: Setting a subsidy coefficient α, which is a subsidy cost coefficient for the waiting time of the task to be run; the task manager dynamically calculates the priority of the task at least by combining the longest waiting time, the waiting time, the initial task priority, and the subsidy coefficient of each task. , where P t The priority of the task, the larger the value, the higher the priority of the task. t0 is the initial task priority of the task, which reflects the importance and urgency of the task itself. α is the subsidy coefficient, which is used to adjust the weight of the task with a long waiting time in the priority allocation. The larger the subsidy coefficient, the greater the weight of the task with a long waiting time being allocated first. w is the waiting time of the task, the time the task waits for assignment in the task pool, T wmax The maximum waiting time of a task is the maximum time a task can wait for an assignment; S3: Set the starting price C s and the mobility coefficient β, the starting cost C s is the cost of the idle robot starting to perform the task from the idle state, and the movement coefficient β is the time cost coefficient of the robot performing the task; the candidate robots that can perform the task are screened, and the time cost is calculated based on at least the current position, maximum movement speed, and task destination of the candidate robots. The movement cost of the candidate robot performing the task with the highest priority is calculated by combining the starting cost, movement coefficient, and time cost. , where C m The movement cost of the candidate robot to perform the task is used to determine which robot the task is assigned to, C s is the starting cost, which is the cost of the robot starting to perform the task from the idle state. The larger the starting cost, the smaller the weight assigned to the idle robot. β is the mobility coefficient, which is the time cost coefficient of the robot performing the task. The larger the mobility coefficient, the smaller the weight of the robot performing the task. d It is the time cost for the robot to move from its current position to the task destination; S4: Assign the task with the highest priority to the robot with the lowest movement cost; S5: The task manager sets the assigned tasks in the task pool to be running, updates the waiting time of the unassigned tasks to be run, and continues to dynamically calculate the allocation priority in the task pool. Tasks are assigned according to the above steps S2, S3, and S4 until there are no tasks or no robots that can perform the tasks. S6: Set the compensation coefficient γ, which is the compensation cost coefficient for the delayed execution of the original task when the robot with an existing task obtains a new task. After the robot with an existing task obtains a new task, the execution priority of the task is calculated based on the initial task priority and the compensation coefficient, and the task is re-ordered according to the execution priority. , where P ex is the execution priority of the task, which is used to determine the execution order of tasks in the robot task queue. t0 is the initial task priority, which reflects the importance and urgency of the task itself. γ is the compensation coefficient, which is used to adjust the compensation cost weight for the delayed execution of the original task when the robot with existing tasks obtains a new task. The larger the compensation coefficient, the greater the weight of the robot running the original task first. w is the waiting time of the task, the time the task waits for assignment in the task pool, T wmax The maximum waiting time of a task is the maximum time a task can wait for an assignment; S7: The robot executes tasks according to the reordered task queue; Said S2 further includes, S2a: the task manager can be configured to merge similar tasks, specifically including: clustering the tasks to be run in the task pool, combining the subtasks within the starting cluster radius and the end cluster radius with the current maximum remaining load of the robot to generate a batch task group, and calculating the allocation priority of the task group based on the minimum value of the longest waiting time of the subtasks in the task group, the maximum value of the waiting time, the highest priority of the initial task priority, and the subsidy coefficient, and allocating the task group with the highest allocation priority to the robot with the lowest movement cost; S2b: Dynamically calculate the urgency of the subtasks in the task group to be run, where urgency = waiting time / maximum waiting time. Set the urgency threshold of the stripping mechanism. When the urgency is greater than or equal to the threshold, the stripping mechanism is triggered. The task manager strips the subtask from the task group and forcibly assigns it to the robot with the lowest movement cost for priority execution.
2. A robot dynamic task management method according to claim 1, characterized in that: Before generating a task, preset task parameters and robot parameters. The task parameters include at least the initial task priority, maximum waiting time, and subsidy coefficient of each task. The robot parameters include maximum load capacity, maximum moving speed, starting cost, compensation coefficient, and moving coefficient, and are set to be adjustable.
3. A robot dynamic task management method according to claim 1, characterized in that: Before assigning tasks, the scheduling management system collects all robot information, including at least the robot's status, current location, remaining power, maximum load, remaining load, existing task running status, running map, and running path.
4. A robot dynamic task management method according to claim 1, characterized in that: When S3 calculates the time cost, further, S3a: for the task allocation of transportation between different floors, at least the current floor of the robot, the floor where the task destination is located, the elevator interaction time, the elevator speed, the current position of the robot, the maximum moving speed, and the task destination are used to calculate the time cost of taking the elevator. Combined with the starting cost, the moving coefficient, and the time cost, the elevator movement cost of the candidate robot to perform the task with the highest assigned priority is calculated.
5. A robot dynamic task management method according to claim 1, characterized in that: When S3 calculates the time cost, further, S3b: the scheduling management system marks the congested nodes according to the traffic conditions in the operating area, calculates the traffic time cost based on at least the current position, maximum moving speed, task destination, and number of congested nodes of the robot, and combines the starting cost, moving coefficient, and time cost to calculate the traffic movement cost of the candidate robot to perform the task with the highest assigned priority.
6. A robot dynamic task management method according to claim 1, characterized in that: Said S4: assigning the task group with the highest priority to the robot with the highest comprehensive score further includes, S4a: when there are two or more candidate robots with the same comprehensive score, assigning tasks based on the remaining power of the robots and the cumulative number of completed tasks.
7. A robot dynamic task management method according to claim 1, characterized in that: Said S4: assigns the task with the highest priority to the robot with the lowest moving cost. Furthermore, S4b: the task manager can be set to assign a task along the way after the robot obtains the task with the highest priority. Specifically, it includes: judging whether the current robot is fully loaded. If it is fully loaded, the task along the way is not calculated. If it is not fully loaded, the path for the robot to execute the task with the highest priority is calculated, the distance difference between the destination point of the task to be run and the path of the current task is calculated, and whether the along-the-way condition is met. If there is a task along the way, the task along the way is assigned to the robot. After the robot obtains the task along the way, it is bound to the aforementioned task with the highest priority for execution.
Citation Information
Patent Citations
Carrier distribution method and system and electronic equipment
CN116542458A
Logistics robot cluster scheduling method and device and scheduling server
CN118014274A
Method for multi-AGV multi-task distribution
CN119536276A