Multi-Robot Path Planning Method Based on Temporal Window Matrix

Through a multi-robot path planning method based on the timing window matrix, combined with the improved ant colony algorithm and two types of ant pheromones, the coupling points are processed, and the problem of handling coupling points in multi-robot path planning is solved, the robot's uniform speed driving and path optimization is achieved, the mechanical control requirements are reduced, and the computing efficiency and planning success rate are improved.

CN115562268BActive Publication Date: 2025-07-29HUAIAN BOSHUN TECHNOLOGY CO LTD

Patent Information

Application Number
CN202211218206.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-30
Publication Date
2025-07-29
Estimated Expiration
2042-09-30

AI Technical Summary

Technical Problem

When dealing with coupling points, it is difficult for the existing multi-robot path planning method to achieve robot driving at a constant speed without changing the robot's travel path. The existing methods require high mechanical control of real robots and have large calculations, making it difficult to maintain the optimality and flexibility of the path.

Method used

The multi-robot path planning method based on the timing window matrix is adopted. Through environment initialization, basic path planning and conflict processing modules, the improved ant colony algorithm, two types of ants (greedy ants and shunt ants) and two pheromones are used to process coupling points in combination with the timing window matrix algorithm to ensure that the robot does not collide and only perform mechanical control through stopping, traveling and steering.

Benefits of technology

In multi-robot path planning, the optimization of the original path is maintained, the requirements for real robot mechanical control are reduced, the computing efficiency and the success rate of path planning are improved, and the robot can drive at a constant speed to avoid collisions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115562268B_ABST
    Figure CN115562268B_ABST
Patent Text Reader

Abstract

The present invention discloses a multi-robot path planning method based on a time-series window matrix. A basic path is planned for each robot in the cluster through a path planning module, and then all coupling points are processed by a conflict handling module to ensure that the robots do not collide with each other during travel. It includes the establishment of three modules, specifically an environment initialization module, a basic path planning module, and a conflict handling module. This method completes the resolution of coupling point conflicts with a polynomial time complexity through a unified time-series window matrix, allows real robots to travel at a constant speed, and real robots only avoid each other by stopping and traveling without changing the travel trajectory of the robots, improving the actual application effect.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a robot path planning method, and more particularly to a multi-robot path planning method based on a time-series window matrix. Background Art

[0002] The multi-robot path planning problem is one of the important basic problems of group perception and coordination of a cluster of robots. Compared with traditional single-robot path planning, multi-robot path planning not only needs to consider obstacle avoidance and optimal path, but also needs to consider the path coupling problem between robots. Simply put, robots become movable obstacles to each other, so it is more complex.

[0003] Existing multi-robot path planning methods can be divided into centralized, distributed, and hybrid types. Centralized planning is carried out through a central processing module. After successful planning, the path is sent to each robot. Distributed planning mainly relies on robots to plan autonomously and avoid obstacles autonomously, usually through some self-learning methods. Distributed planning performs well in terms of flexibility, fault tolerance, adaptability, etc., but it cannot coordinate the entire cluster, so it is difficult to handle planning problems with complex workspaces. Therefore, a hybrid planning method that combines centralized planning and distributed planning through reasonable design is a more feasible method. The main difficulty in multi-robot path planning lies in the handling of coupling points. The existing handling methods mainly include: 1) avoiding other moving robots by adjusting the traveling speed of the robot; 2) the robot re-planning the path at the coupling point. The first method requires a high control accuracy for the traveling speed of real robots, and the actual application effect is often not good. The second method is difficult to maintain the optimality of the original planned path and has the disadvantage of high computational complexity. Summary of the Invention

[0004] The object of the present invention is to provide a multi-robot path planning method based on a time-series window matrix, which resolves coupling point conflicts with polynomial time complexity through a unified time-series window matrix, allows real robots to travel at a constant speed, and real robots only complete mutual avoidance by stopping and traveling, and does not change the traveling trajectory of the robot, thereby improving the actual application effect.

[0005] The technical solution of the present invention is: a multi-robot path planning method based on a time-series window matrix, which plans a basic path for each robot in the cluster through a path planning module, and then processes all coupling points through a conflict handling module to ensure that the robots will not collide with each other during travel; the method includes the establishment of three modules, specifically an environment initialization module, a basic path planning module, and a conflict handling module;

[0006] (1) Establishment of the environment initialization module

[0007] Model the workspace environment to obtain the environment initialization module, and the steps are as follows:

[0008] Step 1: Grid the environment map to form a grid map with a cell density of X×Y. Each cell is represented as c (x,y) , and the abscissa is represented as c x , and the ordinate is represented as c y ; The obstacle cells are marked as "0", and the feasible cells are marked as "1"; The coordinates of the lower right corner of each cell in the grid in the rectangular coordinate system are used as the cell coordinates;

[0009] Step 2: Assume that the scale of robots in the cluster is M. Then, the starting cell coordinates of the m-th (m = 1,..., M) robot are recorded by S m (x,y) , and the target cell coordinates are recorded by D m (x,y) ; Mark the starting cell and target cell of each robot in the grid map;

[0010] (2) Establishment of the basic path planning module

[0011] Perform path planning for the m-th robot to obtain the basic path planning module, and the steps are as follows:

[0012] Step 1: Initialize the pheromone of the grid map: Each cell records two kinds of pheromones, which are calculated by the functions θ1(c (x ,y) ) and θ2(c (x,y) ). The calculation of the first pheromone θ1(c (x,y) ) is based on the number of times the cell c (x,y) has been walked through, and the initial value is 0; The calculation of the second pheromone θ2(c (x,y) ) is based on the length of the shortest path where the cell is located, and the initial value is X×Y.

[0013] Step 2: Initialize the ant colony: Initialize an ant colony with a population size of I at the initial point S m (x,y) ; The i-th ant is symbolized as Ant i ; Divided by the subscript, when i mod 10 = 0, the Ant i ant acts as a shunt ant (mod represents the modulo operation) and performs shunt search operations; when i mod 10 ≠ 0, the Ant i ant acts as a greedy ant and performs greedy search operations;

[0014] Step 3: Ant colony search: The ant colony completes the execution search within the range limited by the maximum number of iterations MAX, and uses P m to record the current global optimal path; P iRecord Ant i The optimal path found. During the execution of the algorithm, P i , P m and the pheromone of the grid map are continuously updated;

[0015] Step 4: Output the optimal path P m ;

[0016] (3) Establishment of the conflict handling module

[0017] Process the coupling points of the robot paths in the cluster through the time window matrix algorithm; when M robots have all planned M feasible paths through the basic path planning module, store the M feasible paths in a matrix A with M rows and N columns, where N = X × Y; the storage method is that the m-th path P m is stored in the m-th row of the matrix A; the matrix A is called the time window matrix, where A m,n represents the element in the m-th row and n-th column of the matrix (essentially a cell), and A m represents all the elements in the m-th row. Here, A m is understood as a linear list, and A n represents all the elements in the n-th column; the execution process of the time window matrix algorithm is as follows:

[0018] Step 1: Establish the time window matrix A and insert data; insert the M paths as M rows of data into the matrix A; at this time, the lengths of the M rows of data in A are different; each data is essentially a cell, and each row of data A m is understood as a linear list;

[0019] Step 2: Find the coupling points in the matrix A; taking the processing of the data in the n-th column as an example (the processing method for other columns is the same), traverse the data in the n-th column, and when the same cell appears, a coupling point is found;

[0020] Step 3: Process the coupling points; for example, the cell stored in the m-th row and n-th column is the same as the cell stored in the (m + e)-th row and n-th column, that is: A m,n = A m+e,n ; then compare the lengths of the m-th row and the (m + e)-th row in A, and select the shorter one to perform a linear list insertion. The specific method is as follows:

[0021] IF length(A m ) ≤ length(A m+e ) THEN

[0022] {

[0023] insert(A m , n, A m,n-1 )

[0024] }

[0025] ELSE

[0026] {

[0027] insert(A m+e ,n,A m+e,n-1 )

[0028] }

[0029] length(A m ) represents finding the length of a linear list A m ; insert(A m ,n,A m,n-1 ) means inserting the element A m,n-1 into the n-th position of the linear list A m ; insert(A m+e ,n,A m+e,n-1 ) means inserting the element A m+e,n-1 into the n-th position of the linear list A m+e ;

[0030] Step 4: The data processing of the n-th column is completed.

[0031] More specifically, in step 3 of establishing the basic path planning module, the ant colony search specifically includes: P i Record the optimal path currently discovered by ant Ant i . The path currently traveled by Ant i is path i , path i = {p1, p2,..., p t}, where path i is a taboo linear list, whose characteristic is that the elements in it are ordered and non-repeating. p1, p2,..., p t are cells, and p t stores the cell where ant Ant i is located at time t, that is, the cell where Ant i is currently located. p1, p2,..., p t constitute the traveling path of Ant i ; represents the feasible region of Ant n , which is composed of all feasible cells around p t except p t-1 ; constitutes;

[0032] If Ant i is a shunt ant, then perform the shunt search operation. The further movement of Ant i is completed according to the following formula:

[0033]

[0034] where

[0035] f j ∈F i

[0036] In the above formula represents the calculation of the first type of pheromone, which is calculated based on the number of times the cell has been traversed. For the cell c i on the path (x,y) , the update method of the first type of pheromone is as follows:

[0037] θ1(c (x,y) ) = θ1(c (x,y) ) + 1

[0038] represents the path i on which the cell c (x,y) is traversed and the count is incremented by 1;

[0039] is the heuristic information, and its meaning is the Euclidean distance to the target cell, and the calculation method is:

[0040]

[0041] The parameters α1 and α2 belong to hyperparameters and determine the importance of pheromone and heuristic information. During the movement of the split ants, the algorithm encourages discovering new paths through splitting, so α1 = 0.6 and α2 = 0.4; rand{F i} represents randomly selecting a cell from the set F i ; r is a random number and r ~ U(0, 1); r0 is a threshold and r0 = 0.7;

[0042] If Ant i is a greedy ant, then perform the greedy search operation, and Ant i performs further steps according to the following formula:

[0043]

[0044] where

[0045] f j ∈F i

[0046] In the above formula represents the calculation of the second type of pheromone, and the update method of the second type of pheromone is:

[0047] θ2(c (x,y)) = min{length(path i ), θ2(c (x,y) )}

[0048] The second type of pheromone records the shortest path length value passing through c (x,y) , where length(path i ) represents calculating the path length of path i ;

[0049] The meaning is the same as that of the shunt search; the parameters β1 and β2 belong to hyperparameters, which determine the importance of pheromone and heuristic information. During the greedy ant movement process, the algorithm encourages the discovery of the shortest path. Therefore, β1 = 0.4 and β2 = 0.6; rand{F i} has the same meaning as the shunt search; the meanings of r and r0 are the same as those of the shunt search;

[0050] When there is a cell D i in F m (x,y) , a feasible path is found, and P i is updated according to the following formula,

[0051] P i = Opt(P i , path i )

[0052] P m is updated according to the following formula:

[0053] P m = Opt(P m , path i )

[0054] Further update the cell information pheromone on all path i paths.

[0055] Due to the adoption of the above technical solutions, the present invention has the following advantages:

[0056] (1) Different from the existing multi-robot path planning methods that focus on coupled paths, the coupled points processed by the present invention do not change the traveling route of the original planned path, and have little impact on the basic planned path, maintaining the optimality of the basic planned path to a certain extent.

[0057] (2) The present invention requires that the mechanical control of the real robot only includes "stop", "travel" and "turn", and does not require the real robot to perform variable-speed motion. The requirement for the mechanical control of the real robot is relatively low, and it is easier to be implemented in engineering.

[0058] (3) During the basic path planning process, an improved ant colony algorithm is used, which employs two types of ant colonies and two different pheromones. In the algorithm, the diversion colony focuses on discovering new paths to increase the diversity of algorithm solutions, while the ordinary colony focuses on tracing and optimizing along the current optimal path. Such a design improves the probability of the algorithm finding the optimal path.

[0059] (4) The time window matrix algorithm has a polynomial time complexity, ensuring that robots in the cluster do not collide and has high efficiency.

[0060] (5) An improved ant colony algorithm is adopted for the individual path planning of robots to ensure a high success rate of the initial planned path.

[0061] (6) The individual ants in the population include two types: greedy ants and diversion ants. Greedy ants tend to move in the direction of high pheromone concentration to trace and optimize on the current path, while diversion ants tend to move in the direction of low pheromone concentration and are good at discovering new paths. Description of the Drawings

[0062] Figure 1 is the overall flowchart of the present invention;

[0063] Figure 2 is the schematic diagram of the grid map of the environment initialization module;

[0064] Figure 3 is the flowchart of the basic path planning module;

[0065] Figure 4 is the flowchart of the conflict handling module; Detailed Embodiments

[0066] The technical solutions of the present invention will be described in detail below in conjunction with the drawings and embodiments, but should not be construed as a limitation to the technical solutions. In the following description, a large number of specific details are given to provide a more thorough understanding of the present invention. However, for those skilled in the art, the present invention can be implemented without one or more of these details. In other examples, in order to avoid confusion with the present invention, some well-known technical features in the art are not described.

[0067] As Figure 1 shown, the overall process of the present invention is given; referring to Figure 1 , the following is a detailed description of each step in the method.

[0068] Step S101: Combine Figure 2 The environmental map is gridified to form a grid map with a cell density of X×Y, and each cell is represented as c (x,y) , the abscissa is represented as c x , and the ordinate is represented as c y; The obstacle cell 100 is marked as "0", and the feasible cell 200 is marked as "1"; The coordinates of the lower right corner of each cell in the grid in the rectangular coordinate system are used as the cell coordinates;

[0069] Step S102: Assume the scale of the robots in the cluster is M. Then, the coordinates of the starting cell 300 of the m-th (m = 1, …, M) robot in the cluster are recorded by S m (x,y) and the coordinates of the target cell 400 are recorded by D m (x,y) ; Mark the starting cell and the target cell of each robot in the grid map;

[0070] Step S103: Perform basic path planning for the M robots in the cluster, and generate a basic path for each robot. This basic path is optimal or relatively optimal, and the coupling points are not considered in the planning process;

[0071] Step S104: Process the coupling points of the paths of the robots in the cluster by the time window matrix algorithm;

[0072] Step S105: The data in the m-th row of the time window matrix A corresponds to the final planned path of the m-th robot in the cluster, and all paths are output.

[0073] The following combines Figure 3 the flowchart to describe the basic path planning module in step S103 in detail:

[0074] Step S201: Initialize the pheromone of the grid map; Each cell records two types of pheromones, which are calculated by the functions θ1(c (x,y) ) and θ2(c (x,y) ). The calculation of the first type of pheromone θ1(c (x,y) ) is based on the number of times the cell c (x,y) has been walked through, and the initial value is: 0; The calculation of the second type of pheromone θ2(c (x,y) ) is based on the length of the shortest path where the cell is located, and the initial value is: X × Y;

[0075] Step S202: Initialize the ant colony; Initialize an ant colony with a population size of I at the initial point S m (x,y) position. The i-th ant is symbolized as Ant i ; Divided by the subscript, when i mod 10 = 0, the Ant i ant is used as a shunt ant (mod represents the modulo operation) and performs a shunt search operation; when i mod 10 ≠ 0, the Ant i ant is used as a greedy ant and performs a greedy search operation;

[0076] Step S203: Ant Colony Search; The ant colony completes the execution of the search within the range limited by the maximum number of iterations MAX, and uses P m to record the current globally optimal path; P i to record the current ant Ant i the optimal path found by one, Ant i the path currently traveled is path i , path i = {p1, p2, …, p t}, where path i is a taboo linear list, whose characteristic is that the elements in it are ordered and non-repeating, p1, p2, …, p t are cells, p t stores the cell where the ant Ant i is located at time t, that is, the cell where Ant i is currently located; p1, p2, …, p t constitute the traveling path of Ant i ; represents the feasible region of Ant n , which is composed of all feasible cells around p t except p t-1 ; ;

[0077] If Ant i is a shunt ant, then perform the shunt search operation, and Ant i advances further according to formula (1):

[0078]

[0079] In formula (1) represents the calculation of the first type of pheromone; is the heuristic information, and its meaning is the Euclidean distance to the target cell; is calculated by formula (2):

[0080]

[0081] The parameters α1 and α2 belong to hyperparameters and determine the importance of pheromone and heuristic information. During the movement of the shunt ant, the algorithm encourages the discovery of new paths through shunting. Therefore, α1 = 0.6 and α2 = 0.4; rand{F i} represents randomly selecting a cell from the set F i ; r is a random number and r ~ U(0, 1); r0 is a threshold, r0 = 0.7;

[0082] If Ant iIf it is a greedy ant, perform the greedy search operation, then Ant i It is further completed according to formula (3):

[0083]

[0084] In formula (3) represents the calculation of the second type of pheromone; The meaning is the same as that of the shunt search; the parameters β1 and β2 belong to hyperparameters, which determine the importance of pheromone and heuristic information. During the movement of the greedy ant, the algorithm encourages the discovery of the shortest path. Therefore, β1 = 0.4 and β2 = 0.6; rand{F i} has the same meaning as the shunt search; the meanings of r and r0 are the same as those of the shunt search;

[0085] When there is a cell D i in F m (x,y) , a feasible path is found. According to formula (4), Ant i The optimal path P i found:

[0086] P i = Opt{P i , path i} (4)

[0087] Update the global optimal path P according to formula (5) m :

[0088] P m = Opt(P m , path i ) (5)

[0089] Further update the cell information pheromone on all path i paths; for the cell c i on path (x,y) , the update method of the first type of pheromone is:

[0090] θ1(c (x,y) ) = θ1(c (x,y) ) + 1 (6)

[0091] represents that the number of walks of the cell c i on path (x,y) is increased by 1;

[0092] The update method of the second type of pheromone is:

[0093] θ2(c (x,y) ) = min(length(path i ), θ2(c(x,y) )) (7)

[0094] Indicates the path i Cell c (x,y) The second type of pheromone records the shortest path length value passing through c (x,y) , where length(path i ) represents calculating the length of path i Path length

[0095] The following combines with Figure 4 The flowchart of to describe in detail the processing of the coupling point by the timing window matrix algorithm in the conflict handling module of step S104:

[0096] Step S301: Establish the timing window matrix A and insert data; Insert the M paths planned in step S103 as M rows of data into the matrix A; The scale of the matrix A is M rows and N columns, where N = X × Y; Store the m-th path P m Correspondingly in the m-th row of the matrix A; At this time, the lengths of the M rows of data in A are different; Each data is essentially a cell, and each row of data A m Can be understood as a linear list;

[0097] Step S302: Set the loop control variable n ← 0;

[0098] Step S303: Execute n ← n + 1;

[0099] Step S304: Process the coupling points existing in the A n Column; Traverse all cells in the A n Column. If there are identical cells, handle them according to the following method: If the cell stored in the m-th row and n-th column is the same as the cell stored in the (m + e)-th row and n-th column, that is: A m,n = A m+e,n ; Then compare the lengths of the m-th row and the (m + e)-th row in A, and select the shorter one to perform a linear list insertion. The specific method is as follows:

[0100] IF length(A m ) ≤ length(A m+e ) THEN

[0101] {

[0102] insert(A m , n, A m,n-1 )

[0103] }

[0104] ELSE

[0105] {

[0106] insert(A m+e ,n,A m+e,n-1 )

[0107] }

[0108] length(A m ) represents finding the length of a linear list A m ; insert(A m ,n,A m,n-1 ) represents inserting the element A m,n-1 into the n-th position of the linear list A m ; insert(A m+e ,n,A m+e,n-1 ) represents inserting the element A m+e,n-1 into the n-th position of the linear list A m+e ;

[0109] Step S305: If n ≤ N, then execute S303; otherwise execute S306;

[0110] Step S306: Output matrix A, and the conflict handling is completed.

Claims

1. A multi-robot path planning method based on a time-series window matrix. A basic path is planned for each robot in the cluster through a path planning module, and then all coupling points are processed by a conflict handling module to ensure that the robots do not collide with each other during movement. The method includes the establishment of three modules, specifically an environment initialization module, a basic path planning module, and a conflict handling module. (1) Establishment of the environment initialization module Model the workspace environment to obtain the environment initialization module, and the steps are as follows: Step 1: Grid the environmental map to form a grid map with a cell density of X×Y. Each cell is represented as c (x,y) , the abscissa is represented as c x , the ordinate is represented as c y ; The obstacle cells are marked as "0", and the feasible cells are marked as "1"; The coordinates of the lower right corner of each cell in the grid in the rectangular coordinate system are used as the cell coordinates; Step 2: Assume that the scale of robots in the cluster is M. Then, the coordinates of the starting cell of the m-th robot are recorded by S m (x,y) and the coordinates of the target cell are recorded by D m (x,y) , where m = 1, …, M. Mark the starting cell and the target cell of each robot in the grid map; (2) Establishment of the basic path planning module Perform path planning for the m-th robot to obtain the basic path planning module, and the steps are as follows: Step 1: Initialize the pheromone of the grid map: Each cell records two types of pheromones, which are calculated by the functions θ1(c (x,y) ) and θ2(c (x,y) ). The first pheromone θ1(c (x,y) ) is calculated based on the number of times the cell c (x,y) has been traversed, and the initial value is 0. The second pheromone θ2(c (x,y) ) is calculated based on the shortest path length where the cell is located, and the initial value is X × Y; Step 2: Initialize the ant colony: At the initial point S m (x,y) Initialize the ant colony with a population size of I at the position; The i-th ant is symbolized as Ant i ; Divided by subscript, when i mod 10 = 0, Ant i The ant acts as a shunt ant, mod represents the modulo operation, and performs a shunt search operation; when i mod 10 ≠ 0, Ant i The ant acts as a greedy ant and performs a greedy search operation; Step 3: Ant Colony Search: The ant colony completes the execution of the search within the limit of the maximum number of iterations MAX, and uses P m to record the current globally optimal path; P i to record the optimal path discovered by Ant i During the execution of the algorithm, P i and P m and the pheromone of the grid map are continuously updated; Step 4: Output the optimal path P m ; (3) Establishment of the conflict handling module Process the coupling points of the robot paths in the cluster through the time-series window matrix algorithm. After M robots all plan M feasible paths through the basic path planning module, store the M feasible paths in a matrix A with M rows and N columns, where N = X × Y. The storage method is the m-th path P m Stored in the m-th row of matrix A; Matrix A is called the time series window matrix, where A m,n Represents the element in the m-th row and n-th column of the matrix, which is essentially a cell, A m Represents all elements in the m-th row. Here, A m Is understood as a linear list, A n Represents all elements in the n-th column; The execution process of the time series window matrix algorithm is as follows: Step 1: Establish a timing window matrix A and insert data; Insert M paths as M rows of data into matrix A; At this time, the lengths of the M rows of data in A are different; Each piece of data is essentially a cell, and each row of data A m is understood as a linear list; Step 2: Search for the coupling points in matrix A. Taking the processing of the n-th column data as an example, the processing method for other columns is the same. Traverse the n-th column data. When the same cell appears, a coupling point is found. Step 3: Coupling point processing; for example, the cell stored in row m and column n is the same as the cell stored in row m+e and column n, that is: A m,n = A m+e,n ; then compare the lengths of row m and row m+e in A, and select the shorter one to perform a linear list insertion. The specific method is as follows: length(A m ) represents finding the length of a linear list A m ; insert(A m , n, A m,n-1 ) means inserting the element A m,n-1 into the n-th position of the linear list A m ; insert(A m+e , n, A m+e,n-1 ) means inserting the element A m+e,n-1 into the n-th position of the linear list A m+e ; Step 4: The processing of the n-th column data is completed.

2. The multi-robot path planning method based on a time-series window matrix according to claim 1, wherein: In step 3 of establishing the basic path planning module, ant colony search specifically includes: P i Record the current ant Ant i The optimal path found, Ant i The current traveling path is path i , path i ={p1, p2, …, p t}, where path i is a taboo linear list, whose characteristic is that the elements in it are ordered and non-repetitive, p1, p2, …, p t are cells, and p t stores the cell where the ant Ant i is located at time t, that is, the cell where Ant i is currently located. p1, p2, …, p t constitute the traveling path of Ant i ; F i ={f j (x,y) |j = 1, 2, …} represents the feasible region of Ant n , which is composed of all feasible cells f t around p t-1 except p j (x,y) . If Ant i is a shunt ant, perform a shunt search operation, Ant i The line is further completed according to the following formula: where f j ∈ F i In the above formula, θ1(f j (x,y) ) represents the calculation of the first type of pheromone, which is calculated based on the number of times the cell has been walked. For the cell c i on path (x,y) , the first type of pheromone update method is as follows: θ1(c (x,y) ) = θ1(c (x,y) ) + 1 Indicate the path path i The upper cell c (x,y) Increment the number of walks by 1; τ(f j (x,y) ) is the heuristic information, meaning the Euclidean distance from f j (x,y) to the target cell, and the calculation method is as follows: The parameters α1 and α2 belong to hyperparameters, which determine the importance of pheromone and heuristic information. During the movement of shunt ants, the algorithm encourages the discovery of new paths through shunting. Therefore, α1 = 0.6 and α2 = 0.4; rand{F i} represents randomly selecting a cell from the set F i ; r is a random number and r ~ U(0,1); r0 is a threshold, and r0 = 0.7; If Ant i is a greedy ant, perform a greedy search operation, then Ant i performs the following according to the formula: where f j belongs to F i In the above formula, θ2(f j (x,y) ) represents the calculation of the second type of pheromone, and the update method of the second type of pheromone is as follows: θ2(c (x,y) ) = min{length(path i ), θ2(c (x,y) )} The second type of pheromone records the shortest path length value after passing through c (x,y) , where length(path i ) represents the calculation of the path length of path i ; τ(f j (x,y) ) has the same meaning as the shunt search; the parameters β1 and β2 are hyperparameters that determine the importance of pheromone and heuristic information. During the greedy ant movement, the algorithm encourages the discovery of the shortest path. Therefore, β1 = 0.4 and β2 = 0.6; rand{F i} has the same meaning as the shunt search; the meanings of r and r0 are the same as those in the shunt search; When F i contains cell D m (x,y) , a feasible path is found and P is updated according to the following formula i , P i = Opt(P i , path i ) Update P according to the following formula m :[[]]END]] P m = Opt(P m , path i ) Further update all paths i Cell information elements on the path.

3. A multi-robot path planning method based on a time-series window matrix according to claim 1, characterized in that The specific steps of this path planning method are as follows: Step S101: Grid the environmental map to form a grid map with a cell density of X×Y, and each cell is represented as c (x,y) , the abscissa is represented as c x , the ordinate is represented as c y ; The obstacle cell 100 is marked as "0", and the feasible cell 200 is marked as "1"; The coordinates of the lower right corner of each cell in the grid in the rectangular coordinate system are used as the cell coordinates; Step S102: Assume that the scale of robots in the cluster is M. Then, the coordinates of the starting cell 300 of the m-th robot are recorded as S m (x,y) and the coordinates of the target cell 400 are recorded as D m (x,y) where m = 1, …, M. Mark the starting cell and the target cell of each robot in the grid map; Step S103: Perform basic path planning for M robots in the cluster, and generate a basic path for each robot. This basic path is optimal or relatively optimal, and the coupling points are not considered during the planning process. Step S104: Use the time-series window matrix algorithm to process the coupling points of the robot paths in the cluster. Step S105: The data in the m-th row of the time-series window matrix A corresponds to the final planned path of the m-th robot in the cluster, and output all paths.

4. A multi-robot path planning method based on a time series window matrix according to claim 3, characterized in that The basic path planning module in step S103 is described in detail as follows: Step S201: Initialize the pheromone of the grid map; each cell records two types of pheromones, which are calculated by functions θ1(c (x,y) ) and θ2(c (x,y) ). The calculation of the first pheromone θ1(c (x,y) ) is based on the number of times the cell c (x,y) has been traversed, and the initial value is: 0; the calculation of the second pheromone θ2(c (x,y) ) is based on the shortest path length where the cell is located, and the initial value is: X × Y; Step S202: Initialize the ant colony; at the initial point S m (x,y) Initialize the ant colony with a population size of I at the position S. The i-th ant is symbolized as Ant i ; Divided by the subscript, when i mod 10 = 0, Ant i The ant acts as a shunt ant, mod represents the modulo operation, and it performs the shunt search operation; when i mod 10 ≠ 0, Ant i The ant acts as a greedy ant and performs the greedy search operation; Step S203: Ant colony search; the ant colony completes the execution of the search within the limit of the iteration number MAX, and uses P m to record the current globally optimal path; P i to record the current ant Ant i once the discovered optimal path, Ant i the current traveling path is path i , path i = {p1, p2, …, p t}, where path i is a tabu list, whose characteristic is that the elements in it are ordered and non-repetitive, p1, p2, …, p t are cells, p t stores the cell where the ant Ant i is located at time t, that is, the cell where Ant i is currently located; p1, p2, …, p t constitute the traveling path of Ant i ; F i = {f j (x,y) | j = 1, 2, …} represents the feasible region of Ant n , which is composed of all feasible cells f t surrounding p t-1 except p j (x,y) . If Ant i is a shunt ant, perform a shunt search operation. Ant i further completes according to formula (1): In formula (1), θ1(f j (x,y) ) represents the calculation of the first type of pheromone; τ(f j (x,y) ) is the heuristic information, which means the Euclidean distance from f j (x,y) to the target cell; τ(f j (x,y) ) is calculated through formula (2): The parameters α1 and α2 belong to hyperparameters, which determine the importance of pheromone and heuristic information. During the movement of shunt ants, the algorithm encourages the discovery of new paths through shunting. Therefore, α1 = 0.6 and α2 = 0.4; rand{F i} represents randomly selecting a cell from the set F i ; r is a random number and r ~ U(0,1); r0 is a threshold, and r0 = 0.7; If Ant i is a greedy ant, perform the greedy search operation, then Ant i further completes according to formula (3): In formula (3), θ2(f j (x,y) ) represents the calculation of the second type of pheromone; τ(f j (x,y) ) has the same meaning as the shunt search; the parameters β1 and β2 belong to hyperparameters and determine the importance of pheromone and heuristic information. During the greedy ant movement, the algorithm encourages the discovery of the shortest path. Therefore, β1 = 0.4 and β2 = 0.6; rand{F i} has the same meaning as the shunt search; the meanings of r and r0 are the same as those of the shunt search; When F i contains cell D m (x,y) , a feasible path is found. According to formula (4), Ant i finds the optimal path P i : P i = Opt{P i , path i}} (4) Update the global optimal path P according to formula (5) m :[[]]END]] P m = Opt(P m , path i ) (5) Further update all paths i Cell information elements on the path; for the path i For cell c on the path (x,y) , where the first type of pheromone update method is as follows: θ1(c (x,y) ) = θ1(c (x,y) ) + 1 (6) Indicates the path path i Upper cell c (x,y) Increment the number of walks by 1; The second type of pheromone update method is: θ2(c (x,y) ) = min(length(path i ), θ2(c (x,y) )) (7) Indicates the path path i Cell c (x,y) The second type of pheromone records the shortest path length value passing through c (x,y) , where length(path i ) represents calculating the path i length.

5. A multi-robot path planning method based on a time-series window matrix according to claim 3, Its feature is to describe in detail the processing of coupling points by the time-series window matrix algorithm in the conflict handling module in step S104 as follows: Step S301: Establish the time-series window matrix A and insert data. Insert the M paths planned in step S103 as M rows of data into matrix A. The scale of matrix A is M rows and N columns, where N = X × Y. Store the m-th path P m correspondingly in the m-th row of matrix A; at this time, the lengths of the M rows of data in A are different; Each data is essentially a cell, and each row of data A m can be understood as a linear list; Step S302: Set the loop control variable n ← 0. Step S303: Execute n ← n + 1. Step S304: Process the coupling points existing in Column A n ; Traverse all the cells in Column A n If there are identical cells, process them according to the following method: If the cell stored in the m-th row and n-th column is the same as the cell stored in the (m + e)-th row and n-th column, that is: A m,n = A m+e,n ; Then compare the lengths of the m-th row and the (m + e)-th row in A, and select the shorter one to perform a linear list insertion. The specific method is as follows: length(A m ) represents finding the length of a linear list A m ; insert(A m , n, A m,n-1 ) represents inserting the A m,n-1 element into the nth position of the linear list A m ; insert(A m+e , n, A m+e,n-1 ) represents inserting the A m+e,n-1 element into the nth position of the linear list A m+e ; Step S305: If n ≤ N, then execute S303; otherwise execute S306. Step S306: Output matrix A, and the conflict handling is completed.

Citation Information

Patent Citations

  • Path planning method and device of self-moving equipment, medium and self-moving equipment

    CN113804205A

  • Multi-robot path planning method based on conflict classification search

    CN114967712A

Cited By

  • Multi-robot adaptive cooperation and obstacle avoidance control method based on space-time constraints

    CN122507159A