An unmanned aerial vehicle cluster emergency return method, device, equipment and medium

By assigning dedicated landing points and priorities to drone swarms and combining this with the LAPJV algorithm for conflict resolution, the problem of rapid, safe, and orderly return of drone swarms in emergency situations was solved, achieving efficient path planning and communication optimization.

CN120742966BActive Publication Date: 2025-11-07SHENZHEN DAMO DAZHI CONTROL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511252775.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-03
Publication Date
2025-11-07
Estimated Expiration
2045-09-03

AI Technical Summary

Technical Problem

Existing technologies are unable to enable large-scale drone swarms to return quickly, safely, and in an orderly manner in emergency situations, especially in terms of real-time computing, communication efficiency, and hardware dependence.

Method used

By acquiring the current location and preset landing point information of the drone, the optimal matching is performed using a linear assignment problem that minimizes the total movement cost. Each drone is assigned a dedicated landing point, a return path is generated, a return priority is set, and the LAPJV algorithm is used to resolve conflicts, ensuring that the drones return in priority order.

Benefits of technology

It enables large-scale drone swarms to return quickly, safely, and orderly in emergency situations, reducing path crossings, lowering communication load, improving system response reliability, avoiding deadlocks, and enhancing overall evacuation efficiency and system robustness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120742966B_ABST
    Figure CN120742966B_ABST
Patent Text Reader

Abstract

The application discloses a kind of unmanned aerial vehicle cluster emergency return method, device, equipment and medium, it is related to unmanned aerial vehicle control technical field, comprising: response instruction and obtain each unmanned aerial vehicle position and landing point information;With the minimum total moving cost as target for each unmanned aerial vehicle optimal allocation exclusive landing point;Accordingly generate return path;For all unmanned aerial vehicle set return priority;According to priority from high to low in turn execute conflict resolution, whether path is judged with higher priority path conflict, if there is then delay take-off until eliminate, otherwise determine path and take-off time effective;Finally, effective path and take-off time are issued to execute, or only landing point information and time are issued, and path is calculated by unmanned aerial vehicle local and executed.The application reduces path intersection from source by global optimal matching, reduces communication load by local calculation, and avoids deadlock by using priority-based timing conflict resolution, ensures no collision, realizes large-scale unmanned aerial vehicle cluster fast, safe, orderly return.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of unmanned aerial vehicle control, and particularly relates to a method and device for emergency return of unmanned aerial vehicle cluster, equipment and medium. BACKGROUND

[0002] With the rapid development of multi-unmanned aerial vehicle cluster technology, unmanned aerial vehicle formation flight has been widely used in large-scale activities such as celebrations, performances, and advertisement displays. In these application scenarios, hundreds or even thousands of unmanned aerial vehicles are often required to perform complex dynamic formation transformation in a highly synchronized manner to form an extremely attractive aerial visual effect. During normal performance, each unmanned aerial vehicle strictly follows a pre-planned flight trajectory. However, in actual operating environments, various emergency situations may suddenly occur, such as sudden thunderstorms, strong winds, communication signal interference, or abnormal battery power, etc. At this time, the entire unmanned aerial vehicle cluster must be orderly and safely evacuated from the performance airspace and returned to the landing point within a very short time to avoid collisions or even crashes between unmanned aerial vehicles and to ensure on-site safety.

[0003] For such emergency return requirements, the current mainstream technical solutions mainly include centralized path planning and distributed path planning. The centralized path planning solution re-computes safe return paths for each unmanned aerial vehicle by the ground control station after detecting an emergency state, and common algorithms include A*, velocity obstacle method (RVO), model predictive control (MPC), etc. The results are then sent to each unmanned aerial vehicle for execution after all path calculations are completed. However, this solution has obvious defects in actual application: as the scale of unmanned aerial vehicles increases, the computational complexity of path planning increases dramatically, making it difficult to meet the high real-time requirements of emergency return; at the same time, since complete path information needs to be sent to each unmanned aerial vehicle individually, the communication data volume under a large-scale cluster is extremely large, which can easily cause communication delays or even data packet loss, seriously affecting the reliability and timeliness of the return instructions.

[0004] Another type of distributed planning solution does not rely on centralized calculation by the ground station, but rather each unmanned aerial vehicle relies on its own onboard sensors to perceive the positions of surrounding unmanned aerial vehicles and dynamically plans obstacle avoidance paths based on local information in real time. Common algorithms include distributed model predictive control (DMPC), etc. However, this approach places high requirements on the hardware performance of the unmanned aerial vehicle platform, requiring real-time environmental perception capability and sufficient onboard computing power. In fact, most unmanned aerial vehicles used for performances do not have a complete perception system, and their onboard computing resources are also limited, which cannot support the real-time operation of complex algorithms. In addition, distributed algorithms also have certain limitations, such as being easily trapped in local minima during multi-vehicle coordination, leading to a "deadlock" phenomenon between unmanned aerial vehicles, i.e., multiple unmanned aerial vehicles block each other and cannot move, resulting in failure of the return mission.

[0005] In summary, there is no unmanned aerial vehicle cluster return planning method in the prior art that can meet the requirements of real-time computing, efficient communication, low hardware dependency, and obstacle avoidance reliability at the same time in an emergency. How to achieve the rapid, safe, and orderly return of a large-scale unmanned aerial vehicle cluster in an emergency is still a core technical problem that needs to be solved. SUMMARY

[0006] Embodiments of the present application provide a method, device, equipment and medium for emergency return of an unmanned aerial vehicle cluster, aiming to solve the technical problem of how to achieve the rapid, safe, and orderly return of a large-scale unmanned aerial vehicle cluster in an emergency.

[0007] In a first aspect, embodiments of the present application provide a method for emergency return of an unmanned aerial vehicle cluster, comprising:

[0008] S1, in response to an emergency return instruction, obtaining current position information of all unmanned aerial vehicles in the cluster and position information of a plurality of preset landing points;

[0009] S2, based on the current position information of all unmanned aerial vehicles and the position information of the plurality of preset landing points, optimally matching each unmanned aerial vehicle with each landing point to minimize the total movement cost of all unmanned aerial vehicles to their assigned landing points, and assigning a dedicated landing point to each unmanned aerial vehicle;

[0010] S3, based on the dedicated landing point assigned to each unmanned aerial vehicle, generating a return path for each unmanned aerial vehicle to the corresponding dedicated landing point;

[0011] S4, setting a return priority for all unmanned aerial vehicles;

[0012] S5, in order of priority from high to low, sequentially performing conflict resolution processing on each unmanned aerial vehicle: determining whether the return path of the unmanned aerial vehicle will conflict with the return path of a higher priority unmanned aerial vehicle; if so, delaying the takeoff time of the unmanned aerial vehicle until the conflict is resolved; if not, determining that the return path and takeoff time of the unmanned aerial vehicle are valid;

[0013] S6, issuing all valid return paths and takeoff times to the corresponding unmanned aerial vehicles for execution, or issuing landing point information of all valid return paths and takeoff times to the corresponding unmanned aerial vehicles, and calculating and executing the return path locally based on the received landing point information by the corresponding unmanned aerial vehicles.

[0014] Further technical solutions are that step S2 comprises:

[0015] modeling a linear assignment problem aiming to minimize the total movement cost of all UAVs to their assigned landing points, wherein each UAV must be assigned one and only one landing point, and each landing point must be assigned to one and only one UAV;

[0016] constructing a cost matrix, each element of which represents the movement cost of a UAV to a landing point, which is determined by the squared Euclidean distance between the current position of the UAV and the position of the landing point;

[0017] solving the linear assignment problem by using the LAPJV algorithm to obtain the optimal matching relationship of each UAV to a specific landing point.

[0018] Further, in step S3, the return path generated for each UAV consists of a straight line path from the current position of the UAV to a preset height above the landing point, and a path from the preset height vertically descending to the landing point.

[0019] Further, step S4 includes:

[0020] obtaining all UAVs without assigned priorities to form a set Q;

[0021] performing start point collision detection on the return paths of the UAVs in set Q: detecting whether the return path of a UAV collides with the start point of the return path of another UAV;

[0022] taking out the UAVs in set Q whose return paths do not collide with the start points of the return paths of other UAVs to form a set q;

[0023] assigning priorities to the UAVs in set q in order from near to far to the end points;

[0024] judging whether there are UAVs without assigned priorities;

[0025] if there are UAVs without assigned priorities, jumping to the step of obtaining all UAVs without assigned priorities to form set Q.

[0026] Further, the judgment of whether the return path of a UAV will collide with the return path of a UAV with a higher priority includes:

[0027] determining a neighborhood set of the UAV from all UAVs with higher priorities;

[0028] judging whether the UAV collides with the UAVs in the neighborhood set within the total time length of the return path of the UAV;

[0029] If a drone collides with another drone in the neighboring set during the total time of its return-to-home path, it is determined that the drone's return-to-home path will conflict with the return-to-home path of a drone with higher priority.

[0030] If the drone does not collide with any other drone in the neighboring set during the total time of its return-to-home path, it is determined that the drone's return-to-home path will not conflict with the return-to-home path of a drone with higher priority.

[0031] A further technical solution is that determining the nearest neighbor set of a drone from all drones with higher priority includes:

[0032] Select drones that do not have a neighbor set as target drones, wherein all drones with a higher priority than the target drone constitute a high-priority set;

[0033] Select drones that have not performed the spacing comparison step from the high-priority set as drones to be compared;

[0034] The following distance comparison steps are performed on the drone to be compared: It is determined whether the minimum distance between the return path of the target drone and the return path of the drone to be compared is less than a preset safety distance; if the minimum distance between the return path of the target drone and the return path of the drone to be compared is less than the preset safety distance, the drone to be compared is added to the neighbor set of the target drone; if the minimum distance between the return path of the target drone and the return path of the drone to be compared is not less than the preset safety distance, the drone to be compared is determined not to belong to the neighbor set of the target drone.

[0035] Determine whether the high-priority set contains any drones that have not performed the spacing comparison step;

[0036] If there are drones in the high-priority set that have not performed the spacing comparison step, then the step of selecting drones that have not performed the spacing comparison step from the high-priority set as drones to be compared is executed.

[0037] A further technical solution is that determining whether the drone collided with another drone in the neighboring set during the total time of the drone's return path includes:

[0038] Starting from the beginning of the total time of the drone's return path, a detection node is set at preset time intervals;

[0039] performing the following collision detection steps for each detection node: obtaining a first position of the return path of the UAV at the detection node and second positions of the return paths of the UAVs in the adjacent set at the detection node; determining whether the distance between the first position and all the second positions is greater than a preset safety distance; if the distance between the first position and all the second positions is greater than the preset safety distance, determining that there is no collision at the detection node; if the distance between the first position and any of the second positions is not greater than the preset safety distance, determining that there is a collision at the detection node;

[0040] determining whether all the detection nodes have no collision;

[0041] if all the detection nodes have no collision, determining that the UAV does not collide with the UAVs in the adjacent set in the total time length of the return path of the UAV;

[0042] if there is a detection node with collision, determining that the UAV collides with the UAVs in the adjacent set in the total time length of the return path of the UAV.

[0043] In a second aspect, an embodiment of the present application further provides an unmanned aerial vehicle cluster emergency return device, which comprises units for performing the above method.

[0044] In a third aspect, an embodiment of the present application further provides a computer device, which comprises a memory and a processor, the memory stores a computer program, and the processor implements the above method when executing the computer program.

[0045] In a fourth aspect, an embodiment of the present application further provides a computer readable storage medium, which stores a computer program, and the computer program can implement the above method when executed by a processor.

[0046] The embodiment of the present application provides a kind of unmanned aerial vehicle cluster emergency return method, device, equipment and medium.Therein, the method comprises: in response to emergency return instruction, the current position information of all unmanned aerial vehicles in cluster and the position information of multiple preset landing points are acquired;Based on the current position information of all unmanned aerial vehicles and the position information of multiple preset landing points, with the total movement cost of all unmanned aerial vehicles to its assigned landing point being minimized as the goal, each unmanned aerial vehicle is optimally matched with each landing point, and each unmanned aerial vehicle is assigned an exclusive landing point;Based on the exclusive landing point assigned to each unmanned aerial vehicle, a return path to the corresponding exclusive landing point is generated for each unmanned aerial vehicle;The return priority of all unmanned aerial vehicles is set;In order of priority from high to low, conflict resolution processing is sequentially performed on each unmanned aerial vehicle: determine whether the return path of unmanned aerial vehicle will conflict with the return path of higher priority unmanned aerial vehicle;If yes, delay the take-off time of unmanned aerial vehicle until the conflict is eliminated;If no, determine the return path of unmanned aerial vehicle and the take-off time effective;All return paths and take-off times determined to be effective are issued to the corresponding unmanned aerial vehicle for execution, or the landing point information of all return paths determined to be effective and the take-off time are issued to the corresponding unmanned aerial vehicle, which calculates and executes the return path locally based on the received landing point information.The present application assigns appropriate landing points to unmanned aerial vehicles through global optimal matching, reduces path intersection from the source;Through independent path generation and local calculation, the communication load is greatly reduced, and the system response reliability is improved;And innovatively use priority-based timing scheduling for conflict resolution, effectively avoid deadlock, ensure no collision.Finally, large-scale cluster is realized in emergency return quickly, safely and orderly, which significantly improves the overall evacuation efficiency and system robustness. BRIEF DESCRIPTION OF DRAWINGS

[0047] Figure 1 The flowchart of the unmanned aerial vehicle cluster emergency return method provided by the embodiment of the present application is shown.

[0048] Figure 2 The schematic diagram of the return path provided by the embodiment of the present application is shown.

[0049] Figure 3 The schematic block diagram of the computer device provided by the embodiment of the present application is shown. DETAILED DESCRIPTION

[0050] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application.It is obvious that the described embodiments are part of the embodiments of the present application, rather than all the embodiments of the present application.Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present application.

[0051] It should be understood that the terms used in the specification of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification of the present application and the appended claims, the singular forms "a", "an" and "the" are intended to include the plural forms unless the context clearly indicates otherwise.

[0052] It should be further understood that the term "and / or" used in the specification and appended claims of the present application means any combination of one or more of the associated listed items and all possible combinations, and includes these combinations.

[0053] As used in the specification and the appended claims of the present application, the term "if" can be interpreted as "when" or "upon" or "in response to a determination" or "in response to detecting" depending on the context. Similarly, the phrases "if it is determined" or "if [a described condition or event] is detected" can be interpreted to mean "upon determining," or "in response to determining" or "upon detecting [the described condition or event]" or "in response to detecting [the described condition or event]" depending on the context.

[0054] Referring to Figure 1 The embodiments of the present application provide a UAV cluster emergency return method, which comprises the following steps:

[0055] S1, in response to an emergency return instruction, obtaining current position information of all UAVs in the cluster and position information of a plurality of preset landing points.

[0056] In specific implementation, when the emergency return instruction is received, in response to the emergency return instruction, the current position information of all UAVs in the cluster and the position information of a plurality of preset landing points are obtained. In the present application, the number of landing points is the same as the number of UAVs in the cluster. The current position information of the UAV is sent by the UAV, and the position information of the landing point is fixed and pre-stored, so it can be directly retrieved.

[0057] S2, based on the current position information of all UAVs and the position information of a plurality of preset landing points, optimally matching each UAV with each landing point to minimize the total movement cost of all UAVs to their assigned landing points, and assigning a dedicated landing point to each UAV.

[0058] In specific implementation, based on the current position information of all UAVs and the position information of a plurality of preset landing points, optimally matching each UAV with each landing point to minimize the total movement cost of all UAVs to their assigned landing points, and assigning a dedicated landing point to each UAV. In the present application,

[0059] For example, in some preferred embodiments, the above step S2 specifically comprises:

[0060] S21, modeling a linear assignment problem whose goal is to minimize the total movement cost of all drones to their assigned landing points, where each drone must be assigned one and only one landing point, and each landing point must be assigned to one and only one drone.

[0061] In a specific implementation, the linear assignment problem is as follows: ;

[0062] ;

[0063] ;

[0064] ;

[0065] where n represents the number of drones, represents the cost of i-th drone choosing j-th landing point, all constitute a matrix C. is the variable to be optimized, all constitute a matrix X, the above constraints ensure that the X matrix has and only has one non-zero element in any row i, assuming that the non-zero element corresponds to column j, which represents that the i drone chooses the endpoint j as the return point.

[0066] S22, constructing a cost matrix, each element of which represents the movement cost of a drone to a landing point, which is determined by the squared Euclidean distance between the current position of the drone and the position of the landing point.

[0067] In a specific implementation, the squared distance from the starting point to the endpoint is selected to constitute the cost matrix C, that is: ; where represents the current coordinates of drone i, represents the three-dimensional coordinates of landing point j.

[0068] The assignment mode calculated by the cost matrix C guarantees that the minimum distance between the straight-line trajectories of each drone to its own landing point satisfies the following relationship. The proof is referred to the paper CAPT: Concurrent assignment and planning of trajectories for multiple robots;

[0069] In the above formula, represents the minimum distance between any two drones, This represents the minimum distance between any two landing points. As shown in the above equation, the C matrix, composed of the squared distances between the endpoints, is the cost matrix. The optimal matching guarantees a lower limit on the distance between straight trajectories, which greatly facilitates subsequent obstacle avoidance.

[0070] S23, The LAPJV algorithm is used to solve the linear assignment problem to obtain the optimal matching relationship between each UAV and a specific landing point.

[0071] In practice, various algorithms can be used to solve the linear optimal assignment problem. In this embodiment of the invention, the LAPJV algorithm was selected for the solution. Compared with the traditional Hungarian algorithm, the solution time of the LAPJV algorithm can be reduced by more than 50%.

[0072] In this embodiment, firstly, by modeling the problem as a linear assignment problem and specifying that the cost is determined by the square of the Euclidean distance, this method mathematically guarantees the overall optimality of the matching result, that is, the total energy consumption or total flight cost of all UAVs reaching their designated landing points is minimized. More importantly, the choice of this cost function has profound physical significance: minimizing the sum of squared distances essentially prompts the system to automatically assign landing points that are closer to each other to a subset of UAVs whose current positions are also relatively concentrated, thereby minimizing the degree of intersection and entanglement between the straight return paths of all UAVs globally. This is equivalent to minimizing potential conflict points at the source of path planning, laying a good foundation for subsequent priority conflict resolution steps, greatly reducing the computational burden of step S5 and the number of conflicts that may need to be handled, and improving the efficiency of the overall solution. Secondly, the explicit use of the LAPJV algorithm for solving the problem brings a significant advantage in computational speed. This algorithm is a highly efficient dedicated algorithm for linear assignment problems, and its time complexity is better than the classic Hungarian algorithm. For emergency return scenarios that need to handle matching problems of hundreds or thousands of UAVs, computational speed is a crucial core indicator. The introduction of the LAPJV algorithm ensures that this critical step can be completed in a very short time, meeting the real-time requirements of emergency return and serving as an important prerequisite and guarantee for the realization of the entire efficient return process.

[0073] S3 generates a return path for each drone to its assigned dedicated landing point, based on the dedicated landing point allocated to each drone.

[0074] In practice, based on the dedicated landing point assigned to each drone, a return path to the corresponding dedicated landing point is generated for each drone.

[0075] For example, in some preferred embodiments, the return path generated for each UAV in step S3 consists of a straight-line path from the current position of the UAV to a preset altitude above the landing point, and a path from the preset altitude to the landing point vertically. The return path is as shown in FIG. 2. Figure 2

[0076] After the end point assignment is completed, the return path for each UAV is independently generated. The path includes two stages: a slanting flight stage and a vertical descent stage. The vertical descent height is uniformly set before takeoff and is preset in all UAVs.

[0077] The same path generation algorithm as the ground station is integrated in each UAV, so that when an emergency return is needed, the ground station only needs to send the position of the target landing point and the start time of the return, and the UAV can locally calculate a return path consistent with the simulation of the ground station.

[0078] Compared with the traditional "whole-path-downloading" method, this method significantly reduces the amount of communication data, and even at the scale of thousands of UAVs, it will not cause significant pressure on the communication network, thereby greatly improving the response ability and reliability of the system in emergency situations.

[0079] In this embodiment, by specifically defining the return path as "a straight-line path with slanting flight followed by a vertical descent path", the scheme ingeniously designs a highly standardized and parameterized path generation paradigm. Since this path form is uniquely determined by a few key parameters (e.g. current point, landing point, preset altitude), the ground station and the UAV do not need to transmit lengthy complete trajectory data composed of a large number of path points. In step S6, only the final landing point coordinates and the uniform takeoff time instruction need to be issued, and each UAV can independently reproduce the same flight path based on its internally preset path generation algorithm consistent with the ground station. This "instruction-downloading, local-computing" mode reduces the amount of communication data from O(N*T) level proportional to the number N of UAVs and the number T of path points to O(N) level proportional to N (only the target point is issued). This completely solves the fatal bottleneck problem of communication channel congestion, data delivery delay or loss in the traditional centralized scheme. At the same time, this design also reduces the dependence of the system on the quality of the communication link. Even if there is a short interruption or interference in the communication, the UAVs that have received the instructions can still reliably perform the return, improving the robustness and practicality of the system in complex real environments.

[0080] S4, set the return priority for all UAVs.

[0081] ​In the specific implementation, the return priorities are set for all UAVs. Since the obstacle avoidance is realized by priority scheduling in the present application, the UAVs with lower priorities need to wait at the starting points until their return paths are free of collision risks. Therefore, the UAVs with high priorities must ensure that their return trajectories will not collide with the starting positions of the UAVs with low priorities. In order to minimize the waiting time of the UAVs with low priorities, the UAVs with high priorities need to pass through the dense area as early as possible, thereby leaving a safe return channel for the subsequent UAVs. In the setting of the priorities, in order to balance the return efficiency and the calculation speed, a priority allocation method based on the greedy strategy is adopted, so that the overall scheduling process is efficient and easy to calculate quickly.

[0082] Specifically, in some preferred embodiments, step S4 specifically comprises:

[0083] S41, all UAVs without allocated priorities are obtained to form a set Q;

[0084] S42, the starting point collision detection is performed on the return paths of the UAVs in the set Q: whether the return path of a UAV collides with the starting point of the return path of another UAV is detected.

[0085] In the specific implementation, when checking the path collision, since the performance area and the landing area are often far away, only the oblique flight phase of each return path needs to be compared with the starting points of other return paths. The specific detection algorithm formula is as follows:

[0086] ;

[0087] is the oblique path vector of the return path, is the vector from the oblique path starting point A to the starting point P of the other path, X represents the cross product operation, represents the vector modulus, is the minimum safety distance between UAVs.

[0088] S43, the UAVs in the set Q whose return paths do not collide with the starting points of the return paths of other UAVs are taken out to form a set q;

[0089] S44, the UAVs in the set q are allocated priorities in the order from near to far to the end point;

[0090] S45, whether there is a UAV without allocated priority is judged;

[0091] S46, if there is a UAV without allocated priority, the step of obtaining all UAVs without allocated priorities to form the set Q is jumped to;

[0092] S47, if there is no UAV without allocated priority, the priority allocation process is ended.

[0093] In this embodiment, the overall return completion time is effectively minimized by setting priorities through an efficient and greedy strategy. The specific steps (dynamically constructing set Q and set q, performing start point collision detection, and assigning priorities from near to far by distance) defined in this embodiment implement a cyclic iteration screening process. The core effect is to prioritize those drones that have the most unobstructed "exit" and can clear space for other drones after leaving. Specifically, in each round of iteration, the system first screens out those drones whose return path start points do not conflict with the start points of any other drones (set q), which means that these drones can take off immediately without colliding with other stationary drones at the start point. Then, among these "safe" drones, the one closest to the end point is given priority to fly first. The great advantage of this approach is that: first, it allows drones that can immediately act to leave as soon as possible, reducing unnecessary waiting time; second, allowing the drones closest to the end point to fly first means that they can complete their return in a shorter time, thereby clearing the way for subsequent lower-priority drones that may have longer paths, avoiding the situation where low-priority drones are forced to hover in the air waiting for the target point to be occupied. This strategy takes a global scheduling perspective, like solving a chain of buttons, step by step, and as quickly as possible to release the dense state of the cluster, thereby significantly shortening the total task completion time from issuing the return instruction to the last drone safely landing, optimizing overall efficiency.

[0094] S5, in order of priority from high to low, sequentially perform conflict resolution processing on each drone: determine whether the return path of the drone will conflict with the return path of a higher-priority drone; if so, delay the takeoff time of the drone until the conflict is resolved; if not, determine the return path and takeoff time of the drone to be effective.

[0095] In specific implementation, after setting the priorities of the drones, check whether collisions occur between return paths in order of priority from high to low, and sequentially perform conflict resolution processing on each drone.

[0096] Specifically, in some preferred embodiments, the above step "determine whether the return path of the drone will conflict with the return path of a higher-priority drone" specifically includes the following steps:

[0097] S51, determine the neighborhood set of the drone from all drones with higher priority.

[0098] In a specific implementation, the existing collision detection process includes many unnecessary detections. The paths of some UAVs are far apart and no collision can occur throughout the entire path, but the existing detection algorithm still includes them in the detection. To improve detection efficiency, the present application uses the characteristic that the paths of all UAVs are composed of two line segments. Each UAV will calculate the minimum distance between its return path and the return paths of all other UAVs at the beginning. If the minimum distance between the return paths is less than the safety distance, the number of the opponent UAV will be recorded and collected into the neighbor set of the UAV.

[0099] S52, determining whether the UAV collides with the UAVs in the neighbor set within the total time length of the return path of the UAV.

[0100] In a specific implementation, after generating the neighbor set, point-by-point collision checking can be performed. The process of point-by-point collision checking is similar to the existing scheme, the only difference is that when checking for collisions, instead of traversing all other UAVs, only the UAVs in the neighbor set are checked.

[0101] The time complexity of the algorithm is n is the total number of UAVs, m is the average number of neighborhood members per path, and T is the average number of points included in each path. In actual scenarios, m is much smaller than n, so the new detection method greatly improves efficiency compared to the existing method. According to the analysis of the measured data, the collision detection time is reduced by at least an order of magnitude.

[0102] S53, if the UAV collides with the UAVs in the neighbor set within the total time length of the return path of the UAV, it is determined that the return path of the UAV will collide with the return path of a UAV with higher priority;

[0103] S54, if the UAV does not collide with the UAVs in the neighbor set within the total time length of the return path of the UAV, it is determined that the return path of the UAV will not collide with the return path of a UAV with higher priority.

[0104] In this embodiment, by introducing the concept of "proximity set", the efficiency of collision detection has been greatly improved. Specifically, in a large-scale cluster environment, the path of a UAV theoretically needs to be compared with all higher-priority UAV paths for collision detection, and the computational complexity increases quadratically with the number of UAVs, making it difficult to meet real-time requirements. The technical solution of this embodiment first filters a small subset, "proximity set", from all high-priority UAVs, and strictly limits the subsequent detailed and computationally intensive point-by-point collision detection range to this set. The technical effect is to reduce the computational complexity of collision detection from global comparison to local comparison. Since under reasonable path allocation and priority setting, most UAVs are far apart and there is no possibility of collision, this step eliminates a large amount of unnecessary calculations, making complex large-scale cluster collision detection feasible and efficient. This two-stage detection strategy of "rough screening first, then fine detection", is one of the key technical innovations that ensures the entire method can handle the return of more than a thousand UAVs in real time, enabling the system to complete all conflict judgments and develop a safe scheduling plan in a very short time.

[0105] In some preferred embodiments, the above step "determining the proximity set of the UAV from all UAVs with higher priority than the UAV" specifically includes the following steps:

[0106] S511, selecting a UAV without a proximity set as a target UAV, wherein all UAVs with higher priority than the target UAV form a high-priority set;

[0107] S512, selecting a UAV without performing the distance comparison step from the high-priority set as a to-be-compared UAV;

[0108] S513, performing the distance comparison step on the to-be-compared UAV: determining whether the minimum distance between the return path of the target UAV and the return path of the to-be-compared UAV is less than the preset safety distance; if the minimum distance between the return path of the target UAV and the return path of the to-be-compared UAV is less than the preset safety distance, adding the to-be-compared UAV to the proximity set of the target UAV; if the minimum distance between the return path of the target UAV and the return path of the to-be-compared UAV is not less than the preset safety distance, determining that the to-be-compared UAV does not belong to the proximity set of the target UAV;

[0109] S514, determining whether there is a UAV without performing the distance comparison step in the high-priority set;

[0110] S515, if there is a UAV in the high-priority set that has not performed the step of spacing comparison, performing the step of selecting the UAV in the high-priority set that has not performed the step of spacing comparison as the UAV to be compared;

[0111] S516, if there is no UAV in the high-priority set that has not performed the step of spacing comparison, ending the spacing comparison process.

[0112] In this embodiment, a specific, reliable and efficient method for constructing a proximity set is provided. The cyclic comparison steps (selecting a target UAV, traversing the high-priority set, calculating the minimum spacing between path segments, and deciding whether to add to the proximity set based on the result) defined in this embodiment ensure that the judgment of membership in the "proximity set" is accurate and complete. It is not based on rough estimates, but rather by calculating the minimum geometric distance between two path segments (the target UAV's and the UAV to be compared) and comparing it with the safety spacing, a hard indicator, to make a decision. This method accurately includes those UAVs that are not at the same time point but have paths that are too close in space and thus pose a potential risk in the detection range, while decisively excluding those UAVs whose paths are far enough apart in space and pose no risk. This accurate screening avoids both false negatives (excluding UAVs that should be detected, leading to safety hazards) and false positives (including UAVs that do not need to be detected, increasing computational burden), thereby minimizing the size of the proximity set without sacrificing safety, further improving efficiency. It provides a solid and efficient basis for subsequent point-by-point detection, and is an indispensable key to balancing accuracy and efficiency in the entire rapid collision detection process.

[0113] In some preferred embodiments, the above step "judging whether the UAV collides with the UAV in the proximity set within the total duration of the UAV's return path" specifically includes the following steps:

[0114] S521, starting from the beginning of the total duration of the UAV's return path, set a detection node every preset time interval. The time interval can be set by those skilled in the art, for example, set to 0.1s, which is not specifically limited by the present application;

[0115] S522, for each detection node, the following collision detection steps are performed: obtaining a first position of the return path of the UAV at the detection node and a second position of the return path of each UAV in the adjacent set at the detection node; determining whether the distance between the first position and all the second positions is greater than a preset safety distance; if the distance between the first position and all the second positions is greater than the preset safety distance, it is determined that there is no collision at the detection node; if the distance between the first position and any of the second positions is not greater than the preset safety distance, it is determined that there is a collision at the detection node;

[0116] S523, determining whether all detection nodes are free of collision;

[0117] S524, if all detection nodes are free of collision, it is determined that the UAV does not collide with the UAVs in the adjacent set within the total duration of the return path of the UAV;

[0118] S525, if there is a detection node with collision, it is determined that the UAV collides with the UAVs in the adjacent set within the total duration of the return path of the UAV.

[0119] In this embodiment, a practical and accurate collision determination method is provided. Specifically, by discretizing the continuous flight path into a series of detection nodes distributed at preset time intervals, and checking the position distance between the target UAV and all UAVs in the adjacent set at each node, this method realizes sufficient evaluation of the collision risk in the continuous motion process. Its technical advantages are twofold: first, by selecting appropriate time intervals, a flexible trade-off between detection accuracy and computational load can be achieved. The shorter the interval, the more accurate the detection, but the greater the computational load; appropriate interval can cover most of the potential collision risks with acceptable computational load, meeting the needs of engineering applications. Second, this discretized detection method is deterministic and repeatable, it does not rely on complex continuous-time kinematics equation solving, the logic is clear and simple, the calculation is stable and reliable, and it is easy to implement in embedded systems. It ensures that the path finally determined to be "collision-free" maintains a safe distance from all surrounding UAVs that may pose a threat at every critical time point during its execution, thereby providing the final and most direct guarantee for the safety of the entire return process, and is the last solid line of defense to avoid physical collision of UAVs.

[0120] S6, all valid return paths and takeoff times are sent to the corresponding UAV for execution, or the landing point information of all valid return paths and takeoff times are sent to the corresponding UAV, and the corresponding UAV calculates and executes the return path based on the received landing point information.

[0121] In specific implementation, the unmanned aerial vehicle cluster emergency return method relates to a series of closely connected technical steps, systematically solving the air space scheduling problem of large-scale cluster in the event of an emergency, specifically:

[0122] Firstly, by responding to emergency instructions and obtaining real-time position information of the unmanned aerial vehicle and the landing point, a data foundation is laid for subsequent global optimization. Then, the optimal matching is performed to minimize the total moving cost, and each unmanned aerial vehicle is assigned a dedicated landing point. Since the matching process fully considers the spatial geometric relationship, the overall path planning has good dispersion and coordination in the initial stage, which reduces the burden of subsequent obstacle avoidance scheduling.

[0123] On this basis, a return path based on the dedicated landing point of each unmanned aerial vehicle is independently generated, which not only guarantees the efficiency of path generation, but more importantly, the path calculation of each unmanned aerial vehicle is independent, creating conditions for distributed computing.

[0124] Further, by setting a return priority for the unmanned aerial vehicle cluster and performing conflict resolution processing based on the priority order, the present application introduces an efficient timing scheduling mechanism. This mechanism ensures that high-priority unmanned aerial vehicles can occupy unobstructed channels and quickly evacuate, while low-priority unmanned aerial vehicles can avoid potential spatial conflicts by delaying takeoff. This priority-based conflict resolution strategy logically eliminates the decision deadlock and oscillation problem commonly seen in distributed autonomous obstacle avoidance, ensuring the global consistency and determinacy of obstacle avoidance decisions, so that even large-scale dense clusters can achieve safe and collision-free evacuation under strict timing control.

[0125] Finally, by issuing a determined and effective return instruction to the unmanned aerial vehicle for execution, or by the unmanned aerial vehicle calculating the complete path locally according to the lightweight instruction, the present application cleverly balances the advantages of centralized control and distributed execution. When the ground control station only needs to issue target point position and takeoff time instructions to the unmanned aerial vehicle, rather than the complete flight trajectory, the amount of communication data is dramatically reduced, which greatly relieves the congestion pressure of the downlink channel in a large-scale cluster system, avoids the problem of out-of-sync instructions caused by communication delay or data loss, and significantly improves the robustness and response reliability of the system in a real complex electromagnetic environment.

[0126] Overall, this method realizes the coordinated improvement of computing efficiency, communication efficiency, and safety performance, enabling large-scale unmanned aerial vehicle clusters to quickly and smoothly convert from a pre-executed formation to an efficient evacuation mode when facing sudden threats, ultimately achieving the core technical effect of completing safe and orderly return in a very short time, and having good engineering application value and promotion prospects.

[0127] An unmanned aerial vehicle cluster emergency return method is provided in the embodiments of the present application, which comprises: in response to an emergency return instruction, obtaining current position information of all unmanned aerial vehicles in the cluster and position information of a plurality of preset landing points; based on the current position information of all unmanned aerial vehicles and the position information of the plurality of preset landing points, performing optimal matching between each unmanned aerial vehicle and each landing point to assign a dedicated landing point to each unmanned aerial vehicle, with the goal of minimizing the total movement cost of all unmanned aerial vehicles to their assigned landing points; based on the dedicated landing point assigned to each unmanned aerial vehicle, generating a return path to the corresponding dedicated landing point for each unmanned aerial vehicle; setting a return priority for all unmanned aerial vehicles; in order of priority from high to low, sequentially performing conflict resolution processing on each unmanned aerial vehicle: determining whether the return path of the unmanned aerial vehicle will conflict with the return path of a higher-priority unmanned aerial vehicle; if so, delaying the takeoff time of the unmanned aerial vehicle until the conflict is resolved; if not, determining that the return path and the takeoff time of the unmanned aerial vehicle are valid; and issuing all determined valid return paths and takeoff times to the corresponding unmanned aerial vehicles for execution, or issuing landing point information of all determined valid return paths and takeoff times to the corresponding unmanned aerial vehicles, which locally calculate and execute the return paths based on the received landing point information. The present application assigns appropriate landing points to unmanned aerial vehicles through global optimal matching, reducing path intersections from the source; through independent path generation and local calculation, the communication load is greatly reduced, and the system response reliability is improved; and the conflict resolution is innovatively performed based on priority timing scheduling, effectively avoiding deadlock and ensuring collision-free. Ultimately, large-scale clusters can be quickly, safely and orderly returned in emergency situations, significantly improving the overall evacuation efficiency and system robustness.

[0128] Corresponding to the above unmanned aerial vehicle cluster emergency return method, the present application also provides an unmanned aerial vehicle cluster emergency return device. The unmanned aerial vehicle cluster emergency return device comprises units for performing the above-mentioned unmanned aerial vehicle cluster emergency return method, and can be configured in a desktop computer, a tablet computer, a laptop computer, and the like. Specifically, the unmanned aerial vehicle cluster emergency return device comprises:

[0129] An obtaining unit is configured to obtain current position information of all unmanned aerial vehicles in the cluster and position information of a plurality of preset landing points in response to an emergency return instruction;

[0130] A matching unit is configured to perform optimal matching between each unmanned aerial vehicle and each landing point to assign a dedicated landing point to each unmanned aerial vehicle, with the goal of minimizing the total movement cost of all unmanned aerial vehicles to their assigned landing points, based on the current position information of all unmanned aerial vehicles and the position information of the plurality of preset landing points;

[0131] A generating unit is configured to generate a return path to the corresponding dedicated landing point for each unmanned aerial vehicle based on the dedicated landing point assigned to each unmanned aerial vehicle;

[0132] a setting unit configured to set a return priority for all the UAVs;

[0133] a conflict detection unit configured to sequentially perform, in order of priority from high to low, conflict resolution processing on each of the UAVs: determining whether the return path of the UAV will collide with the return path of a UAV with a higher priority; if so, delaying the takeoff time of the UAV until the conflict is resolved; and if not, determining that the return path and the takeoff time of the UAV are valid;

[0134] an execution unit configured to issue all the return paths and the takeoff times determined to be valid to the corresponding UAVs for execution, or issue the landing point information of all the return paths determined to be valid and the takeoff times to the corresponding UAVs, and have the corresponding UAVs calculate and execute the return paths locally based on the received landing point information.

[0135] In some preferred embodiments, the matching unit is specifically configured to:

[0136] model a linear assignment problem, the goal of which is to minimize the total movement cost of all the UAVs to their assigned landing points, wherein each UAV must be assigned one and only one landing point, and each landing point must be assigned to one and only one UAV;

[0137] construct a cost matrix, each element of which represents the movement cost of a UAV to a landing point, the movement cost being determined by the squared Euclidean distance between the current position of the UAV and the position of the landing point;

[0138] use the LAPJV algorithm to solve the linear assignment problem to obtain the optimal matching relationship of each UAV to a specific landing point.

[0139] In some preferred embodiments, the return path generated for each UAV is composed of a straight-line path from the current position of the UAV to a preset height above the landing point, and a path from the preset height vertically descending to the landing point.

[0140] In some preferred embodiments, the setting unit is specifically configured to:

[0141] obtain all the UAVs that have not been assigned a priority, constituting a set Q;

[0142] perform start point collision detection on the return path of each UAV in the set Q: detecting whether the return path of the UAV collides with the start point of the return path of another UAV;

[0143] obtain the UAVs in the set Q whose return paths do not collide with the start points of the return paths of other UAVs, constituting a set q;

[0144] prioritizing the drones in the set Q in order from near to far from the end point;

[0145] determining whether there are drones without priority;

[0146] if there are drones without priority, jumping to the step of obtaining all drones without priority to form the set Q.

[0147] In some preferred embodiments, the determining whether the return path of the drone will conflict with the return paths of drones with higher priority includes:

[0148] determining a neighbor set of the drone from all drones with higher priority than the drone;

[0149] determining whether the drone will collide with drones in the neighbor set within the total time length of the return path of the drone;

[0150] if the drone will collide with drones in the neighbor set within the total time length of the return path of the drone, determining that the return path of the drone will conflict with the return paths of drones with higher priority;

[0151] if the drone will not collide with drones in the neighbor set within the total time length of the return path of the drone, determining that the return path of the drone will not conflict with the return paths of drones with higher priority.

[0152] In some preferred embodiments, the determining a neighbor set of the drone from all drones with higher priority than the drone includes:

[0153] selecting a drone without a neighbor set as a target drone, wherein all drones with higher priority than the target drone form a high-priority set;

[0154] selecting a drone without performing the distance comparison step from the high-priority set as a drone to be compared;

[0155] performing the distance comparison step on the drone to be compared: determining whether the minimum distance between the return path of the target drone and the return path of the drone to be compared is less than a preset safety distance; if the minimum distance between the return path of the target drone and the return path of the drone to be compared is less than the preset safety distance, adding the drone to be compared to the neighbor set of the target drone; if the minimum distance between the return path of the target drone and the return path of the drone to be compared is not less than the preset safety distance, determining that the drone to be compared does not belong to the neighbor set of the target drone;

[0156] determining whether the high-priority set has a UAV that has not performed the distance comparison step;

[0157] If the high-priority set has a UAV that has not performed the distance comparison step, performing the step of selecting, from the high-priority set, a UAV that has not performed the distance comparison step as the UAV to be compared.

[0158] In some preferred embodiments, the determining whether the UAV collides with the UAVs in the adjacent set in the total time length of the return path of the UAV comprises:

[0159] From the beginning of the total time length of the return path of the UAV, a detection node is set at each preset time interval;

[0160] For each detection node, the following collision detection step is performed: obtaining a first position of the return path of the UAV at the detection node and a second position of the return path of each UAV in the adjacent set of the UAV at the detection node; determining whether the distance between the first position and all the second positions is greater than a preset safety distance; if the distance between the first position and all the second positions is greater than the preset safety distance, determining that there is no collision at the detection node; if the distance between the first position and any of the second positions is not greater than the preset safety distance, determining that there is a collision at the detection node;

[0161] Determining whether all the detection nodes have no collision;

[0162] If all the detection nodes have no collision, determining that the UAV does not collide with the UAVs in the adjacent set in the total time length of the return path of the UAV;

[0163] If there is a detection node that has a collision, determining that the UAV collides with the UAVs in the adjacent set in the total time length of the return path of the UAV.

[0164] It should be noted that those skilled in the art can clearly understand the specific implementation process of the above-mentioned UAV cluster emergency return device and each unit, which can refer to the corresponding description in the foregoing method embodiments. For the convenience and brevity of description, it will not be repeated here.

[0165] The above-mentioned UAV cluster emergency return device can be realized in the form of a computer program, which can run on a computer device as shown in Figure 3 .

[0166] Please refer to Figure 3 , Figure 3is a schematic block diagram of a computer device provided by an embodiment of the present application. The computer device 500 can be a terminal or a server, wherein the terminal can be a smartphone, a tablet computer, a notebook computer, a desktop computer, a personal digital assistant, a wearable device, or the like electronic device having a communication function. The server can be a standalone server or a server cluster composed of multiple servers.

[0167] The computer device 500 includes a processor 502, a memory, and a network interface 505 connected through a system bus 501, wherein the memory can include a non-volatile storage medium 503 and an internal memory 504.

[0168] The non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032. The computer program 5032, when executed, can cause the processor 502 to perform a method for emergency return of a UAV cluster.

[0169] The processor 502 is configured to provide computing and control capabilities to support the operation of the entire computer device 500.

[0170] The internal memory 504 provides an environment for the execution of the computer program 5032 in the non-volatile storage medium 503, and the computer program 5032, when executed by the processor 502, can cause the processor 502 to perform a method for emergency return of a UAV cluster.

[0171] The network interface 505 is configured to perform network communication with other devices. Those skilled in the art can understand that the above structure is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device 500 to which the scheme of the present application is applied. The specific computer device 500 can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0172] The processor 502 is configured to run the computer program 5032 stored in the memory to implement the following steps:

[0173] S1, in response to an emergency return instruction, obtaining current position information of all UAVs in the cluster and position information of a plurality of preset landing points;

[0174] S2, based on the current position information of all UAVs and the position information of the plurality of preset landing points, optimally matching each UAV with each landing point to minimize the total movement cost of all UAVs to their assigned landing points, and assigning a dedicated landing point to each UAV;

[0175] S3, based on the dedicated landing point assigned to each UAV, generating a return path for each UAV to the corresponding dedicated landing point.

[0176] S4, set the return priority for all UAVs;

[0177] S5, in order of priority from high to low, sequentially perform conflict resolution processing for each UAV: determine whether the return path of the UAV will conflict with the return path of a UAV with higher priority; if so, delay the takeoff time of the UAV until the conflict is resolved; if not, determine that the return path and takeoff time of the UAV are valid;

[0178] S6, issue all determined valid return paths and takeoff times to the corresponding UAVs for execution, or issue all determined valid landing point information of the return paths and takeoff times to the corresponding UAVs, and let the corresponding UAVs calculate and execute the return paths based on the received landing point information.

[0179] In some preferred embodiments, step S2 comprises:

[0180] modeling a linear assignment problem, the goal of which is to minimize the total movement cost of all UAVs to their assigned landing points, wherein each UAV must be assigned one and only one landing point, and each landing point must be assigned to one and only one UAV;

[0181] constructing a cost matrix, each element of which represents the movement cost of a UAV to a landing point, the movement cost being determined by the squared Euclidean distance between the current position of the UAV and the position of the landing point;

[0182] solving the linear assignment problem using the LAPJV algorithm to obtain the optimal matching relationship of each UAV to a specific landing point.

[0183] In some preferred embodiments, the return path generated for each UAV in step S3 consists of a straight line path from the current position of the UAV to a preset height above the landing point, and a path from the preset height vertically descending to the landing point.

[0184] In some preferred embodiments, step S4 comprises:

[0185] obtain all UAVs that have not been assigned a priority, constituting a set Q;

[0186] perform start point collision detection on the return path of the UAV in set Q: detect whether the return path of the UAV collides with the start point of the return path of another UAV;

[0187] remove the UAVs in set Q whose return paths do not collide with the start points of the return paths of other UAVs, constituting a set q;

[0188] prioritize the unmanned aerial vehicles in the set Q according to the distance from the end point to the start point;

[0189] determine whether there is an unmanned aerial vehicle without priority;

[0190] If there is an unmanned aerial vehicle without priority, jump to the step of obtaining all unmanned aerial vehicles without priority to form the set Q.

[0191] In some preferred embodiments, the step of determining whether the return path of the unmanned aerial vehicle conflicts with the return path of the unmanned aerial vehicle with higher priority comprises:

[0192] determining a neighbor set of the unmanned aerial vehicle from all unmanned aerial vehicles with higher priority than the unmanned aerial vehicle;

[0193] determining whether the unmanned aerial vehicle collides with the unmanned aerial vehicle in the neighbor set within the total time length of the return path of the unmanned aerial vehicle;

[0194] If the unmanned aerial vehicle collides with the unmanned aerial vehicle in the neighbor set within the total time length of the return path of the unmanned aerial vehicle, it is determined that the return path of the unmanned aerial vehicle conflicts with the return path of the unmanned aerial vehicle with higher priority;

[0195] If the unmanned aerial vehicle does not collide with the unmanned aerial vehicle in the neighbor set within the total time length of the return path of the unmanned aerial vehicle, it is determined that the return path of the unmanned aerial vehicle does not conflict with the return path of the unmanned aerial vehicle with higher priority.

[0196] In some preferred embodiments, the step of determining a neighbor set of the unmanned aerial vehicle from all unmanned aerial vehicles with higher priority than the unmanned aerial vehicle comprises:

[0197] selecting an unmanned aerial vehicle without a neighbor set as a target unmanned aerial vehicle, wherein all unmanned aerial vehicles with higher priority than the target unmanned aerial vehicle form a high priority set;

[0198] selecting an unmanned aerial vehicle without performing the step of distance comparison from the high priority set as a to-be-compared unmanned aerial vehicle;

[0199] performing the step of distance comparison on the to-be-compared unmanned aerial vehicle: determining whether the minimum distance between the return path of the target unmanned aerial vehicle and the return path of the to-be-compared unmanned aerial vehicle is less than the preset safety distance; if the minimum distance between the return path of the target unmanned aerial vehicle and the return path of the to-be-compared unmanned aerial vehicle is less than the preset safety distance, adding the to-be-compared unmanned aerial vehicle to the neighbor set of the target unmanned aerial vehicle; if the minimum distance between the return path of the target unmanned aerial vehicle and the return path of the to-be-compared unmanned aerial vehicle is not less than the preset safety distance, determining that the to-be-compared unmanned aerial vehicle does not belong to the neighbor set of the target unmanned aerial vehicle;

[0200] determining whether the high-priority set has a UAV that has not performed the distance matching step;

[0201] If the high-priority set has a UAV that has not performed the distance matching step, performing the step of selecting, from the high-priority set, a UAV that has not performed the distance matching step as the UAV to be matched.

[0202] In some preferred embodiments, the determining whether the UAV collides with the UAVs in the adjacent set in the total time length of the return path of the UAV comprises:

[0203] At intervals of a preset time interval, a detection node is set from the start of the total time length of the return path of the UAV;

[0204] For each detection node, the following collision detection step is performed: obtaining a first position of the return path of the UAV at the detection node and second positions of the return paths of the UAVs in the adjacent set of the UAV at the detection node; determining whether the distance between the first position and all the second positions is greater than a preset safety distance; if the distance between the first position and all the second positions is greater than the preset safety distance, determining that there is no collision at the detection node; and if the distance between the first position and any of the second positions is not greater than the preset safety distance, determining that there is a collision at the detection node.

[0205] Determining whether all the detection nodes have no collision.

[0206] If all the detection nodes have no collision, determining that the UAV does not collide with the UAVs in the adjacent set in the total time length of the return path of the UAV.

[0207] If there is a detection node that has a collision, determining that the UAV collides with the UAVs in the adjacent set in the total time length of the return path of the UAV.

[0208] It should be understood that, in the embodiments of the present application, the processor 502 can be a central processing unit (CPU), and the processor 502 can also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor.

[0209] It can be understood by those skilled in the art that all or part of the processes in the method of implementing the above embodiments can be completed by instructing the relevant hardware by a computer program. The computer program can be stored in a storage medium, which is a computer readable storage medium. The computer program is executed by at least one processor in the computer system to realize the process steps of the above-mentioned embodiment of the method.

[0210] Therefore, the present application also provides a storage medium. The storage medium can be a computer readable storage medium. The storage medium stores a computer program. The computer program is executed by the processor to make the processor execute the following steps:

[0211] S1, in response to the emergency return instruction, obtaining the current position information of all unmanned aerial vehicles in the cluster and the position information of the plurality of preset landing points;

[0212] S2, based on the current position information of all unmanned aerial vehicles and the position information of the plurality of preset landing points, optimally matching each unmanned aerial vehicle with each landing point to assign a dedicated landing point to each unmanned aerial vehicle, with the goal of minimizing the total movement cost of all unmanned aerial vehicles to their assigned landing points;

[0213] S3, based on the dedicated landing point assigned to each unmanned aerial vehicle, generating a return path for each unmanned aerial vehicle to the corresponding dedicated landing point;

[0214] S4, setting a return priority for all unmanned aerial vehicles;

[0215] S5, in order of priority from high to low, sequentially performing conflict resolution processing on each unmanned aerial vehicle: determining whether the return path of the unmanned aerial vehicle will conflict with the return path of a higher-priority unmanned aerial vehicle; if so, delaying the takeoff time of the unmanned aerial vehicle until the conflict is resolved; if not, determining that the return path and the takeoff time of the unmanned aerial vehicle are valid;

[0216] S6, issuing all determined valid return paths and takeoff times to the corresponding unmanned aerial vehicle for execution, or issuing the landing point information of all determined valid return paths and the takeoff time to the corresponding unmanned aerial vehicle, and calculating and executing the return path locally based on the received landing point information by the corresponding unmanned aerial vehicle.

[0217] In some preferred embodiments, step S2 comprises:

[0218] modeling a linear assignment problem, the goal of which is to minimize the total movement cost of all unmanned aerial vehicles to their assigned landing points, wherein each unmanned aerial vehicle must be assigned one and only one landing point, and each landing point must be assigned to one and only one unmanned aerial vehicle;

[0219] constructing a cost matrix, each element of which represents a moving cost of a UAV to a landing point, the moving cost being determined by the squared Euclidean distance between the current position of the UAV and the position of the landing point;

[0220] solving the linear assignment problem by using the LAPJV algorithm to obtain the optimal matching relationship of each UAV to a specific landing point.

[0221] In some preferred embodiments, the return path generated for each UAV in step S3 is composed of a straight line path from the current position of the UAV to a preset height above the landing point and a path from the preset height vertically descending to the landing point.

[0222] In some preferred embodiments, step S4 comprises:

[0223] obtaining all UAVs without assigned priorities to form a set Q;

[0224] performing start point collision detection on the return paths of the UAVs in set Q: detecting whether the return path of a UAV collides with the start point of the return path of another UAV;

[0225] obtaining UAVs in set Q whose return paths do not collide with the start points of the return paths of other UAVs to form a set q;

[0226] assigning priorities to the UAVs in set q in order from near to far from the end point;

[0227] determining whether there are UAVs without assigned priorities;

[0228] if there are UAVs without assigned priorities, jumping to the step of obtaining all UAVs without assigned priorities to form a set Q.

[0229] In some preferred embodiments, the determination of whether the return path of a UAV will collide with the return path of a UAV with a higher priority comprises:

[0230] determining a neighborhood set of the UAV from all UAVs with a higher priority than the UAV;

[0231] determining whether the UAV collides with the UAVs in the neighborhood set within the total time length of the return path of the UAV;

[0232] if the UAV collides with the UAVs in the neighborhood set within the total time length of the return path of the UAV, determining that the return path of the UAV will collide with the return path of a UAV with a higher priority;

[0233] If the UAV does not collide with the UAVs in the adjacent set within the total time length of the return path of the UAV, it is determined that the return path of the UAV does not conflict with the return path of the UAV with higher priority.

[0234] In some preferred embodiments, the determining of the adjacent set of UAVs from all UAVs with higher priority than the UAV comprises:

[0235] Selecting a UAV without the adjacent set as a target UAV, wherein all UAVs with higher priority than the target UAV form a high-priority set;

[0236] Selecting a UAV without performing the distance comparison step from the high-priority set as a UAV to be compared;

[0237] Performing the distance comparison step on the UAV to be compared: determining whether the minimum distance between the return path of the target UAV and the return path of the UAV to be compared is less than the preset safety distance; if the minimum distance between the return path of the target UAV and the return path of the UAV to be compared is less than the preset safety distance, adding the UAV to be compared to the adjacent set of the target UAV; if the minimum distance between the return path of the target UAV and the return path of the UAV to be compared is not less than the preset safety distance, determining that the UAV to be compared does not belong to the adjacent set of the target UAV;

[0238] Determining whether there is a UAV without performing the distance comparison step in the high-priority set;

[0239] If there is a UAV without performing the distance comparison step in the high-priority set, performing the step of selecting a UAV without performing the distance comparison step from the high-priority set as a UAV to be compared.

[0240] In some preferred embodiments, the determining whether the UAV collides with the UAVs in the adjacent set within the total time length of the return path of the UAV comprises:

[0241] Starting from the beginning of the total time length of the return path of the UAV, a detection node is set at every preset time interval;

[0242] performing the following collision detection steps for each detection node: obtaining a first position of the return path of the UAV at the detection node and second positions of the return paths of the UAVs in the adjacent set at the detection node; determining whether the distance between the first position and all the second positions is greater than a preset safety distance; if the distance between the first position and all the second positions is greater than the preset safety distance, determining that there is no collision at the detection node; if the distance between the first position and any of the second positions is not greater than the preset safety distance, determining that there is a collision at the detection node;

[0243] determining whether all the detection nodes have no collision;

[0244] if all the detection nodes have no collision, determining that the UAV does not collide with the UAVs in the adjacent set in the total time length of the return path of the UAV;

[0245] if there is a detection node with collision, determining that the UAV collides with the UAVs in the adjacent set in the total time length of the return path of the UAV.

[0246] The storage medium is an entity, non-transient storage medium, for example, can be a U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), a variety of storage medium such as a disc or optical disc that can store program codes. The computer readable storage medium can be non-volatile, or volatile.

[0247] Those skilled in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be realized in electronic hardware, computer software or a combination of both. In order to clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been described in the above description in general terms. Whether the functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. The skilled person can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0248] In several embodiments provided by the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of each unit is only a logical function division, and actual implementation can have another division manner. For example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0249] The steps in the method of the embodiments of the present application can be adjusted in sequence, combined and deleted according to actual needs. The units in the device of the embodiments of the present application can be combined, divided and deleted according to actual needs. In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can exist physically independently, or two or more units can be integrated in one unit.

[0250] The integrated unit, if realized in the form of a software functional unit and sold or used as an independent product, can be stored in a storage medium. Based on such understanding, the technical solutions of the present application essentially or the part of the prior art that contributes to the present application, or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be a personal computer, a terminal, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application.

[0251] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited to this. Any person skilled in the art can easily think of various equivalent modifications or replacements within the technical range disclosed by the present application, and these modifications or replacements should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method for emergency return of a UAV cluster, characterized in that, The method comprises the following steps: S1, in response to an emergency return instruction, obtaining current position information of all unmanned aerial vehicles (UAVs) in a cluster and position information of a plurality of preset landing points; S2, based on the current position information of all UAVs and the position information of the plurality of preset landing points, optimally matching each UAV with each landing point to minimize the total movement cost of all UAVs to the landing points to which they are assigned, and assigning a dedicated landing point to each UAV; S3, based on the dedicated landing point assigned to each UAV, generating a return path for each UAV to the corresponding dedicated landing point; S4, setting a return priority for all UAVs; S5, in order of priority from high to low, sequentially performing conflict resolution processing on each UAV: determining whether the return path of the UAV will conflict with the return path of a UAV with a higher priority; if yes, delaying the takeoff time of the UAV until the conflict is resolved; if no, determining that the return path and the takeoff time of the UAV are valid; S6, issuing all the determined valid return paths and takeoff times to the corresponding UAVs for execution, or issuing the landing point information of all the determined valid return paths and the takeoff times to the corresponding UAVs, and calculating and executing the return paths locally based on the received landing point information by the corresponding UAVs; wherein step S2 comprises: modeling a linear assignment problem, the goal of which is to minimize the total movement cost of all UAVs to the landing points to which they are assigned, wherein each UAV must be assigned one and only one landing point, and each landing point must be assigned to one and only one UAV; constructing a cost matrix, each element of which represents the movement cost of a UAV to a landing point, which is determined by the squared Euclidean distance between the current position of the UAV and the position of the landing point; solving the linear assignment problem using the LAPJV algorithm to obtain the optimal matching relationship of each UAV to a specific landing point; in step S3, the return path generated for each UAV consists of a straight line path from the current position of the UAV to a preset height above the landing point, and a vertical descent path from the preset height to the landing point; step S4 comprises: obtaining all UAVs without assigned priority to form a set Q; performing start point collision detection on the return path of the UAVs in set Q: detecting whether the return path of the UAV collides with the start point of the return path of other UAVs; taking out the UAVs in set Q whose return paths do not collide with the start points of the return paths of other UAVs to form a set q; assigning priorities to the UAVs in set q in order of distance from the end point from near to far; determining whether there are UAVs without assigned priority; if there are UAVs without assigned priority, jumping to the step of obtaining all UAVs without assigned priority to form a set Q. 2.The UAV cluster emergency return method of claim 1, wherein, the determination of whether the return path of the UAV will conflict with the return path of a UAV with a higher priority comprises: determining a neighborhood set of the UAV from all UAVs with a higher priority than the UAV. determining whether the UAV collides with the UAVs in the adjacent set within the total time length of the return path of the UAV; if the UAV collides with the UAVs in the adjacent set within the total time length of the return path of the UAV, determining that the return path of the UAV conflicts with the return path of the UAV with higher priority; if the UAV does not collide with the UAVs in the adjacent set within the total time length of the return path of the UAV, determining that the return path of the UAV does not conflict with the return path of the UAV with higher priority. 3.The UAV cluster emergency return method of claim 2, wherein, The method for determining the adjacent set of the UAV from all the UAVs with higher priority than the UAV comprises: selecting a UAV without an adjacent set as a target UAV, wherein all the UAVs with higher priority than the target UAV form a high-priority set; selecting a UAV without performing the distance comparison step from the high-priority set as a UAV to be compared; performing the distance comparison step on the UAV to be compared: determining whether the minimum distance between the return path of the target UAV and the return path of the UAV to be compared is less than the preset safety distance; if the minimum distance between the return path of the target UAV and the return path of the UAV to be compared is less than the preset safety distance, adding the UAV to be compared to the adjacent set of the target UAV; if the minimum distance between the return path of the target UAV and the return path of the UAV to be compared is not less than the preset safety distance, determining that the UAV to be compared does not belong to the adjacent set of the target UAV; determining whether there is a UAV without performing the distance comparison step in the high-priority set; if there is a UAV without performing the distance comparison step in the high-priority set, performing the step of selecting a UAV without performing the distance comparison step from the high-priority set as a UAV to be compared. 4.The UAV cluster emergency return method of claim 2, wherein, The method for determining whether the UAV collides with the UAVs in the adjacent set within the total time length of the return path of the UAV comprises: setting a detection node every preset time interval from the start of the total time length of the return path of the UAV; for each detection node, performing the following collision detection step: obtaining the first position of the return path of the UAV at the detection node and the second position of the return path of each UAV in the adjacent set of the UAV at the detection node; determining whether the distance between the first position and all the second positions is greater than the preset safety distance; if the distance between the first position and all the second positions is greater than the preset safety distance, determining that there is no collision at the detection node; if the distance between the first position and any of the second positions is not greater than the preset safety distance, determining that there is a collision at the detection node; determining whether all the detection nodes are free of collision; if all the detection nodes are free of collision, determining that the UAV does not collide with the UAVs in the adjacent set within the total time length of the return path of the UAV; if there is a detection node with collision, determining that the UAV collides with the UAVs in the adjacent set within the total time length of the return path of the UAV.

5. An emergency return device for a drone swarm, characterized in that, The computer device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the method according to any one of claims 1-4 when executing the computer program.

6. A computer device, comprising: The storage medium stores a computer program, and the computer program can implement the method according to any one of claims 1-4 when being executed by a processor.

7. A computer readable storage medium characterized in that, ​

Citation Information

Patent Citations

  • Unmanned aerial vehicle autonomous homeward voyage charging system based on wireless charging

    CN120540369A

  • Path planning method, path planning apparatus, path planning system, and medium

    WO2022095060A1