Parallel path planning method, system, equipment, medium and product

By dividing the map into sub-maps and utilizing a parallel path planning method involving robot formations, the problems of slow path planning speed and high resource consumption in existing technologies are solved, enabling rapid path planning in complex environments.

CN121113104APending Publication Date: 2025-12-12CHINA MOBILE M2M +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510364421.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-26
Publication Date
2025-12-12

AI Technical Summary

Technical Problem

Existing path planning methods are slow and resource-intensive in large-scale environments, and are particularly unstable in dynamic and complex environments.

Method used

A parallel path planning method is adopted to divide the map to be planned into multiple sub-maps. By having master and slave robots in a robot formation work together, and using Dijkstra's algorithm and the alternating direction multiplier method, a global feasible graph structure is constructed to solve for the shortest path.

Benefits of technology

It enables fast and resource-efficient path planning in environments with large-scale obstacles, improving the efficiency of path planning and shortening the planning time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121113104A_ABST
    Figure CN121113104A_ABST
Patent Text Reader

Abstract

The invention provides a parallel path planning method, system and device, a medium and a product, and the method comprises the steps: dividing a to-be-planned map into a plurality of sub-maps, and determining the corresponding relation between each slave robot in a robot formation and each sub-map; obtaining local feasible graph structures from each slave robot, and obtaining a global feasible graph structure by taking overlapping regions among the local feasible graph structures as connecting points; the local feasible graph structure is a graph structure obtained by operating a Dijkstra algorithm for the sub-map by the slave robot; and solving a target function taking the shortest total distance as a target to obtain a shortest path from the starting point to the ending point. According to the distributed and parallel path planning method realized through the robot formation, the map is divided into a plurality of sub-maps and the sub-maps are allocated to different robots for processing, so that the calculation amount of each robot can be reduced, a Dijkstra algorithm of dimension reduction is realized, and the path planning time can be shortened under the condition of large-scale obstacles.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of path planning technology, and in particular to a parallel path planning method, system, device, medium, and product. Background Technology

[0002] With the development of mobile robots and autonomous driving, path planning is receiving increasing attention from the industry.

[0003] Traditional path planning methods include graph theory-based algorithms, optimization-based methods, and neural network learning-based methods. Graph theory-based algorithms, such as A* and Dijkstra's algorithms, suffer from slow planning speeds, high resource consumption, and heavy reliance on heuristic function selection in large-scale environments. They also struggle to adapt quickly and replan paths in dynamically changing environments. Optimization-based algorithms, especially with numerous obstacles or robots, rely on a single computational core, resulting in slow computation speeds and underutilization of robot communication and computing capabilities. Learning-based methods have long training times; reinforcement learning models require significant time to train, particularly in complex environments. Furthermore, the performance of reinforcement learning can be unstable in different environments, exhibiting considerable uncertainty.

[0004] It is evident that existing path planning methods suffer from slow planning speed and high resource consumption. Summary of the Invention

[0005] This invention provides a parallel path planning method, system, device, medium, and product to address the shortcomings of existing technologies in terms of slow planning speed and high resource consumption when there are large-scale path planning tasks. It realizes distributed path planning using robot formations and finally summarizes the path planning results of each robot in the robot formation to obtain the globally optimal path.

[0006] This invention provides a parallel path planning method applied to the master robot in a robot formation, comprising the following steps.

[0007] A map to be planned, including a start point and an end point, is determined. The map to be planned is divided into multiple sub-maps containing overlapping areas. The correspondence between each robot in the robot formation and each sub-map is determined. The robot obtains local feasible graph structures from each local feasible graph structure, and uses the overlapping areas between the local feasible graph structures as connection points to obtain a global feasible graph structure. The local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon for the sub-map corresponding to itself. The vertices of the graph structure are the obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons. Solve the objective function with the goal of minimizing the total distance from the starting point to the ending point, and with the constraint that each path point lies within the polygon represented by each vertex in the global feasible graph structure, to obtain the shortest path from the starting point to the ending point.

[0008] According to a parallel path planning method provided by the present invention, the step of obtaining local feasible graph structures from various robots and using the overlapping regions between the local feasible graph structures as connection points to obtain a global feasible graph structure includes: The local feasible graph structure is obtained from each robot. The robot is used to extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles, using these polygons as vertices and the common edges as edges to obtain the local graph structure. Dijkstra's algorithm is used to update the distance from each vertex to the starting point in the local graph structure. By backtracking from the endpoint to the parent node with the minimum cost distance, a path region consisting of vertices connected by edges and then back to vertices in the local graph structure is obtained, serving as the local feasible graph structure. Using the relay points generated by the overlapping regions between local feasible graph structures as connection points, the cost distance of each vertex is updated to obtain the global feasible graph structure.

[0009] According to a parallel path planning method provided by the present invention, the solution aims to minimize the total distance from the starting point to the ending point, with the constraint that each path point lies within the polygon represented by each vertex in the global feasible graph structure, thereby obtaining the shortest path from the starting point to the ending point, including: Construct an objective function that minimizes the total distance of the path from the starting point to the ending point; the path contains multiple path points; each path point is located in the polygon set; The objective function is solved using the alternating direction multiplier method to obtain the shortest path from the starting point to the ending point.

[0010] According to a parallel path planning method provided by the present invention, the robot is used to extract multiple obstacle-free polygons from a corresponding sub-map based on the location of obstacles, and then use a preset shape set to perform Minkowski difference operation on each polygon to obtain a convex polygon. The robot is further configured to obtain the common edge between each of the convex polygons based on the adjacent polygons of each convex polygon, and obtain the local graph structure by using the convex polygon as a vertex and the common edge as an edge.

[0011] This invention also provides a parallel path planning method applied to slave robots in robot formation, comprising: Determine a sub-map; wherein the sub-map is obtained by dividing a map to be planned, which includes a start point and an end point; After using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon in the sub-map corresponding to itself, a locally feasible graph structure is obtained; wherein, the vertices of the graph structure are unobstructed polygons extracted from the sub-map, and the edges are the common edges between the polygons; The local feasible graph structure is sent to the master robot in the robot formation so that the master robot can solve an objective function with the goal of minimizing the total distance from the starting point to the ending point and the constraint that each path point is located within the polygon represented by each vertex in the global feasible graph structure, thereby obtaining the shortest path from the starting point to the ending point.

[0012] According to a parallel path planning method provided by the present invention, after calculating the shortest distance from the starting point to the vertices represented by each polygon using Dijkstra's algorithm on the sub-map corresponding to itself, a locally feasible graph structure is obtained, including: Extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles; Using the polygon as vertices and the common edge as edges, a local graph structure is obtained; Using Dijkstra's algorithm, the distance from each vertex to the starting point in the local graph structure is updated. By backtracking from the ending point to the parent node with the minimum cost distance, a path region consisting of vertices of the local graph structure connected by edges is obtained, which serves as the local feasible graph structure.

[0013] This invention also provides a parallel path planning system, comprising a robot formation consisting of a master robot and multiple slave robots, wherein, The master robot is used to perform the steps in the above embodiment of the parallel path planning method for master robots in robot formation; The slave robot is used to perform the steps described in the above embodiment of the parallel path planning method for slave robots applied in robot formation.

[0014] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the parallel path planning method as described above.

[0015] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the parallel path planning method as described above.

[0016] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements any of the parallel path planning methods described above.

[0017] The parallel path planning method, system, device, medium, and product provided by this invention determine a map to be planned, including a start point and an end point, divide the map into multiple sub-maps containing overlapping areas, and determine the correspondence between each slave robot in the robot formation and each sub-map; obtain local feasible graph structures from each slave robot, and use the overlapping areas between the local feasible graph structures as connection points to obtain a global feasible graph structure; the local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the start point to the vertices represented by each polygon for the sub-map corresponding to itself, the vertices of the graph structure are obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons; solve the objective function with the goal of minimizing the total distance from the start point to the end point, and with the constraint that each path point is located within the polygons represented by each vertex in the global feasible graph structure, to obtain the shortest path from the start point to the end point. This application implements a distributed and parallel path planning method through robot formation. The map is divided into multiple sub-maps and assigned to different robots for processing, which can reduce the computational load of each robot and realize the dimensionality reduction Dijkstra algorithm. In the case of large-scale obstacles, the path planning problem can be solved through communication between robots, thereby improving the optimization efficiency and shortening the path planning time. Attached Figure Description

[0018] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0019] Figure 1 This is one of the flowcharts of the parallel path planning method provided by the present invention.

[0020] Figure 2This is a schematic diagram of a polygon in the sub-map provided by the present invention.

[0021] Figure 3 This is a schematic diagram of path planning in the sub-map provided by the present invention.

[0022] Figure 4 This is a schematic diagram of global path planning in the map to be planned provided by the present invention.

[0023] Figure 5 This is the second flowchart of the parallel path planning method provided by the present invention.

[0024] Figure 6 This is one of the structural schematic diagrams of the parallel path planning device provided by the present invention.

[0025] Figure 7 This is the second schematic diagram of the parallel path planning device provided by the present invention.

[0026] Figure 8 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0027] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0028] The following is combined Figures 1-8 Specific embodiments of the present invention are described below.

[0029] The parallel path planning method provided by this invention is applied to robot formation. Robot formation refers to a technology in which a group of autonomous robots (or multiple agents) maintain a specific geometric configuration or relative position through collaborative work and communication to achieve a common task. The robot formation in this application consists of a master robot and a slave robot.

[0030] Consider a robot formation with multiple robots capable of communication and computation, performing path planning in a very large two-dimensional environment, and the robots can change formation. Robot formation can be achieved using template-based formation. It means that, among them, This represents the nth robot; each template formation contains shape and position functions. Where (x,y) represents the two-dimensional position coordinates. This represents the orientation angle of each robot in a two-dimensional coordinate system; each robot has a processor. It can run independently. This represents the nth processor core.

[0031] Figure 1 This is one of the flowcharts illustrating the parallel path planning method provided by this invention, such as... Figure 1 As shown, this method is applied to the master robot in a robot formation and includes the following steps: Step 101: Determine the map to be planned, which includes the start point and the end point; divide the map to be planned into multiple sub-maps containing overlapping areas; and determine the correspondence between each robot in the robot formation and each sub-map.

[0032] Specifically, the main robot decomposes a map into multiple overlapping sub-maps, and each sub-map is assigned a slave robot to handle obstacle and feasible area decomposition.

[0033] To elaborate, there is a map to be planned, including a start point and an end point. The map to be planned Decomposed into sub-maps ,in It is worth mentioning that for any submap There exists at least one other submap. Make .

[0034] Obstacles in the map Dispersed into To each sub-map The goal of path planning is to find a suitable path. ,in, For the nth path point, tasks are assigned to the robot's processor in a relatively short time. and let As a path optimization function.

[0035] Step 102: Obtain local feasible graph structures from each robot, and use the overlapping areas between the local feasible graph structures as connection points to obtain a global feasible graph structure; the local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon for the sub-map corresponding to itself, the vertices of the graph structure are obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons.

[0036] Specifically, each robot in the formation receives a sub-map from the robot processor C. and obstacles Parallel preprocessing without communication (i.e., without needing to communicate with other robots) can be performed first.

[0037] The robot first needs to spatially decompose the sub-map, that is, decompose the sub-map into multiple closed polygonal regions without obstacles.

[0038] First, determine the position and shape of obstacles in the submap. Based on the shape of the obstacles, decompose the submap to obtain the decomposed edge set. .

[0039] Then, traverse the edge set. The left and right regions of each edge in the diagram are made into an accessible space. A closed polygonal region.

[0040] Finally, in an accessible space Obtain the adjacency matrix M from the polygon set (i.e., the set of polygons), which is used to represent the adjacency relationship between polygons.

[0041] Each set of closed polygons obtained from the robot's processing of the sub-map is as follows: Figure 2 As shown, Figure 2 This shows a schematic diagram of the polygons in the submap. Figure 3 The image shows polygonal areas and obstacle spaces in an accessible space. Figure 3 (As shown in the polygon filled with stripes).

[0042] Furthermore, after the robot extracts multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles, it performs Minkowski difference operation on each polygon using a preset shape set to obtain convex polygons. The robot also obtains the common edges between each polygon based on the adjacent polygons of each convex polygon, and obtains a local graph structure with the convex polygon as the vertex and the common edge as the edge.

[0043] Specifically, for the concave polygons in the above polygons, each concave polygon needs to be decomposed to obtain convex polygons, and the final output is the barrier-free space. All polygons in the array are convex polygons. A concave polygon is a polygon with at least one interior angle greater than 180 degrees, while no interior angle of a convex polygon is greater than 180 degrees.

[0044] The specific algorithms are shown in the table below (i.e., Algorithm 1):

[0045] It should be noted that each from the robot processor C and the sub-map The correspondence, and the submap The adjacency relationships between them are recorded by a single robot processor (i.e., the main robot mentioned above) as the main program.

[0046] Step 102: Obtain local feasible graph structures from each robot, and use the overlapping areas between the local feasible graph structures as connection points to obtain a global feasible graph structure; the local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon for the sub-map corresponding to itself, the vertices of the graph structure are obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons.

[0047] In this step, the master robot obtains the local feasible graph structure from each slave robot. The slave robot is used to extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles. Using the polygons as vertices and common edges as edges, a local graph structure is obtained. Dijkstra's algorithm is used to update the distance from each vertex to the starting point in the local graph structure. By backtracking from the ending point to the parent node with the minimum cost distance, a path region consisting of vertices of the local graph structure connected by edges is obtained, which serves as the local feasible graph structure.

[0048] First, it needs to be explained that each slave robot in the robot formation runs a parallel algorithm, and each slave robot uses this parallel algorithm to construct a graph structure. The graph structure consists of vertices (also called nodes) and edges. Each vertex represents a convex polygon, and the edges in the graph structure represent the common edges between convex polygons. The process of constructing the graph structure for each robot is as follows: For each convex polygon in the sub-map, the Minkowski Difference method is used to detect a collision-free region with the robot (each robot needs to occupy a certain space, or the vehicle on which the robot is located needs to occupy a certain space). This region is also a polygonal region (hereinafter referred to as a collision-free polygon), and it is used as a vertex V of the locally feasible graph structure. Then, a collision-free connected region (such as...) is generated based on the common edges of the collision-free polygons. Figure 3 The white rectangular area shown in the graph represents the edge E of the graph structure.

[0049] Minkowski difference is a mathematical tool used to handle relationships between geometric objects, particularly widely applied in collision detection, path planning, and computer graphics. It determines the relative position and intersection of two geometric objects by calculating their difference. In this embodiment, each robot uses Minkowski difference to detect areas in its corresponding sub-map that will not collide with it, resulting in the aforementioned collision-free polygons. During collision detection using Minkowski difference, the condition that must be met is that the robot formation F, moving in formation within the graph structure, will not encounter any obstacles regardless of its direction. The algorithm for collision detection using Minkowski difference is shown in the table below (i.e., Algorithm 2):

[0050] After the master robot in robot formation F obtains the local feasible graph structures of all slave robots, it obtains the global feasible graph structure by using the overlapping areas between the local feasible graph structures as connection points. In other words, at this point, the global feasible graph structure has been constructed for the map to be planned, including the start and end points, and the next stage of the distributed Dijkstra algorithm can begin.

[0051] Dijkstra's algorithm is a classic graph search algorithm used to find the shortest path from a single source vertex to all other vertices in a weighted graph. Dijkstra's algorithm is based on a greedy strategy, progressively building a shortest path tree. It starts from the source vertex and gradually expands to other vertices, selecting the currently known shortest path vertex for expansion at each step, until all vertices have been visited.

[0052] This embodiment employs a distributed Dijkstra's algorithm, where each robot executes Dijkstra's algorithm within its corresponding sub-map to find the shortest path length from the starting point in the map to be planned (i.e., the starting point in the overall map) to each vertex, ultimately outputting a minimum-cost node set. .

[0053] In this phase, each processor runs one Dijkstra's algorithm, updating the distance cost from each vertex in the graph structure to the starting point. For simplicity, the center distance of a region is used as the distance cost. The distance cost refers to the path length or weight from one vertex to another, reflecting the "cost" of moving along this path, which can be the actual distance, time, energy consumption, or other resource consumption. In this embodiment, the center distance of a region is used as the distance cost, where the center distance of a region refers to the distance between the center point (centroid) of one unobstructed polygon and the center point of another unobstructed polygon.

[0054] The algorithms for updating the distance cost from each vertex to the starting point in the graph structure using Dijkstra's algorithm are shown in the table below (i.e., Algorithm 3):

[0055] The graph structure records the parent and child nodes of each vertex, used to update the distance cost. This is because submaps share common regions, i.e., submaps... sub-map The intersection of the nodes is considered. Whenever the distance cost of a vertex in the intersection is updated, the slave robot transmits this information to the corresponding other processor via a communication mechanism. The processor compares the distance costs and decides whether to update the cost distance. If updated, all child nodes of this vertex, as well as their children, are updated accordingly, and so on. When the distance cost of the destination region is updated from the starting point, a delay is designed to ensure that the distance is minimized to the shortest possible cost distance. Specifically, if a slave processor does not receive node update information from another slave processor within a limited time (i.e., a preset delay period), it stops updating the node, ensuring a relatively optimal path is obtained in a shorter time. During this process, all slave processors know the distance cost, parent node, and child nodes of the nodes they are processing.

[0056] The algorithm for transmitting information between robots to the corresponding slave robot via a communication mechanism is shown in the table below (i.e., Algorithm 4): Using the relay points generated by the overlapping regions between local feasible graph structures as connection points, the cost distance of each vertex is updated, and finally the main robot obtains the global feasible graph structure.

[0057] In the global feasible graph structure, a path region can be obtained by backtracking from the endpoint to the parent node with the minimum cost distance. This path region is composed of polygons (i.e., each path point is a polygon region). By redistributing the path region evenly to each slave robot through the main processor (i.e., the main robot), it can be used for the next stage of path optimization.

[0058] Step 103: Solve the objective function with the goal of minimizing the total distance from the starting point to the ending point, and with the constraint that each path point is located within the polygon represented by each vertex in the global feasible graph structure, to obtain the shortest path from the starting point to the ending point.

[0059] Step 103 specifically includes: constructing an objective function with the goal of minimizing the total distance of the path from the starting point to the ending point; the path contains multiple path points; each path point is located in a polygon set; and the objective function is solved using the alternating direction multiplier method to obtain the shortest path from the starting point to the ending point.

[0060] In detail, the main robot constructs an objective function with the goal of minimizing the total distance from the starting point to the ending point in the map to be planned. for: (1) (2) in, This represents the total path distance X, which starts from the origin, passes through a series of waypoints, and finally reaches the destination. The total path X contains a series of waypoints. These waypoints are respectively contained in the above-mentioned barrier-free polygon. Therefore, the following constraints apply: For the i-th path point Constrained in the i-th convex polygon region From this, we can obtain the linear constraint conditions: (3) Where A and B are the matrices of the linear constraints, The variable to be optimized is the position of each path point (represented using two-dimensional coordinates).

[0061] For the optimization problem consisting of the above formulas (1)-(3), it is particularly suitable to use ADMM (Alternating Direction Method of Multipliers) to solve it.

[0062] ADMM is an optimization algorithm that combines dual ascent and multiplier methods, and is particularly suitable for solving constrained optimization problems. Its core idea is to decompose the problem, breaking down complex optimization problems into multiple subproblems, and alternately updating variables to gradually approach the optimal solution.

[0063] The ADMM algorithm is used to solve the above optimization problem, and the final output is the path points. The optimal solution is found, thus the shortest path from the starting point to the ending point is calculated, such as... Figure 4 As shown, Figure 4 The diagram shows the final global path planning output.

[0064] In the above embodiment, by determining a map to be planned that includes a start point and an end point, the map to be planned is divided into multiple sub-maps containing overlapping areas, and the correspondence between each slave robot in the robot formation and each sub-map is determined; local feasible graph structures are obtained from each slave robot, and the overlapping areas between the local feasible graph structures are used as connection points to obtain the global feasible graph structure; the local feasible graph structure is the graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the start point to the vertices represented by each polygon for the sub-map corresponding to itself. The vertices of the graph structure are the obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons; the objective function is solved with the goal of minimizing the total distance from the start point to the end point, and with the constraint that each path point is located within the polygons represented by each vertex in the global feasible graph structure, to obtain the shortest path from the start point to the end point. This application implements a distributed and parallel path planning method through robot formation. The map is divided into multiple sub-maps and assigned to different robots for processing, which can reduce the computational load of each robot and realize the dimensionality reduction Dijkstra algorithm. In the case of large-scale obstacles, the path planning problem can be solved through communication between robots, thereby improving the optimization efficiency and shortening the path planning time.

[0065] In the above steps, the Minkowski convex multivariate decomposition guarantees that the connection between any two points in any two adjacent regions will not traverse obstacles, which reduces the collision detection time for path planning. Through the previous steps, path planning is simplified into a distributed nonlinear optimization problem. The loss function is the sum of distances between path points, and the constraints on the path points are the polygonal regions contained in the previous step; the number of path points equals the number of regions in the path. Path points are the condition variables of the distributed nonlinear optimization problem, and polygonal regions are the constraints. In one embodiment, a parallel path planning method is also provided, which is applied to slave robots in a robot formation, such as... Figure 5 As shown, Figure 5A flowchart illustrating a parallel path planning method applied to a robot is shown; the method includes the following steps: Step 501, determine the sub-map; wherein the sub-map is obtained by dividing the map to be planned, which includes the start point and the end point; Step 502: For the sub-map corresponding to itself, use Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon, and obtain a locally feasible graph structure; specifically, this includes: extracting multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles; using the polygons as vertices and the common edges as edges to obtain a local graph structure; using Dijkstra's algorithm in the local graph structure, updating the distance from each vertex to the starting point, and obtaining a path region by backtracking from the endpoint to the parent node with the minimum cost distance, where the vertices of the local graph structure are connected by edges and then connected back to the vertices, as the locally feasible graph structure; wherein, the vertices of the graph structure are the obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons; Step 503: Send the local feasible graph structure to the master robot in the robot formation so that the master robot can solve the objective function with the goal of minimizing the total distance from the starting point to the ending point and the constraint that each path point is located within the polygon represented by each vertex in the global feasible graph structure, to obtain the shortest path from the starting point to the ending point.

[0066] The specific implementation steps of the parallel path planning method applied to robots have been described in detail in the above embodiments and will not be repeated here.

[0067] The above embodiments implement a distributed and parallel path planning method through robot formation. The map is divided into multiple sub-maps and assigned to different robots for processing, which can reduce the computational load of each robot, realize the dimensionality reduction Dijkstra algorithm, and solve the path planning problem through communication between robots in the case of large-scale obstacles, thereby improving the optimization efficiency and shortening the path planning time.

[0068] In one embodiment, a parallel path planning system is also provided, comprising a robot formation consisting of a master robot and a plurality of slave robots, wherein the master robot is used to perform the steps as described in the parallel path planning method embodiment applied to the master robot; and the slave robots are used to perform the steps as described in the parallel path planning method embodiment applied to the slave robots.

[0069] The above embodiments demonstrate that the parallel path planning method, which utilizes a robot formation constructed from master and slave robots, can shorten path planning time and improve path planning efficiency.

[0070] The parallel path planning apparatus provided by the present invention is described below. The parallel path planning apparatus described below and the parallel path planning method described above can be referred to in correspondence.

[0071] In one embodiment, such as Figure 6 As shown, Figure 6 A schematic diagram of the modular structure of a parallel path planning device applied to a main robot is shown, including the following modules: The map partitioning module 601 is used to determine a map to be planned that includes a start point and an end point, divide the map to be planned into multiple sub-maps that include overlapping areas, and determine the correspondence between each robot in the robot formation and each sub-map. The global feasible graph structure acquisition module 602 is used to acquire local feasible graph structures from each slave robot, and use the overlapping areas between the local feasible graph structures as connection points to obtain the global feasible graph structure; the local feasible graph structure is a graph structure obtained by the slave robot using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon for the sub-map corresponding to itself, the vertices of the graph structure are obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons; The shortest path solving module 603 is used to solve an objective function with the goal of minimizing the total distance from the starting point to the ending point and the constraint that each path point is located within the polygon represented by each vertex in the global feasible graph structure, so as to obtain the shortest path from the starting point to the ending point.

[0072] In one embodiment, the global feasible graph structure acquisition module 602 described above is further used for: The local feasible graph structure is obtained from each robot. The robot is used to extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles, using these polygons as vertices and the common edges as edges to obtain the local graph structure. Dijkstra's algorithm is used to update the distance from each vertex to the starting point in the local graph structure. By backtracking from the endpoint to the parent node with the minimum cost distance, a path region consisting of vertices connected by edges and then back to vertices in the local graph structure is obtained, serving as the local feasible graph structure. Using the relay points generated by the overlapping regions between local feasible graph structures as connection points, the cost distance of each vertex is updated to obtain the global feasible graph structure.

[0073] In one embodiment, the shortest path solving module 603 described above is further used for: Construct an objective function that minimizes the total distance of the path from the starting point to the ending point; the path contains multiple path points; each path point is located in the polygon set; The objective function is solved using the alternating direction multiplier method to obtain the shortest path from the starting point to the ending point.

[0074] In one embodiment, the robot is used to extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles, and then perform Minkowski difference operation on each polygon using a preset shape set to obtain a convex polygon; The robot is further configured to obtain the common edge between each of the convex polygons based on the adjacent polygons of each convex polygon, and obtain the local graph structure by using the convex polygon as a vertex and the common edge as an edge.

[0075] In one embodiment, a schematic diagram of the module structure of a parallel path planning device is also provided, such as... Figure 7 As shown, Figure 7 A schematic diagram of the module structure of a parallel path planning device applied to a robot is shown, including the following modules: The sub-map determination module 701 is used to determine the sub-map; wherein the sub-map is obtained by dividing the map to be planned, which includes the start point and the end point; The local feasible graph structure calculation module 702 is used to calculate the shortest distance from the starting point to the vertices represented by each polygon using Dijkstra's algorithm for the sub-map corresponding to itself, and then obtain the local feasible graph structure; wherein, the vertices of the graph structure are unobstructed polygons extracted from the sub-map, and the edges are the common edges between the polygons. The local feasible graph structure sending module 703 is used to send the local feasible graph structure to the master robot in the robot formation, so that the master robot can solve the objective function with the goal of minimizing the total distance from the starting point to the ending point and the constraint that each path point is located within the polygon represented by each vertex in the global feasible graph structure, and obtain the shortest path from the starting point to the ending point.

[0076] In one embodiment, the aforementioned local feasible graph structure calculation module 702 is further configured to: extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles; obtain a local graph structure using the polygons as vertices and the common edges as edges; update the distance from each vertex to the starting point in the local graph structure using Dijkstra's algorithm; and obtain a path region consisting of vertices of the local graph structure connected by edges and then backtracking from the ending point to the parent node with the minimum cost distance, as the local feasible graph structure. Figure 8 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 8As shown, the electronic device may include: a processor 810, a communications interface 820, a memory 830, and a communications bus 840, wherein the processor 810, the communications interface 820, and the memory 830 communicate with each other through the communications bus 840. The processor 810 can call logic instructions in the memory 830 to execute a parallel path planning method applied to the master robot. This method includes: determining a map to be planned, containing a start point and an end point; dividing the map to be planned into multiple sub-maps containing overlapping regions; and determining the correspondence between each slave robot in the robot formation and each sub-map; obtaining local feasible graph structures from each slave robot; using the overlapping regions between local feasible graph structures as connection points to obtain a global feasible graph structure; the local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the start point to the vertices represented by each polygon for the sub-map corresponding to itself; the vertices of the graph structure are obstacle-free polygons extracted from the sub-maps, and the edges are common edges between the polygons; and solving an objective function with the goal of minimizing the total distance from the start point to the end point, and with the constraint that each path point lies within the polygons represented by each vertex in the global feasible graph structure, to obtain the shortest path from the start point to the end point. Alternatively, a parallel path planning method applied to the robot can be executed, comprising: determining a submap; wherein the submap is obtained by partitioning a map to be planned containing a start point and an end point; using Dijkstra's algorithm to calculate the shortest distance from the start point to the vertices represented by each polygon for the submap corresponding to itself, thereby obtaining a locally feasible graph structure; wherein the vertices of the graph structure are obstacle-free polygons extracted from the submap, and the edges are common edges between the polygons; sending the locally feasible graph structure to the master robot in the robot formation, so that the master robot solves an objective function with the goal of minimizing the total distance from the start point to the end point, and with the constraint that each path point lies within the polygons represented by each vertex in the globally feasible graph structure, thereby obtaining the shortest path from the start point to the end point.

[0077] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0078] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the parallel path planning method for a master robot provided in the above-described method embodiments. The method includes: determining a map to be planned that includes a start point and an end point; dividing the map to be planned into multiple sub-maps containing overlapping areas; and determining the correspondence between each slave robot in the robot formation and each sub-map; obtaining local feasible graph structures from each slave robot; using the overlapping areas between the local feasible graph structures as connection points to obtain a global feasible graph structure; the local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the start point to the vertices represented by each polygon for the sub-map corresponding to itself; the vertices of the graph structure are obstacle-free polygons extracted from the sub-maps, and the edges are common edges between the polygons; solving an objective function with the goal of minimizing the total distance from the start point to the end point and with the constraint that each path point is located within the polygons represented by each vertex in the global feasible graph structure, to obtain the shortest path from the start point to the end point. Alternatively, the steps in the parallel path planning method embodiment applied to the robot are executed, the method comprising: determining a submap; wherein the submap is obtained by partitioning a map to be planned containing a start point and an end point; obtaining a locally feasible graph structure by using Dijkstra's algorithm to find the shortest distance from the start point to the vertices represented by each polygon for the submap corresponding to itself; wherein the vertices of the graph structure are obstacle-free polygons extracted from the submap, and the edges are common edges between the polygons; sending the locally feasible graph structure to the master robot in the robot formation so that the master robot solves an objective function with the goal of minimizing the total distance from the start point to the end point and the constraint that each path point is located within the polygons represented by each vertex in the globally feasible graph structure, thereby obtaining the shortest path from the start point to the end point.

[0079] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the parallel path planning method for a master robot provided by the methods described above. This method includes: determining a map to be planned, containing a start point and an end point; dividing the map to be planned into multiple sub-maps containing overlapping regions; and determining the correspondence between each slave robot in the robot formation and each sub-map; obtaining local feasible graph structures from each slave robot; using the overlapping regions between the local feasible graph structures as connection points to obtain a global feasible graph structure; the local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the start point to the vertices represented by each polygon for the sub-map corresponding to itself; the vertices of the graph structure are obstacle-free polygons extracted from the sub-maps, and the edges are common edges between the polygons; solving an objective function with the goal of minimizing the total distance from the start point to the end point, and with the constraint that each path point lies within the polygons represented by each vertex in the global feasible graph structure, to obtain the shortest path from the start point to the end point. Alternatively, a parallel path planning method applied to the robot can be executed, comprising: determining a submap; wherein the submap is obtained by partitioning a map to be planned containing a start point and an end point; using Dijkstra's algorithm to calculate the shortest distance from the start point to the vertices represented by each polygon for the submap corresponding to itself, thereby obtaining a locally feasible graph structure; wherein the vertices of the graph structure are obstacle-free polygons extracted from the submap, and the edges are common edges between the polygons; sending the locally feasible graph structure to the master robot in the robot formation, so that the master robot solves an objective function with the goal of minimizing the total distance from the start point to the end point, and with the constraint that each path point lies within the polygons represented by each vertex in the globally feasible graph structure, thereby obtaining the shortest path from the start point to the end point.

[0080] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0081] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0082] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A parallel path planning method, characterized in that, The main robots used in robot formations include: A map to be planned, including a start point and an end point, is determined. The map to be planned is divided into multiple sub-maps containing overlapping areas. The correspondence between each robot in the robot formation and each sub-map is determined. The robot obtains local feasible graph structures from each local feasible graph structure, and uses the overlapping areas between the local feasible graph structures as connection points to obtain a global feasible graph structure. The local feasible graph structure is a graph structure obtained by the robot using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon for the sub-map corresponding to itself. The vertices of the graph structure are the obstacle-free polygons extracted from the sub-map, and the edges are the common edges between the polygons. Solve the objective function with the goal of minimizing the total distance from the starting point to the ending point, and with the constraint that each path point lies within the polygon represented by each vertex in the global feasible graph structure, to obtain the shortest path from the starting point to the ending point.

2. The parallel path planning method according to claim 1, characterized in that, The process of obtaining local feasible graph structures from various robots, and using the overlapping regions between these local feasible graph structures as connection points to obtain a global feasible graph structure, includes: The local feasible graph structure is obtained from each robot. The robot is used to extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles, using these polygons as vertices and the common edges as edges to obtain the local graph structure. Dijkstra's algorithm is used to update the distance from each vertex to the starting point in the local graph structure. By backtracking from the endpoint to the parent node with the minimum cost distance, a path region consisting of vertices connected by edges and then back to vertices in the local graph structure is obtained, serving as the local feasible graph structure. Using the relay points generated by the overlapping regions between local feasible graph structures as connection points, the cost distance of each vertex is updated to obtain the global feasible graph structure.

3. The parallel path planning method according to claim 1, characterized in that, The solution aims to minimize the total distance from the starting point to the ending point, with the constraint that each path point lies within the polygon represented by each vertex in the global feasible graph structure. The objective function yields the shortest path from the starting point to the ending point, including: Construct an objective function that minimizes the total distance of the path from the starting point to the ending point; the path contains multiple path points; each path point is located in the polygon set; The objective function is solved using the alternating direction multiplier method to obtain the shortest path from the starting point to the ending point.

4. The parallel path planning method according to claim 2, characterized in that, The robot is used to extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles, and then use a preset shape set to perform Minkowski difference operation on each polygon to obtain a convex polygon. The robot is further configured to obtain the common edge between each of the convex polygons based on the adjacent polygons of each convex polygon, and obtain the local graph structure by using the convex polygon as a vertex and the common edge as an edge.

5. A parallel path planning method, characterized in that, Slave robots used in robot formation include: Determine a sub-map; wherein the sub-map is obtained by dividing a map to be planned, which includes a start point and an end point; After using Dijkstra's algorithm to find the shortest distance from the starting point to the vertices represented by each polygon in the sub-map corresponding to itself, a locally feasible graph structure is obtained; wherein, the vertices of the graph structure are unobstructed polygons extracted from the sub-map, and the edges are the common edges between the polygons; The local feasible graph structure is sent to the master robot in the robot formation so that the master robot can solve an objective function with the goal of minimizing the total distance from the starting point to the ending point and the constraint that each path point is located within the polygon represented by each vertex in the global feasible graph structure, thereby obtaining the shortest path from the starting point to the ending point.

6. The parallel path planning method according to claim 5, characterized in that, After using Dijkstra's algorithm to calculate the shortest distance from the starting point to the vertices represented by each polygon for the sub-map corresponding to itself, a locally feasible graph structure is obtained, including: Extract multiple obstacle-free polygons from the corresponding sub-map based on the location of obstacles; Using the polygon as vertices and the common edge as edges, a local graph structure is obtained; Using Dijkstra's algorithm, the distance from each vertex to the starting point in the local graph structure is updated. By backtracking from the ending point to the parent node with the minimum cost distance, a path region consisting of vertices of the local graph structure connected by edges is obtained, which serves as the local feasible graph structure.

7. A parallel path planning system, characterized in that, This includes a robot formation consisting of a master robot and multiple slave robots, where... The main robot is used to execute the parallel path planning method as described in any one of claims 1 to 4; The robot is used to perform the parallel path planning method as described in any one of claims 5 to 6.

8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, When the processor executes the computer program, it implements the parallel path planning method as described in any one of claims 1 to 4 or the parallel path planning method as described in any one of claims 5 to 6.

9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the parallel path planning method as described in any one of claims 1 to 4 or the parallel path planning method as described in any one of claims 5 to 6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the parallel path planning method as described in any one of claims 1 to 4 or the parallel path planning method as described in any one of claims 5 to 6.