A full-coverage path planning method based on convex relaxation
By splitting the full coverage path planning problem into sensor coverage problem and generalized travel dealer problem, using convex slack and linear planner to generate the optimal path, the accuracy and efficiency problems of full coverage path planning in large storage scenarios are solved, and efficient full coverage is achieved.
Patent Information
- Application Number
- CN202310351054.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-04
- Publication Date
- 2025-08-05
- Estimated Expiration
- 2043-04-04
AI Technical Summary
The existing full coverage path planning method has problems such as insufficient accuracy, excessive cost and high time complexity in large storage scenarios, making it difficult to achieve efficient full coverage.
Using a method based on convex slack, the full coverage path planning problem is split into sensor coverage problem and generalized travel dealer problem. The convex slack is converted into convex optimization problem and solved using a linear planner to minimize the number of robot steering times and generate the optimal global path.
It improves the time efficiency and accuracy of full coverage in large-scale storage scenarios, reduces the total number of robots' turnovers, and improves the efficiency of global inventory.
Smart Images

Figure CN116523155B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a full coverage path planning method, in particular to a full coverage path planning method based on convex relaxation. Background Art
[0002] As a crucial component of the smart supply chain, intelligent warehousing plays a crucial role in strengthening the foundation of the real economy, building a modern industrial system, and achieving a new type of industrial transformation. In large-scale warehousing scenarios, large quantities of goods are constantly entering and leaving the warehouse. To prevent inconsistencies between actual materials and inventory lists caused by frequent loading and unloading of goods and human factors, regular comprehensive inventory checks are required to ensure consistency between stored goods and data, thus ensuring and supporting the smooth operation of higher-level business operations.
[0003] In this context, an efficient full-coverage path planning method is crucial. Full-coverage path planning refers to finding an optimal global inventory path so that a mobile robot equipped with an inventory tool (such as an RFID scanning device or a camera) can complete full coverage of the signal (wireless signal or visual image) of a given area after moving and scanning from the starting point of the path to the end point. The path of the mobile robot is composed of a set of path points, so the global inventory path refers to an ordered set of path points. When the robot visits the path points in the path point set in sequence, the signal (wireless signal or visual signal) of the inventory tool will cover the area passed on the moving path. When the robot has completed the global path, it is necessary to complete full signal coverage of the entire area, and at the same time, the coverage cost of the global path is required to be minimized. In practical applications, the minimum cost usually refers to the shortest time or the shortest path. The present invention uses the shortest time as an example to elaborate on the optimization process in detail, which can also be applied to the shortest path optimization.
[0004] Current solutions for full-coverage path planning have the following main problems: 1) Insufficient accuracy - it is difficult to fully cover a given environment; 2) Excessive cost - in actual operation, the time and energy costs of the planned path are too high; 3) High time complexity - for large scenarios, existing methods are too time-consuming to calculate. Summary of the Invention
[0005] Purpose of the invention: The technical problem to be solved by the present invention is to provide a full coverage path planning method based on convex relaxation in response to the shortcomings of the existing technology.
[0006] In order to solve the above technical problems, the present invention discloses a full coverage path planning method based on convex relaxation, comprising the following steps:
[0007] Step 1: Map the area to be covered using a simultaneous positioning and mapping method. This involves moving a robot equipped with sensors within the target area and performing calculations based on the sensor data acquired during movement to obtain a map of the target area.
[0008] Step 2, obtaining a candidate cover set: rasterize the map of the target area using a Cartesian grid and perform preprocessing to obtain a boundary grid set. For the boundary grid set, obtain a candidate cover set according to the cover set generation scheme;
[0009] The specific method of obtaining the candidate coverage set includes:
[0010] Step 2-1, the map of the target area is processed using Cartesian grid to generate a raster map M;
[0011] Step 2-2: Divide the grids in the grid map M into a free grid set F and an obstacle grid set O. The specific method is as follows:
[0012] The map is represented by a pixel matrix, with each pixel value ranging from [0, 255]. Pixels with values between 0 and 254 are set as obstacle pixels, otherwise they are free pixels. For each set of pixels within a grid, it is divided into obstacle grids and free grids based on the ratio of obstacle pixels to the total number of pixels. That is, if the ratio of obstacle pixels to the total number of pixels is greater than a threshold, the grid is marked as an obstacle grid, otherwise it is a free grid. The set of obstacle grids is the obstacle grid set O, and the set of free grids is the free grid set F.
[0013] Step 2-3: further divide the free grid set F into the boundary grid set F bg With the non-boundary grid set F nbg , the specific method is as follows:
[0014] If the four adjacent grids of a grid are non-empty grids and all four grids are free grids, then the grid is a non-boundary grid, otherwise it is a boundary grid. The set of all boundary grids is the boundary grid set F bg , the set of all non-boundary grids is the non-boundary grid set F nbg ;
[0015] Steps 2-4, for the boundary grid set F bg Use the candidate cover set generation method to generate the candidate cover set N candidate , specifically including:
[0016] Step 2-4-1, for each boundary grid f bg , first traverse in the four directions of up, down, left and right until encountering an obstacle grid or a boundary grid, if the boundary grid f bgand the encountered obstacle grid or boundary grid f′ bg If the straight-line distance between them is greater than or equal to 2, a long cover N is generated. long ;
[0017] Step 2-4-2, for each boundary grid f bg , traverse the boundary grid set F bg All other boundary grids f′ that are not on the same coordinate axis bg , if f bg and f′ bg If there is no obstacle grid on the line connecting the two, a long cover N is generated. long ;
[0018] Step 2-4-3, for each generated long cover N long , according to the covering function, generate the grid set L it covers long , all generated N long The set of candidate covering set N candidate .
[0019] The coverage function includes:
[0020] Step 2-4-3-1, set the two endpoints to f bg and f′ bg The straight line segments are divided into discrete pose point sets with a distance interval of Δd;
[0021] Step 2-4-3-2: For each discrete pose point, obtain the set of free grids covered by the robot at the discrete pose point according to the coverage model of the robot whose full coverage path is to be planned;
[0022] The coverage model is as follows:
[0023] H i ={f1,···,f i ,···,f k}
[0024] Among them, H i is the set of covered grids of the robot at any discrete moment, f i H i The free grids covered in , k is the size of the covered grid set.
[0025] Step 2-4-3-3, perform the union operation on the free grid sets of all discrete pose points to obtain the grid set L covered by the robot within the long coverage range long .
[0026] Step 3: Split the full coverage path planning problem into the sensor coverage problem and the generalized traveling salesman problem, and solve them step by step. For the full coverage path planning problem, use a convex relaxation method to obtain the minimum covering set: Use a convex relaxation method on the candidate covering set obtained in step 2 to transform the sensor placement problem into a convex optimization problem. Use a linear planner to solve the convex optimization problem and obtain the minimum covering set.
[0027] The method of using the convex relaxation method to obtain the minimum covering set includes:
[0028] Step 3-1: assign a coverage cost to each candidate coverage in the candidate coverage set generated in step 2; the coverage cost is as follows:
[0029]
[0030] Among them, cost i,j represents the coverage cost, dis i,j The two endpoint meshes f for the candidate cover i With f j straight-line distance.
[0031] Step 3-2: Model the sensor placement problem as a linear programming problem and transform it into a convex optimization problem using convex relaxation.
[0032] The modeling is a linear programming problem, and the specific method is as follows:
[0033]
[0034] Where A=(a1,...,a k ) is the selection vector, indicating whether to select the corresponding candidate coverage, C is the coverage cost corresponding to the candidate coverage, W is the weight vector, represents the Hadamard product; the constraints of the linear programming problem are VA ≥ 1, 1 ≥ A ≥ 0, where V represents whether each free grid is visible to the corresponding candidate cover, that is, each free grid is visible to at least one cover in the minimum cover set, and VA represents the number of free grids visible to the minimum cover set; the minimum cover set is the optimized selection vector A, which indicates whether the minimum cover set contains the corresponding candidate cover.
[0035] Step 3-3, using a linear programming solver to solve the convex optimization problem in an iterative process to obtain the minimum cover set, the specific method includes:
[0036] Step 3-3-1, calculate the coverage cost of each candidate coverage and initialize the matrix W, where each element in W represents the weight of the corresponding candidate coverage;
[0037] Step 3-3-2, use COIN-OR CBC linear planner to solve the linear programming problem;
[0038] Step 3-3-3, use the weight update formula to update the value of the weight vector W, and calculate the sparsity of the selection vector A. If the sparsity is continuous I conv If the times remain unchanged, the iteration loop ends, otherwise, execute step 3-3-2 again to iterate;
[0039] The weight update formula is:
[0040]
[0041] Among them, ∈ i represents the weight update parameter, a i To select the corresponding element in vector A, e is a natural constant.
[0042] Step 4: Apply the generalized traveling salesman method to the minimum covering set obtained in step 3 to obtain the optimal global path, and finally complete the full covering path planning based on convex relaxation.
[0043] The generalized traveling salesman method includes:
[0044] Step 4-1, calculate the path cost between each two covers in the minimum cover set, obtain the distance matrix D, and initialize a random subset access order;
[0045] Step 4-2: Use the LKH algorithm to select the optimal k value, perform K-opt optimization on the subset access order, and repeat the optimization until the optimal subset access order is generated;
[0046] Step 4-3: for the generated optimal subset access sequence, search for the optimal internal access sequence of the current subset access sequence;
[0047] In step 4-4, the generated optimal subset access order and optimal internal access order are used to enable the robot to sequentially visit discrete points on the global path. If all free grids in the map are covered, the full coverage path planning based on convex optimization is completed.
[0048] Beneficial effects:
[0049] The present invention proposes a full coverage path planning method based on convex relaxation. This method generates a minimum covering set through convex relaxation and a shortest path through the generalized traveling salesman method. Based on the idea of reducing the total number of turns of the robot, it can improve the time efficiency of full coverage of the area while improving the accuracy of area coverage, and can be deployed in large and complex scenes. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] The present invention will be further described below in conjunction with the accompanying drawings and specific embodiments, and the above and / or other advantages of the present invention will become more apparent.
[0051] Figure 1 A flowchart of a full coverage path planning method based on convex relaxation provided by the present invention.
[0052] Figure 2 This is a flow chart of the simultaneous positioning and mapping method provided by the present invention.
[0053] Figure 3 This is a flow chart of the candidate covering set generation method provided by the present invention.
[0054] Figure 4 This is a flow chart of the minimum covering set generation method provided by the present invention.
[0055] Figure 5 This is a flow chart of the method for iteratively solving linear programming problems provided by the present invention.
[0056] Figure 6 This is a flow chart of the generalized traveling salesman method provided by the present invention.
[0057] Figure 7 This is a schematic diagram of the grid map of the experimental scenario provided by the present invention.
[0058] Figure 8 This is a schematic flow chart of the time cost comparison test results provided by the present invention.
[0059] Figure 9 This is a schematic diagram of the coverage comparison experimental results provided by the present invention. DETAILED DESCRIPTION
[0060] The present invention discloses a full coverage path planning method based on convex relaxation, comprising the following steps:
[0061] Step 1: Map the area to be covered using a set of simultaneous positioning and mapping methods;
[0062] Step 2: rasterize the map information using a Cartesian grid and preprocess it, dividing the map grid into free grids and obstacle grids, and obtaining a candidate cover set according to a cover set generation scheme;
[0063] Step 3: Use convex relaxation method to transform the sensor placement problem into a convex optimization problem for the candidate cover set in step 2, and solve it using a linear planner to obtain the minimum cover set;
[0064] Step 4: Apply a generalized traveling salesman method to the minimum covering set obtained in step 3 to obtain the optimal global path.
[0065] The synchronous positioning and mapping method described in step 1 of the present invention includes:
[0066] Step 1-1: Place the mobile robot equipped with LiDAR in the target area and start it to obtain LiDAR data D at each moment. r , odometer IMU data D i ;
[0067] Step 1-2, for D r and D i , use the gmapping algorithm (reference: Grisetti G, Stachniss C, Burgard W.Improving grid-based slam with rao-blackwellized particle filters by adaptive proposals and selective resampling. In Proceedings of the 2005 IEEE international conference on robotics and automation 2005Apr 18 (pp.2432-2437). IEEE.) to obtain the map information of the corresponding position;
[0068] Steps 1-3: Control the robot to move in the target area until a stable and clear grid map is obtained.
[0069] The map preprocessing and candidate coverage set generation scheme in step 2 of the present invention includes:
[0070] Step 2-1, the map is processed using a Cartesian grid to generate a raster map M;
[0071] Step 2-2, divide the grids in M into a free grid set F and an obstacle grid set O;
[0072] Step 2-3, further divide F into the boundary grid set F bg With the non-boundary grid set F nbg ;
[0073] Steps 2-4, for the boundary grid set F bg Use the candidate cover set generation method to generate the candidate cover set N candidate .
[0074] The candidate cover set generation algorithm in steps 2-4 of the present invention includes:
[0075] Step 2-4-1, for each boundary grid f bg, first traverse in the four directions of up, down, left and right until encountering an obstacle grid or a boundary grid, if the boundary grid f bg and the encountered obstacle grid or boundary grid f′ bg If the straight-line distance between them is greater than or equal to 2, a long cover N is generated. long ;
[0076] Step 2-4-2, for each boundary grid f bg , traverse the boundary grid set F bg All other boundary grids f′ that are not on the same coordinate axis bg , if f bg and f′ bg If there is no obstacle grid on the line connecting the two, a long cover N is generated. long ;
[0077] Step 2-4-3, for each generated long cover N long , according to the covering function, generate the grid set L it covers long , all generated N long The set of candidate covering set N candidate .
[0078] The coverage function in step 2-4-3 of the present invention includes:
[0079] Step 2-4-3-1, set the two endpoints to f bg and f′ bg The straight line segments are divided into discrete pose point sets with a distance interval of Δd;
[0080] Step 2-4-3-2: For each discrete pose point, obtain the set of free grids covered by the robot at the discrete pose point according to the coverage model of the robot whose full coverage path is to be planned;
[0081] Step 2-4-3-3, perform the union operation on the free grid sets of all discrete pose points to obtain the grid set L covered by the robot within the long coverage range long .
[0082] The convex relaxation method in step 3 of the present invention includes:
[0083] Step 3-1, assign a coverage cost to each candidate coverage in the candidate coverage set generated in step 2;
[0084] In step 3-2, the sensor placement problem is transformed into a convex optimization problem using the convex relaxation method and modeled as a linear programming problem.
[0085] Step 3-3, solve the linear programming problem using a linear programming solver in an iterative process.
[0086] The method for iteratively solving the linear programming problem in step 3-3 of the present invention includes:
[0087] Step 3-3-1, calculate the coverage cost of each candidate coverage and initialize the matrix W, where each element in W represents the weight of the corresponding candidate coverage;
[0088] Step 3-3-2, in the iterative process, use the COIN-OR CBC linear programming solver to solve the linear programming problem (reference: www.coin-or.org);
[0089] Step 3-3-3, during the iteration process, use the weight update formula to update the value of W and calculate the sparsity of A. If the sparsity is continuous I conv If the value does not change, it means that it is difficult to continue optimizing the results and the iteration cycle ends.
[0090] The generalized traveling salesman method described in step 4 of the present invention includes:
[0091] Step 4-1, calculate the path cost between each two covers in the minimum cover set, obtain the distance matrix W, and initialize a random subset access order;
[0092] Step 4-2: During the iteration process, select the optimal k value to perform k-opt optimization on the subset access order;
[0093] Step 4-3: For the generated subset access sequence, search and obtain the optimal internal access sequence of the current subset access sequence.
[0094] Example:
[0095] A full coverage path planning method based on convex relaxation, such as Figure 1 As shown, the method includes:
[0096] Step S1: Map the area to be covered using a set of synchronous positioning and mapping methods to obtain static grid map information of the given area;
[0097] Step S2: Based on the given map information, the map information is rasterized using a Cartesian grid, and preprocessed to divide the map grid into a free grid and an obstacle grid, and a candidate cover set is obtained according to a cover set generation scheme;
[0098] Step S3: Using a convex relaxation method on the generated candidate cover set, the sensor placement problem is transformed into a convex optimization problem, and a linear program is used to solve it to obtain a minimum cover set;
[0099] Step S4: Apply a generalized traveling salesman method to the generated minimum covering set to obtain the optimal global path.
[0100] Full coverage path planning is to plan a global path so that the mobile robot equipped with the coverage tool can fully cover the entire target area after traveling from the starting point to the end point of the path, while minimizing the total movement cost of the robot. Specifically, given an area D, let its discretized grid set be F. It is necessary to find a global path R = (p1, ..., p m ), where each element p in R i is a discrete path point on the path. Define p i With p j The path cost between i,j , then the full coverage path planning needs to minimize At the same time, all free grids in the given area D are covered, that is, grids that the robot can reach.
[0101] This paper proposes a full-coverage path planning method based on convex relaxation. The basic idea is to transform the full-coverage path planning problem into a sensor placement problem and a generalized traveling salesman problem, solving them step by step to generate a global path with the fewest turns, significantly improving the time efficiency of global inventory. This method proposes a sensor planning method based on convex relaxation. By performing convex relaxation on a non-convex linear programming problem, the number of turns along the path is minimized.
[0102] The method first executes step S1 to map the target area using a simultaneous positioning and mapping method.
[0103] like Figure 2 As shown, the synchronous positioning and mapping method in step S1 includes:
[0104] Step S11: Place the mobile robot equipped with laser radar in the target area and start it to obtain the laser radar data D at each moment. r , odometer IMU data D i .
[0105] Step S12: For D r and D i , use the gmapping algorithm to get the map information of the corresponding location;
[0106] Step S13: Control the robot to move within the target area until a stable and clear grid map is obtained.
[0107] After completing the collection of map information, the next step is to execute step S2 to preprocess the map information and generate a candidate coverage set. First, the map is divided into regular grids of the same size using a Cartesian grid, and the grid set is denoted as G. Then, the grids are divided into an obstacle grid set O and a free grid set F according to the ratio of obstacle pixels to total pixels in each grid.
[0108] Specifically, map information can be represented by a pixel matrix, with each pixel value ranging from [0, 255]. During map information preprocessing, pixels with values between 0 and 254 are designated as obstacle pixels; otherwise, they are designated as free pixels. Within each grid, the pixel set is divided into obstacle grids and free grids (passable and coverable grids) based on the proportion of obstacle pixels to the total number of pixels. If the proportion of obstacle pixels to the total number of pixels is greater than η, the grid is marked as an obstacle grid; otherwise, it is designated as a free grid.
[0109] This paper designs a candidate covering set generation method, such as Figure 3 As shown, the candidate covering set generation method in step S2 includes:
[0110] S21. Divide the free grid set F into a boundary grid set and a non-boundary grid set. Specifically, if a grid has four adjacent non-empty grids, and all four grids are free grids, then the grid is a non-boundary grid; otherwise, it is a boundary grid.
[0111] S22. For each boundary grid, proceed along the coordinate axis from the four directions of up, down, left, and right until encountering a boundary grid or obstacle grid. If the length of the straight path is greater than 2, a long cover along the coordinate axis is generated.
[0112] S23. For every two different boundary grids in the boundary grid set, if there are no obstacle pixels on the straight line connecting the centers of the two boundary grids, a long cover connecting the two boundary grids is generated.
[0113] Instead of generating a candidate cover for each discrete pose, this paper designs a long cover model, defined by two free meshes. If there are no obstacle pixels on the line connecting the endpoint free meshes, it means that it is possible to walk along the straight line from one endpoint to the other. A free mesh is considered visible to the long cover if it can be covered by a covering tool at any point on the line.
[0114] When covering the target area, the robot must cover all long coverage patterns. The robot can enter from any end of the long coverage pattern, travel along the inner straight line of the long coverage pattern, and then exit from the other end. Between long coverage patterns, the robot chooses the shortest straight path to reach the next long coverage pattern.
[0115] This paper designs a method for generating minimum covering sets based on convex relaxation, such as Figure 4 As shown, the minimum covering set generation method in step S3 includes:
[0116] Step S31: assign a coverage cost to each candidate coverage in the generated candidate coverage set;
[0117] Step S32: using a convex relaxation method to transform the sensor placement problem into a convex optimization problem and modeling it as a linear programming problem;
[0118] Step S33: Use a linear programming solver to solve the linear programming problem in an iterative process.
[0119] like Figure 5 As shown, the method for iteratively solving the linear programming problem in step S33 includes:
[0120] Step S331: Calculate the coverage cost of each candidate coverage and initialize the weight vector W, where each element in W represents the weight of the corresponding candidate coverage;
[0121] Step S332: During the iteration process, use a linear programming solver to solve the linear programming problem;
[0122] Step S333: During the iteration, use the weight update formula to update the value of W and calculate the sparsity of A. conv If the value does not change, it means that it is difficult to continue optimizing the results and the iteration cycle ends.
[0123] The coverage cost can be expressed as follows:
[0124]
[0125] In the above formula, cover_cost i,j The two endpoints are free mesh f i and f j The coverage cost of the long coverage, dis i,j is the straight-line distance between the two endpoint grids, i.e., the length of the inner straight line of the long coverage. In the full coverage path planning method designed in this paper, the basic idea is to reduce the number of turns of the robot, so for the long coverage with longer inner straight lines, it is given a smaller coverage cost.
[0126] The convex relaxed linear programming problem in step S332 can be expressed as:
[0127]
[0128] st VA ≥ 1
[0129] 1≥A≥0
[0130] Where W is the weight vector and A is the selection vector, indicating whether the corresponding candidate coverage is selected, 0 means selected and 1 means not selected. is the Hadamard product, which represents the multiplication of the corresponding elements of W and A. C is the coverage cost vector, which represents the coverage cost of the corresponding candidate coverage.
[0131] In linear programming, two conditions apply: 1) the union of the coverage areas of the selected candidate covers must be sufficient to fully cover the target area; and 2) the elements in A must be between [0, 1]. The first condition is determined by the characteristics of the full coverage path planning problem, while the second condition is a requirement of the L1 paradigm.
[0132] During the iteration process of step S33, the update formula of W can be expressed as follows:
[0133]
[0134]
[0135] Among them, w i and a i are the corresponding elements in W and A respectively. If a i If it is close to 0, then a higher weight will be obtained, otherwise a lower weight will be obtained, so the result will be sparser, that is, a smaller minimum cover set will be generated. ∈ is a parameter that determines the convergence rate. When ∈ is large, w i The reweighting of will be more gradual. ∈ i The value of will be updated according to the above formula, that is, as the number of iterations increases, the algorithm will converge faster.
[0136] At this point, step S3 is complete. Based on the map information of the target area, a minimum cover set has been generated. This minimum cover set contains the fewest long covers, and the union of the coverage ranges of all long covers can completely cover the entire target area. Next, we need to find a path that connects all the long covers in the minimum cover set, and then generate a global path based on this inter-coverage path.
[0137] Step S4 will find a global path with the lowest path cost based on the generated minimum cover set, visiting all the endpoints of the long cover in the minimum cover set once and only once. This problem can be modeled as a generalized traveling salesman problem (GTSP), which divides the nodes in the traveling salesman problem (TSP) into subsets, each containing a number of nodes. The generalized traveling salesman problem requires finding a shortest path that visits each subset once and only once.
[0138] This paper designs a generalized traveling salesman method, such as Figure 6 As shown, the generalized traveling salesman method described in step S4 includes:
[0139] S41. Calculate the path cost between every two covers in the minimum cover set to obtain the distance matrix W, and initialize it to obtain a random subset access order;
[0140] S42. During the iteration process, select the optimal k value to perform k-opt optimization on the subset access order (reference: Helsgaun K. An effective implementation of K-opt moves for the Lin-Kernighan TSP heuristic (Doctoral dissertation, Roskilde University. Department of Computer Science).);
[0141] S43. For the generated subset access sequence, search and obtain the optimal internal access sequence of the current subset access sequence.
[0142] K-opt optimization is a heuristic algorithm for solving the TSP. It disconnects k edges in a TSP path and then reconnects them to create a shorter path. The value k in K-opt represents the number of edges in the disconnected path. The core idea of the K-opt algorithm is to iteratively optimize the global path through local optimization until an optimal or near-optimal solution is reached. However, the K-opt algorithm requires a predetermined value for k.
[0143] This paper uses the LKH algorithm (reference: Lin S, Kernighan BW. An effective heuristical algorithm for the traveling-salesman problem. Operations research. 1973 Apr; 21(2): 498-516.). During the iteration process, we start from k = 2 and try to increase the value of k to expand the range of the neighborhood, making it easier for the algorithm to find a better solution and avoid falling into a local optimal solution.
[0144] This paper uses the LKH algorithm to find the current local optimal path between subsets, that is, the access order of the long cover of the minimum cover set. After using LKH to find the local optimal path between subsets in each iteration, the global path is found by searching. Each long cover has two covering orders, and the time complexity of the search is O(2 n ), where n is the number of subsets.
[0145] With the minimum covering set N minimum=(J1, J2, J3, J4) as an example, 4 long covers are generated for the target area, which can complete the coverage of the entire area. Assume that the eight endpoint grids of J1-J4 are 1-8 respectively. This paper first uses a random method to generate an initial random path, such as J1→J2→J3→J4, and then uses the 2-opt algorithm to determine whether there is a better local path. If the optimal local path is generated, try a higher k value such as k=3. If the optimal local path cannot be generated, the currently generated local optimal path is selected, and the internal path is searched at the same time to obtain the global path result. In the next round of iteration, the next node is selected to repeat the above steps until no better path can be obtained.
[0146] This paper constructs a large, complex, fully covered path planning area containing obstacles and conducts extensive experiments to verify the practical performance of this method. The experiments used a Turtlebot3 Waffle robot equipped with an Impinj R420 reader, with a speed of 0.26 m / s; a directional antenna with a gain of 9 dBic, operating at approximately 920 MHz, and a coverage range of 5 m; and a Sick Tim550 lidar.
[0147] The performance of this method is verified in three different scenarios using the classic boustrophedon method and the optimal local energy method in the current full coverage path planning problem as benchmarks. Figure 7 As shown in the figure, in scenario 1, the map size is set to 10m×10m; in scenario 2, the map size is set to 15m×15m; in scenario 3, the map size is set to 20m×20m, and the size of each grid is 1m. Figure 8 As shown in the figure, the time efficiency of our method is better in all scenarios. Taking scenario 2 as an example, the time overhead of the boustrophedon method is 174.4s, the time overhead of the local energy method is 164.1s, and the time overhead of our method is 120.4s, which significantly improves the time efficiency (36.30%).
[0148] In addition to time efficiency, method coverage is also crucial. Figure 9 The following table shows the coverage of the two methods for three scenarios. As the map becomes larger and more complex, all methods experience a decrease in accuracy. However, this method achieves higher coverage due to its finer mesh division. For scenario three, the boustrophedon method achieves a coverage of 94.2%, the local energy method takes 94.6% of the time, and this method takes 98.5%, improving coverage by 3.9%.
[0149] The present invention proposes a full coverage path planning method based on convex relaxation. The basic idea of the convex relaxation full coverage path planning method is to transform the full coverage path planning problem into a sensor placement problem and a generalized traveling salesman problem and solve them step by step to generate a global path with the least number of turns, thereby greatly improving the time efficiency of the global inventory.
[0150] In a specific implementation, the present application provides a computer storage medium and a corresponding data processing unit, wherein the computer storage medium is capable of storing a computer program, and when the computer program is executed by the data processing unit, it can run the invention content of a full coverage path planning method based on convex relaxation provided by the present invention and some or all of the steps in each embodiment. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
[0151] Those skilled in the art can clearly understand that the technical solutions in the embodiments of the present invention can be implemented by means of computer programs and their corresponding general hardware platforms. Based on this understanding, the technical solutions in the embodiments of the present invention, in essence or in other words, the part that contributes to the prior art, can be embodied in the form of a computer program, i.e., a software product. The computer program software product can be stored in a storage medium and includes a number of instructions for enabling a device including a data processing unit (which can be a personal computer, server, single-chip microcomputer, MUU or network device, etc.) to execute the methods described in various embodiments of the present invention or certain parts of the embodiments.
[0152] The present invention provides a concept and method for a full-coverage path planning method based on convex relaxation. There are many methods and approaches to implement this technical solution. The above is only a preferred embodiment of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of the present invention, and such improvements and modifications should also be considered within the scope of protection of the present invention. Any components not specified in this embodiment may be implemented using existing technologies.
Claims
1. A full coverage path planning method based on convex relaxation, characterized in that: The following steps are involved: Step 1: Map the area to be covered using a simultaneous positioning and mapping method. This involves moving a robot equipped with sensors within the target area and performing calculations based on the sensor data acquired during movement to obtain a map of the target area. Step 2, obtaining a candidate cover set: rasterize the map of the target area using a Cartesian grid and perform preprocessing to obtain a boundary grid set. For the boundary grid set, obtain a candidate cover set according to the cover set generation scheme; Step 3: Split the full coverage path planning problem into the sensor coverage problem and the generalized traveling salesman problem, and solve them step by step. For the full coverage path planning problem, use a convex relaxation method to obtain the minimum covering set: Use a convex relaxation method on the candidate covering set obtained in step 2 to transform the sensor placement problem into a convex optimization problem. Use a linear planner to solve the convex optimization problem and obtain the minimum covering set. Step 4: Apply the generalized traveling salesman method to the minimum covering set obtained in step 3 to obtain the optimal global path, and finally complete the full covering path planning based on convex relaxation; The convex relaxation method described in step 3 is used to obtain the minimum cover set. The specific method includes: Step 3-1, assign a coverage cost to each candidate coverage in the candidate coverage set generated in step 2; Step 3-2: Model the sensor placement problem as a linear programming problem and transform it into a convex optimization problem using convex relaxation. Step 3-3, using a linear programming solver to solve the convex optimization problem in an iterative process to obtain the minimum cover set; The coverage cost described in step 3-1 is as follows: Among them, cost i,j represents the coverage cost, dis i,j The two endpoint meshes f for the candidate cover i With f j Straight-line distance; The modeling described in step 3-2 is a linear programming problem, and the specific method is as follows: Where A=(a1,...,a k ) is the selection vector, indicating whether to select the corresponding candidate coverage, C is the coverage cost corresponding to the candidate coverage, W is the weight vector, represents the Hadamard product; the constraints of the linear programming problem are VA ≥ 1, 1 ≥ A ≥ 0, where V represents whether each free grid is visible to the corresponding candidate cover, that is, each free grid is visible to at least one cover in the minimum cover set, and VA represents the number of free grids visible to the minimum cover set; the minimum cover set is the optimized selection vector A, which indicates whether the minimum cover set contains the corresponding candidate cover; The linear programming problem is solved using a linear programming solver in an iterative process as described in step 3-3, specifically by: Step 3-3-1, calculate the coverage cost of each candidate coverage and initialize the matrix W, where each element in W represents the weight of the corresponding candidate coverage; Step 3-3-2, use COIN-OR CBC linear planner to solve the linear programming problem; Step 3-3-3, use the weight update formula to update the value of the weight vector W, and calculate the sparsity of the selection vector A. If the sparsity is continuous I conv If the times remain unchanged, the iteration loop ends, otherwise, execute step 3-3-2 again to iterate; The weight update formula is: Among them, ∈ i represents the weight update parameter, a i To select the corresponding element in vector A, e is a natural constant.
2. A full coverage path planning method based on convex relaxation according to claim 1, characterized in that: The specific method for obtaining the candidate coverage set described in step 2 includes: Step 2-1, the map of the target area is processed using Cartesian grid to generate a raster map M; Step 2-2: Divide the grids in the grid map M into a free grid set F and an obstacle grid set O. The specific method is as follows: The map is represented by a pixel matrix, with each pixel value ranging from [0, 255]. Pixels with values between 0 and 254 are set as obstacle pixels, otherwise they are free pixels. For each set of pixels within a grid, it is divided into obstacle grids and free grids based on the ratio of obstacle pixels to the total number of pixels. That is, if the ratio of obstacle pixels to the total number of pixels is greater than a threshold, the grid is marked as an obstacle grid, otherwise it is a free grid. The set of obstacle grids is the obstacle grid set O, and the set of free grids is the free grid set F. Step 2-3: further divide the free grid set F into the boundary grid set F bg With the non-boundary grid set F nbg , the specific method is as follows: If the four adjacent grids of a grid are non-empty grids and all four grids are free grids, then the grid is a non-boundary grid, otherwise it is a boundary grid. The set of all boundary grids is the boundary grid set F bg , the set of all non-boundary grids is the non-boundary grid set F nbg ; Steps 2-4, for the boundary grid set F bg Use the candidate cover set generation method to generate the candidate cover set N candidate .
3. The full coverage path planning method based on convex relaxation according to claim 2, characterized in that: The candidate cover set generation method described in steps 2-4 specifically includes: Step 2-4-1, for each boundary grid f bg , first traverse in the four directions of up, down, left and right until encountering an obstacle grid or a boundary grid, if the boundary grid f bg and the encountered obstacle grid or boundary grid f′ bg If the straight-line distance between them is greater than or equal to 2, a long cover N is generated. long ; Step 2-4-2, for each boundary grid f bg , traverse the boundary grid set F bg All other boundary grids f′ that are not on the same coordinate axis bg , if f bg and f′ bg If there is no obstacle grid on the line connecting the two, a long cover N is generated. long ; Step 2-4-3, for each generated long cover N long , according to the covering function, generate the grid set L it covers long , all generated N long The set of candidate covering set N candidate .
4. The full coverage path planning method based on convex relaxation according to claim 3, characterized in that: The coverage functions described in step 2-4-3 include: Step 2-4-3-1, set the two endpoints to f bg and f′ bg The straight line segments are divided into discrete pose point sets with a distance interval of Δd; Step 2-4-3-2: For each discrete pose point, obtain the set of free grids covered by the robot at the discrete pose point according to the coverage model of the robot whose full coverage path is to be planned; Step 2-4-3-3, perform the union operation on all the free grid sets of discrete pose points to obtain the grid set L covered by the robot within the coverage range long .
5. The full coverage path planning method based on convex relaxation according to claim 4, characterized in that: The coverage model described in step 2-4-3-2 is as follows: H i ={f1,···,f i ,···,f k } Among them, H i is the set of covered grids of the robot at any discrete moment, f i H i The free grids covered in , k is the size of the covered grid set.
6. The full coverage path planning method based on convex relaxation according to claim 5, characterized in that: The generalized traveling salesman method described in step 4 involves: Step 4-1, calculate the path cost between each two covers in the minimum cover set, obtain the distance matrix D, and initialize a random subset access order; Step 4-2: Use the LKH algorithm to select the optimal k value, perform K-opt optimization on the subset access order, and repeat the optimization until the optimal subset access order is generated; Step 4-3: for the generated optimal subset access sequence, search for the optimal internal access sequence of the current subset access sequence; In step 4-4, the generated optimal subset access order and optimal internal access order are used to enable the robot to sequentially visit discrete points on the global path. If all free grids in the map are covered, the full coverage path planning based on convex optimization is completed.
Citation Information
Patent Citations
Compressed sensing method based on intelligent vertical network
CN110769390A
Unmanned aerial vehicle flight time optimal real-time trajectory optimization method capable of ensuring convergence
CN111562797A