Path planning method based on fusion of A* algorithm and Open_Planner algorithm

By combining the improved A* and Open_Planner algorithms, and utilizing LiDAR and k-means clustering, the path planning is optimized, solving the problem of obstacle avoidance for autonomous vehicles in complex environments and achieving efficient and safe path planning.

CN115903810BActive Publication Date: 2026-02-24NANTONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211455763.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-21
Publication Date
2026-02-24
Estimated Expiration
2042-11-21

AI Technical Summary

Technical Problem

In existing technologies, traditional global path planning algorithms cannot effectively avoid unknown and dynamic obstacles, while local path planning algorithms are prone to getting stuck in local optima, resulting in low efficiency and insufficient safety of autonomous vehicle path planning.

Method used

By combining the improved A* algorithm and the Open_Planner algorithm, and using LiDAR to scan the environment, k-means optimization of point cloud clustering is used to extract key nodes. The path is optimized by combining min-heap sort and cost function, realizing the fusion planning of global and local paths, dynamic obstacle avoidance and path smoothing.

Benefits of technology

It improves the efficiency and safety of path planning, effectively avoids obstacles in complex environments, and achieves efficient and safe path planning for unmanned vehicles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115903810B_ABST
    Figure CN115903810B_ABST
Patent Text Reader

Abstract

The application provides a path planning method based on fusion of A* algorithm and Open_Planner algorithm, and is applied to an unmanned sweeper. Global path planning cannot avoid obstacles for unknown obstacles, and local path planning is prone to local optimization, so the global path planning and the local path planning are fused together to form a hybrid algorithm to complete optimal path planning. Path planning includes scanning of an environment by a laser radar and identification and detection of obstacles. High-precision maps are made by using sampled point cloud data. An optimal or shortest path is planned on the high-precision map by fusing the improved A* algorithm and the Open_Planner algorithm, and the obstacle avoidance effect can be realized. The application can enable the unmanned sweeper to safely and efficiently perform cleaning work in a park, can save a large amount of labor cost, improve large-area cleaning efficiency and reduce the accident probability of sanitation workers.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of complex campus path planning, specifically a path planning method based on the fusion of the A* algorithm and the Open_Planner algorithm. Background Technology

[0002] With the development of technology, autonomous vehicle technology has evolved from nothing to be applied in other industries, and more and more fields require autonomous vehicles to replace traditional manual labor. Developing an optimal and safe path for an autonomous sweeper is a crucial prerequisite. Its main purpose is to find the optimal collision-free path from the starting point to the destination in an environment with unknown or dynamic obstacles. While traditional global path planning algorithms can obtain the optimal or shortest path, they cannot avoid unknown static or dynamic obstacles that appear during the planning process. Local path planning algorithms can avoid obstacles encountered during travel, but they are prone to getting trapped in local optima. Therefore, this invention integrates global and local path planning algorithms to form a new fusion algorithm that can both obtain the optimal path and avoid obstacles that suddenly appear along the path. Summary of the Invention

[0003] To address the shortcomings of the existing technologies, this invention proposes a path planning method based on the fusion of an improved A* algorithm and the Open_Planner algorithm, comprising the following steps:

[0004] Step 1) Use LiDAR to scan the surrounding environment and perform k-means optimized point cloud clustering on the sampled point cloud data;

[0005] Step 2) Given a starting point and an ending point, plan a global path from the starting point to the ending point;

[0006] Step 3) Extract the key nodes in the global path and improve the node structure of the global path planning algorithm using min-heap sort;

[0007] Step 4) Use key nodes as target points for the local path, and input map information, starting point information, target point information, global path information, etc.

[0008] Step 5) Integrate the global path planning algorithm with the local path planning algorithm. Perform local planning based on the globally planned path to achieve dynamic obstacle avoidance. Smooth the final route to make the vehicle's movement smoother.

[0009] When using LiDAR for environmental scanning, the initial centroids are randomly selected during k-means clustering. Only the initially randomly generated centroids are the actual centers of the desired clusters. Subsequent iterations generating new centroids may not be points within the clusters. If outliers are relatively large from the centroids, the recalculated centroids may deviate from the true cluster centers. A drawback is its sensitivity to outliers, as an object with extreme values ​​can distort the data distribution. Therefore, instead of choosing the mean, new cluster centers are selected from objects within the cluster to reduce the overall cost.

[0010] Improvement process: First, a representative object is randomly selected for each cluster. The remaining objects are then assigned to the cluster represented by the nearest representative object based on their distance from each cluster. Then, non-representative objects are repeatedly used to replace the representative objects to optimize clustering quality. Clustering quality is represented by a cost function. When a centroid is replaced by a non-centroid, all other centroids except those that were not replaced are reassigned. To mitigate the sensitivity of the k-means algorithm to outliers, the k-centroid algorithm does not use the average value of objects in a cluster as the cluster center, but instead selects the object closest to the average value as the cluster center.

[0011] The algorithm's input: a database containing n objects and the number of clusters k;

[0012] Algorithm output:

[0013] (1) Randomly select k representative objects as the initial center points;

[0014] (2) Assign each remaining object to the cluster represented by the nearest center point;

[0015] (3) Randomly select a non-central point object y;

[0016] (4) Calculate the total cost s of replacing the center point x with y;

[0017] (5) If s is negative, then y can be used to replace x to form a new center point;

[0018] (6) Repeat (2)(3)(4)(5) until the k center points no longer change.

[0019] The A* algorithm flow is as follows: Add the starting point `start` to the open set of nodes. Repeat the following steps:

[0020] Step 1. When openset is empty, the program ends, as there is no path at this time.

[0021] Step 2. Find the node with the smallest F value in the openset and set it as the current node.

[0022] Step 3. Remove the current node from the openset.

[0023] Step 4. Add the current node to the closed set.

[0024] Step 5. If the current node is the target node, the program ends and the parent node x of each node x on the path is traced from the target node until the starting point is reached. The traced nodes at this point are the path.

[0025] Step 6. For each neighboring node in the eight directions of the current node: if the neighboring node is impassable or already in the CloseList, skip it; if the neighboring node is not in the OpenList, add it to the OpenList; if the neighboring node is in the OpenList, and the path G value is smaller than the previous path, update the parent node of the neighboring node to the current node, and update the G value and F value. The G value represents the path cost from the starting point to the current node, and the H value represents the path cost from the current node to the destination without considering impassable areas, and F = G + H.

[0026] Definition of a critical node: If node x is the starting point or the target node, then x is a critical node; if node x has neighboring nodes, then x is a critical node; if moving from the current node x to y is diagonal, and y can reach a critical node by moving horizontally or vertically, then y is also a critical node.

[0027] Improved algorithm node finding process:

[0028] (1) If the current direction of the current node is a straight line: If the left rear of the current node is not accessible but the left side is accessible, then search for key nodes not in the CloseList along the left front and left sides of the current node; If the current direction of the current node is accessible, then search for key nodes not in the CloseList along the current direction of the current node; If the right rear of the current node is not accessible but the right side is accessible, then search for key nodes not in the CloseList along the right front and right sides of the current node.

[0029] (2) If the current direction of the current node is a diagonal direction: If the horizontal component of the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the horizontal component of the current direction of the current node; If the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the current direction of the current node; If the vertical component of the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the vertical component of the current direction of the current node.

[0030] The A* algorithm, when searching for the node with the smallest F-value in the OpenList, requires scanning all nodes in order. While it can complete the scan, it is significantly slow. Therefore, heap sort is used to sort the nodes for retrieval. Heap sort is a selection sort that utilizes the property of a heap. It selects the smallest node based on the relationship between parent and child nodes in a binary tree, placing the node with the smallest F-value at the top of the list for easy access, thus improving search efficiency. Heap sort adjusts the node arrays in both tables into a min-heap, with the root node being the smallest node in the heap. The root node of the min-heap is swapped with the last node of the unsorted region, and the last node is added to the sorted region. The new node order is adjusted, and this operation is repeated until the unsorted region is empty.

[0031] Using the key nodes in the A* algorithm as intermediate target points in the Open_Planner algorithm satisfies both the global path optimization condition and enables dynamic obstacle avoidance on the local path.

[0032] Local obstacle avoidance is achieved using Open_Planner. The Open_Planner algorithm, based on the globally planned path, uses a Roll-outs Generator to obtain multiple sampled trajectories. Obstacle detection and a Roll-outs Evaluator are used to calculate the normalized cost function for each sampled trajectory. The trajectory with the minimum cost and optimal value is selected as the local path. Open_Planner's local planning consists of two parts: the Rollouts Generator and the Rollouts Evaluator. The Rollouts Generator explores local paths and optimizes trajectories, while the Roll-outs Evaluator selects the optimal path based on the cost function. The input information for the Roll-outs Generator is the vehicle's current position, the globally planned path, and the Rollouts. The Rollouts are divided into three parts: Car tip, Roll in, and Roll out. Car tip represents the distance from the vehicle's center to the starting point of horizontal sampling; Roll in represents the distance from horizontal sampling to the starting point of parallel sampling; and Roll out represents the distance from the starting point of parallel sampling to the maximum planned distance. By truncating the global path, point sampling is performed on the truncated global path, and the smoothed sampled points generate the final trajectory. The Rollouts Generator first extracts three parts—Car tip, Roll in, and Roll out—from the global path based on the vehicle's current position. Then, it performs lateral sampling on the extracted global path and finally smooths each sampled path.

[0033] This method uses three cost functions to evaluate different paths: priority cost, collision cost, and transition cost. Priority cost indicates that the intermediate path is preferred when there are no obstacles. Collision cost has two types: one represents the horizontal distance of the local trajectory from the obstacle, and the other represents the vertical distance of the local trajectory from the nearest obstacle. Transition cost restricts the vehicle from frequently switching between candidate paths, ensuring the smoothness of the vehicle's forward path.

[0034] Next, cost normalization is performed. An additional cost function is used to evaluate each trajectory, calculating three different normalized cost metrics to avoid any single cost factor dominating the evaluation function. Finally, the cost is calculated using the cost function, and the local path with the lowest cost is selected. The cost function is shown in formula (1):

[0035] H(x)=l·α+d·β+v·γ+k·δ (1)

[0036] Where l represents the distance between the vehicle and the lane centerline, d represents the distance between the vehicle and the obstacle, v represents the rate of change of speed, and k represents the path curvature. Finally, the optimal local trajectory is selected as the motion trajectory of the autonomous vehicle at the next moment. The local path is sometimes not the smoothest, so path smoothing is required. Smoothing involves sampling points and iterating through a smoothing function multiple times, assuming the resulting point sequence of motion planning is [x1, x2, ..., x...]. n The smoothed motion planning point sequence is [y1, y2, ..., y]. n Define the smoothing cost function as cost = c1‖x i -y i ‖+c2‖y i -y i+1 ‖. Where, c1‖x i -y i The symbol ‖ is used to measure the degree to which the original points are present in the smoothed points, c2‖y i -y i+1 The distance to the smoothed point is measured by two costs, c1 and c2, which are mutually balancing; the smoothing process is the process of minimizing the cost. The larger c1 is relative to c2, the closer the smoothed point is to the original point, and the smoother the route. Through multiple iterations, y is adjusted... i The value that minimizes cost is y. i =x i i = [1, 2, ..., n]. The iterative process involves traversing all points except the starting and ending points and updating y. i y i =y i +α·(x i -y i)+β·(y i-1 -2·y i +y i+1 The process is repeated iteratively until the iteration limit is reached or the cost gradient decreases to a specified threshold.

[0037] Beneficial effects: This invention solves the problems of the A* algorithm having too many honor points and being unable to avoid unknown obstacles, and the Open_Planner algorithm being prone to getting trapped in local optima. By fusing the two algorithms, the optimization efficiency and effect of the fusion algorithm are improved. When the fusion algorithm is used for path planning on high-precision maps, the identification and detection of obstacles in the path is achieved by clustering point clouds using an improved k-means algorithm, enabling effective obstacle detection and obstacle avoidance in path planning. Attached Figure Description

[0038] To more clearly illustrate the technical solutions in the embodiments of the present 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 only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0039] Figure 1 This is a flowchart of the fusion algorithm of the present invention.

[0040] Figure 2 (a) is an experimental diagram of the A* algorithm, and (b) is an experimental diagram of the improved algorithm of this invention.

[0041] Figure 3 This is an experimental diagram of the fusion algorithm of this invention. Detailed Implementation

[0042] To enable those skilled in the art to better understand the present invention, the invention will be further described in detail below with reference to specific implementation methods. Obviously, the described embodiments are merely some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0043] This embodiment presents a path planning method for unmanned sweeping vehicles performing cleaning tasks in complex parks. First, key points of the A* algorithm are selected based on grid map boundaries and obstacles, and unnecessary redundant points are removed to improve path smoothness. Heap sort is used to improve the node search structure and increase search efficiency. Second, key points of the A* algorithm are extracted as intermediate nodes for the Open_Planner algorithm during planning, and the local paths planned by the Open_Planner algorithm are smoothed to achieve path planning for the unmanned sweeping vehicle using a fusion optimization algorithm. Simulation results show that compared with traditional path planning algorithms, the fusion algorithm improves path planning efficiency by 65.46% and produces smoother paths. Combined with the application of intelligent unmanned sweeping vehicles in parks, guided by the path planning of the fusion optimization algorithm, the unmanned sweeping vehicles can safely and efficiently complete the traversal and cleaning work of the park. This invention enables unmanned sweeping vehicles to perform cleaning work safely and efficiently in parks, saving significant labor costs, improving the cleaning efficiency of large areas, and reducing the probability of accidents for sanitation workers.

[0044] The present invention will now be described in conjunction with specific embodiments.

[0045] like Figure 1 As shown, a path planning method for unmanned sweeping vehicles in industrial parks based on the fusion of an improved A* algorithm and the Open_Planner algorithm includes the following steps:

[0046] Step 1) Use LiDAR to scan the surrounding environment and perform k-means optimized point cloud clustering on the sampled point cloud data;

[0047] Step 2) Given a starting point and an ending point, plan a global path from the starting point to the ending point;

[0048] Step 3) Extract the key nodes in the global path and improve the node structure of the global path planning algorithm using min-heap sort;

[0049] Step 4) Use key nodes as target points for the local path, and input map information, starting point information, target point information, global path information, etc.

[0050] Step 5) Perform local planning based on the global planning path to achieve dynamic obstacle avoidance.

[0051] Using LiDAR for environmental scanning, the initial centroids are randomly selected during k-means clustering. Only the initially randomly generated centroids are the actual centers of the desired cluster set. Subsequent iterations generating new centroids may not be within the clusters. If outliers are significantly distant from the centroids, the recalculated centroids may deviate from the true cluster centers. A drawback is its sensitivity to outliers, as an object with extreme values ​​can distort the data distribution. Therefore, instead of choosing the mean, new cluster centers are selected from objects within the cluster to reduce overall cost. The improvement process involves: first, randomly selecting a representative object for each cluster; then, assigning the remaining objects to the cluster represented by the nearest representative object based on their distance; and repeatedly replacing representative objects with non-representative objects to optimize clustering quality. Clustering quality is represented by a cost function. When a centroid is replaced by a non-centroid, all points except the unreplaced centroids are reassigned. To reduce the sensitivity of the k-means algorithm to isolated points, the k-centroid algorithm does not use the average value of objects in a cluster as the cluster center, but instead selects the object in the cluster that is closest to the average value as the cluster center.

[0052] The algorithm's input: a database containing n objects and the number of clusters k;

[0053] Algorithm output: Step 1) Randomly select k representative objects as the initial center points;

[0054] Step 2) Assign each remaining object to the cluster represented by the nearest center point;

[0055] Step 3) Randomly select a non-center point object y;

[0056] Step 4) Calculate the total cost s of replacing the center point x with y;

[0057] Step 5) If s is negative, then y can be used to replace x to form a new center point;

[0058] Step 6) Repeat steps (2), (3), (4), and (5) until the k center points no longer change.

[0059] The A* algorithm flow is as follows: Add the starting point `start` to the open set of nodes. Repeat the following steps:

[0060] Step 1. When openset is empty, the program ends, as there is no path at this time.

[0061] Step 2. Find the node with the smallest F value in the openset and set it as the current node.

[0062] Step 3. Remove the current node from the openset.

[0063] Step 4. Add the current node to the closed set.

[0064] Step 5. If the current node is the target node, the program ends and the parent node x of each node x on the path is traced from the target node until the starting point is reached. The traced nodes at this point are the path.

[0065] Step 6. For each neighboring node in the eight directions of the current node: if the neighboring node is impassable or already in the CloseList, skip it; if the neighboring node is not in the OpenList, add it to the OpenList; if the neighboring node is in the OpenList, and the path G value is smaller than the previous path, update the parent node of the neighboring node to the current node, and update the G value and F value. The G value represents the path cost from the starting point to the current node, and the H value represents the path cost from the current node to the destination without considering impassable areas, and F = G + H.

[0066] Definition of a critical node: If node x is the starting point or the target node, then x is a critical node; if node x has a forcing neighbor, then x is a critical node; if moving diagonally from the current node x to y, and y can reach a critical node by moving horizontally or vertically, then y is also a critical node.

[0067] Improved algorithm node finding process:

[0068] (1) If the current direction of the current node is a straight line: If the left rear of the current node is not accessible but the left side is accessible, then search for key nodes not in the CloseList along the left front and left sides of the current node; If the current direction of the current node is accessible, then search for key nodes not in the CloseList along the current direction of the current node; If the right rear of the current node is not accessible but the right side is accessible, then search for key nodes not in the CloseList along the right front and right sides of the current node.

[0069] (2) If the current direction of the current node is a diagonal direction: If the horizontal component of the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the horizontal component of the current direction of the current node; If the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the current direction of the current node; If the vertical component of the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the vertical component of the current direction of the current node.

[0070] The A* algorithm, when searching for the node with the smallest F-value in the OpenList, requires scanning all nodes in order. While it can complete the scan, its speed is significantly slow. Therefore, this paper utilizes heap sort to sort the nodes for retrieval. Heap sort is a selection sort that leverages the properties of a heap. It selects the smallest node based on the relationship between parent and child nodes in a binary tree, placing the node with the smallest F-value at the top of the list for easy access, thus improving search efficiency. Heap sort adjusts the node arrays in both tables into a min-heap, with the root node being the smallest node in the heap. The root node of the min-heap is swapped with the last node of the unsorted region, and the last node is added to the sorted region. The new node order is adjusted, and this operation is repeated until the unsorted region is empty. Figure 2 As shown, while the A* algorithm can complete path planning, the large number of intermediate nodes affects planning efficiency. Experimental results demonstrate how to improve the A* algorithm by utilizing key points. By removing unnecessary intermediate extension points and connecting two key points, long-distance straight-line path planning is achieved. Then, heap sort is used to optimize node search. The improved algorithm increases search efficiency by 71.5% and reduces the number of turning points by 46.2% compared to the traditional algorithm. This shows that the improved algorithm not only improves planning efficiency but also plans fewer path nodes and produces a smoother path.

[0071] Using the key nodes in the A* algorithm as intermediate target points in the Open_Planner algorithm satisfies both the global path optimization condition and enables dynamic obstacle avoidance on the local path.

[0072] Local obstacle avoidance is performed using OpenPlanner based on global path planning. The OpenPlanner algorithm, based on the globally planned path, uses a Roll-outs Generator to obtain multiple sampled trajectories. Obstacle detection and a cost function are used to calculate the normalized cost function for each sampled trajectory. The trajectory with the minimum and optimal cost is selected as the local path. OpenPlanner's local planning consists of two parts: the Rollouts Generator and the Rollouts Evaluator. The Rollouts Generator explores local paths and optimizes trajectories, while the Roll-outs Evaluator selects the optimal path based on the cost function. The input information for the Roll-outs Generator is the vehicle's current position, the globally planned path, and the Rollouts. The Rollouts are divided into three parts: Car tip, Roll in, and Roll out. Car tip represents the distance from the vehicle's center to the starting point of horizontal sampling, Roll in represents the distance from horizontal sampling to the starting point of parallel sampling, and Roll out represents the distance from the starting point of parallel sampling to the maximum planned distance. By truncating the global path, point sampling is performed on the truncated global path, and the smoothed sampled points generate the final trajectory. The Rollouts Generator extracts three parts—Cartip, Roll in, and Roll out—from the global path based on the vehicle's current position. Then, it performs lateral sampling on the extracted global path and finally uses conjugate gradients to smooth each sampled path.

[0073] This method uses three cost functions to evaluate different paths: priority cost, collision cost, and transition cost. Priority cost indicates that the intermediate path is preferred when there are no obstacles. Collision cost has two types: one represents the horizontal distance of the local trajectory from the obstacle, and the other represents the vertical distance of the local trajectory from the nearest obstacle. Transition cost restricts the vehicle from frequently switching between candidate paths, ensuring the smoothness of the vehicle's forward path.

[0074] Next, cost normalization is performed. An additional cost function is used to evaluate each trajectory, calculating three different normalized cost metrics to avoid any single cost factor dominating the evaluation function. Finally, the cost is calculated using the cost function, and the local path with the lowest cost is selected. The cost function is shown in formula (1):

[0075] H(x)=l·α+d·β+v·γ+k·δ (1)

[0076] Where l represents the distance between the vehicle and the lane centerline, d represents the distance between the vehicle and the obstacle, v represents the rate of change of velocity, and k represents the path curvature. Finally, the optimal local trajectory is selected as the trajectory of the autonomous vehicle in the next moment.

[0077] Assume the result point sequence of motion planning is [x1, x2, ..., x n The smoothed motion planning point sequence is [y1, y2, ..., y]. n Define the smoothing cost function as cost = c1‖x i -y i ‖+c2‖y i -y i+1 ‖. Where, c1‖x i -y i The symbol ‖ is used to measure the degree to which the original points are present in the smoothed points, c2‖y i -y i+1 The distance to the smoothed point is measured by two costs, c1 and c2, which are mutually balancing; the smoothing process is the process of minimizing the cost. The larger c1 is relative to c2, the closer the smoothed point is to the original point, and the smoother the route. Through multiple iterations, y is adjusted... i The value that minimizes cost is y. i =x i i = [1, 2, ..., n]. The iterative process involves traversing all points except the starting and ending points and updating y. i y i =y i +α·(x i -y i )+β·(y i-1 -2·y i +y i+1 The process is repeated iteratively until the iteration limit is reached or the cost gradient decreases to a specified threshold.

[0078] Finally, the two algorithms are fused. The A* algorithm is used to plan a global path, key points are obtained from the A* algorithm, redundant extended nodes are deleted, and the key points are placed in a list. Heap sort is then used to rearrange the node order. These key points are used as target points in the local planning of the Open_Planner algorithm. Inputting key nodes and their location information, multiple trajectories are obtained by sampling the truncated global path and smoothing it. The sampled paths are evaluated using three cost functions: priority cost, transition cost, and collision cost. Finally, the optimal trajectory is selected as the path to the next target point. The above steps are repeated until the final target point is reached, thus achieving the fusion of the two improved algorithms. The final path is then smoothed. Simulation results of the fused algorithm are shown below. Figure 3The display shows that the fusion algorithm starts from the starting point and, before encountering the first key point, there are no obstacles in the path. It can be seen that the path planned by the fusion algorithm closely resembles the path planned by the improved A* algorithm, conforming to global path planning. When there are obstacles between two key points, the locally planned route will avoid the obstacles until the target point is reached. Compared with the improved A* algorithm, the fusion algorithm improves path planning efficiency by 61.09%, and the path is smoother. The fusion algorithm avoids the influence of dynamic and static obstacles on robot movement, and the planned path can avoid obstacles in a timely manner to achieve a safe effect. In similarly complex environments with many obstacles, the fusion algorithm can also achieve the expected obstacle avoidance effect.

Claims

1. A path planning method based on the fusion of the A* algorithm and the Open_Planner algorithm, characterized in that, Includes the following steps: Step 1) Use LiDAR to scan the surrounding environment, perform k-means optimization on the sampled point cloud data, and then perform point cloud clustering. Step 2) After specifying the starting point and the target point on the map, plan a global path from the starting point to the target point; Step 3) Extract key nodes in the global path and improve the node structure of the global path planning algorithm using min-heap sort; Step 4) Use key nodes as intermediate target points for the local path planning algorithm, and input map information, starting point information, target point information, and global path information; the local path planning algorithm is the Open_Planner algorithm; Step 5) Integrate the global path planning algorithm with the local path planning algorithm; perform local planning based on the globally planned path to achieve dynamic obstacle avoidance; and smooth the final local route. Step 6) Evaluate multiple local routes using an evaluation method, and select the optimal route as the trajectory for the next moment.

2. The path planning method based on the fusion of A* algorithm and Open_Planner algorithm according to claim 1, characterized in that, Step 1) involves clustering the sampled point cloud data after k-means optimization. This includes: first, arbitrarily selecting a representative object for each cluster; then assigning the remaining objects to the cluster represented by the nearest representative object based on their distance from each representative object; repeatedly replacing representative objects with non-representative objects to optimize clustering quality; clustering quality is represented by a cost function; when a centroid is replaced by a non-centroid, all points except the unreplaced centroids are reassigned; to mitigate the sensitivity of the k-means algorithm to outliers, the k-means centroids do not use the average value of objects in the cluster as the cluster center, but instead select the object closest to the average value as the cluster center. The inputs to the k-means algorithm are: a database containing n objects and the number of clusters k; Output of the k-means algorithm: (1) Randomly select k representative objects as the initial center points; (2) Assign each remaining object to the cluster represented by the nearest center point; (3) Randomly select a non-central point object y; (4) Calculate the total cost s of replacing the center point x with y; (5) If s is negative, then y can be used to replace x to form a new center point; (6) Repeat (2), (3), (4), (5) until the k center points no longer change.

3. The path planning method based on the fusion of A* algorithm and Open_Planner algorithm according to claim 1, characterized in that, The global path planning algorithm is the A* algorithm. The A* algorithm's node-finding process is as follows: (1) If the current node's current direction is a straight line: If the current node's left rear is not accessible but its left side is accessible, then search for key nodes not in the CloseList along the current node's left front and left sides; If the current node's current direction is accessible, then search for key nodes not in the CloseList along the current node's current direction. If the current node is not traversable to its right rear but is traversable to its right, then search for key nodes that are not in CloseList along the current node's right front and right sides. (2) If the current direction of the current node is a diagonal direction: If the horizontal component of the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the horizontal component of the current direction of the current node; If the current direction of the current node is traversable, then search for key nodes that are not in the CloseList along the current direction of the current node. If the vertical component of the current node in the current direction is traversable, then search for key nodes that are not in CloseList along the vertical component of the current node in the current direction.

4. The path planning method based on the fusion of A* algorithm and Open_Planner algorithm according to claim 3, characterized in that, Heap sort is used to sort nodes for retrieval. It selects the minimum node based on the relationship between parent and child nodes in a binary tree, placing the node with the smallest F value at the top of the list for easy access, thus improving search efficiency. Heap sort adjusts the node arrays in the two tables into a min-heap, with the top node of the min-heap being the smallest node in the heap. The top node of the min-heap is swapped with the last node of the unsorted region, and the last node is added to the sorted region. The new node order is adjusted, and this operation is repeated until the unsorted region is empty.

5. The path planning method based on the fusion of A* algorithm and Open_Planner algorithm according to claim 1, characterized in that, Local obstacle avoidance is achieved using Open_Planner. The Open_Planner algorithm, based on the globally planned path, uses a Roll-outs Generator to obtain multiple local sampling trajectories. Obstacle detection and a Roll-outs Evaluator are used to calculate the normalized cost function of each sampling trajectory. The trajectory with the minimum and optimal cost is selected as the local path. Open_Planner's local planning consists of two parts: the Rollouts Generator and the Rollouts Evaluator. The Rollouts Generator explores local paths and optimizes trajectories, while the Roll-outs Evaluator selects the optimal path based on the cost function. The input information for the Roll-outs Generator is the vehicle's current position, the globally planned path, and Rollouts. Rollouts are divided into three parts: Car tip, Roll in, and Roll out. Car tip represents the distance from the vehicle's center to the starting point of horizontal sampling, Roll in represents the distance from horizontal sampling to the starting point of parallel sampling, and Roll out represents the distance from the starting point of parallel sampling to the maximum planned distance. By truncating the global path, point sampling is performed on the truncated global path, and the smoothed sampling points generate the final trajectory. The generator first extracts three parts—Car tip, Roll in, and Roll out—from the global path based on the vehicle's current location. Then, it performs lateral sampling on the extracted global path and finally smooths each sampled path.

6. The path planning method based on the fusion of A* algorithm and Open_Planner algorithm according to claim 1, characterized in that, Step 6) Use three cost functions to evaluate different paths: priority cost, collision cost, and transition cost. Priority cost means that the middle path is preferred when there are no obstacles. Collision cost is divided into two types: one is the horizontal distance of the local trajectory from the obstacle, and the other is the vertical distance of the local trajectory from the nearest obstacle. Transition cost restricts the vehicle from frequently switching between candidate paths, ensuring the smoothness of the vehicle's forward path. Next, cost normalization is performed, and an additional cost function is used to evaluate each trajectory. Three different normalized cost metrics are calculated to avoid any one cost factor from accounting for too much in the evaluation function. Finally, the cost is calculated using the cost function, and the local path with the lowest cost is selected. The cost function is shown in formula (1). (1) Where l represents the distance between the vehicle and the center line of the lane, d represents the distance between the vehicle and the obstacle, v represents the rate of change of speed, and k represents the curvature of the path.

7. The path planning method based on the fusion of A* algorithm and Open_Planner algorithm according to claim 1, characterized in that, The local path smoothing process includes the following steps: sampling points, iterating multiple times using a smoothing function, and assuming the resulting point sequence of the motion planning is... The smoothed motion planning point sequence is as follows: Define the smooth cost function ;in, Used to measure the degree to which the original points remain after smoothing. The distance to the smoothing point is used to measure the cost; these two costs are mutually balancing, and the smoothing process is the process of minimizing the cost. and It is a parameter relating to the smoothness of the target route. Compared to The larger the value, the closer the smoothed point is to the original point, and the smoother the route; through multiple iterations, the adjustment... The value that minimizes cost is, where, The iterative process involves traversing all points except the starting and ending points and updating... : The iterative process is repeated until the iteration limit is reached or the cost gradient decreases to a specified threshold.

Citation Information

Patent Citations

  • Method and equipment for fusing global path planning and local path planning of mobile robot

    CN113359718A

  • Inspection robot path planning method based on improved A-satellite fusion DWA optimization algorithm

    CN115079705A