Multi-agent path planning method and related device

By prioritizing each agent in a multi-agent system and generating a grid map, the problem of task delays caused by narrow-channel conflicts is solved, achieving efficient path planning and resource allocation.

CN121409268BActive Publication Date: 2026-05-05ZHEJIANG FEIHANG INTELLIGENT TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHEJIANG FEIHANG INTELLIGENT TECH CO LTD
Filing Date
2025-10-15
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

In multi-agent systems, narrow-channel conflicts require some agents to withdraw from the channel to make way, resulting in a significant increase in task completion time and low efficiency.

Method used

By determining the priority of each agent, planning paths based on time steps, generating a grid map containing one-way traffic constraints, optimizing the movement direction of each agent in narrow channels, and avoiding conflicts.

Benefits of technology

It improves the efficiency of multi-agent task completion in narrow-channel environments, avoids narrow-channel conflicts, and optimizes the coordination of path planning and resource allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121409268B_ABST
    Figure CN121409268B_ABST
Patent Text Reader

Abstract

This application discloses a multi-agent path planning method and related equipment, relating to the field of artificial intelligence technology. The method includes: responding to a multi-agent path planning instruction, determining multiple agents for a path to be planned, determining the priority of each agent at the current planning node, determining a first grid map corresponding to the current planning node based on the priority, and planning the grid where each multi-agent will be located at the next planning node based on the one-way traffic constraint state of each loop in the first grid map and the priority. This application determines the one-way traffic constraint state of each loop at the current planning node based on priority, ensuring that the movement direction of each agent in each loop corresponding to the current planning node is unified, thereby avoiding narrow-channel conflicts and improving the efficiency of multi-agent task completion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of artificial intelligence technology, and in particular to multi-agent path planning methods and related devices. Background Technology

[0002] With the increasing prevalence of multi-agent systems in warehousing and logistics, industrial automation and other related scenarios, it has become crucial to efficiently complete work tasks in these scenarios based on multi-agent systems.

[0003] In practical applications, narrow passageways are common in map environments, such as aisles between warehouse shelves or work areas between production lines. These areas typically only allow a single agent to pass at a time. When faced with conflicts in narrow passageways, some agents often need to completely withdraw from the passageway to make way for others, resulting in a significant increase in task completion time.

[0004] Therefore, how to improve the efficiency of multi-agent tasks is an urgent problem to be solved.

[0005] The above content is only used to help understand the technical solution of this application and does not represent an admission that the above content is prior art. Summary of the Invention

[0006] The main purpose of this application is to provide a multi-agent path planning method and related equipment, aiming to solve the technical problem of how to improve the efficiency of multi-agent tasks.

[0007] To achieve the above objectives, this application proposes a multi-agent path planning method, which includes:

[0008] In response to multi-agent path planning instructions, determine the multiple agents whose paths are to be planned;

[0009] The priority of each agent in the current planning node is determined. Based on the priority, the first grid map corresponding to the current planning node is determined. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step.

[0010] Based on the one-way traffic constraint status of each loop in the first grid map and the priority, the grid where each multi-agent will be located in the next planning node is planned.

[0011] In one embodiment, the step of determining the priority of each agent in the current planning node further includes:

[0012] Obtain the unique identifier perturbation value corresponding to each agent, and determine the first planning node corresponding to the current task received by each agent;

[0013] Based on the first planning node and the current planning node, determine the number of time steps corresponding to each agent;

[0014] The priority of each agent is determined based on the number of time steps and the unique identifier perturbation value, wherein the priority is reset when the agent completes the current task.

[0015] In one embodiment, the step of determining the first grid map corresponding to the current planning node based on the priority further includes:

[0016] Obtain the second grid map corresponding to the previous planning node, wherein the previous planning node is the previous planning node corresponding to the current planning node;

[0017] Determine whether there is a target loop in the second grid map that satisfies the reset constraint;

[0018] If it exists, reset the one-way traffic constraint corresponding to the target loop, and reset the one-way traffic constraint of the target loop based on the reset target loop and the priority.

[0019] Based on the redefined target loop, determine the first grid map corresponding to the current planning node;

[0020] If it does not exist, set the second grid map as the first grid map.

[0021] In one embodiment, the step of resetting the one-way traffic constraint of the target loop based on the reset target loop and the priority further includes:

[0022] Based on the order of priority from highest to lowest, the optimal path for each agent is determined sequentially.

[0023] Determine the optimal path that first appears to contain the target loop, and obtain the target path;

[0024] Determine the direction of movement of the agent corresponding to the target path in the target loop, and reset the one-way traffic constraint of the target loop based on the direction of movement.

[0025] In one embodiment, the reset constraint is that the loop is occupied by no more than one agent.

[0026] In one embodiment, before the step of determining the first grid map corresponding to the current planning node, the method further includes:

[0027] Obtain the dimensions of the agent and the target environment in which the agent is located;

[0028] Based on the stated size, the target environment is modeled in a gridded manner to obtain an initial grid map, wherein the grid map is a biconnected undirected graph, the grid map contains loops, the loops are constructed from multiple grids, and the size of the grid is less than or equal to the size of the agent.

[0029] Furthermore, to achieve the above objectives, this application also proposes a multi-agent path planning device, which includes:

[0030] A response module, which is used to respond to a multi-agent path planning instruction and determine multiple agents for the path to be planned;

[0031] The determination module is used to determine the priority of each agent in the current planning node, and based on the priority, determine the first grid map corresponding to the current planning node. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step.

[0032] The planning module is used to plan the grid where each multi-agent will be located in the next planning node based on the one-way traffic constraint status of each loop in the first grid map and the priority.

[0033] In addition, to achieve the above objectives, this application also proposes a multi-agent path planning device, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the multi-agent path planning method as described above.

[0034] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the multi-agent path planning method described above.

[0035] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the multi-agent path planning method described above.

[0036] One or more technical solutions proposed in this application have at least the following technical effects:

[0037] This application proposes a multi-agent path planning method and related equipment, relating to the field of artificial intelligence technology. Compared with related technologies, when facing narrow channel conflicts, some agents often need to completely withdraw from the channel to make way for others, resulting in a significant increase in task completion time, in this application, firstly, in response to the multi-agent path planning instruction, multiple agents for the path to be planned are determined. Then, the priority of each agent at the current planning node is determined. Based on the priority, a first grid map corresponding to the current planning node is determined. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids, and the loops have a narrow channel structure. The priority is determined based on time steps. Finally, based on the one-way traffic constraints of each loop in the first grid map and the priority, the grid where each multi-agent is located at the next planning node is planned.

[0038] Understandably, this application determines the real-time priority of each agent based on the time step corresponding to each agent, and determines the first grid map corresponding to the current planning node based on the priority. That is, it determines the one-way traffic constraint state of each loop corresponding to the current planning node based on the priority, ensuring that the movement direction of each agent in each loop corresponding to the current planning node is uniform, thereby avoiding narrow channel conflicts and improving the efficiency of multiple agents in completing tasks. Attached Figure Description

[0039] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0040] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0041] Figure 1 This is a flowchart illustrating an embodiment of the multi-agent path planning method of this application.

[0042] Figure 2 This is a flowchart illustrating Embodiment 2 of the multi-agent path planning method of this application.

[0043] Figure 3 This is a schematic diagram of a grid map provided in Embodiment 2 of this application;

[0044] Figure 4 This is a schematic diagram of the module structure of the multi-agent path planning device according to an embodiment of this application;

[0045] Figure 5 This is a schematic diagram of the device structure of the hardware operating environment involved in the multi-agent path planning method in the embodiments of this application.

[0046] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0047] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.

[0048] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0049] The main solution in this application embodiment is:

[0050] In this embodiment, for ease of description, the multi-agent path planning device will be used as the execution subject in the following description.

[0051] Due to current technology, in practical applications, map environments commonly contain narrow passageways, such as aisles between warehouse shelves or work areas between production lines. These areas typically only allow a single agent to pass at a time. When faced with conflicts in narrow passageways, some agents often need to completely withdraw from the passageway to make way for others, resulting in a significant increase in task completion time.

[0052] This application provides a solution in which: first, in response to a multi-agent path planning instruction, multiple agents for a path to be planned are identified; then, the priority of each agent at the current planning node is determined; based on the priority, a first grid map corresponding to the current planning node is determined, wherein the first grid map includes, but is not limited to, multiple loops with one-way traffic constraints, wherein the loops are composed of multiple grids and the loops have a narrow channel structure; and the priority is determined based on a time step; finally, based on the one-way traffic constraints of each loop in the first grid map and the priority, the grid in which each multi-agent is located at the next planning node is planned.

[0053] Understandably, this application determines the real-time priority of each agent based on the time step corresponding to each agent, and determines the first grid map corresponding to the current planning node based on the priority. That is, it determines the one-way traffic constraint state of each loop corresponding to the current planning node based on the priority, ensuring that the movement direction of each agent in each loop corresponding to the current planning node is uniform, thereby avoiding narrow channel conflicts and improving the efficiency of multiple agents in completing tasks.

[0054] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device or multi-agent path planning device capable of performing the above functions. The following description uses a multi-agent path planning device as an example to illustrate this embodiment and the subsequent embodiments.

[0055] Based on this, embodiments of this application provide a multi-agent path planning method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the multi-agent path planning method of this application.

[0056] In this embodiment, the multi-agent path planning method includes steps S100~S300:

[0057] Step S100: In response to the multi-agent path planning instruction, determine the multiple agents for the path to be planned;

[0058] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device or multi-agent path planning device capable of performing the above functions. The following description uses a multi-agent path planning device as an example to illustrate this embodiment and the subsequent embodiments.

[0059] A multi-agent path planning instruction is a command signal designed to plan paths involving multiple agents. For example, in a logistics warehousing robot scenario, there are multiple transport robots (agents) in a warehouse that need to move from their respective starting positions to different target locations (such as shelves, loading / unloading areas, etc.). This instruction acts like a task scheduling command, telling the system that it now needs to plan the movement paths for these robots.

[0060] Multiple agents with paths to be planned refer to those agents whose movement routes have not yet been determined. Taking an intelligent warehousing system as an example, if multiple warehouse robots (agents) on the road need to replan their travel routes (such as the robot's next destination), then these warehouse robots that need to replan their routes are the multiple agents with paths to be planned. The system needs to accurately identify them in order to subsequently formulate appropriate path planning schemes for them.

[0061] Step S200: Determine the priority of each agent in the current planning node. Based on the priority, determine the first grid map corresponding to the current planning node. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step.

[0062] It should be noted that during the path planning process, the path is divided into multiple nodes, each node representing a stage or position in the path planning. The current planning node refers to the path planning stage that is currently being processed.

[0063] It should be noted that in multi-agent systems, due to limited resources (such as space and time), it is necessary to prioritize the agents. The priority determines the order of actions or resource allocation for the agents at the current planning node.

[0064] It should be noted that a time step refers to a discrete unit of time during path planning. Priority may be determined based on the order in which agents arrive at the current node, the urgency of the task, or other time-related factors. For example, agents that arrive first may be given higher priority, or agents with urgent tasks may have higher priority.

[0065] It should be noted that a grid map is a map representation method that divides the environment into multiple small units (grids), each of which can be represented as passable or impassable. In path planning, grid maps are used to represent the activity space of an agent.

[0066] The first grid map refers to the specific grid map associated with the current planning node. This map is generated based on the priority of the current planning node and other constraints, and is used to guide the agent's path planning.

[0067] It should be noted that priority affects constraints, which in turn affects the first grid cell map. For example, a higher-priority agent may obtain more right-of-way on the map, or its path planning may be prioritized, thus affecting grid allocation and path generation.

[0068] It should be noted that a loop refers to a structure in which the path forms a closed loop, and the agent can move cyclically on the loop.

[0069] It should be noted that one-way traffic constraints refer to certain loops in the map that allow only one-way traffic, similar to a one-way street. This constraint can prevent collisions or conflicts between agents. The first grid of the map may contain multiple such loop structures, each with its own specific one-way traffic rules.

[0070] A narrow-channel structure refers to a loop that is narrow, allowing only one agent to pass at a time, or requiring agents to pass in a specific manner (such as queuing). This structure increases the complexity of path planning because agents need to coordinate their actions within a limited space.

[0071] A loop is formed by connecting multiple grids, and the status of each grid (such as whether it is passable and the direction of passage) determines the passage rules of the loop.

[0072] It should also be noted that the priority is determined based on time steps. That is, at different time steps, the priority of an agent may be dynamically adjusted according to factors such as its arrival time and the urgency of the task.

[0073] In this embodiment, each agent has a priority at the current planning node, which is dynamically determined based on time steps. Based on the priority, a grid map (first grid map) associated with the current planning node is generated. This grid map contains multiple loops, which are narrow-channel structures with unidirectional traffic constraints. The entire path planning process needs to consider priorities, loop traffic rules, and coordination between agents to ensure the efficiency and safety of path planning.

[0074] Additionally, it should be noted that the process of planning conflict-free paths based on the first grid map also includes a path planning strategy that prioritizes path inheritance.

[0075] Priority inheritance refers to the practice in path planning where an agent's priority can be passed on or inherited by other agents or subsequent stages of path planning. This strategy helps the system better coordinate the behavior of multiple agents in dynamic environments, ensuring the efficiency and fairness of path planning.

[0076] Understandably, priority inheritance can help the system dynamically adjust the priorities of agents during path planning. For example, if a high-priority agent encounters an obstacle on the path, its priority can be passed on to other agents so that they can prioritize bypassing it. Through priority inheritance, the system can better optimize path selection during path planning, avoiding conflicts and congestion.

[0077] Specifically, the step of determining the priority of each agent in the current planning node further includes steps S210~S230:

[0078] Step S210: Obtain the unique identifier perturbation value corresponding to each agent, and determine the first planning node corresponding to the current task received by each agent;

[0079] In a multi-agent system, each agent has a unique identifier (ID) to distinguish different agents. This identifier can be a number, a string, or other unique code.

[0080] A perturbation value is a random or pseudo-random numerical value used to adjust or disturb the unique identifier of an agent in some way. This perturbation may be intended to increase the randomness of the system, avoid conflicts between agents, or to introduce some randomness into path planning to optimize path selection.

[0081] In multi-agent systems, multiple agents may simultaneously occupy the same priority level, leading to priority conflicts. By introducing perturbation values, a unique "offset" can be assigned to each agent, reducing the likelihood of conflicts. Perturbation values ​​can be used in path planning algorithms to help agents choose different paths, thereby optimizing the efficiency and effectiveness of overall path planning. In some cases, introducing randomness can help the system better adapt to dynamic environments, such as in dynamic task allocation or dynamic path planning.

[0082] In a multi-agent system, the current task refers to the specific goal or action that each agent needs to accomplish. Tasks may include moving to a certain location, performing a certain operation, etc.

[0083] During path planning, the path is divided into multiple nodes, each representing a stage or position in the path planning process. The first planning node is the starting node where the agent begins path planning; that is, the first node the agent starts planning after receiving the task. By determining the first planning node, the starting point of each agent's task can be clearly defined, ensuring the accuracy and consistency of task allocation.

[0084] It is important to note that in a multi-agent system, the actions of all agents need to be coordinated. Determining the first planning node helps the system better manage the order of actions and path selection of agents.

[0085] In this embodiment, the specific steps are as follows:

[0086] First, obtain the perturbation value: Each agent obtains a perturbation value associated with its unique identifier. This perturbation value can be used in path planning to help the agent avoid conflicts or optimize path selection.

[0087] Next, the first planning node is determined: Each agent determines its starting node (first planning node) for path planning based on its task. This node is the starting point for the agent to begin path planning, ensuring the accuracy of task allocation and the smooth progress of path planning.

[0088] For example: Suppose in a logistics warehouse, multiple robots (agents) need to move from their respective starting positions to different shelf locations to retrieve goods. Each robot has a unique identifier (such as a number). During task allocation:

[0089] Obtaining perturbation values: The system generates a random perturbation value for each robot, for example, robot 1 has a perturbation value of 0.1, and robot 2 has a perturbation value of 0.2. These perturbation values ​​can be used to adjust the robots' path selection to prevent them from arriving at the same shelf location at the same time.

[0090] Determining the first planning node: Based on task assignment, the system determines the starting node for each robot after receiving its task. For example, if robot 1's task is to move from starting position A to shelf position B, then A is robot 1's first planning node; if robot 2's task is to move from starting position C to shelf position D, then C is robot 2's first planning node. In this way, the system can better manage the actions of multiple agents, avoid conflicts, and optimize path planning.

[0091] Step S220: Based on the first planning node and the current planning node, determine the number of time steps corresponding to each agent;

[0092] The number of time steps refers to the total number of time steps that an agent takes from the first planning node to the current planning node. This number can be used to measure the agent's progress, speed, or efficiency.

[0093] The number of time steps is determined based on the path length, speed, or other relevant factors from the agent to the current planning node. Specific methods may include:

[0094] Path length: Calculate the path length from the first planning node to the current planning node, and then determine the number of time steps based on the agent's speed or the distance traveled per unit time step.

[0095] Task completion status: If path planning is related to task completion status, the number of time steps can be determined based on the number of steps or stages the agent completes the task.

[0096] Definition of a time step: The definition of a time step may vary from system to system. In some systems, a time step may represent an actual unit of time (such as seconds, minutes, etc.); in other systems, a time step may represent a logical unit of time (such as planning period, number of iterations, etc.).

[0097] Step S230: Based on the number of time steps and the unique identifier perturbation value, determine the priority of each agent, wherein the priority is reset when the agent completes the current task.

[0098] Understandably, in this embodiment, the system can dynamically manage the actions of multiple agents to ensure the efficiency and fairness of path planning.

[0099] Specifically, the step of determining the first grid map corresponding to the current planning node based on the priority further includes steps S240~S280:

[0100] Step S240: Obtain the second grid map corresponding to the previous planning node, wherein the previous planning node is the previous planning node corresponding to the current planning node;

[0101] The second grid map refers to a specific grid map associated with the previous planning node. It may differ from the first grid map of the current planning node and may contain different constraints.

[0102] The previous planning node refers to the planning node preceding the current planning node. It is the last node reached by the agent during the path planning process and is typically used for backtracking or reference in path planning.

[0103] Understandably, obtaining the second grid map of the previous planning node helps the agent maintain continuity during path planning. Based on information from the previous planning node, the agent can better plan the path from the current node to the next node.

[0104] Step S250: Determine whether there is a target loop in the second grid map that satisfies the reset constraint conditions;

[0105] A target loop refers to a loop in the second grid map that meets specific conditions. These conditions may be predefined in the path planning algorithm to satisfy certain specific path planning requirements.

[0106] In path planning, constraints refer to restrictions on path selection or behavior; these constraints can be one-way traffic constraints.

[0107] Specifically, the reset constraint is that the loop is occupied by no more than one agent.

[0108] Step S260: If it exists, reset the one-way traffic constraint corresponding to the target loop, and reset the one-way traffic constraint of the target loop based on the reset target loop and the priority.

[0109] Specifically, the step of resetting the one-way traffic constraint of the target loop based on the reset target loop and the priority further includes steps S261~S263:

[0110] Step S261: Determine the optimal path for each agent in descending order of priority.

[0111] The order of priorities from highest to lowest means that the system will process the highest-priority agents first, followed by the lower-priority agents in sequence. This order ensures that high-priority agents have priority access to resources or path planning opportunities.

[0112] The optimal path refers to the shortest path, the safest path, the most efficient path, or other best path calculated based on a specific objective function from the origin to the destination. The definition of the optimal path may vary depending on the application scenario. For example, in a logistics system, the optimal path may be the path with the shortest travel time; in an autonomous driving system, the optimal path may be the safest path.

[0113] The system determines the optimal path for each agent in descending order of priority. This means that when determining the optimal path for an agent, the system considers the current environmental state and the path planning of other agents.

[0114] In this application, the system assigns a priority to each agent according to predefined rules (such as the number of time steps, task urgency, and random perturbation values), and sorts the agents from highest to lowest priority. Then, the system determines the optimal path for each agent one by one according to the priority order. When planning a path for an agent, the system considers the current environmental state and the path planning of other agents. When planning a path for each agent, the system may dynamically adjust the path planning strategy to ensure the efficiency and fairness of the overall path planning. Priority ranking helps the system allocate computing resources more efficiently, prioritizing important tasks, thereby improving the efficiency of overall path planning. Furthermore, the system can dynamically adjust priorities and path planning strategies based on real-time environmental states and task requirements to adapt to complex multi-agent environments.

[0115] Step S262: Determine the optimal path that first appears and contains the target loop to obtain the target path;

[0116] Step S263: Determine the movement direction of the agent corresponding to the target path in the target loop, and reset the one-way passage constraint of the target loop based on the movement direction.

[0117] Step S270: Based on the redefined target loop, determine the first grid map corresponding to the current planning node;

[0118] Step S280: If it does not exist, set the second grid map as the first grid map.

[0119] Step S300: Based on the one-way traffic constraint status of each loop in the first grid map and the priority, plan the grid where each multi-agent will be located in the next planning node.

[0120] This application proposes a multi-agent path planning method and related equipment, relating to the field of artificial intelligence technology. Compared with related technologies, when facing narrow channel conflicts, some agents often need to completely withdraw from the channel to make way for others, resulting in a significant increase in task completion time, in this application, firstly, in response to the multi-agent path planning instruction, multiple agents for the path to be planned are determined. Then, the priority of each agent at the current planning node is determined. Based on the priority, a first grid map corresponding to the current planning node is determined. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids, and the loops have a narrow channel structure. The priority is determined based on time steps. Finally, based on the one-way traffic constraints of each loop in the first grid map and the priority, the grid where each multi-agent is located at the next planning node is planned.

[0121] Understandably, this application determines the real-time priority of each agent based on the time step corresponding to each agent, and determines the first grid map corresponding to the current planning node based on the priority. That is, it determines the one-way traffic constraint state of each loop corresponding to the current planning node based on the priority, ensuring that the movement direction of each agent in each loop corresponding to the current planning node is uniform, thereby avoiding narrow channel conflicts and improving the efficiency of multiple agents in completing tasks.

[0122] Based on the first embodiment of this application, in the second embodiment of this application, the content that is the same as or similar to that in Embodiment 1 above can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 2 Before step S200, the multi-agent path planning method further includes steps A01~A02:

[0123] Step A01: Obtain the size of the intelligent agent and the target environment in which the intelligent agent is located;

[0124] Step A02: Based on the size, perform raster modeling on the target environment to obtain an initial raster map, wherein the raster map is a biconnected undirected graph, the raster map contains loops, the loops are constructed from multiple raster cells, and the size of the raster cell is less than or equal to the size of the agent.

[0125] The size of an agent refers to its dimensions and shape in physical space, such as length, width, and height. This information is crucial for path planning and environmental modeling.

[0126] Raster modeling is a method of dividing a target environment into multiple small units (grids). Each grid can be represented as either passable or impassable, and is used for path planning and navigation. Raster modeling helps systems represent complex environments in a discrete manner, simplifying path planning calculations.

[0127] During the modeling process, the agent's size is used to determine the size and distribution of the grid. For example, if the agent is large, the grid size may be increased accordingly to ensure that the agent can move freely within the grid.

[0128] The initial grid map refers to the gridded representation of the environment generated before path planning begins. This map contains the state (accessible or inaccessible) of all grids in the target environment, as well as the agent's starting and target positions. The initial grid map is the foundation for path planning; the system will plan a path for the agent based on this map.

[0129] A biconnected undirected graph is a special graph structure in which there are at least two disjoint paths between any two nodes. This structure ensures that even if some paths are blocked, the agent can still reach the target location through other paths. In path planning, biconnected undirected graphs can improve the robustness of the system and reduce path failures caused by local obstacles. For example, if a node is blocked, the agent can detour through another path.

[0130] A grid is a basic unit in a grid map, representing a location in the environment. In path planning, grids are typically used to represent locations that an agent can move to. A loop is formed by connecting multiple grids, and the state of each grid (walkable or impassable) determines the loop's passage rules.

[0131] The grid size refers to the size of each individual grid cell. In raster modeling, the grid size needs to be adjusted according to the size of the agent.

[0132] The grid size is smaller than or equal to the agent's size, meaning the agent can move freely within the grid without being restricted by it. For example, if the agent's width is 2 meters, the grid width can be set to 2 meters or less to ensure the agent can move freely within the grid.

[0133] In this embodiment, the system acquires the size information of each agent, including length, width, and height. Then, the system performs raster modeling of the target environment based on the agent's size, generating an initial raster map. The size of the raster is smaller than or equal to the size of the agent to ensure that the agent can move freely within the raster.

[0134] For example, step 1: The target environment is rasterized and modeled according to the agent's size, constructing a two-dimensional raster map with a grid size smaller than or equal to the agent's size. In a specific embodiment of the present invention, step 1 includes the following specific steps:

[0135] Step 1.1: Based on the physical size of the agent (typically 1000 x ... The target environment is discretized into a two-dimensional raster map, and the raster resolution should meet the following requirements. ,in These represent the width and height of the agent, respectively. The aforementioned two-dimensional grid needs to be a biconnected undirected graph. vertex set Corresponding passable grid, edge set This represents the connectivity between adjacent grid cells. Biconnectivity is guaranteed by the following condition: for any... Remove The picture The connection remains intact.

[0136] Step 1.2: Perform narrow channel recognition: for each grid cell Calculate the neighborhood .when and In this case, v is labeled as a narrow-channel grid. Consecutive narrow-channel grids form topological edges, while non-narrow-channel regions are clustered to form topological nodes. For example... Figure 3 As shown in the figure, the "L"-shaped dashed box represents a narrow channel, while the circular and rounded rectangular dashed boxes represent two non-narrow channel areas.

[0137] Step 2: Extract the topology from the raster map, extracting narrow channel regions as edges in the topology graph and non-narrow channel regions as nodes. For example... Figure 1 As shown, the narrow channel and non-narrow channel regions are extracted into the topology diagram on the right.

[0138] Step 3: Based on the topological graph structure, perform loop decomposition to obtain a set of subgraphs composed of multiple loops, each loop consisting of several edges and nodes. This invention uses the Tarjan algorithm to perform loop decomposition on the topological graph, generating a set of loops. ,in As the base ring, For additional paths, satisfy .

[0139] Understandably, this approach allows the system to generate grid maps that adapt to the size of the agent, improving the flexibility and robustness of path planning.

[0140] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the multi-agent path planning method of this application. Any simple modifications based on this technical concept are within the protection scope of this application.

[0141] This application also provides a multi-agent path planning device; please refer to [reference needed]. Figure 4 The multi-agent path planning device includes:

[0142] Response module 10, the response module is used to respond to multi-agent path planning instructions and determine multiple agents of the path to be planned;

[0143] The determination module 20 is used to determine the priority of each agent in the current planning node, and based on the priority, to determine the first grid map corresponding to the current planning node. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step.

[0144] Planning module 30 is used to plan the grid where each multi-agent is located in the next planning node based on the one-way traffic constraint status of each loop in the first grid map and the priority.

[0145] In one embodiment, the determining module further includes:

[0146] The first acquisition unit is used to acquire the unique identifier perturbation value corresponding to each agent and determine the first planning node corresponding to the current task received by each agent.

[0147] The first determining unit is used to determine the number of time steps corresponding to each agent based on the first planning node and the current planning node;

[0148] The second determining unit is used to determine the priority of each agent based on the number of time steps and the unique identifier perturbation value, wherein the priority is reset when the agent completes the current task.

[0149] In one embodiment, the determining module further includes:

[0150] The second acquisition unit is used to acquire the second grid map corresponding to the previous planning node, wherein the previous planning node is the previous planning node corresponding to the current planning node;

[0151] The third determining unit is used to determine whether there is a target loop in the second grid map that satisfies the reset constraint conditions;

[0152] The first setting unit is used to reset the one-way traffic constraint corresponding to the target loop if it exists, and reset the one-way traffic constraint of the target loop based on the reset target loop and the priority.

[0153] The fourth determining unit is used to determine the first grid map corresponding to the current planning node based on the redefined target loop;

[0154] The second setting unit is used to set the second grid map as the first grid map if it does not exist.

[0155] In one embodiment, the determining module further includes:

[0156] The fifth determining unit is used to determine the optimal path for each agent in descending order of priority.

[0157] The sixth determining unit is used to determine the optimal path containing the target loop for the first time, and thus obtain the target path;

[0158] The seventh determining unit is used to determine the movement direction of the agent corresponding to the target path in the target loop, and reset the one-way passage constraint of the target loop based on the movement direction.

[0159] In one embodiment, the multi-agent path planning device can also be used to implement:

[0160] The reset constraint is that the loop is occupied by no more than one agent.

[0161] In one embodiment, the multi-agent path planning device further includes a grid map construction module, which further includes:

[0162] The third acquisition unit is used to acquire the size of the agent and the target environment in which the agent is located;

[0163] A construction unit is used to perform raster modeling of the target environment based on the size to obtain an initial raster map, wherein the raster map is a biconnected undirected graph, the raster map contains loops, the loops are constructed from multiple raster cells, and the size of the raster cell is less than or equal to the size of the agent.

[0164] The multi-agent path planning device provided in this application, employing the multi-agent path planning method described in the above embodiments, can solve the technical problems of multi-agent path planning. Compared with the prior art, the beneficial effects of the multi-agent path planning device provided in this application are the same as those of the multi-agent path planning method described in the above embodiments, and other technical features in the multi-agent path planning device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.

[0165] This application provides a multi-agent path planning device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the multi-agent path planning method in the above embodiment 1.

[0166] The following is for reference. Figure 5 The diagram illustrates a structural schematic of a multi-agent path planning device suitable for implementing embodiments of this application. The multi-agent path planning device in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 5 The multi-agent path planning device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0167] like Figure 5As shown, the multi-agent path planning device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.) that can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the multi-agent path planning device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touchscreen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. Communication device 1009 allows the multi-agent path planning device to communicate wirelessly or wiredly with other devices to exchange data. While the figure shows multi-agent path planning devices with various systems, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.

[0168] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0169] The multi-agent path planning device provided in this application, employing the multi-agent path planning method described in the above embodiments, can solve the technical problems. Compared with the prior art, the beneficial effects of the multi-agent path planning device provided in this application are the same as those of the multi-agent path planning method described in the above embodiments, and other technical features of this multi-agent path planning device are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0170] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0171] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0172] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, which are used to execute the multi-agent path planning method described in the above embodiments.

[0173] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0174] The aforementioned computer-readable storage medium may be included in the multi-agent path planning device; or it may exist independently and not be assembled into the multi-agent path planning device.

[0175] The aforementioned computer-readable storage medium carries one or more programs that, when executed by the multi-agent path planning device, cause the multi-agent path planning device to:

[0176] In response to multi-agent path planning instructions, determine the multiple agents whose paths are to be planned;

[0177] The priority of each agent in the current planning node is determined. Based on the priority, the first grid map corresponding to the current planning node is determined. The first grid map includes, but is not limited to, multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step.

[0178] Based on the one-way traffic constraint status of each loop in the first grid map and the priority, the grid where each multi-agent will be located in the next planning node is planned.

[0179] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0180] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0181] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0182] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described multi-agent path planning method, and is capable of solving the technical problem of multi-agent path planning. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as the beneficial effects of the multi-agent path planning method provided in the above embodiments, and will not be repeated here.

[0183] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the multi-agent path planning method described above.

[0184] The computer program product provided in this application can solve the technical problem of multi-agent path planning. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the multi-agent path planning method provided in the above embodiments, and will not be repeated here.

[0185] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.

Claims

1. A multi-agent path planning method, characterized in that, The multi-agent path planning method includes: In response to multi-agent path planning instructions, determine the multiple agents whose paths are to be planned; The priority of each agent at the current planning node is determined. Based on the priority, the first grid map corresponding to the current planning node is determined. The first grid map includes multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step. Based on the one-way traffic constraint status of each loop in the first grid map and the priority, the grid where each multi-agent will be located in the next planning node is planned. The step of determining the first grid map corresponding to the current planning node based on the priority further includes: Obtain the second grid map corresponding to the previous planning node, wherein the previous planning node is the previous planning node corresponding to the current planning node; Determine whether there is a target loop in the second grid map that satisfies the reset constraint; If it exists, reset the one-way traffic constraint corresponding to the target loop, and reset the one-way traffic constraint of the target loop based on the reset target loop and the priority. Based on the redefined target loop, determine the first grid map corresponding to the current planning node; If it does not exist, set the second grid map as the first grid map.

2. The multi-agent path planning method as described in claim 1, characterized in that, The step of determining the priority of each agent in the current planning node further includes: Obtain the unique identifier perturbation value corresponding to each agent, and determine the first planning node corresponding to the current task received by each agent; Based on the first planning node and the current planning node, determine the number of time steps corresponding to each agent; The priority of each agent is determined based on the number of time steps and the unique identifier perturbation value, wherein the priority is reset when the agent completes the current task.

3. The multi-agent path planning method as described in claim 1, characterized in that, The step of resetting the one-way traffic constraint of the target loop based on the reset target loop and the priority further includes: Based on priority from highest to lowest, the optimal path for each agent is determined sequentially. Determine the optimal path that first appears to contain the target loop, and obtain the target path; Determine the direction of movement of the agent corresponding to the target path in the target loop, and reset the one-way traffic constraint of the target loop based on the direction of movement.

4. The multi-agent path planning method as described in claim 1, characterized in that, The reset constraint is that the loop is occupied by no more than one agent.

5. The multi-agent path planning method as described in claim 1, characterized in that, Before the step of determining the first grid map corresponding to the current planning node, the method further includes: Obtain the dimensions of the agent and the target environment in which the agent is located; Based on the stated size, the target environment is modeled in a gridded manner to obtain an initial grid map, wherein the grid map is a biconnected undirected graph, the grid map contains loops, the loops are constructed from multiple grids, and the size of the grid is less than or equal to the size of the agent.

6. A multi-agent path planning device, characterized in that, The multi-agent path planning device includes: A response module, which is used to respond to a multi-agent path planning instruction and determine multiple agents for the path to be planned; The determination module is used to determine the priority of each agent in the current planning node, and based on the priority, determine the first grid map corresponding to the current planning node. The first grid map includes multiple loops with one-way traffic constraints. The loops are composed of multiple grids and have a narrow channel structure. The priority is determined based on the time step. The planning module is used to plan the grid where each multi-agent will be located in the next planning node based on the one-way traffic constraint state of each loop in the first grid map and the priority. The multi-agent path planning device is also used to achieve: Obtain the second grid map corresponding to the previous planning node, wherein the previous planning node is the previous planning node corresponding to the current planning node; Determine whether there is a target loop in the second grid map that satisfies the reset constraint; If it exists, reset the one-way traffic constraint corresponding to the target loop, and reset the one-way traffic constraint of the target loop based on the reset target loop and the priority. Based on the redefined target loop, determine the first grid map corresponding to the current planning node; If it does not exist, set the second grid map as the first grid map.

7. A multi-agent path planning device, characterized in that, The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the multi-agent path planning method as described in any one of claims 1 to 5.

8. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the multi-agent path planning method as described in any one of claims 1 to 5.

9. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the steps of the multi-agent path planning method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Multi-robot cooperative path planning method under traffic direction limitation

    CN112859847A