Robot distribution task priority scheduling method
Through dynamic weight scoring model and real-time path optimization, the problems of collision and congestion in multi-robot systems are solved, efficient task allocation and coordinated operation are achieved, and timely response to important tasks and system stability are ensured.
Patent Information
- Application Number
- CN202510516971.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-23
- Publication Date
- 2025-07-25
AI Technical Summary
There may be collisions and congestion when multiple transport robots work together, which cannot ensure the efficient coordinated operation of multiple robot systems.
The robot distribution task priority scheduling method is adopted, and the task priority is evaluated through the dynamic weight scoring model, the robot delivery capability parameters are used to allocate tasks, and path conflicts are detected in real time, and the path planning is optimized based on the conflict resolution strategy to avoid collisions.
It realizes efficient and coordinated operation of multiple robot systems, ensures timely response to important tasks and overall distribution efficiency, reduces task delays and resource waste, and improves the stability and security of the system.
Smart Images

Figure CN120373785A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of multi-transport robot scheduling control, and particularly to a method for scheduling the priority of robot delivery tasks. Background Art
[0002] A transport robot is a robot that can autonomously complete item transportation. In the industrial field, transport robots can replace human labor to complete item handling and transportation tasks. They can independently judge the transportation route and working hours, and have the advantages of high precision, high speed, and high repeatability, which can greatly improve work efficiency and reduce the labor intensity and safety risks of workers. Moreover, they are widely used in the fields of electronics, medicine, logistics, etc., playing a great role.
[0003] Transport robots can, through a path planning system, deliver the goods to be delivered from a certain location to a designated location. However, when multiple transport robots cooperate, there may be collisions and congestion, and the efficient cooperative operation of the multi-robot system cannot be guaranteed. Summary of the Invention
[0004] Based on this, it is necessary to provide a method for scheduling the priority of robot delivery tasks that can guarantee the efficient cooperative operation of multiple transport robot systems in view of the above technical problems.
[0005] This application provides a method for scheduling the priority of robot delivery tasks, and the method includes:
[0006] Input the priority scoring parameters into a preset dynamic weight scoring model to obtain the priority score of the delivery task. The priority scoring parameters include task urgency, delivery distance, goods weight, and time limit requirements, and the dynamic weight scoring model represents the influence degree of each priority scoring parameter on the priority score;
[0007] Obtain the transport capacity parameters of multiple robots, and allocate robots for the delivery task according to the transport capacity parameters and the priority score of the delivery task;
[0008] Determine the planned path required for the robot to complete the corresponding delivery task;
[0009] During the movement of multiple robots, real-time obtain the movement information of multiple robots, and detect whether there is a path conflict among multiple robots;
[0010] In the case of detecting a path conflict, optimize the planned path of the robot based on a conflict resolution strategy to avoid collisions among multiple robots.
[0011] In one embodiment, the steps of optimizing the planned path of a robot with a path conflict based on a conflict resolution strategy include:
[0012] Update the map according to the real-time detection result of dynamic obstacles output by the environmental sensor;
[0013] Based on the updated map, allocate an exclusive passage for the first robot to avoid obstacles;
[0014] Adjust the planned path of the second robot based on the avoidance principle of the first robot;
[0015] The first robot and the second robot are robots with a path conflict, and the priority score of the delivery task corresponding to the first robot is greater than the priority score of the delivery task corresponding to the second robot.
[0016] In one embodiment, the steps of detecting whether there is a path conflict among multiple robots include:
[0017] Convert the planned path of each robot into a spatio-temporal trajectory;
[0018] In the case where the spatio-temporal trajectories of multiple robots overlap, it is determined that there is a path conflict among multiple robots.
[0019] In one embodiment, before the step of determining whether the spatio-temporal trajectories of multiple robots overlap, it further includes:
[0020] Expand the spatio-temporal trajectory of the robot based on a preset buffer radius.
[0021] In one embodiment, the optimizing the planned path of a robot with a path conflict based on a conflict resolution strategy includes:
[0022] Compare the spatio-temporal trajectories of multiple robots, and identify the coordinate points and time windows where multiple robots have path conflicts;
[0023] Differentially allocate time windows at the path conflict coordinate points for multiple robots with path conflicts; or differentially adjust the moving speeds of multiple robots with path conflicts; or insert temporary avoidance points at the coordinate points of the path conflict to update the map, and adjust the planned paths of multiple robots with path conflicts based on the updated map.
[0024] In one embodiment, the steps of differentially allocating time windows at the path conflict coordinate points for multiple robots with path conflicts include:
[0025] Allocate a first time window for the first robot at the path conflict coordinate point, and allocate a second time window for the second robot at the path conflict coordinate point; the time of the first time window is earlier than that of the second time window;
[0026] The first robot and the second robot are robots with path conflicts, and the priority score of the delivery task corresponding to the first robot is greater than the priority score of the delivery task corresponding to the second robot.
[0027] In one embodiment, the step of differentially adjusting the moving speeds of multiple robots with path conflicts includes:
[0028] Control the second robot to slow down or pause moving, where the second robot is the one with a low priority score of the corresponding delivery task among the multiple robots with path conflicts.
[0029] In one embodiment, after the step of optimizing the planned paths of robots with path conflicts based on the conflict resolution strategy, the method further includes:
[0030] If path conflicts are detected again, transfer the delivery tasks corresponding to the robots with path conflicts to other idle robots; or,
[0031] Adopt a conflict search algorithm to generate a set of conflict-free multi-robot planned paths to update the planned paths of multiple robots.
[0032] In one embodiment, the above method further includes:
[0033] During the movement of the robot, if a robot failure or road blockage is detected, increase the priority score of the delivery task corresponding to the robot with the failure or road blockage;
[0034] And jump to the step of allocating a robot for the delivery task according to the transportation capacity parameter and the priority score of the delivery task.
[0035] In one embodiment, the above method further includes:
[0036] During the movement of the robot, if the remaining power of the robot is lower than the minimum required power corresponding to the remaining delivery distance, or the remaining load capacity of the robot is less than the weight of the goods corresponding to the delivery task, transfer the delivery task to other idle robots.
[0037] The above-mentioned method for scheduling the priority of robot delivery tasks uses a dynamic weight scoring model to evaluate the priority score of delivery tasks, generates tasks with priority scores from multi-dimensional parameter considerations, and assigns robots to delivery tasks according to the priority scores and the operating ability parameters of the robots. During the process of the robots executing delivery tasks (moving process), path conflict detection is performed, and when there is a path conflict, the planned path of the robots is optimized based on the conflict resolution strategy to avoid collisions between multiple robots and ensure the efficient collaborative operation of the multi-robot system. Brief Description of the Drawings
[0038] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments of the present application or related technologies. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other related drawings can also be obtained based on these drawings.
[0039] Figure 1 It is an application environment diagram of the method for scheduling the priority of robot delivery tasks in an embodiment;
[0040] Figure 2 It is a schematic flowchart of the method for scheduling the priority of robot delivery tasks in an embodiment;
[0041] Figure 3 It is a structural block diagram of the device for scheduling the priority of robot delivery tasks in an embodiment;
[0042] Figure 4 It is an internal structure diagram of a computer device in an embodiment;
[0043] Figure 5 It is an internal structure diagram of a computer device in another embodiment. Detailed Embodiments
[0044] In order to make the objectives, technical solutions and advantages of the present application clearer, the following further details the present application in conjunction with the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0045] The method for scheduling the priority of robot delivery tasks provided by the embodiments of the present application can be applied to, for example Figure 1In the application environment shown. Among them, the order system 100 sends a delivery task to the central dispatching system 200, and the central dispatching system 200 communicates with multiple robots 300 through a network. After receiving the delivery task, the central dispatching system 200 schedules the multiple robots 300 by executing the steps of the robot delivery task priority scheduling method provided in the embodiments of the present application, so as to achieve the purpose of efficient collaborative transportation of goods by multiple robots. Among them, the central dispatching system 200 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services.
[0046] In an exemplary embodiment, the present application provides a method for scheduling the priority of robot delivery tasks. Taking the application of the steps of this method to the central dispatching system 200 as shown in Figure 1 as an example for illustration, as shown in Figure 2 the method includes:
[0047] S201, input the priority scoring parameters into a preset dynamic weight scoring model to obtain the priority score of the delivery task. The priority scoring parameters include task urgency, delivery distance, goods weight, and time limit requirements. The dynamic weight scoring model characterizes the influence degree of each priority scoring parameter on the priority score.
[0048] Among them, the steps for obtaining the task urgency may include:
[0049] Obtain the order information of the delivery task, and determine the task urgency of the delivery task according to the order information. For example, the delivery task can be divided into three levels: "urgent task" (such as equipment failure repair materials), "real-time task" (such as immediate replenishment of the production line), and "ordinary task" (conventional material transportation) according to the order information, and automatically classified through the order attributes in the order information.
[0050] The higher the task urgency, the higher the corresponding priority score. The higher the time limit requirement, the higher the corresponding priority score. For the delivery distance and goods weight, their influence on the high or low of the priority score can be determined based on the delivery requirements in a specific scenario. For example, in a scenario, the farther the delivery distance, the longer the minimum time required for its delivery is longer than that of the delivery task with a relatively shorter delivery distance. To avoid the too long delivery time of the long-distance delivery task, the farther the delivery distance, the higher the corresponding priority score. For the goods weight, the association relationship between the goods weight and the priority score can be determined according to the urgency degree of light-weight goods and heavy-weight items for users in the current scenario. It should be noted that the weights of multiple dimensions of priority scoring parameters are dynamically changing when determining the priority score.
[0051] In one embodiment, during the process of the robot executing the delivery task, a task backtracking log may be established to analyze historical scheduling exception events and optimize the parameter configuration of the dynamic weight scoring model.
[0052] Establishing a task backtracking log during the process of the robot executing the delivery task can record in detail various key information during the execution of each delivery task, such as the task start time, end time, robot number involved, delivery route, and situations encountered at each stage (such as whether there is congestion, whether the robot has a fault alarm, etc.). By analyzing historical scheduling exception events, for example, if it is found that high-priority tasks in the past were always not allocated in a timely manner due to unreasonable weight settings, relevant parameters can be appropriately adjusted to increase the weight ratio of task urgency in the dynamic weight scoring model, so that high-priority tasks are more likely to be allocated to suitable robots and executed preferentially, improving the rationality and scientificity of task allocation.
[0053] S202, obtain the transportation capacity parameters of multiple robots, and allocate a robot for the delivery task according to the transportation capacity parameters and the priority score of the delivery task.
[0054] Among them, the transportation capacity parameter refers to the data representing the transportation capacity of the robot within the electronic fence map where it is located. For example, the transportation capacity parameters include data such as the congestion index of the workshop passage, the equipment operation status, and the battery level. The congestion index of the workshop passage reflects whether the robot can pass smoothly in the workshop passage and will affect its delivery efficiency; the equipment operation status reflects whether each component of the robot itself is working properly, which is related to whether the delivery task can be successfully executed; the battery level determines how long the robot can continue to run and whether it can complete the delivery before the battery runs out. These parameters together reflect the actual transportation capacity of the robot within the electronic fence area (such as the workshop).
[0055] Specifically, the operation capacity parameters such as the congestion index of the workshop passage, the equipment operation status, and the battery level of the AGV (Automated Guided Vehicle) can be collected in real time through Internet of Things sensors. For example, sensors (such as cameras to collect images, infrared induction sensors for ranging, etc.) are installed at key positions in the workshop passage to monitor the congestion of robots on the passage. The operation status of the equipment is obtained by using various status monitoring sensors (such as speed sensors, attitude sensors, position sensors, etc.) installed on the robot; and the battery level of the AGV and other data are obtained based on the built-in battery management module of the robot. The collected data can be transmitted to the central scheduling system in real time.
[0056] Among them, by establishing a multi-objective optimization model, comprehensively considering the remaining power of the robot, the remaining load capacity, and the distance between the current position and the task target point, the best-performing robot for the delivery task can be selected through an auction algorithm or an ant colony algorithm.
[0057] Optionally, the operation ability parameter can be used as a correction coefficient for adjusting the priority of the delivery task.
[0058] S203. Determine the planned path required for the robot to complete the corresponding delivery task.
[0059] In an actual delivery scenario, delivery tasks often arrive dynamically one after another. An insertion-based dynamic sorting mechanism can be adopted to cope with this ever-changing situation, efficiently plan paths for newly arrived delivery tasks, and minimize large-scale changes to existing task arrangements.
[0060] When a new delivery task arrives, the central dispatching system will, based on the current status of the robot (including the current position of the robot, the progress of the task being executed, the power situation, etc.) and the already planned path results, combined with the priority scoring results of the delivery task, determine the optimal insertion position of this new task in the existing task sequence.
[0061] In delivery tasks, there will inevitably be some urgent tasks that need to be executed as soon as possible. When there are urgent tasks, robots that are currently executing low-priority tasks (tasks with a lower priority score for delivery tasks) can be temporarily suspended, and then their execution paths can be re-planned. This can ensure that urgent tasks are processed immediately and minimize the adverse consequences caused by the failure to respond to emergencies in a timely manner.
[0062] S204. During the movement of multiple robots, real-time obtain the movement information of multiple robots and detect whether there are path conflicts among multiple robots.
[0063] Among them, the movement information includes the current position, speed, movement direction, and planned path of the robot, etc. The current position can reflect the specific coordinate position of the robot within the electronic fence map at this moment. The speed reflects the current traveling speed of the robot and can estimate the time for the robot to reach each passing point and the final destination on the planned path. The movement direction indicates the direction in which the robot is moving forward and can be used in combination with the speed and the current position to analyze the subsequent movement trajectory of the robot. The planned path is the route that the robot should follow to complete the delivery task, which has been determined previously. By comparing the actual position with the planned path, it can be known whether the robot is moving as planned, etc.
[0064] Path conflict refers to spatial or temporal conflicts that occur during the movement of multiple robots. Among them, spatial conflict means that the paths of multiple robots occupy the same physical coordinates at the same time point (such as intersections, narrow passages, etc.). Temporal conflict means that the time windows for multiple robots to reach a certain key node overlap (such as entering the charging station or loading and unloading area at the same time). In robot scheduling, resource conflicts may also occur, which refer to the situation where shared devices (such as elevators, charging piles) are competitively used by multiple robots.
[0065] When it is predicted that there are path conflicts among multiple robots, it means that there will be collision risks or congestion at a certain time or spatial position for the robots. For example, two robots are required to pass through the same narrow passage at the same moment according to their respective planned paths, which may lead to congestion or even collision; or after the actual traveling direction of a certain robot deviates from the planned path, there is a path intersection conflict with other normally traveling robots, etc. Therefore, path conflict detection is the core link to ensure the efficient collaborative operation of multiple robots, and its implementation can be combined with real-time monitoring, path conflict prediction models, and decision-making during conflicts.
[0066] S205, in the case of detecting path conflicts, optimize the planned paths of the robots based on the conflict resolution strategy to avoid collisions among the multiple robots.
[0067] Specifically, use a dynamic weight scoring model to evaluate the priority scores of distribution tasks, generate tasks with priority scores from multi-dimensional parameter considerations, and allocate robots to distribution tasks according to the priority scores and the running ability parameters of the robots. During the process of the robots executing distribution tasks (moving process), perform path conflict detection, and when there are path conflicts, optimize the planned paths of the robots based on the conflict resolution strategy to avoid collisions among the multiple robots and ensure the efficient collaborative operation of the multi-robot system.
[0068] In one embodiment, the step of optimizing the planned paths of the robots with path conflicts based on the conflict resolution strategy includes:
[0069] Update the map according to the real-time detection results of dynamic obstacles output by the environmental sensor;
[0070] Based on the updated map, allocate an exclusive passage for the first robot to avoid obstacles;
[0071] Adjust the planned path of the second robot based on the avoidance principle of the first robot;
[0072] The first robot and the second robot are robots with path conflicts, and the priority score of the distribution task corresponding to the first robot is greater than the priority score of the distribution task corresponding to the second robot.
[0073] Among them, since the robot moves goods and has dynamic characteristics, environmental sensors such as cameras or infrared sensors can be used to detect dynamic obstacles (such as personnel and temporary stacks), update the global map, so as to dynamically adjust the planned path of the robot to avoid obstacles. The robot obstacle avoidance algorithm will not be enumerated here.
[0074] Based on the updated map, the exclusive passage is allocated, fully considering the distribution of obstacles in the current environment, so that the first robot can make more efficient use of space resources during the process of traveling in the exclusive passage, avoiding unnecessary detours or getting stuck in a situation where it cannot pass due to obstacles. This helps to improve the distribution efficiency of a single robot. Generally speaking, it can also make the entire distribution path network more reasonable and orderly, reducing path congestion and resource waste caused by obstacles.
[0075] Since the priority score of the distribution task corresponding to the first robot is greater than that of the second robot, the exclusive passage avoiding obstacles is preferentially allocated to it, which can ensure to the greatest extent that high-priority tasks are not interfered by dynamic obstacles in the environment, enabling the first robot to travel to the destination along a relatively smooth and safe path to complete the distribution. For example, the exclusive passage can be allocated to the first robot with the shortest path. It can effectively avoid the delay of high-priority tasks caused by obstacles, ensure the timeliness of important or urgent distribution tasks, and improve the response speed and completion quality of the overall distribution service for key tasks.
[0076] Based on the updated map, the planned path of the second robot is adjusted according to the avoidance principle of the first robot, fundamentally solving the path conflict problem between the first robot and the second robot, preventing interference situations such as collisions during their subsequent travel, and ensuring the safety of the robot operation. At the same time, during the adjustment process, various factors such as the current position and distribution task of the second robot will be comprehensively considered, and its path will be changed in the way with the least impact and most reasonable manner, so that although the second robot makes avoidance, it can still complete its own distribution task within an acceptable time and cost range, taking into account the execution efficiency of different priority tasks in the overall distribution system and maintaining the orderliness and stability of the system.
[0077] In one embodiment, the above method further includes:
[0078] Keep the original path of the first robot and perform local replanning on the planned path of the second robot.
[0079] By executing the principle of giving priority to high-priority tasks for passage, the emergency task robot keeps its original path, and the low-priority robot triggers local replanning, taking into account both the response speed of high-priority tasks and the control of the computational amount of path adjustment.
[0080] In one embodiment, the step of detecting whether there is a path conflict among multiple robots includes:
[0081] Convert the planned paths of the robots into space-time trajectories;
[0082] When there is an overlap in the space-time trajectories of multiple robots, it is determined that there is a path conflict among multiple robots.
[0083] Convert the path planned by the robot into a space-time trajectory (Space-Time Trajectory), and mark the estimated arrival time of each coordinate point in the path. Exemplarily, the space-time trajectory of robot A includes coordinates (x, y) and the corresponding time t for each coordinate. Then the space-time trajectory trajectory_A of robot A = [(x1, y1, t1), (x2, y2, t2),..., (xn, yn, tn)]
[0084] Based on the space-time trajectory, predict whether there will be an overlap of robot trajectories at certain positions at a certain future moment. Specifically, it can be detected based on a conflict determination algorithm. The space-time trajectories of all robots can be compared to identify the intersection of coordinates and time windows.
[0085] The robot delivery task priority scheduling method provided by the embodiments of the present application uses the space-time trajectory and, based on the conflict determination algorithm, detects whether there is an overlap of robot trajectories at certain positions at a certain future moment, and can achieve early and accurate prediction of path conflicts. After accurately detecting the path conflict, the corresponding central scheduling system adjusts and optimizes the planned paths of the robots with conflicts (for example, by means of priority avoidance principles, re-planning local paths, etc.) to avoid adverse situations such as collisions and congestion of robots during the actual execution of delivery tasks, so that each robot can complete its respective delivery tasks according to a reasonable and conflict-free path. Reduce problems such as task delays and resource waste caused by path conflicts, ensure the timely and orderly completion of delivery tasks, and improve the overall quality and reliability of delivery services.
[0086] In one embodiment, the above method further includes:
[0087] Scan the path conflict situation of key nodes. For high-conflict areas such as channel entrances and turning points, strengthen the time window inspection to avoid robot collisions at key nodes.
[0088] In one embodiment, before the step of determining whether there is an overlap in the space-time trajectories of multiple robots, it further includes:
[0089] Expand the space-time trajectory of the robot based on a preset buffer radius.
[0090] By setting a safety distance (such as 0.5 meters) for the robot as the buffer radius, when judging path conflicts, the path conflict judgment is based on the spatio-temporal trajectory after the buffer radius is expanded, so as to avoid the risk of contact at the edge of the robot.
[0091] In addition, due to the consideration of the buffer area, even if the robot has a small range of position deviation, as long as it is still within the expanded spatio-temporal trajectory range, it can still timely detect the overlap of the spatio-temporal trajectories with other robots, and then pre-judge the possible path conflict situations and take corresponding solutions (such as adjusting the path, etc.). It effectively reduces the probability of accidental collisions, congestion and other conflict situations during the actual movement of the robot, and improves the safety and stability of the operation of the entire distribution system.
[0092] In one embodiment, optimizing the planned path of the robot with path conflicts based on the conflict resolution strategy includes:
[0093] Comparing the spatio-temporal trajectories of multiple robots to identify the coordinate points and time windows where multiple robots have path conflicts;
[0094] Differentially allocate time windows for multiple robots with path conflicts at the path conflict coordinate points; or differentially adjust the moving speeds of multiple robots with path conflicts; or insert temporary avoidance points at the coordinate points of the path conflicts to update the map, and adjust the planned paths of multiple robots with path conflicts based on the updated map.
[0095] Specifically, differentially allocating time windows for multiple robots with path conflicts at the path conflict coordinate points can reasonably arrange the order in which each robot passes through the conflict area (the area where the path conflict coordinate points are located), so that they can pass through smoothly in turn, avoiding problems such as collisions or congestion caused by competing for the same spatial position at the same time. It can be flexibly allocated according to factors such as the priority of the distribution tasks corresponding to the robots and their current operating status, ensuring that high-priority tasks or urgent tasks can preferentially obtain appropriate time windows to pass through the conflict area. While resolving conflicts, it well takes into account the differences in the importance of different tasks and ensures the orderly execution of the overall distribution tasks.
[0096] Specifically, according to the specific situation of the robot (such as the distance from the conflict area, the priority score of the distribution task, etc.), appropriately increase or decrease the speed of some robots so that they can stagger the meeting time at the conflict coordinate points, thus resolving the path conflict. This method does not require major changes to the entire planned path of the robot. While ensuring that the robot can continue to move towards the target and complete the distribution task, it quickly and effectively avoids conflict problems with little impact on the progress of the overall distribution task, and helps to maintain the coherence and stability of the distribution task.
[0097] In addition, for some robots that are relatively close to the destination and have sufficient power, their speeds can be appropriately increased (the power consumption is relatively high during high-power operation) to pass through the conflict area, which can not only avoid conflicts in time but also complete tasks as soon as possible, reducing unnecessary energy consumption. For robots with low power, their speeds can be appropriately reduced (the power consumption is relatively low during low-power operation) to ensure that there is enough power to support subsequent delivery trips while avoiding conflicts.
[0098] Specifically, in a complex delivery environment, when it is difficult to effectively resolve conflicts by simply relying on time window allocation or speed adjustment, inserting temporary avoidance points can create additional avoidance space, allowing robots to detour and avoid the conflict area, improving the ability to handle complex path conflicts. In addition, by updating the map and adjusting the planned path based on the new map, the map is always matched with the actual delivery environment and the path situation after conflict resolution, maintaining the dynamic adaptability and accuracy of the map.
[0099] In one embodiment, the step of differentially allocating time windows for multiple robots with path conflicts at path conflict coordinate points includes:
[0100] Allocating a first time window for a first robot at the path conflict coordinate point and a second time window for a second robot at the path conflict coordinate point; the time of the first time window is earlier than that of the second time window;
[0101] The first robot and the second robot are robots with path conflicts, and the priority score of the delivery task corresponding to the first robot is greater than that of the delivery task corresponding to the second robot.
[0102] For example, let the first robot pass during the time period from t1 to t2, and the second robot pass during the time period from t2 to t3. By ensuring that the robot with a higher priority passes through the conflict area first, the response speed of the delivery task with a higher priority is guaranteed.
[0103] In one embodiment, the step of differentially adjusting the moving speeds of multiple robots with path conflicts includes:
[0104] Controlling the second robot to decelerate or pause moving, where the second robot is the one with a lower priority score of the delivery task among the multiple robots with path conflicts.
[0105] By slowing down or pausing the movement of the second robot with a low priority score, it is possible to create a path for the robot with a higher priority, enabling it to pass through the conflict area unhindered and continue with its delivery task. This ensures that high-priority delivery tasks, such as the delivery of emergency medical supplies and important customer orders, can be completed according to the established plan or as soon as possible, avoiding delays in these critical tasks due to path conflicts, and maximizing the satisfaction of the task requirements with high demands for delivery timeliness and importance, thus guaranteeing the smooth progress of key tasks in the entire delivery service.
[0106] In an exemplary technique, controlling a second robot A to slow down can be achieved through the following code:
[0107] def avoid_conflict(robot,conflict_point):
[0108] new_speed=robot.speed*0.8 # Slow down by 20%
[0109] alternative_path=A_star(robot.current_pos,robot.goal,avoid_point=conflict_point)
[0110] return alternative_path
[0111] In one embodiment, after the step of optimizing the planned paths of robots with path conflicts based on the conflict resolution strategy, the following is further included:
[0112] If a path conflict is detected again, the delivery task corresponding to the robot with the path conflict is transferred to other idle robots; or,
[0113] A conflict search algorithm is used to generate a set of conflict-free multi-robot planned paths to update the planned paths of multiple robots.
[0114] If the conflict cannot be resolved through local path optimization, global rescheduling can be performed. The central scheduling system migrates the task to other idle robots. A conflict search algorithm (CBS) is used to generate a set of conflict-free multi-robot paths. At this time, it is no longer limited to making temporary adjustments to the area where individual conflict coordinates are located, but rather through the algorithm, the planned paths of all robots are comprehensively analyzed, enhancing the ability to handle complex path conflict situations, strengthening the reliability of the system, ensuring that the robots can execute tasks more smoothly and safely during subsequent delivery processes, and avoiding frequent entrapment in conflict dilemmas.
[0115] In one embodiment, the implementation process of path conflict detection and decision-making can be realized based on the following example:
[0116] def detect_conflict(robots):
[0117] for i in range(len(robots)):
[0118] for j in range(i + 1, len(robots)):
[0119] path_i = robots[i].get_trajectory()
[0120] path_j = robots[j].get_trajectory()
[0121] # Check spatio-temporal trajectory overlap
[0122] overlap = find_overlap(path_i, path_j, buffer_radius = 0.5)
[0123] if overlap:
[0124] # Trigger conflict resolution
[0125] resolve_conflict(robots[i], robots[j], overlap)
[0126] def resolve_conflict(robot_a, robot_b, conflict_zone):
[0127] if robot_a.priority > robot_b.priority:
[0128] robot_b.replan_path(avoid_zone = conflict_zone)
[0129] else:
[0130] # Negotiate time window or adjust speed
[0131] adjust_time_window(robot_a, robot_b, conflict_zone)
[0132] In one embodiment, the above method further includes:
[0133] During the movement of the robot, if a robot failure or road blockage is detected, the priority score of the delivery task corresponding to the robot with the failure or road blockage is increased;
[0134] And jump to the step of allocating a robot for the delivery task according to the transportation capacity parameter and the priority score of the delivery task.
[0135] When a robot failure or road blockage is detected, the central dispatching system automatically increases the priority score of the affected delivery task, thereby increasing its response priority and triggering neighboring idle robots to cooperate in rescue to ensure the smooth execution of the delivery task.
[0136] In one embodiment, the above method further includes:
[0137] During the movement of the robot, if the remaining battery power of the robot is lower than the minimum required battery power corresponding to the remaining delivery distance, or the remaining load capacity of the robot is less than the weight of the goods for the corresponding delivery task, the delivery task is transferred to other idle robots.
[0138] For ultra-long-distance delivery tasks, a cross-section handover plan is designed. Robots with insufficient power (remaining battery power lower than the minimum required battery power corresponding to the remaining delivery distance) or limited load (remaining load capacity less than the weight of the goods for the corresponding delivery task) can transfer the task to idle robots to ensure task continuity.
[0139] The method provided by the embodiment of the present application, by adopting a dynamic avoidance mechanism, based on a real-time updated electronic fence map, allocates exclusive access channels for high-priority tasks, and medium and low-priority robots automatically avoid. Implement time window control in the path intersection area, and coordinate the passing time sequence of each robot through the central dispatching system, thereby effectively preventing robot collisions and congestion and ensuring the efficient collaborative operation of the multi-robot system.
[0140] It should be understood that although the steps in the flowcharts involved in the above-mentioned embodiments are shown in sequence according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same moment, but can be executed at different moments. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least a part of other steps or steps in other steps.
[0141] Based on the same inventive concept, an embodiment of the present application further provides a robot delivery task priority scheduling device for implementing the robot delivery task priority scheduling method involved above. The solution provided by this device to solve the problem is similar to the solution described in the above method. Therefore, the specific limitations in one or more embodiments of the robot delivery task priority scheduling device provided below can refer to the limitations on the robot delivery task priority scheduling method in the above text, and will not be repeated here.
[0142] In an exemplary embodiment, as Figure 3 shown, a robot delivery task priority scheduling device 300 is provided, including: a priority scoring module 301, a robot allocation module 302, a path planning module 303, a conflict detection module 304, and a conflict resolution module 305, where:
[0143] The priority scoring module is configured to input priority scoring parameters into a preset dynamic weight scoring model to obtain the priority score of the delivery task. The priority scoring parameters include task urgency, delivery distance, goods weight, and timeliness requirements. The dynamic weight scoring model characterizes the influence degree of each priority scoring parameter on the priority score;
[0144] The robot allocation module is configured to obtain the transportation capacity parameters of multiple robots, and allocate robots for the delivery task according to the transportation capacity parameters and the priority score of the delivery task;
[0145] The path planning module is configured to determine the planned path required for the robot to complete the corresponding delivery task;
[0146] The conflict detection module is configured to, during the movement of multiple robots, real-time obtain the movement information of multiple robots, and detect whether there is a path conflict among multiple robots;
[0147] The conflict resolution module is configured to, in the case of detecting a path conflict, optimize the planned path of the robot based on a conflict resolution strategy to avoid collisions among multiple robots.
[0148] In one embodiment, the robot allocation module includes:
[0149] The first map dynamic update unit is configured to update the map according to the real-time detection result of dynamic obstacles output by the environmental sensor;
[0150] The high-priority path adjustment unit is configured to allocate an exclusive passage for the first robot to avoid obstacles based on the updated map;
[0151] A low-priority path adjustment unit for adjusting the planned path of the second robot based on the avoidance principle of the first robot;
[0152] The first robot and the second robot are robots with path conflicts, and the priority score of the delivery task corresponding to the first robot is greater than the priority score of the delivery task corresponding to the second robot.
[0153] In one embodiment, the conflict detection module includes:
[0154] A spatio-temporal trajectory conversion unit for converting the planned paths of the robots into spatio-temporal trajectories;
[0155] A conflict judgment unit for determining that there are path conflicts among the robots when there are overlaps in the spatio-temporal trajectories of the robots.
[0156] In one embodiment, the conflict detection module further includes:
[0157] A spatio-temporal trajectory expansion unit for expanding the spatio-temporal trajectories of the robots based on a preset buffer radius.
[0158] In one embodiment, the conflict resolution module includes:
[0159] A path conflict unit for comparing the spatio-temporal trajectories of the robots and identifying the coordinate points and time windows where the robots have path conflicts;
[0160] A conflict decision unit for differentially allocating time windows at the path conflict coordinate points for the robots with path conflicts; or differentially adjusting the moving speeds of the robots with path conflicts; or inserting temporary avoidance points at the coordinate points of the path conflicts to update the map, and adjusting the planned paths of the robots with path conflicts based on the updated map.
[0161] In one embodiment, the conflict decision unit includes:
[0162] A time window reallocation unit for allocating a first time window at the path conflict coordinate point for the first robot and a second time window at the path conflict coordinate point for the second robot; the time of the first time window is earlier than that of the second time window;
[0163] The first robot and the second robot are robots with path conflicts, and the priority score of the delivery task corresponding to the first robot is greater than the priority score of the delivery task corresponding to the second robot.
[0164] In one embodiment, the conflict decision unit includes:
[0165] A differential speed control unit for controlling a second robot to decelerate or pause moving, where the second robot is a robot with a low priority score for the corresponding delivery task among multiple robots with path conflicts.
[0166] In one embodiment, the above device further includes:
[0167] A task handover module for, when detecting path conflicts again, handing over the delivery tasks corresponding to the robots with path conflicts to other idle robots; or,
[0168] A path replanning module for, when detecting path conflicts again, using a conflict search algorithm to generate a set of multi-robot planned paths without conflicts to update the planned paths of the multiple robots.
[0169] In one embodiment, the above device further includes:
[0170] An abnormal situation support trigger module for, during the movement of the robot, if detecting a robot failure or a road blockage, increasing the priority score of the delivery task corresponding to the robot with the failure or the road blockage; and jumping to the step of allocating a robot for the delivery task according to the delivery capacity parameter and the priority score of the delivery task.
[0171] In one embodiment, the above device further includes:
[0172] A cross-section handover module for, during the movement of the robot, if the remaining power of the robot is lower than the minimum required power corresponding to the remaining delivery distance, or the remaining load capacity of the robot is less than the weight of the goods for the corresponding delivery task, handing over the delivery task to other idle robots.
[0173] Each module in the above robot delivery task priority scheduling device can be implemented in whole or in part by software, hardware, and their combination. The above modules can be embedded in the processor of the computer device in hardware form or be independent of it, or be stored in the memory of the computer device in software form so that the processor can call and execute the operations corresponding to the above modules.
[0174] In an exemplary embodiment, a computer device is provided. The computer device can be a server, and its internal structure diagram can be as Figure 4As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O), and a communication interface. Among them, the processor, the memory, and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store data such as a dynamic weight scoring model. The input / output interface of the computer device is used to exchange information between the processor and external devices. The communication interface of the computer device is used to communicate with external terminals through a network connection. When the computer program is executed by the processor, it implements a method for scheduling the priority of robot delivery tasks.
[0175] In an exemplary embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as Figure 5 shown. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit, and an input device. Among them, the processor, the memory, and the input / output interface are connected through a system bus, and the communication interface, the display unit, and the input device are connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and external devices. The communication interface of the computer device is used to communicate with external terminals in a wired or wireless manner. The wireless manner can be achieved through WIFI, a mobile cellular network, near field communication (Near Field Communication, NFC), or other technologies. When the computer program is executed by the processor, it implements a method for scheduling the priority of robot delivery tasks.
[0176] Those skilled in the art can understand that Figure 4 and Figure 5 the structures shown in
[0177] In an exemplary embodiment, a computer device is provided, including a memory and a processor. A computer program is stored in the memory. When the processor executes the computer program, the steps of the above method embodiment are implemented, and corresponding beneficial effects are achieved.
[0178] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above method embodiment are implemented, and corresponding beneficial effects are achieved.
[0179] In one embodiment, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the steps of the above method embodiment are implemented, and corresponding beneficial effects are achieved.
[0180] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. And the collection, use, and processing of relevant data need to comply with relevant regulations.
[0181] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processors, graphics processors, digital signal processors, programmable logic devices, data processing logics based on quantum computing, artificial intelligence (AI) processors, etc., without limitation.
[0182] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in the present application.
[0183] The above-described embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation to the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all fall within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the appended claims.
Claims
1. A method for scheduling the priority of robot delivery tasks, characterized in that, The method includes: Inputting the priority scoring parameters into a preset dynamic weight scoring model to obtain the priority score of the delivery task. The priority scoring parameters include task urgency, delivery distance, goods weight, and timeliness requirements. The dynamic weight scoring model represents the influence degree of each priority scoring parameter on the priority score; Obtaining the transportation capacity parameters of multiple robots, and allocating a robot for the delivery task according to the transportation capacity parameters and the priority score of the delivery task; Determining the planned path required for the robot to complete the corresponding delivery task; During the movement of multiple robots, real-time obtaining the movement information of multiple robots, and detecting whether there are path conflicts among multiple robots; In the case of detecting a path conflict, optimizing the planned path of the robot based on a conflict resolution strategy to avoid collisions among multiple robots.
2. The method according to claim 1, wherein The step of optimizing the planned path of the robot with a path conflict based on a conflict resolution strategy includes: Updating the map according to the real-time detection result of dynamic obstacles output by the environmental sensor; Based on the updated map, allocating an exclusive passage for the first robot to avoid obstacles; Adjusting the planned path of the second robot based on the avoidance principle of the first robot; The first robot and the second robot are robots with path conflicts, and the priority score of the delivery task corresponding to the first robot is greater than the priority score of the delivery task corresponding to the second robot.
3. The method according to claim 1, wherein The step of detecting whether there are path conflicts among multiple robots includes: Converting the planned path of each robot into a spatio-temporal trajectory; In the case where there is an overlap in the spatio-temporal trajectories of multiple robots, determining that there are path conflicts among multiple robots.
4. The method according to claim 3, characterized in that, Before the step of determining whether there is an overlap in the spatio-temporal trajectories of multiple robots, it further includes: Expanding the spatio-temporal trajectory of the robot based on a preset buffer radius.
5. The method according to claim 3, characterized in that, Optimizing the planned path of the robot with a path conflict based on a conflict resolution strategy includes: Comparing the spatio-temporal trajectories of multiple robots, and identifying the coordinate points and time windows where multiple robots have path conflicts; Differentially allocating time windows at the path conflict coordinate points for multiple robots with path conflicts; or differentially adjusting the moving speeds of multiple robots with path conflicts; or inserting temporary avoidance points at the coordinate points of the path conflict to update the map, and adjusting the planned paths of multiple robots with path conflicts based on the updated map.
6. The method according to claim 5, characterized in that, The step of differentially allocating time windows at the path conflict coordinate points for multiple robots with path conflicts includes: Allocating a first time window for the first robot at the path conflict coordinate point, and allocating a second time window for the second robot at the path conflict coordinate point; the time of the first time window is earlier than the time of the second time window; The first robot and the second robot are robots with path conflicts, and the priority score of the delivery task corresponding to the first robot is greater than the priority score of the delivery task corresponding to the second robot.
7. The method according to claim 5, wherein The steps of adjusting the moving speeds of multiple robots with path conflicts in the differential adjustment include: Controlling the second robot to decelerate or pause moving, where the second robot is the one with a low priority score for the corresponding delivery task among the multiple robots with path conflicts.
8. The method according to claim 1, wherein After the step of optimizing the planned paths of the robots with path conflicts based on the conflict resolution strategy, it further includes: If path conflicts are detected again, transferring the delivery tasks corresponding to the robots with path conflicts to other idle robots; or, Using a conflict search algorithm to generate a conflict-free multi-robot planned path set to update the planned paths of the multiple robots.
9. The method according to claim 1, wherein The method further includes: During the movement of the robot, if a robot failure or road blockage is detected, increasing the priority score of the delivery task corresponding to the robot with the failure or road blockage; And jumping to the step of allocating a robot for the delivery task according to the transportation capacity parameter and the priority score of the delivery task.
10. The method according to claim 1, characterized in that The method further includes: During the movement of the robot, if the remaining battery power of the robot is lower than the minimum required power corresponding to the remaining delivery distance, or the remaining load capacity of the robot is less than the weight of the goods for the corresponding delivery task, transferring the delivery task to other idle robots.
Citation Information
Cited By
Path guiding method, terminal and system
CN120547501A
A path guidance method, terminal and system based on door lock
CN120547501B
ROS2-based workshop robot path planning method and system
CN120721094A
A ros2-based inter-plant robot path planning method and system
CN120721094B
Container exit-oriented robot scheduling method and system
CN120952415A