Multi-robot task scheduling method based on space-time conflict prediction and electronic device

CN122963097APending Publication Date: 2026-10-23ADVANCED INST OF INFORMATION TECH (AIIT) PEKING UNIV +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611013307.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-08
Publication Date
2026-10-23

AI Technical Summary

Technical Problem

[0006]本申请实施例提供一种基于时空冲突预测的多机器人任务调度方法和电子设备,以缓解或解决现有多机器人仓库调度中存在的路径冲突、瓶颈通道拥堵、交叉口抢占和死锁恢复能力不足的问题

Benefits of technology

本申请实施例通过候选路径冲突代价值、瓶颈区域预约信息和未来时间窗口内的时空占用信息,在机器人执行候选动作前识别节点冲突、通道对向冲突和瓶颈区域预约冲突,并对存在风险的候选动作进行安全校正,能够降低多机器人仓库作业中的碰撞、抢占、局部拥堵和死锁风险。进一步地,本申请将冲突代价值、瓶颈区域拥堵代价、剩余电量和任务紧急度共同纳入任务分配过程,避免仅按距离分配任务导致的局部通道拥堵,从而提高多机器人任务调度的整体稳定性和连续性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122963097A_ABST
    Figure CN122963097A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a kind of multi-robot task scheduling method and electronic equipment based on space-time conflict prediction, which comprises obtaining the topological information of warehouse operation environment, robot state information and to-be-executed task information;According to the node intersection relationship between candidate paths, channel pair direction traffic relationship and bottleneck area occupation relationship, determine the conflict value of candidate path;Distance cost, conflict value, bottleneck area congestion cost, remaining power and task urgency are combined to determine robot task allocation result;Predict the space-time occupation information in future time window, and when there is conflict risk, the candidate action is corrected safely;Control each robot to execute task according to the corrected scheduling action, and update bottleneck area reservation information and congestion cost according to the execution result.The present application can reduce the path conflict, channel occupation, local congestion and deadlock risk in multi-robot warehouse operation, improve the stability and continuity of multi-robot task scheduling.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the fields of intelligent warehousing, robot scheduling and multi-robot collaborative control technology, and in particular to a multi-robot task scheduling method and electronic device based on spatiotemporal conflict prediction. Background Technology

[0002] Currently, multi-robot navigation and scheduling technology has been widely applied in scenarios such as warehousing and logistics, factory operations, order picking, and warehouse handling. When multiple robots perform tasks in parallel in the same warehouse, it is necessary to simultaneously handle issues such as task allocation, path planning, passageway management, dynamic obstacle avoidance, and anomaly recovery.

[0003] Existing solutions typically generate navigation routes based on the current position and task target point of a single robot, or output robot actions through an intelligent agent model. However, in a warehouse environment, with narrow aisles, dense intersections, and concentrated pick-and-place points, multiple robots are prone to competing for space, traveling in opposite directions, causing local congestion, or even deadlocks in the same aisle, intersection, or bottleneck area.

[0004] Furthermore, some training schemes based on reinforcement learning or curriculum learning mainly focus on difficulty settings, network parameter updates, and training stability during model training. However, when robots actually perform tasks, they still need to consider the warehouse topology, the reservation status of bottleneck areas, and the spatiotemporal occupancy within future time windows to predict conflicts and perform safety corrections for candidate actions before execution. Without the scheduling and control mechanisms mentioned above for the execution phase, relying solely on the action output obtained from training may still lead to collisions, blockages, and long waiting times for robots in actual warehouse operations.

[0005] Therefore, there is an urgent need for a technical solution for the actual scheduling process of multiple robots in a warehouse, which can comprehensively consider channel nodes, channel edges, bottleneck areas, time and space occupancy and task urgency before task allocation, path selection and action execution, thereby reducing the risk of path conflicts, channel congestion and deadlock, and improving the stability and continuity of multi-robot scheduling. Summary of the Invention

[0006] This application provides a multi-robot task scheduling method and electronic device based on spatiotemporal conflict prediction to alleviate or solve the problems of path conflict, bottleneck channel congestion, intersection preemption and insufficient deadlock recovery capability in existing multi-robot warehouse scheduling.

[0007] In a first aspect, embodiments of this application provide a multi-robot task scheduling method based on spatiotemporal conflict prediction, including: The system acquires topology information, robot status information, and task information for the warehouse operation environment. The topology information includes channel nodes, channel edges, bottleneck areas, and target work points. The robot status information includes robot position, travel direction, speed, remaining battery power, and task execution status. The task information includes task target point and task urgency. Based on the robot status information and the task information to be executed, at least one candidate path is generated for each robot, and the conflict cost corresponding to each candidate path is determined based on the node intersection relationship, channel opposite passage relationship and bottleneck area occupancy relationship among multiple candidate paths. Based on the distance cost from each robot to the corresponding task target point, the conflict cost, the bottleneck area congestion cost, the remaining power and the task urgency, the matching cost between each robot and the corresponding task is determined, and the robot task allocation result is determined based on the matching cost. Based on the robot task allocation results, candidate actions for each robot are generated, and spatiotemporal occupancy information within a future time window is predicted based on the candidate actions of each robot. The spatiotemporal occupancy information includes the expected occupancy status of the robot on the channel node and the channel edge within the future time window. If the spatiotemporal occupancy information meets the preset conflict conditions, the candidate actions of at least one robot are safety-corrected according to the robot priority, bottleneck area reservation information and the task urgency to obtain the scheduling action. Control each robot to execute the corresponding task according to the scheduling action, and update the bottleneck area reservation information and / or the bottleneck area congestion cost based on the execution result.

[0008] In some embodiments of this application, obtaining the topology information of the warehouse operating environment includes: At least one of the following in the warehouse operation environment—shelf end point, intersection, pick-up and drop-off point, charging point, and buffer waiting point—is identified as the channel node; The path between adjacent channel nodes that allows the robot to pass is defined as the channel edge; The bottleneck region is determined in the channel node and / or the channel edge based on at least one of the following: channel width, historical waiting time, historical number of conflicts, and channel direction restrictions.

[0009] In some embodiments of this application, determining the conflict cost of each candidate path based on the node intersection relationship, channel opposite passage relationship, and bottleneck area occupancy relationship among multiple candidate paths includes: The node conflict cost is determined based on the number of times two or more robots are expected to occupy the same channel node within the same time window. The conflict cost of opposing passage is determined based on the number of times two robots are expected to occupy the same passage edge in opposite directions within the same time window. The bottleneck occupancy conflict cost is determined based on at least one of the following: the number of times the candidate path passes through the bottleneck area, the estimated waiting time, and the number of appointment failures. The conflict cost is determined based on the weighted result of the node conflict cost, the opposing traffic conflict cost, and the bottleneck occupancy conflict cost.

[0010] In some embodiments of this application, the bottleneck area reservation information is recorded through a bottleneck area reservation table, which includes at least a bottleneck area identifier, a reservation robot identifier, an entry time, an exit time, a passage direction, and a passage priority. When any robot's candidate path needs to pass through the target bottleneck area, the bottleneck area reservation table is used to determine whether there is a reservation conflict in the target time window. If there is no scheduling conflict, the time the robot occupies the target bottleneck area is written into the bottleneck area scheduling table. If there is a scheduling conflict, the robot's entry time will be adjusted, a new candidate path will be selected, or the robot task allocation result will be re-determined.

[0011] In some embodiments of this application, determining the matching cost between each robot and its corresponding task includes: The distance cost is determined based on the length of the candidate path between each robot's current position and the task target point; The congestion cost of the bottleneck area is determined based on the average waiting time and occupancy rate of the bottleneck area traversed by the candidate path within the current statistical period. The power cost is determined based on the difference between the remaining power and the power required to complete the candidate path; The urgency of a task is determined based on at least one of the following: task wait time, task priority, and task deadline. The matching cost is determined based on the distance cost, the conflict cost, the bottleneck area congestion cost, the power cost, and the task urgency.

[0012] In some embodiments of this application, the preset conflict condition includes at least one of the following: Two or more robots are expected to occupy the same channel node within the same time window; Two robots are expected to occupy the same passage side in opposite directions within the same time window; The time window for any robot to enter the bottleneck area overlaps with the reserved time window in the bottleneck area reservation table. The expected distance between two or more robots is less than the preset safety distance; Multiple robots form a waiting relationship with each other.

[0013] In some embodiments of this application, the safety correction of at least one candidate action of the robot includes at least one of the following: Correct at least one of the robot's candidate actions from a forward action to a waiting action; Reduce the speed of at least one robot to delay its entry into the conflict zone; Switch at least one robot from the current candidate path to an alternative candidate path; Control at least one robot to move to a temporary avoidance point; Adjust the robot task allocation results so that at least one robot performs the new task objective point; Release or rearrange appointment time windows in the bottleneck area appointment schedule.

[0014] In some embodiments of this application, the method further includes: During the process of each robot performing its corresponding task, a waiting relationship graph is constructed. The nodes in the waiting relationship graph represent robots, and the directed edges in the waiting relationship graph represent a robot waiting for another robot to release a channel node, channel edge, or bottleneck area. When a circular waiting relationship exists in the waiting relationship graph, or when the driving speed of multiple robots is lower than the speed threshold and the task progress does not change in multiple consecutive control cycles, it is determined that there is a risk of deadlock. Based on the task urgency, remaining battery power, remaining path length to the target point, and bottleneck area reservation information, a yielding robot is determined, and at least one unlocking operation is performed on the yielding robot, including waiting, retreating, moving to a temporary avoidance point, releasing the reserved time window, or replanning the path.

[0015] In some embodiments of this application, the method further includes: Congestion heatmap information is generated based on at least one of the following factors for each channel during the statistical period: number of robots passing through, average waiting time, number of close-range collisions, and number of deadlock risks. The congestion cost of the corresponding channel edge and / or bottleneck area is updated based on the congestion heat map information, and the updated congestion cost is used in subsequent candidate path generation, robot task allocation and motion safety correction.

[0016] In some embodiments of this application, before generating candidate actions for each robot based on the robot task allocation results, the method further includes: A multi-agent decision-making model is trained. The inputs to the multi-agent decision-making model include at least one of the following: robot local observation information, warehouse topology information, bottleneck area reservation information, congestion heatmap information, and candidate path conflict cost, as well as the robot task allocation result. The outputs of the multi-agent decision-making model include candidate actions for each robot. The multi-agent decision-making model is trained using experience samples, which are divided into multiple sub-experience pools according to conflict event types. The conflict event types include at least one of collision events, near-field conflict events, oncoming traffic conflict events, bottleneck waiting events, and deadlock events. During the training process of the multi-agent decision-making model, training samples are selected based on the composite sampling priority of the experience samples. The composite sampling priority of the experience samples is determined based on the temporal difference error of the experience samples, the conflict event type weights, and the matching degree of the current scheduling scenario.

[0017] Secondly, embodiments of this application provide an electronic device, including a memory, a processor, and a computer program stored in the memory, wherein the processor implements any of the methods of embodiments of this application when executing the computer program.

[0018] Thirdly, embodiments of this application provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the method of any one of the embodiments of this application.

[0019] Fourthly, embodiments of this application provide a computer program product, including a computer program, which, when executed by a processor, implements any of the methods described in the embodiments of this application.

[0020] Based on any of the above technical solutions, this application has at least the following beneficial effects or advantages: This application's embodiments identify node conflicts, channel-to-channel conflicts, and bottleneck area reservation conflicts before the robot executes candidate actions by using candidate path conflict cost, bottleneck area reservation information, and spatiotemporal occupancy information within a future time window. It also performs safety corrections on risky candidate actions, reducing the risks of collisions, preemption, local congestion, and deadlocks in multi-robot warehouse operations. Furthermore, this application incorporates conflict cost, bottleneck area congestion cost, remaining battery power, and task urgency into the task allocation process, avoiding local channel congestion caused by allocating tasks solely based on distance, thereby improving the overall stability and continuity of multi-robot task scheduling.

[0021] The above description is only an overview of the technical solution of this application. In order to better understand the technical means of this application, it can be implemented according to the contents of the specification. In order to make the above and other objects, features and advantages of this application more obvious and understandable, specific embodiments of this application are given below. Attached Figure Description

[0022] In the accompanying drawings, unless otherwise specified, the same reference numerals throughout the various drawings denote the same or similar parts or elements. These drawings are not necessarily drawn to scale. It should be understood that these drawings depict only some embodiments according to this application and should not be construed as limiting the scope of this application.

[0023] Figure 1 The flowchart shown is a multi-robot task scheduling method based on spatiotemporal conflict prediction provided by an embodiment of this application; Figure 2 This illustration shows a schematic diagram of warehouse topology modeling and bottleneck area reservation provided in an embodiment of this application; Figure 3 A block diagram of an electronic device provided in an embodiment of this application is shown. Detailed Implementation

[0024] With the development of intelligent logistics and automated warehousing systems, autonomous mobile robots (AMRs) are being used more and more widely in warehouse environments. In complex warehouse environments, multiple robots need to perform autonomous navigation, task allocation, path planning, and cooperative obstacle avoidance in dynamic environments. Traditional path planning methods can usually generate shorter paths for a single robot, but when multiple robots are running simultaneously, problems such as path intersections, oncoming vehicles meeting, narrow passageway contention, and intersection congestion can easily occur.

[0025] To address this, this application provides a multi-robot task scheduling method based on spatiotemporal conflict prediction. This method does not focus on progressively increasing model training difficulty; instead, it revolves around the actual scheduling process of multiple robots in a warehouse. It introduces conflict cost calculation, bottleneck area reservation, spatiotemporal occupancy prediction, action safety correction, and deadlock recovery mechanisms before task allocation, candidate path selection, bottleneck passage, and candidate action execution. This improves the operational safety and continuous operation capability of multiple robots in a warehouse setting.

[0026] In the following description, only certain exemplary embodiments are briefly described. As those skilled in the art will recognize, the described embodiments can be modified in various ways without departing from the concept or scope of this application. Therefore, the drawings and description are considered to be exemplary in nature and not restrictive.

[0027] To facilitate understanding of the technical solutions of the embodiments of this application, the relevant technologies of the embodiments of this application are described below. The following related technologies are optional solutions and can be arbitrarily combined with the technical solutions of the embodiments of this application, all of which fall within the protection scope of the embodiments of this application. It should be noted that the application scenarios or application examples provided in this application are for ease of understanding, and the embodiments of this application do not specifically limit the application of the technical solutions.

[0028] The technical solution of this application and how it solves the aforementioned technical problems are described in detail below with specific embodiments. The listed specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will be described in detail below with reference to the accompanying drawings.

[0029] See Figure 1 The flowchart shown is for a multi-robot task scheduling method based on spatiotemporal conflict prediction. This method specifically includes steps 101 to 108. This application embodiment can be applied to a collaborative system including multiple robots (hereinafter referred to as the system), and can be executed by a scheduling platform within the system. For example, the scheduling platform can be a server, a terminal device, or any robot; this application embodiment does not limit this.

[0030] Step 101: Obtain the topology information, robot status information, and task information of the warehouse operation environment.

[0031] The topology information of the warehouse operating environment can be generated based on the warehouse map, shelf layout, aisle width, aisle direction, and obstacle distribution. Optionally, the warehouse operating environment can be represented as a graph structure G=(V,E), where V represents the set of aisle nodes and E represents the set of aisle edges. Aisle nodes may include shelf endpoints, intersections, pick-and-place points, charging points, and buffer waiting points; aisle edges can represent the passageways between adjacent aisle nodes that allow robots to pass through.

[0032] Robot status information may include the robot's current position, direction of travel, current speed, remaining battery power, cargo status, task execution status, current candidate path, and fault status. Information on tasks to be executed may include task identifier, task target point, task start point, task priority, task waiting time, task deadline, and cargo attributes.

[0033] The system can also identify bottleneck areas based on aisle width, historical average waiting time, historical number of conflicts, aisle direction restrictions, and aisle side-by-side driving capacity. Bottleneck areas can be narrow aisles, one-way aisles, intersections, shelf ends, pickup / drop-off point entrances, charging area entrances, or aisle edges where historical congestion frequently occurs.

[0034] Step 102: Generate candidate paths for each robot and determine the conflict cost of each candidate path.

[0035] The system generates one or more candidate paths for each robot based on its current position and the task objective. Candidate paths can be generated using graph search algorithms, heuristic path planning algorithms, historical path templates, multi-agent decision-making models, or a combination of these methods.

[0036] For any candidate path, the system estimates the robot's occupancy time at each channel node and channel edge within a future time window based on the robot's speed, channel length, and turning time. The future time window can be T control cycles starting from the current moment; for example, T can be determined based on the robot's braking distance, communication cycle, and warehouse channel length.

[0037] The system calculates the conflict cost based on the spatiotemporal occupancy relationship between different robot candidate paths. For example, the conflict cost Cconf can be expressed as: Cconf = w1·Cn + w2·Ce + w3·Co + w4·Cb + w5·Ct Where Cn represents the node conflict cost, Ce represents the channel edge overlap occupancy cost, Co represents the opposing passage conflict cost, Cb represents the bottleneck area occupancy conflict cost, Ct represents the target area aggregation conflict cost, and w1 to w5 are weighting coefficients. These weighting coefficients can be preset according to warehouse operation requirements or dynamically adjusted based on historical scheduling data.

[0038] Node conflict can refer to two or more robots planning to occupy the same channel node within the same time window; opposing passage conflict can refer to two robots planning to occupy the same channel edge in opposite directions within the same time window; bottleneck area occupation conflict can refer to the overlapping time windows of multiple robots applying to enter the same bottleneck area; target area aggregation conflict can refer to multiple task target points being concentrated in the same area, causing robots to aggregate in a local area.

[0039] Step 103: Establish or update the appointment information for the bottleneck area.

[0040] For each bottleneck area in the warehouse, the system can maintain a bottleneck area reservation table. The bottleneck area reservation table includes at least the bottleneck area identifier, the reservation robot identifier, the entry time, the exit time, the passage direction, the passage priority, and the reservation status.

[0041] When a robot's candidate path needs to pass through a bottleneck area, the system requests a passage time window from the corresponding bottleneck area reservation table based on the robot's estimated arrival time and estimated transit time. If the reserved time window does not overlap with an existing reserved time window, or if they overlap but meet the safety interval and same-direction following conditions, the reservation is successful; if the reserved time windows overlap and the travel directions are opposite, or the time interval between robots traveling in the same direction is less than the safety interval, the reservation fails.

[0042] When a reservation fails, the system may perform one or a combination of the following actions: delay the robot's entry into the bottleneck area; reselect a candidate path that does not pass through the bottleneck area; move the robot to a temporary avoidance point to wait; recalculate the matching cost between the robot and the task; or redetermine the allocation relationship of some tasks.

[0043] After the robot actually passes through the bottleneck area, the system updates the bottleneck area reservation table based on the robot's actual entry and exit times. If the robot fails to leave the bottleneck area as scheduled due to abnormal stagnation, the system can trigger a reservation timeout detection and deadlock recovery process.

[0044] Step 104: Determine the robot task allocation result based on the matching value.

[0045] During task allocation, the system considers not only the distance from the robot to the task target point, but also the conflict cost of candidate paths, the congestion cost of bottleneck areas, the robot's remaining battery power, and the urgency of the task. For example, the matching cost Mijk of robot i executing task j and selecting candidate path k can be expressed as: Mijk = a·Dijk + b·Cconfijk + c·Congijk + d·Bijk - e·Uj Where Dijk represents distance cost, Cconfijk represents conflict cost, Congijk represents bottleneck congestion cost, Bijk represents power cost, Uj represents task urgency, and a, b, c, d, and e are weighting coefficients. Distance cost can be determined by the candidate path length or estimated travel time; congestion cost can be determined by the average waiting time, occupancy rate, and historical conflict count of the passage edges or bottleneck areas traversed by the candidate path; power cost can be determined by the difference between the robot's remaining power and the power required to complete the task; and task urgency can be determined by task priority, waiting time, or deadline.

[0046] The system can determine robot task allocation results using the Hungarian algorithm, greedy allocation algorithm, integer programming algorithm, heuristic search algorithm, or rule-based scheduling algorithm. While meeting real-time requirements, a rolling optimization approach can also be used, performing local reallocation only for robots and tasks affected by conflicts within each scheduling cycle.

[0047] Step 105: Generate candidate actions based on the task allocation results and predict the spatiotemporal occupancy information within the future time window.

[0048] Based on the task allocation results and candidate paths, the system generates candidate actions for each robot. Candidate actions may include moving forward, stopping, decelerating, turning, detouring, entering a bottleneck area, leaving a bottleneck area, and moving to a temporary avoidance point.

[0049] Before executing candidate actions, the system predicts the spatiotemporal occupancy information of each robot for channel nodes and edges within a future time window. The spatiotemporal occupancy information may include robot identifier, expected occupied node, expected occupied channel edge, occupancy start time, occupancy end time, travel direction, and safe distance.

[0050] The system determines whether preset conflict conditions are met based on spatiotemporal occupancy information. Preset conflict conditions may include: multiple robots are expected to occupy the same channel node within the same time window; two robots occupy the same channel edge in opposite directions within the same time window; the time window for a robot to enter the bottleneck area overlaps with an existing reservation; the expected distance between robots is less than a preset safety distance; and multiple robots form a mutual waiting relationship.

[0051] Step 106: Perform safety correction on the candidate actions.

[0052] When the system determines that there is a risk of conflict, it performs safety correction on at least one robot's candidate actions. The target of safety correction can be a robot with a high risk of conflict, or a robot with a low task priority, short remaining path, close to the avoidance point, high remaining battery power, or minimal impact on overall efficiency.

[0053] Safety correction methods may include: correcting forward motion to waiting motion; reducing robot speed to delay robot entry into the conflict area; switching robot from the current candidate path to an alternative candidate path; controlling robot to move to a temporary avoidance point; adjusting robot task allocation results; and releasing or rearranging the reservation time windows in the bottleneck area reservation table.

[0054] For example, when two robots are expected to clash at an intersection, the system can determine the passage priority based on task urgency, waiting time, and remaining path length, allowing the higher-priority robot to pass through the intersection first, while the lower-priority robot slows down or waits. When two robots are expected to travel in opposite directions within a narrow passage, the system can determine the robot to proceed first based on a bottleneck area reservation table, while the other robot waits at the passage entrance or switches to an alternative path.

[0055] Step 107: Detect deadlock risk and perform unlocking operation.

[0056] The system can construct a waiting relationship graph during robot task execution. Nodes in the waiting relationship graph represent robots, and directed edges represent channels, edges, or bottleneck regions where one robot is waiting for another robot to release a channel node.

[0057] When there is a circular waiting relationship in the waiting relationship graph, or when multiple robots travel at speeds below the speed threshold and the task progress remains unchanged for multiple consecutive control cycles, or when reservations in bottleneck areas are not released for a long time, the system determines that there is a risk of deadlock.

[0058] Once a deadlock risk is identified, the system determines which robot should yield based on the robot's task urgency, remaining battery power, remaining path length to the target point, available avoidance points around the current location, and bottleneck area reservation information. Unlocking operations can be performed on the yielding robot, including waiting, backing up, moving to a temporary avoidance point, releasing the reserved time window, replanning the path, or reassigning the task.

[0059] By waiting for the relationship graph and using tiered unlocking operations, the system can proactively recover when robots form mutually blocking relationships, rather than relying solely on the local obstacle avoidance actions of a single robot.

[0060] Step 108: Update congestion heat information and scheduling parameters.

[0061] The system can count the number of robots passing through each channel and bottleneck area, the average waiting time, the average travel time, the number of close-range conflicts, the number of appointment failures, and the number of deadlock risks in each statistical period, and generate congestion heat map information.

[0062] Congestion heatmaps can be used to update congestion costs at the edges of passageways or bottleneck areas. When the congestion cost of a particular edge of passageway or bottleneck area increases, the usage priority of that area will be reduced during subsequent candidate path generation and task allocation, thereby guiding robots to divert traffic.

[0063] Optionally, the system can also adjust the estimated time for the robot to pass through the aisle, the safety interval in the bottleneck area, and the candidate action prediction model based on the actual execution results, so that the spatiotemporal conflict prediction is more consistent with the actual warehouse operation status.

[0064] Figure 2 This diagram illustrates a warehouse topology modeling method provided in an embodiment of this application. In this diagram, the task area of ​​the warehouse operating environment includes multiple shelves: Shelves 1 to Shelves 4. The warehouse operating environment is abstracted as a topology structure composed of aisle nodes and aisle edges. The system marks bottleneck areas at narrow aisles and intersections where conflicts such as preemption, waiting, or opposing passage are likely to occur, and records the time windows for each robot to reserve entry into and exit from the bottleneck areas using a reservation table. An example bottleneck area reservation table is shown below:

[0065] Note: Before entering the bottleneck area, the robot must apply for a time window. If there is a time window conflict, it will wait, slow down, or change course.

[0066] In some implementations, the candidate actions of each robot can be output by a multi-agent decision model. This multi-agent decision model can be a policy model based on reinforcement learning, or a combination of a rule-based model and a learning model. The input to this multi-agent decision model includes not only local robot observation information, but also warehouse topology information, bottleneck area reservation information, congestion heatmap information, and the conflict cost of candidate paths.

[0067] When training a multi-agent decision-making model, experience samples can be divided into multiple sub-experience pools according to the type of conflict events. Conflict event types can include collision events, near-distance conflict events, oncoming traffic conflict events, bottleneck waiting events, and deadlock events. The system determines the composite sampling priority based on the temporal difference error of the experience samples, the weight of the conflict event type, and the matching degree of the current scheduling scenario.

[0068] The aforementioned multi-agent decision-making model and training method are only one optional implementation for generating candidate actions. Even without using a reinforcement learning model, the candidate path conflict cost, bottleneck region reservation, spatiotemporal conflict prediction, action safety correction, and deadlock recovery mechanisms in the embodiments of this application can still be executed by the scheduler in the form of software rules.

[0069] Figure 3 This is a block diagram of an electronic device used to implement embodiments of this application. For example... Figure 3 As shown, the electronic device includes a memory 301 and a processor 302. The memory 301 stores a computer program that can run on the processor 302. When the processor 302 executes the computer program, it implements the method described in the above embodiments. The processor 302 calls the program stored in the memory 301 to generate scheduling actions based on warehouse topology, bottleneck reservation, and spatiotemporal reread prediction. The number of memories 301 and processors 302 can be one or more. In a specific implementation, the electronic device may also include a communication interface 303 for communicating with external devices. In the application scenario of this application embodiment, the communication interface 303 can be used to establish a communication connection with a robot or a scheduling platform.

[0070] In practical implementation, if the memory 301, processor 302, and communication interface 303 are implemented independently, they can be interconnected via a bus to complete communication with each other. This bus can be an industry-standard architecture bus, an external device interconnect bus, an extended industry-standard architecture bus, a mobile industry processor interface bus, or other applicable buses.

[0071] Optionally, in a specific implementation, if the memory 301, processor 302 and communication interface 303 are integrated on a single chip, the memory 301, processor 302 and communication interface 303 can communicate with each other through an internal interface.

[0072] This application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method provided in this application.

[0073] This application provides a computer program product, including a computer program that, when executed by a processor, implements the method provided in this application.

[0074] This application also provides a chip including a processor for calling and executing instructions stored in a memory, causing a communication device with the chip installed to perform the method provided in this application.

[0075] This application also provides a chip, including: an input interface, an output interface, a processor, and a memory. The input interface, output interface, processor, and memory are connected through an internal connection path. The processor is used to execute code in the memory. When the code is executed, the processor is used to execute the method provided in this application.

[0076] It should be understood that the aforementioned processor can be a CPU, or it can be other general-purpose processors, digital signal processors, application-specific integrated circuits, field-programmable gate arrays or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0077] Further, optionally, the aforementioned memory may include read-only memory and random access memory. The memory may be volatile memory or non-volatile memory, or may include both. The non-volatile memory may include read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, or flash memory.

[0078] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions according to this application are generated.

[0079] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to a specific feature, structure, material, or characteristic described in connection with that embodiment or example, which is included in at least one embodiment or example of this application. The specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0080] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "a plurality of" means two or more, unless otherwise explicitly specified.

[0081] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process. Furthermore, the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functionality involved.

[0082] The logic and / or steps described in the flowchart or otherwise herein may be implemented in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus or device.

[0083] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. All or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware, the program being stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiments.

[0084] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module.

[0085] The above description is merely an exemplary embodiment of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various variations or substitutions within the technical scope described in this application, and these should all be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A multi-robot task scheduling method based on spatiotemporal conflict prediction, characterized in that, include: The system acquires topology information, robot status information, and task information for the warehouse operation environment. The topology information includes channel nodes, channel edges, bottleneck areas, and target work points. The robot status information includes robot position, travel direction, speed, remaining battery power, and task execution status. The task information includes task target point and task urgency. Based on the robot status information and the task information to be executed, at least one candidate path is generated for each robot, and the conflict cost corresponding to each candidate path is determined based on the node intersection relationship, channel opposite passage relationship and bottleneck area occupancy relationship among multiple candidate paths. Based on the distance cost from each robot to the corresponding task target point, the conflict cost, the bottleneck area congestion cost, the remaining power and the task urgency, the matching cost between each robot and the corresponding task is determined, and the robot task allocation result is determined based on the matching cost. Based on the robot task allocation results, candidate actions for each robot are generated, and spatiotemporal occupancy information within a future time window is predicted based on the candidate actions of each robot. The spatiotemporal occupancy information includes the expected occupancy status of the robot on the channel node and the channel edge within the future time window. If the spatiotemporal occupancy information meets the preset conflict conditions, the candidate actions of at least one robot are safety-corrected according to the robot priority, bottleneck area reservation information and the task urgency to obtain the scheduling action. Control each robot to execute the corresponding task according to the scheduling action, and update the bottleneck area reservation information and / or the bottleneck area congestion cost based on the execution result.

2. The method according to claim 1, characterized in that, The acquisition of the warehouse operating environment topology information includes: At least one of the shelf endpoints, intersections, pick-up and drop-off points, charging points, and buffer waiting points in the warehouse operation environment is identified as the channel node; The path between adjacent channel nodes that allows the robot to pass is defined as the channel edge; The bottleneck region is determined in the channel node and / or the channel edge based on at least one of the following: channel width, historical waiting time, historical number of conflicts, and channel direction restrictions.

3. The method according to claim 1, characterized in that, The determination of the conflict cost value for each candidate path based on the node intersection relationship, channel opposite traffic relationship, and bottleneck area occupancy relationship among multiple candidate paths includes: The node conflict cost is determined based on the number of times two or more robots are expected to occupy the same channel node within the same time window. The conflict cost of opposing passage is determined based on the number of times two robots are expected to occupy the same passage edge in opposite directions within the same time window. The bottleneck occupancy conflict cost is determined based on at least one of the following: the number of times the candidate path passes through the bottleneck area, the estimated waiting time, and the number of appointment failures. The conflict cost is determined based on the weighted result of the node conflict cost, the opposing traffic conflict cost, and the bottleneck occupancy conflict cost.

4. The method according to claim 1, characterized in that, The bottleneck area reservation information is recorded through a bottleneck area reservation table, which includes at least the bottleneck area identifier, reservation robot identifier, entry time, exit time, passage direction, and passage priority. When any robot's candidate path needs to pass through the target bottleneck area, the bottleneck area reservation table is used to determine whether there is a reservation conflict in the target time window. If there is no scheduling conflict, the time the robot occupies the target bottleneck area is written into the bottleneck area scheduling table. If there is a scheduling conflict, the robot's entry time will be adjusted, a new candidate path will be selected, or the robot task allocation result will be re-determined.

5. The method according to claim 1, characterized in that, Determining the matching cost between each robot and its corresponding task includes: The distance cost is determined based on the length of the candidate path between each robot's current position and the task target point; The congestion cost of the bottleneck area is determined based on the average waiting time and occupancy rate of the bottleneck area traversed by the candidate path within the current statistical period. The power cost is determined based on the difference between the remaining power and the power required to complete the candidate path; The urgency of a task is determined based on at least one of the following: task wait time, task priority, and task deadline. The matching cost is determined based on the distance cost, the conflict cost, the bottleneck area congestion cost, the power cost, and the task urgency.

6. The method according to claim 1, characterized in that, The preset conflict conditions include at least one of the following: Two or more robots are expected to occupy the same channel node within the same time window; Two robots are expected to occupy the same passage side in opposite directions within the same time window; The time window for any robot to enter the bottleneck area overlaps with the reserved time window in the bottleneck area reservation table. The expected distance between two or more robots is less than the preset safety distance; Multiple robots form a waiting relationship with each other.

7. The method according to claim 1, characterized in that, The method further includes: During the process of each robot performing its corresponding task, a waiting relationship graph is constructed. The nodes in the waiting relationship graph represent robots, and the directed edges in the waiting relationship graph represent a robot waiting for another robot to release a channel node, channel edge, or bottleneck area. When a circular waiting relationship exists in the waiting relationship graph, or when the driving speed of multiple robots is lower than the speed threshold and the task progress does not change in multiple consecutive control cycles, it is determined that there is a risk of deadlock. Based on the task urgency, remaining battery power, remaining path length to the target point, and bottleneck area reservation information, a yielding robot is determined, and at least one unlocking operation is performed on the yielding robot, including waiting, retreating, moving to a temporary avoidance point, releasing the reserved time window, or replanning the path.

8. The method according to any one of claims 1 to 7, characterized in that, The method further includes: Congestion heatmap information is generated based on at least one of the following factors for each channel during the statistical period: number of robots passing through, average waiting time, number of close-range collisions, and number of deadlock risks. The congestion cost of the corresponding channel edge and / or bottleneck area is updated based on the congestion heat map information, and the updated congestion cost is used in subsequent candidate path generation, robot task allocation and motion safety correction.

9. The method according to any one of claims 1 to 7, characterized in that, Before generating candidate actions for each robot based on the robot task allocation results, the process also includes: A multi-agent decision-making model is trained. The inputs to the multi-agent decision-making model include at least one of the following: robot local observation information, warehouse topology information, bottleneck area reservation information, congestion heatmap information, and candidate path conflict cost, as well as the robot task allocation result. The outputs of the multi-agent decision-making model include candidate actions for each robot. The multi-agent decision-making model is trained using experience samples, which are divided into multiple sub-experience pools according to conflict event types. The conflict event types include at least one of collision events, near-field conflict events, oncoming traffic conflict events, bottleneck waiting events, and deadlock events. During the training process of the multi-agent decision-making model, training samples are selected based on the composite sampling priority of the experience samples. The composite sampling priority of the experience samples is determined based on the temporal difference error of the experience samples, the conflict event type weights, and the matching degree of the current scheduling scenario.

10. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory, wherein the processor, when executing the computer program, implements the method of any one of claims 1-9.