Multi-robot scheduling method and system
By acquiring environmental maps and path planning, and using preset mobile resources to control robot movement, the problems of congestion and collision in multi-robot environments are solved, improving mobile safety and efficiency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN YOUIBOT ROBOTICS CO LTD
- Filing Date
- 2024-12-20
- Publication Date
- 2026-05-12
AI Technical Summary
In multi-robot environments, how can we avoid robot congestion and collisions, and improve mobility efficiency and safety, especially in mobile operations in narrow passages and around equipment?
By acquiring an environmental map, determining preset movement resources, obtaining the target robot's task based on the path planning task queue, planning the path according to the environmental map and task location, controlling the robot's movement using preset movement resources, and updating the target movement resources to prevent multiple robots from occupying the same resource at the same time.
It effectively avoids robot blockage and collisions, improves mobile safety and efficiency, and ensures smooth robot movement in narrow passages and around equipment.
Smart Images

Figure CN119806139B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of automation, in particular to a multi-robot scheduling method and system. BACKGROUND
[0002] With the development of robot technology gradually mature, more and more fields begin to apply mobile robots for transportation, for example, in the field of warehousing, industrial production field, service field, etc., in these application scenarios, there are usually multiple robots in the same area to perform mobile operations, and there are some narrow passages in the area where the robots are located, which may cause robot congestion, collision, and even damage to the instruments and equipment in the area. How to schedule multiple robots to avoid robot congestion and collision and improve the moving efficiency of robots has become a problem to be solved. SUMMARY
[0003] The main purpose of the present application is to provide a multi-robot scheduling method and system, which aims to avoid congestion and collision of multiple robots in the same area and improve the moving safety and efficiency of robots.
[0004] In a first aspect, the present application provides a multi-robot scheduling method, which comprises the following steps:
[0005] Obtain an environment map of a current environment, and determine a preset moving resource in the current environment according to the environment map;
[0006] Based on a preset path planning task queue, obtain a to-be-planned task of a target robot;
[0007] According to the environment map and the starting position and target position of the to-be-planned task, perform a path planning operation to obtain a moving path of the target robot;
[0008] According to the moving path of the target robot and the preset moving resource, determine a target moving resource required for the target robot to move based on the moving path;
[0009] Based on the target moving resource, control at least one target robot to move, and update the target moving resource of each target robot in the process of moving the target robot.
[0010] In a second aspect, the present application also provides a multi-robot scheduling system, which comprises at least one target robot and a multi-robot scheduling device in communication connection with each target robot, and the multi-robot scheduling device is used to execute the multi-robot scheduling method as described in any one of the embodiments of the present application.
[0011] This application provides a multi-robot scheduling method and system. The method involves acquiring an environmental map of the current environment and determining preset movement resources within that map; obtaining planned tasks for target robots based on a preset path planning task queue; performing path planning operations based on the environmental map and the starting and target positions of the planned tasks to obtain the movement path of the target robots; determining the target movement resources required for the target robots to move based on the movement path and the preset movement resources; controlling the movement of at least one target robot based on the target movement resources, and updating the target movement resources of each target robot during its movement. By controlling the gradual movement of target robots using movement resources, and because each movement resource can only be occupied by one robot at a time, congestion and collisions between multiple robots in the same area can be avoided, improving the safety and efficiency of robot movement. Attached Figure Description
[0012] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 A flowchart illustrating a multi-robot scheduling method provided in an embodiment of this application;
[0014] Figure 2 This is a diagram illustrating a use case of a multi-robot scheduling method provided in one embodiment of this application.
[0015] Figure 3 This is a schematic diagram illustrating the determination of preset mobile resources based on an environmental map, as provided in an embodiment of this application.
[0016] Figures 4a-4d A schematic diagram of a bidirectional movement channel provided in an embodiment of this application;
[0017] Figure 5 This application provides a schematic diagram of multi-robot scheduling in a bidirectional mobile channel.
[0018] Figure 6a , Figure 6b This is a schematic diagram of a target mobile resource update provided in an embodiment of this application;
[0019] Figures 7a-7c The first embodiment of this application provides a schematic diagram of a multi-robot congestion situation;
[0020] Figure 8 This is a schematic diagram of a robot obstacle avoidance movement task provided in an embodiment of this application. Detailed Implementation
[0021] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0022] The flowchart shown in the attached diagram is for illustrative purposes only and does not necessarily include all content and operations / steps, nor does it necessarily have to be performed in the order described. For example, some operations / steps can be broken down, combined, or partially merged, so the actual execution order may change depending on the actual situation.
[0023] For example, the robot provided in this application embodiment can be an AGV (Automated Guided Vehicle) robot. AGV robots are automated transportation devices widely used in industrial automated production lines, medical, logistics, and other fields. During operation, AGV robots need to travel along a specific path from a starting position to a target position. However, since multiple AGV robots exist in the same environment, they may arrive at the same location simultaneously, leading to congestion or collisions. Furthermore, the operating environment of AGV robots may contain relatively narrow passages, requiring them to move close to the equipment placed in the environment. Since AGV robots cannot rotate in place, the rational scheduling of AGV robots in multi-robot scenarios is crucial to avoid insufficient space for them to turn around, causing them to get stuck or even collide with the equipment.
[0024] To address the above issues, this application provides a multi-robot scheduling method and system.
[0025] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.
[0026] Please refer to Figure 1 , Figure 1This is a flowchart illustrating a multi-robot scheduling method provided in an embodiment of this application. This multi-robot scheduling method can be used in a terminal or server to schedule multiple robots within the same area. The terminal can be an electronic device such as a mobile phone, tablet, laptop, desktop computer, personal digital assistant, or wearable device; the server can be a standalone server, a server cluster, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.
[0027] Please refer to Figure 2 , Figure 2 This is a usage scenario diagram provided by an embodiment of this application. For example... Figure 2 As shown, the multi-robot scheduling device can be deployed in a terminal or server and communicate with multiple target robots in the same area to perform path planning and mobile resource allocation for the first robot, the second robot, ..., the Nth robot. The number of robots is not limited here. Specifically, when the multi-robot scheduling device performs path planning and mobile resource allocation for the first robot, the first robot is the target robot, and the other robots communicating with the multi-robot scheduling device are the collaborating robots of the first robot.
[0028] like Figure 1 As shown, the multi-robot scheduling method includes steps S101 to S105.
[0029] Step S101: Obtain the environment map of the current environment, and determine the preset mobile resources in the current environment based on the environment map.
[0030] For example, the environment map can be a two-dimensional or three-dimensional map, such as a topology map or a grid map, used to represent the current environment and location of multiple robots. The type of map can be determined according to the algorithm used for path planning and the implementation scenario of the multi-robot scheduling method, and is not limited here.
[0031] In some implementations, obtaining an environment map of the current environment and determining preset mobile resources in the current environment based on the environment map includes:
[0032] Based on the robot size of the target robot, determine the resource size of the preset mobile resource;
[0033] The preset mobile resource is determined in the environment map based on the resource size.
[0034] For example, if the environment map is a grid map, the preset motion resource can be each grid cell in the environment map. Of course, it is not limited to this. The preset motion resource can also be determined based on the size of the target robot. For example, the size of the motion resource can be determined based on the size of the robot, and then the environment map can be segmented based on the size of the motion resource to divide the environment map into multiple preset motion resources.
[0035] In some implementations, determining the resource size of the preset mobile resource based on the robot size of the target robot includes:
[0036] Use the robot size of the target robot as the resource size of the preset mobile resource; or
[0037] The expanded size of the robot after it has expanded in at least one target direction is taken as the resource size of the preset mobile resource.
[0038] For example, the robot size can be used as the resource size of the preset mobile resources, and preset mobile resources with the same area size as the target robot can be divided in the environmental map.
[0039] For example, to prevent robots from being too close together, or from colliding with adjacent collaborative robots or obstacles in the environment, the preset size of the mobile resource can be slightly larger than the robot size. Therefore, the expanded size of the robot, extending in at least one target direction, is used as the resource size. This expanded size ensures that when two robots occupy adjacent mobile resources, there is still a certain distance between them. The size of the expanded size can be set according to actual needs; for example, it can be an expansion of 20cm based on the robot size. The target direction can be one or more of the following: front, back, left, and right. Alternatively, it can expand in all directions around the target robot with the expanded size as the radius, centered on the target robot.
[0040] Please refer to Figure 3 , Figure 3 This is a schematic diagram illustrating how a preset mobile resource is determined based on an environmental map, as provided in an embodiment of this application.
[0041] like Figure 3 As shown, the embodiments of this application will Figure 3 The environment map is divided into 101 preset movement resources. For example, the expansion target direction can be the direction surrounding the robot's location in the environment map, such as when the robot is located... Figure 3 When the robot is located at point 101, its size will expand to point 1 to obtain the preset movement resources occupied by the robot, so as to prevent other robots from driving to point 1 and causing blockage or collision to the robot located at point 101.
[0042] Step S102: Based on the preset path planning task queue, obtain the tasks to be planned for the target robot.
[0043] For example, since it is necessary to plan the movement paths of multiple robots, the multi-robot scheduling method provided in this application manages the path planning tasks of each target robot through a path planning task queue. Specifically, the multi-robot scheduling device obtains path planning tasks from the path planning task queue. The path planning task includes the target robot identifier, the starting position of the target robot, and the target position of the task.
[0044] For example, after obtaining the path planning task, the system first determines whether the target robot is on track based on the target robot identifier and starting position, that is, whether the target robot is connected to the multi-robot scheduling device and is located in a position in the current environment where the robot is allowed to move. If the above conditions are not met, an error message is pushed. After confirming that the target robot is on track, the system determines whether the target position is reachable, that is, whether the target position is a position that the target robot can reach on the environment map. If the above conditions are not met, an error message is pushed. If all the above conditions are met, the system begins to plan a movement path for the target robot to move from the starting position to the target position.
[0045] Step S103: Perform path planning operation based on the environmental map and the starting and target positions of the task to be planned to obtain the movement path of the target robot.
[0046] For example, the path planning operation can determine the optimal path from the starting position to the target position based on a preset path planning algorithm. The path planning algorithm can be, for example, Dijkstra's algorithm or the A* search algorithm.
[0047] DiJkstra's algorithm is applicable to directed or undirected maps with non-negative edge weights. It is used to compute the shortest paths from a source vertex to all other vertices in the surrounding map. The basic idea of DiJkstra's algorithm is to start from the source vertex and gradually expand to increasingly distant vertices until the entire graph is covered. In each step, the algorithm selects an unvisited vertex whose distance to the source vertex is the known shortest path length, and then updates the shortest path estimates for the unvisited vertices directly connected to it.
[0048] The A* search algorithm is a heuristic search algorithm that introduces global information when examining each possible node in the shortest path. It estimates the distance of the current node from the destination and uses this estimate as a measure of the probability that the node is on the shortest path, thereby determining the shortest movement path.
[0049] Step S104: Based on the target robot's movement path and the preset movement resources, determine the target movement resources required for the target robot to move based on the movement path.
[0050] For example, the location of a target robot on the environmental map is managed in the form of mobile resources. When a target robot moves to or is about to move to a certain location, a preset mobile resource corresponding to that location is occupied as the target mobile resource; when the target robot leaves the location, the occupation of the target mobile resource is released. Each preset mobile resource can only serve as the target mobile resource for one target robot at a time. If the target mobile resource needed by a target robot is currently occupied by another robot, it waits for the occupation of that mobile resource to be released. This avoids congestion and collisions caused by multiple robots moving to the same preset mobile resource location simultaneously.
[0051] In some implementations, determining the target movement resources required for the target robot to move based on the movement path, according to the target robot's movement path and the preset movement resources, includes:
[0052] Based on the target robot's movement path and the preset movement resources, determine the candidate movement resources required for the target robot to move based on the movement path;
[0053] Obtain the resource attributes of the candidate mobile resources, the resource attributes including: unidirectional mobile resources and bidirectional mobile resources, wherein the bidirectional mobile resources are mobile resources in a bidirectional mobile channel;
[0054] If the resource attribute of the candidate mobile resource is the bidirectional mobile resource, the bidirectional mobile channel to which the bidirectional mobile resource belongs is determined as the target mobile resource.
[0055] For example, there are some narrow passages in the environment map. These passages need to provide bidirectional passage, allowing robots to move forward or backward within them. However, since each passage can only accommodate one robot, it cannot allow two robots to travel in different directions. Therefore, special handling is required for these locations when scheduling multiple robots. Specifically, bidirectional, continuous, non-branching paths in the environment map that can only accommodate one robot are designated as bidirectional movement channels, and the preset movement resources contained in these bidirectional movement channels are bidirectional movement resources.
[0056] Please refer to Figures 4a-4d , Figures 4a-4d This is a schematic diagram of a bidirectional movement channel provided in an embodiment of this application.
[0057] like Figures 4a-4d As shown, Figures 4a-4dThe path within the Chinese box is a two-way movement channel. This two-way movement channel can be manually pre-set in the environment map, or it can be automatically identified based on preset recognition rules and algorithms; no limitation is made here.
[0058] For example, since AGV robots cannot turn in place, when the target robot enters the bidirectional movement channel, all bidirectional movement resources that make up the bidirectional movement channel need to be identified as the target movement resources of the target robot to avoid other robots also entering the bidirectional movement channel and causing multiple robots to get stuck in the bidirectional movement channel.
[0059] In some implementations, when the resource attribute of the candidate mobile resource is the bidirectional mobile resource, determining the bidirectional mobile channel to which the bidirectional mobile resource belongs as the target mobile resource further includes:
[0060] When the bidirectional movement channel is occupied by a collaborative robot, a first direction of movement of the collaborative robot in the bidirectional movement channel is determined;
[0061] The target movement resources of the target robot are determined based on the first movement direction and the second movement direction of the target robot.
[0062] For example, whether two robots simultaneously occupying a bidirectional movement channel will cause congestion depends on their movement directions. If the target robot and the collaborating robot already in the bidirectional movement channel move in the same direction, the target robot can follow the collaborating robot in the bidirectional movement channel. Conversely, if the target robot and the collaborating robot move in different directions, their simultaneous entry into the bidirectional movement channel will cause congestion. Therefore, it is necessary to determine whether the target robot is allowed to enter the bidirectional movement channel if the collaborating robot occupies the channel, based on the first movement direction of the collaborating robot and the second movement direction of the target robot.
[0063] In some implementations, determining the target movement resource of the target robot based on the first movement direction and the second movement direction of the target robot includes:
[0064] When the first direction of movement is the same as the second direction of movement of the target robot, at least a portion of the bidirectional movement channel is identified as the target movement resource;
[0065] When the first direction of movement is different from the second direction of movement of the target robot, the target robot is instructed to leave the entrance of the bidirectional movement channel.
[0066] For example, if the first movement direction is the same as the second movement direction, the target robot is allowed to enter the bidirectional movement channel, and the bidirectional movement resources that the collaborative robot has released from occupation, i.e., at least a part of the bidirectional movement channel, are determined as the target movement resources of the target robot. At this time, the target robot follows the collaborative robot to move in the bidirectional movement channel.
[0067] Conversely, if the first direction of movement is opposite to the second direction of movement, the target robot is not allowed to enter the bidirectional movement channel. Furthermore, in order to prevent the target robot from staying at the entrance of the bidirectional movement channel and blocking the entrance, thus preventing the collaborative robot from leaving the entrance of the bidirectional movement channel, the target robot needs to be instructed to leave the entrance of the bidirectional movement channel.
[0068] Please refer to Figure 5 , Figure 5 This is a schematic diagram of multi-robot scheduling in a bidirectional mobile channel, provided as an embodiment of this application.
[0069] like Figure 5 As shown, if robot B occupies the bidirectional movement channel, and at the same time robots A, C, and D also need to pass through the bidirectional movement channel, robot A, which is in the same direction as robot B, can follow robot B through the bidirectional movement channel. However, robots C and D, which are in a different direction from robot B, need to wait outside the channel entrance until robots A and B leave the bidirectional movement channel before entering it.
[0070] Step S105: Control at least one of the target robots to move based on the target movement resources, and update the target movement resources of each target robot during the movement of the target robots.
[0071] Please refer to Figure 6a , Figure 6b , Figure 6a , Figure 6b This is a schematic diagram of a target mobile resource update provided in an embodiment of this application.
[0072] like Figure 6a As shown, the preset movement resources in the movement path of robot A include point 6, point 4, point 7, point 2, and point 8 in sequence. During the process of robot A moving from point 6 to point 4 along path e1, point 4 is determined as the target movement resource of robot A. If point 4 has been occupied by other robots, robot A needs to wait for the occupation of point 4 to be released. The preset movement resources in the movement path of robot B include point 4, point 7, point 2, and point 8 in sequence. During the process of robot B moving from point 4 to point 7 along path e3, point 7 is determined as the target movement resource of robot A.
[0073] likeFigure 6b As shown, after robot B leaves point 7 and releases its occupation of point 7, robot A identifies point 7 as the target movement resource and moves from point 4 to point 7 along path e3. In this way, point 7 can only be occupied by one robot at a time, avoiding congestion and collisions caused by two robots going to point 7 at the same time.
[0074] In some implementations, the target movement resources include current movement resources and reserve movement resources. Controlling the movement of at least one target robot based on the target movement resources, and updating the target movement resources of each target robot during the movement of the target robots, includes:
[0075] When the target robot moves from the first position corresponding to the current movement resource to the second position corresponding to the preparatory movement resource, the occupation of the current movement resource is released;
[0076] The prepared movement resource is updated to the new current movement resource, and the new prepared movement resource is determined based on the position of the current movement resource in the movement path.
[0077] For example, the current mobile resource is the preset mobile resource corresponding to the location of the target robot, and the reserve mobile resource is the next preset mobile resource that the target robot needs to reach during its movement. By releasing the mobile resources that the target robot leaves and occupying the mobile resources that the target robot is about to reach, the preset mobile resources in the environment map are managed to avoid multiple robots occupying the same preset mobile resource at the same time, causing blockage or collision, and improving the safety and efficiency of multi-robot scheduling.
[0078] For example in Figure 6a , Figure 6b In the diagram, when robot A is at point 6, point 6 is robot A's current movement resource, and point 4 is robot A's reserve movement resource; when robot A moves to point 4, point 4 is robot A's current movement resource, and point 7 is robot A's reserve movement resource, and so on.
[0079] In some implementations, controlling the movement of at least one of the target robots based on the target mobility resources, and updating the target mobility resources of each of the target robots during the movement of the target robots, includes:
[0080] In the case where the target mobile resource is occupied by a collaborative robot, the first avoidance cost of the target robot and the second avoidance cost of at least one collaborative robot occupying the target mobile resource are obtained.
[0081] Based on the first avoidance cost and the second avoidance cost, determine the avoidance robot that will perform the avoidance operation and the corresponding target avoidance path from the target robot and the cooperative robot;
[0082] The robot is instructed to perform an avoidance operation according to the target avoidance path.
[0083] Please refer to Figures 7a-7c , Figures 7a-7c The first embodiment of this application provides a schematic diagram of a multi-robot congestion situation.
[0084] like Figures 7a-7c As shown, congestion between multiple robots can be categorized into head-on congestion, circular congestion, and regional congestion. Figure 7a In the case of congestion in opposite directions, robot A and robot B need to travel towards each other on the same path. This situation usually occurs when one of the robots needs to return to its starting position after completing its task. Figure 7b This refers to a circular traffic jam situation where two or more robots form a loop that rear-ends each other. This situation typically occurs in maps with dense road networks, such as QR code maps. Figure 7c In the case of regional congestion, two robots need to occupy the area occupied by the other. This situation generally occurs when the preset mobile resources are dense and adjacent, based on the expansion size.
[0085] Please refer to Figure 8 , Figure 8 This is a schematic diagram of a robot obstacle avoidance movement task provided in an embodiment of this application.
[0086] To resolve congestion, it is necessary to identify the robot with the lowest avoidance cost from among the multiple robots causing the congestion and instruct it to perform the avoidance operation. The avoidance cost can be the distance traveled to perform the avoidance movement task, etc., and is not limited here.
[0087] like Figure 8 As shown, if robot b has a smaller avoidance cost compared to robot a, then robot b is instructed to perform an avoidance movement task.
[0088] In some implementations, determining the avoidance robot and the corresponding target avoidance path from the target robot and the cooperative robot based on the first avoidance cost and the second avoidance cost includes:
[0089] The target robot or the cooperative robot with the lowest avoidance cost is determined as the avoidance robot based on the first avoidance cost and the second avoidance cost;
[0090] Add the obstacle avoidance robot's obstacle avoidance movement task to the head of the path planning task queue.
[0091] For example, after identifying the obstacle avoidance task, the obstacle avoidance task is added to the head of the path planning task queue, and the obstacle avoidance task is executed first to release the robot affected by congestion from the congestion as soon as possible, thereby improving the scheduling efficiency of multiple robots.
[0092] The multi-robot scheduling method provided in this application acquires an environmental map of the current environment and determines preset movement resources in the current environment based on the environmental map; obtains the tasks to be planned for the target robot based on a preset path planning task queue; performs path planning operations based on the environmental map and the starting and target positions of the tasks to be planned to obtain the movement path of the target robot; determines the target movement resources required for the target robot to move based on the movement path based on the movement path and the preset movement resources; controls the movement of at least one target robot based on the target movement resources, and updates the target movement resources of each target robot during the movement process. By controlling the target robot to move gradually using movement resources, and because each movement resource can only be occupied by one robot at a time, it can avoid congestion and collisions between multiple robots in the same area, thus improving the movement safety and efficiency of the robots.
[0093] This application also provides a multi-robot scheduling system, which includes at least one target robot and a multi-robot scheduling device communicatively connected to each of the target robots. The multi-robot scheduling device is used to execute the multi-robot scheduling method as described in any one of the embodiments of this application.
[0094] For example, a multi-robot scheduling device can communicate with multiple target robots in the same environment via WiFi, Bluetooth, or other means, thereby enabling path planning and resource allocation for multiple target robots in the same environment, improving the orderliness of multi-robot scheduling, avoiding congestion and collisions among multiple robots in the same area, and enhancing the safety of robot movement.
[0095] For example, the working principle of the multi-robot scheduling device can be referred to the multi-robot scheduling method described in any one of the embodiments of this application, and will not be repeated here.
[0096] It should be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of the application. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.
[0097] It should also be understood that the term "and / or" as used in this specification and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes such combinations. It should be noted that, herein, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.
[0098] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments. The above descriptions are merely specific implementations 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 equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered 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 scheduling method, characterized in that, The method includes: Obtain an environment map of the current environment, and determine the preset mobile resources in the current environment based on the environment map; Based on a pre-set path planning task queue, obtain the tasks to be planned for the target robot; Based on the environmental map and the starting and target positions of the task to be planned, a path planning operation is performed to obtain the movement path of the target robot; Based on the target robot's movement path and the preset movement resources, determine the target movement resources required for the target robot to move based on the movement path; Control at least one of the target robots to move based on the target movement resources, and update the target movement resources of each target robot during the movement of the target robots; Among them, none of the robots can turn in place; the bidirectional, continuous, non-branching path in the environment map that can only accommodate one robot is a bidirectional movement channel, and the preset movement resources contained in the bidirectional movement channel are bidirectional movement resources; The step of determining the target movement resources required for the target robot to move based on the movement path and the preset movement resources includes: Based on the target robot's movement path and the preset movement resources, determine the candidate movement resources required for the target robot to move based on the movement path; Obtain the resource attributes of the candidate mobile resources, the resource attributes including: unidirectional mobile resources and bidirectional mobile resources, wherein the bidirectional mobile resources are mobile resources in a bidirectional mobile channel; If the resource attribute of the candidate mobile resource is the bidirectional mobile resource, the bidirectional mobile channel to which the bidirectional mobile resource belongs is determined as the target mobile resource; When the resource attribute of the candidate mobile resource is the bidirectional mobile resource, determining the bidirectional mobile channel to which the bidirectional mobile resource belongs as the target mobile resource further includes: When the bidirectional movement channel is occupied by a collaborative robot, a first direction of movement of the collaborative robot in the bidirectional movement channel is determined; The target movement resources of the target robot are determined based on the first movement direction and the second movement direction of the target robot. Determining the target movement resources of the target robot based on the first movement direction and the second movement direction of the target robot includes: When the first direction of movement is the same as the second direction of movement of the target robot, at least a portion of the bidirectional movement channel is identified as the target movement resource; When the first direction of movement differs from the second direction of movement of the target robot, the target robot is instructed to leave the entrance of the bidirectional movement channel and wait for the bidirectional movement resource to be released from occupation.
2. The multi-robot scheduling method according to claim 1, characterized in that, The target movement resources include current movement resources and reserve movement resources. Controlling the movement of at least one target robot based on the target movement resources, and updating the target movement resources of each target robot during the movement of the target robots, includes: When the target robot moves from the first position corresponding to the current movement resource to the second position corresponding to the preparatory movement resource, the occupation of the current movement resource is released; The prepared movement resource is updated to the new current movement resource, and the new prepared movement resource is determined based on the position of the current movement resource in the movement path.
3. The multi-robot scheduling method according to claim 1, characterized in that, The step of acquiring an environment map of the current environment and determining preset mobile resources in the current environment based on the environment map includes: Based on the robot size of the target robot, determine the resource size of the preset mobile resource; The preset mobile resource is determined in the environment map based on the resource size.
4. The multi-robot scheduling method according to claim 3, characterized in that, Determining the resource size of the preset mobile resource based on the robot size of the target robot includes: Use the robot size of the target robot as the resource size of the preset mobile resource; or The expanded size of the robot after it has expanded in at least one target direction is taken as the resource size of the preset mobile resource.
5. The multi-robot scheduling method according to claim 1, characterized in that, The step of controlling the movement of at least one of the target robots based on the target movement resources, and updating the target movement resources of each of the target robots during the movement of the target robots, includes: In the case where the target mobile resource is occupied by a collaborative robot, the first avoidance cost of the target robot and the second avoidance cost of at least one collaborative robot occupying the target mobile resource are obtained. Based on the first avoidance cost and the second avoidance cost, determine the avoidance robot that will perform the avoidance operation and the corresponding target avoidance path from the target robot and the cooperative robot; The robot is instructed to perform an avoidance operation according to the target avoidance path.
6. The multi-robot scheduling method according to claim 5, characterized in that, The step of determining the avoidance robot and the corresponding target avoidance path from the target robot and the cooperative robot based on the first avoidance cost and the second avoidance cost includes: The target robot or the cooperative robot with the lowest avoidance cost is determined as the avoidance robot based on the first avoidance cost and the second avoidance cost; Add the obstacle avoidance robot's obstacle avoidance movement task to the head of the path planning task queue.
7. A multi-robot scheduling system, characterized in that, The multi-robot scheduling system includes at least one target robot and a multi-robot scheduling device communicatively connected to each of the target robots. The multi-robot scheduling device is used to execute the multi-robot scheduling method as described in any one of claims 1-6.