Multi-robot path planning method and system based on improved crowd search algorithm
Patent Information
- Application Number
- CN202311850635.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-28
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2043-12-28
AI Technical Summary
人群搜索算法(SOA)是一种较新应用到仓储机器人路径规划方面的智能仿生类算法,传统SOA在栅格仓储地图中,使用了节点插入法生成路径,偶尔会出现路径不可用等问题,且由于每次迭代,每条路径都需要节点插入,耗费了大量时间,造成了路径规划的效率较低的问题(在同一条件下,其路径规划所耗时间大概是遗传算法的30倍)
[0020](1)本发明引入多种群的优化方式,为改进SOA路径规划算法生成优质的初始种群,首先根据规则划分子种群,其次根据本发明设计的多种群优化策略对子种群和抽样种群进行操作、更新和迭代,最终为改进方法后的SOA路径规划算法生成更好的初始解,大大增加算法寻优效率。
Smart Images

Figure CN117804483B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of robot path planning technology, and in particular relates to a multi-robot path planning method and system based on an improved crowd search algorithm. Background Technology
[0002] The statements in this section are merely background information related to the present invention and do not necessarily constitute prior art.
[0003] Robot path planning is a crucial issue in intelligent warehousing systems. Existing robot path planning algorithms fall into three main categories: First, traditional robot path planning algorithms, such as Dijkstra's algorithm, A* algorithm, D* algorithm, and the artificial potential field p-method. Second, sampling-based path planning algorithms, such as the RRT algorithm and the Probabilistic Route Map (PRM) algorithm. Third, intelligent biomimetic algorithms, such as genetic algorithms, ant colony algorithms, and neural network algorithms. Different path planning algorithms have different characteristics, advantages, and disadvantages.
[0004] In intelligent warehousing systems with relatively well-organized maps and goods placement, intelligent biomimetic algorithms such as genetic algorithms and ant colony algorithms, as well as the A* algorithm, are commonly used. Most existing methods focus on improving existing path planning algorithms and compensating for their weaknesses. However, improvements to biomimetic algorithms do not fundamentally address their inherent problems. The Search-by-Action (SOA) algorithm is a relatively new intelligent biomimetic algorithm applied to path planning for warehouse robots. Traditional SOA uses node insertion to generate paths in grid-based warehouse maps, which occasionally leads to unusable paths. Furthermore, because each path requires node insertion in every iteration, it consumes a significant amount of time, resulting in low path planning efficiency (under the same conditions, its path planning time is approximately 30 times that of genetic algorithms). Summary of the Invention
[0005] To overcome the shortcomings of the prior art, the present invention provides a multi-robot path planning method and system based on an improved crowd search algorithm.
[0006] To achieve the above objectives, one or more embodiments of the present invention provide the following technical solutions:
[0007] The first aspect of this invention provides a multi-robot path planning method based on an improved crowd search algorithm, comprising:
[0008] The warehouse map was modeled using a grid method to obtain a warehouse grid map model;
[0009] Determine the starting point, relay point, and ending point of the path in the warehouse grid map model, and establish an optimal path mathematical model based on the Manhattan distance between nodes in the robot path;
[0010] An improved crowd search algorithm is used for path optimization, and the optimal path for the robot is obtained by parallel search from the starting point to the relay point and from the relay point to the destination.
[0011] In the process of path optimization using an improved crowd search algorithm, an initial population is generated for the crowd search algorithm based on multiple population optimization algorithms. The fitness of individuals in the population is calculated according to the optimal path mathematical model. The individual positions and the population are updated according to the individual position update rules of the crowd search algorithm. The optimal population and the optimal individual are found to achieve path optimization.
[0012] A second aspect of the present invention provides a multi-robot path planning system based on an improved crowd search algorithm, comprising:
[0013] The warehouse raster map model building module is configured to: model the warehouse map using a raster method to obtain a warehouse raster map model;
[0014] The optimal path mathematical model construction module is configured to: determine the starting point, relay point and ending point of the path in the warehouse grid map model, and establish the optimal path mathematical model based on the Manhattan distance between nodes in the robot path;
[0015] The path optimization module is configured to use an improved crowd search algorithm to optimize the path, and to perform parallel searches from the starting point to the relay point and from the relay point to the end point to obtain the optimal path for the robot.
[0016] In the process of path optimization using an improved crowd search algorithm, an initial population is generated for the crowd search algorithm based on multiple population optimization algorithms. The fitness of individuals in the population is calculated according to the optimal path mathematical model. The individual positions and the population are updated according to the individual position update rules of the crowd search algorithm. The optimal population and the optimal individual are found to achieve path optimization.
[0017] A third aspect of the present invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps of a multi-robot path planning method based on an improved crowd search algorithm as described in the first aspect of the present invention.
[0018] The fourth aspect of the present invention provides an electronic device including a memory, a processor, and a program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of a multi-robot path planning method based on an improved crowd search algorithm as described in the first aspect of the present invention.
[0019] The above one or more technical solutions have the following beneficial effects:
[0020] (1) This invention introduces a multi-population optimization method to generate a high-quality initial population for improving the SOA path planning algorithm. First, the subpopulations are divided according to the rules. Then, the multi-population optimization strategy designed according to this invention is used to operate, update and iterate the subpopulations and the sampled populations. Finally, a better initial solution is generated for the improved SOA path planning algorithm, which greatly increases the optimization efficiency of the algorithm.
[0021] (2) This invention uses a direction-oriented node expansion method to replace the binary node insertion method in the current SOA path planning to generate and connect paths. In response to the path inaccessibility problem that the node expansion method may encounter and the path unavailability problem that occurs in the initial SOA path planning, a "normalization" node correction method is proposed to correct the nodes. This can effectively avoid the path unavailability problem and can find satisfactory paths in map models of multiple scenarios.
[0022] (3) This invention introduces and improves the concept of reservation table. Based on the improvement of SOA path planning algorithm and global dynamic reservation table, a multi-robot path planning scheme is proposed, which solves the problem of multi-robot path and node conflict in actual scenarios.
[0023] Advantages of additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description
[0024] The accompanying drawings, which form part of this invention, are used to provide a further understanding of the invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an improper limitation of the invention.
[0025] Figure 1 The flowchart is a multi-robot path planning method based on an improved crowd search algorithm, as shown in the first embodiment.
[0026] Figure 2 The warehouse grid map model constructed for the first embodiment.
[0027] Figure 3 A schematic diagram showing the selection of key nodes in the first embodiment.
[0028] Figure 4 This is a schematic diagram illustrating the use of the node expansion method to connect key nodes in the first embodiment.
[0029] Figure 5 This is a schematic diagram illustrating the use of node insertion to connect complete paths in existing technologies.
[0030] Figure 6 This is a schematic diagram of bidirectional search in the first embodiment.
[0031] Figure 7 This is a schematic diagram illustrating that nodes are unavailable in the first embodiment.
[0032] Figure 8 This is a schematic diagram of node correction for the first embodiment.
[0033] Figure 9 This is a schematic diagram of the multi-group optimization algorithm in the first embodiment.
[0034] Figure 10 The figure shows the comparison results of the improved SOA of the first embodiment with other algorithms.
[0035] Figure 11 This is the first embodiment of a multi-robot path conflict resolution strategy based on a reservation table. Detailed Implementation
[0036] Example 1
[0037] like Figure 1 As shown, this embodiment discloses a multi-robot path planning method based on an improved crowd search algorithm, including:
[0038] Step 1: Model the warehouse map using the raster method to obtain the warehouse raster map model;
[0039] Step 2: Determine the starting point, relay point, and ending point of the path in the warehouse grid map model, and establish the optimal path mathematical model based on the Manhattan distance between nodes in the robot path;
[0040] Step 3: Optimize the path using an improved crowd search algorithm, performing parallel searches from the starting point to the relay point and from the relay point to the destination to obtain the optimal path for the robot.
[0041] Step 4: In the process of path optimization using the improved crowd search algorithm, an initial population is generated for the crowd search algorithm based on multiple population optimization algorithms. The fitness of individuals in the population is calculated according to the optimal path mathematical model. The individual positions and the population are updated according to the individual position update rules of the crowd search algorithm. The optimal population and the optimal individual are found to achieve path optimization.
[0042] In step 1, the present invention constructs a small warehouse grid model according to certain rules based on the relative positions of the picking station, warehouse shelves, and transport aisles. Specifically, this includes:
[0043] like Figure 2As shown, a warehouse model with a length of 26 meters and a width of 26 meters is constructed. First, the map is modeled using the grid method, with each grid set to be 1 meter long and 1 meter wide. The warehouse map is divided into 676 grids. The left area is the location of the picking station, which is placed in the leftmost column of the warehouse. Each picking station occupies one grid. The black area is the placement of warehouse shelves or picking stations. The warehouse shelves are arranged in the warehouse in the form of shelf groups, with each shelf group occupying 6 grids, arranged in a 2-row, 3-column format.
[0044] Each shelf group maintains a spacing of 2 grids, serving as a transport channel for the robot. The white area is the transport channel, through which the robot can deliver goods to the designated shelf.
[0045] This embodiment ignores the issues of cargo size and pallet dimensions, and sets each storage location to a standard module with a length of 1 meter and a width of 1 meter, which is sufficient to accommodate only one cargo.
[0046] In step 2, from a practical application perspective, the robot's path movement mode is adjusted from eight-way to four-way, and Manhattan distance is used instead of Euclidean distance to establish the optimal path model. This better adapts to the SOA algorithm for optimization. The distance model is as follows:
[0047]
[0048] Where, x k y k Let x and y be the x-coordinate and y-coordinate of the k-th node of individual x, respectively, k∈{1,2,…,n}, where n is the number of nodes in the path; f(x) is the total path length. Then the shortest path model is f(x). min f(x) is the optimal path that minimizes the total path length.
[0049] In step 3, this invention maps the algorithm to the actual problem based on the characteristics of the improved SOA algorithm, the grid map model, and the shortest path model, and performs an optimization process according to the algorithm rules, specifically including:
[0050] Step 301: Initialize the parameters of the improved population search algorithm, including: initializing the population, the best position of the current population, the best historical position of the individual, the search direction and search step size of the individual in each dimension;
[0051] Step 302: Establish a path optimization mechanism to obtain the robot's optimal path by performing parallel searches from the starting point to the relay point and from the relay point to the end point.
[0052] Step 303: Update individual positions based on search direction and search step size to obtain the updated population;
[0053] Step 304: Determine if the iteration condition has been met. If so, output the optimal path; otherwise, continue iterating and updating the population.
[0054] Step 302 includes: Step 3021: Generating and connecting paths based on the direction-oriented node expansion method, where each path represents an individual in the population; Step 3022: Generating an initial population for the population search algorithm based on a multi-population optimization algorithm guided by positive reviews and Monte Carlo estimation, and calculating the fitness of individuals in the population based on the optimal path mathematical model.
[0055] Step 3021: Generate and connect paths based on the direction-oriented node expansion method, specifically including:
[0056] Step 30211: Randomly select one idle node as a key node in each row between the start and end points in the warehouse grid map model;
[0057] In this embodiment, the concept of "critical node" is introduced based on the characteristics of the SOA algorithm: A free node is randomly selected in each row between the start and end points, and this node is called a critical node. The selection of critical nodes is as follows: Figure 3 As shown.
[0058] Step 30212: Select the grid cell containing the midpoint of the horizontal and vertical coordinates of the two points between the starting point and the ending point as the relay point. When the grid cell containing the relay point is an obstacle node, randomly select a grid cell above, below, to the left or to the right of that grid cell as the relay point.
[0059] Step 30213: Perform parallel search of key nodes from the starting point to the relay point and from the relay point to the ending point, and connect two key nodes in adjacent rows using the method of expanding nodes;
[0060] This invention uses a node expansion method instead of the existing insertion method to generate paths, making it more adaptable to SOA algorithms. Each time two adjacent key nodes are connected, node expansion (rather than node insertion) is performed from the preceding key node to the following key node based on their relative positions. The node expansion method in this paper is x-direction first, then y-direction. If an obstacle is encountered in the current direction, the direction can be changed first. (See illustration). Figure 4 As shown, the existing insertion method generation path is as follows: Figure 5 As shown.
[0061] This invention introduces a multi-directional path search strategy, performing bidirectional parallel searches from the starting point to the relay point and from the relay point to the destination. When the grid containing the relay point is an obstacle, a grid is randomly selected from the top, bottom, left, or right of this grid until the selected grid becomes a passable node. This process embodies the "random" characteristic. A diagram of the bidirectional search is shown below. Figure 6 As shown.
[0062] Step 30214: When the critical nodes of two adjacent rows cannot be connected, change the direction to correct the nodes. After the critical nodes are connected, a complete path is formed.
[0063] The path unavailability issue that can occur in SOA path planning is also present in the warehouse system environment of this example. Using extended nodes to connect critical nodes also encounters some problems, such as... Figure 7 As shown, node correction is required at this point. This invention proposes a "normalization" node correction method, which, in special cases, merges one of the key nodes in two adjacent rows towards the other. Here, "merging" refers to normalization in the x-direction (if the key nodes are generated column-wise, then it should be normalization in the y-direction). For example... Figure 8 As shown, when a black critical node is exactly one obstacle away from the next critical node, node expansion cannot be performed to connect them, otherwise node redundancy will occur. Therefore, the black critical node is "aligned" (moved closer in the x-direction) to the next critical node and corrected to a gray node in the same row.
[0064] After the critical nodes are connected, the critical nodes and relay points form a complete path. The sum of the Manhattan distances between all the nodes in the path has been transformed into the path length mathematical problem in step 2. Each path represents an individual in the population, and all the paths constitute the population.
[0065] Step 3022: As Figure 9 As shown, this invention introduces a multi-population optimization approach, designing a multi-population optimization algorithm based on positive review guidance and Monte Carlo estimation to generate a high-quality initial population for SOA. Its main idea consists of two parts: a positive review guidance algorithm and a Monte Carlo estimation population allocation strategy.
[0066] Step 30221: Design a rating-guided algorithm—a multi-group optimization algorithm for generating high-quality solutions to SOA algorithms. The algorithm principle is as follows:
[0067] The original large population is divided into multiple subpopulations using the mirror partitioning method. Then, each subpopulation is dynamically adjusted according to the formula and rules related to positive reviews. A sample population is obtained by sampling from the subpopulations. After continuous iteration, the final sample population is obtained, which serves as the initial population for SOA path planning. The specific steps are as follows:
[0068] (1) Decision space partitioning: Population partitioning is performed based on the number of objective functions and the number of population variables. In this example, only single-objective optimization is considered.
[0069] (2) Initialize algorithm parameters, including: initialize the original large population, sampling rate and maximum number of iterations;
[0070] During initialization, POP individuals (paths) are generated using the key node + node expansion method, and this is called the original large population POP. The original large population POP is then divided into L subpopulations, each denoted as Ω. i (i = 1, 2, ..., L). Each subpopulation is assigned the same sampling probability.
[0071] (3) Sampling is performed on each subpopulation according to the sampling rate of each subpopulation to form a sampling population.
[0072] (4) Calculate the approval rating of each subpopulation and update the sampling rate of each subpopulation based on the approval rating.
[0073] Specifically, the fitness of individuals in each subpopulation is first calculated (in the path planning of this invention, fitness represents the length of the path), and the large population POP composed of all subpopulations is sorted and grouped according to the fitness.
[0074] Assuming the original large population is divided into σ levels according to fitness, the set of the best individuals is C. σ Its fitness set is f(C) σ The set of second-best individuals is C. σ-1 The fitness set is f(C) σ -1)...The set of worst individuals is C1, and the fitness set is f(C1).
[0075] Suppose the group set C at level q is... q There are M individuals in total. Let f(C) q Let q represent the set of fitness scores of all individuals at the q-th level. Then:
[0076]
[0077] For C q A certain entity x in j In this regard, its positive review rating is defined as:
[0078]
[0079] In the above formula, (x∈C) q , q=1,2…σ), z is an independent variable representing the level from 1 to σ, f(C z ) represents the set of fitness scores of all individuals at the z-th level. In formula (3), the denominator is the sum of fitness scores of all individuals, and the numerator is the level to which the individual belongs. Then, in the original large population:
[0080]
[0081] For the i-th subpopulation, its approval rating is:
[0082]
[0083] The approval rating of each subpopulation is calculated using formula (5), and the sampling rate of the subpopulation is then updated based on the approval rating.
[0084]
[0085] (5) Adjust the number of individuals in the subpopulation based on Monte Carlo estimation and update the subpopulation; sample each subpopulation according to the updated sampling probability to obtain a new sampled population pop. Iterate each subpopulation according to the SOA algorithm.
[0086] (6) Iteratively update the sampling rate and subpopulation. If the condition (maximum number of iterations) is met, stop and output the sampled population pop. The sampled population obtained after reaching the maximum number of iterations can be used as the initial population of the SOA algorithm. Otherwise, go to step (4).
[0087] Step 30212: Based on Monte Carlo estimation, design a multi-group assignment strategy:
[0088] In this embodiment, a conceptual model of the quantum tunneling effect is introduced to map the behavior of multiple populations, and a population allocation strategy based on Monte Carlo estimation is used to increase the probability of the quantum tunneling effect occurring. Based on this idea, the subpopulations are iteratively adjusted to ultimately generate a better initial population. The principle and steps are as follows:
[0089] Quantum tunneling effect: The quantum tunneling effect provides a unique perspective on multi-swarm strategies from a quantum mechanical standpoint. It maps the number of subpopulations in the overall sampling point to the number of particle clusters, and simultaneously maps the number of individuals in a specific subpopulation to the number of particles in a particle cluster. This mapping strategy helps simplify the complexity of multi-swarm strategies and provides a more intuitive description of them.
[0090] Within this framework, the potential barrier is assessed using the distance from the current subpopulation to the optimal solution interval, and the potential energy is evaluated through the objective function. This approach allows us to view the function optimization process as a process of a population finding the location of the lowest potential energy point, providing a new dimension for understanding and handling the problem.
[0091] In a quantum system, during the search for the lowest potential energy point by a particle, there is a possibility that the particle can cross the potential barrier to reach the lowest potential energy point. This means the measurement point jumps from a local optimum to the global optimum, a phenomenon known as the tunneling effect, unique to quantum systems. The probability of the tunneling effect is influenced by the number of individuals in the subpopulation and the distance (potential barrier) from the current subpopulation to the optimal solution interval. Dynamically adjusting the subpopulation size using potential barrier information can alter the probability of the tunneling effect, thereby improving the algorithm's optimization efficiency and capability. Furthermore, considering the impact of the subpopulation size itself on algorithm performance has more practical significance.
[0092] Population size distribution based on Monte Carlo estimation: When the search space of a problem is large, obtaining high-quality initial solutions becomes very difficult because the proportion of optimal solutions is relatively small. This increases the difficulty of obtaining good initial solutions through random sampling, thus significantly reducing the solution efficiency of optimization algorithms. Especially when facing large-scale multi-objective optimization problems, it is desirable to obtain a population or solution group with a good distribution. Therefore, improving the dispersion and initial performance of the population becomes a crucial task.
[0093] In the iterative process of multiple population optimization strategies, each subpopulation undergoes m changes. i The measurement, m i This represents the current size (number of individuals) of the subpopulation. In practice, the measurement can be mapped to an evaluation of the integral of the function f(α); increasing the value at the current center α... i Number of measurements m i This increases the probability of finding the optimal solution. The Monte Carlo method is a statistical simulation method that uses random numbers to solve problems requiring a lot of computation. Based on the Monte Carlo principle, the more measurements are taken, the closer the approximation to the optimal solution. Here, the Monte Carlo method can estimate the above f(α). The Monte Carlo operator is:
[0094]
[0095] The above formula It is based on α i The Monte Carlo operator for evaluating the current region by the subpopulation centered at (i = 1, ..., L), m i (i = 1, ..., L) represents the size (number of individuals) of this subpopulation, P(α) i (i = 1, ..., L) is the probability density function of the current i-th subpopulation, f(α) i Let f(α) be the objective function. i ) / P(α i )=g(α i According to the law of large numbers:
[0096]
[0097] Therefore, we can deduce that the integral within the interval is at m. i The representation under repeated measurements is as follows:
[0098]
[0099]
[0100] In the above formula, α represents the independent variable of the measurement mapping as a function, α0 represents the position of the theoretical optimal solution of the function, and [α0-ε, α0+ε] represents the integration region within the error range of the optimal solution. E[.] is the mathematical sign for calculating the mean. For different centers α i In this case, the probability density functions of measurements differ within the domain, while the integral of the function over a fixed interval is constant. Therefore, the influence of the probability density function on the integral evaluation should be analyzed. Since all measurement center points follow a normal distribution with the same variance, the difference lies in the expected value. The expected value represents the coordinate information of the sampling center. The variance is then calculated as follows:
[0101]
[0102] Let g(α) i The variance is σ 2 At this time, g(α) i The variances are independent of each other, therefore the Monte Carlo variance is independent of σ. 2 The relationship is:
[0103]
[0104] It can be seen that when m i The larger the value of m, the smaller the variance of the Monte Carlo estimate. i The value is a constant greater than or equal to 1; from the Monte Carlo estimation perspective, different populations have different sizes, and the different measurements result in different assessments of the population's own position, with an error of [missing value]. The proportion of the regional integral evaluated for each subpopulation relative to the total is:
[0105]
[0106] In the formula, θ sThe measurement scale is represented in the multi-scale quantum resonance optimization algorithm. In this algorithm, there exists a subpopulation with poor fitness, whose distribution region integral is larger than other subpopulations. To ensure the accuracy of the overall evaluation, a strategy is adopted: to maximize the size of the poorly fit subpopulation. By increasing its size, this subpopulation is more likely to exhibit tunneling in the next iteration, thereby improving its ability to migrate to the optimal solution region. Simultaneously, the subpopulation with better fitness is moderately reduced to maintain the overall evaluation error within an acceptable range and improve sampling efficiency. This strategy effectively controls the tunneling effect without changing the sampling rate.
[0107] Step 303 includes: assuming the population size is popnum, the number of key nodes in each path is n, and the maximum number of iterations for the population is T. SOA The individual update formula in SOA is as follows:
[0108] x ij (t SOA +1)=x ij (t SOA )+r ij (t SOA )·d ij (t SOA (13)
[0109] Where, x ij t represents the position of the i-th individual in the j-th dimension. SOA Let t represent the number of iterations, i∈{1,2,…,popnum}, j∈{1,2,…,n}, and t SOA ∈{1,2,…,T SOA}, r ij and d ij These represent the corresponding search radius (step size) and search direction, respectively.
[0110] The method for calculating the search radius is designed based on improved fuzzy rules in SOA. The specific determination method is as follows:
[0111] Let r ij Let δ be the search step size of the j-th dimension search space for the i-th individual. ij Let be the Gaussian membership function parameter, and w be the linearly decreasing inertia weight, whose value decreases with the number of iterations, gradually decreasing from a maximum of 0.9 to 0.1. Then the following equations hold:
[0112] Search step size calculation:
[0113] Membership parameter: δ ij =w·abs(x min -x max(15)
[0114] Inertia weight:
[0115] In the above formula, x min and x max T represents the individual's position at the minimum and maximum fitness values, respectively, indicating the individual's optimal and worst-case positions; SOA t represents the maximum number of iterations. SOA This represents the current population iteration number. ij Let represent the membership degree of individual i in the j-th dimension of the search space; the specific reasoning process will not be detailed here.
[0116] For the calculation of the search direction, let x i Let x be the current position of the i-th individual in the population at a certain iteration. i-1 Let p be the position of the i-th individual in the previous iteration. ibest Record the historical best position of the i-th individual, g best Record the optimal position of the group.
[0117] Here, an explorer refers to an individual x in the group. i That is, a path. Individual x i A key node is called one of its dimensions x. ij During iterative updates, the search direction and step size for each dimension of the explorer are calculated, and the position of each explorer in each dimension is updated. Explorer i in a certain dimension x... ij The search direction is determined by three factors, which, in the algorithm, is a weighted sum of the three directions:
[0118] d ij =h·d ijalt +w1·d ijpro +w2·d ijeqo (17)
[0119] In the above formula, h, w1, and w2 are weight coefficients, all ranging from 0 to 1. h is the pre-movement direction weight. At the beginning of the search, the pre-movement direction should change significantly, at which point h = 1. As the iterative search gradually approaches the optimal position, the individual's pre-movement direction gradually decreases to 0. Therefore, h decreases from 1 to 0 with the number of iterations.
[0120] h=(T SOA -t SOA ) / T SOA (18)
[0121] Where w1 and w2 are weight coefficients (0 to 1) randomly generated each time the position is updated;
[0122] d ijaltThe pre-movement direction is the inertial search direction that an individual determines by comparing its position with that of the previous iteration.
[0123] d ijpro : Empirical direction, the empirical search direction derived by comparing the individual's historical best position with the current position;
[0124] d ijego Learning direction refers to the learning direction determined by comparing the explorer with the best individual in the current group.
[0125] The calculation formulas for the three directions are as follows:
[0126] d ijalt =sign{x ij -x ij-1} (19)
[0127] d ijpro =sign{p ijbest -x ij} (20)
[0128] d ijego =sign{g ijbest -x ij} (twenty one)
[0129] In the above formula, p ijbest It refers to p ibest The j-th dimension, g ijbest Similarly, ...
[0130] This invention provides an improved method for SOA path planning, including multi-group optimization algorithm design, the introduction of a bidirectional search method, model improvement, and path generation method improvement. The efficiency and stability of the improved SOA path planning method are compared with those of the original SOA (using node insertion to generate and connect paths), Genetic Algorithm (GA), and Ant Colony Algorithm (ACO). Figure 10 As shown.
[0131] As a further technical solution, step 4 includes:
[0132] Step 401: Assign tasks to the newly added robot, including determining its task start point, intermediate task points, and task end point.
[0133] Step 402: Call the improved SOA path planning method to plan the path for the new robot and record the new robot reservation form.
[0134] The reservation table records the time and position correspondence of each robot every second. It assumes that the robots move at a constant speed of one meter per second, and that the reservation table is updated every second. The reservation table is generated by storing the position and time correspondence of each robot in a cell array after planning. Alternatively, it can be output as a table. This correspondence represents the reservation table for a robot.
[0135] Step 403: Determine whether the reservation table of the newly added robot has a node or path conflict with the global dynamic reservation table. If there is a conflict, resolve the conflict; otherwise, add the new robot and its reservation table to the global dynamic reservation table of the warehouse system for real-time updates.
[0136] It should be noted that the global dynamic reservation table in step 403 refers to a global reservation table composed of the reservation tables of all robots that have been planned and are certain that no conflict will occur, which records the time and location relationships of the robots globally.
[0137] Step 403 requires conflict detection for the newly added robot paths, including calling the global dynamic reservation table and the new robot's reservation table for conflict detection and resolution, as well as maintaining and updating the global dynamic reservation table. Figure 11 As shown, it specifically includes:
[0138] Step 4031: Conflict detection. The global dynamic reservation table and the newly added robot reservation table are compared to check for conflicts. If a conflict occurs, proceed to step 4032 to resolve the conflict. Otherwise, skip step 4032 and proceed to step 4033.
[0139] It should be noted that in this embodiment, the rules for determining the occurrence of a conflict are that two robots occupy the same node at the same time, or that the positions of the two robots are swapped at two adjacent times.
[0140] Step 4032: Conflict Resolution. When a newly added robot path conflicts with an existing path, first attempt to pause the robot for two seconds at the node one second before the conflict node, and update its reservation table. If the conflict still exists, invoke the improved SOA to replan the robot's path; otherwise, the conflict is resolved, and proceed to the next step.
[0141] Step 4033: After the conflict is resolved, the new robot path is stored in the global dynamic reservation table, which is the same as other existing robot paths, and the reservation table is updated in real time (once per second).
[0142] Step 4034: Determine if it is necessary to add new robots and tasks. If so, go to step 1; otherwise, end the multi-robot path planning program and wait for all inbound tasks to be completed.
[0143] Example 2
[0144] This embodiment discloses a multi-robot path planning system based on an improved crowd search algorithm, including:
[0145] The warehouse raster map model building module is configured to: model the warehouse map using a raster method to obtain a warehouse raster map model;
[0146] The optimal path mathematical model construction module is configured to: determine the starting point, relay point and ending point of the path in the warehouse grid map model, and establish the optimal path mathematical model based on the Manhattan distance between nodes in the robot path;
[0147] The path optimization module is configured to use an improved crowd search algorithm to optimize the path, and to perform parallel searches from the starting point to the relay point and from the relay point to the end point to obtain the optimal path for the robot.
[0148] In the process of path optimization using an improved crowd search algorithm, an initial population is generated for the crowd search algorithm based on multiple population optimization algorithms. The fitness of individuals in the population is calculated according to the optimal path mathematical model. The individual positions and the population are updated according to the individual position update rules of the crowd search algorithm. The optimal population and the optimal individual are found to achieve path optimization.
[0149] Example 3
[0150] The purpose of this embodiment is to provide a computer-readable storage medium.
[0151] A computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps in a multi-robot path planning method based on an improved crowd search algorithm as described in Embodiment 1 of this disclosure.
[0152] Example 4
[0153] The purpose of this embodiment is to provide an electronic device.
[0154] An electronic device includes a memory, a processor, and a program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps in a multi-robot path planning method based on an improved crowd search algorithm as described in Embodiment 1 of this disclosure.
[0155] The steps and methods involved in the apparatuses of Embodiments 2, 3, and 4 above correspond to those in Embodiment 1. For specific implementation details, please refer to the relevant description section of Embodiment 1. The term "computer-readable storage medium" should be understood as a single medium or multiple media including one or more instruction sets; it should also be understood as including any medium capable of storing, encoding, or carrying an instruction set for execution by a processor and enabling the processor to perform any of the methods in this invention.
[0156] Those skilled in the art will understand that the modules or steps of the present invention described above can be implemented using general-purpose computer devices. Optionally, they can be implemented using computer-executable program code, thereby allowing them to be stored in a storage device for execution by a computer device, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. The present invention is not limited to any particular combination of hardware and software.
[0157] While the specific embodiments of the present invention have been described above in conjunction with the accompanying drawings, this is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art without creative effort based on the technical solutions of the present invention are still within the scope of protection of the present invention.
Claims
1. A multi-robot path planning method based on an improved crowd search algorithm, characterized in that, include: The warehouse map was modeled using a grid method to obtain a warehouse grid map model; Determine the starting point, relay point, and ending point of the path in the warehouse grid map model, and establish an optimal path mathematical model based on the Manhattan distance between nodes in the robot path; An improved crowd search algorithm is used for path optimization, performing parallel searches from the starting point to the relay point and from the relay point to the destination to obtain the optimal robot path. During the parallel path search process, a direction-guided node expansion method is used to obtain the path in the warehouse grid map model, including: In the warehouse grid map model, one free node is randomly selected as the key node in each row between the start and end points; Parallel search of key nodes is performed from the starting point to the relay point and from the relay point to the end point. Two key nodes in adjacent rows are connected by expanding nodes. When two key nodes in adjacent rows cannot be connected, the direction is changed to correct the nodes. After the key nodes are connected, a complete path is formed. In the path optimization process using an improved crowd search algorithm, an initial population is generated for the crowd search algorithm based on a multi-population optimization algorithm. The fitness of individuals in the population is calculated according to the optimal path mathematical model. The individual positions and the population are updated according to the individual position update rules of the crowd search algorithm to find the optimal population and the optimal individuals to achieve path optimization. The generation of the initial population for the crowd search algorithm based on the multi-population optimization algorithm includes: initializing the parameters of the multi-population optimization algorithm, including: initializing the original large population, sampling rate, and maximum number of iterations. The original large population is divided into multiple subpopulations, and the subpopulations are sampled according to the sampling rate to obtain the sampled population. Calculate the approval rating for each subpopulation separately, and update its sampling rate based on the approval rating of each subpopulation; adjust the number of individuals in the subpopulation based on Monte Carlo estimation, and update the subpopulation. Based on the updated sampling rate, the updated subpopulation is sampled, and the sampling rate and subpopulation are iteratively updated. After reaching the maximum number of iterations, the final sampled population is obtained as the initial population of the population search algorithm.
2. The multi-robot path planning method based on an improved crowd search algorithm as described in claim 1, characterized in that, The selection rule for relay points is as follows: select the grid cell containing the midpoint of the horizontal and vertical coordinates of the two points between the starting point and the ending point as the relay point. When the grid cell containing the relay point is an obstacle node, randomly select a grid cell above, below, to the left, or to the right of that grid cell as the relay point.
3. The multi-robot path planning method based on an improved crowd search algorithm as described in claim 1, characterized in that, The method of connecting two key nodes in an adjacent row using extended nodes includes: each time two key nodes in an adjacent row are connected, node expansion is performed from the previous key node to the next key node according to their relative positions, with the node expansion method being x-direction first and y-direction second.
4. The multi-robot path planning method based on an improved crowd search algorithm as described in claim 1, characterized in that, The step of updating individual positions and populations according to the individual position update rules of the crowd search algorithm includes: treating path individuals as explorers and determining the search direction and search radius of the explorers in each dimension; The explorer's position is updated based on the search direction and search radius. Through continuous iteration, the optimal position for the explorer and the group is finally found, which is the shortest path.
5. A multi-robot path planning method based on an improved crowd search algorithm as described in claim 1, characterized in that, When the robot performs its task according to its optimal path, the position information of each robot at each moment is obtained, and the correspondence between the position and time of each robot is stored to form a global dynamic reservation table. When a new robot is added, it is determined whether the reservation table of the newly added robot has a node or path conflict with the global dynamic reservation table. If so, the conflict is resolved; otherwise, multiple robots work together to execute the task.
6. A multi-robot path planning system based on an improved crowd search algorithm, characterized in that, include: The warehouse raster map model building module is configured to: model the warehouse map using a raster method to obtain a warehouse raster map model; The optimal path mathematical model construction module is configured to: determine the starting point, relay point and ending point of the path in the warehouse grid map model, and establish the optimal path mathematical model based on the Manhattan distance between nodes in the robot path; The path optimization module is configured to: employ an improved crowd search algorithm for path optimization, performing parallel searches from the starting point to the relay point and from the relay point to the destination to obtain the optimal robot path; during the parallel path search process, a direction-guided node expansion method is used to obtain the path in the warehouse grid map model, including: In the warehouse grid map model, one free node is randomly selected as the key node in each row between the start and end points; Parallel search of key nodes is performed from the starting point to the relay point and from the relay point to the end point. Two key nodes in adjacent rows are connected by expanding nodes. When two key nodes in adjacent rows cannot be connected, the direction is changed to correct the nodes. After the key nodes are connected, a complete path is formed. In the path optimization process using an improved crowd search algorithm, an initial population is generated for the crowd search algorithm based on a multi-population optimization algorithm. The fitness of individuals in the population is calculated according to the optimal path mathematical model. The individual positions and the population are updated according to the individual position update rules of the crowd search algorithm to find the optimal population and the optimal individuals to achieve path optimization. The generation of the initial population for the crowd search algorithm based on the multi-population optimization algorithm includes: initializing the parameters of the multi-population optimization algorithm, including: initializing the original large population, sampling rate, and maximum number of iterations. The original large population is divided into multiple subpopulations, and the subpopulations are sampled according to the sampling rate to obtain the sampled population. Calculate the approval rating for each subpopulation separately, and update its sampling rate based on the approval rating of each subpopulation; adjust the number of individuals in the subpopulation based on Monte Carlo estimation, and update the subpopulation. Based on the updated sampling rate, the updated subpopulation is sampled, and the sampling rate and subpopulation are iteratively updated. After reaching the maximum number of iterations, the final sampled population is obtained as the initial population of the population search algorithm.
7. A computer-readable storage medium having a program stored thereon, characterized in that, When executed by the processor, the program implements the steps in the multi-robot path planning method based on an improved crowd search algorithm as described in any one of claims 1-5.
8. An electronic device, comprising a memory, a processor, and a program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps in the multi-robot path planning method based on an improved crowd search algorithm as described in any one of claims 1-5.