Optimal path planning method for robot swarm tasks based on fusion algorithm
By using genetic algorithms to generate initial paths in robot cluster path planning, and combining local search and elite strategies to update pheromone concentrations, the problem of slow path planning speed and easy to fall into local optimality in the existing technology is solved, and more efficient path planning is achieved.
Patent Information
- Application Number
- CN202210941660.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-08
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2042-08-08
AI Technical Summary
In the prior art, the robot cluster task path planning algorithm has the problem of randomly selecting paths that lead to slow pheromone updates, slow convergence speed, and easy to fall into local optimization, resulting in slow solution speed.
The initial path generation method based on genetic algorithm is adopted to generate the initial path by encoding the task target points and filtering the advantages and disadvantages of the robot path; at the end of each iteration, the pheromone concentration is updated through local search and elite strategies, balance local and global relationships, and determine the direction of the next iteration.
It improves the convergence efficiency of the algorithm, skips slow information updates, and directly conducts global search paths, significantly improving the speed and quality of robot path planning, avoiding the risk of falling into local optimality.
Smart Images

Figure CN115167460B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of physical technology, and further relates to a method for optimal path planning of robot cluster tasks based on a fusion algorithm in the field of robot operation technology. The present invention can be used to plan the optimal path for each robot in a robot cluster to perform its task. Background Art
[0002] A robot swarm is a group of robots that are intended to complete the same type of task. The same type of task contains multiple task target points, and the robot needs to spend different distance costs or time costs to reach each task target point. For example, in a warehousing and logistics environment, logistics robots need to deliver goods to different warehouses; in a geographical survey, geological robots need to survey different locations. The system reasonably assigns tasks to each robot in the hope that the robot cluster can minimize the total cost during the execution of the task. System optimization is related to the quality and working ability of the entire cluster system and is an important part of the initial work. At present, the algorithms for optimal path planning for robot cluster tasks are mainly divided into two categories: market-based methods and heuristic-based methods. Market-based methods, also known as auction-based methods, can either be centrally received by a "central auctioneer" and the task target points can be assigned to the robot with the lowest cost, or they can be distributed among different robots to share the task target points. A heuristic algorithm is an algorithm based on intuition or experience, which gives a feasible solution for each instance of the combinatorial optimization problem to be solved at an acceptable cost.
[0003] The National Defense Science and Technology Innovation Institute of the Academy of Military Sciences of the Chinese People's Liberation Army disclosed a method for multi-robot path planning based on a market algorithm in its patent application "Multi-robot Rapid Collaborative Mapping Method Based on Improved Market Method" (Application No.: CN202111252038, Application Publication No.: CN114137955 A). The method is divided into two stages. In the first stage: First, a robot is randomly selected and an initial main map is generated; then, the initial main map is iteratively updated; the boundary points between the known and unknown areas in the map form all task combinations and are added to the set of tasks to be auctioned. In the second stage: the robot traverses all tasks in the task set, sorts the tasks obtained by the auction to obtain a task list, sets the first task as the current target point and moves to it; when the current target point is reached, the environment is scanned, and the cycle continues. The disadvantage of this method is that since a large number of possible combinations are generated in the first stage of the method and traversed in the second stage, the complexity is relatively high. When applying large-scale instances, excessive complexity will lead to the disadvantage of slow solution speed.
[0004] Tianjin University disclosed a method for multi-robot path planning based on a heuristic algorithm in its patent document "Multi-robot path planning method based on ant colony algorithm" (application number: CN 201910636641, application publication number: CN 110375759 A). The implementation steps of this method are: first, the distance between each point is calculated according to the coordinates of the task target point. Then, according to the transition probability, the system calculates the transition probability matrix. Finally, according to the transition probability matrix, the system reselects the maximum probability value and the next task target point, calculates the total length of the path, and uses the total length value to positively feedback and update the pheromone concentration between the task target points. The shortcomings of this method are: when the ant colony algorithm generates the initial path plan, the pheromone is updated slowly due to insufficient environmental cognition, and there is a potential risk of slow convergence in the process of finding the global optimal point. In addition, due to the characteristics of positive feedback when updating the pheromone concentration, if the solution obtained at the beginning is a suboptimal solution, then the positive feedback will make the suboptimal solution quickly dominate, causing the algorithm to fall into a local optimum and it is difficult to jump out of the local optimum. Summary of the invention
[0005] The purpose of the present invention is to propose an optimal path planning method for robot cluster tasks based on a fusion algorithm in response to the above-mentioned deficiencies in the prior art, aiming to solve the disadvantages of the prior art that the path is randomly selected, which makes the pheromone update slow and ultimately leads to slow convergence speed, the disadvantage that the pheromone concentration is repeatedly superimposed due to the characteristics of positive feedback, and the algorithm eventually falls into the local optimum and is difficult to jump out, and the disadvantage of slow solution speed caused by the high time cost of calculating the iteration direction.
[0006] The idea of realizing the purpose of the present invention is: when generating the initial path, the task target points are first encoded according to the distribution of the task target points, and then the robot is quickly screened and optimized according to the quality of the robot's path selection, which solves the problem of slow convergence speed caused by the need to randomly select paths in the initial stage of the original ant colony algorithm. At the end of each round of iteration, the present invention effectively expands the selected solutions by searching multiple paths and a single path, and obtains the path solution of the optimal robot by screening the selected path solution, solving the problem that the original ant colony algorithm is difficult to jump out of the local optimum after obtaining a better solution due to the positive feedback characteristics. After completing the local search, the present invention obtains the current pheromone concentration by saving and updating the current path solution and the global path solution, and obtains a more comprehensive pheromone concentration after fusing the global pheromone concentration, so as to balance the relationship between the local and the global, clarify the direction of the next round of iteration, and solve the problem of slow solution speed caused by the large time cost of calculating the iteration direction of the algorithm.
[0007] The specific steps of the present invention are as follows:
[0008] Step 1, using genetic algorithm to generate the initial robot cluster path plan;
[0009] Step 1.1, using a binary encoding method, binary encode each task target point in each task target point cluster; connect the encoded task target points into a total path encoding of the task target points;
[0010] Step 1.2, using a random function to generate the initial task target point of each robot in the robot cluster, changing the state of the robot after determining the initial task target point to a planned robot, and splitting the sub-path code of each robot from the total path code;
[0011] Step 1.3, calculate the subpath fitness of each planned robot;
[0012] Step 1.4, perform genetic operations of screening, crossover, and mutation on each planned robot in turn, and change the state of the unplanned robot after the genetic operation to a planned robot;
[0013] Step 1.5, setting the sub-path distance cost of the 0.6Mth planned robot after sorting in the screening process as the distance cost threshold D;
[0014] Step 1.6, using the decimal decoding method, decode the binary code of each planned robot's subpath to obtain the robot's subpath; calculate the subpath distance cost of each planned robot to determine the current state of the planned robot;
[0015] Step 1.7, determine whether the status of all robots in the robot cluster are planned robots. If so, collect the sub-path binary codes of all robots as the initial robot cluster path plan and continue to step 2; otherwise, execute step 1.3;
[0016] Step 2: Update the mission target point of each robot:
[0017] Step 2.1, according to the path plan of the current robot cluster, place each robot to be updated at its corresponding initial task target point, and change the state of the point to visited;
[0018] Step 2.2, determine whether there are unvisited task target points among the task target points adjacent to each placed robot. If so, execute step 2.3; otherwise, execute step 2.4;
[0019] Step 2.3, using the state transfer main formula, update the task target point of the robot's next proposed path, and change the state of the updated task target point to visited;
[0020] Step 2.4, using the state transfer sub-formula, update the task target point of the next proposed path of the robot, and change the state of the updated task target point to visited;
[0021] Step 2.5, determine whether the status of all task target points in the task target point cluster are visited, if so, execute step 3; otherwise, execute step 2.2;
[0022] Step 3: Update the task target point of each robot using the local search method:
[0023] Step 3.1, using the decimal decoding method, decode the binary code of each robot's sub-path to generate the sub-path corresponding to the robot;
[0024] Step 3.2, using a random function, generating a transfer sequence number for each robot subpath sequence; according to the generated transfer sequence number, in each robot subpath sequence, inserting the task target point corresponding to the robot transfer sequence number into the transfer sequence number of the next robot subpath;
[0025] Step 3.3, using a random function, generate an exchange sequence number for each sub-path sequence of two robots, and exchange the task target points corresponding to the exchange sequence number in the sub-paths of the two robots;
[0026] Step 3.4, using a random function, generate two flip sequence numbers for each robot's sub-path sequence, and flip the path section between the two task target points corresponding to the robot's flip sequence number;
[0027] Step 3.5, calculate the distance cost of each sub-path and sum them up to get the total distance cost;
[0028] Step 3.6: Determine whether the difference between the total distance cost after each update and the total distance cost after the last update is less than 3% of the total distance cost after the update after 5 consecutive updates. If so, update the sub-path binary code of each robot to the current robot cluster path plan and execute step 4; otherwise, execute step 3.2;
[0029] Step 4: Update pheromone concentration using elite strategy:
[0030] Step 4.1, determine whether the total distance cost of the current robot cluster path plan is less than the total distance cost of the current global plan. If so, use the current robot cluster path plan as the new global plan; otherwise, the global plan remains unchanged; the current global plan means that when t=0, the robot cluster path plan generated in step 1.7 is used as the current global plan, and when t≠0, the global plan after the previous round of update is used as the current global plan;
[0031] Step 4.2, according to the residual pheromone concentration formula: τ' ij (t) = (1-ρ)τ ij (t-1), calculate the pheromone concentration τ' remaining after the pheromone concentration to be updated evaporates naturally in space in the path between the task target point i and the task target point j ij (t); ρ represents the pheromone volatilization factor; the pheromone concentration to be updated means that when t=0, the pheromone concentration to be updated is set to 2, and when t≠0, the final pheromone concentration after the previous round of update is used as the pheromone concentration to be updated;
[0032] Step 4.3, according to the following local pheromone concentration formula, calculate the local pheromone concentration released by the robot on the path between task target point i and task target point j
[0033]
[0034] Among them, L p (t) represents the total distance cost of the current robot cluster path plan, L g (t) represents the total distance cost of the global solution, T p Represents the current robot cluster path plan;
[0035] Step 4.4, according to the following global pheromone concentration formula, calculate the global pheromone concentration released by the robot on the path between task target point i and task target point j
[0036]
[0037] Among them, L p (t) represents the total distance cost of the current robot cluster path plan, L g (t) represents the total distance cost of the global solution, T g Represents the global solution;
[0038] Step 4.5: Calculate the final pheromone concentration τ of the robot on the path between task target point i and task target point j according to the following pheromone concentration update formula: ij (t):
[0039]
[0040] Step 5, determine whether the update number reaches the optimal fit update number, if so, execute step 6; otherwise, execute step 2;
[0041] Step 6, determine whether the difference between the total distance cost after each update and the total distance cost after the previous update is less than 3% of the total distance cost after the current iteration update after 5 consecutive updates. If so, execute step 7; otherwise, execute step 2;
[0042] Step 7, using the decimal decoding method, decode the binary code of each robot's sub-path to obtain each robot's sub-path; and take the sub-path set of all robots as the optimal path planning solution for the robot cluster task.
[0043] Compared with the prior art, the present invention has the following advantages:
[0044] First, the present invention generates an initial robot cluster path plan using a genetic algorithm according to the task target point and the robot's path selection situation, thereby overcoming the drawback of the slow convergence speed ultimately caused by the initial random path selection in the prior art, and improving the convergence efficiency of the algorithm. The present invention skips the slow information update and directly searches for the path globally, thereby being able to obtain the optimal path of the robot more quickly.
[0045] Second, the present invention uses local search operations to update the task target points of each robot between a single path and multiple paths, increasing the number of options and finding more possible solutions in iterations, overcoming the drawback of the prior art that the algorithm repeatedly superimposes pheromones and is difficult to jump out of the local optimum due to the positive feedback characteristics. This allows the present invention to significantly improve the diversity of the ant colony algorithm while retaining the current optimal path solution, allowing the algorithm to effectively cross the local extreme point and more comprehensively plan the optimal path for the robot.
[0046] Third, the present invention adopts an elite strategy to update the task target point of each robot. Through the elite strategy, the fusion algorithm balances and emphasizes the local optimal solution and the global optimal solution generated in the current iteration round, overcoming the disadvantage of the high time cost of calculating the iteration direction in the prior art, which leads to slow solution speed. When planning the optimal path for the robot, the present invention considers the global optimal solution on the basis of the local optimal solution, and obtains the next round of effective iteration direction more efficiently in the iteration, reducing the risk of falling into the local optimal path and speeding up the speed of solving the global optimal path. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Figure 1 is a flow chart of the present invention;
[0048] Figure 2 is a schematic diagram of the transfer local search operation of the present invention;
[0049] Figure 3 is a schematic diagram of the exchange local search operation of the present invention;
[0050] Figure 4is a schematic diagram of the flip local search operation of the present invention; DETAILED DESCRIPTION
[0051] The present invention is further described in detail below in conjunction with the accompanying drawings.
[0052] Refer to the attached Figure 1 , the implementation steps of the present invention are further described in detail.
[0053] Step 1: Generate the initial robot cluster path plan using genetic algorithm.
[0054] Step 1.1, using a binary encoding method, binary encode each task target point in each task target point cluster; connect the encoded task target points into a total path encoding of the task target points of the robot cluster. In the embodiment of the present invention, the number of task target points p=50.
[0055] Step 1.2, use a random function to generate the initial task target point of each robot in the robot cluster, change the state of the robot to a planned robot after determining the initial task target point, use the binary code of each initial task target point as the split starting point of the planned robot placed at that point, and use the binary code of the previous task target point of the next split starting point as the split end point of the robot, and split the sub-path code of each robot from the total path code.
[0056] In the embodiment of the present invention, there are five robots, namely: robot A, robot B, robot C, robot D, and robot E. The initial task target points of the five robots are generated by a random function: the initial task target point of robot A is task target point No. 9, the initial task target point of robot B is task target point No. 12, the initial task target point of robot C is task target point No. 24, the initial task target point of robot D is task target point No. 37, and the initial task target point of robot E is task target point No. 41. The status of the five robots in the robot cluster: robot A, robot B, robot C, robot D, and robot E is changed to a planned robot. The binary code of each of the above initial task target points is used as the splitting starting point of the planned robot placed at the point, and the binary code of the previous task target point of the next travel starting point is used as the splitting end point of the robot, thereby, the total path code containing all task target points is split into 5 sub-path codes corresponding to the 5 planned robots. At this time, each planned robot obtains a sub-path code connected by multiple task target points, indicating the order of task target points in the future travel sub-path of the robot.
[0057] In the embodiment of the present invention, the total number of robots in the cluster is M=5, and the number of sub-paths is M'=M.
[0058] Step 1.3, calculate the subpath fitness of each planned robot:
[0059]
[0060] Among them, p m represents the mth planned robot subpath, i and j represent the target points of task i and task j respectively. It represents the distance cost required for the mth robot to pass the path connecting task target point i and task target point j.
[0061] Step 1.4, perform genetic operations of screening, crossover, and mutation on each planned robot in turn, and change the state of the unplanned robots generated in the genetic operations.
[0062] The fitness of all planned robots is sorted from high to low, and the first 0.6M planned robots are retained, and the remaining planned robots are selected and eliminated as unplanned robots.
[0063] The random function is used to sort the planned robots after screening. From front to back, every two planned robots are paired into a group. The sub-path codes of the paired planned robots are used as the parent generation. The task target points in the two parent generation path codes are crossed to generate the binary codes of the idle sub-paths after crossing. The total number of binary codes of the idle sub-paths after crossing is 0.3M.
[0064] For each task target point in the binary code of the planned robot subpath, the inversion operation is performed with a probability of 0.2 to obtain the mutated binary code of the idle subpath. The total number of mutated binary codes of the idle subpath is 0.6M.
[0065] Using the decimal decoding method, the binary codes of all idle sub-paths after crossover and mutation are decoded respectively to obtain 0.9M idle sub-paths, and the distance cost of each idle sub-path is calculated; all distance costs are sorted from small to large, and the binary code sequence of the first 0.4M idle sub-paths in the sorting is set as the sub-path binary code of the unplanned robot. At the same time, the state of the unplanned robot is changed to a planned robot.
[0066] In the embodiment of the present invention, the total number of binary codes of idle sub-paths after the crossover is 2, the total number of binary codes of idle sub-paths after the divergence is 3, and the total number of idle sub-paths is 5.
[0067] Step 1.5, set the sub-path distance cost of the 0.6Mth planned robot after sorting in the screening process as the distance cost threshold D.
[0068] Step 1.6, use the decimal decoding method to decode the binary code of all planned robot sub-paths to obtain the sub-path of the robot, sum the distances between the task target points on the sub-path, and calculate the distance cost of each sub-path; according to the order of the task target points on each sub-path, sum the distances between the task target points of all paths to obtain the distance cost of the sub-path; retain the planned robots whose sub-path distance cost is less than the distance cost threshold D, and change the status of the planned robots whose sub-path costs are greater than the distance cost threshold D to unplanned robots.
[0069] Step 1.7, determine whether the status of all robots in the robot cluster are planned robots. If so, collect the sub-path binary codes of all robots as the robot cluster path plan and then execute step 2; otherwise, execute step 1.3.
[0070] Step 2: Use the transfer formula to update the task target point of each robot.
[0071] Step 2.1: According to the initial path plan of the robot cluster, all robots to be updated are placed on the initial task target point of the robot, and the status of the point is changed to visited.
[0072] In an embodiment of the present invention, the sub-path binary code of each robot to be updated is obtained from the robot cluster path plan. The sub-path binary code of the robot to be updated is decoded using a decimal decoding method to obtain the updated initial task target point: the initial task target point of robot A is updated from task target point No. 9 to task target point No. 3, the initial task target point of robot B is updated from task target point No. 12 to task target point No. 15, the initial task target point of robot C is updated from task target point No. 24 to task target point No. 27, the initial task target point of robot D is updated from task target point No. 37 to task target point No. 32, and the initial task target point of robot E is updated from task target point No. 41 to task target point No. 49. Each robot to be updated is placed on the initial task target point of the robot.
[0073] Step 2.2, determine whether there are unvisited task target points in the task target points adjacent to each placed robot, if so, execute step 2.3; otherwise, execute step 2.4;
[0074] Step 2.3, using the state transition main formula, update the task target point of the next proposed path of the robot. The state transition main formula is as follows.
[0075]
[0076] in, represents the probability of the mth robot to be updated moving from task target point i to task target point j during the tth update, τ ij (t) represents the pheromone concentration on the path between task target point i and task target point j, η ij is the heuristic factor, which represents the distance d between task target point i and task target point j ij The reciprocal of S represents the set of task target nodes that have not been visited, α represents the degree of robot cooperation, and β represents the relative importance of pheromone concentration.
[0077] Step 2.4, using the state transition sub-formula, update the task target point of the next proposed path of the robot. The state transition sub-formula is as follows.
[0078]
[0079] Among them, j m represents the task target point updated by the mth robot to be updated. q is a value selected by a uniform probability random function in the range [0, 1); q 0 is a probability threshold. Using the above formula, the robot 0 Calculate the "optimal" task target node, and there are 1-q 0 The probability of reusing the above formula to calculate the task target node.
[0080] Step 2.5, determine whether the status of all task target points in the task target point cluster are visited, if so, execute step 3; otherwise, execute step 2.2;
[0081] In the embodiment of the present invention, it is set that when t=0 updates, τ ij (0) = 2, α = 1, β = 3, q 0 =0.7.
[0082] Step 3: Use local search to update the mission target point of each robot.
[0083] Step 3.1, using the decimal decoding method, decode the binary code of each robot's sub-path to obtain the sub-path corresponding to the robot;
[0084] Step 3.2, using a random function, generates a transfer sequence number for each robot's sub-path sequence, and inserts the task target point corresponding to the transfer sequence number in the robot's sub-path into the transfer sequence number of the next robot's sub-path.
[0085] Refer to the attached Figure 2, further describe this transfer step in detail. The box sequence represents the sub-path of each robot, the letter before the box sequence represents the robot number, and the number in the box sequence represents the task target point number of the sub-path.
[0086] In an embodiment of the present invention, the transfer sequence number generated by the random function for the sub-path sequence of each robot is as follows: the transfer sequence number of the sub-path sequence of robot A is 2, the transfer sequence number of the sub-path sequence of robot B is 4, the transfer sequence number of the sub-path sequence of robot C is 8, the transfer sequence number of the sub-path sequence of robot D is 5, and the transfer sequence number of the sub-path sequence of robot E is 6.
[0087] According to the generated transfer sequence number, in each robot's subpath sequence, the task target point corresponding to the transfer sequence number of the robot is inserted into the transfer sequence number of the next robot's subpath. In the robot A subpath sequence, the task target point 26 corresponding to the transfer sequence number 2 is inserted into the transfer sequence number 4 of the robot B subpath sequence; in the robot B subpath sequence, the task target point 46 corresponding to the transfer sequence number 4 is inserted into the transfer sequence number 8 of the robot C subpath sequence; in the robot C subpath sequence, the task target point 42 corresponding to the transfer sequence number 8 is inserted into the transfer sequence number 5 of the robot D subpath sequence; in the robot D subpath sequence, the task target point 50 corresponding to the transfer sequence number 5 is inserted into the transfer sequence number 6 of the robot E subpath sequence; in the robot E subpath sequence, the task target point 33 corresponding to the transfer sequence number 6 is inserted into the transfer sequence number 2 of the robot A subpath sequence.
[0088] Step 3.3, using a random function, generate an exchange sequence number for each sub-path sequence of two robots, and exchange the task target points corresponding to the exchange sequence number in the sub-paths of the two robots.
[0089] Refer to the attached Figure 3 , this exchange step is further described in detail. The box sequence represents the subpath, the letter before the box sequence represents the robot number, and the number in the box sequence represents the task target point number of each robot subpath.
[0090] In an embodiment of the present invention, a random function generates an exchange sequence number for every two robots: the exchange sequence number between the robot A subpath and the robot B subpath is 3, the exchange sequence number between the robot B subpath and the robot C subpath is 5, the exchange sequence number between the robot C subpath and the robot D subpath is 8, and the exchange sequence number between the robot D subpath and the robot E subpath is 2.
[0091] According to the generated exchange sequence number, exchange the task target points corresponding to the exchange sequence numbers in the subpaths of the two robots. Exchange the task target point No. 1 corresponding to the subpath sequence No. 3 of robot A with the task target point No. 20 corresponding to the subpath sequence No. 3 of robot B; exchange the task target point No. 13 corresponding to the subpath sequence No. 5 of robot B with the task target point No. 49 corresponding to the subpath sequence No. 5 of robot C; exchange the task target point No. 46 corresponding to the subpath sequence No. 8 of robot C with the task target point No. 28 corresponding to the subpath sequence No. 8 of robot D; exchange the task target point No. 31 corresponding to the subpath sequence No. 2 of robot D with the task target point No. 12 corresponding to the subpath sequence No. 2 of robot E;
[0092] Step 3.4, using a random function, generates two flip sequence numbers for each robot's sub-path sequence, and flips the path section between the two task target points corresponding to the robot's flip sequence number.
[0093] See attached Figure 4 , further describe this flipping step in detail. The box sequence represents the subpath, the letter before the box sequence represents the robot number, and the number in the box sequence represents the task target point number of each robot subpath.
[0094] In an embodiment of the present invention, the random function generates two flipping sequence numbers for the sub-path sequence of each robot: the flipping sequence numbers of the sub-path sequence of robot A are 1 and 6, the flipping sequence numbers of the sub-path sequence of robot B are 3 and 9, the flipping sequence numbers of the sub-path sequence of robot C are 2 and 4, the flipping sequence numbers of the sub-path sequence of robot D are 8 and 10, and the flipping sequence numbers of robot E are 5 and 6.
[0095] According to the generated flip sequence number, flip the path interval between the flip sequence numbers of each robot. The subpath interval of robot A is flipped to [41, 14, 22, 20, 33, 10], the subpath interval of robot B is flipped to [40, 15, 45, 35, 49, 26], the subpath interval of robot C is flipped to [13, 27, 7, 47], the subpath interval of robot D is flipped to [43, 16, 46], and the subpath interval of robot E is flipped to [50, 6].
[0096] Step 3.5, calculate the distance cost of each sub-path and sum them up to get the total distance cost.
[0097] Step 3.6, determine whether the difference between the total distance cost after each update and the total distance cost after the previous update is less than 3% of the total distance cost after that update after 5 consecutive updates. If so, update the sub-path binary code of each robot to the current robot cluster path plan and execute step 4; otherwise, execute step 3.2.
[0098] Step 4: Update the pheromone concentration using the elite strategy.
[0099] Step 4.1, determine whether the total distance cost of the current robot cluster path plan is less than the total distance cost of the current global plan. If so, use the current robot cluster path plan as the new global plan; otherwise, the global plan remains unchanged; the current global plan means that when t=0, the robot cluster path plan generated in step 1.7 is used as the current global plan, and when t≠0, the global plan after the previous round of update is used as the current global plan.
[0100] Step 4.2, according to the residual pheromone concentration formula: τ' ij (t) = (1-ρ)τ ij (t-1), calculate the pheromone concentration τ' remaining after the pheromone concentration to be updated evaporates naturally in space in the path between the task target point i and the task target point j ij (t); ρ represents the pheromone volatilization factor; the pheromone concentration to be updated means that when t=0, the pheromone concentration to be updated is set to 2, and when t≠0, the final pheromone concentration after the previous round of update is used as the pheromone concentration to be updated.
[0101] Step 4.3, according to the following local pheromone concentration formula, calculate the local pheromone concentration released by the robot on the path between task target point i and task target point j
[0102]
[0103] Among them, L p (t) represents the total distance cost of the current robot cluster path plan, L g (t) represents the total distance cost of the global solution, T p Represents the current robot cluster path plan;
[0104] Step 4.4, according to the following global pheromone concentration formula, calculate the global pheromone concentration released by the robot on the path between task target point i and task target point j
[0105]
[0106] Among them, L p (t) represents the total distance cost of the current robot cluster path plan, L g (t) represents the total distance cost of the global solution, T g Represents a global solution.
[0107] Step 4.5: Calculate the final pheromone concentration τ of the robot on the path between task target point i and task target point j according to the following pheromone concentration update formula: ij (t).
[0108]
[0109] Step 5, determine whether the update number reaches the optimal fit update number, if so, execute step 6; otherwise, execute step 2.
[0110] Step 6, determine whether the difference between the total distance cost after each update and the total distance cost after the previous update is less than 3% of the total distance cost after this iterative update after 5 consecutive updates. If so, execute step 7; otherwise, execute step 2.
[0111] Step 7, using the decimal decoding method, decode the binary code of each robot's sub-path to obtain each robot's sub-path; and take the sub-path set of all robots as the optimal path planning solution for the robot cluster task.
Claims
1. An optimal path planning method for robot cluster tasks based on fusion algorithm, It is characterized in that Genetic algorithm is used to generate an initial robot cluster path plan, local search is used to update the task target point of each robot, and elite strategy is used to update the task target point of each robot. The steps of this method include the following: Step 1, using genetic algorithm to generate the initial robot cluster path plan; Step 1.1, using a binary encoding method, binary encode each task target point in each task target point cluster; connect the encoded task target points into a total path encoding of the task target points; Step 1.2, using a random function to generate the initial task target point of each robot in the robot cluster, changing the state of the robot after determining the initial task target point to a planned robot, and splitting the sub-path code of each robot from the total path code; Step 1.3, calculate the subpath fitness of each planned robot; Step 1.4, perform genetic operations of screening, crossover, and mutation on each planned robot in turn, and change the state of the unplanned robot after the genetic operation to a planned robot; Step 1.5, setting the sub-path distance cost of the 0.6Mth planned robot after sorting in the screening process as the distance cost threshold D; Step 1.6, using the decimal decoding method, decode the binary code of each planned robot sub-path to obtain the sub-path of the robot; Calculate the subpath distance cost of each planned robot and determine the current state of the planned robot; Step 1.7, determine whether the status of all robots in the robot cluster are planned robots. If so, collect the sub-path binary codes of all robots as the initial robot cluster path plan and continue to step 2; Otherwise, go to step 1.3; Step 2: Update the mission target point of each robot: Step 2.1, according to the path plan of the current robot cluster, place each robot to be updated at its corresponding initial task target point, and change the state of the point to visited; Step 2.2, determine whether there are unvisited task target points among the task target points adjacent to each placed robot, if so, execute step 2.3; Otherwise, proceed to step 2.4; Step 2.3, using the state transfer main formula, update the task target point of the robot's next proposed path, and change the state of the updated task target point to visited; Step 2.4, using the state transfer sub-formula, update the task target point of the next proposed path of the robot, and change the state of the updated task target point to visited; Step 2.5, determine whether the status of all task target points in the task target point cluster are visited, if so, execute step 3; Otherwise, go to step 2.2; Step 3: Update the task target point of each robot using the local search method: Step 3.1, using the decimal decoding method, decode the binary code of each robot's sub-path to generate the sub-path corresponding to the robot; Step 3.2, using a random function, generating a transfer sequence number for each robot subpath sequence; according to the generated transfer sequence number, in each robot subpath sequence, inserting the task target point corresponding to the robot transfer sequence number into the transfer sequence number of the next robot subpath; Step 3.3, using a random function, generate an exchange sequence number for each sub-path sequence of two robots, and exchange the task target points corresponding to the exchange sequence number in the sub-paths of the two robots; Step 3.4, using a random function, generate two flip sequence numbers for each robot's sub-path sequence, and flip the path section between the two task target points corresponding to the robot's flip sequence number; Step 3.5, calculate the distance cost of each sub-path and sum them up to get the total distance cost; Step 3.6: Determine whether the difference between the total distance cost after each update and the total distance cost after the last update is less than 3% of the total distance cost after the update after 5 consecutive updates. If so, update the sub-path binary code of each robot to the current robot cluster path plan and execute step 4. Otherwise, go to step 3.2; Step 4: Update pheromone concentration using elite strategy: Step 4.1, determine whether the total distance cost of the current robot cluster path plan is less than the total distance cost of the current global plan. If so, use the current robot cluster path plan as the new global plan; otherwise, the global plan remains unchanged; the current global plan means that when t=0, the robot cluster path plan generated in step 1.7 is used as the current global plan, and when t≠0, the global plan after the previous round of update is used as the current global plan; Step 4.2, according to the residual pheromone concentration formula: τ' ij (t) = (1-ρ)τ ij (t-1), calculate the pheromone concentration τ remaining after the pheromone concentration to be updated evaporates naturally in space in the path between the task target point i and the task target point j i ' j (t); ρ represents the pheromone volatilization factor; the pheromone concentration to be updated means that when t=0, the pheromone concentration to be updated is set to 2, and when t≠0, the final pheromone concentration after the previous round of update is used as the pheromone concentration to be updated; Step 4.3, according to the following local pheromone concentration formula, calculate the local pheromone concentration released by the robot on the path between task target point i and task target point j Among them, L p (t) represents the total distance cost of the current robot cluster path plan, L g (t) represents the total distance cost of the global solution, T p Represents the current robot cluster path plan; Step 4.4, according to the following global pheromone concentration formula, calculate the global pheromone concentration released by the robot on the path between task target point i and task target point j Among them, L p (t) represents the total distance cost of the current robot cluster path plan, L g (t) represents the total distance cost of the global solution, T g represents the global solution; Step 4.5: Calculate the final pheromone concentration τ of the robot on the path between task target point i and task target point j according to the following pheromone concentration update formula: ij (t): Step 5, determine whether the update number reaches the optimal fit update number, if so, execute step 6; otherwise, execute step 2; Step 6, determine whether the difference between the total distance cost after each update and the total distance cost after the previous update is less than 3% of the total distance cost after the current iteration update after 5 consecutive updates. If so, execute step 7; otherwise, execute step 2; Step 7, using the decimal decoding method, decode the binary code of each robot's sub-path to obtain each robot's sub-path; and take the sub-path set of all robots as the optimal path planning solution for the robot cluster task.
2. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The specific method of splitting the sub-path code of each robot from the total path code described in step 1.2 is: use the binary code of each initial task target point as the splitting starting point of the planned robot placed at that point, and use the binary code of the previous task target point of the next splitting starting point as the splitting end point of the robot to obtain the sub-path code of the robot.
3. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The fitness of each planned robot subpath calculated in step 1.3 is obtained by the following formula: Among them, p m represents the mth planned robot subpath, i and j represent the task target point i and task target point j respectively, It represents the distance cost required for the mth robot to pass the path connecting task target point i and task target point j.
4. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The specific method of screening described in step 1.4 is: The fitness of all planned robots is sorted from high to low, and the first 0.6M planned robots are retained, and the remaining planned robots are selected and eliminated as unplanned robots.
5. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The specific method of crossover described in step 1.4 is: The random function is used to sort the planned robots after screening. From front to back, every two planned robots are paired into a group. The sub-path codes of the paired planned robots are used as the parent generation. The task target points in the two parent generation path codes are crossed to generate the binary codes of the idle sub-paths after crossing. The total number of binary codes of the idle sub-paths after crossing is 0.3M.
6. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The specific method of the variation described in step 1.4 is: For each task target point in the binary code of the planned robot's sub-path, a negation operation is performed with a probability of 0.2 to obtain the mutated binary code of the idle sub-path. The total number of mutated binary codes of the idle sub-path is 0.6M.
7. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The specific method of changing the state of the unplanned robot after the genetic operation to the planned robot described in step 1.4 is: The binary codes of all idle sub-paths after crossover and mutation are decoded into decimal form to obtain 0.9M idle sub-paths, and the distance cost of each idle sub-path is calculated. All distance costs are sorted from small to large, and the binary codes of the first 0.4M idle sub-paths in the sort are set as the sub-path binary codes of the unplanned robot. At the same time, the state of the unplanned robot is changed to a planned robot.
8. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The specific method of calculating the subpath distance cost of each planned robot as described in step 1.6 and determining the current state of the planned robot is: According to the order of the task target points on each sub-path, the distances between the task target points of all paths are summed to obtain the distance cost of the sub-path; the planned robots whose distance cost of each sub-path is less than the distance cost threshold D are retained, and the status of the planned robots whose sub-path cost is greater than the distance cost threshold D is changed to an unplanned robot.
9. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The main formula for state transition described in step 2.3 is as follows: in, represents the probability of the mth robot to be updated moving from task target point i to task target point j during the tth update, τ ij (t) represents the pheromone concentration on the path between task target point i and task target point j, η ij is the heuristic factor, which represents the distance d between task target point i and task target point j ij The reciprocal of S represents the set of task target nodes that have not been visited, α represents the degree of robot cooperation, and β represents the relative importance of pheromone concentration.
10. The optimal path planning method for robot cluster tasks based on fusion algorithm according to claim 1, It is characterized in that The state transition subformula described in step 2.4 is as follows: Among them, j m represents the task target point updated by the mth robot to be updated. q is a value selected by a uniform probability random function in the range [0, 1); q 0 is a probability threshold. Using the above formula, the robot 0 Calculate the "optimal" task target node, and there are 1-q 0 The probability of reusing the above formula to calculate the task target node.
Citation Information
Patent Citations
Multi-robot path planning method based on ant colony algorithm
CN110375759A
Multi-robot rapid collaborative mapping method based on improved market method
CN114137955A
Method for planning robot paths on basis of path expansion ant colony algorithms
CN106225788A
Mobile robot path planning method
CN110160546A