Multi-robot path planning method and device

By acquiring information on multiple robots waiting to be driven, predicting and filtering conflicting robots, and performing path replanning, the problem of frequent path conflicts in the logistics and warehousing environment is solved, and the efficiency of robot driving is improved.

CN116184996BActive Publication Date: 2026-04-28BEIJING GEEKPLUS TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING GEEKPLUS TECH CO LTD
Filing Date
2022-09-07
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

In existing technologies, autonomous mobile robots frequently experience dynamic events in logistics and warehousing environments, leading to frequent path conflicts that affect the robot's normal operation and work efficiency. Existing path planning methods are unable to effectively solve these problems.

Method used

By acquiring the driving information of multiple robots, predicting the conflict information of each robot, statistically analyzing and filtering the target robots that meet the replanning conditions, and performing path replanning, conflicts can be avoided.

Benefits of technology

Before potential conflicts occur among robots, conflicts can be avoided appropriately, improving the efficiency of path replanning and ensuring the normal operation of the robots.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116184996B_ABST
    Figure CN116184996B_ABST
Patent Text Reader

Abstract

The application provides a multi-robot path planning method and device, and the multi-robot path planning method comprises the following steps: obtaining to-be-traveled information of multiple robots; predicting conflict information of each robot according to the to-be-traveled information of each robot; counting the conflict information of the robot that occurs the first conflict, and determining a target robot that meets a re-planning condition corresponding to the first conflict according to the counting result, wherein the first conflict is any type of conflict; and re-planning a path of the target robot according to the first conflict. According to the obtained conflict between each robot and other robots, the conflict information of each robot is predicted, the conflict information of the robot that occurs the first conflict is counted, the target robot that meets the re-planning condition corresponding to the first conflict is determined, and then the path of the target robot is re-planned according to the first conflict, so that the conflict of each robot can be predicted and the path can be re-planned.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of warehousing technology, and in particular to a multi-robot path planning method. The invention also relates to a multi-robot path planning device, a computing device, and a computer-readable storage medium. Background Technology

[0002] As logistics warehouses become increasingly intelligent and automated, autonomous mobile robots (AGVs) are taking on more and more handling and picking tasks. To improve the efficiency of handling and picking by AGVs, rationally planning the paths of AGVs has become a key research direction in the field of warehousing technology.

[0003] In existing technologies, distributed robot path planning is commonly used for autonomous mobile robots. When planning the path for a single autonomous mobile robot, the path planning is carried out by using a reservation table or the robot's driving status on a full map. However, due to the frequent occurrence of dynamic events in the logistics and warehousing environment, such as stopping to avoid oncoming traffic, braking and deceleration, starting and accelerating, etc., many unpredictable path conflicts will occur during the robot's driving process, causing the robot to be unable to drive and work normally. Therefore, there is an urgent need for a more reasonable multi-robot path planning method. Summary of the Invention

[0004] In view of this, embodiments of the present invention provide a multi-robot path planning method to address the technical deficiencies existing in the prior art. Embodiments of the present invention also provide a multi-robot path planning apparatus, a computing device, and a computer-readable storage medium.

[0005] According to a first aspect of the present invention, a multi-robot path planning method is provided, comprising:

[0006] Obtain the driving information of multiple robots;

[0007] Based on the driving information of each robot, predict the conflict information of each robot, including the conflict between the robot and other robots.

[0008] The conflict information of the robots that have the first conflict is statistically analyzed, and the target robot whose statistical results meet the replanning conditions corresponding to the first conflict is identified. The first conflict can be any type of conflict.

[0009] Based on the first conflict, the target robot undergoes path replanning.

[0010] According to a second aspect of the present invention, a multi-robot path planning apparatus is provided, comprising:

[0011] The acquisition module is configured to acquire the driving information of multiple robots;

[0012] The prediction module is configured to predict the conflict information of each robot based on the driving information of each robot, wherein the conflict information includes the conflict between the robot and other robots.

[0013] The determination module is configured to statistically analyze the conflict information of the robot that has experienced the first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict is any type of conflict;

[0014] The replanning module is configured to replan the path of the target robot based on the first conflict.

[0015] According to a third aspect of the present invention, a computing device is provided, comprising:

[0016] Memory and processor;

[0017] The memory is used to store computer-executable instructions, and the processor executes the computer-executable instructions to implement the steps of the multi-robot path planning method.

[0018] According to a fourth aspect of the present invention, a computer-readable storage medium is provided that stores computer-executable instructions which, when executed by a processor, implement the steps of the multi-robot path planning method.

[0019] This invention provides a multi-robot path planning method that acquires the driving information of multiple robots; predicts the conflict information of each robot based on the driving information, wherein the conflict information includes conflicts between robots; statistically analyzes the conflict information of robots experiencing a first conflict, and determines the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict can be any type of conflict; and replans the path of the target robot based on the first conflict. By acquiring the driving information of multiple robots, predicting the conflicts between each robot and other robots, and statistically analyzing the conflict information of robots experiencing a first conflict, the method determines the target robot whose statistical results meet the replanning conditions corresponding to the first conflict. In other words, before a conflict may occur, potential conflicts are predicted, and then the robots that may experience conflicts are screened. The target robot whose statistical results of conflict information meet the replanning conditions corresponding to the first conflict is selected for path replanning. This method replans the path of the target robot before a conflict may occur, which can reasonably avoid the occurrence of conflicts, and the target robot whose path is replanned meets the replanning conditions, resulting in higher replanning efficiency. Attached Figure Description

[0020] Figure 1 This is a schematic diagram of the system structure of a multi-robot path planning method provided in an embodiment of the present invention;

[0021] Figure 2 This is a flowchart of a multi-robot path planning method provided in an embodiment of the present invention;

[0022] Figure 3a This is a schematic diagram of a conflict in a multi-robot path planning method provided in an embodiment of the present invention;

[0023] Figure 3b This is a schematic diagram of a following conflict in a multi-robot path planning method provided by an embodiment of the present invention;

[0024] Figure 3c This is a schematic diagram of cross-conflict in a multi-robot path planning method provided by an embodiment of the present invention;

[0025] Figure 3d This is a schematic diagram of dwell conflict in a multi-robot path planning method provided by an embodiment of the present invention;

[0026] Figure 4 This is a flowchart illustrating the handling of opposing conflicts in a multi-robot path planning method according to an embodiment of the present invention.

[0027] Figure 5 This is a flowchart illustrating the handling of intersection and following conflicts in a multi-robot path planning method provided by an embodiment of the present invention;

[0028] Figure 6 This is a basic flowchart of a multi-robot path planning method provided in an embodiment of the present invention;

[0029] Figure 7a This is a flowchart of a multi-robot path planning method provided in an embodiment of the present invention;

[0030] Figure 7b This is a schematic diagram illustrating robot-to-be-driven information during the processing of a multi-robot path planning method according to an embodiment of the present invention.

[0031] Figure 8 This is a schematic diagram of the structure of a multi-robot path planning device provided in an embodiment of the present invention;

[0032] Figure 9 This is a structural block diagram of a computing device provided in an embodiment of the present invention. Detailed Implementation

[0033] Numerous specific details are set forth in the following description to provide a full understanding of the invention. However, the invention can be practiced in many other ways different from those described herein, and those skilled in the art can make similar extensions without departing from the spirit of the invention. Therefore, the invention is not limited to the specific embodiments disclosed below.

[0034] The terminology used in one or more embodiments of the present invention is for the purpose of describing particular embodiments only and is not intended to limit the scope of the invention. The singular forms “a,” “the,” and “the” used in one or more embodiments of the invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” used in one or more embodiments of the invention refers to and includes any or all possible combinations of one or more associated listed items.

[0035] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of the present invention, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of the present invention, and similarly, second may also be referred to as first.

[0036] First, the terminology used in one or more embodiments of the present invention will be explained.

[0037] Autonomous mobile robots (AGVs, Automated Guided Vehicles): Their most notable feature is that they are unmanned. AGVs are equipped with automatic guidance systems, which can ensure that the system can automatically travel along a predetermined route without the need for manual guidance, and automatically transport goods or materials from the starting point to the destination.

[0038] Path replanning: It consists of path planning and trajectory planning. The sequence of points or curves connecting the starting point and the ending point is called a path, and the strategy that constitutes the path is called path planning. Path replanning is usually performed when the existing path cannot be used.

[0039] Robot conflict: refers to the situation where a robot's path edges or path points overlap with those of other robots during its movement.

[0040] Head-on collision: refers to two robots passing through the same point or crossing the same edge in a 180-degree direction.

[0041] Cross collision: refers to two robots passing through the same point at a 90-degree angle.

[0042] Dwell conflict: refers to a situation where a point on a robot's path is the destination of another robot.

[0043] Following conflict: refers to two robots passing through the same point or crossing the same edge in the same direction.

[0044] This invention provides a multi-robot path planning method. The invention also relates to a multi-robot path planning device, a computing device, and a computer-readable storage medium, which will be described in detail in the following embodiments.

[0045] As logistics warehouses become increasingly intelligent and automated, AGVs are taking on more and more handling and picking tasks. To facilitate robot scheduling and control, warehouses are typically divided into grid maps consisting of waypoints and path edges. Multi-robot path planning is a crucial factor affecting warehouse efficiency and presents significant challenges in both theoretical research and practical applications.

[0046] Currently, the most commonly used methods for robot path planning are centralized and distributed approaches.

[0047] Centralized methods search for conflict-free paths among multiple robots across time and space. The core principle is to store all robot pathpoints in a reservation table, where each pathpoint is of the form (x, y, t), representing the coordinates (x, y) reached at time step t. The algorithm requires that two robots cannot occupy the same node or traverse the same edge at the same time step; otherwise, it is considered a path conflict. However, this algorithm is highly complex, and the search space grows exponentially with the number of robots, making it difficult to meet the enormous computational overhead and real-time response requirements of path planning for hundreds or thousands of robots.

[0048] Distributed methods only require planning paths for a single robot, prioritizing the avoidance of congestion and deadlock during the path planning process. When searching for paths for a single robot, reservation tables or full-map robot congestion data can be used to add heuristic costs to guide the search and avoid some potential conflicts. However, their adaptability in the event of conflicts is relatively poor, requiring the use of other methods to achieve traffic control functions, such as resolving deadlocks and congestion.

[0049] On the one hand, due to limitations in algorithm mechanisms and computing power, path planning platforms have a weak ability to resolve conflicts. On the other hand, dynamic events occur frequently in the warehouse environment and are highly uncertain, such as robots needing to stop and avoid each other when they meet, braking and decelerating, accelerating, constantly changing new target points, and robots experiencing anomalies and malfunctions. These dynamic events can cause unpredictable conflicts when the path planning platform is planning the path for the current robot, such as path deadlock and congestion, affecting the normal movement of the current robot and other robots. These two factors together lead to more path conflicts generated by distributed methods, thus requiring a more proactive real-time conflict coordination strategy.

[0050] Specifically, the process involves acquiring the driving information of multiple robots; predicting the conflict information of each robot based on this information, including conflicts between robots; statistically analyzing the conflict information of robots experiencing a first conflict to identify target robots whose statistical results meet the replanning conditions corresponding to the first conflict, where the first conflict can be any type of conflict; and performing path replanning on the target robots based on the first conflict. By acquiring the driving information of multiple robots, predicting the conflicts between each robot and other robots, and statistically analyzing the conflict information of robots experiencing a first conflict to identify target robots whose statistical results meet the replanning conditions corresponding to the first conflict, the process essentially predicts potential conflicts before they occur. Then, it filters out robots that might experience conflicts, selecting target robots whose statistical conflict information meets the replanning conditions corresponding to the first conflict for path replanning. This allows for more efficient path replanning by replanning the target robots before potential conflicts occur, effectively avoiding conflicts.

[0051] Figure 1 A schematic diagram of a system structure for a multi-robot path planning method according to an embodiment of the present invention is shown. The system includes a robot path planning end 101 and a robot end 102.

[0052] The robot path planning terminal 101 includes a memory 1011 and a processor 1012. The memory 1011 stores pre-written program code for path planning rules, and the processor 1012 is used to execute the program code for path planning rules to perform path planning for the robot.

[0053] Robot terminal 102 includes: robot 1021, robot 1022, and robot 1023;

[0054] The robot path planning terminal 101 obtains the driving information of multiple robots from the robot terminal 102, predicts the conflict information of each robot based on the driving information of each robot, statistically analyzes the conflict information of the robot that has the first conflict, determines the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, and performs path replanning for the target robot based on the first conflict.

[0055] The specific multi-robot path planning method will be detailed in subsequent embodiments.

[0056] Figure 2 A flowchart of a multi-robot path planning method according to an embodiment of the present invention is shown, which specifically includes the following steps:

[0057] Step 202: Obtain the driving information of multiple robots.

[0058] Specifically, the robot refers to a robot used in warehousing scenarios, specifically a handling robot used to move boxes or shelves. The "to-drive information" refers to pre-planned driving-related information, including the robot's current position, destination position, driving path, and destination operation time.

[0059] It should be noted that obtaining the driving information of multiple robots is for later analysis and judgment of this information, in order to predict any conflict that may occur between any two robots.

[0060] By applying the solution of this invention, the driving information of multiple robots is obtained, and subsequent analysis can be performed based on the driving information of these multiple robots to predict the conflict information between each robot and other robots, thus realizing the prediction of conflict information of multiple robots.

[0061] In another optional implementation of the present invention, a detection cycle can be preset, and the driving information of multiple robots at the current detection time can be obtained according to the detection cycle. That is, the step of obtaining the driving information of multiple robots can include the following specific steps:

[0062] According to the preset detection cycle, the driving information of multiple robots at the current detection time is obtained.

[0063] Specifically, the preset detection cycle refers to the pre-set time period for conflict detection, which is usually short, such as 3 seconds. Obtaining the waiting-to-drive information of multiple robots at the current detection time means obtaining the waiting-to-drive information of multiple robots starting from the current detection time. For example, if the total waiting-to-drive path length of robot A is 8 seconds and the total waiting-to-drive path length of robot B is 10 seconds, then conflict detection is performed every 3 seconds, and the waiting-to-drive information of multiple robots is obtained at the 3rd, 6th, and 9th seconds respectively. The waiting-to-drive information obtained at the 6th second includes at least the waiting-to-drive information of robot A from 6 to 8 seconds and the waiting-to-drive information of robot B from 6 to 10 seconds.

[0064] It should be noted that the preset detection cycle interval is usually short, such as 3 seconds. Conflict detection is triggered once every short fixed period to obtain the driving information of multiple robots at the current detection time. Multiple conflict detections can be performed in a short period of time, which further increases the frequency of analysis of the driving information of multiple robots and improves the timeliness of subsequent conflict detection of multiple robots and determination of replanning robots.

[0065] By applying the solution of this invention, the driving information of multiple robots at the current detection time is obtained according to a preset detection cycle. This allows the driving information of multiple robots at the current detection time to be obtained according to a fixed detection cycle, thereby realizing the detection of conflicts according to a uniform time cycle and improving the standardization of conflict detection.

[0066] Step 204: Based on the driving information of each robot, predict the conflict information of each robot, whereby the conflict information includes the conflict between the robot and other robots.

[0067] Specifically, the conflict information includes the type of conflict between the robot and other robots, the time of the conflict, the location of the conflict, and the name of the specific robot involved.

[0068] Optionally, when predicting the conflict information of each robot, all the driving information of each robot can be compared directly. Conflict prediction is performed sequentially from the start path point to the end path point of the entire map, and the conflict information of the robots with conflicts at each path point is recorded in sequence. It is determined whether the number of conflicts at the path point with conflicts is greater than a preset conflict number threshold. If it is greater, the path point is determined as the target path point, and the robots with conflicts at the target path point are replanned. If it is less, the conflict can be resolved by stopping to avoid, decelerating and braking, or starting to accelerate.

[0069] In one optional implementation of the present invention, when predicting the potential conflicts between robots based on the travel information of each robot, conflict prediction can be performed on all travel paths of each robot from its current position to the destination position.

[0070] In another optional implementation of the present invention, the target driving data within a preset conflict detection range can be determined first based on the driving information of each robot. Then, it can be identified whether each robot passes through the same path point. If so, a conflict exists, and the conflict type is determined. Conflict information for each robot is then generated. That is, the step of predicting the conflict information of each robot based on the driving information of each robot can include the following specific steps:

[0071] Based on the driving information of each robot, determine the target driving data of each robot within the preset conflict detection range;

[0072] Based on the target driving data of the first robot and the second robot, identify whether the first robot and the second robot pass through the same path point within a preset time period, wherein the first robot and the second robot are any two robots.

[0073] If so, then it is determined that there is a conflict between the first robot and the second robot;

[0074] Based on the target driving data of the first robot and the second robot, identify the conflict type between the first robot and the second robot;

[0075] Based on the conflict type, conflict information for the first robot is generated.

[0076] Specifically, the preset conflict detection range refers to the size of the conflict detection window, which is a short, fixed-length unfinished path for the robot starting from its current position. It is usually measured in cells, such as 10 cells, and can be represented by `windowSize`. Target travel data refers to the data within the preset conflict detection range, such as the path to be traveled, waypoints, path edges, and arrival times. Preset time period refers to a pre-set time interval, such as 5 seconds, 10 seconds, etc. Conflict type refers to the type of conflict that occurs between robots, such as head-on conflict, following conflict, crossing conflict, and stopping conflict.

[0077] Optionally, based on the target driving data of the first robot and the second robot, it is identified whether the first robot and the second robot pass through the same path point within a preset time period. The first robot and the second robot may come from the same direction and pass through the same path point; they may come from opposite directions and pass through the same path point; or they may come from a 90-degree direction and pass through the same path point.

[0078] For example, Figure 3a This diagram illustrates a conflicting scenario in a multi-robot path planning method according to an embodiment of the present invention. Figure 3b This diagram illustrates a following conflict in a multi-robot path planning method according to an embodiment of the present invention. Figure 3c This diagram illustrates a cross-collision scenario in a multi-robot path planning method according to an embodiment of the present invention. Figure 3d The illustration shows a stop conflict diagram in a multi-robot path planning method according to an embodiment of the present invention. Heading conflict: Two robots pass the same point in a 180-degree direction, or cross the same edge, for example, as... Figure 3a As shown, robot A's path to travel is 2→3→4, and robot B's path to travel is 4→3→2. Therefore, robot A and robot B are said to have a head-on collision. Following collision: Two robots travel in the same direction to the same point, for example, ... Figure 3b As shown, robot A's path to travel is 2→3→4, and robot B's path to travel is 2→3→4. Therefore, robot A and robot B are said to have a following conflict. Crossing conflict: Two robots pass through the same point at a 90-degree angle. For example, ... Figure 3cAs shown, robot A's path is 2→3→4, and robot B's path is 1→3→5. Therefore, robot A and robot B have a conflict at path point 3. A stop conflict occurs when a point on a robot's path is the destination of another robot. For example, ... Figure 3d As shown, the path to be traveled by robot A is 2→3→4, and the path to be traveled by robot B is 5→3. Therefore, it is said that there is a stopping conflict between robot A and robot B at path point 3.

[0079] It should be noted that the prediction of conflicts between robots can also be performed on a per-pathpoint basis, predicting the possible conflicts and conflict types at any pathpoint, and then first counting the conflicts and conflict types that occur at each pathpoint, and then counting the conflicts and conflict types that occur at each robot.

[0080] It should be further explained that, based on the target driving data of the first robot and the second robot, the type of conflict between the first robot and the second robot can be identified as follows: if one of the first robot and the second robot takes the point as its destination, then the first robot and the second robot have a stopping conflict; if not, then it is further determined whether they pass through the path point in the same direction. If they do, then it is a following conflict; if they pass through in a 180-degree direction, then it is a head-on conflict; if they pass through in a 90-degree direction, then it is a crossing conflict.

[0081] The solution of this invention determines the target driving data of each robot within a preset conflict detection range based on the driving information of each robot, and identifies whether the first robot and the second robot pass through the same path point within a preset time period. If so, it is determined that the first robot and the second robot have a conflict. Then, based on the target driving data of the first robot and the second robot, the conflict type of the first robot and the second robot is identified, and the conflict information of the first robot is generated based on the conflict type. By using the target driving data of each robot within the preset conflict detection range, it is possible to identify whether each robot has a conflict and the type of conflict. This allows for flexible adjustment of the detection window size and the number of replanned robots through the preset conflict detection range, thereby improving the accuracy of robot conflict detection.

[0082] In another optional implementation of the present invention, before generating the conflict information of the first robot according to the conflict type, the target position parameters of the first robot and the second robot can be determined first based on the target driving data of the first robot and the second robot. Then, if the target position parameters meet the preset constraints, the conflict information of the first robot can be generated according to the conflict type. That is, the steps before generating the conflict information of the first robot according to the conflict type can also include the following specific steps:

[0083] Based on the target driving data of the first robot and the second robot, the target position parameters of the first robot and the second robot are determined.

[0084] The step of generating conflict information for the first robot based on the conflict type includes:

[0085] If the target position parameters meet the preset position constraints, conflict information for the first robot is generated according to the conflict type.

[0086] Specifically, the target position parameter refers to the positional parameters related to the preset positional constraints, such as the time to reach the path point. The preset positional constraints refer to the pre-set conditions that constrain the identification of a certain position conflict. For example, when judging a dwell conflict, the robot that has reached the conflict path point in advance needs to take that point as its destination; when judging a conflict between two robots, the distance between the first robot and the second robot needs to be small enough, etc.

[0087] Optionally, different conflict types can correspond to different preset position constraints. By setting preset position constraints, the misprediction of robot conflict information can be reduced. For example, both robot A and robot B will pass through a path point 5, but robot A's current position is already path point 5 and it still needs to move. Robot B needs two connecting path edges to reach path point 5. Therefore, robot A and robot B will definitely not conflict at path point 5. Setting a preset distance threshold of 1 can determine that robot A and robot B do not meet the preset position constraints. Therefore, robot A and robot B do not conflict at path point 5, thereby reducing the misprediction of conflict.

[0088] It should be noted that, based on the target driving data of the first robot and the second robot, the target position parameters of the first robot and the second robot are determined. When it is determined that the target position parameters of the first robot and the second robot meet the preset position constraints, the conflict information of the first robot is generated according to the conflict that occurs at the conflict path point and the conflict type.

[0089] By applying the solution of this invention, the target position parameters of the first robot and the second robot are first determined. If the target position parameters meet the preset position constraints, the conflict information of the first robot is generated according to the conflict type. This allows some conflicts that are judged to be conflicting but are not actually conflicting to be eliminated according to the preset position constraints. Then, the conflict information of the first robot is generated according to the eliminated conflicts and the conflict type, which improves the accuracy of conflict identification and further improves the efficiency of determining the target robot.

[0090] In another optional implementation of the present invention, the preset position constraint can be based on the time-related factors of the robot's arrival at the path point; that is, the target position parameter includes the time of arrival at the path point; correspondingly, the preset position constraint includes:

[0091] The first robot arrives at the waypoint later than the second robot, and / or the time difference between the arrival of the first robot and the second robot at the waypoint is less than a preset time threshold.

[0092] Specifically, a pathpoint refers to a path where a conflict occurs. For example, if robot A and robot B pass through the same pathpoint, then that pathpoint is a conflicting pathpoint. The current position refers to the robot's location at the moment of conflict detection. The preset time threshold is a pre-set threshold for the difference in time between the arrival times of the robots at the pathpoints. For example, if the preset time threshold is 10 seconds, and robot A and robot B arrive at pathpoint "2" in 20 seconds and 15 seconds respectively, then the time difference between robot A and robot B arriving at pathpoint "2" is determined to be 5 seconds. That is, the time difference between the first robot and the second robot arriving at pathpoint "2" is less than the preset time threshold.

[0093] For example, if it is determined that there is a stopping conflict between robot A and robot B, and the destination of robot A is the stopping conflict point, if robot A arrives later than robot B, it is determined that there is no stopping conflict between robot A and robot B; if robot A arrives earlier than robot B, it is determined that there is a stopping conflict between robot A and robot B.

[0094] Optionally, the time of arrival at the path conflict point can be used to determine whether it is a stop conflict, a cross conflict, a head-on conflict, or a following conflict; the difference in arrival time at the path conflict point can also be used to determine whether it is a stop conflict, a cross conflict, a head-on conflict, or a following conflict.

[0095] The solution of this invention includes the following preset constraints: the time when the first robot arrives at the path point is later than that of the second robot, and / or the time difference between the arrival of the first robot and the second robot at the path point is less than a preset time threshold. By taking the timing of the arrival of the robots at the path point and whether the difference is less than the preset time threshold as preset constraints, the constraints in the time dimension are fully considered, making the finally determined conflict information more accurate.

[0096] In another optional implementation of the present invention, after determining that a conflict exists between the first robot and the second robot, the target driving data is used to identify whether the first robot and the second robot have passed through the same path edge. If they have, it is further determined whether the driving directions of the first robot and the second robot are the same. If they are the same, it is a following conflict; if they are different, it is a head-on conflict. If they do not pass through the same edge, it is determined to be a crossing conflict. That is, the above-mentioned step of identifying the conflict type of the first robot and the second robot based on the target driving data of the first robot and the second robot can include the following specific steps:

[0097] Based on the target driving data of the first robot and the second robot, identify whether the first robot and the second robot have passed through the same path edge, wherein the path edge includes the path point;

[0098] If they pass through the same path edge, then based on the target driving data of the first robot and the second robot, it is determined whether the driving directions of the first robot and the second robot are the same.

[0099] If they are the same, then the conflict type between the first robot and the second robot is determined to be a follower conflict;

[0100] If they are not the same, then the conflict type between the first robot and the second robot is determined to be a head-on conflict;

[0101] If they do not pass through the same path edge, then the conflict type between the first robot and the second robot is determined to be a cross conflict.

[0102] Specifically, a path edge refers to any one of the multiple path edges in the path to be traveled. The travel direction is determined based on the path to be traveled in the target travel data.

[0103] It should be noted that after determining that the first robot and the second robot have passed through the same path point, i.e., a conflict exists, it is determined whether the first robot and the second robot have passed through the same path edge, where the path edge includes the path point. If they have passed through the same path edge, then both the first robot and the second robot have passed through the same path edge and at least one path point included on that path edge. The conflict can be either a head-on conflict or a following conflict. The travel directions of the first robot and the second robot are further determined. If the travel directions of the first robot and the second robot are the same, it is a following conflict. If the travel directions of the first robot and the second robot are different, it is a head-on conflict. If they have not passed through the same edge but have only passed through the same path point, then the first robot and the second robot have an intersection conflict.

[0104] Alternatively, robots with different conflict types can be stored in different conflict type sets, all named conflictSet or conflict set; or robots with different conflict types can be placed into a single conflict set named conflictSet or conflict set.

[0105] For example, if robot A's current path point is N1 and its previous path point is N, then robot A passes through path edge (N, N1). If another robot B's current path point is N, it will also pass through (N, N1). Furthermore, the current distance between robot A and robot B is less than the preset distance threshold of 2 grids, and robot B is behind robot A. Therefore, robot A and robot B have a following conflict, and robot B is added to the conflict set. If robot A's current path point is N and its next path point is N1, then robot A's path edge to travel is (N, N1). If another robot B's current path point is N1 and its next path point is (N1, N), meaning they pass through the same edge in a 180-degree direction, then robot B is added to the conflict set. If robot A's current path point is N1 and its next path point is N, and robot B's current path point is M and its next path point is N, and the directions of (N1, N) and (M, N) are neither following nor opposite, then robot B is added to the conflict set.

[0106] By applying the scheme of this invention, when determining the type of conflict between a first robot and a second robot, it is determined whether the first robot and the second robot traverse the same path edge, where the path point is on the path edge. If they traverse the same path edge, it can be identified as a head-on conflict or a following conflict; if they do not traverse the same path edge, it is a crossing conflict. After determining that they traverse the same path edge, the travel directions of the first robot and the second robot are further determined. If the travel directions are the same, it is a following conflict; if the travel directions are different, it is a head-on conflict. By identifying the path points, path edges, and travel directions of the first robot and the second robot, the type of conflict between the first robot and the second robot is determined, improving the accuracy of subsequently generating conflict information for the first robot and further improving the accuracy of identifying the target robot.

[0107] In another optional implementation of the present invention, it may involve identifying whether the first robot or the second robot takes the path point as its destination based on the target travel data of the first robot and the second robot. If so, the conflict at the path point is determined to be a stop conflict. That is, the step of identifying the conflict type of the first robot and the second robot based on the target travel data of the first robot and the second robot may include the following specific steps:

[0108] Based on the target driving data of the first robot and the second robot, identify whether the first robot and the second robot use the waypoint as the destination;

[0109] If the second robot uses the waypoint as its destination and the first robot does not use the waypoint as its destination, then the conflict type between the first robot and the second robot is determined to be a stop conflict.

[0110] Specifically, the endpoint refers to the end point of the path the robot is to travel.

[0111] It should be noted that when the first robot and the second robot encounter a path conflict at the same waypoint, the system identifies whether the first robot and the second robot use that waypoint as their destination based on their target travel data. If the first robot uses that waypoint as its destination and the second robot does not, then the second robot is determined to have a stopping conflict, the first robot is the conflicting robot with the second robot, and the second robot must arrive at the waypoint later than the first robot. If the second robot uses that waypoint as its destination and the first robot does not, then the first robot is determined to have a stopping conflict, the second robot is the conflicting robot with the first robot, and the first robot must arrive at the waypoint later than the second robot. If both the first robot and the second robot use that waypoint as their destination, then the first robot and the second robot do not have a stopping conflict.

[0112] For example, if robot A and robot B pass through the same path point N, and robot A arrives before robot B, with path point N as the path endpoint, then robot B is added to the conflict set.

[0113] By applying the scheme of this invention, when determining the nature of the conflict between the first and second robots, it is determined whether the first and second robots use a certain path point as their endpoint. If only the first robot or only the second robot uses that point as its endpoint, then it is determined that the first and second robots have a stopping conflict at that path point. By identifying the endpoints of the first and second robots, the accuracy of generating conflict information for the first robot is improved, further enhancing the accuracy of identifying the target robot.

[0114] In another optional implementation of the present invention, after obtaining the driving data of multiple robots, the driving data of multiple robots can be added to a preset information table. Subsequently, the driving information of each robot can be predicted by traversing the driving information of each robot in the preset information table. That is, the steps after obtaining the driving information of multiple robots can also include the following specific steps:

[0115] The driving information of the multiple robots is recorded in a preset information table;

[0116] The step of predicting the conflict information of each robot based on the robot's to-drive information includes:

[0117] Traverse the preset information table and predict the conflict information of each robot based on the driving information of each robot in the preset information table.

[0118] Specifically, the preset information table refers to a table set in advance for recording information, such as entering the driving information of multiple robots into the preset information table.

[0119] It should be noted that after obtaining the driving information of multiple robots, it is recorded in a preset information table. When predicting the conflict information of each robot in the future, the preset information table can be directly traversed, and the conflict information of each robot can be predicted based on the driving information of each robot that has been traversed.

[0120] It should be further noted that, after obtaining the driving information of multiple robots, the driving information of each robot can be read directly to predict the conflict information of each robot.

[0121] By applying the solution of this invention, after obtaining the driving information of multiple robots, the information is recorded in a preset information table. Subsequently, the conflict information of each robot can be predicted by traversing the data. This makes the prediction of the robot's conflict information based on the driving information of each robot obtained through traversal more comprehensive and accurate, further ensuring the comprehensiveness of the driving information of each robot.

[0122] Step 206: Statistically analyze the conflict information of the robot that has the first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict is any type of conflict.

[0123] Specifically, statistical results refer to the results obtained by statistically analyzing the conflict information of the robots that have clashed. For example, robot A has 3 head-on collisions and 6 cross collisions; robot B has 4 cross collisions and 2 stationary collisions, and so on. Replanning conditions refer to the conditions for determining whether a robot needs to replan its path. For example, in head-on collisions, the replanning condition could be whether the number of head-on collisions of a certain robot exceeds a preset collision number threshold.

[0124] It should be noted that if the first conflict is a head-on conflict, the conflict information of the robots that have head-on conflicts is statistically analyzed. This can be done by determining the target robot that meets the replanning conditions corresponding to the head-on conflict based on the statistical results, or by determining the target robot whose statistical results meet the replanning conditions corresponding to the head-on conflict.

[0125] Optionally, the target robots identified above can be stored in the replanning set.

[0126] In another optional implementation of the present invention, the first conflict may include head-on conflicts. For any robot that has head-on conflicts, based on the conflict information of that robot, the number of robots that have head-on conflicts with that robot is counted, and the number of head-on conflicts of that robot is further obtained. Robots whose number of head-on conflicts is greater than a preset conflict number threshold are determined, and the determined robots are used as target robots for replanning. That is, when the first conflict includes head-on conflicts, the step of counting the conflict information of the robots that have head-on conflicts and determining the target robot whose statistical result meets the replanning condition corresponding to the first conflict may include the following specific steps:

[0127] For any robot that has a head-on collision, based on the collision information of that robot, count the number of robots that have a head-on collision with that robot, and obtain the head-on collision count of that robot.

[0128] Robots with a number of oncoming collisions greater than a preset collision threshold are identified as target robots.

[0129] Specifically, the number of head-on collisions refers to the number of head-on collisions that occur between any two robots. For example, robot A has 3 head-on collisions and robot B has 5 head-on collisions. The preset collision number threshold refers to a pre-set threshold for the number of head-on collisions. For example, if the preset collision number threshold is 4, then robot B has 5 head-on collisions, which is greater than the preset collision number threshold of 4, and therefore robot B is determined to be the target robot.

[0130] Optionally, the number of conflicts corresponding to the same conflict type between any two robots can be one or more. The number of robots that have a conflict with robot A can be 1 for robot B, 2 for robot C, and 1 for robot D, resulting in a conflict number of 4 for robot A.

[0131] Optionally, the target robot can be stored in a preset replanning set, usually represented by rePlanSet, with an initial value of empty.

[0132] It should be noted that after identifying the robot in the conflict set (conflictSet) whose number of opposing conflicts is greater than the preset conflict threshold as the target robot, the target robot is moved from the conflictSet to the rePlanSet. The process continues to check whether there is a target robot with a number of opposing conflicts greater than the preset conflict threshold among the remaining robots in the conflictSet (at this time, the identified target robot has been deleted). This process is repeated until there are 0 robots in the conflictSet with opposing conflicts. Specifically, it can be calculated using the following formula (1):

[0133]

[0134] Where C represents the conflict type, i represents the number of robots, n represents the size of conflictSet, opposite represents opposing conflicts, and j represents the number of path points in the incomplete path. This represents the number of c-type conflicts for the i-th robot. This represents the number of type c conflicts at the j-th path point of the i-th robot.

[0135] For example, A's opposing conflicting robots are B and C; B's opposing conflicting robot is A; C's opposing conflicting robots are A and D; Round 1: conflictSet = {A, B, C}, rePlanSet = {empty}, the conflict counts of A, B, and C are 2, 1, and 2 respectively, A is selected as the target robot, A is removed from conflictSet and added to rePlanSet; Round 2: conflictSet = {B, C}, rePlanSet = {A}, A has been determined as the target robot and no longer contributes conflict, so the conflict counts of B and C are 0 and 1 respectively, C is selected as the target robot.

[0136] By applying the solution of this invention, for any robot that is in a head-on collision, the number of robots that are in a head-on collision with the robot is counted based on the robot's collision information, and the number of head-on collisions with the robot is further obtained. It is then determined whether the number of head-on collisions is greater than a preset collision number threshold. If it is greater, the robot is determined to be the target robot. This improves the accuracy and efficiency of determining the target robot, as the number of head-on collisions with the determined target robot is greater than the preset collision number threshold.

[0137] In another optional implementation of the present invention, for any robot in the conflict set, based on the conflict information of that robot, the number of robots that are clashing head-on with that robot is counted to obtain the number of head-on conflicts for that robot. After identifying the target robot, the target robot is removed from the conflict set and stored in the replanning set. Subsequently, path replanning can be performed on the target robot based on the head-on conflicts. That is, the above-mentioned method of counting the number of robots that are clashing head-on with any robot that is clashing head-on based on the conflict information of that robot to obtain the number of head-on conflicts for that robot includes:

[0138] For any robot in the conflict set, based on the robot's conflict information, count the number of robots that have a head-on conflict with that robot to obtain the head-on conflict count for that robot, wherein the conflict set is used to record the robots that have a conflict.

[0139] After determining that the robot with a number of opposing collisions greater than a preset collision number threshold is the target robot, the process further includes:

[0140] Remove the target robot from the conflict set and store the target robot in the replanning set. Return to the execution of the steps of targeting any robot in the conflict set, counting the number of robots that have a head-on conflict with the robot based on the robot's conflict information, and obtaining the head-on conflict count of the robot, until there are no more head-on conflicting robots in the conflict set.

[0141] The step of replanning the path for the target robot based on the first conflict includes:

[0142] Based on the conflicting directions, path replanning is performed on each target robot in the replanning set.

[0143] Specifically, a conflict set refers to a set used to record robots that have various conflicts, such as robots that have opposing conflicts, robots that have overlapping conflicts, and so on.

[0144] Optionally, for any robot in the conflict set, based on the robot's conflict details, the number of robots that have encountered head-on conflicts with that robot can be counted. When counting the number of robots, it can be the number of head-on conflicts that the robot has encountered with a certain robot once or more.

[0145] Figure 4 The diagram illustrates a process for handling opposing collisions in a multi-robot path planning method according to an embodiment of the present invention, specifically including the following steps:

[0146] Step 402: Calculate the number of mutual conflicts for each robot in conflictSet.

[0147] Step 404: Select the robot with a number of opposing collisions greater than the preset collision number threshold as the target robot.

[0148] Step 406: Determine whether conflictSet is empty or whether the number of robots facing each other is 0.

[0149] If yes, then end; otherwise, proceed to step 408.

[0150] Step 408: Remove the target robot from conflictSet and add it to rePlanSet.

[0151] After step 408, return to step 402.

[0152] The solution of this invention involves, for any robot stored in the conflict set, counting the number of robots that are colliding with that robot using its conflict information, obtaining the number of colliding robots with that robot, removing that robot from the conflict set, and storing it in the replanning set. The process then returns to continue executing for any robot in the conflict set, and replanning the paths of each target robot in the replanning set based on the colliding conflicts. By removing target robots from the conflict set and storing them in the replanning set, the number of robots in the conflict set is reduced, facilitating subsequent counting of the number of colliding robots in the conflict set, and making it easier to directly extract robots from the replanning set for replanning, thus accelerating the replanning speed for robots with conflicts.

[0153] In another optional implementation of the present invention, the first conflict may include a dwelling conflict. For any robot that has a dwelling conflict, based on the conflict information of that robot, the final operation time of the robot that has a dwelling conflict with that robot is statistically analyzed. If the final operation time exceeds a preset time threshold, then that robot is determined as the target robot for replanning. That is, when the first conflict includes a dwelling conflict, the step of statistically analyzing the conflict information of the robot that has a first conflict and determining the target robot whose statistical result meets the replanning condition corresponding to the first conflict may include the following specific steps:

[0154] For any robot that experiences a dwelling conflict, based on the conflict information of that robot, calculate the final operation time of the robot that had the dwelling conflict with that robot;

[0155] If the duration of the final operation exceeds a preset time threshold, then the robot is determined as the target robot.

[0156] Specifically, the endpoint operation time refers to the time it takes for the robot to perform its work after reaching the endpoint of the path it is traveling on. For example, after a bin robot reaches the endpoint, it will perform the work of picking up and placing bins, including the time spent raising and lowering the forks and picking up / placing the bins. This time is the endpoint operation time of the bin robot. The preset time threshold refers to a pre-set threshold for the endpoint operation time. For example, if the preset time threshold is 1 minute, and the operation time of conflicting robot B at the endpoint is 2 minutes, which exceeds 1 minute, then robot A is determined to be the target robot.

[0157] Optionally, if there are multiple robots that have a stop conflict with robot A at a certain path point, it is only necessary to determine the robot with the longest working time at the destination among the multiple robots, and determine whether the working time at the destination corresponding to the robot exceeds the preset time threshold. If it does, then robot A is determined as the target robot.

[0158] It should be noted that if there is a conflict on the path ahead of the current robot, and the time spent by the corresponding conflicting robot at the end point exceeds a preset time threshold, then the current robot will be designated as the target robot, that is, the current robot will be removed from the conflictSet and added to the rePlanSet.

[0159] By applying the solution of this invention, for any robot that has a dwelling conflict, the endpoint operation time of the robot that has a dwelling conflict with the robot is counted based on the conflict information of the robot. If the endpoint operation time exceeds a preset time threshold, the robot is determined to be the target robot, thereby improving the accuracy and efficiency of determining the target robot.

[0160] In another optional implementation of the present invention, the first conflict may include cross-collision and following-collision. For any robot that has a cross-collision and / or following-collision, based on the robot's conflict information, the number of robots that have a cross-collision and / or following-collision with that robot is counted, and the sum of the number of cross-collision and / or following-collisions of that robot is obtained. Robots whose sum of the number of cross-collision and / or following-collisions is greater than a preset threshold are determined, and the determined robots are used as target robots for replanning. That is, when the first conflict includes oncoming conflict, the step of counting the conflict information of the robots that have a first conflict and determining the target robot whose statistical result meets the replanning condition corresponding to the first conflict may include the following specific steps:

[0161] For any robot that has a cross-collision and / or following conflict, based on the robot's conflict information, count the number of robots that have a cross-collision and following conflict with the robot, and obtain the sum of the number of cross-collision and following conflicts of the robot.

[0162] The number of robots that are greater than a preset threshold is determined as the target robots.

[0163] Specifically, the sum of cross-collision and follow-collision counts refers to the total number of cross-collision and follow-collision events occurring for any robot. For example, if robot A has 3 cross-collision events and 2 follow-collision events, then the sum of cross-collision and follow-collision events for robot A is 5; if robot B has 1 cross-collision event and 2 follow-collision events, then the sum of cross-collision and follow-collision events for robot B is 3. The preset threshold number refers to a pre-set threshold for the sum of cross-collision and follow-collision events. For example, if the preset threshold number is 4, then if the sum of cross-collision and follow-collision events for robot A is 5, which is greater than the preset threshold number of 4, then robot A is determined to be the target robot.

[0164] Optionally, the number of conflicts corresponding to any two robots crossing and / or following each other can be one or more. The number of robots that cross and / or follow each other with robot A can be 1 for robot B, 2 for robot C, and 1 for robot D, resulting in a total of 4 cross and follow conflicts for robot A.

[0165] It should be noted that after identifying robots in the conflict set (conflictSet) whose sum of cross-collisions and following-collisions exceeds a preset threshold as target robots, these target robots are moved from the conflictSet to the rePlanSet.

[0166] Continue to determine whether there are any target robots with cross- and follow-up conflicts in the remaining conflictSet (at this point, the identified target robots have been removed). Repeat this process until the sum of the number of cross- and follow-up conflicts is less than the preset threshold or the number of target robots exceeds the preset percentage limit. Specifically, this can be calculated using the following formula (2):

[0167]

[0168] Where C represents the conflict type, i represents the number of robots, n represents the size of conflictSet, follow refers to following conflicts, cross refers to crossing conflicts, and j represents the number of path points in the incomplete path. This represents the number of c-type conflicts for the i-th robot. This represents the number of type c conflicts at the j-th path point of the i-th robot.

[0169] Optionally, crossing and following conflicts can be resolved by the robot arriving later slowing down or stopping to avoid them. When the sum of the number of crossing and following conflicts exceeds a preset threshold, congestion may occur. In this case, the robot arriving later may need to be used as the target robot for path replanning. When the sum of the number of crossing and following conflicts does not exceed the preset threshold, the impact is tolerable, and the conflict can be resolved by slowing down or stopping to avoid them. At the same time, crossing and following conflicts occur more frequently than stopping and oncoming conflicts. If all of them are replanned, the computational load of replanning will be large, and the effect may be greatly reduced. Therefore, generally, robots whose sum of the number of crossing and following conflicts does not exceed the preset threshold are selected for path replanning. Of course, all of them can also be replanned, and the choice can be made according to the actual situation.

[0170] By applying the solution of this invention, for any robot that has a cross-collision and / or following conflict, based on the robot's conflict information, the number of robots that have a cross-collision and following conflict with the robot is counted, and the sum of the number of cross-collision and following conflicts with the robot is obtained. It is then determined whether the sum of the number of cross-collision and following conflicts is greater than a preset threshold. If it is greater, the robot is determined to be the target robot. This improves the efficiency of determining the target robot by ensuring that the sum of the number of cross-collision and following conflicts of the determined target robot is greater than the preset threshold.

[0171] In another optional implementation of the present invention, for any robot in the conflict set, based on the robot's conflict information, the number of cross-collision and following conflicts with that robot is counted. After determining the target robot, the target robot is removed from the conflict set and stored in a replanning set. The target robot stored in the replanning set undergoes path replanning based on cross-collision and oncoming conflicts. That is, for any robot experiencing cross-collision and / or following conflicts, based on the robot's conflict information, the number of robots experiencing cross-collision and following conflicts with that robot is counted, and the sum of the number of cross-collision and following conflicts with that robot is obtained, including:

[0172] For any robot in the conflict set, based on the robot's conflict information, count the number of robots that have cross-conflicts and follow-conflicts with the robot, and obtain the sum of the number of cross-conflicts and follow-conflicts of the robot. The conflict set is used to record the robots that have conflicts.

[0173] After determining the number of robots and selecting those exceeding a preset threshold as target robots, the process further includes:

[0174] Remove the target robot from the conflict set and store the target robot in the replanning set. Return to the execution of the steps of targeting any robot in the conflict set, counting the number of robots that have cross-conflicts and follow-up conflicts with the robot based on the robot's conflict information, and obtaining the sum of the number of cross-conflicts and follow-up conflicts of the robot, until there are no robots in the conflict set whose sum is greater than the preset number threshold or the number of robots in the replanning set exceeds the preset number.

[0175] The step of replanning the path for the target robot based on the first conflict includes:

[0176] Based on the cross-conflict and follow-conflict, path replanning is performed on each target robot in the replanning set.

[0177] Optionally, the target robot can be removed from the conflict set and stored in the replanning set. Alternatively, the target robot and conflict information can be directly removed from the conflict set, and the identifier or name of the target robot and its corresponding driving information can be stored in the replanning set. Subsequently, based on cross-conflict and following conflicts, path replanning can be performed on each target robot in the replanning set.

[0178] Optionally, there are several possible ways to address the issue of the number of robots in the replanning set exceeding a preset number. One possible approach is to pre-set a threshold for the replanning set, for example, a threshold of 10. In this case, if the number of robots in the replanning set is less than 10, then the robots in the replanning set will not be replanned. Another possible approach is to pre-set a percentage, for example, a percentage of 10%. If the number of robots in the replanning set is 80, then the robots in the replanning set will not be replanned if the number of robots in the replanning set is less than 8.

[0179] The solution of this invention involves, for any robot stored in the conflict set, counting the number of robots that have cross-collisions and follow-collisions with that robot using its conflict information, obtaining the sum of the number of cross-collisions and follow-collisions for that robot, removing that robot from the conflict set, and storing it in the replanning set. The process then returns to continue executing for any robot in the conflict set, and performs path replanning for each target robot in the replanning set based on cross-collisions and follow-collisions. By removing target robots from the conflict set and storing them in the replanning set, the number of robots in the conflict set is reduced, facilitating subsequent counting of the sum of cross-collisions and follow-collisions for the remaining robots in the conflict set, and making it easier to directly extract robots from the replanning set for replanning, thus accelerating the replanning speed for robots with conflicts.

[0180] Figure 5 The diagram illustrates a flowchart of a multi-robot path planning method according to an embodiment of the present invention, which handles intersection and following conflicts, and specifically includes the following steps:

[0181] Step 502: Calculate the sum of cross-collision and following collision counts for each robot in conflictSet.

[0182] Step 504: Select the robot whose total number of cross-collision and follow-collision conflicts exceeds a preset threshold as the target robot.

[0183] Step 506: Determine whether the sum of the number of cross-collisions and following-collisions of robots is less than or equal to a preset threshold, or whether the percentage of the target robot in the total number of robots in the conflictSet is greater than or equal to a preset upper limit.

[0184] If yes, then end; otherwise, proceed to step 408.

[0185] Step 508: Remove the target robot from conflictSet and add it to rePlanSet.

[0186] After step 508, return to step 502.

[0187] Step 208: Based on the first conflict, perform path replanning for the target robot.

[0188] Alternatively, different conflict types can correspond to different path replanning methods.

[0189] It should be noted that, based on the first conflict, the path replanning for the target robot can be performed according to the conflict type, recording the different basic traffic costs corresponding to various conflict types. In one possible implementation, the target robot's current position is used as a reference to determine multiple paths with a total penalty value. Then, the path with a total penalty value less than a preset basic traffic cost threshold is selected from the multiple paths and used as the replanned path. In another possible implementation, the path point corresponding to the robot's current position can be used as a reference to explore surrounding nodes, obtain the path information of other robots in the surrounding nodes, and then determine the conflict type. Based on the different basic traffic costs corresponding to different conflict types, the node that satisfies the preset basic traffic cost threshold from the current node to the next node is selected as the next node. Then, the robot moves from this next node as a reference until it reaches the destination.

[0190] In another optional implementation of the present invention, the basic traffic cost corresponding to the first conflict may be determined first, and then the probability of at least one robot colliding with the robot at the target path point may be predicted.

[0191] Based on the basic traffic cost and the probability of conflict, the traffic cost incurred by each robot at the target waypoint is determined. That is, the above-mentioned step of replanning the path for the target robot based on the first conflict may include the following specific steps:

[0192] Determine the basic traffic cost corresponding to the first conflict;

[0193] The probability of at least one conflicting robot colliding with the target robot at a target path point is predicted, wherein the target path point is a path point within a preset range of the target robot's current position.

[0194] Based on the basic traffic cost and the probability of conflict, the traffic cost generated by each conflicting robot for the target robot at the target path point is determined respectively.

[0195] Based on the aforementioned traffic costs, the target robot undergoes path replanning.

[0196] Specifically, the basic traffic cost refers to the basic traffic cost corresponding to the conflict type. Different basic traffic costs can be configured for oncoming, crossing, or following conflicts. For example, from light to heavy, they can be: (1) Following conflicts may slow down the walking speed of the robot behind, but usually do not cause deadlock, so the basic traffic cost is the lowest; (2) Crossing conflicts generally occur at intersections. The robot needs to slow down, stop to avoid, accelerate, etc., which will affect the walking speed, and its basic traffic cost can be higher than that of following conflicts; (3) Oncoming conflicts may cause deadlock. For example, in some narrow alley areas, if an oncoming conflict occurs, one party may need to turn around and replan the route, so the cost will be relatively high; (4) For stationary conflicts, since other robots generally need to continue working in place when they reach the destination, such as lifting or lowering shelves, picking up boxes, pallets, etc., it may cause the blocked robot to wait for a long time. The target path point refers to the path point within the preset range of the target robot's current position, which can be the path point around the path point corresponding to the target robot's current position.

[0197] Optionally, based on the basic traffic cost and the probability of conflict, the traffic cost incurred by each robot at the target path point can be determined. For example, when the current robot is at the current path point L, there are surrounding path points M and N: when exploring the surrounding path point M as the target path point M, the conflict type corresponding to the conflicting robot A is facing each other, assuming the corresponding conflict probability is P1 and the basic traffic cost is t1; the conflict type corresponding to the conflicting robot B is crossing, assuming the corresponding conflict probability is P2 and the basic traffic cost is t2; the conflict type corresponding to the conflicting robot C is following, assuming the corresponding conflict probability is P3 and the basic traffic cost is t3. The traffic cost generated by conflict robot A is t1*P1, the traffic cost generated by conflict robot B is t2*P2, and the traffic cost generated by conflict robot C is t3*P3. Therefore, the total traffic cost of the target path point M is t1*P1+t2*P2+t3*P3. Similarly, when exploring the surrounding path points N as the target path point N, the total traffic cost of the target path point N is calculated. From the total traffic costs corresponding to each surrounding path point, the target path point that meets the preset traffic cost threshold is selected as the next path point. The next path point is then used as the current path point to continue exploring the surrounding path points until the destination of the target robot's path to be replanned is reached.

[0198] Optionally, in addition to replanning the path based on traffic costs, it is also necessary to select the path according to the determined path length so that the replanned path meets the preset path length threshold. With a shorter path length, the movement and handling task can be completed quickly, saving robot movement resources and path resources.

[0199] The solution of this invention determines the basic traffic cost corresponding to the first conflict, predicts the probability of at least one conflicting robot colliding with the target robot at the target path point, and determines the traffic cost generated by each conflicting robot for the target robot at the target path point based on the basic traffic cost and the probability of conflict. Then, based on each traffic cost, the target robot performs path replanning by exploring the total traffic cost of the target path point, selecting target path points that meet the preset traffic cost threshold from multiple target path points, and repeating this process until all path points in the replanned path meet the preset traffic cost threshold. This achieves path replanning for the target robot, and the replanned path also fully ensures the safety of the target robot's movement.

[0200] Figure 6 A basic flowchart of a multi-robot path planning method according to an embodiment of the present invention is shown, which specifically includes the following steps:

[0201] Step 602: Trigger conflict detection according to the preset detection cycle to obtain the driving information of multiple robots.

[0202] Step 604: Record the driving information of multiple robots into a preset information table.

[0203] Step 606: Calculate the conflict information of each robot within the preset conflict detection range.

[0204] Step 608: Add robots with a conflict count greater than 0 to conflictSet, and set rePanSet to empty set.

[0205] Step 610: Resolve the conflicting directions and put the replanning robot into the rePanSet.

[0206] Step 612: Resolve dwell conflicts and add the replanning robot to the rePanSet.

[0207] Step 614: Resolve cross-collision and follow-collision conflicts, and put the replanning robot into the rePanSet.

[0208] Step 616: The robot in rePanSet performs path replanning.

[0209] The present invention employs an embodiment to acquire the driving information of multiple robots; based on the driving information of each robot, predict the conflict information of each robot, wherein the conflict information includes conflicts between robots; statistically analyze the conflict information of robots experiencing a first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict can be any type of conflict; and perform path replanning on the target robot based on the first conflict. By acquiring the driving information of multiple robots, predicting the conflicts between each robot and other robots, statistically analyzing the conflict information of robots experiencing a first conflict, and determining the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, the present invention predicts potential conflicts before they occur, then filters the robots that may experience conflicts, selecting the target robot whose statistical results of conflict information meet the replanning conditions corresponding to the first conflict, and performing path replanning on it. This replanning of the target robot before a potential conflict can reasonably avoid the occurrence of conflict, and the target robot whose path replanning meets the replanning conditions has higher replanning efficiency.

[0210] The following is in conjunction with the appendix Figure 7a and Figure 7b Taking the application of a multi-robot path planning method provided by this invention to predict four types of conflicts as an example, the multi-robot path planning method will be further explained. Figure 7aA flowchart of a multi-robot path planning method according to an embodiment of the present invention is shown. Figure 7b This diagram illustrates a multi-robot path planning method according to an embodiment of the present invention, which processes robot traversal information during the process of traversing the robot's traversal information. The method specifically includes the following steps:

[0211] Step 702: Obtain the driving information of robot A ({4→5→6→3}), robot B ({6→5→2}), and robot C ({3→6→9}) in a 3-second cycle.

[0212] In step 702, the schematic diagram of the driving information for robots A, B, and C is shown below. Figure 7b .

[0213] Step 704: Determine the target travel data for robot A within 6 squares: {4→5→6→3}; the target travel data for robot B: {6→5→2}; and the target travel data for robot C: {3→6}.

[0214] Step 706: The conflicts that exist for robot A are: one head-on conflict with robot B and one stop conflict with robot C; the conflicts that exist for robot B are: one head-on conflict with robot A.

[0215] Step 708: For head-on conflicts, determine robot B as the target robot for path replanning; for stationary conflicts, determine robot A as the robot for path replanning.

[0216] Step 710: The basic traffic cost corresponding to the head-on conflict is 5, and the basic traffic cost corresponding to the following conflict is 2. Therefore, the path replanning for robot A is: {4→1→2→3}; the path replanning for robot B is: {6→9→8→5→2}.

[0217] The present invention employs an embodiment to acquire the driving information of multiple robots; based on the driving information of each robot, predict the conflict information of each robot, wherein the conflict information includes conflicts between robots; statistically analyze the conflict information of robots experiencing a first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict can be any type of conflict; and perform path replanning on the target robot based on the first conflict. By acquiring the driving information of multiple robots, predicting the conflicts between each robot and other robots, statistically analyzing the conflict information of robots experiencing a first conflict, and determining the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, the present invention predicts potential conflicts before they occur, then filters the robots that may experience conflicts, selecting the target robot whose statistical results of conflict information meet the replanning conditions corresponding to the first conflict, and performing path replanning on it. This replanning of the target robot before a potential conflict can reasonably avoid the occurrence of conflict, and the target robot whose path replanning meets the replanning conditions has higher replanning efficiency.

[0218] Corresponding to the above method embodiments, the present invention also provides embodiments of a multi-robot path planning device. Figure 8 A schematic diagram of a multi-robot path planning device according to an embodiment of the present invention is shown. Figure 8 As shown, the device includes:

[0219] The acquisition module 802 is configured to acquire the driving information of multiple robots;

[0220] The prediction module 804 is configured to predict the conflict information of each robot based on the driving information of each robot, wherein the conflict information includes the conflict between the robot and other robots.

[0221] The determination module 806 is configured to statistically analyze the conflict information of the robot that has experienced the first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict is any type of conflict;

[0222] The replanning module 808 is configured to replan the path of the target robot based on the first conflict.

[0223] Optionally, the prediction module 804 is further configured to: determine the target driving data of each robot within a preset conflict detection range based on the driving information of each robot; identify whether the first robot and the second robot pass through the same path point within a preset time period based on the target driving data of the first robot and the second robot, wherein the first robot and the second robot are any two robots; if so, determine that there is a conflict between the first robot and the second robot; identify the conflict type between the first robot and the second robot based on the target driving data of the first robot and the second robot; and generate conflict information of the first robot based on the conflict type.

[0224] Optionally, the prediction module 804 is further equipped with a target position parameter determination module, which is configured to determine the target position parameters of the first robot and the second robot based on the target driving data of the first robot and the second robot; the prediction module 804 is further configured to generate conflict information of the first robot according to the conflict type when the target position parameters meet the preset position constraints.

[0225] Optionally, the prediction module 804 is further configured such that the target position parameters include the time of arrival at the path point and / or the current position; correspondingly, the preset position constraints include: the time of arrival at the path point of the first robot is later than that of the second robot, and / or the time difference between the arrival at the path point of the first robot and the second robot is less than a preset time threshold.

[0226] Optionally, the prediction module 804 is further configured to identify whether the first robot and the second robot have passed through the same path edge based on the target driving data of the first robot and the second robot, wherein the path edge includes a waypoint; if they have passed through the same path edge, then identify whether the first robot and the second robot have the same driving direction based on the target driving data of the first robot and the second robot; if they are the same, then determine that the conflict type between the first robot and the second robot is a following conflict; if they are different, then determine that the conflict type between the first robot and the second robot is a facing conflict; if they have not passed through the same path edge, then determine that the conflict type between the first robot and the second robot is a crossing conflict.

[0227] Optionally, the prediction module 804 is further configured to identify whether the first robot and the second robot use a waypoint as their destination based on the target driving data of the first robot and the second robot; if the second robot uses a waypoint as its destination and the first robot does not use a waypoint as its destination, then the conflict type between the first robot and the second robot is determined to be a stop conflict.

[0228] Optionally, after the acquisition module 802, the device further includes a recording module, configured to record the driving information of multiple robots into a preset information table; and a prediction module 804, further configured to traverse the preset information table and predict the conflict information of each robot based on the driving information of each robot in the preset information table.

[0229] Optionally, the first conflict includes head-on conflicts; the determining module 806 is further configured to, for any robot that has head-on conflicts, count the number of robots that have head-on conflicts with the robot based on the robot's conflict information, and obtain the head-on conflict count of the robot; and determine the robot whose head-on conflict count is greater than a preset conflict count threshold as the target robot.

[0230] Optionally, the determining module 806 is further configured to, for any robot in the conflict set, count the number of robots that have head-on conflicts with that robot based on the robot's conflict information, and obtain the head-on conflict count for that robot, wherein the conflict set is used to record robots with conflicts; after the determining module 806, the device further includes a first execution module, configured to delete the target robot from the conflict set and store the target robot in the replanning set, and return to execute the step of, for any robot in the conflict set, counting the number of robots that have head-on conflicts with that robot based on the robot's conflict information, and obtaining the head-on conflict count for that robot, until there are no more head-on conflicts in the conflict set; the replanning module 808 is further configured to, based on the head-on conflicts, perform path replanning for each target robot in the replanning set.

[0231] Optionally, the first conflict includes a dwelling conflict; the determining module 806 is further configured to statistically analyze the conflict information of the robots that have the first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, including: for any robot that has a dwelling conflict, statistically analyze the endpoint operation time of the robots that have a dwelling conflict with the robot based on the conflict information of the robot; if the endpoint operation time exceeds a preset time threshold, then the robot is determined as the target robot.

[0232] Optionally, the first conflict includes cross-collision and follow-collision; the determining module 806 is further configured to, for any robot that has a cross-collision and / or follow-collision, count the number of robots that have a cross-collision and follow-collision with the robot based on the robot's conflict information, and obtain the sum of the number of cross-collision and follow-collision of the robot; and determine the robots whose sum of the number is greater than a preset number threshold as target robots.

[0233] Optionally, the determining module 806 is further configured to, for any robot in the conflict set, count the number of robots that have cross-collisions and follow-collisions with the robot based on the robot's conflict information, and obtain the sum of the number of cross-collisions and follow-collisions for the robot, wherein the conflict set is used to record the robots with conflicts; after the determining module 806, the device further includes a second execution module, configured to delete the target robot from the conflict set and store the target robot in the replanning set, and return to execute the step of, for any robot in the conflict set, counting the number of robots that have cross-collisions and follow-collisions with the robot based on the robot's conflict information, and obtaining the sum of the number of cross-collisions and follow-collisions for the robot, until there are no robots in the conflict set whose sum exceeds a preset threshold or the number of robots in the replanning set exceeds a preset threshold; the replanning module 808 is further configured to perform path replanning for each target robot in the replanning set based on cross-collisions and follow-collisions.

[0234] Optionally, the replanning module 808 is further configured to: determine the basic traffic cost corresponding to the first conflict; predict the probability that at least one conflicting robot will conflict with the target robot at a target path point, wherein the target path point is a path point within a preset range of the target robot's current location; determine the traffic cost generated by each conflicting robot for the target robot at the target path point based on the basic traffic cost and the probability of conflict; and perform path replanning for the target robot based on each traffic cost.

[0235] The present invention employs an embodiment to acquire the driving information of multiple robots; based on the driving information of each robot, predict the conflict information of each robot, wherein the conflict information includes conflicts between robots; statistically analyze the conflict information of robots experiencing a first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, wherein the first conflict can be any type of conflict; and perform path replanning on the target robot based on the first conflict. By acquiring the driving information of multiple robots, predicting the conflicts between each robot and other robots, statistically analyzing the conflict information of robots experiencing a first conflict, and determining the target robot whose statistical results meet the replanning conditions corresponding to the first conflict, the present invention predicts potential conflicts before they occur, then filters the robots that may experience conflicts, selecting the target robot whose statistical results of conflict information meet the replanning conditions corresponding to the first conflict, and performing path replanning on it. This replanning of the target robot before a potential conflict can reasonably avoid the occurrence of conflict, and the target robot whose path replanning meets the replanning conditions has higher replanning efficiency.

[0236] The above is a schematic scheme of a multi-robot path planning device according to this embodiment. It should be noted that the technical solution of this multi-robot path planning device and the technical solution of the aforementioned multi-robot path planning method belong to the same concept. Details not described in detail in the technical solution of the multi-robot path planning device can be found in the description of the technical solution of the aforementioned multi-robot path planning method. Furthermore, the components in the device embodiment should be understood as functional modules necessary to implement each step of the program flow or each step of the method; these functional modules are not actual functional divisions or separations. The device claims defined by such a set of functional modules should be understood as a functional module architecture that primarily implements the solution through the computer program described in the specification, and not as a physical device that primarily implements the solution through hardware.

[0237] Figure 9 A structural block diagram of a computing device 900 according to an embodiment of the present invention is shown. The components of the computing device 900 include, but are not limited to, a memory 910 and a processor 920. The processor 920 is connected to the memory 910 via a bus 930, and a database 950 is used to store data.

[0238] The computing device 900 also includes an access device 940, which enables the computing device 900 to communicate via one or more networks 960. Examples of these networks include Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or combinations of communication networks such as the Internet. The access device 940 may include any type of wired or wireless network interface, such as one or more Network Interface Controllers (NICs), such as an IEEE 802.11 Wireless Local Area Networks (WLAN) wireless interface, a Wi-MAX (World Interoperability for Microwave Access) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.

[0239] In one embodiment of the present invention, the above-described components of the computing device 900 and Figure 9Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 9 The illustrated block diagram of the computing device is for illustrative purposes only and is not intended to limit the scope of the invention. Those skilled in the art can add or replace other components as needed.

[0240] The computing device 900 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or PCs. The computing device 900 can also be a mobile or stationary server.

[0241] The processor 920 is used to execute computer-executable instructions of the multi-robot path planning method.

[0242] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the multi-robot path planning method described above belong to the same concept. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solution of the multi-robot path planning method described above.

[0243] An embodiment of the present invention also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, are used in a multi-robot path planning method.

[0244] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium belongs to the same concept as the technical solution of the multi-robot path planning method described above. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the multi-robot path planning method described above.

[0245] The foregoing has described specific embodiments of the invention. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired results. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0246] The computer instructions include computer program code, which may be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.

[0247] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.

[0248] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0249] The preferred embodiments of the present invention disclosed above are merely illustrative of the invention. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the content of the present invention. These embodiments have been selected and specifically described to better explain the principles and practical applications of the invention, thereby enabling those skilled in the art to better understand and utilize the invention. The invention is limited only by the claims and their full scope and equivalents.

Claims

1. A multi-robot path planning method, characterized in that, include: Obtain the driving information of multiple robots; Based on the driving information of each robot, predict the conflict information of each robot, wherein the conflict information includes the conflict between the robot and other robots; The conflict information of the robots involved in the first conflict is statistically analyzed to determine the target robots whose statistical results meet the replanning conditions corresponding to the first conflict. The first conflict is any type of conflict, including cross-conflict and following-conflict. The process of statistically analyzing the conflict information of the robots involved in the first conflict to determine the target robots whose statistical results meet the replanning conditions corresponding to the first conflict includes: for any robot involved in a cross-conflict and / or following-conflict, based on the robot's conflict information, counting the number of robots involved in cross-conflict and following-conflict with that robot to obtain the sum of the number of cross-conflict and following-conflict with that robot; and determining robots whose sum of the number of cross-conflicts is greater than a preset threshold as target robots. Based on the first conflict, the target robot undergoes path replanning.

2. The method according to claim 1, characterized in that, The step of predicting the conflict information of each robot based on the robot's to-drive information includes: Based on the driving information of each robot, determine the target driving data of each robot within the preset conflict detection range; Based on the target driving data of the first robot and the second robot, identify whether the first robot and the second robot pass through the same path point within a preset time period, wherein the first robot and the second robot are any two robots. If so, then it is determined that there is a conflict between the first robot and the second robot; Based on the target driving data of the first robot and the second robot, identify the conflict type between the first robot and the second robot; Based on the conflict type, conflict information for the first robot is generated.

3. The method according to claim 2, characterized in that, Before generating the conflict information for the first robot based on the conflict type, the method further includes: Based on the target driving data of the first robot and the second robot, the target position parameters of the first robot and the second robot are determined. The step of generating conflict information for the first robot based on the conflict type includes: If the target position parameters meet the preset position constraints, conflict information for the first robot is generated according to the conflict type.

4. The method according to claim 3, characterized in that, The target location parameters include: the time to arrive at the path point; Accordingly, the preset position constraints include: the first robot arrives at the path point later than the second robot, and / or the time difference between the arrival of the first robot and the second robot at the path point is less than a preset time threshold.

5. The method according to claim 2, characterized in that, The step of identifying the conflict type between the first robot and the second robot based on the target driving data of the first robot and the second robot includes: Based on the target driving data of the first robot and the second robot, identify whether the first robot and the second robot have passed through the same path edge, wherein the path edge includes the path point; If they pass through the same path edge, then based on the target driving data of the first robot and the second robot, it is determined whether the driving directions of the first robot and the second robot are the same. If they are the same, then the conflict type between the first robot and the second robot is determined to be a follower conflict; If they are not the same, then the conflict type between the first robot and the second robot is determined to be a head-on conflict; If they do not pass through the same path edge, then the conflict type between the first robot and the second robot is determined to be a cross conflict.

6. The method according to claim 2, characterized in that, The step of identifying the conflict type between the first robot and the second robot based on the target driving data of the first robot and the second robot includes: Based on the target driving data of the first robot and the second robot, identify whether the first robot and the second robot use the waypoint as the destination; If the second robot uses the waypoint as its destination and the first robot does not use the waypoint as its destination, then the conflict type between the first robot and the second robot is determined to be a stop conflict.

7. The method according to claim 1 or 2, characterized in that, After obtaining the driving information of multiple robots, the process also includes: The driving information of the multiple robots is recorded in a preset information table; The step of predicting the conflict information of each robot based on the robot's to-drive information includes: Traverse the preset information table and predict the conflict information of each robot based on the driving information of each robot in the preset information table.

8. The method according to any one of claims 1-6, characterized in that, The first conflict also includes opposing conflicts; The step of statistically analyzing the conflict information of the robot involved in the first conflict and determining the target robot whose statistical results meet the replanning conditions corresponding to the first conflict includes: For any robot that has a head-on collision, based on the collision information of that robot, count the number of robots that have a head-on collision with that robot, and obtain the head-on collision count of that robot. Robots with a number of oncoming collisions greater than a preset collision threshold are identified as target robots.

9. The method according to claim 8, characterized in that, For any robot that has encountered a head-on collision, based on the collision information of that robot, the number of robots that have encountered a head-on collision with that robot is counted to obtain the head-on collision count for that robot, including: For any robot in the conflict set, based on the robot's conflict information, count the number of robots that have a head-on conflict with that robot to obtain the head-on conflict count for that robot, wherein the conflict set is used to record the robots that have a conflict. After determining that the robot with a number of opposing collisions greater than a preset collision number threshold is the target robot, the process further includes: Remove the target robot from the conflict set and store the target robot in the replanning set. Return to the execution of the steps of targeting any robot in the conflict set, counting the number of robots that have a head-on conflict with the robot based on the robot's conflict information, and obtaining the head-on conflict count of the robot, until there are no more head-on conflicting robots in the conflict set. The step of replanning the path for the target robot based on the first conflict includes: Based on the conflicting directions, path replanning is performed on each target robot in the replanning set.

10. The method according to any one of claims 1-6, characterized in that, The first conflict also includes a stay conflict; The step of statistically analyzing the conflict information of the robot involved in the first conflict and determining the target robot whose statistical results meet the replanning conditions corresponding to the first conflict includes: For any robot that experiences a dwelling conflict, based on the conflict information of that robot, calculate the final operation time of the robot that had the dwelling conflict with that robot; If the duration of the final operation exceeds a preset time threshold, then the robot is determined as the target robot.

11. The method according to claim 1, characterized in that, For any robot that experiences a cross-collision and / or following conflict, based on the robot's conflict information, the number of robots that have experienced cross-collision and following conflicts with that robot is counted, and the sum of the number of cross-collision and following conflicts for that robot is obtained, including: For any robot in the conflict set, based on the robot's conflict information, count the number of robots that have cross-conflicts and follow-conflicts with the robot, and obtain the sum of the number of cross-conflicts and follow-conflicts of the robot. The conflict set is used to record the robots that have conflicts. After determining the number of robots and selecting those exceeding a preset threshold as target robots, the process further includes: Remove the target robot from the conflict set and store the target robot in the replanning set. Return to the execution of the steps of targeting any robot in the conflict set, counting the number of robots that have cross-conflicts and follow-up conflicts with the robot based on the robot's conflict information, and obtaining the sum of the number of cross-conflicts and follow-up conflicts of the robot, until there are no robots in the conflict set whose sum is greater than the preset number threshold or the number of robots in the replanning set exceeds the preset number. The step of replanning the path for the target robot based on the first conflict includes: Based on the cross-conflict and follow-conflict, path replanning is performed on each target robot in the replanning set.

12. The method according to claim 1, characterized in that, The step of replanning the path for the target robot based on the first conflict includes: Determine the basic traffic cost corresponding to the first conflict; The probability of at least one conflicting robot colliding with the target robot at a target path point is predicted, wherein the target path point is a path point within a preset range of the target robot's current position. Based on the basic traffic cost and the probability of conflict, the traffic cost generated by each conflicting robot for the target robot at the target path point is determined respectively. Based on the aforementioned traffic costs, the target robot undergoes path replanning.

13. A multi-robot path planning device, characterized in that, include: The acquisition module is configured to acquire the driving information of multiple robots; The prediction module is configured to predict the conflict information of each robot based on the driving information of each robot, wherein the conflict information includes the conflict between the robot and other robots; The determination module is configured to statistically analyze the conflict information of robots involved in a first conflict, and determine the target robot whose statistical results meet the replanning conditions corresponding to the first conflict. The first conflict is any type of conflict, including cross-conflict and following-conflict. Statistically analyzing the conflict information of robots involved in the first conflict and determining the target robot whose statistical results meet the replanning conditions corresponding to the first conflict includes: for any robot involved in a cross-conflict and / or following-conflict, based on the robot's conflict information, counting the number of robots involved in cross-conflict and following-conflict with that robot, obtaining the sum of the number of cross-conflict and following-conflicts for that robot; and determining robots whose sum is greater than a preset threshold as target robots. The replanning module is configured to replan the path of the target robot based on the first conflict.

14. A computing device, characterized in that, include: Memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions to implement the steps of the multi-robot path planning method according to any one of claims 1 to 12.

15. A computer-readable storage medium storing computer instructions, characterized in that, When executed by the processor, this instruction implements the steps of the multi-robot path planning method according to any one of claims 1 to 12.

Citation Information

Patent Citations

  • Waste smoke recovery method based on multi-AGV time window path optimization algorithm

    CN111474926A

  • Multi-AGV collision-free operation path planning method and scheduling system

    CN111596658A

  • Robot path planning method and device and electronic equipment

    CN114527751A

  • Multi-vehicle cooperative trajectory planning method in closed environment

    CN114840001A