Distributed multi-machine scheduling method and system of mobile robot and storage medium

By generating heat maps and path maps, analyzing the projection of the robot in the basic topology map, judging and handling conflict types, the problem of inefficient scheduling in the existing technology is solved, and more efficient multi-machine scheduling is achieved.

CN119759039AActive Publication Date: 2025-04-04SHANGHAI DOLPHIN SIKAO ARTIFICIAL INTELLIGENCE TECHNOLOGY CO LTD

Patent Information

Application Number
CN202510266019.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-07
Publication Date
2025-04-04
Estimated Expiration
2045-03-07

AI Technical Summary

Technical Problem

The existing distributed multi-machine scheduling methods of mobile robots fail to effectively analyze and handle the types of conflicts between robots, resulting in inefficient scheduling.

Method used

The basic topology map is obtained through the prior map, the robot information is obtained, the heat map and path map are generated, the conflict type is judged based on the projection of the robot in the basic topology map, and the conflict type is scheduled and processed according to different conflict types.

Benefits of technology

It improves the efficiency of multi-machine scheduling, increases the scheduling flexibility of the robot, and can more effectively plan conflict-free paths to avoid collisions or deadlocks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119759039A_ABST
    Figure CN119759039A_ABST
Patent Text Reader

Abstract

The invention discloses a distributed multi-machine scheduling method and system for mobile robots and a storage medium. The method comprises the following steps: obtaining a basic topological map through a prior map; robot information is obtained, the robot information comprises robot IDs, map names, robot poses and robot topological paths, and projections of all robots in the basic topological map are obtained; obtaining a thermodynamic diagram and a path diagram for scheduling according to the basic topological map and the robot information; and according to the projection of each robot in the basic topological map, conflict types of the robots are judged, and conflict processing is carried out according to the conflict types. According to the method, the conflict types of the robots can be judged, scheduling is carried out according to different conflict types, the scheduling flexibility of the robots is improved, and the multi-machine scheduling efficiency is greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of robot scheduling, and the present invention relates to a distributed multi-machine scheduling method, system and storage medium of a mobile robot. Background Art

[0002] In order to allow multiple mobile robots to navigate in the environment, scheduling is required. Distributed scheduling methods do not require modification of the environment. They only require the robot to be equipped with a wireless transmitter to broadcast information to the surrounding area and receive information broadcast by other robots. Distributed scheduling of commercial robots can be achieved through calculation. Distributed multi-machine scheduling of mobile robots is an important research direction in the field of robotics, especially in warehousing and logistics, intelligent manufacturing, unmanned driving, search and rescue and other scenarios. Its core goal is to enable multiple robots to complete tasks efficiently and collaboratively in a distributed environment through reasonable task allocation and path planning. In distributed multi-machine scheduling, the main challenge is how to plan a conflict-free path for each robot to avoid collision or deadlock. However, most existing methods do not analyze the conflict type, which affects the efficiency of multi-machine scheduling to a certain extent. Summary of the invention

[0003] The purpose of the present invention is to provide a distributed multi-machine scheduling method, system and storage medium for mobile robots, which can judge the conflict type of the robot, schedule according to different conflict types, increase the scheduling flexibility of the robot, and greatly improve the efficiency of multi-machine scheduling.

[0004] The technical solution to achieve the purpose of the present invention is: A distributed multi-machine scheduling method for mobile robots comprises the following steps: S01: Obtain the basic topological map through the prior map; S02: Obtain robot information, including robot ID, map name, robot position, and robot topological path, and obtain the projection of each robot in the basic topological map; S03: Obtain a heat map and a path map for scheduling based on the basic topology map and robot information; S04: judging the conflict type of the robots according to the projection of each robot in the basic topology map, and performing conflict handling according to the conflict type.

[0005] In the preferred technical solution, the method for generating the heat map in step S03 includes: Obtain the pre-order topological points connected to each topological point in each path to form a pre-order set; Obtain the subsequent topological points connected to the topological point in each path to form a post-order set; If the elements of the preorder set are different, it means that the topological point has a conflict, and the degree of conflict is expressed by the thermal value Indicates that the thermal value is equal to the number of elements in the previous set; if each element of the previous set appears in the subsequent set, it means that the topological point has a conflict, and the thermal value is equal to the number of elements in the previous set. The thermal value of the topological point without conflict in each path is 1, and the thermal value of the topological point that does not pass through the robot path is 0.

[0006] In the preferred technical solution, obtaining the projection of each robot in the basic topological map in step S02 includes: The robot selects the first two points of the path during the projection process in the basic topological map. The first path point is , the second path point is , the projection point is ; The calculated ratio of the distance between the projection point and the second path point is the ratio of the two points, that is, <first path point, second path, ratio>, ratio for: ;

[0007] Calculate the distance of the robot's projection distance path to the second path point : .

[0008] In the preferred technical solution, the conflict types in step S04 include: In the heat map, the heat value of each robot path topological point is obtained, and the first point of the path is defined as point 0, the second point as point 1, and the Nth point as point N-1. The method for judging the conflict type is as follows: a. If the heat value of each topological point in the robot path is 1, the robot is considered to have no conflict; if the heat value of point 0 is greater than 1, and the heat values ​​of subsequent topological points are all equal to 1, the robot is considered to have no conflict; b. If the heat value of point 0 is greater than 1, and the heat values ​​of subsequent topological points are greater than 1, the robot is considered to be in conflict; c. If the heat value of point 0 is equal to 1, and the heat values ​​of subsequent topological points are greater than 1, the robot is considered to be before the conflict; Calculate the distance from the robot coordinates to the projection point , obtain the geometric relationship of the robot's path with the first path point and the second path point in the basic topological map, and determine whether the robot is within the path width or outside the path width; The conflict types are divided according to whether the robot is within the path width. The conflict types include no conflict state in the channel, pre-conflict state in the channel, conflict state in the channel, no conflict state outside the channel, pre-conflict state outside the channel, and conflict state outside the channel.

[0009] In the preferred technical solution, the conflict handling according to the conflict type in step S04 includes: The conflict status of each robot is counted. The robots within the path width obtain the set of robots that their path points pass through. If the current robot has no conflict, it continues to execute the task. If there is a conflict, the conflict type is determined. Before the conflict, the conflict type of other elements in the robot set is determined. If other robots are in conflict, they wait. Before all robots are in conflict, the distance between each robot and the conflict point is compared. The robot with the smallest distance continues the task, and the others wait. The robot in conflict calculates its nearest scheduling point to plan the scheduling path. After calculating the path, the paths of each robot are compared. The shortest one is scheduled, and the others wait. The scheduling point is defined as: starting from this topological point, at least three or more different topological points are connected, and the number of topological points that can be connected is And the distance between each topological point is greater than the threshold; the robot temporarily stops on the path between the scheduling point and the connecting topological point, and the distance from the scheduling point is greater than the threshold; The scheduling point available for scheduling meets the following conditions: 1. There is no path pointing to the scheduling point in the path map; 2. The number of robots temporarily parked at the scheduling point is less than .

[0010] In the preferred technical solution, the method for planning the scheduling path includes: in the basic topology map set Midpoint and The cost value Priority path function set by the user Defined together with distance: ;

[0011] The cost of the directed edges between the topological points arranged in sequence in the occupation sequence is set to infinity, and the cost of the directed edges formed by the topological points whose distance from each robot is less than the threshold and the topological points connected to them is set to infinity, and the cost of the edges between other two topological points is the distance; The Dijkstra algorithm is used to search for the robot on the topological map. The robot starts the breadth-first search from the projection of the robot on the topological map until a feasible scheduling point in the entire map is found. The scheduling point set is formed, and the topological path for each robot to reach the scheduling point is calculated by gradient descent. Calculate each path The cost is ; Find the scheduling point with the lowest cost in the scheduling point set to obtain the scheduling path.

[0012] The preferred technical solution further includes calculating the directed edges of the scheduled docking, and the method includes: The set of topological points connected to the scheduling point is analyzed. If the edge pointing from the topological point to the scheduling point is in the occupation sequence, the topological point is removed. Otherwise, the directed edge of the scheduling stop is determined to be the edge formed by the scheduling point and the topological point. If all the topological points connected to the scheduling point are removed, it means that the scheduling point is invalid. Continue to select a scheduling point with a higher cost from the scheduling point set and select the corresponding directed edge for the stop. If the scheduling path cannot be calculated, wait.

[0013] In the preferred technical solution, if the robot in conflict calculates the scheduling path and it is the shortest compared to the scheduling path of other robots, the robot will execute the scheduling and wait at the docking side, and use the Dijkstra algorithm to search the path to the target point in the basic topological map. If the thermal values ​​of the topological points in the path are all 1, the robot will continue to run to the target point, otherwise it will stop; if the robot waiting at the docking side blocks the operation of other robots, it is considered to be in conflict and the scheduling docking side is recalculated.

[0014] The present invention also discloses a distributed multi-machine scheduling system for a mobile robot, comprising a processor, wherein the distributed multi-machine scheduling method for a mobile robot is built into the processor.

[0015] The present invention further discloses a computer storage medium on which a computer program is stored. When the computer program is executed, the distributed multi-machine scheduling method of the mobile robot is implemented.

[0016] Compared with the prior art, the present invention has the following significant advantages: The present invention can judge the conflict type of the robot based on the projection of each robot in the basic topological map, the heat map and the path map, and perform scheduling according to different conflict types, which greatly improves the efficiency of multi-machine scheduling. Calculating and scheduling the docking edge can increase the scheduling flexibility of the robot. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 A flow chart of a distributed multi-machine scheduling method for mobile robots in a preferred embodiment; Figure 2 A specific implementation flow chart of distributed scheduling in a preferred embodiment; Figure 3 A basic topological map of a preferred embodiment; Figure 4 A thermal diagram of a preferred embodiment; Figure 5 A path diagram for a preferred embodiment; Figure 6 A schematic diagram of the projection in the basic topological map; Figure 7 This is a schematic diagram of conflict condition judgment. DETAILED DESCRIPTION

[0018] The principle of the present invention is that the present invention can judge the conflict type of the robot according to the projection of each robot in the basic topological map, the heat map and the path map, and perform scheduling according to different conflict types, which greatly improves the efficiency of multi-machine scheduling. Calculating and scheduling the docking edge can increase the scheduling flexibility of the robot.

[0019] Embodiment 1: like Figure 1 As shown, a distributed multi-machine scheduling method for mobile robots includes the following steps: S01: Obtain the basic topological map through the prior map; S02: Obtain robot information, including robot ID, map name, robot position, and robot topological path, and obtain the projection of each robot in the basic topological map; S03: Obtain a heat map and a path map for scheduling based on the basic topology map and robot information; S04: judging the conflict type of the robots according to the projection of each robot in the basic topology map, and performing conflict handling according to the conflict type.

[0020] In one embodiment, the method for generating the heat map in step S03 includes: Obtain the pre-order topological points connected to each topological point in each path to form a pre-order set; Obtain the subsequent topological points connected to the topological point in each path to form a post-order set; If the elements of the preorder set are different, it means that the topological point has a conflict, and the degree of conflict is expressed by the thermal value Indicates that the thermal value is equal to the number of elements in the previous set; if each element of the previous set appears in the subsequent set, it means that the topological point has a conflict, and the thermal value is equal to the number of elements in the previous set. The thermal value of the topological point without conflict in each path is 1, and the thermal value of the topological point that does not pass through the robot path is 0.

[0021] In one embodiment, obtaining the projection of each robot in the basic topological map in step S02 includes: The robot selects the first two points of the path during the projection process in the basic topological map. The first path point is , the second path point is , the projection point is ; The calculated ratio of the distance between the projection point and the second path point is the ratio of the two points, that is, <first path point, second path, ratio>, ratio for: ;

[0022] Calculate the distance of the robot's projection distance path to the second path point : .

[0023] In one embodiment, the conflict types in step S04 include: In the heat map, the heat value of each robot path topological point is obtained, and the first point of the path is defined as point 0, the second point as point 1, and the Nth point as point N-1. The method for judging the conflict type is as follows: a. If the heat value of each topological point in the robot path is 1, the robot is considered to have no conflict; if the heat value of point 0 is greater than 1, and the heat values ​​of subsequent topological points are all equal to 1, the robot is considered to have no conflict; b. If the heat value of point 0 is greater than 1, and the heat values ​​of subsequent topological points are greater than 1, the robot is considered to be in conflict; c. If the heat value of point 0 is equal to 1, and the heat values ​​of subsequent topological points are greater than 1, the robot is considered to be before the conflict; Calculate the distance from the robot coordinates to the projection point , obtain the geometric relationship of the robot's path with the first path point and the second path point in the basic topological map, and determine whether the robot is within the path width or outside the path width; The conflict types are divided according to whether the robot is within the path width. The conflict types include no conflict state in the channel, pre-conflict state in the channel, conflict state in the channel, no conflict state outside the channel, pre-conflict state outside the channel, and conflict state outside the channel.

[0024] In the preferred technical solution, the conflict handling according to the conflict type in step S04 includes: The conflict status of each robot is counted. The robots within the path width obtain the set of robots that their path points pass through. If the current robot has no conflict, it continues to execute the task. If there is a conflict, the conflict type is determined. Before the conflict, the conflict type of other elements in the robot set is determined. If other robots are in conflict, they wait. Before all robots are in conflict, the distance between each robot and the conflict point is compared. The robot with the smallest distance continues the task, and the others wait. The robot in conflict calculates its nearest scheduling point to plan the scheduling path. After calculating the path, the paths of each robot are compared. The shortest one is scheduled, and the others wait. The scheduling point is defined as: starting from this topological point, at least three or more different topological points are connected, and the number of topological points that can be connected is And the distance between each topological point is greater than the threshold; the robot temporarily stops on the path between the scheduling point and the connecting topological point, and the distance from the scheduling point is greater than the threshold; The scheduling point available for scheduling meets the following conditions: 1. There is no path pointing to the scheduling point in the path map; 2. The number of robots temporarily parked at the scheduling point is less than .

[0025] In one embodiment, the method for planning a scheduling path includes: Midpoint and The cost value Priority path function set by the user Defined together with distance: ;

[0026] The cost of the directed edges between the topological points arranged in sequence in the occupation sequence is set to infinity, and the cost of the directed edges formed by the topological points whose distance from each robot is less than the threshold and the topological points connected to them is set to infinity, and the cost of the edges between other two topological points is the distance; The Dijkstra algorithm is used to search for the robot on the topological map. The robot starts the breadth-first search from the projection of the robot on the topological map until a feasible scheduling point in the entire map is found. The scheduling point set is formed, and the topological path for each robot to reach the scheduling point is calculated by gradient descent. Calculate each path The cost is ; Find the scheduling point with the lowest cost in the scheduling point set to obtain the scheduling path.

[0027] In one embodiment, the method further includes calculating the directed edges of the scheduled docking, and the method includes: The set of topological points connected to the scheduling point is analyzed. If the edge pointing from the topological point to the scheduling point is in the occupation sequence, the topological point is removed. Otherwise, the directed edge of the scheduling stop is determined to be the edge formed by the scheduling point and the topological point. If all the topological points connected to the scheduling point are removed, it means that the scheduling point is invalid. Continue to select a scheduling point with a higher cost from the scheduling point set and select the corresponding directed edge for the stop. If the scheduling path cannot be calculated, wait.

[0028] In one embodiment, if the robot in conflict calculates a scheduling path and the scheduling path is the shortest compared to other robots, the robot will execute the scheduling and wait at the docking side, and use the Dijkstra algorithm to search and calculate the path to the target point in the basic topological map. If the thermal values ​​of the topological points in the path are all 1, the robot will continue to run to the target point, otherwise it will stop; if the robot waiting at the docking side blocks the operation of other robots, it is considered to be in conflict and the scheduling docking side is recalculated.

[0029] In another embodiment, a computer storage medium stores a computer program, which, when executed, implements the above-mentioned distributed multi-machine scheduling method for a mobile robot.

[0030] The distributed multi-machine scheduling method for the mobile robot can adopt any one of the distributed multi-machine scheduling methods for the mobile robot mentioned above, and the specific implementation will not be repeated here.

[0031] Another embodiment, a distributed multi-machine scheduling system for a mobile robot, includes a processor, wherein the processor has the distributed multi-machine scheduling method for a mobile robot built in.

[0032] Specifically, the following is a description of the workflow of a distributed multi-machine scheduling system for a mobile robot by taking a preferred embodiment as an example: In order to allow multiple mobile robots to navigate in the environment, scheduling is required. Distributed scheduling methods do not require any modification of the environment. They only require the robot to be equipped with a wireless transmitter to broadcast information to the surrounding area and receive information broadcast by other robots. Distributed scheduling of commercial robots can be achieved through calculation. Figure 2 As shown in the figure, the specific implementation process of distributed scheduling is as follows: a. The robot information shared through wireless devices includes robot ID, map name, robot position, and robot path.

[0033] b. The information obtained through the prior map is used as the basic topological map. The map contains information about the connectivity between path points, path width, and path number.

[0034] c. Through a, we can get the projection of each robot in the basic topological map.

[0035] d. Based on the basic topology map and the information shared by wireless devices, a heat map and path map for scheduling can be obtained.

[0036] e. Based on the information in d, the robot's conflict type can be judged.

[0037] Conflict resolution is performed based on the information of e.

[0038] Using distributed scheduling requires modeling the robot's environment, such as Figure 3 As shown in the figure, the modeling includes the path direction of the robot's traversable path, the width of the obstacle avoidance path, and the starting and ending points of each path, forming a network of basic paths for the robot to run. These networks can be described by the basic topology map. The basic topology map includes the directional connectivity between topological points, the width of the path formed by two topological nodes, which can be set according to the specific scenario, and the coordinates of the topological points. Define the basic topology map is a set of topological points, each of which The connection points constitute a set: ;

[0039] Among them, → indicates that the index value is The one-way connection index value of the topological point is topological point.

[0040] The information broadcasted via wireless information includes serial numbers (IDs) indicating different robots, the current position of the robot, and the robot path consisting of a sequence of topological points. The path represents a series of path points that the robot has passed through. The purpose of wireless information broadcasting is to share information about all robots involved in scheduling calculations within the networking area.

[0041] By adding the paths received from other robots' broadcast information to the basic topology map, a heat map and a path map can be generated. The heat map is used to indicate the conflict situation of each topological point in the network. The higher the heat value, the more severe the conflict situation. The path map is used to describe the paths between the robot and other robots and the path occupancy direction.

[0042] like Figure 4 As shown, the heat map represents the degree of conflict at each topological point, taking into account the ordered set of all robot broadcast paths. Each topological point in the path. Enumerate the previous topological points connected to the topological point in each path to form a pre-order set .

[0043] ;

[0044] in, The index value of the topological point.

[0045] The subsequent topological points connected to the topological point in each path are enumerated to form a post-order set. If the elements of the pre-order set are different, it means that the topological point has a conflict, and the degree of conflict is expressed by the thermal value Indicates that the thermal value is equal to the number of elements in the previous set. If each element of the previous set appears in the subsequent set, it means that the topological point has a conflict, and the thermal value is equal to the number of elements in the previous set. The thermal value of the topological point without conflict in each path is 1, and the thermal value of the topological point that does not pass through the robot path is 0.

[0046] Each robot forms a path graph after receiving the path information of other robots, such as Figure 5 As shown, the path graph contains an ordered topological point sequence of each robot path, so the inaccessible topological point sequence (occupancy sequence) in the path graph is the reverse sequence of the ordered topological point sequence. Each topological point in the path graph records the serial number (ID) of each robot.

[0047] By comprehensively considering the basic topological map, path map, and heat map, the operation information, conflict information, and path information of each robot at the current moment can be summarized, and the conflict judgment of each robot can be performed after the summary.

[0048] Conflict judgment is divided into two parts: the first part is the projection of the robot in the basic topology map, and the second part is to judge whether the robot is in a. non-conflict state, b. pre-conflict state, c. conflict state, d. non-conflict state outside the channel, e. pre-conflict state outside the channel, f. conflict state outside the channel through the projection results.

[0049] The robot selects the first two points of the path during the projection process in the base topology map, such as Figure 6 As shown, the first path point is , the second path point is , the projection point is The obtained projection point is the ratio of the distance between the two points and the second path point, that is, <first path point, second path, ratio>, ratio for: ;

[0050] The above information can be used to obtain the distance between the robot projection and the second path point. : ;

[0051] In the thermal map, the thermal value of each robot path topology point can be obtained as the basis for judging the conflict condition. Figure 7 As shown, the first point of the path is defined as point 0, the second point as point 1, and the Nth point as point N-1. The following definitions are made: a. If the thermal value of each topological point in the robot path is 1, the robot is considered to have no conflict. If the thermal value of point 0 is greater than 1, and the thermal values ​​of subsequent topological points are all equal to 1, the robot is considered to have no conflict. b. If the thermal value of point 0 is greater than 1, and the thermal values ​​of subsequent topological points are greater than 1, the robot is considered to be in conflict. c. If the thermal value of point 0 is equal to 1, and the thermal values ​​of subsequent topological points are greater than 1, the robot is considered to be before the conflict.

[0052] Calculate the distance of the robot's projection , we can get the geometric relationship between the robot and the first and second path points in the basic topological map.

[0053] The first waypoint is , the second path point is Project. The straight line formed by the two points is: The robot coordinates are Distance to the projection point for: ;

[0054] Each path formed by two connected path points has a path width. The path width formed by the first and second path points in the basic topology map is ,if If the robot is inside the path width (inside the channel), it is considered that the robot is outside the path width (outside the channel).

[0055] Robots outside the road width have the lowest priority. Robots outside the road width need to wait if there is a topological point with a non-zero thermal value in its topological path, otherwise they can pass.

[0056] The conflict status of each robot in the channel is counted. The robots in the channel obtain the set of robots that their path points pass through. If the current robot has no conflict, it continues to execute the task. If there is a conflict, the conflict type is determined. Before the conflict, the conflict type of other elements in the robot set is determined. If other robots are in conflict, they wait. Before all robots are in conflict, the distance between each robot and the conflict point is compared. The robot with the smallest distance continues the task, and the others wait. Robots in conflict need to calculate their nearest scheduling point to plan the scheduling path. After calculating the path, the paths of each robot are compared. The shortest one is scheduled, and the others wait.

[0057] The definition of a scheduling point is: starting from this topological point, at least three or more different topological points can be connected. The number of topological points that can be connected is The robot can temporarily stop at the scheduling point and the path connecting the topological points, and the distance from the scheduling point is greater than the threshold. The scheduling point available for scheduling must meet the following conditions: 1. There is no path pointing to the scheduling point in the path map. 2. The number of robots temporarily stopping at the scheduling point is less than .

[0058] The calculation of the scheduling path adopts the Dijkstra search method of the directed weighted graph. This method can flexibly configure the cost value of each edge in each direction in the graph structure. Midpoint and The cost value Priority road weight function that can be set by the user Defined together with distance: ;

[0059] The cost of the directed edges between the topological points arranged in sequence in the occupation sequence is set to infinity (i.e., one side is not passable, and the direction is from the previous topological point to the next topological point), and the cost of the directed edges formed by the topological points connected to the topological points whose distance from each robot is less than the threshold is set to infinity. (That is, the two sides are impassable, and the direction from the previous topological point to the next topological point and the direction from the next topological point to the previous topological point are both impassable). Combined with the connectivity of the topological point sequence in the basic topological map (the unilateral connectivity and bilateral connectivity of each topological point, the cost of the unconnected edge is infinite). The cost of the edge between other two topological points is the distance. The Dijkstra algorithm is used to search the robot's projection on the topological map as the starting point to start the breadth-first search until a feasible scheduling point in the entire map is found, forming a scheduling point set, and the topological path for each robot to reach the scheduling point is calculated by gradient descent. Each path The cost is .

[0060] Select the scheduling point with the lowest cost from the set of scheduling points found to obtain the scheduling path (topological path). The corresponding topological path The cost for: ;

[0061] Start calculating the directed edges of the scheduling stop: Analyze the set of topological points connected to the scheduling point. If the edge from the topological point to the scheduling point is in the occupancy sequence of 6, remove the topological point. Otherwise, determine that the directed edge of the scheduling stop is the edge formed by the scheduling point and the topological point. If all the topological points connected to the scheduling point are removed, it means that the scheduling point is invalid. Continue to select a scheduling point with a higher cost from the scheduling point set and select the directed edge of the corresponding stop. If the scheduling path cannot be calculated, wait.

[0062] If the robot in conflict calculates the dispatch path and it is the shortest dispatch path compared to other robots, it will execute the dispatch and wait at the docking side. It will use Dijkstra algorithm to search and calculate the path to the target point in the basic topological map. If the heat value of the topological points in the path is 1, the robot will continue to run to the target point, otherwise it will stop. If the robot waiting at the docking side blocks the operation of other robots, it is considered in conflict and the dispatch docking side will be recalculated to increase the scheduling flexibility of the robot.

[0063] The above embodiments are preferred implementation modes of the present invention, but the implementation modes of the present invention are not limited to the above embodiments. Any other changes, modifications, substitutions, combinations, and simplifications made without departing from the spirit and principles of the present invention shall be equivalent replacement modes and shall be included in the protection scope of the present invention.

Claims

1. A distributed multi-machine scheduling method for mobile robots, characterized in that: The following steps are involved: S01: Obtain the basic topological map through the prior map; S02: Obtain robot information, including robot ID, map name, robot position, and robot topological path, and obtain the projection of each robot in the basic topological map; S03: Obtain a heat map and a path map for scheduling based on the basic topology map and robot information; S04: judging the conflict type of the robots according to the projection of each robot in the basic topology map, and performing conflict handling according to the conflict type.

2. The distributed multi-machine scheduling method of mobile robots according to claim 1, characterized in that: The method for generating the heat map in step S03 includes: Obtain the pre-order topological points connected to each topological point in each path to form a pre-order set; Obtain the subsequent topological points connected to the topological point in each path to form a post-order set; If the elements of the preorder set are different, it means that the topological point has a conflict, and the degree of conflict is expressed by the thermal value Indicates that the thermal value is equal to the number of elements in the previous set; if each element of the previous set appears in the subsequent set, it means that the topological point has a conflict, and the thermal value is equal to the number of elements in the previous set. The thermal value of the topological point without conflict in each path is 1, and the thermal value of the topological point that does not pass through the robot path is 0.

3. The distributed multi-machine scheduling method of mobile robots according to claim 1, characterized in that: The projection of each robot in the basic topological map obtained in step S02 includes: The robot selects the first two points of the path during the projection process in the basic topological map. The first path point is , the second path point is , the projection point is ; The calculated ratio of the distance between the projection point and the second path point is the ratio of the two points, that is, <first path point, second path, ratio>, ratio for: , Calculate the distance of the robot's projection distance path to the second path point : 。 4. The distributed multi-machine scheduling method of mobile robots according to claim 1, characterized in that: The conflict types in step S04 include: In the heat map, the heat value of each robot path topological point is obtained, and the first point of the path is defined as point 0, the second point as point 1, and the Nth point as point N-1. The method for judging the conflict type is as follows: a. If the heat value of each topological point in the robot path is 1, the robot is considered to have no conflict; if the heat value of point 0 is greater than 1, and the heat values ​​of subsequent topological points are all equal to 1, the robot is considered to have no conflict; b. If the heat value of point 0 is greater than 1, and the heat values ​​of subsequent topological points are greater than 1, the robot is considered to be in conflict; c. If the heat value of point 0 is equal to 1, and the heat values ​​of subsequent topological points are greater than 1, the robot is considered to be before the conflict; Calculate the distance from the robot coordinates to the projection point , obtain the geometric relationship of the robot's path with the first path point and the second path point in the basic topological map, and determine whether the robot is within the path width or outside the path width; The conflict types are divided according to whether the robot is within the path width. The conflict types include no conflict state in the channel, pre-conflict state in the channel, conflict state in the channel, no conflict state outside the channel, pre-conflict state outside the channel, and conflict state outside the channel.

5. The distributed multi-machine scheduling method of mobile robots according to claim 1, characterized in that: The conflict handling according to the conflict type in step S04 includes: The conflict status of each robot is counted. The robots within the path width obtain the set of robots that their path points pass through. If the current robot has no conflict, it continues to execute the task. If there is a conflict, the conflict type is determined. Before the conflict, the conflict type of other elements in the robot set is determined. If other robots are in conflict, they wait. Before all robots are in conflict, the distance between each robot and the conflict point is compared. The robot with the smallest distance continues the task, and the others wait. The robot in conflict calculates its nearest scheduling point to plan the scheduling path. After calculating the path, the paths of each robot are compared. The shortest one is scheduled, and the others wait. The scheduling point is defined as: starting from this topological point, at least three or more different topological points are connected, and the number of topological points that can be connected is And the distance between each topological point is greater than the threshold; the robot temporarily stops on the path between the scheduling point and the connecting topological point, and the distance from the scheduling point is greater than the threshold; The scheduling point available for scheduling meets the following conditions:

1. There is no path pointing to the scheduling point in the path map; 2. The number of robots temporarily parked at the scheduling point is less than .

6. The distributed multi-machine scheduling method of mobile robots according to claim 5, characterized in that: The method for planning the scheduling path includes: Midpoint and The cost value Priority path function set by the user Defined together with distance: , The cost of the directed edges between the topological points arranged in sequence in the occupation sequence is set to infinity, and the cost of the directed edges formed by the topological points whose distance from each robot is less than the threshold and the topological points connected to them is set to infinity, and the cost of the edges between other two topological points is the distance; The Dijkstra search method is used to start the breadth-first search from the robot's projection on the topological map until a feasible scheduling point in the entire map is found, forming a scheduling point set, and the topological path for each robot to reach the scheduling point is calculated by gradient descent. Calculate each path The cost is ; Find the scheduling point with the lowest cost in the scheduling point set to obtain the scheduling path.

7. The distributed multi-machine scheduling method of mobile robots according to claim 5, characterized in that: It also includes calculating the directed edges of the scheduled stops, including: The set of topological points connected to the scheduling point is analyzed. If the edge pointing from the topological point to the scheduling point is in the occupation sequence, the topological point is removed. Otherwise, the directed edge of the scheduling stop is determined to be the edge formed by the scheduling point and the topological point. If all the topological points connected to the scheduling point are removed, it means that the scheduling point is invalid. Continue to select a scheduling point with a higher cost from the scheduling point set and select the corresponding directed edge for the stop. If the scheduling path cannot be calculated, wait.

8. The distributed multi-machine scheduling method of mobile robots according to claim 5, characterized in that: If the robot in conflict calculates the scheduling path and it is the shortest compared to the scheduling paths of other robots, it will execute the scheduling and wait at the docking side. It will use Dijkstra search to calculate the path to the target point in the basic topological map. If the thermal values ​​of the topological points in the path are all 1, the robot will continue to run to the target point, otherwise it will stop. If the robot waiting at the docking side blocks the operation of other robots, it is considered to be in conflict and the scheduling docking side is recalculated.

9. A distributed multi-machine scheduling system for mobile robots, characterized in that: It comprises a processor, wherein the distributed multi-machine scheduling method for mobile robots according to any one of claims 1 to 8 is built into the processor.

10. A computer storage medium having a computer program stored thereon, characterized in that: When the computer program is executed, the distributed multi-machine scheduling method for mobile robots described in any one of claims 1-8 is implemented.

Citation Information

Patent Citations

  • Distributed multi-vehicle cooperative behavior decision-making method and system

    CN114187781A

  • Multi-agricultural machine cooperative global path conflict detection method based on topological map and time window

    CN114705194A

  • Avoidance method for multi-robot operation scene and robot applying avoidance method

    CN114706393A

  • Route guidance generation apparatus and method

    US20020103599A1

  • Automated guided vehicle scheduling method, electronic device and computer-readable storage medium

    US20230152820A1

Cited By

  • Path planning method, path planning device, autonomous mobile system and storage medium

    CN120491652A