An Automatic Return-to-Home Method for Unmanned Aerial Vehicles Based on Global Topology Map and Graph Search Algorithm
By optimizing the UAV return path using a global topology map and graph search algorithm and Dijkstra's algorithm, the path planning problem in dynamic obstacles and complex environments was solved, enabling UAVs to return safely and efficiently in complex environments.
Patent Information
- Application Number
- CN202510604246.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-12
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2045-05-12
AI Technical Summary
Existing UAV autonomous return-to-home technology suffers from problems such as non-real-time path planning, insufficient efficiency in topology modeling, imbalance in multi-objective optimization, and insufficient depth of sensor fusion when facing dynamic obstacles and complex environments, resulting in low return-to-home success rate and insufficient environmental awareness.
A global topology map and graph search algorithm are adopted. A dynamically updated topological connectivity graph is generated through a probabilistic grid map. The Dijkstra algorithm is used for path search, and the path is optimized by B-spline curves. Dynamic constraints and obstacle penalties are introduced to achieve comprehensive optimization of path smoothness, flight time and safety.
It improves the path planning capability and dynamic adaptability of UAVs in complex environments, ensures the safety and efficiency of the return path, can respond to environmental changes in real time and avoid collisions, and enhances the reliability and robustness of the system.
Smart Images

Figure CN120540331B_ABST
Abstract
Description
Technical Field
[0001] This invention designs an autonomous return method for multi-rotor unmanned aerial vehicles (UAVs), specifically involving an automatic return method based on a global topology map and graph search algorithm. Background Technology
[0002] With the widespread application of drones in logistics, agriculture, emergency rescue, and surveying, the reliability and environmental adaptability of their autonomous return-to-home technology have become core issues restricting the industry's development. Traditional return-to-home path planning methods mainly suffer from the following technical shortcomings:
[0003] Limitations of static environment assumptions: based on While path planning techniques based on graph search algorithms such as Dijkstra's algorithm possess global optimality in structured static environments, they cannot respond in real time to dynamic obstacles and sudden environmental changes. For example, Chinese patent literature discloses a method, device, and storage medium for autonomous return-to-home decision-making for unmanned aerial vehicles [Application No.: 202311135635.8, Publication No.: CN117075623A], which proposes a hierarchical response mechanism for communication status, but does not solve the problem of real-time avoidance of dynamic obstacles.
[0004] Insufficient efficiency in topology modeling: Existing dynamic topology graph construction methods, such as the UAV return-to-home method, equipment, UAV, and storage medium disclosed in Chinese patent literature [Application No.: 201980012461.1, Publication No.: CN111742276A], rely on grid map discretization modeling, leading to an exponential increase in computational complexity, making it difficult to meet the real-time path update requirements in complex urban environments. Furthermore, the lack of embedded modeling of topology nodes with UAV dynamic constraints easily generates unflyable paths.
[0005] Multi-objective optimization imbalance: Traditional methods often employ single-objective optimization, neglecting the coupling relationship between flight time, energy efficiency, and path smoothness. A Chinese patent document discloses a method and system for UAV return-to-home [Application No.: 201510239862.4, Publication No.: CN104881039A]. While the proposed safe return path selection mechanism incorporates historical trajectory safety range constraints, it fails to integrate battery degradation models and aerodynamic performance parameters, resulting in a significant decrease in return-to-home success rate in low-battery scenarios.
[0006] Insufficient sensor fusion depth: Existing technologies, such as the Chinese patent document disclosing a method, device, equipment, and storage medium for UAV return-to-home [Application No.: 202210316184.7, Publication No.: CN114740885A], largely rely on single GPS positioning, which easily leads to positioning drift in areas with signal obstruction. Although some solutions introduce visual SLAM-assisted positioning, they do not achieve tight-coupled data fusion of multimodal sensors, resulting in insufficient environmental awareness.
[0007] To address the aforementioned technical bottlenecks, the industry urgently needs an autonomous return method that integrates dynamic environment perception, real-time topology optimization, and multi-constraint decision-making. Summary of the Invention
[0008] An automatic return-to-home method for unmanned aerial vehicles (UAVs) based on a global topology map and graph search algorithm, characterized by the following steps:
[0009] The global traversable area topology connectivity graph step is used to generate a dynamically updated topology connectivity graph based on a probabilistic grid map. The topology connectivity graph is constructed by generating convex hulls and connecting overlapping area nodes. The current position of the UAV and the planned trajectory points are used as seeds to generate constraint convex hulls, and the geometric center of the overlapping part between convex hulls is used as a topology node.
[0010] The return path search step is used to search for the globally optimal path from the current position of the UAV to the return point in the topological connected graph using a graph search algorithm, wherein the graph search algorithm is Dijkstra's algorithm, including initializing the starting node, priority queue processing and neighborhood expansion operation;
[0011] The return path optimization step is used to optimize the global optimal path into a smooth trajectory that conforms to the dynamic constraints of the UAV. It generates a B-spline trajectory by truncating a local path and optimizes its smoothness, flight time and obstacle avoidance distance.
[0012] The return path error handling steps are used to regenerate the convex hull, update the topological connectivity graph, and degrade to a lower level when a path collision is detected. The algorithm searches for alternative paths.
[0013] Preferably, the method for constructing the globally traversable region topology connectivity graph includes the following steps:
[0014] Step 1: Determine the positional constraints of obstacles and unknown areas based on the probabilistic grid map;
[0015] Step 2: Generate an initial convex hull using the drone's current position or planned trajectory points as seeds;
[0016] Step 3: When the drone trajectory exceeds the current convex hull range, generate a new convex hull using the new point on the trajectory as the seed, and ensure that there is an overlapping area between the old and new convex hulls;
[0017] Step 4: Take the geometric center of the overlapping region as a topological node, and connect different overlapping nodes of the same convex hull with edges to form a dynamically expanding topological connected graph.
[0018] The above technical solution enables dynamic updating of the topology connectivity graph to cope with the constantly changing environmental conditions during UAV flight. Specifically, step 1 models obstacles and unknown areas based on a probabilistic grid map, thereby accurately identifying passable and restricted areas, providing basic data support for subsequent path planning and optimization. Step 2 generates an initial convex hull using the UAV's current position or planned trajectory points, ensuring high initial accuracy in the initial construction of the topology graph. Step 3 further optimizes the dynamics of the topology graph. When the UAV's flight trajectory changes and exceeds the range of the current convex hull, the new trajectory points will serve as seeds for generating a new convex hull. This strategy not only enhances the real-time performance and flexibility of path planning but also ensures overlapping areas between the old and new convex hulls, thus maintaining the continuity and stability of the topology graph. Step 4 further expands the usable area and coverage of the topology graph by using the geometric center of the overlapping area as a topology node and establishing connecting edges. This process effectively avoids gaps or dead ends in the path planning process and allows the topology connectivity graph to expand and adjust in real time, thereby better adapting to dynamic obstacles or environmental changes that the UAV may encounter during flight.
[0019] In summary, the method for constructing the global traversable area topology connectivity graph not only improves the path planning capability of UAVs in complex environments, but also enhances their adaptability to dynamic changes during flight, enabling UAVs to safely and quickly complete their return mission in unknown or constantly changing environments.
[0020] Preferably, the Dijkstra algorithm execution steps for the return path search step include:
[0021] Step 1: Initialization phase: Set the node closest to the drone's current position as the starting node, with its cumulative cost value g(start) = 0, and the cost values of the other nodes are infinite;
[0022] Step 2: Loop through the top node of the priority queue. If it is the target destination, backtrack to generate a path; otherwise, expand its adjacent nodes.
[0023] Step 3: Calculate the temporary cumulative cost value during neighborhood expansion:
[0024] ;
[0025] Wherein, the edge weight w is the Euclidean distance between nodes;
[0026] Step 4: Update the cumulative cost value of adjacent nodes and the parent node pointer until the generated path or queue is exhausted.
[0027] Through the above technical solution, the return path search step can effectively achieve globally optimal path planning for the UAV from its current position to the return point. Specifically, step 1, the initialization phase, lays the foundation for path search by setting the node closest to the UAV's current position as the starting node and setting its cumulative cost value to 0, while the cost values of other nodes are infinite, ensuring that the starting point of the path search is clear and accurate. Step 2 uses the top node of the priority queue for iterative extraction and gradually approaches the target endpoint by continuously expanding adjacent nodes. When the target endpoint is found, the algorithm backtracks to generate a complete path. This process ensures the accuracy and optimality of the path. During the search process, if the current node cannot directly reach the endpoint, the algorithm continues to expand adjacent nodes. This ensures the continuity and feasibility of path planning. In step 3, during the neighborhood expansion process, the cost of the path can be accurately calculated by calculating the temporary cumulative cost value and combining it with the edge weight (i.e., the Euclidean distance between nodes). This provides a more accurate decision-making basis for path search. The introduction of this formula ensures that path planning can take into account the actual flight distance, thereby providing a more accurate and efficient return path. In step 4, the update operation gradually adjusts the direction of path search by updating the cumulative cost value of adjacent nodes and the parent node pointer until a complete return path is generated or the queue is exhausted. Through this iterative approach, the algorithm can adjust the path search strategy in real time and respond quickly in a dynamic environment, ensuring that the UAV can find an optimal return path.
[0028] In summary, the aforementioned return path search step utilizes an algorithm to achieve optimal path search for the UAV in complex environments, effectively solving the accuracy and real-time issues of path planning in dynamic environments. This enables the UAV to safely and quickly return to its designated destination or takeoff point.
[0029] Preferably, the specific optimization method for the return route optimization step is as follows:
[0030] a) Extract a 10-meter path segment starting from the node closest to the drone;
[0031] b) Generate a minimum acceleration (minimumsnap) trajectory using the aforementioned path segment as the initial value;
[0032] c) Parameterize the trajectory as a B-spline curve and optimize its smoothness, total flight time, and obstacle distance penalty.
[0033] d) Introduce dynamic constraints on the maximum speed, acceleration, and turning radius of the UAV for secondary optimization.
[0034] Through the above technical solution, the return path optimization step can effectively transform the globally optimal path into a smooth trajectory that conforms to the dynamic constraints of the UAV. Specifically, step a uses the 10-meter path segment closest to the current position of the UAV as the initial path segment, ensuring that the optimization process starts from a portion of the actual flight trajectory, avoiding redundant processing of the entire path and improving computational efficiency. Step b generates a minimum acceleration trajectory using the aforementioned path segment as the initial value. This method, by minimizing the rate of change of acceleration, can significantly reduce oscillations and irregular movements in the path, providing the UAV with a smooth and stable flight trajectory. Through this optimization, the smoothness of the trajectory is improved, while reducing sudden changes or sharp turns that the UAV may encounter during flight, thereby improving flight safety and comfort. Step c parameterizes the trajectory into a B-spline curve and further optimizes it. The goal is to optimize the path by comprehensively considering objective functions such as smoothness, flight time, and obstacle distance penalty terms. The introduction of B-spline curves makes the trajectory highly flexible and adjustable, minimizing collisions with obstacles without sacrificing flight efficiency. Optimizing flight time helps improve return-to-home efficiency, while the obstacle distance penalty term further ensures flight safety. Step d introduces dynamic constraints such as the UAV's maximum speed, acceleration, and turning radius for secondary optimization. This stage of optimization ensures that the trajectory conforms to the physical performance limitations of the UAV, avoiding trajectory selection beyond the aircraft's capabilities. It also makes the trajectory more feasible in actual flight environments. For example, in high-speed flight or sharp turns, the optimization algorithm can adjust the trajectory based on parameters such as the UAV's maximum speed and acceleration, thereby achieving safe and efficient flight.
[0035] In summary, by comprehensively utilizing minimum acceleration trajectory generation, B-spline curve smoothing, optimization of flight time and obstacle avoidance, and secondary optimization of dynamic constraints, the aforementioned return-home path optimization steps can provide the UAV with a smooth and safe return-home trajectory that conforms to actual flight conditions in a dynamic flight environment, effectively improving the execution efficiency and flight safety of the return-home path.
[0036] Preferably, the specific steps of the return path error handling procedure include:
[0037] a) When a path collision is detected, enter emergency stop mode and delete the topological edges of the convex hull where the collision point is located;
[0038] b) Regenerate the convex hull using the location near the collision point as the seed, ensuring that the new convex hull overlaps with the existing convex hull;
[0039] c) After updating the topological connectivity graph, re-execute the graph search. If it fails, switch to... The algorithm searches for alternative paths in a raster map.
[0040] Through the above technical solution, the return path error handling steps can effectively address path collision problems encountered by UAVs during flight and ensure that they can safely and quickly replan their return path. Specifically, step a immediately enters emergency stop mode upon detecting a path collision, ensuring that the UAV can stop in time and avoid further damage or risk. During the emergency stop, the topological edges of the convex hull where the collision point is located are deleted. This step effectively eliminates path connections that may lead to collisions, creating conditions for subsequent path correction. Step b regenerates a new convex hull using the location near the collision point as a seed. The new convex hull generation process ensures that there is an overlapping area between the old and new convex hulls. This measure ensures the connectivity of the topological graph and ensures that the UAV can always stay within a known and passable area when replanning its path. This method avoids path breaks or connection errors that may occur during path planning, enhancing the stability and reliability of path repair. In step c, the updated topological connectivity graph will again execute a graph search algorithm to find a new optimal path. If the graph search fails to find a feasible path, the system will switch to... The algorithm searches for alternative paths using obstacle information in a grid map. This fallback strategy ensures that even in extreme cases, a usable return path can still be found for the drone, maximizing the system's robustness and adaptability.
[0041] In summary, the aforementioned return path error handling steps include emergency stop mode, regenerating the convex hull, updating the topology graph, and... The algorithm's alternative path search provides an efficient and reliable path repair mechanism. This technical solution can respond promptly when the UAV encounters a path collision and effectively replan a safe return path, ensuring that the UAV maintains efficient and stable flight performance in complex and dynamic environments.
[0042] Preferably, the generation constraints of the convex hull include: the current position of the drone as an input constraint, ensuring that the overlapping area of the new convex hull and the old convex hull covers the current position of the drone.
[0043] Through the above technical solution, the convex hull generation constraint ensures that the UAV always stays within the passable area and can adapt to environmental changes in real time. Specifically, the current position of the UAV is used as an input constraint to ensure that the newly generated convex hull covers the current position. This constraint effectively avoids unsafe situations in path planning and improves the stability of the path. When the UAV trajectory exceeds the current convex hull, a new convex hull will be regenerated according to the current position, and the new and old convex hulls will overlap. This avoids the problem of holes or breaks in path planning, while ensuring the connectivity of the topology graph.
[0044] Preferably, the maintenance of the priority queue includes: updating the node and triggering an enqueue operation when the temporary cumulative cost value of an adjacent node is less than its current value.
[0045] Through the above technical solution, the maintenance of the priority queue ensures that the graph search algorithm can efficiently select the optimal path during the path finding process. When the temporary cumulative cost value of an adjacent node is less than its current value, the node is updated and an enqueue operation is triggered. This ensures that the priority queue always keeps the latest optimal node. This strategy avoids unnecessary repeated calculations and improves the efficiency and accuracy of the algorithm.
[0046] Preferably, the objective function for optimizing the B-spline trajectory includes the following terms:
[0047] a) The smoothness index of the trajectory is quantified by jerk integral;
[0048] b) Total flight time penalty;
[0049] c) Obstacle distance penalty, calculated using the Euclidean distance field in the obstacle grid map.
[0050] Through the above technical solution, the objective function for optimizing the B-spline trajectory can balance multiple objectives, ensuring that the UAV's return path satisfies dynamic constraints while possessing good smoothness, a short flight time, and obstacle avoidance. Specifically, the trajectory smoothness index in step a is quantified by integral acceleration, aiming to optimize the trajectory smoothness. Changes in acceleration directly affect flight stability and comfort. By integrating acceleration, oscillations and discontinuous changes in the trajectory can be quantified, thereby reducing drastic changes in the path by optimizing the objective function, ensuring that the UAV's acceleration changes smoothly during flight, avoiding abrupt acceleration or deceleration, and improving flight stability. The total flight time penalty term in step b considers... The flight time of the return path is a crucial factor in path optimization because, in practical applications, drones typically need to complete tasks within a short time, especially in emergency situations. By setting a penalty for flight time, it can be ensured that the return path's flight time is minimized while maintaining flight safety, thus improving efficiency. The obstacle distance penalty in step c is calculated using the Euclidean distance field in the obstacle grid map to ensure that the drone's flight path maintains a sufficient safe distance from obstacles. By calculating the distance between each path point and an obstacle and applying a penalty based on that distance, the optimization algorithm enables path planning to avoid obstacles as much as possible, reducing collision risks and improving flight safety.
[0051] In summary, the objective function for optimizing the B-spline trajectory, by comprehensively considering multiple factors such as trajectory smoothness, flight time, and obstacle distance, can provide the UAV with a safe, efficient, and stable return path. This optimization method ensures that the UAV can adjust its path in real time in complex environments, while minimizing flight time and maximizing flight safety, thus achieving comprehensive path optimization.
[0052] Preferred, downgraded to In the algorithm, a heuristic function is used in conjunction with obstacle information from the grid map, with Manhattan distance as the heuristic weight.
[0053] By employing the above technical solutions, when downgrading to Algorithm A, a heuristic function is used in conjunction with obstacle information from the grid map, with Manhattan distance as the heuristic weight, which helps improve the efficiency of path search. The heuristic function uses obstacle information to guide the search process, reducing invalid path exploration and ensuring faster target discovery. Manhattan distance, as a heuristic weight, is simple to calculate and suitable for grid maps, efficiently guiding Algorithm A in path planning, especially in scenarios involving horizontal and vertical movement, avoiding redundant computation.
[0054] Preferably, the topology connectivity graph, path search, and optimization process are updated in real time during the UAV flight to cope with dynamic environmental changes.
[0055] Through the above technical solution, the topology connectivity graph, path search, and optimization process can be updated in real time during the drone's flight, thereby responding to dynamic environmental changes. Specifically, real-time updates to the topology connectivity graph ensure that the drone can continuously adjust its flight path to cope with sudden obstacles or environmental changes, and the path search and optimization steps are also dynamically adjusted based on the latest environmental data, ensuring that each planned path reflects the current flight status and environmental conditions.
[0056] Compared with the prior art, the present invention has the following advantages:
[0057] 1. This patent has efficient path planning and optimization capabilities. By combining the Dijkstra algorithm for global path search and using B-spline curves to optimize path smoothness, flight time, and obstacle avoidance, this technical solution effectively improves the accuracy and speed of path planning. Especially in complex environments, it can quickly adapt to various changes and ensure the stability and safety of UAV flight.
[0058] 2. This patent demonstrates strong adaptability to dynamic environments. By updating the topology graph and optimizing the path in real time, the system can cope with changes in the environment, such as the appearance of obstacles or deviations in the flight path. Especially when the UAV encounters a path collision, the system can regenerate the convex hull, update the topology graph, and employ [other methods / approaches]. The algorithm employs alternative path search and other methods to ensure that the drone can return smoothly in complex and ever-changing environments, thereby improving the reliability of the system.
[0059] 3. This patent balances path safety and flight stability. By introducing an obstacle distance penalty term, it ensures that the flight path can avoid obstacles and reduce the risk of collision. At the same time, through minimum acceleration trajectory generation and B-spline curve optimization, the smoothness of the path is significantly improved. These optimization measures not only improve flight safety but also reduce instability caused by drastic acceleration and deceleration during flight, ensuring that the UAV can safely and smoothly complete the return mission in the shortest possible time. Attached Figure Description
[0060] Figure 1 This is a schematic diagram of the process of this invention;
[0061] Figure 2 This is a schematic diagram of the topological connectivity of the globally passable region in this invention;
[0062] Figure 3 This is a schematic diagram of the UAV mission execution scheme of the present invention;
[0063] Figure 4 This is a schematic diagram of the UAV return path search of the present invention;
[0064] Figure 5 This is a schematic diagram of the UAV return path execution scheme of the present invention;
[0065] Figure 6 This is a schematic diagram of the new obstacles on the return path of the UAV of the present invention;
[0066] Figure 7 This is a schematic diagram of the UAV return path update scheme of the present invention. Detailed Implementation
[0067] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only 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.
[0068] Those skilled in the art will understand that embodiments of the present invention can be implemented as a system, apparatus, method, or computer program product. Therefore, the present invention can be specifically implemented in the following forms: entirely hardware, entirely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.
[0069] 1. Construct a topological connectivity graph of globally accessible regions.
[0070] Step 1: Generate a probabilistic raster map
[0071] The drone collects environmental data in real time using onboard sensors to construct a probabilistic grid map. The occupancy probability of each grid cell in the map represents the likelihood of an obstacle's presence, and unknown areas are marked as areas to be explored. This map serves as the foundation for subsequent construction of a topological connectivity graph.
[0072] Step 2: Dynamically generate constrained convex hull
[0073] Initial convex hull generation: Using the drone's current position as the seed point, and combining the constraints of obstacles and unknown areas in the grid map, an initial polygonal region is generated using a convex hull algorithm. This convex hull covers the passable area around the current drone.
[0074] Dynamic update mechanism: When the drone's flight path exceeds the current convex hull range, a new point on the trajectory is selected as a seed to generate a new convex hull. To ensure the continuity of the old and new convex hulls, the new convex hull must include the drone's current position as a constraint, resulting in an overlapping region between the old and new convex hulls. The minimum range of the overlapping region is determined through geometric calculations to ensure the connectivity of the topological graph.
[0075] Generation of topological nodes and edges: The geometric center of the overlapping region of the old and new convex hulls is used as the topological node. Nodes in different overlapping regions within the same convex hull are connected by edges to form a dynamically expanding global topological connected graph. As the drone flies, the topological graph gradually covers a larger feasible area.
[0076] 2. Global return path search
[0077] Step 1: Initialize search parameters
[0078] In the global topology connectivity graph, the topology node closest to the drone's current position is set as the starting node, and its cumulative cost value is initialized to zero. The remaining nodes are initialized to their maximum values.
[0079] Create a priority queue and insert the starting node into the queue.
[0080] Step 2: Execute Dijkstra's algorithm
[0081] Node extraction and determination: Extract the node with the lowest cumulative cost from the priority queue as the current processing node. If this node is the return destination, generate a path node sequence by backtracking the parent node; otherwise, mark it as a visited node.
[0082] Neighborhood Expansion: Traverse all neighboring nodes of the current node, calculate the temporary cumulative cost from the current node to the neighboring node, and calculate the cost based on the Euclidean distance between the nodes. If the temporary cost is less than the current cumulative cost of the neighboring node, update its cumulative cost and parent node pointer, and insert it into the priority queue.
[0083] Termination condition: If the priority queue is exhausted and no destination is found, the path is determined to be non-existent; if the path is successfully generated, the node sequence path is output.
[0084] Step 3: Path Output and Verification
[0085] The generated path is a polyline and must be verified to ensure it lies entirely within the convex hull-covered flight corridor. If any nodes are located in unknown areas or near obstacles, a path error handling step is triggered.
[0086] 3. Local optimization of the return path
[0087] Step 1: Extract a local path segment
[0088] When the drone flies along the global path, it captures a segment of the path starting from the nearest node in real time as input for local optimization.
[0089] Step 2: Generate B-spline trajectory
[0090] The extracted polyline path is used as an initial reference to generate a smooth trajectory that satisfies the dynamic constraints of the UAV. Specifically, a B-spline curve parameterization method is used to ensure the continuity and differentiability of the trajectory.
[0091] During the optimization process, penalty terms are introduced for trajectory smoothness, total flight time, and obstacle avoidance distance. Smoothness is achieved by minimizing the higher-order derivatives of the trajectory; obstacle avoidance distance is calculated based on the Euclidean distance field of the probabilistic grid map to ensure that the trajectory stays away from obstacles.
[0092] Step 3: Adjustment of dynamic constraints
[0093] To address the flight characteristics of the drone, the maximum speed, acceleration, and turning radius of the trajectory are limited. The trajectory parameters are then iteratively optimized and adjusted to generate a final trajectory that conforms to the actual flight capabilities.
[0094] 4. Handling Return Route Errors
[0095] Step 1: Collision Detection and Emergency Response
[0096] When the optimized trajectory collides with a newly detected obstacle, the drone immediately enters emergency stop mode and records the location information of the collision point.
[0097] Step 2: Topology Connectivity Update and Path Replanning
[0098] Remove invalid topological edges: Remove the topological edges corresponding to the convex hull where the collision point is located, and disconnect them from the faulty region.
[0099] Regenerate convex hull: Using a safe location near the collision point as the seed point, generate a new convex hull, ensuring that it overlaps with the existing convex hull.
[0100] Update the topology and re-search: Add the newly generated convex hull node to the connected topology and re-execute Dijkstra's algorithm to search for a path. If a new path is successfully generated, the drone continues its return journey.
[0101] Step 3: Degradation Search Mechanism
[0102] If no feasible path can be found after updating the topology map, the algorithm switches to Algorithm A based on a grid map. Algorithm A uses Manhattan distance as a heuristic function and combines it with real-time obstacle information to search for alternative paths, ensuring that the drone can safely return to base even in extreme situations.
[0103] Example 1
[0104] Step 1: Construct a globally accessible topology graph
[0105] A schematic diagram of the topology connectivity of the globally accessible regions, as shown below. Figure 2 As shown in the figure, the circle is the starting point, the rhombus is the node of the connected graph, and the dashed line is the edge of the connected graph;
[0106] A schematic diagram of a drone mission execution plan, such as... Figure 3 As shown, the red trajectory is the actual trajectory of the drone's mission, the small orange dot is the drone's position when a new convex hull is generated, the gray polygon is the obstacle, the colored polygon is the generated convex hull, and the pentagram is the mission endpoint.
[0107] The location of obstacles in the environment is determined by a grid map. A convex hull is generated using the current position of the drone as the seed and the obstacles and unknown areas in the grid map as constraints. When the future trajectory planned by the drone is not within a certain range of the convex hull, a convex hull is generated again using a point on the future trajectory planned by the drone as the seed. In order to ensure that the newly generated convex hull overlaps with the old convex hull, the current position of the drone is also used as a constraint input into the generation of the new convex hull. The geometric center point of the overlapping part between the convex hulls is used as the node of the topology graph. Different overlapping parts of the same convex hull are considered to be connected, thus forming a topological connected graph that continuously expands as the drone's map range expands.
[0108] Secondly, when the planned future trajectory of the drone exceeds the coverage of the current convex hull, the system needs to dynamically generate a new convex hull to ensure the continuity and safety of the path. Specifically, when the drone predicts, through real-time sensor data, that the nearest distance between certain key points in the future trajectory (such as positions every 0.5 seconds) and the current convex hull boundary exceeds a preset safety threshold (e.g., 1 meter), it is determined that the trajectory exceeds the convex hull range. At this time, the system selects the point that is furthest beyond the current convex hull from the future trajectory as a seed point, prioritizing the coverage of the unknown area at the end of the trajectory. If there are obstacles or high-density unknown areas around the seed point (detected by the occupancy probability of the probabilistic grid map), the seed point is adjusted to the nearest safe point on the trajectory to ensure the feasibility of generating a new convex hull.
[0109] Step 2: Global return path search
[0110] A diagram illustrating the drone's return path, as shown below. Figure 4 As shown, the red line represents the final trajectory obtained from the search, the blue dashed line represents the edges checked during the search process, the pentagram represents the starting point when returning, the small orange dot represents the ending point when returning, the gray polygon represents obstacles, and the colored polygon represents the generated convex hull.
[0111] When a drone wants to return to home, it performs a graph search on the global topology map from its current location to the return point to find the most efficient return path. The graph search algorithm uses Dijkstra's algorithm.
[0112] 1. System initialization phase:
[0113] Find the node closest to the current position as the starting node;
[0114] Configure the initial cumulative cost value g of the starting node start =0, and the cumulative cost value of all other nodes is set to infinity;
[0115] Create a priority queue and insert the starting node into the queue.
[0116] 2. The path exploration loop process includes the following sub-steps:
[0117] (1) When the priority queue is detected to be non-empty, the top element of the heap is extracted as the current processing node;
[0118] (2) Perform endpoint determination on the current processing node:
[0119] When the target endpoint is identified, a node sequence path is generated by recursively backtracking the parent node pointer;
[0120] If the destination has not been reached, move the current node into the visited marker set;
[0121] (3) Neighborhood expansion operation, specifically implemented as follows:
[0122] Iterate through all neighboring nodes of the currently processed node, and continue processing only if the neighboring node is not marked as visited.
[0123] Calculate the temporary cumulative cost value for neighboring nodes that are not marked as visited:
[0124] ;
[0125] Where the edge weight w is the Euclidean distance between the two nodes;
[0126] Execution path optimization determination: if and only if g temp <g neighbor hour:
[0127] Update the cumulative cost value of the adjacent node to g. temp ; Reset the parent node pointer to point to the currently processed node; Trigger an enqueue operation when the adjacent node does not exist in the priority queue;
[0128] 3. Termination condition determination:
[0129] If the priority queue is exhausted, return that the path does not exist; if the path is successfully generated, output the total cost of the path and the node sequence synchronously.
[0130] Step 3: Global return path search
[0131] A schematic diagram of the drone's return path execution plan, as shown below. Figure 5 As shown, the green trajectory is the optimized B-spline trajectory, the pentagram is the starting point of the return journey, the small orange dot is the ending point of the return journey, the gray polygon is the obstacle, and the colored polygon is the generated convex hull.
[0132] The path obtained by graph search is a polyline path, containing only the topological geometry information needed for return flight. It cannot be directly used for the UAV's return flight and requires local optimization. The UAV returns along the path obtained in the graph search step. During each optimization, the position of the nearest node on the return path is first obtained, and the UAV moves along the path from that node, truncating a 10m section for optimization. Using this 10m section as initial values, a minimunsnap trajectory is generated as the initial value for optimization and parameterized as a B-spline trajectory. Next, the smoothness of the B-spline trajectory and the total flight time are optimized, penalizing the distance to obstacles while considering the UAV's dynamic limitations. This allows the UAV to execute a safe, smooth, and dynamic flight trajectory, fully utilizing its flight performance and improving flight speed and safety.
[0133] Step 4: Handling Return Route Errors
[0134] A diagram illustrating new obstacles on the drone's return path, as shown below. Figure 6 As shown, the red trajectory is the searched return path, the pentagram is the starting point of the return, the small orange dot is the ending point of the return, the gray polygon is the obstacle, and the colored polygon is the generated convex hull.
[0135] A diagram illustrating the drone return path update scheme, as shown below. Figure 7 As shown, the red trajectory is the searched return path, the pentagram is the starting point of the return, the small orange dot is the ending point of the return, the gray polygon is the obstacle, and the colored polygon is the generated convex hull.
[0136] When the UAV detects a collision between its return path and a new obstacle, the system first triggers a dynamic response mechanism: the UAV enters a deceleration hovering mode and generates a local obstacle avoidance trajectory around the hovering position based on the current grid map information to maintain basic safety; if the obstacle distance is less than a preset danger threshold, it switches to a full emergency stop state and activates an alarm. Subsequently, the system deletes topological edges directly connected to the collision area in the convex hull where the collision point is located, preserving the connectivity of other unaffected areas, and filters multiple candidate seed points within a 2-meter radius safety area around the collision point, prioritizing the point closest to the collision point with the lowest obstacle density as the new seed. When generating a new convex hull, it is mandatory to include the UAV's current position and at least one known safe node area in the old convex hull to ensure natural overlap between the old and new convex hulls; if the overlap area is less than 20% of the old convex hull, the boundary of the new convex hull is expanded along the UAV's historical flight direction until the overlap requirement is met. When updating the topological connectivity graph, only the geometric center node and its connecting edges of the overlapping area of the new convex hull are added to avoid global reconstruction, and a bidirectional Dijkstra algorithm is used to accelerate path search starting from the nearest unaffected node; if no path is found within a timeout, the system switches to... The algorithm uses the Manhattan distance heuristic to quickly generate alternative paths. If the new path is valid, the drone continues to return and monitors environmental changes in real time; if two consecutive replanning attempts fail, an autonomous landing protocol is triggered, and the drone lands in the nearest safe area and reports the anomaly.
Claims
1. A method for automatic return of a UAV based on a global topology map and a graph search algorithm, characterized in that, The method comprises the following steps: The global passable area topology connected graph step is used for generating a dynamically updated topology connected graph based on a probability grid map, and the topology connected graph is constructed by connecting a convex hull and an overlapping area node, wherein a current position of the unmanned aerial vehicle and a planned trajectory point are used as seeds to generate a constraint convex hull, and a geometric center of an overlapping part between the convex hulls is used as a topology node; The return path search step is used for searching a global optimal path from the current position of the unmanned aerial vehicle to a return point in the topology connected graph by using a graph search algorithm, wherein the graph search algorithm is a Dijkstra algorithm, and the Dijkstra algorithm comprises an initialization start node, a priority queue processing and a neighborhood expansion operation; The return path optimization step is used for optimizing the global optimal path to a smooth trajectory conforming to a dynamic constraint of the unmanned aerial vehicle, generating a B-spline trajectory by intercepting a local path, and optimizing smoothness, flight time and obstacle avoidance distance of the B-spline trajectory; Return path error handling steps to regenerate convex hull, update topological connectivity graph, and degrade to Algorithm searches for alternate paths. 2.The UAV automatic return method based on global topology map and graph search algorithm according to claim 1, wherein, The construction method of the global passable area topology connected graph step comprises the following steps: Step 1: determining a position constraint of an obstacle and an unknown area based on a probability grid map; Step 2: generating an initial convex hull by taking the current position of the unmanned aerial vehicle or the planned trajectory point as a seed; Step 3: when a trajectory of the unmanned aerial vehicle exceeds a current convex hull range, generating a new convex hull by taking a new point on the trajectory as a seed, and ensuring that there is an overlapping area between the new and old convex hulls; Step 4: taking a geometric center of the overlapping area as a topology node, connecting different overlapping nodes of the same convex hull through edges, and forming a dynamically expanded topology connected graph. 3.The UAV automatic return method based on global topology map and graph search algorithm of claim 1, wherein, The Dijkstra algorithm execution step of the return path search step comprises the following steps: Step 1: initialization stage: taking a node closest to the current position of the unmanned aerial vehicle as a start node, setting a cumulative cost value g(start) of the start node to 0, and setting a cumulative cost value of the remaining nodes to infinity; Step 2: cyclically extracting a top node of a priority queue heap, backtracking to generate a path if the top node is a target end point, or expanding a neighboring node of the top node; Step 3: calculating a temporary cumulative cost value when the neighboring node is expanded: ; wherein an edge weight w is a Euclidean distance between nodes; Step 4: updating the cumulative cost value and a parent node pointer of the neighboring node until a path is generated or the queue is exhausted.
4. The method of claim 1, wherein, The specific optimization method of the return path optimization step is as follows: a) intercepting a 10-meter path segment starting from a node closest to the unmanned aerial vehicle; b) generating a minimum snap trajectory by taking the path segment as an initial value; c) parameterizing the trajectory as a B-spline curve, and optimizing smoothness, total flight time and an obstacle distance penalty term of the B-spline curve; d) introducing dynamic constraints of a maximum speed, an acceleration and a turning radius of the unmanned aerial vehicle to perform secondary optimization.
5. The method of claim 1, wherein, The specific steps of the return path error processing step comprise the following steps: a) entering an emergency stop mode when a path collision is detected, and deleting a topology edge of a convex hull in which a collision point is located; b) regenerating a convex hull by taking a position near the collision point as a seed, and ensuring that there is an overlapping area between the new convex hull and an existing convex hull; c) re-perform the graph search after updating the topologically connected graph, if this fails switch to The algorithm searches for a backup path in the grid map.
6. The method of claim 2, wherein, The generation constraint of the convex hull comprises that the current position of the unmanned aerial vehicle is used as an input constraint to ensure that the overlapping area between the new convex hull and the old convex hull covers the current position of the unmanned aerial vehicle.
7. The method of claim 3, wherein, The maintenance of the priority queue comprises: when the temporary cumulative cost value of the adjacent node is less than the current value, updating the node and triggering the enqueue operation.
8. The method of claim 4, wherein, The optimization objective function of the B-spline trajectory comprises the following items: a) a smoothness index of the trajectory, quantified by the jerk integral; b) a total flight time penalty term; c) an obstacle distance penalty term, calculated by the Euclidean distance field in the obstacle grid map.
9. The method of claim 5, wherein, The degradation is In the algorithm, the heuristic function is combined with the obstacle information of the grid map, and the Manhattan distance is used as the heuristic weight.
10. The method according to any of claims 1 to 9, characterized in that, The topologically connected graph, the path search and the optimization process are updated in real time during the flight of the unmanned aerial vehicle, so as to cope with dynamic environmental changes.
Citation Information
Patent Citations
Method and system for returning of unmanned plane
CN104881039A
Drone return method, device, drone and storage medium
CN111742276A
Unmanned aerial vehicle homeward voyage method, device and equipment and storage medium
CN114740885A
Unmanned aerial vehicle autonomous homeward voyage decision-making method and device and storage medium
CN117075623A
Unmanned aerial vehicle route planning algorithm based on polygonal obstacle detection
CN107478231A