A multi-UAV collaborative search method
By convexizing the non-convex polygonal area into convex polygons and adopting "Z" paths and Dubins turn path planning, the track crossing and blind spot problems in collaborative search of multiple drones is solved, and efficient full coverage search and simplified task allocation are achieved, suitable for complex battlefield environments.
Patent Information
- Application Number
- CN202210847529.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-19
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2042-07-19
AI Technical Summary
The existing multi-UAV collaborative search methods have problems such as cross-track, non-convex polygon search blind spots, and complex and low task allocation, especially in large-scale task areas, which are difficult to converge for too long calculation time.
The Graham method is used to convex the non-convex polygon into convex polygons, and the drone track is planned through the "Z" path and the Dubins turn path, and the task allocation and track planning are combined with the repulsion model to ensure full coverage search.
It realizes full coverage search of non-convex polygonal areas by drones, simplifies task allocation and track planning, improves calculation speed and efficiency, and is suitable for real-time online planning.
Smart Images

Figure CN115097866B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of drones, and in particular to a multi-drone collaborative search method. Background Art
[0002] Multi-UAV collaborative search is one of the typical applications of UAV swarm technology. It refers to a strategy in which two or more UAVs cooperate with each other and collaborate to perform regional search tasks. It has been widely used in both civilian and military fields.
[0003] In a complex and ever-changing battlefield environment, UAVs are faced with many limitations such as fuel consumption, maneuverability, and sensor accuracy when performing reconnaissance and search missions. A single UAV is often unable to meet the mission requirements. To this end, many scholars at home and abroad have conducted extensive research on multi-UAV collaborative search (Reference: Han Xu, Sheng Huaijie. A review of research on multi-UAV collaborative search [J]. Cruise Missile, 2018, (3): 40-45.).
[0004] When multiple drones perform collaborative search missions, they need to traverse the mission area to discover suspicious targets. Traditional solutions for non-convex polygonal searches first segment the mission area, then assign sub-regional tasks to drones through a command center. Finally, each drone traverses and searches within its corresponding mission sub-region along a Z-shaped path (Dai Jian, Xu Fei, and Chen Qifeng. Area Division and Path Planning for Collaborative Search among Multiple UAVs [J]. Acta Aeronautica et Aeronautica Sinica, 2020(S01):146-153).
[0005] Existing multi-UAV collaborative search methods have the following three main problems:
[0006] 1) Track intersection between multiple UAVs. In traditional multi-UAV collaborative search methods, the mission area needs to be divided into multiple sub-task areas, and one or more UAVs are assigned to search each sub-area. As the UAVs traverse and search each sub-area, track intersection may occur.
[0007] 2) There are blind spots in the search of non-convex polygonal mission areas by multiple UAVs. To avoid route intersections, traditional multi-UAV collaborative search methods often avoid notches, resulting in blind spots in the search of the mission area.
[0008] 3) Traditional multi-UAV collaborative search task allocation methods are complex and inefficient. Traditional multi-UAV collaborative search methods decompose non-convex polygons into several convex polygons and then allocate tasks to these sub-convex polygons.
[0009] In response to this, some scholars have rasterized the entire task area and transformed the area traversal search problem into a multi-traveling salesman problem. However, when the task area is large and the rasterization granularity is fine, there is a problem of long calculation time and difficult results to converge. Summary of the Invention
[0010] The purpose of this application is to provide a multi-UAV collaborative search method to address the deficiencies of the above-mentioned existing technologies.
[0011] The technical solution of this application is as follows:
[0012] A multi-UAV collaborative search method for non-convex polygonal areas with high effectiveness and timeliness is proposed. The non-convex polygon is convexed by the Graham method to obtain the convexed task area. The task area is then divided into several convex polygonal sub-areas for multi-UAV task allocation. Finally, a coverage search path within the search sub-area is planned using a "Z" path and Dubins turn path.
[0013] A practical multi-UAV collaborative search method includes the following steps:
[0014] S1, determine the mission environment of multi-UAV collaborative search mission;
[0015] S1.1 Set the task area P to be searched;
[0016] S1.2 Set the number of drones m, the flight speed of drones v, and the flight altitude of drones h;
[0017] S1.3 Set the detection range of the reconnaissance payload carried by the UAV;
[0018] S2, the task area P to be searched is convexified: Graham's method is used to solve the minimum convex polygon enveloping the task area, and the minimum convex polygon is divided into m subtask areas with equal distances;
[0019] S3: Mission area allocation and multi-UAV trajectory planning.
[0020] Set a safe distance r between drones. If the distance between two drones is less than the safe distance, mutual repulsion occurs, and the direction of the repulsive force is parallel to the line connecting the two drones. If the distance between a drone and other drones is greater than the safe distance, the repulsive force on the drone is 0.
[0021] Carry out multi-UAV search task allocation, assigning one UAV to each subtask area to perform the search task;
[0022] Each UAV traverses the mission area in a designated mission area using a route parallel to the width of the minimum convex polygon, and uses the Dubins path to process the turning points of the route to generate all the routes.
[0023] Furthermore, in S1.3, the detection range of the reconnaissance payload is: the detection range of the reconnaissance payload on the ground is a side length of The FOV represents the field of view of the reconnaissance payload carried by the UAV.
[0024] Furthermore, S2 includes the following sub-steps:
[0025] 2.1 Find a point outside the endpoint of the non-convex polygon and record it as point A. Select the point with the extreme value of the horizontal coordinate or vertical coordinate, take point A as the origin, establish a polar coordinate system, and calculate the polar coordinates of all the remaining points, and sort them by polar angle.
[0026] 2.2 Use a stack S to store the points on the convex polygon. First, push the two points with the smallest polar angle into the stack. Connect the first two elements on the top of the stack in order to form vector a. Scan each endpoint of the polygon area and connect the second element on the top of the stack with the point to form vector b. Take the cross product of vector a and vector b and check whether the polyline segment formed by the first two elements on the top of the stack and this point "turns" to the right.
[0027] 2.3 If the point does not turn right, pop the top element of the stack and return to step 2.2 to check again until the condition is not satisfied. Push the point into the stack and continue to perform step 2.3 on other points. Finally, the elements in the stack are the vertex sequence of the convex polygon.
[0028] Furthermore, S2 includes the following sub-steps:
[0029] S2-0: polygonal task area P;
[0030] S2-2: The polygonal task area P has a total of n endpoints. Find a point on its periphery, denoted as point A, and select the point with the extreme value of the horizontal coordinate or vertical coordinate;
[0031] S2-2: Take point A as the origin, establish a polar coordinate system, and calculate the polar coordinates of all remaining points, and sort them by polar angle;
[0032] S2-3: Use a stack S to store the points on the convex polygon, and first push the two points with the smallest polar angle into the stack;
[0033] S2-4: Loop solution
[0034] S2-4-1, i is initially assigned to 1; for i=1,2……n do
[0035] S2-4-2: Connect the first two elements on the stack in order to form vector a i , scan each endpoint of the polygonal area, connect the second element from the top of the stack with the point, and form a vector b i ;
[0036] S2-4-3 If a i ×b i <0, then pop the top element of the stack; otherwise, push this endpoint onto the stack;
[0037] S2-4-4 When i > n, exit the loop and proceed to step S2-5;
[0038] When i < n, increment the assignment of i by 1, and repeat steps S2-4-2 to S2-4-4;
[0039] S2-5: The elements in the final stack are the vertex sequence of the convex polygon;
[0040] S2-6: Output the vertex sequence of the convexified polygon.
[0041] Furthermore, in S3, the magnitude of the repulsive force is:
[0042]
[0043] where F rep is the repulsive force exerted on a UAV by another UAV; k is the proportionality coefficient; r is the distance between the UAV and other UAVs; R is the maximum distance at which other UAVs exert an effect on the UAV.
[0044] Furthermore, S3 also includes the following sub-steps:
[0045] S3.1, Take the line perpendicular to the width direction of the convex polygon as the reference line; calculate the intercept of the line parallel to the reference line and passing through the vertex farthest from the reference line, and find the maximum distance, and then find the number of scan lines in this area according to the requirements of the search ability;
[0046] S3.2, Calculate the positions of the intersections of each scan line parallel to the reference line with region P, thereby obtaining the endpoint positions of the scan lines, equally divide the region according to the number of UAVs, and calculate the intersections of the divided reference line with the polygon boundary, which are the search starting points P ns (x s ,y s ,ψ s ); x s ,y s ,ψ s respectively represent the abscissa, ordinate, and heading angle at the starting point position of each UAV;
[0047] S3.3 The UAV flies to the starting point P s , flies along the main axis direction, makes a turning maneuver when reaching the polygon boundary, and flies along the main axis direction; repeat this process until the UAV reaches or leaves the vertex farthest from the starting edge, and the path planning is completed.
[0048] The beneficial effects of this application are:
[0049] First, the present invention can achieve full coverage of non-convex polygonal areas by UAV reconnaissance by convexifying non-convex polygons and further using parallel routes to traverse the mission area.
[0050] Second, the task allocation rules and trajectory planning algorithm of the present invention are simple, do not require a large amount of calculation, have a fast calculation speed, and are suitable for online real-time route planning of drones. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] The present application will be further described in detail below with reference to the embodiments in the accompanying drawings, but this does not constitute any limitation to the present application.
[0052] Figure 1 This is a flow chart of the multi-UAV collaborative search method.
[0053] Figure 2 This is a schematic diagram of the detection range of airborne reconnaissance sensors.
[0054] Figure 3 This is the flow chart of the algorithm for converting a non-convex polygon into a minimum convex polygon.
[0055] Figure 4 It is a schematic diagram of converting a non-convex polygon into a minimum convex polygon.
[0056] Figure 5 This is a schematic diagram of a single UAV searching a convex polygon area.
[0057] Figure 6 This is a schematic diagram of multiple drones searching for a convex polygon area. DETAILED DESCRIPTION
[0058] In order to describe the technical solution described in this application more clearly, deeply and completely, it will be explained from the perspective of specific implementation according to the accompanying drawings. The embodiments are part of the embodiments of this application, not all of the embodiments. The embodiments only provide one way to implement the proposed innovation, not the only one, and do not exclude the use of other ways to implement the above-mentioned inventions.
[0059] Example 1:
[0060] A practical multi-UAV collaborative search method, such as Figure 1 As shown in the figure, the shape of the initial mission area can be any polygon. For convex polygons, a "Z"-shaped path is used for reconnaissance path planning to achieve full coverage of the mission area. For non-convex polygons, in order to achieve full coverage of the area, the Graham method is first used to convert the non-convex polygon into a convex polygon, and then multi-UAV trajectory planning is performed.
[0061] The following steps are involved:
[0062] Step 1: Determine the mission environment for the multi-UAV collaborative search mission
[0063] 1.1 Set the mission area to be searched. The mission area is composed of irregular polygons. When multiple drones search in a coordinated manner, they must traverse the entire mission area. ABCDE For example, Figure 4 As shown in (a), A, B, C, D, and E are the five vertices of the pentagonal task area, and their two-dimensional coordinates are expressed as (x A ,y A )、(x B ,y B )、(x C ,y C )、(x D ,y D )、(x E ,y E );
[0064] 1.2 Set the number of drones n, drone flight speed v, and drone flight altitude h;
[0065] 1.3 Set the detection range of the reconnaissance payload carried by the drone. Take the drone's center of mass as the origin, the drone's forward direction as the positive direction of the Y axis, the right side of the drone as the positive direction of the X axis, and the vertical plane of the drone as the positive direction of the Z axis to build a coordinate system. The field of view of the onboard sensor is FOV. The detection range of the reconnaissance payload on the ground is a square with a side length of square, such as Figure 2 As shown, it is considered that all points on the ground that exist within the square can be detected.
[0066] Step 2: Convexify the non-convex polygon area. Graham's method will be used to convexify the non-convex polygon, and then the multi-UAV reconnaissance path planning will be carried out. Since the endpoints of the area shape are known, the essence of the convex polygonization of the area is to use some endpoints of the non-convex polygon to construct a convex polygon, so that all points of the non-convex polygon are inside the convex polygon, and the area of the convex polygon is minimized. Figure 4 As shown, this application uses the Graham method to convexify non-convex polygons. The algorithm steps are as follows:
[0067] Input: non-convex polygon task area Q;
[0068] process:
[0069] 1: A non-convex polygon has n endpoints. Find a point outside the endpoint of the non-convex polygon and record it as point A. Generally, the point at the extreme value of the horizontal coordinate or vertical coordinate is selected.
[0070] 2: Take point A as the origin, establish a polar coordinate system, and calculate the polar coordinates of all the remaining points, and sort them by polar angle (the smaller the angle, the higher the order)
[0071] 3: Use a stack S to store the points on the convex polygon, and first push the two points with the smallest polar angle into the stack
[0072] 4:for i=1,2……n do
[0073] 5: Connect the first two elements on the stack in order to form vector a i , scan each endpoint of the polygonal area, connect the second element from the top of the stack with the point, and form a vector b i ;
[0074] 6: if a i ×b i <0 then
[0075] 7: Pop the top element of the stack;
[0076] 8: else
[0077] 9: Push the endpoint into the stack;
[0078] 9: break;
[0079] 10: end if
[0080] 11: end for
[0081] 12: The elements in the final stack are the vertex sequence of the convex polygon
[0082] Output: Vertex sequence of the convex polygon
[0083] 2.1 Find a point outside the endpoints of the non-convex polygon, denoted as point A. Typically, a point with an extreme value of the horizontal or vertical coordinate is selected. With point A as the origin, establish a polar coordinate system. Calculate the polar coordinates of all remaining points and sort them by polar angle (smallest angle first).
[0084] 2.2 Use a stack S to store the points on a convex polygon. First, push the two points with the smallest polar angles into the stack. Concatenate the first two elements on the stack to form vector a. Scan each endpoint of the polygon and concatenate the second element on the stack to that point to form vector b. Take the cross product of vectors a and b and check whether the polyline segment formed by the first two elements on the stack and that point bends to the right.
[0085] 2.3 If the point does not turn right, pop the top element from the stack and return to step 2.2 to check again until the condition is no longer satisfied. Push the point onto the stack and repeat step 2.3 for the remaining points. The final stack contains the vertex sequence of the convex polygon.
[0086] The flowchart of step 2 is as follows Figure 3 As shown, the schematic diagram of the convexification of the non-convex polygon is as follows Figure 4 As shown in (bf).
[0087] Step 3: Mission area allocation and multi-UAV trajectory planning
[0088] 3.1 Take a line perpendicular to the width of the convex polygon as the baseline. Calculate the intercept of a line parallel to the baseline and passing through the vertex farthest from the baseline. Find the maximum distance, and then determine the number of scan lines in the area based on the search capability requirements.
[0089] 3.2 Calculate the intersection of each scan line parallel to the baseline and the area P to obtain the scan line endpoint position. Divide the area into equal proportions according to the number of drones, and calculate the intersection of the baseline and the polygon boundary after division to search for the starting point P for each drone. ns (x s ,y s ,ψ s ).
[0090] 3.3 The drone flies to the starting point P s , fly along the main axis, and when reaching the polygon boundary, perform a U-turn and fly along the main axis. This cycle repeats until the UAV reaches or leaves the vertex farthest from the starting edge, and the path planning is completed.
[0091] The above embodiments are preferred implementation modes of the present application and are only used to facilitate the explanation of the present application. They are not intended to limit the present application in any form. Any person with ordinary knowledge in the relevant technical field, if they do not depart from the scope of the technical features proposed in the present application, can make equivalent embodiments by making partial changes or modifications to the technical content disclosed in the present application, and they do not depart from the technical features of the present application. They are still within the scope of the technical features of the present application.
Claims
1. A practical multi-UAV collaborative search method, characterized in that: The steps include: S1, determine the mission environment of the multi-UAV collaborative search mission, which includes: S1.1 Set the task area P to be searched; S1.2 Set the number of drones m, the flight speed of drones v, and the flight altitude of drones h; S1.3 sets the detection range of the reconnaissance payload carried by the UAV. In S1.3, the detection range of the reconnaissance payload is: the detection range of the reconnaissance payload on the ground is a square with a side length of 2htan(FOV / 2), where FOV represents the field of view of the reconnaissance payload carried by the UAV. S2, the task area P to be searched is convexified, which includes the following sub-steps: 2.1 Find a point outside the endpoint of the non-convex polygon and record it as point A. Select the point with the extreme value of the horizontal coordinate or vertical coordinate, take point A as the origin, establish a polar coordinate system, and calculate the polar coordinates of all the remaining points, and sort them by polar angle. 2.2 Use a stack S to store the points on the convex polygon. First, push the two points with the smallest polar angle into the stack. Connect the first two elements on the stack in order to form vector a. Scan each endpoint of the polygon and connect the second element on the stack with the point to form vector b. Take the cross product of vector a and vector b and check whether the polyline segment formed by the first two elements on the stack and the point turns to the right. 2.3 If the point does not turn right, pop the top element of the stack and return to step 2.2 to check again until the condition is not satisfied. Push the point into the stack and continue to perform step 2.3 on other points. Finally, the elements in the stack are the vertex sequence of the convex polygon. S3: Mission area allocation and multi-UAV trajectory planning: Set a safe distance r between UAVs. If the distance between two UAVs is less than the safe distance, a mutual repulsion force is generated, and the direction of the repulsive force is parallel to the line connecting the two UAVs. If the distance between a drone and other drones is greater than the safe distance, the repulsive force on the drone is 0. Multi-drone search tasks are assigned, with one drone assigned to each subtask area to perform the search task. Each drone traverses the task area using a route parallel to the width of the minimum convex polygon within the designated task area. Dubins paths are used to process the turns of the route to generate all the routes. The magnitude of the repulsive force is: F rep =k(r -1 -R -1 ) / r 2 ,r∈(0,R) Where, F rep is the repulsive force exerted on the drone by another drone; k is the proportional coefficient; r is the distance between the drone and other drones; R is the maximum distance at which other drones can exert an effect on the drone; S3 also includes the following sub-steps: S3.1, take a line perpendicular to the width of the convex polygon as the baseline; calculate the intercept of a line parallel to the baseline and passing through the vertex farthest from the baseline, and find the maximum distance. Then, determine the number of scan lines in the area based on the search capability requirements; S3.2, calculate the intersection of each scan line parallel to the baseline and the area P, and use this to get the scan line endpoint position. Divide the area into equal proportions according to the number of drones, and calculate the intersection of the baseline after division and the polygon boundary, and search for the starting point P for each drone. ns (x s ,y s ,Ψ s ); S3.3, the drone flies to the starting point P s , fly along the main axis, and when reaching the polygon boundary, take a U-turn and fly along the main axis; this cycle repeats until the UAV reaches or leaves the vertex farthest from the starting edge, and the path planning is completed.