An Adaptive Path Planning Method for Mobile Robots in Complex Environments

By optimizing the path topology through dynamic target bias sampling, adaptive step size, and angle bisection, the problem of low efficiency and poor quality of existing RRT* algorithms in complex environments is solved, and efficient and smooth path planning is achieved.

CN122306088APending Publication Date: 2026-06-30LIAOCHENG UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
LIAOCHENG UNIV
Filing Date
2026-05-15
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Existing path planning methods based on RRT* suffer from low exploration efficiency, poor environmental adaptability, and low quality of generated paths in complex environments, making it difficult to achieve efficient and high-quality path planning in dynamic environments.

Method used

By employing a dynamic target bias sampling mechanism and an adaptive variable step size mechanism, combined with the angle bisection method and reconnection operation, the path topology is optimized to generate an adaptive path planning method.

Benefits of technology

It significantly improves path planning efficiency, generates high-quality, smooth, collision-free paths, and enhances the performance of mobile robots in complex environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122306088A_ABST
    Figure CN122306088A_ABST
Patent Text Reader

Abstract

This invention relates to the field of mobile robot path planning technology, and particularly to an adaptive path planning method for mobile robots in complex environments. It includes: initializing a random tree; adjusting the target bias probability and generating sampling nodes through a dynamic target bias sampling mechanism; adjusting the expansion step size through an adaptive variable step size mechanism to generate candidate new nodes; performing collision detection on the connecting edges between candidate new nodes and the nearest node; searching for and adding new nodes to the random tree to find the farthest reachable parent node with a collision-free path; generating optimized parent nodes using an angle bisection method; when a node in the random tree is located in the target region, generating and outputting a collision-free path from the starting node to the target region; outputting path planning failure information when the maximum number of iterations is reached and no node in the random tree is located in the target region; and returning to iteration when no node in the random tree is located in the target region and the maximum number of iterations has not been reached.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of mobile robot path planning technology, and in particular to an adaptive path planning method for mobile robots in complex environments. Background Technology

[0002] Path planning is a core technology for autonomous navigation of mobile robots. Its task is to search for a collision-free optimal path from the starting point to the target point in a complex environment. Among many planning methods, sampling planning algorithms based on Rapid Expanding Random Trees (RRT) are widely used due to their effectiveness in high-dimensional spaces and the advantage of not requiring explicit environment modeling. The Rapid Expanding Random Tree Star (RRT*) algorithm ensures the asymptotic optimality of the path by introducing "parent node reselection" and "local rewiring" mechanisms on top of RRT.

[0003] However, the classic RRT* algorithm and its many improved variants still have significant limitations. First, the sampling strategies of the classic RRT* algorithm and its many improved variants are usually fixed or simply switch between random sampling and target bias sampling, which easily generates a large number of invalid expansions in areas with dense obstacles, resulting in low exploration efficiency and slow convergence speed. Second, the classic RRT* algorithm and its many improved variants mostly use fixed step sizes for expansion, which is too conservative in open areas and prone to collisions in narrow areas, lacking the ability to adapt to environmental complexity. Finally, in terms of path optimization, the classic RRT* algorithm and its many improved variants rely heavily on subsequent smoothing processing, failing to fully consider how to make the path itself closer to the obstacle boundaries to shorten its length and improve smoothness during the generation process. For example, the Quick Expanded Random Tree Star (Q-RRT*) based on the triangle inequality accelerates convergence but increases computational cost; the Bisection Quick Expanded Random Tree Star (F-RRT*) improves path quality but is not adaptable to complex environments; the Genetic Optimization Quick Expanded Random Tree Star (GAO-RRT*) converges quickly and avoids local optima, but its improvement in exploration efficiency is limited; the Hybrid Sampling Quick Expanded Random Tree Star (Hybrid-RRT*) improves global search capability by switching between multiple sampling strategies, but still suffers from ineffective expansion and path redundancy in areas with dense obstacles.

[0004] Therefore, existing RRT*-based algorithms struggle to achieve a good balance between dynamic environment adaptability, exploration efficiency, and final path quality. There is an urgent need for a novel adaptive planning method that can intelligently adjust exploration behavior and take into account both planning efficiency and path optimality. Summary of the Invention

[0005] The purpose of this invention is to provide an adaptive path planning method for mobile robots in complex environments, which solves the technical problems of low exploration efficiency, poor environmental adaptability, and low quality of generated paths in existing path planning methods based on RRT*. This aims to improve the efficiency and quality of path planning, enhance the smoothness and executability of paths, and thus improve the overall performance of mobile robots in complex scenarios.

[0006] The present invention provides an adaptive path planning method for mobile robots in complex environments, characterized by comprising the following steps:

[0007] Step 1: Construct the configuration space for mobile robot path planning, divide the obstacle area and free space, and set the starting node and target area;

[0008] Step 2: Initialize the random tree with the starting node as the root node and set the algorithm running parameters;

[0009] Step 3: Through a dynamic target bias sampling mechanism, sampling nodes are generated during the path expansion process by adjusting the target bias probability based on the number of collision detection passes between nodes according to the collision detection statistics.

[0010] Step 4: Using an adaptive variable step size mechanism, search for the node closest to the sampling node in the random tree as the nearest node, and adjust the expansion step size according to the distance between the nearest node and the obstacle to generate candidate new nodes;

[0011] Step 5: Perform collision detection on the edges connecting the candidate new node and the nearest node; if there is no collision, add the candidate new node to the random tree and set the nearest node as the current node, and update the collision detection success count; otherwise, return to step 3.

[0012] Step 6: Starting from the current node, backtrack along the random tree towards the root node to search for the farthest reachable parent node with a collision-free path to the new node to be added to the random tree.

[0013] Step 7: Using the farthest reachable parent node as a reference, generate an optimized parent node using the angle bisection method, and update the node connection relationships in the random tree;

[0014] Step 8: Perform reconnection operations on the nodes in the random tree to optimize the tree topology;

[0015] Step 9: When there is a node in the target region in the random tree, generate and output a collision-free path from the starting node to the target region based on the node connection relationship in the random tree; when the maximum number of iterations is reached and there is no node in the target region in the random tree, output a path planning failure message; when there is no node in the target region in the random tree and the maximum number of iterations has not been reached, return to step 3.

[0016] Furthermore, in step 1, a two-dimensional configuration space for mobile robot path planning is constructed. Define the obstacle region as Free space is defined as Set the starting node The target area is rasterized, and the obstacle distance field is pre-generated.

[0017] Furthermore, in step 2, starting with the initial node As the root node, the random tree is initialized as follows: , where the set of nodes Initially, only the starting node is included. edge set The initial set is empty; the algorithm's parameters include the maximum number of iterations and the basic step size. Neighborhood search radius The dynamic target bias sampling update interval and angle binary threshold are used to initialize the number of collision detection passes. .

[0018] Furthermore, in step 3, the specific implementation of the dynamic target bias sampling mechanism is as follows: the dynamic target bias sampling update interval is set to 10 iterations; before the first iteration begins, a hyperbolic tangent function is used. Calculate the target bias probability The initial value; when the current iteration number reaches an integer multiple of the dynamic target bias sampling update interval, the hyperbolic tangent function is used based on the number of collision detection passes recorded within the current dynamic target bias sampling update interval. Calculate the target bias probability for the next dynamic target bias sampling update interval, and map the number of collision detection passes to... The target offset probability is set to an interval; when the number of successful collision detections is high, the target offset probability increases, indicating a relatively open environment; when the number of successful collision detections is low, the target offset probability decreases, indicating a dense environment with obstacles. After calculation, the number of successful collision detections is reset to 0; otherwise, the current target offset probability is used. During each node sampling process within each dynamic target offset sampling update interval, sampling is performed based on the currently used target offset probability to generate a... random numbers within the interval ,like If the target point within the target area is selected, then the target point within the target area will be used as the sampling node; otherwise, a node will be randomly selected in free space according to a uniform distribution as the sampling node.

[0019] Furthermore, in step 4, the adaptive variable step size mechanism is specifically implemented by searching for the nearest node with the shortest Euclidean distance to the sampling node in the node set of the random tree, and obtaining the distance by querying the pre-generated obstacle distance field. Distance of the obstacle corresponding to the location The obstacle distance field is a matrix with the same size as the map. Each grid cell in the obstacle distance field stores a value representing the Euclidean distance from the corresponding grid cell's location to the nearest obstacle boundary. This distance is determined by the obstacle distance and the base step size. The ratio is calculated by adaptively adjusting the current expansion step size using a nonlinear mapping function; the distance ratio is then calculated. ; Generate extended step size through nonlinear mapping function The adjustment factor is calculated using the following formula: ,in It is an exponential function; when the nearest node is close to the obstacle, the distance to the obstacle is small, resulting in a small distance ratio. In this case, the nonlinear mapping function... The value is large, making The value is relatively large, therefore Approaching 0, the expansion step size adaptively decreases to near the base step size, enabling fine expansion and obstacle avoidance within narrow areas close to obstacles; when the nearest node is far from the obstacle, the obstacle distance is large, resulting in a large distance ratio, at which point... The value is small or even negative, making The value approaches 0, thus Approaching 1, the expansion step size is adaptively increased to close to 1. This enables rapid exploration and traversal of open areas far from obstacles; after determining the expansion step size, starting from the nearest node, proceeding along... The unit direction vector pointing to the sampling node is expanded to generate candidate new nodes. The coordinates of the candidate new nodes are calculated using the following formula:

[0020]

[0021]

[0022] in, Let x be the x-coordinate of the candidate new node. The ordinate of the candidate new node; The x-coordinate of the nearest node, The y-coordinate of the nearest node; The x-coordinate of the sampling node, The vertical coordinate of the sampling node; Represents a node With nodes The Euclidean distance between them; after generating the coordinates of candidate new nodes, the coordinate values ​​are rounded, and the rounded coordinates are used as the positions of the candidate new nodes. and ordinate Round down to the nearest integer to obtain the coordinates of the candidate new node, thus unifying the position coordinates of the candidate new node with the discrete coordinate system of the raster map.

[0023] Furthermore, in step 5, the specific process of collision detection is as follows: after generating candidate new nodes, collision detection is performed on the connection edge between the nearest node and the candidate new node to determine whether the connection edge intersects with the obstacle region. Collision detection is performed using a discrete sampling detection method. Points are uniformly sampled on the connection edge between the nearest node and the candidate new node according to a preset detection interval. These sampled points are used as detection points, and each detection point is checked one by one to determine whether it is located within the obstacle region. If any detection point falls into the obstacle region, it is determined that the extended path has collided. If all detection points on the connection edge between the nearest node and the candidate new node are located in free space, it is determined that the connection edge meets the collision-free condition. When the detection result meets the collision-free condition, the candidate new node is added to the node set of the random tree, becoming a new node that has been added to the random tree. Establish a connection edge between the nearest node and the candidate new node, and add the connection edge between the nearest node and the candidate new node to the edge set; update the collision detection pass count by increasing the collision detection pass count by 1; when the detection result is that a collision has occurred, abandon this node expansion, do not add the candidate new node to the node set, do not establish any new connection edges, and keep the collision detection pass count unchanged.

[0024] Furthermore, in step 6, the search for new nodes... The specific implementation of the furthest reachable parent node with a collision-free connection path is as follows: Starting from the current node, backtrack along the random tree towards the root node, using the current node as the initial candidate node; check each parent node level by level to obtain the parent node of the current node, and then compare the parent node of the current node with the new node. Collision detection is performed on the connecting edges between the nodes; if no collision is found, the parent node of the current node is selected as a new candidate node, and the current node is updated to its parent node, continuing the backtracking upwards; if a collision is found, the backtracking stops, and the current candidate node is the farthest reachable parent node; if the backtracking continues until the root node is reached, and the root node and the new node are both connected, the backtracking continues. If there are no collisions between the connecting edges, then the root node is the farthest reachable parent node.

[0025] Furthermore, in step 7, the specific implementation of the angle bisection method for generating optimized parent nodes is as follows: if the farthest reachable parent node is equal to the starting node, the farthest reachable parent node is used as the new node. Optimize the parent node; if the farthest reachable parent node is not equal to the starting node, then obtain the parent node of the farthest reachable parent node and denote it as the grandparent node. And based on the grandparent node, the furthest reachable parent node, and the new node Construct triangles for the vertices; using the grandparent node as the vertex, connect the grandparent node to the farthest reachable parent node, and the grandparent node to the new node. Forming two sides to construct an angle Set two dynamic boundary points, including feasible boundary points. and infeasible boundary points Initialize currently feasible boundary points as the farthest reachable parent node, and initialize currently infeasible boundary points as new nodes. Calculate the intersection point of the angle bisector and the opposite side within the current angle interval. ,in , For the grandfather node To the current feasible boundary point distance, From the grandfather node To the current infeasible boundary point distance, For the grandfather node To the current feasible boundary point The distance to the current infeasible boundary point The ratio of distances between the grandfather node and the intersection point. Collision detection is performed on the connecting edges between them. If the no-collision condition is met, the current feasible boundary points are updated to... If a collision occurs, the currently infeasible boundary points will be updated to... ; Calculate the intersection point multiple times Collision detection and boundary point updates are performed, and the angle is updated each time a boundary point is moved. Shrink once, until the corner Stop when the value is less than the angle bisection threshold, and obtain the updated feasible boundary points; use the new node... For vertices, connect new nodes With feasible boundary points and new nodes Forming two edges with the grandfather node to construct an angle Initialize feasible boundary points to the updated feasible boundary points, and initialize infeasible boundary points to their grandparent nodes. Calculate the intersection of the angle bisector and the opposite side within the current angle interval. ,in , To start from the new node To the current feasible boundary point distance, To start from the new node To the current infeasible boundary point distance, To start from the new node To the current feasible boundary point The distance to the current infeasible boundary point The ratio of distances, and for new nodes Intersection Collision detection is performed on the connecting edges between them. If the connecting edges meet the collision-free condition, the current feasible boundary points are updated to... If a collision occurs between connecting edges, the currently infeasible boundary points will be updated to... ; Calculate the intersection point multiple times Collision detection and boundary point updates are performed, and the angle is updated each time a boundary point is moved. Shrink once, until the corner Stop when the angle is less than the angle bisector threshold, and use the intersection of the current angle bisector and the opposite side as the optimized candidate parent node. If the optimized candidate parent node is not empty and is not equal to the farthest reachable parent node, then use the optimized candidate parent node as the new node. The optimized parent node insertion random tree is constructed by adding the optimized parent node candidate to the node set, establishing connections between the grandparent node and the optimized parent node candidate, and between the optimized parent node candidate and the new node. The connection edges are removed, and the original connections are broken; if the optimized parent node candidate is empty or equal to the farthest reachable parent node, then the farthest reachable parent node is used as the new node. The parent node is optimized while maintaining the original connection relationship.

[0026] Furthermore, in step 8, the specific implementation of the reconnection is as follows: using a new node... Centered on the search area, search for neighboring nodes within the search radius. For each neighboring node... If starting from the initial node and passing through the new node Potential path cost of a path to a neighboring node It is less than the cumulative cost traversed from the starting node through existing paths in the current random tree to neighboring nodes. , ,in This indicates the path from the starting node to the new node. The current cumulative path length, Indicates a new node With nodes The Euclidean distance between them, and the new node If there are no collisions between the nodes and the neighboring nodes, update the parent node of the neighboring nodes to the new node. and will Updated to Recursively process each child node of the neighboring nodes. Update the cumulative cost of child nodes from the starting node to neighboring nodes. The process recursively updates the nodes downwards along the tree structure until all descendant nodes have been updated. After reconnecting the neighboring nodes, the process continues to check the next node in the set of neighboring nodes. The reconnection operation ends when all neighboring nodes have been processed.

[0027] Furthermore, in step 9, the specific implementation of the path output is as follows: Nodes located within the target region are retrieved from the node set of the random tree to form a target candidate node set; if the target candidate node set is not empty, a target node is selected from the target candidate node set, and starting from the target node, the parent nodes of the target node are visited level by level until the starting node is reached, obtaining the path node sequence from the target node to the starting node. The node sequence is reversed to obtain the path node sequence from the starting node to the target region. The connecting paths between adjacent nodes are connected sequentially to form a collision-free complete path, and then the output is completed, and the iteration is terminated; if the target candidate node set is empty and the current iteration count has reached the preset maximum iteration count, the path planning failure information is output, and the iteration is terminated; if the target candidate node set is empty and the maximum iteration count has not been reached, the process returns to step 3 to continue iterating.

[0028] This invention provides an adaptive path planning method for mobile robots in complex environments. Based on the characteristics of complex environments and considering the distribution of obstacles and path optimization requirements, it plans a feasible path for the mobile robot that avoids collisions with obstacles, effectively reducing path length and the number of turning points. By dynamically adjusting the sampling direction and step size, it adapts to obstacle regions of different densities, enabling rapid exploration in open environments and precise obstacle avoidance in narrow areas, thus significantly improving path planning efficiency. The method optimizes the parent node of new nodes using angle bisection, making the path closer to obstacle boundaries. Based on the triangle inequality principle, it effectively shortens the path length while reducing path turning angles, improving path smoothness. By searching for the farthest reachable parent node and performing reconnection operations, it further optimizes the tree topology, enhancing the search capability of the method. Compared with traditional path planning methods, this invention not only significantly improves path planning efficiency but also effectively avoids getting trapped in local optima, exhibiting stronger search capabilities, faster convergence speed, and more efficient finding of high-quality paths. In summary, this invention effectively solves the path planning problem for mobile robots in complex environments, with positive effects of improving path planning efficiency and quality, enhancing path smoothness and executability. Attached Figure Description

[0029] Figure 1 This is an overall flowchart of the present invention;

[0030] Figure 2This is a schematic diagram of the iterative bisection process of the angle bisection method of the present invention;

[0031] Figure 3 This is a schematic diagram illustrating the result of generating optimized parent nodes using the angle bisection method of the present invention;

[0032] Figure 4 This is the urban environment map used in the simulation experiment of this invention;

[0033] Figure 5 This is an indoor office environment map used in the simulation experiment of this invention;

[0034] Figure 6 This is a trend chart of the basic step size and neighborhood search radius parameter factors of this invention;

[0035] Figure 7 To compare the path planning results of the Q-RRT* algorithm (a fast expanding random tree star based on the triangle inequality) in the main diagonal direction of the urban environment;

[0036] Figure 8 To compare the path planning results of the F-RRT* (Binary Search Fast Expanding Random Tree Star) algorithm in the main diagonal direction of the urban environment;

[0037] Figure 9 To compare the path planning results of the Hybrid-RRT* algorithm (Hybrid Sampling Fast Expanding Random Tree Star) in the main diagonal direction of the urban environment;

[0038] Figure 10 To compare the path planning results of the GAO-RRT* (Genetic Optimization Fast Expanding Random Tree Star) algorithm in the main diagonal direction of the urban environment;

[0039] Figure 11 This is a diagram showing the path planning results of the AD-RRT* invention in the main diagonal direction of an urban environment;

[0040] Figure 12 This is a diagram showing the path planning results of the AD-RRT* invention in the vertical axis direction of an indoor office environment.

[0041] Figure 13 A violin plot showing the running time comparison between the present invention and various comparative algorithms in the main diagonal direction of an urban environment;

[0042] Figure 14 This is a violin plot comparing the path costs of the present invention and various comparative algorithms in the main diagonal direction of an urban environment.

[0043] Figure 15 This is a violin plot comparing the path smoothness of the present invention with that of various comparative algorithms in the main diagonal direction of an urban environment.

[0044] Figure 16 This is a violin diagram comparing the number of path nodes along the main diagonal in an urban environment with the present invention and various comparative algorithms. Detailed Implementation

[0045] like Figure 1 As shown, the present invention provides an adaptive path planning method for mobile robots in complex environments, which is mainly implemented through the following steps.

[0046] Step 1: Construct a two-dimensional configuration space for the mobile robot's working environment. The environmental space is defined as a configuration space, and the configuration space is divided into obstacle areas. With free space In a 2D grid map, obstacle areas are represented by occupied grids, while free space is represented by walkable grids. By discretizing the environment, the continuous space is transformed into a finite-size grid structure for random tree node expansion and collision detection. The starting node is set in the configuration space. With the target area The starting node represents the initial position of the mobile robot, and the target area represents the termination area of ​​the path planning, and satisfies the following conditions: and Before path planning begins, a distance transformation operation is performed on the two-dimensional grid map to pre-generate an obstacle distance field. The obstacle distance field is a matrix with the same size as the map, used to represent the Euclidean distance information from each grid cell in free space to the nearest obstacle boundary. In the subsequent path planning process, the obstacle distances corresponding to nodes are quickly obtained by querying the obstacle distance field, providing a basis for adaptive step size adjustment.

[0047] Step 2, starting with the initial node As the root node, initialize the random tree. , where the set of nodes Initially, only the starting node is included. edge set Initially, the set is empty; the algorithm's parameters are set, including the maximum number of iterations and the basic step size. The system includes a neighborhood search radius, a dynamic target bias sampling update interval of 10 iterations, and an angle binary search threshold. The maximum number of iterations controls the termination condition, the base step size serves as the reference distance for node expansion, and the neighborhood search radius determines the node search range during reconnection operations. The dynamic target bias sampling update interval is fixed at 10 iterations, and the target bias probability is recalculated at the end of each interval. The initial collision detection pass count is also included. The number of collision detection passes is used to record the cumulative number of times the connection edge between the nearest node and the candidate new node successfully passes the collision detection within the current 10 iterations, providing a statistical basis for dynamically adjusting the target bias probability using the hyperbolic tangent function.

[0048] Step 3: Through a dynamic target bias sampling mechanism, during path expansion, the target bias probability is adjusted based on the number of collision detection passes between nodes according to the collision detection statistics, and sampling nodes are generated. The specific implementation of the dynamic target bias sampling mechanism involves setting the dynamic target bias sampling update interval to... The iteration is performed in stages. Before the first iteration begins, a hyperbolic tangent function is used. Calculate the target bias probability The initial value, at this time The initial target bias probability value can be calculated. When the current iteration number reaches an integer multiple of the dynamic target bias sampling update interval, the target bias probability for the next dynamic target bias sampling update interval is recalculated using the hyperbolic tangent function based on the cumulative number of collision detection passes recorded within the current dynamic target bias sampling update interval, thereby mapping the number of collision detection passes to... The collision detection success rate is determined by the interval. A higher success rate indicates a more open environment with sparse obstacles, leading to a higher calculated target bias probability and a stronger tendency to expand towards the target area. Conversely, a lower success rate indicates denser obstacles, reducing ineffective target-oriented expansion and preventing local traps. After calculation, the collision detection success rate is reset to 0, and the next update interval is started. If the current iteration count is not an integer multiple of the update interval, the current target bias probability remains unchanged. During each node sampling process within each dynamic target bias sampling update interval, sampling is performed based on the currently used target bias probability to generate a... Uniformly distributed random numbers within the interval ,like If the target is selected correctly, the target point within the target area is used as the sampling node; otherwise, a node is randomly selected in free space according to a uniform distribution as the sampling node. The dynamic target bias sampling mechanism strengthens target guidance in open areas to accelerate convergence by statistically analyzing the density of environmental obstacles in real time, and enhances random exploration in dense obstacle areas to avoid local stagnation.

[0049] Step 4: Using an adaptive variable step size mechanism, the nearest node to the sampled node is searched in the random tree. The expansion step size is adjusted based on the distance between the nearest node and the obstacle, generating candidate new nodes. The specific implementation of the adaptive variable step size mechanism involves traversing the node set of the random tree, calculating the Euclidean distance between all nodes in the set and the current sampled node, and selecting the node with the shortest distance as the nearest node. The obstacle distance is obtained by directly querying a pre-generated obstacle distance field. The obstacle distance field is a matrix of the same size as the map, where each grid cell stores the Euclidean distance from the corresponding grid cell to the nearest obstacle boundary. Therefore, the query process only requires a simple matrix index lookup based on the node coordinates, resulting in extremely low computational overhead and providing accurate distance information for step size adjustment without adding extra computational burden. The ratio of obstacle distance to the basic step size is used to determine the nearest node. The current expansion step size is adaptively adjusted using a nonlinear mapping function. Specifically, the distance ratio is calculated, and an extended step size adjustment coefficient is generated through a nonlinear mapping function. The calculation formula is as follows: ,in, The exponential function is used; the adjustment principle of the nonlinear mapping function is that when the nearest node is close to the obstacle, the distance to the obstacle is small, resulting in a small distance ratio. At this time, the nonlinear mapping function... The value is large, making The value is relatively large, therefore Approaching zero, the expansion step size adaptively decreases to near the base step size, enabling fine expansion and safe obstacle avoidance within narrow areas near obstacles. When the nearest node is far from the obstacle, the obstacle distance is large, resulting in a large distance ratio. The value is small or even negative, making The value approaches 0, thus Approaching 1, the expansion step size is adaptively increased to close to 1. This enables rapid exploration and traversal of open areas far from obstacles, significantly improving planning efficiency. After determining the expansion step size, starting from the nearest node, the system expands along the unit direction vector pointing from the nearest node to the sampling node, generating candidate new nodes. The coordinate calculation formula for the candidate new nodes is as follows:

[0050]

[0051]

[0052] in, Let x be the x-coordinate of the candidate new node. The ordinate of the candidate new node; The x-coordinate of the nearest node, The y-coordinate of the nearest node; The x-coordinate of the sampling node, The vertical coordinate of the sampling node; Represents a node With nodes The Euclidean distance between them. After generating the coordinates of candidate new nodes, the coordinate values ​​are rounded, and the rounded coordinates are used as the positions of the candidate new nodes. The x-coordinates of the candidate new nodes are... and ordinate Rounding down the coordinates gives the position of the candidate new node. The rounding operation aims to unify the position coordinates of the candidate new node with the discrete coordinate system of the raster map to ensure the accurate execution of subsequent collision detection.

[0053] Step 5: Perform collision detection on the edges connecting the candidate new node and the nearest node. If there is no collision, the candidate new node is added to the random tree, and the nearest node is set as the current node. The collision detection pass count is updated. Otherwise, return to Step 3. The specific implementation of collision detection is as follows: After generating candidate new nodes, perform collision detection on the edges connecting the nearest node and the candidate new node to determine whether the edges intersect with obstacle areas in the 2D grid map. Since the working environment has been processed into a finite-size grid structure, collision detection is performed using discrete sampling. On the edges connecting the nearest node and the candidate new node, points are uniformly sampled at a preset detection interval, typically at a single pixel resolution of the grid map, and these points are used as detection points. The 2D grid map is queried, and the pixel value corresponding to each detection point is checked one by one. If any detection point falls into an obstacle area (i.e., the pixel value is 1), a collision is determined in this path expansion. If all detection points on the edges connecting the nearest node and the candidate new node are located in free space (i.e., the pixel values ​​are all 0), the edges are determined to meet the no-collision condition. When the detection result meets the collision-free condition, it indicates that the expansion based on adaptive step size is legal and safe. The candidate new node is then added to the node set of the random tree and officially becomes a new node that has been added to the random tree. Simultaneously, a connection edge is established between the nearest node and the candidate new node, and added to the edge set. The nearest node is designated as the "current node," serving as the starting point for backtracking upwards to find a better parent node. Crucially, the collision detection pass count in the dynamic target bias sampling mechanism needs to be updated at this point, increasing it by 1. This increase signifies that another collision-free expansion has been successfully completed within the current update cycle, indirectly reflecting a relatively open area, thus providing direct data support for dynamically increasing the target bias probability in step 3. Conversely, if the detection result indicates a collision, it means the current expansion direction has touched the obstacle boundary. The node expansion is abandoned, no candidate new node is added to the node set, no new connection edges are established, and the collision detection pass count remains unchanged; this is not considered a successful collision-free connection. Then, the process returns directly to step 3, initiating a new round of generating sampled nodes and the node expansion, parent node optimization, and tree topology reconnection process from steps 4 to 8.

[0054] Step 6: Starting from the current node, backtrack along the random tree towards the root node, searching for the farthest reachable parent node with a collision-free path to the new node being added to the random tree. Search and new nodes The specific implementation of finding the farthest reachable parent node with a collision-free connection path involves explicitly defining the current node determined in step 5. Starting from the current node, the backtracking process proceeds level by level along the constructed random tree topology towards the root node. During initialization, the current node itself is used as an initial candidate node, entering a step-by-step checking loop. The parent node of the current node is obtained through the inheritance relationship of nodes in the random tree. Collision detection is performed on the connection edges between the current node's parent node and the new node to determine if they intersect with obstacle regions. If the detection result is no collision, it indicates that the new node can safely bypass the current node and directly connect to its parent node. The current node's parent node is then selected as a new candidate node, and the state of the current node is updated to its parent node. The backtracking continues upward along the random tree topology, repeating the parent node acquisition and collision detection process, effectively expanding the parent node search range beyond the direct neighborhood. If the detection result is a collision, it indicates that the new node cannot safely connect to higher-level nodes. The backtracking operation is immediately stopped, and the last recorded safe, collision-free candidate node is the sought farthest reachable parent node. If the backtracking process continues until the starting node is reached, and after collision detection, it is found that the connection edge between the root node and the new node still satisfies the collision-free condition, then the root node is directly taken as the farthest reachable parent node, and the backtracking is terminated. By backtracking along the random tree topology, the farthest reachable parent node obtained not only ensures the physical connectivity with the new node, but also eliminates unnecessary short-distance turns in the early exploration path to the greatest extent by establishing long-distance direct connections across intermediate nodes. This provides a geometric anchor point with a wider field of view for the angle bisection method, thus laying the foundation for generating optimized paths with shorter path lengths and lower costs.

[0055] Step 7: Using the farthest reachable parent node as a reference, generate an optimized parent node using the angle bisection method and update the node connection relationships in the random tree. The specific implementation of the angle bisection method for generating optimized parent nodes is as follows: determine whether the obtained farthest reachable parent node is the starting node. If the farthest reachable parent node is equal to the starting node, since the starting node lacks a higher-level topological structure and cannot form the geometric conditions for angle optimization, the farthest reachable parent node is directly used as the optimized parent node of the new node. If the farthest reachable parent node is not equal to the starting node, an optimized parent node is generated using the angle bisection method. The core of this method lies in iteratively shrinking the boundary to bring nodes as close to obstacles as possible while ensuring no collisions. This eliminates redundant detours based on the triangle inequality principle, significantly shortening the path length and reducing the turning angle. The binary search iterative process is used to obtain the parent node of the farthest reachable parent node, denoted as the grandparent node. A triangle is constructed using the grandparent node, the farthest reachable parent node, and the new node as vertices; an angle is constructed using the grandparent node as a vertex and connecting the grandparent node to the farthest reachable parent node and the grandparent node to the new node to form two sides. Set two dynamic boundary points, including feasible boundary points. and infeasible boundary points Before the first iteration, currently feasible boundary points are initialized to the farthest reachable parent node, and currently infeasible boundary points are initialized to new nodes. Based on the angle bisector theorem in geometry, the intersection of the angle bisector and the opposite side within the current angle interval is calculated. ,in ,in , For the grandfather node To the current feasible boundary point distance, From the grandfather node To the current infeasible boundary point distance, For the grandfather node To the current feasible boundary point The distance to the current infeasible boundary point The ratio of distances. Find the intersection point. Then, consider the grandfather node and its intersection. Collision detection is performed on the connecting edges between them; if the no-collision condition is met, it means that the direction of inward contraction along the angle bisector is safe, and the current feasible boundary point is updated to the intersection point. It then approaches the edge of the obstacle; if a collision occurs, it means that the inward contraction direction along the angle bisector is blocked by the obstacle, and the currently infeasible boundary point is updated to an intersection point. ; Calculate the intersection point multiple times Collision detection and boundary point updates are performed, and the angle is updated each time a boundary point is moved. Shrink once, until the corner Stop when the angle is less than the set angle bisection threshold of 2 degrees, and obtain the updated feasible boundary points; then perform angle... The binary search iteration constructs an angle by using the new node as the vertex, connecting the new node to the updated feasible boundary point, and forming two edges between the new node and its grandparent node. Initialize feasible boundary points to the updated feasible boundary points, and initialize infeasible boundary points to their grandparent nodes; calculate the intersection of the angle bisector and the opposite side within the current angle interval. But at this time , To start from the new node To the current feasible boundary point distance, To start from the new node To the current infeasible boundary point Distance, and for new nodes and intersections Collision detection is performed on the connecting edges between them. If the connecting edges meet the collision-free condition, the current feasible boundary points are updated to intersection points. If a collision occurs between connecting edges, the currently infeasible boundary points are updated to intersection points. Calculate the intersection point multiple times Collision detection and boundary point updates are performed, and the angle is updated each time a boundary point is moved. Shrink once, until the corner Stop when the angle bisector is less than the threshold of 2 degrees, and use the intersection of the current angle bisector and the opposite side as the optimized candidate parent node. For example... Figure 2 The diagram shown illustrates the iterative bisection process of the angle bisection method, with the grandfather node as the reference point. The furthest reachable parent node With new nodes Forming a triangle, with the grandparent node as the vertex of each angle. and the angle with the new node as the vertex Perform iterative binary search. In each iteration, calculate the intersection point of the current angle bisector and the opposite side. And perform collision detection on the connecting edges: if there is no collision, move the feasible boundary point to the intersection. Otherwise, move the infeasible boundary point to the intersection point. As the iterations continue, the angle range gradually shrinks until it falls below a preset threshold. Figure 2 The principle of the angle bisection method to generate optimized parent nodes by progressively approximating the obstacle boundary is clearly explained. The angle bisection method ensures that the final generated node is both close to the obstacle edge and satisfies absolute safe connectivity.

[0056] Update the node connections in the random tree. If the optimized parent candidate node is not empty and not equal to the farthest reachable parent node, insert the optimized parent candidate node as the optimized parent node of the new node into the random tree, add the optimized parent candidate node to the node set, establish connections from the grandparent node to the optimized parent candidate node and from the optimized parent candidate node to the new node, and disconnect the original connections, i.e., discard the long, circuitous old path. If the optimized parent candidate node is empty or equal to the farthest reachable parent node, it indicates that the space is too narrow or there is no optimization space. In this case, directly use the farthest reachable parent node as the optimized parent node of the new node, add the new node to the node set, and establish a corresponding single connection edge, keeping the connection edge between the farthest reachable parent node and the new node unchanged. Figure 3 The diagram shows the result of generating optimized parent nodes using the angle bisection method. The grandfather node in the diagram... The furthest reachable parent node With new nodes Forming an initial triangle, passing through angle and angle After iterative binary search, an optimized parent node is generated. (Solid dots in the diagram). Optimize the parent node so it is flush with the obstacle boundary, establish new connections from the grandparent node to the optimized parent node (solid line), and from the optimized parent node to the new node (solid line), while disconnecting the original path to the furthest reachable parent node (dashed line). The angle bisection method allows the path to be closer to the obstacle, thus effectively shortening the path length and reducing turning angles.

[0057] Step 8: Perform reconnection operations on the nodes in the random tree to optimize the tree topology. Specifically, the reconnection operation is the core of ensuring the asymptotic optimality of the method, aiming to use newly added nodes to find lower-cost paths for surrounding nodes, thereby efficiently propagating cost reduction within a local area and continuously optimizing the topology of the entire random tree. The specific implementation of reconnection is as follows: if the angle bisection method is used to generate optimized parent nodes, these are the optimized parent node candidates. Using the new node as the center, search for all nodes already existing in the random tree within a preset neighborhood search radius to form a neighborhood node set; traverse the neighborhood node set and evaluate the cost of each neighboring node; calculate the potential path cost if starting from the initial node, changing the original path, and instead reaching a neighboring node via the new node. The calculation formula is: ,in This indicates the path from the starting node to the new node. The current cumulative path length, Indicates a new node With nodes The Euclidean distance between them; compare the potential path cost with the cumulative cost of reaching neighboring nodes from the starting node via the existing paths in the current random tree. If Less than This demonstrates that using the new node as an intermediary can yield a shorter local path. Collision detection is performed on the edges connecting the new node and its neighbors. If the edges satisfy the no-collision condition, then a random tree topology reconnection is formally performed on the neighbors. The edges connecting the neighbors to their original parent nodes are removed from the edge set, the parent node of the neighbors is updated to the new node, and a new edge is added. Updated to To ensure global consistency in path cost calculation across the entire random tree, the cost reduction benefit must be propagated backwards after updating the cost of the current neighboring node. Therefore, a recursive approach is used to process each child node of the neighboring node. Update the cumulative cost of child nodes from the starting node to neighboring nodes. The process recursively updates the path cost layer by layer down the random tree topology until all descendant nodes on the branch rooted at a neighboring node are assigned the latest and lower cumulative cost. After completing the reconnection of a single neighboring node and updating the cumulative cost to its descendant nodes, the next node in the neighboring node set is checked. The reconnection operation ends when all the searched neighboring nodes have been processed in sequence. The reconnection process allows newly generated nodes to continuously improve the existing random tree topology, thereby achieving continuous optimization of path cost.

[0058] Step 9: When a node in the random tree is located in the target region, generate and output a collision-free path from the starting node to the target region based on the node connection relationships in the random tree; when the maximum number of iterations is reached and no node in the random tree is located in the target region, output a path planning failure message; when no node in the random tree is located in the target region and the maximum number of iterations has not been reached, return to step 3. The specific implementation of the path output is as follows: after each successful addition of a new node to the random tree and completion of the reconnection operation, search the node set of the random tree to see if its coordinates are located within the preset target region. Nodes that meet the conditions form a target candidate node set; if the target candidate node set is not empty, it means that the random tree has successfully connected the starting node and the target region. To obtain the optimal path, select a target node with the minimum cumulative cost from the target candidate node set. Starting from the target node, use the connection relationships stored in the random tree topology to visit the parent node of the target node level by level until tracing back to the starting node, thus obtaining the path node sequence from the target node to the starting node. The path node sequence from the target node to the starting node is reversed to obtain the forward path node sequence from the starting node to the target region. The connecting paths between adjacent nodes are connected sequentially to form a continuous, collision-free complete path, which is then output, and the iteration terminates. If the target candidate node set is empty, it means that the current random tree has not yet reached the target region. At this time, it is necessary to check whether the current iteration count has reached the preset maximum iteration count. If the current iteration count has reached the preset maximum iteration count, it means that no feasible solution has been found within the given computing resources, so the path planning failure information is output, and the iteration terminates. If the target candidate node set is empty and the current iteration count has not reached the maximum iteration count, it means that there is still room for exploration. The current random tree topology state is retained, and the process returns to step 3 to continue the next round of sampling, expansion, and optimization iterations.

[0059] In the implementation of this invention, the algorithm parameters are determined through experimental calibration to ensure the stability and superiority of the path planning performance. Specifically, a 500×500 two-dimensional grid map environment is constructed in the simulation experiment, and an urban environment is selected as the test environment, such as... Figure 4 As shown. Figure 6As shown, the horizontal axis represents the parameter level number (1, 2, 3, 4), and the vertical axis represents the average fitness response value. The average fitness response value on the vertical axis is based on the comprehensive fitness function. Calculated. Among them, and The first Average runtime and average path cost of the group parameter combination , , , These represent the minimum and maximum values ​​of the corresponding indicators for each combination of algorithm parameters tested; the curve on the left represents the basic step size. The response trend, with the right curve representing the neighborhood search radius. The response trend; Horizontal lines 1-4 correspond to 5, 15, 25, and 35 pixels respectively; Levels 1-4 correspond to pixels of 45, 55, 65, and 75 respectively. During the algorithm parameter determination process, multiple sets of experiments were conducted to compare the base step size and neighborhood search radius parameters. Specifically, under the same environment, path planning experiments were repeatedly performed with different parameter combinations, and the average path cost and average running time were statistically analyzed, resulting in a graph showing the parameter change trend. The curve on the left represents the base step size. The lowest average fitness response value was obtained at level 3, and the curve on the right represents the neighborhood search radius. The lowest value is obtained at level 2. This indicates that when Take the 25 pixels corresponding to horizontal 3. When the value corresponding to level 2 is 55 pixels, the overall performance of this invention is optimal. The average fitness response value reflects both path quality and computational efficiency; the lowest value indicates that the method of this invention has achieved a better balance between the two.

[0060] This invention provides an adaptive path planning method for mobile robots in complex environments, namely an Adaptive Angle Bisection Fast Extended Random Tree Star (AD-RRT*) algorithm, which achieves a good balance between path quality and computational efficiency. The update period in the dynamic target bias sampling mechanism is set to 10 iterations. Experimental verification shows that the parameters achieve a good trade-off between responding to environmental changes and maintaining stability. If the update period is too small, the target bias will fluctuate frequently, affecting stability; if the update period is too large, the responsiveness to environmental changes will be reduced. In summary, the values ​​of each parameter in this invention are determined based on experimental calibration results, ensuring good adaptability and stability in complex environments. Those skilled in the art can adjust the parameters appropriately according to specific application scenarios.

[0061] like Figures 7 to 10The figures show the path planning results of the following algorithms in the main diagonal direction of an urban environment: Quick Expanded Random Tree Star (Q-RRT*) based on the triangle inequality, Quick Expanded Random Tree Star (F-RRT*) based on the bisection method, Quick Expanded Random Tree Star (Hybrid-RRT*) based on hybrid sampling, and Quick Expanded Random Tree Star (GAO-RRT*) based on genetic optimization. All four experiments were conducted under the same urban environment map, with the same starting and target nodes. In the figures, black areas represent obstacle areas, white areas represent free space, gray nodes and their connecting lines represent the expanded trees formed during the algorithm's search process, and black solid lines represent the collision-free paths ultimately generated by the corresponding comparative algorithms. For example, ... Figure 7 As shown, Q-RRT* can complete path search from the starting point to the target point, but the expanded tree has many redundant exploration branches in areas with dense obstacles. Although the final path is generally feasible, there are still local redundant turns, and the smoothness and compactness of the path can be further improved. Figure 8 As shown, the F-RRT* algorithm can complete path search, but the expanded tree has many branches, the search range is relatively scattered, and the final path has certain turns and detours. Figure 9 As shown, the Hybrid-RRT* algorithm forms a relatively dense extended tree in local areas, exhibiting some repeated exploration, and the final path still has some redundant transitions. Figure 10 As shown, the GAO-RRT* algorithm can also generate feasible paths from the starting node to the target node, but in complex obstacle environments, the tree structure expansion is still quite obvious, and there is still room for further optimization of path smoothness and compactness.

[0062] like Figure 11 The diagram shows the path planning results of the AD-RRT* invention in the main diagonal direction of an urban environment. Different icons and line types are used to distinguish each element: the starting node is marked with a circle, the target area with a square, the exploration branches generated by the random tree during the search process are represented by thin solid lines, and the collision-free path finally output by the algorithm is represented by a thick solid line. Figure 11 As can be seen, the collision-free path generated by this invention closely follows the obstacle boundary, with no obvious redundant turns or jagged lines throughout, resulting in a smooth and compact path. Figures 7 to 10 Compared with the paths generated by the comparative algorithm, the path of the present invention has a shorter detour distance and a smaller turning angle, which fully demonstrates the advantages of the angle binary search strategy and the search for the farthest reachable parent node in shortening the path length and improving the path smoothness.

[0063] For example Figure 5 In the indoor office environment shown, the path planning result of this invention in the vertical axis direction is as follows: Figure 12The diagram shows the path planning results of the AD-RRT* invention in the vertical axis direction of an indoor office environment. The starting node is marked with a circle, the target area with a square, the exploration branches of the random tree are represented by thin solid lines, and the final collision-free path is represented by a thick solid line. From... Figure 12 As can be seen, in an indoor office environment filled with narrow corridors and dead ends, the collision-free path generated by this invention still closely follows the boundaries of obstacles, with no obvious redundant turns or jagged lines throughout, resulting in a smooth and compact path. This is thanks to the adaptive variable step size mechanism, which automatically reduces the step size in narrow areas to avoid collisions, while automatically increasing the step size in open areas to maintain exploration efficiency, thereby obtaining a high-quality feasible path in complex indoor environments.

[0064] To quantitatively evaluate the path planning performance of the present invention AD-RRT* compared with the comparative algorithms Fast Expanded Random Tree Star RRT*, Fast Expanded Random Tree Star Q-RRT* based on the triangle inequality, Fast Expanded Random Tree Star F-RRT* using the bisection method, Fast Expanded Random Tree Star Hybrid-RRT* using hybrid sampling, and Optimized Fast Expanded Random Tree Star GAO-RRT*, in the following... Figure 4 Thirty independent and repeated experiments were conducted along the main diagonal, secondary diagonal, horizontal axis, and vertical axis of the urban environment shown. The running time, path cost, path smoothness, and number of nodes of each algorithm were statistically analyzed, and the results are shown in Tables 1 and 2.

[0065] Table 1. Statistical results of running time and path cost for each algorithm in simulation experiments.

[0066]

[0067] Table 2. Statistical results of path smoothness and number of nodes for each algorithm in simulation experiments.

[0068]

[0069] like Figure 13The figure shows a violin plot of the running time of the present invention and various comparison algorithms (RRT*, Q-RRT*, F-RRT*, Hybrid-RRT*, GAO-RRT*) in an urban environment along the main diagonal. The horizontal axis represents different algorithms, the vertical axis represents running time, the width of the violin plot reflects the data distribution density, the middle horizontal line is the median, and the boxes represent the interquartile range. Based on the data in Table 1, the mean runtime of the AD-RRT* algorithm of this invention is 0.30 seconds, the standard deviation is 0.14 seconds, and the median is approximately 0.31 seconds. In comparison, the mean runtime of the Q-RRT* algorithm is 0.16 seconds (standard deviation 0.14 seconds), the mean runtime of the F-RRT* algorithm is 0.40 seconds (standard deviation 0.29 seconds), the mean runtime of the GAO-RRT* algorithm is 0.37 seconds (standard deviation 0.22 seconds), and the mean runtime of the Hybrid-RRT* algorithm is 0.18 seconds (standard deviation 0.14 seconds). Figure 13 It can be seen that the present invention has a narrow running time distribution range, short bins, few outliers, and the highest degree of data concentration, indicating that the present invention can maintain high efficiency and excellent stability while ensuring path quality.

[0070] like Figure 14 The diagram shows the path cost of the present invention and various comparative algorithms along the main diagonal in an urban environment. The vertical axis represents path cost, with smaller values ​​indicating shorter paths. Based on the data in Table 1, the mean path cost of the present invention (AD-RRT*) is 579.66 pixels, with a standard deviation of 41.26. Among the comparative algorithms, the mean path cost is 628.14 pixels for RRT*, 621.74 pixels for Q-RRT*, 598.25 pixels for F-RRT*, 622.39 pixels for Hybrid-RRT*, and 603.93 pixels for GAO-RRT*. The present invention has the lowest mean path cost, approximately 3.1% lower than F-RRT* and approximately 4.0% lower than GAO-RRT*. The violin diagram shows the shortest box, the lowest median, and no high-value outliers, indicating that the present invention can stably generate shorter paths.

[0071] like Figure 15The image shows a violin plot of path smoothness in the main diagonal direction of an urban environment, comparing the present invention with various comparative algorithms. Path smoothness is measured by the sum of all turning angles along the path; a smaller value indicates a smoother path. Based on the data in Table 2, the mean path smoothness of the present invention (AD-RRT*) is 4.62 degrees, with a standard deviation of 1.31. Among the comparative algorithms, the mean path smoothness is 7.66 degrees for RRT*, 5.74 degrees for Q-RRT*, 4.98 degrees for F-RRT*, 7.47 degrees for Hybrid-RRT*, and 4.86 degrees for GAO-RRT*. The present invention has the lowest mean path smoothness, approximately 7.2% lower than F-RRT* and approximately 4.9% lower than GAO-RRT*. The violin plot shows a short box, a low median, and no high-value outliers, indicating that the path generated by the present invention has the fewest turning angles and the best smoothness.

[0072] like Figure 16 The diagram shows the number of path nodes in the main diagonal direction of the present invention and various comparative algorithms in an urban environment. The number of nodes refers to the number of nodes contained in the path; a smaller value generally indicates a more compact path, but too few nodes may indicate deviation from obstacle boundaries. Based on the data in Table 2, the mean number of nodes in the AD-RRT* algorithm of the present invention is 204.97, with a standard deviation of 94.75. Among the comparative algorithms, the mean number of nodes in RRT* is 216.17, Q-RRT* is 213.50, F-RRT* is 303.17, Hybrid-RRT* is 205.37, and GAO-RRT* is 282.50. The mean number of nodes in the present invention is significantly lower than that of F-RRT* (reduced by approximately 32.4%) and GAO-RRT* (reduced by approximately 27.5%), similar to Hybrid-RRT* but with a lower path cost. The violin diagram in the figure shows that the boxes are relatively short and concentrated, indicating that the present invention effectively controls the number of nodes while keeping the path close to the obstacles, achieving a good balance between path compactness and smoothness.

[0073] In summary, this invention effectively solves the path planning problem for mobile robots in complex environments, achieving an excellent balance between computation time and path quality, and has the positive effects of improving path planning efficiency and quality, enhancing path smoothness and executability.

Claims

1. An adaptive path planning method for a mobile robot in a complex environment, characterized in that, Includes the following steps, Step 1: Construct the configuration space for mobile robot path planning, divide the obstacle area and free space, and set the starting node and target area; Step 2: Initialize the random tree with the starting node as the root node and set the algorithm running parameters; Step 3: Through a dynamic target bias sampling mechanism, sampling nodes are generated during the path expansion process by adjusting the target bias probability based on the number of collision detection passes between nodes according to the collision detection statistics. Step 4: Using an adaptive variable step size mechanism, search for the node closest to the sampling node in the random tree as the nearest node, and adjust the expansion step size according to the distance between the nearest node and the obstacle to generate candidate new nodes; Step 5: Perform collision detection on the edges connecting the candidate new node and the nearest node; if there is no collision, add the candidate new node to the random tree and set the nearest node as the current node, and update the collision detection success count; otherwise, return to step 3. Step 6: Starting from the current node, backtrack along the random tree towards the root node to search for the farthest reachable parent node with a collision-free path to the new node to be added to the random tree. Step 7: Using the farthest reachable parent node as a reference, generate an optimized parent node using the angle bisection method, and update the node connection relationships in the random tree; Step 8: Perform reconnection operations on the nodes in the random tree to optimize the tree topology; Step 9: When there is a node in the target region in the random tree, generate and output a collision-free path from the starting node to the target region based on the node connection relationship in the random tree; When the maximum number of iterations is reached and there are no nodes in the target region in the random tree, output a path planning failure message; when there are no nodes in the target region in the random tree and the maximum number of iterations has not been reached, return to step 3.

2. The adaptive path planning method for a mobile robot in a complex environment according to claim 1, characterized in that, In step 1, a two-dimensional configuration space for mobile robot path planning is constructed. Define the obstacle region as Free space is defined as Set the starting node With the target area; The configuration space is rasterized, and obstacle distance fields are generated in advance.

3. The adaptive path planning method for a mobile robot in a complex environment according to claim 2, characterized in that, In step 2, starting with the node As the root node, the random tree is initialized as follows: , where the set of nodes Initially, only the starting node is included. edge set The initial set is empty; the algorithm's parameters include the maximum number of iterations and the basic step size. Neighborhood search radius The dynamic target bias sampling update interval and angle binary threshold are used to initialize the number of collision detection passes. .

4. The adaptive path planning method for a mobile robot in a complex environment according to claim 3, characterized in that, In step 3, the dynamic target bias sampling mechanism is implemented by setting the dynamic target bias sampling update interval to 10 iterations. Before the first iteration, a hyperbolic tangent function is used. Calculate the target bias probability The initial value; when the current iteration number reaches an integer multiple of the dynamic target bias sampling update interval, the hyperbolic tangent function is used based on the number of collision detection passes recorded within the current dynamic target bias sampling update interval. Calculate the target bias probability for the next dynamic target bias sampling update interval, and map the number of collision detection passes to... The target offset probability increases when the number of collision detection passes is large, indicating that the current environment is relatively open; when the number of collision detection passes is small, the target offset probability decreases, indicating that the current environment is densely obstructed. After the calculation is completed, the number of collision detection passes is reset to 0; otherwise, the current target offset probability is used. During each node sampling process within each dynamic target bias sampling update interval, sampling is performed based on the currently used target bias probability to generate a... random numbers within the interval ,like If the target point within the target area is selected, then the target point within the target area will be used as the sampling node; otherwise, a node will be randomly selected in free space according to a uniform distribution as the sampling node.

5. The adaptive path planning method for a mobile robot in a complex environment according to claim 4, characterized in that, In step 4, the adaptive variable step size mechanism is implemented by searching for the nearest node with the shortest Euclidean distance to the sampled node in the node set of the random tree, and obtaining the obstacle distance corresponding to the location of the nearest node by querying the pre-generated obstacle distance field. The obstacle distance field is a matrix with the same size as the map. Each grid cell in the obstacle distance field stores a value representing the Euclidean distance from the corresponding grid cell's location to the nearest obstacle boundary. This distance is determined by the obstacle distance and the base step size. The ratio is calculated by adaptively adjusting the current expansion step size using a nonlinear mapping function; the distance ratio is then calculated. ; Generate extended step size through nonlinear mapping function The adjustment factor is calculated using the following formula: ,in It is an exponential function; when the nearest node is close to the obstacle, the distance to the obstacle is small, resulting in a small distance ratio. In this case, the nonlinear mapping function... The value is large, making The value is relatively large, therefore Approaching 0, the expansion step size adaptively decreases to near the base step size, enabling fine expansion and obstacle avoidance within narrow areas close to obstacles; when the nearest node is far from the obstacle, the obstacle distance is large, resulting in a large distance ratio, at which point... The value is small or even negative, making The value approaches 0, thus Approaching 1, the expansion step size is adaptively increased to close to 1. This enables rapid exploration and traversal of open areas far from obstacles; after determining the expansion step size, starting from the nearest node, proceeding along... The unit direction vector pointing to the sampling node is expanded to generate candidate new nodes. The coordinates of the candidate new nodes are calculated using the following formula: , in, Let x be the x-coordinate of the candidate new node. The ordinate of the candidate new node; The x-coordinate of the nearest node, The y-coordinate of the nearest node; The x-coordinate of the sampling node, The vertical coordinate of the sampling node; Represents a node With nodes The Euclidean distance between them; after generating the coordinates of candidate new nodes, the coordinate values ​​are rounded, and the rounded coordinates are used as the positions of the candidate new nodes. and ordinate Round down to the nearest integer to obtain the coordinates of the candidate new node, thus unifying the position coordinates of the candidate new node with the discrete coordinate system of the raster map.

6. The adaptive path planning method for a mobile robot in a complex environment according to claim 5, characterized in that, In step 5, the specific process of collision detection is as follows: after generating candidate new nodes, collision detection is performed on the connecting edges between the nearest node and the candidate new nodes to determine whether the connecting edges intersect with the obstacle area. Collision detection is performed using a discrete sampling method. Points are evenly sampled at preset intervals along the edge connecting the nearest node and the candidate new node. These sampled points are used as detection points, and each point is checked against an obstacle. If any detection point falls into an obstacle area, a collision is considered to have occurred on the extended path. If all detection points along the edge connecting the nearest node and the candidate new node are in free space, the edge is considered to meet the collision-free condition. When the detection results meet the collision-free condition, the candidate new node is added to the node set of the random tree, becoming a new node added to the random tree. Establish a connection edge between the nearest node and the candidate new node, and add the connection edge between the nearest node and the candidate new node to the edge set; Update the collision detection pass count by incrementing it by 1; when the detection result indicates a collision, abandon the current node expansion, do not add the candidate new node to the node set, do not establish any new connection edges, and keep the collision detection pass count unchanged.

7. The adaptive path planning method for a mobile robot in a complex environment according to claim 6, characterized in that, In step 6, search for new nodes. The specific implementation of the furthest reachable parent node with a collision-free connection path is as follows: Starting from the current node, backtrack along the random tree towards the root node, using the current node as the initial candidate node; check each parent node level by level to obtain the parent node of the current node, and then compare the parent node of the current node with the new node. Collision detection is performed on the connecting edges between them; If there is no collision, the parent node of the current node is selected as the new candidate node, and the current node is updated to be the parent node of the current node, and the backtracking continues upward; if there is a collision, the backtracking stops, and the current candidate node is the farthest reachable parent node. If we backtrack all the way to the root node, and the root node and the new node... If there are no collisions between the connecting edges, then the root node is the farthest reachable parent node.

8. The adaptive path planning method for a mobile robot in a complex environment according to claim 7, characterized in that, In step 7, the specific implementation of the angle bisection method to generate the optimized parent node is as follows: if the farthest reachable parent node is equal to the starting node, the farthest reachable parent node is used as the new node. Optimize the parent node; If the farthest reachable parent node is not equal to the starting node, then the parent node of the farthest reachable parent node is denoted as the grandparent node. And based on the grandparent node, the furthest reachable parent node, and the new node Construct triangles for the vertices; using the grandparent node as the vertex, connect the grandparent node to the farthest reachable parent node, and the grandparent node to the new node. Forming two sides to construct an angle Set two dynamic boundary points, including feasible boundary points. and infeasible boundary points Initialize currently feasible boundary points as the farthest reachable parent node, and initialize currently infeasible boundary points as new nodes. Calculate the intersection point of the angle bisector and the opposite side within the current angle interval. ,in , For the grandfather node To the current feasible boundary point distance, From the grandfather node To the current infeasible boundary point distance, For the grandfather node To the current feasible boundary point The distance to the current infeasible boundary point The ratio of distances between the grandfather node and the intersection point. Collision detection is performed on the connecting edges between them. If the no-collision condition is met, the current feasible boundary points are updated to... If a collision occurs, the currently infeasible boundary points will be updated to... ; Calculate the intersection point multiple times Collision detection and boundary point updates are performed, and the angle is updated each time a boundary point is moved. Shrink once, until the corner Stop when the value is less than the angle bisection threshold, and obtain the updated feasible boundary points; use the new node... For vertices, connect new nodes With feasible boundary points and new nodes Forming two edges with the grandfather node to construct an angle Initialize feasible boundary points to the updated feasible boundary points, and initialize infeasible boundary points to their grandparent nodes. Calculate the intersection of the angle bisector and the opposite side within the current angle interval. ,in , To start from the new node To the current feasible boundary point distance, To start from the new node To the current infeasible boundary point distance, To start from the new node To the current feasible boundary point The distance to the current infeasible boundary point The ratio of distances, and for new nodes Intersection Collision detection is performed on the connecting edges between them. If the connecting edges meet the collision-free condition, the current feasible boundary points are updated to... If a collision occurs between connecting edges, the currently infeasible boundary points will be updated to... ; Calculate the intersection point multiple times Collision detection and boundary point updates are performed, and the angle is updated each time a boundary point is moved. Shrink once, until the corner Stop when the angle is less than the angle bisector threshold, and use the intersection of the current angle bisector and the opposite side as the optimized candidate parent node. If the optimized candidate parent node is not empty and is not equal to the farthest reachable parent node, then use the optimized candidate parent node as the new node. The optimized parent node insertion random tree is constructed by adding the optimized parent node candidate to the node set, establishing connections between the grandparent node and the optimized parent node candidate, and between the optimized parent node candidate and the new node. The connection edges are removed, and the original connections are broken; if the optimized parent node candidate is empty or equal to the farthest reachable parent node, then the farthest reachable parent node is used as the new node. The parent node is optimized while maintaining the original connection relationship.

9. The adaptive path planning method for a mobile robot in a complex environment according to claim 8, characterized in that, In step 8, the specific implementation of reconnection is as follows: using the new node... Centered on the search area, search for neighboring nodes within the search radius. For each neighboring node... If starting from the initial node and passing through the new node Potential path cost of a path to a neighboring node It is less than the cumulative cost of starting from the starting node and traversing the existing paths in the current random tree to the neighboring nodes. , ,in This indicates the path from the starting node to the new node. The current cumulative path length, Indicates a new node With nodes The Euclidean distance between them, and the new node If there are no collisions between the edges connecting to neighboring nodes, update the parent node of the neighboring nodes to the new node. and will Updated to Recursively process each child node of the neighboring nodes. Update the cumulative cost of child nodes from the starting node to neighboring nodes. The process recursively updates the nodes downwards along the tree structure until all descendant nodes have been updated. After reconnecting the neighboring nodes, the process continues to check the next node in the set of neighboring nodes. The reconnection operation ends when all neighboring nodes have been processed.

10. The adaptive path planning method for a mobile robot in a complex environment according to claim 9, characterized in that, The specific implementation of the path output is as follows: Search for nodes located within the target region in the node set of the random tree to form a target candidate node set; if the target candidate node set is not empty, select a target node from the target candidate node set, start from the target node, visit the parent node of the target node level by level until the starting node is reached, and obtain the path node sequence from the target node to the starting node. Reverse the node sequence to obtain the path node sequence from the starting node to the target region. Connect the connecting paths between adjacent nodes in sequence to form a collision-free complete path and output it, and then terminate the iteration. If the target candidate node set is empty and the current iteration count has reached the preset maximum iteration count, then output a path planning failure message and terminate the iteration. If the target candidate node set is empty and the maximum number of iterations has not been reached, return to step 3 to continue iterating.