A multi-agent collision-free path planning method and system based on an improved CBS algorithm

By improving the collision detection and deadlock handling of the CBS algorithm, and combining rectangular collision detection and heuristic search, the problem of low computational efficiency of the traditional CBS algorithm in multi-agent path planning is solved, and efficient and safe path planning is achieved.

CN119292263BActive Publication Date: 2025-11-21ZHUHAI MAKERWIT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411306242.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-19
Publication Date
2025-11-21
Estimated Expiration
2044-09-19

AI Technical Summary

Technical Problem

Traditional CBS algorithms suffer from low computational efficiency and poor real-time performance in multi-agent path planning, making it difficult to meet the needs of complex scenarios and large-scale intelligent agent systems, especially in conflict detection and deadlock handling.

Method used

The improved CBS algorithm optimizes the collision detection mechanism and deadlock detection strategy, replaces point collision detection with a rectangular collision detection algorithm, introduces hierarchical collision detection and heuristic search strategies, and dynamically adjusts path planning in conjunction with real-time environmental changes.

Benefits of technology

It improves the efficiency and accuracy of path planning, reduces the number of deadlocks, adapts to complex and ever-changing environments and large-scale intelligent agent systems, and ensures the safety and feasibility of paths.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119292263B_ABST
    Figure CN119292263B_ABST
Patent Text Reader

Abstract

The application provides a multi-agent conflict-free path planning method and system based on an improved CBS algorithm, which comprises the following steps: constructing an environment model; analyzing the task starting point, ending point and current state information of k agents from the received task request information, and judging whether the path of all agents needs to be re-planned by traversing the task path set of all agents; adding forbidden points by distance and the ending point position of the agent when re-planning the path, calling a conflict-free path solver to obtain the path set of the k agents, and cutting the path set in space; comprehensively judging and processing the generated path; and selecting the shortest path that meets the safety requirements from the length by judging the same direction or reverse relationship between the paths, and issuing the path. The application can be used in complex environments such as warehouse logistics, and can improve the calculation speed and robustness of path planning.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of multi-agent path planning, and particularly relates to a multi-agent conflict-free path planning method based on an improved CBS algorithm and a multi-agent conflict-free path planning system applying the method. BACKGROUND

[0002] With the wide application of multi-agent systems such as robots, unmanned aerial vehicles and autonomous guided vehicles in industries, agriculture, logistics and military fields, how to efficiently plan conflict-free paths for these agents has become a key problem. At present, the conflict-based CBS algorithm is widely used to solve the multi-agent path planning problem. The CBS algorithm can effectively find conflict-free paths by decomposing the problem into multiple sub-problems and gradually solving conflicts. However, the traditional CBS algorithm has low computational efficiency and insufficient task request processing when dealing with complex on-site environments and large-scale agent systems.

[0003] The traditional Conflict-Based Search (CBS) algorithm has significant advantages in multi-agent path planning, but its conflict detection part, especially the point conflict detection, cannot accurately reflect the actual physical interaction between agents in the actual field.

[0004] Existing improvement methods mainly focus on reducing the number of conflict detection, detecting deadlocks and unlocking strategies, and optimizing path search strategies, but still cannot meet the requirements of real-time and high efficiency in actual applications.

[0005] Therefore, there is an urgent need for an improved CBS algorithm that can ensure conflict-free path planning while improving computational efficiency and solution speed to adapt to complex and variable environments and large-scale agent systems. SUMMARY

[0006] To solve the above problems in the prior art, the purpose of the present application is to provide a multi-agent conflict-free path planning method and system based on an improved CBS algorithm, which is used to solve the problem of deadlock regulation that may occur in the application of CBS algorithm in actual field, and significantly improves the efficiency of path planning and reduces the number of regulation occurrences by optimizing the conflict detection mechanism and detecting deadlocks and unlocking strategies, and is suitable for complex and variable fields and large-scale agent systems.

[0007] The present application achieves the above-mentioned purposes through the following technical solutions:

[0008] A multi-agent conflict-free path planning method based on an improved CBS algorithm, the method comprising the following steps:

[0009] An environment model is constructed by loading a map file, parsing node information, edge attributes and control point information in the map file, and determining a starting position and a target position of the agent;

[0010] Task starting points, ending points and current state information of the k agents are parsed from the received task request information, and whether all the agents need to be re-planned a path is determined by traversing a task path set of all the agents;

[0011] When re-planning a path, a forbidden point is added through a distance and an ending position of the agent, and then a conflict-free path solver is called to obtain a path set of the k agents, and the path set is truncated in space to prevent a repeated node in the issued path;

[0012] When re-planning a path is not needed, a path point not yet walked in a task path of each agent is added to the forbidden point, a path is planned for the agent alone when the agent completes the current task and stops, and the planned path is stored in length;

[0013] The generated path is comprehensively judged and processed, and factors considered include parking conditions of adjacent storage locations and a minimum safety distance of paths issued by each two agents;

[0014] The shortest path meeting safety requirements is selected from length by judging same direction or reverse relationship between paths and is issued;

[0015] In the process of executing a task by the agent, environment changes are listened to in real time, and a path planning strategy is dynamically adjusted accordingly.

[0016] According to the multi-agent conflict-free path planning method based on the improved CBS algorithm, the conflict-free path solver solves the path by calling the find_solution() function, and the CBS module first initializes a heuristic table by calculating distances from current points of all the agents to destinations, and then initializes a CBS tree by the init_root() function;

[0017] The planner path planner finds a path for each agent, all the paths are traversed two by two, whether path nodes in a task path set exist conflict is calculated, and then the existing conflict is classified into three categories, i.e., full-base conflict, half-base conflict and ordinary conflict;

[0018] If a newly calculated path cost of two agents is higher than a last cost, the cost is counted as exceeding, and the conflict is added to the full-base conflict; if only one agent has a higher cost, the conflict is added to the half-base conflict; if neither agent exceeds the last cost, the conflict is added to the ordinary conflict.

[0019] After the calculated conflict is classified, a root node is added in the CBS tree.

[0020] The multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application also performs: replacing point conflict detection of a check_conflict() function in the CBS algorithm with SAT-based rectangular collision detection algorithm, so that the algorithm can more accurately simulate and detect physical collision of AGVs in an actual environment, wherein the SAT algorithm regards the AGV as a rectangular entity that can rotate and move, and effectively identifies potential collision by detecting relative position and direction between rectangles.

[0021] The multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application also performs: deadlock detection and de-queue mechanism, including:

[0022] Whether there is a deadlock condition is determined by detecting a queue flag in a request, and once a deadlock is detected, the system immediately starts a de-queue code to guide the affected agent to a preset avoidance point for avoidance, so as to break the deadlock state.

[0023] After it is ensured that the path is conflict-free and the deadlock problem is solved, the calculated relatively optimal path is issued to each agent to guide it to perform a transportation task.

[0024] The multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application, when constructing an environment model, loads a map.ilns file to parse node information, edge attribute and control point information in the file to construct the environment model.

[0025] The node information is read and parsed to obtain the name and spatial coordinates of each QRCNode, and the nodes represent key positions in the environment, and the name and coordinates of each node are used for node identification and spatial positioning in path planning.

[0026] The edge_info set is traversed to obtain information of each Edge, and the Edge represents a path between nodes, including edge attributes, and according to the information, it is determined whether the path from the current node to the next node is feasible.

[0027] The multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application, the comprehensive judgment and processing of the generated path, including:

[0028] Traverse each path in the task path set, for each path, calculate the same direction common segment and reverse common segment of the current path and other paths in the task path set by calling the findLongestCommonSubarray() function.

[0029] According to the multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application, the common segment judgment comprises:

[0030] No common segment: if the lengths of the same direction common segment and the reverse common segment are both 0, the path has no intersection with other paths in the task path set, and no interception operation is needed;

[0031] Point conflict: if the lengths of the same direction common segment and the reverse common segment are both 1, it indicates that the path has a point conflict with other paths in the task path set, and the path needs to be intercepted to the previous point of the common intersection point to avoid the conflict;

[0032] Same direction common segment: if the length of the same direction common segment is greater than 1 and the length is greater than the length of the reverse common segment, it indicates that the two paths have a same direction common segment, and the path needs to be adjusted according to the distance of the current path from the common segment to avoid the same direction conflict;

[0033] Reverse common segment: if the length of the reverse common segment is greater than 1 and the length is greater than the length of the same direction common segment, it indicates that the two paths have a reverse common segment, and the path needs to be adjusted according to the distance of the current path from the common segment to avoid the reverse conflict;

[0034] According to the above judgment result, the path is appropriately adjusted and intercepted to ensure that the paths of all agents are conflict-free in the global range.

[0035] According to the multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application, when planning the path, comprising:

[0036] Global path planning strategy: when all agents need to make path requests at the same time, the find_solution() function is called to plan paths for all agents uniformly;

[0037] Single path planning strategy: when only individual agents need to make path requests, the findPath() function is called to plan conflict-free paths for individual agents.

[0038] According to the multi-agent conflict-free path planning method based on the improved CBS algorithm provided by the application, all task path sets of all agents are traversed to determine whether all agents need to be re-planned, wherein the decision is based on the distance between agents and the end position to ensure that the path planning result is as optimal as possible.

[0039] The application provides a multi-agent conflict-free path planning method based on an improved CBS algorithm, which is based on continuous-time conflict resolution and comprises the following steps:

[0040] In the process of handling intersection conflicts, whether two agents attempt to use the same intersection in the same time period is monitored, the waiting time cost of the two agents is calculated, the agent with a smaller time cost is selected for new path planning, and conflict-free passing is ensured;

[0041] In the process of handling opposite conflicts, whether two agents are on opposite paths is detected, one of the agents is selected to wait at a safety node, and the other agent is allowed to pass first, so that collision at the same node is avoided;

[0042] In the process of handling exchange conflicts, whether one agent attempts to follow the path of another agent is detected, the length of the agent on the exchange path and the time of the agent passing through the path node are calculated, the minimum waiting time is determined, and the agent is allowed to start after ensuring a safety distance;

[0043] In the process of handling fault conflicts, a faulty agent is identified and located, the paths of other agents are adjusted to avoid the fault area, and continuous and safe operation of the system is ensured.

[0044] A multi-agent conflict-free path planning system based on an improved CBS algorithm, which is applied to the multi-agent conflict-free path planning method based on the improved CBS algorithm, and comprises the following:

[0045] A conflict-free path generation module is configured to generate a series of conflict-free paths according to the task requirements and environmental conditions of AGVs;

[0046] A deadlock detection and decontrol module is configured to detect possible deadlock conditions by monitoring the states and path requests of AGVs in real time, and once a deadlock is detected, the module will automatically execute a decontrol strategy to guide the affected AGVs to a safety avoidance point, thereby effectively avoiding system stagnation.

[0047] A path issuing module is configured to issue the calculated optimal path to each AGV after ensuring that the path is conflict-free and the deadlock problem is solved, wherein in the path issuing process, the system will consider the current states and task priorities of multiple agents to ensure the real-time and adaptability of the path.

[0048] Therefore, the application has the following advantages:

[0049] 1. The application can more effectively handle conflict problems in multi-agent path planning by improving the CBS algorithm, reduce the time cost of path planning, and improve the overall efficiency.

[0050] 2、The application can ensure the accuracy and feasibility of the path by constructing an accurate environment model and planning the path based on real-time task requests.

[0051] 3、The application ensures the safety of the path by fully considering the parking conditions of adjacent storage locations and the minimum safety distance between agents during path planning, thereby avoiding accidents such as collisions.

[0052] 4、The application can adjust the path in real time according to environmental changes to adapt to complex and variable scene requirements by supporting dynamic adjustment of path planning strategies.

[0053] 5、The application is not only applicable to path planning of k agents, but also can be extended to larger-scale multi-agent systems, and has good scalability.

[0054] The application will be further described in detail below in combination with the accompanying drawings and specific embodiments. BRIEF DESCRIPTION OF DRAWINGS

[0055] Figure 1 is a flowchart of an embodiment of a multi-agent conflict-free path planning method based on an improved CBS algorithm of the application.

[0056] Figure 2 is a schematic diagram of an embodiment of a multi-agent conflict-free path planning system based on an improved CBS algorithm of the application.

[0057] Figure 3 is a main conflict type of AGV in the actual field in an embodiment of a multi-agent conflict-free path planning method based on an improved CBS algorithm of the application.

[0058] Figure 4 is a flowchart of conflict-free path generation in an embodiment of a multi-agent conflict-free path planning method based on an improved CBS algorithm of the application.

[0059] Figure 5 is a flowchart of solving of an improved CBS algorithm in an embodiment of a multi-agent conflict-free path planning method based on an improved CBS algorithm of the application. DETAILED DESCRIPTION

[0060] To make the objectives, technical solutions and advantages of the application clearer, the technical solutions in the application will be described clearly and completely below in combination with the drawings in the application. Obviously, the described embodiments are part of the embodiments of the application, rather than all the embodiments. Based on the embodiments in the application, all other embodiments obtained by those skilled in the art without creative labor fall within the protection scope of the application.

[0061] Reference to“an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment. The appearances of the phrase“in one embodiment” in various places in the specification are not necessarily referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. As will be apparent to those of ordinary skill in the art, embodiments described herein can be combined with other embodiments.

[0062] Referring to Figures 1 to 5 The embodiment provides a multi-agent conflict-free path planning method based on an improved CBS algorithm, and the method comprises the following steps:

[0063] In step S1, an environment model is constructed by loading a map file, parsing node information, edge attributes and control point information in the map file, and determining a starting position and a target position of an agent.

[0064] In step S2, task starting points, ending points and current state information of k agents are parsed from received task request information, and whether path planning needs to be performed again for all agents is determined by traversing a task path set of all agents.

[0065] In step S3, when the path is re-planned, a forbidden point is added through a distance and an ending position of the agent, and then a conflict-free path solver is called to obtain a path set of the k agents, and the path set is truncated in space to prevent a repeated node from appearing in the issued path.

[0066] In step S4, when the path does not need to be re-planned, a path point that has not been walked in a task path of each agent is added to the forbidden point, a path is planned for the agent alone when the agent completes the current task and is stable, and the planned path is stored in length.

[0067] In step S5, the generated path is comprehensively judged and processed, and factors considered include parking conditions of adjacent storage locations and a minimum safety distance of paths issued by each two agents.

[0068] In step S6, the shortest path that meets safety requirements is selected from length by judging same-direction or reverse relationships between paths, and the path is issued.

[0069] In step S7, during execution of the task by the agent, environment changes are listened to in real time, and a path planning strategy is dynamically adjusted accordingly.

[0070] In the embodiment, the collision-free path solver solves the path by calling the find_solution() function, the CBS module first initializes the heuristic table by calculating the distance from the current point of all agents to the destination, and then initializes the CBS tree by calling the init_root() function; the planner path planner finds a path for each agent, and all paths are traversed in pairs to calculate whether the path nodes in the task path set exist conflicts, and then the existing conflicts are classified into three categories: full-base conflict, half-base conflict and ordinary conflict.

[0071] If the newly calculated path cost of the two agents is higher than the last cost, the excess cost is counted and the conflict is added to the full-base conflict; if only one agent's cost is higher, it is added to the half-base conflict; if neither agent exceeds the last cost, it is added to the ordinary conflict.

[0072] After classifying the calculated conflicts, the root node is added to the CBS tree.

[0073] In the embodiment, the deadlock detection and resolution mechanism is also implemented, including:

[0074] The deadlock situation is determined by detecting the control flag in the request, and once the deadlock is detected, the system immediately starts the decontrol code to guide the affected agents to the preset avoidance point for avoidance, thereby breaking the deadlock state.

[0075] After ensuring that the path is collision-free and the deadlock problem is solved, the calculated relatively optimal path is issued to each agent to guide it to perform the transportation task.

[0076] In the embodiment, when building the environment model, the environment model is built by loading the map.ilns file, parsing the node information, edge attributes and control point information in the file; the node information is read and parsed to obtain the name and spatial coordinates of each QRCNode, which represents the key positions in the environment, and the name and coordinates of each node are used for node identification and spatial positioning in path planning; the edge_info set is traversed to obtain the information of each Edge, which represents the path between nodes, including edge attributes such as whether it is passable, the AGV type (loaded or unloaded) allowed to pass, and according to these information, it is determined whether the path from the current node to the next node is feasible.

[0077] In the embodiment, the generated path is comprehensively judged and processed, including:

[0078] For each path in the set of task paths, the same direction common segment and the reverse direction common segment between the current path and other paths in the set of task paths are calculated by calling the findLongestCommonSubarray() function.

[0079] The common segment judgment includes:

[0080] No common segment: if the lengths of the same direction and reverse direction common segments are both 0, the path has no intersection with other paths in the set of task paths, and no cutting operation is needed;

[0081] Point conflict: if the lengths of the same direction and reverse direction common segments are both 1, it indicates that the path has a point conflict with other paths in the set of task paths, and the path needs to be cut to the previous point of the common intersection point to avoid conflict;

[0082] Same direction common segment: if the length of the same direction common segment is greater than 1 and greater than the length of the reverse direction common segment, it indicates that the two paths have a same direction common segment, and the path needs to be adjusted according to the distance of the current path from the common segment to avoid same direction conflict;

[0083] Reverse direction common segment: if the length of the reverse direction common segment is greater than 1 and greater than the length of the same direction common segment, it indicates that the two paths have a reverse direction common segment, and the path needs to be adjusted according to the distance of the current path from the common segment to avoid reverse conflict;

[0084] According to the above judgment results, the path is appropriately adjusted and cut to ensure that the paths of all agents are conflict-free in the global range.

[0085] In this way, the conflict between paths can be effectively identified and handled to ensure that all AGVs can safely and smoothly complete tasks in actual operation. At the same time, this method can improve the efficiency and accuracy of path planning, and improve the overall performance and reliability of the system.

[0086] Specifically, the improved CBS algorithm of the present embodiment includes:

[0087] 1. The A* algorithm is improved to reduce the number of rotation points, and a more suitable heuristic function is selected, which is the Euclidean distance plus a smoothness penalty term, encouraging AGVs to choose more straight paths.

[0088] 2. The present application replaces the point conflict detection of the check_conflict() function in the CBS algorithm with a SAT (Separating Axis Theorem) based rectangular collision detection algorithm. This improvement enables the algorithm to more accurately simulate and detect physical collisions of AGVs in real-world environments. The SAT algorithm treats AGVs as rectangular entities that can rotate and move, effectively identifying potential collisions by detecting the relative positions and orientations of rectangles. The SAT module has a clear advantage in terms of computational complexity and detection speed, enabling rapid detection of potential collisions in large-scale agent systems, particularly when dealing with multi-AGV systems, significantly reducing computation time and improving overall system efficiency.

[0089] 3. During actual field operation, task requests may occur at any time, and the `find_solution` method in the traditional CBS algorithm has certain limitations. Therefore, the CBS algorithm is improved by introducing two strategies to cope with different task request situations, including:

[0090] Global path planning strategy: When all agents need to request paths simultaneously, the find_solution() function is called to plan paths for all agents uniformly. This strategy ensures that all AGV paths are conflict-free in the global range, thereby improving the overall coordination and efficiency of the system.

[0091] Single path planning strategy: When only individual agents need to request paths, the findPath() function is called to plan conflict-free paths for individual agents. This strategy quickly responds to individual AGV path requirements through local optimization, avoiding unnecessary recalculation of global paths, thereby improving system response speed and flexibility.

[0092] Therefore, by introducing these two strategies, the improved CBS algorithm can more efficiently and flexibly handle task requests in actual operation, optimizing all AGV paths in the global range while quickly responding to individual AGV path requirements in the local range, significantly improving the overall performance and practicality of the system.

[0093] In this embodiment, by traversing the task path set of all agents, it is determined whether all agents need to be re-planned, where the decision is based on the distance between agents and the end position to ensure that the path planning result is as optimal as possible.

[0094] In this embodiment, continuous-time conflict resolution is based on:

[0095] In handling intersection conflicts, by monitoring whether two agents are trying to use the same intersection at the same time, the waiting time cost of the two agents is calculated, the agent with smaller time cost is selected for new path planning, and conflict-free passing is ensured;

[0096] In handling opposite conflicts, by detecting whether two agents are on opposite paths, one of the agents is selected to wait at a safe node, and the other agent is allowed to pass first, avoiding collision at the same node;

[0097] In handling exchange conflicts, by detecting whether one agent is trying to follow the path of another agent, the length of the agent on the exchange path and its time to pass through the path nodes are calculated, the minimum waiting time is determined, and the agent is ensured to start after a safe distance;

[0098] In handling fault conflicts, by identifying and locating the faulty agent, the paths of other agents are adjusted to avoid the fault area, ensuring continuous and safe operation of the system.

[0099] In specific applications, the task_path set of each AGV in the task request is traversed, and it is checked whether the current path has conflicts or needs to be optimized. If all AGVs need to be recalculated, forbidden points are added based on the end position and relative distance of each AGV. These forbidden points are used to avoid conflicts in path planning and ensure the feasibility of the path. Then, the find_solution() function is called to solve the path set of k AGVs. This function is based on the improved CBS algorithm and generates a conflict-free path set. Then, the generated path set is truncated in space to prevent repeated nodes in the issued path. Path truncation ensures that the path of each AGV is independent and conflict-free.

[0100] If all AGVs do not need to be recalculated, the unfinished path points in the task_path of each AGV are added to the forbidden point set to ensure that these points cannot be used by other AGVs, avoiding path conflicts. It is judged whether the issued path of the current AGV has been completed and the AGV has stopped. If the AGV has completed the current path and has stopped, the find_path() function is called to plan a new path for the AGV. The new path is planned based on the current environment and forbidden points to ensure conflict-free. The planned new path is stored in the length set for subsequent selection.

[0101] Comprehensive judgment and processing are performed on all generated paths, and the parking conditions of adjacent storage locations are considered to ensure that the AGV does not collide during loading and unloading on the storage location. Ensure that the minimum safety distance is maintained between the paths issued by each two AGVs to avoid collision risks during operation. According to the above factors, the shortest path that meets the safety requirements is selected from the length set to issue, ensuring the efficiency and safety of path planning.

[0102] In this embodiment, the AGV (Automatic Guided Vehicle) in the scheduling system is also modeled as an agent to obtain an agent, specifically including:

[0103] Through the sensor and positioning system, the current node position of each AGV is obtained in real time, which is used to determine the specific position of the AGV in the environment model, ensuring the accuracy of the starting point and endpoint of the path planning.

[0104] The current state information of each AGV is collected and recorded. The state information includes but is not limited to the load condition (empty or loaded) of the AGV, battery capacity, speed, direction, etc. These state information is used for decision support in path planning to ensure that the planned path meets the actual operating state of the AGV.

[0105] The task request in the scheduling system is parsed to obtain the starting point and endpoint of each AGV. The task information is used to determine the target position and travel path of the AGV, ensuring that the task allocation and path planning in the multi-AGV system are reasonable and efficient.

[0106] Further, the CBS solver and the path planning of a single task request are called in this embodiment.

[0107] Further, the CBS module is composed of the check_conflict() function and the get_constraint() function.

[0108] Further, the PlanServer module includes two parts, one part is composed of the find_solution() function and the cutPath() function. The other part is composed of the findPath() function and the processPath() function.

[0109] In practical applications, the core of the present application is to optimize two key parts of the traditional CBS algorithm: conflict detection mechanism and path search strategy. The specific improvements are as follows:

[0110] Optimized conflict detection mechanism: In the traditional CBS algorithm, conflict detection is usually achieved by traversing the paths of all agents, which becomes very time-consuming as the number of agents increases. The present application proposes a hierarchical conflict detection mechanism, which processes the path planning problem of agents in layers and detects conflicts within a specific range in each layer, thereby significantly reducing the number of conflict detections and the range, improving detection efficiency.

[0111] Introduce new path search strategy: The traditional CBS algorithm uses Breadth-First Search (BFS) or Depth-First Search (DFS) strategy in path search process, which is easy to fall into local optimal solution when facing complex environment, resulting in too long solving time. Therefore, the present application introduces a path search strategy based on heuristic search (Heuristic Search), which combines the heuristic function of SIPP algorithm, can find the global optimal path more quickly, significantly shorten the solving time.

[0112] The path search strategy provided by the present application specifically implements the following steps:

[0113] Initialization: First, model the environment, determine the starting position and target position of the agent, and set the parameters of hierarchical conflict detection according to the complexity of the environment and the number of agents.

[0114] Hierarchical conflict detection: In the initial stage of path planning, the global problem is decomposed into multiple hierarchical sub-problems. For each sub-problem, use hierarchical conflict detection mechanism to detect conflicts within the current level range, reduce the detection times and range.

[0115] Path search: For each hierarchical sub-problem, use heuristic search strategy for path search. Use the heuristic function of SIPP algorithm to evaluate the advantages and disadvantages of each path according to the distance between the current state and the target state, and preferentially select the optimal path to avoid falling into local optimal solution.

[0116] Conflict resolution: In each hierarchical sub-problem, if a conflict is detected, use the conflict tree (Conflict Tree) to record the conflict information, and combine the heuristic search strategy to adjust the path until the optimal path without conflict is found.

[0117] Result integration: Integrate the conflict-free paths of all hierarchical sub-problems to get the multi-agent conflict-free path planning scheme in the global range.

[0118] In this embodiment, as the number of AGVs increases and the scale of material transportation task expands, the main conflict types of AGVs in the horizontal transportation area of the actual field are as follows:

[0119] Intersection conflict, such as Figure 3 (a) shown, when A001 and A002 travel from two intersecting edges to intersection V m , and arrive at the same intersection V m at time point t, an intersection conflict occurs.

[0120] Opposite conflict, such as Figure 3 (b) shown, when A001 and A002 travel from opposite directions to the same node V m , and arrive at the same node V m at time point t, an opposite conflict occurs.

[0121] Exchange conflict, such as Figure 3 (c) shown, when A001 and A002 travel from opposite directions and intend to exchange the position of the node at time point t, an exchange conflict occurs.

[0122] AGV failure, such as Figure 3 (d) shown, A001 fails and stops at the node, and the planned path of A002 coincides with the failure point, causing the device to wait. According to the actual operation of the AGV on site, this embodiment considers the situation that the AGV causes a conflict due to failure.

[0123] The present application replaces the point conflict detection of the check_conflict() function in the CBS algorithm with a SAT-based rectangular collision detection algorithm. This improvement enables the algorithm to more accurately simulate and detect physical collisions of AGVs in actual environments. The SAT algorithm regards AGVs as a rectangular entity that can rotate and move, and effectively identifies potential collisions by detecting the relative position and direction of rectangles. This method has the following advantages: the SAT module enables the method to accurately calculate whether two rectangles collide, including the case of partial overlap. Compared with traditional point conflict detection, the SAT module has obvious advantages in computational complexity and detection speed, and is particularly suitable for large-scale agent systems. This improvement enables the present application to not only be suitable for static collision detection, but also to handle collision prediction and avoidance in dynamic situations.

[0124] Therefore, the method provided by the application is composed of three parts of conflict-free path generation, deadlock detection and resolution, and path segmentation and issuing. The conflict-free path generation part loads map file information, reads the starting point, target point and state information of each agent, and calculates the conflict-free path within the solving time by using the improved CBS algorithm. The multi-agent conflict-free path planning method based on the improved CBS algorithm improves the conflict detection mechanism, deadlock detection and resolution strategy, and path search strategy on the basis of the CBS conflict tree. The path segmentation and issuing part judges the same direction or reverse relationship between paths to prevent the conflict of agents on a one-way street. The application can be used in complex environments such as warehouse logistics, and improves the calculation speed and robustness of path planning.

[0125] A multi-agent conflict-free path planning system based on an improved CBS algorithm

[0126] As shown in Figure 2 The system is applied to the multi-agent conflict-free path planning method based on the improved CBS algorithm, and the system comprises:

[0127] A conflict-free path generation module is configured to generate a series of conflict-free paths according to the task requirements and environmental conditions of the AGVs, and the paths not only meet the transportation tasks of the AGVs, but also avoid potential path conflicts.

[0128] A deadlock detection and resolution module is configured to detect possible deadlock conditions by monitoring the states and path requests of the AGVs in real time, and once a deadlock is detected, the module will automatically execute the resolution strategy to guide the affected AGVs to a safe avoidance point, thereby effectively avoiding system stagnation.

[0129] A path issuing module is configured to issue the calculated optimal path to each AGV after ensuring that the path is conflict-free and the deadlock problem is solved; wherein during the path issuing process, the system will consider the current states and task priorities of multiple agents to ensure the real-time and adaptability of the path.

[0130] Specifically, the embodiment is based on a multi-agent conflict-free path planning system improved from the CBS algorithm, which consists of three parts: conflict-free path generation, deadlock detection and resolution, and path issuance. The conflict-free path generation is responsible for generating conflict-free paths that meet all AGV task requirements, and through optimization algorithms, it ensures the efficiency and accuracy of path planning. The deadlock detection and resolution part judges whether there is a deadlock situation by detecting the control flag in the request. Once a deadlock is detected, the system immediately starts the resolution code to guide the affected AGV to the preset avoidance point for avoidance, thereby breaking the deadlock state. After ensuring that the path is conflict-free and the deadlock problem is solved, the system issues the relatively optimal path calculated to each AGV to guide it to perform the transportation task.

[0131] The location of each loading point and unloading point is fixed and known, and the storage location can be a single storage location or adjacent storage locations. In actual operation, each AGV has different specifications, and the moving speed and rotating speed are not constant. It also needs to consider the influence of factors such as AGV failure, obstacle avoidance, and power during driving.

[0132] Each node is only allowed to be occupied by one AGV at each time point, and each AGV has two states: empty and loaded.

[0133] At any given time point, each node in the system is only allowed to be occupied by one AGV, which avoids path conflicts at the node and ensures the smoothness and safety of AGV operation.

[0134] AGV state definition: Each AGV has two basic states: empty and loaded, according to its different transportation tasks.

[0135] Empty state: refers to the state of AGV not carrying any goods, on standby or moving to the loading point. In the empty state, AGV can flexibly respond to the scheduling instructions of the system and quickly move to the designated position.

[0136] Loaded state: refers to the state of AGV carrying goods, moving from the loading point to the unloading point. In the loaded state, the running speed and path selection of AGV need to consider the safety of goods and transportation efficiency.

[0137] The state transition of AGV is controlled by the intelligent scheduling algorithm of the scheduling system. When AGV completes the loading of goods, it automatically transitions from the empty state to the loaded state; conversely, when AGV completes the unloading of goods, it automatically transitions from the loaded state to the empty state.

[0138] The system dynamically allocates tasks and plans paths according to real-time logistics demand and the current state of AGV, ensuring that each AGV can efficiently complete its transportation task at the appropriate time point.

[0139] After receiving the task, the AGV sends the starting point of the task, the end point of the task, the number of the AGV and the current state to the console, and the console runs an algorithm to solve the conflict-free path of each AGV and then issues it.

[0140] In practical applications, the multi-agent conflict-free path planning system of the embodiment adopts a structured design to ensure the efficiency of the path planning process and the accuracy of the results, including the following modules:

[0141] Environment map loading module: This module is responsible for loading the environmental information required for path planning. By parsing the map file stored in JSON format, this module can accurately load the key information such as nodes and edges in the map, providing the necessary environmental data for subsequent path search and conflict detection.

[0142] Heuristic search module: In the path search phase, this module uses the SIPP path planning module combined with an improved heuristic function to evaluate the expected cost from the current node to the target node. The purpose of this module is to guide the search process to tilt towards paths with lower cost, thereby effectively avoiding local optimal solutions and improving the globality and efficiency of the search.

[0143] Layered conflict detection module: This module is specifically responsible for detecting potential conflicts between agents in real time during the path planning process. By using a layered approach, this module can systematically analyze the mutual relationships between agents and identify possible conflict points, providing accurate information for subsequent conflict resolution.

[0144] Conflict tree establishment and solution module: After detecting conflicts, this module constructs a conflict tree to represent the relationship between conflicts and solutions in a graphical manner. By solving the conflict tree, the invention can find the optimal conflict resolution strategy to ensure the feasibility and safety of path planning.

[0145] Comprehensive path and optimization module: After resolving all potential conflicts, this module is responsible for integrating the paths of each agent and performing further optimization. By applying advanced optimization algorithms, this module can improve the overall efficiency of the path, reduce path length and time cost, and thus improve the overall efficiency of the system.

[0146] Path segmentation and issuance module: As the final stage of the path planning process, this module issues the optimized path to each agent in segments. This process ensures that each agent can move safely and efficiently according to the predetermined path while maintaining the real-time nature and dynamic adaptability of path planning.

[0147] Through this modular design, the application not only improves the accuracy and efficiency of path planning, but also enhances the flexibility and scalability of the system. The collaborative work between various modules ensures the automation of the whole process from environment loading to path issuing, providing an innovative solution for multi-agent system path planning.

[0148] In summary, the application can more effectively handle the conflict problem in multi-agent path planning by improving the CBS algorithm, reduce the time cost of path planning, and improve the overall efficiency. The application can ensure the accuracy and feasibility of the path by constructing an accurate environment model and planning the path based on real-time task requests. The application ensures the safety of the path by fully considering the parking situation of adjacent storage locations and the minimum safety distance between agents during path planning, avoiding accidents such as collisions. The application can adapt to complex and changing scene requirements by dynamically adjusting the path planning strategy according to environmental changes. The application is not only suitable for path planning of k agents, but also can be extended to larger-scale multi-agent systems, with good scalability. The technical features of the above embodiments can be combined arbitrarily. In order to make the description simple, not all possible combinations of the technical features in the above embodiments are described, however, as long as the combination of these technical features does not exist contradictory, it should be considered as the scope of the present application.

[0149] The above embodiments are only preferred embodiments of the application, and cannot be used to limit the scope of protection of the application. Any non-essential changes and substitutions made by those skilled in the art based on the application shall fall within the scope of the application.

Claims

1. A multi-agent conflict-free path planning method based on an improved CBS algorithm, characterized in that, The method includes the following steps: By loading a map file and parsing the node information, edge attributes, and control point information in the map file, an environment model is constructed to determine the agent's starting and target positions. The task start point, end point, and current state information of k agents are parsed from the received task request information. Then, by traversing the task path set of all agents, it is determined whether the paths of all agents need to be replanned. When replanning the path, no-go points are added based on distance and the agent's endpoint position. Then, the conflict-free path solver is called to obtain the path set of k agents. The path set is truncated in space to prevent duplicate nodes from appearing in the distributed path. When there is no need to replan the path, add the unfinished path points in the task path of each agent to the forbidden points. When the current agent completes the current task and stops, plan a separate path for it and store the planned path in length. The generated paths are comprehensively judged and processed, taking into account factors such as the parking situation of adjacent storage locations and the minimum safe distance between each two intelligent agents sending out paths. By determining whether the paths are in the same or opposite direction, the shortest path that meets the safety requirements is selected from the length and then sent out. During the execution of tasks, the intelligent agent monitors environmental changes in real time and dynamically adjusts its path planning strategy accordingly.

2. The method according to claim 1, characterized in that: The conflict-free path solver uses an improved CBS algorithm to calculate conflict-free paths in the solution time. The path is solved by calling the find_solution() function. The CBS module first initializes the heuristic table by calculating the distance from the current point of all agents to the destination, and then initializes the CBS tree by the init_root() function. The planner is invoked to find a path for each agent. All paths are traversed in pairs to calculate whether there are conflicts between the path nodes in the task path set. Then, the existing conflicts are classified into three categories: full-base conflicts, half-base conflicts, and ordinary conflicts. Specifically, if the cost of the newly calculated path by two agents is higher than the cost of the previous one, it is counted as an excess cost and the conflict is added to the whole-base conflict; if only one agent has a higher cost, it is added to the half-base conflict; if neither agent has a higher cost than the previous one, it is added to the ordinary conflict. After classifying the calculated conflicts, add a root node to the CBS tree.

3. The method according to claim 1, characterized in that, Also execute: The point conflict detection function of the check_conflict() function in the CBS algorithm is replaced with the rectangular collision detection algorithm based on SAT. This enables the algorithm to more accurately simulate and detect physical collisions of AGVs in the real environment. The SAT algorithm treats the AGV as a rectangular entity that can rotate and move, and effectively identifies potential collisions by detecting the relative position and orientation between rectangles.

4. The method according to claim 1, characterized in that: When building the environment model, the node information, edge attributes, and control point information in the map.ilns file are parsed to construct the environment model. Read and parse the node information to obtain the name and spatial coordinates of each QRCNode. These nodes represent key locations in the environment, and the name and coordinates of each node are used for node identification and spatial positioning in path planning. Iterate through the edge_info collection to obtain information about each edge. An edge represents a path between nodes, including edge attributes. Based on this information, determine whether the path from the current node to the next node is feasible.

5. The method according to claim 1, characterized in that, The comprehensive judgment and processing of the generated path includes: Iterate through each path in the task path set. For each path, call the findLongestCommonSubarray() function to calculate the common road segments in the same direction and the common road segments in opposite directions between the current path and other paths in the task path set.

6. The method according to claim 5, characterized in that: The determination of public road sections includes: No common road segments: If the length of common road segments in both directions is 0, then the path has no intersection with other paths in the task path set and no interception operation is required. Point conflict: If the length of the common road segment in both the same and opposite directions is 1, it indicates that the path has a point conflict with other paths in the task path set. The path needs to be cut off to the point before the common intersection to avoid the conflict. Same-direction common road segment: If the length of the same-direction common road segment is greater than 1 and the length is greater than the length of the opposite-direction common road segment, it indicates that there is a same-direction common road segment between the two paths. The path needs to be adjusted according to the distance of the current path from the common road segment to avoid same-direction conflict. Reverse common road segment: If the length of the reverse common road segment is greater than 1 and the length is greater than the length of the same-direction common road segment, it indicates that there is a conflicting common road segment between the two paths. It is necessary to adjust the current path according to the distance from the common road segment to avoid reverse conflict. Based on the above judgment results, the paths are adjusted and truncated appropriately to ensure that the paths of all agents are conflict-free globally.

7. The method according to claim 1, characterized in that: When planning a route, the following should be included: Global path planning strategy: When all agents need to make path requests at the same time, the find_solution() function is called to perform unified path planning for all agents; Single path planning strategy: When only a few agents need to make path requests, call the findPath() function to plan a conflict-free path for a single agent.

8. The method according to claim 1, characterized in that: By traversing the set of task paths for all agents, it is determined whether path planning for all agents needs to be re-executed. This decision is based on the distance between agents and the destination location to ensure that the path planning result is as optimal as possible.

9. The method according to claim 2, characterized in that, Conflict resolution based on continuous time includes: When dealing with intersection conflicts, by monitoring whether two agents attempt to use the same intersection within the same time period, calculating the waiting time cost of the two agents, and selecting the agent with the smaller time cost to plan a new path, the conflict-free passage is ensured. When dealing with a collision, by detecting whether the two agents are on the opposing path, one agent is selected to wait at a safe node, while the other agent passes through first, thus avoiding a collision at the same node. When handling exchange conflicts, by detecting whether one agent is trying to follow the path of another agent, calculating the length of the agent on the exchange path and the time it takes to pass through the path nodes, determining the minimum waiting time, and ensuring a safe distance before proceeding; When handling fault conflicts, the system identifies and locates the faulty agent, adjusts the paths of other agents to avoid the faulty area, and ensures the continuous and safe operation of the system.

10. A multi-agent conflict-free path planning system based on an improved CBS algorithm, characterized in that, This system is applied to a multi-agent conflict-free path planning method based on an improved CBS algorithm as described in any one of claims 1 to 9, the system comprising: The conflict-free path generation module is used to generate a series of conflict-free paths based on the AGV's task requirements and environmental conditions. The deadlock detection and de-control module is used to detect possible deadlock situations by monitoring the status and path requests of AGVs in real time. Once a deadlock is detected, the module will automatically execute the de-control strategy to guide the affected AGVs to a safe avoidance point, thereby effectively preventing system stagnation. Path distribution module: After ensuring that there are no path conflicts and deadlock issues are resolved, this module is used to distribute the calculated optimal path to each AGV. During the path distribution process, the system will consider the current state and task priority of multiple agents to ensure the real-time performance and adaptability of the path.

Citation Information

Patent Citations

  • Heterogeneous multi-agent network connection cooperative scheduling planning method based on autonomous obstacle avoidance

    CN115016506A

  • Method and device for group-aware multi-agent motion path planning

    US20210342715A1