Collaborative planning device of multiple unmanned aerial vehicles for multi-task target
By designing a collaborative planning device for multi-drone targets for multi-task goals, using the RRT algorithm to plan paths in the elevation map, the task allocation and path planning problems in the collaborative work of multi-machine and multi-objectives are solved, and efficient and automated task execution and path planning are achieved.
Patent Information
- Application Number
- CN202510122690.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-26
- Publication Date
- 2025-05-09
AI Technical Summary
In multi-UAV teams, the task planning module needs to plan multiple tasks such as points, lines, and regions at the same time, and path planning is difficult in complex scenarios, making it difficult to effectively solve the problem of task allocation and path planning in the coordinated work of multiple machines and multiple targets.
A collaborative planning device for multi-drone targets is designed, including an information acquisition module, a task allocation module, a path planning module and an information transmission module. The device uses the RRT algorithm to plan the path in the elevation map, combining geographical information and evasion area data to ensure the effectiveness and simplicity of the path.
The efficiency of multi-drone performing multi-objective tasks is improved, automated task allocation and path planning is realized, manual intervention and errors are reduced, and path planning is improved simplicity and efficiency.
Smart Images

Figure CN119958568A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of collaborative planning of unmanned aerial vehicles, and in particular to a collaborative planning device for multiple unmanned aerial vehicles facing multiple mission targets. Background Art
[0002] Rotor UAVs are widely used in power inspection, agricultural and forestry plant protection, anti-terrorism and rescue, etc., due to their flexible movements, simple control, wide field of view, and variable load. In the above-mentioned UAV applications, the UAV is controlled by the ground station, receives the remote control instructions from the pilot, performs the corresponding flight actions, and completes the designated tasks.
[0003] During the mission, the drone can complete the action mission autonomously without the intervention of the pilot. In autonomous mode, the drone receives multiple waypoint missions planned by the ground station, plans the flight path based on geographic information data, and sends the planned path to the drone. During the mission, the drone flies to each waypoint in the order of the path and executes the corresponding instructions at the action point until the entire mission is completed.
[0004] In a drone squad composed of multiple drones, the task planning module needs to plan multiple tasks such as points, lines, and areas at the same time. Different target types have different requirements for drones, which brings diversity and complexity challenges to traditional task allocation methods. In order to improve task completion and execution efficiency, it is necessary to comprehensively consider task requirements, realize reasonable allocation and adjustment of tasks, and effectively solve the task allocation problem in multi-machine and multi-target collaborative work, so as to give full play to the advantages of multi-machine collaboration.
[0005] In addition, when the drone performs the assigned target mission, reaches the target location according to the planned path, and completes the mission, it will be affected by environmental geographical factors. For example, in complex scenes such as mountains and jungles, path planning needs to rely on geographical elevation information and also needs to consider avoidance zones. Especially in regional target missions, there may be multiple avoidance zones, no-fly zones, or areas where the altitude does not meet the flight requirements, making path planning more difficult and challenging. Summary of the invention
[0006] In view of the above analysis, the present invention aims to disclose a collaborative planning device for multiple UAVs facing multiple mission targets; to solve the problems of UAV allocation for multiple mission targets and path planning from UAVs to targets in complex scenarios.
[0007] The present invention discloses a collaborative planning device for multiple unmanned aerial vehicles facing multiple mission targets, comprising:
[0008] An information acquisition module, used to acquire information about each drone and multiple tasks to be performed, as well as an elevation map of the area including the drone take-off position and each task position; the elevation map includes obstacle and avoidance zone information;
[0009] The task allocation module is used to establish the task allocation problem based on the number of drones in the cluster, the initial position, the type, quantity and location information of the task; the corresponding drone is allocated to each task with the allocation objectives of minimizing the total path distance and minimizing the total cost;
[0010] The path planning module is used to plan the task execution path for the assigned UAV to avoid collision obstacles or avoidance zones in the elevation map based on the RRT algorithm;
[0011] The information sending module is used to send the assigned tasks and the planned paths for executing the tasks to the corresponding drones.
[0012] The present invention can achieve one of the following beneficial effects:
[0013] The multi-UAV collaborative planning device for multi-task targets disclosed by the present invention improves the efficiency of multi-UAVs in executing multi-target tasks through collaborative planning;
[0014] When allocating targets, an automated task allocation process is used to adapt to the complex and ever-changing actual environment and handle different types of tasks (point tasks, line tasks, and regional tasks), which enhances applicability and flexibility, reduces manual intervention, and reduces the possibility of human error;
[0015] When performing path planning, the UAV path planning is realized by combining geographic information and avoidance zone data, ensuring that each planned path point meets both the avoidance zone requirements and the elevation requirements; and by improving the RRT algorithm, the search calculation amount is reduced, the algorithm success rate is improved, and the convergence efficiency and search efficiency are improved. The backtracking method is used to screen the planned path points in reverse order to remove unnecessary path points, thereby improving the simplicity of the path and the planning efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The drawings are only for the purpose of illustrating particular embodiments and are not to be considered limiting of the present invention. Like reference symbols denote like components throughout the drawings.
[0017] Figure 1 A schematic diagram of the connection components of a collaborative planning device for multiple UAVs facing multiple mission targets in an embodiment of the present invention;
[0018] Figure 2 A schematic diagram of a process of performing path planning within an extended planning range using an improved fast exploration random tree in an embodiment of the present invention;
[0019] Figure 3 The figure is a schematic diagram of performing multi-machine path particle swarm optimization by the particle swarm optimizer in an embodiment of the present invention. DETAILED DESCRIPTION
[0020] The preferred embodiments of the present invention will be described in detail below in conjunction with the accompanying drawings, wherein the accompanying drawings constitute a part of this application and are used to illustrate the principles of the present invention together with the embodiments of the present invention.
[0021] An embodiment of the present invention discloses a collaborative planning device for multiple UAVs with multiple mission targets, which is placed in a ground station of the UAV or communicates with the ground station of the UAV. Task allocation and path planning are performed based on acquired UAV information and mission target information, and the allocation and planning results are sent to the UAV, so that the UAV can automatically execute the assigned tasks according to the planned path.
[0022] like Figure 1 As shown, the device described in this embodiment includes: an information acquisition module, a task allocation module, a path planning module and an information sending module;
[0023] An information acquisition module, used to acquire information about each drone and multiple tasks to be performed, as well as an elevation map of the area including the drone take-off position and each task position; the elevation map includes obstacle and avoidance zone information;
[0024] The task allocation module is used to establish the task allocation problem based on the number of drones in the cluster, the initial position, the type, quantity and location information of the task; the corresponding drone is allocated to each task with the allocation objectives of minimizing the total path distance and minimizing the total cost;
[0025] The path planning module is used to plan the task execution path for the assigned UAV to avoid collision obstacles or avoidance zones in the elevation map based on the RRT algorithm;
[0026] The information sending module is used to send the assigned tasks and the planned paths for executing the tasks to the corresponding drones.
[0027] Specifically, in the information acquisition module, the acquired drone information includes initial position data and elevation data of u drones; a drone set X is established based on the drone information, and the set includes the longitude, latitude and altitude coordinates of the initial position of each drone;
[0028] The acquired task information includes target types, location data and elevation data of m tasks; the target types of tasks include: point targets, line targets and area targets; a task set T is established according to the task information, and the task set T includes p point target tasks, l line target tasks and r area target tasks;
[0029] Among them, each point target task consists of the longitude, latitude, and altitude coordinates of a single target point;
[0030] Each line target task consists of a set of longitude, latitude and altitude coordinates of the target point, and the target point coordinates are arranged in the execution order of the path;
[0031] Each regional target task consists of multiple groups of longitude, latitude and altitude coordinates of contour target points. The coordinates of the first group of contour target point sequence represent the coordinates of the outer contour of the polygon, and the subsequent groups of contour target point coordinate sequences represent the coordinates of the inner hole contours of each polygon surrounded by the outer contour. The coordinates of the outer contour of the polygon and the coordinates of the inner hole contours of each polygon together constitute the coordinates of the polygonal area with holes (PWH) of the regional target task.
[0032] Specifically, the task allocation module includes: a distance generation module and an MVRP problem solving module; wherein,
[0033] The distance generation module is used to calculate the distance between each UAV and each task, the distance between tasks and the task equivalent distance according to the initial position information and task position information of the UAV obtained by the information acquisition module, and establish a distance matrix;
[0034] The MVRP problem solving module is used to use the distance matrix generated by the distance generation module as input to solve the MVRP problem and assign the corresponding drone to each task;
[0035] The MVRP mathematical model in the module takes minimizing the total path distance and minimizing the total cost as the objective function;
[0036] When the target types of multiple tasks only include point targets and / or line targets, one UAV is assigned to each task after the model is solved; when the task target type also includes regional targets and the number of UAVs is greater than the number of task targets, one UAV is assigned to each point / line target task in the multi-task after the model is solved, and the remaining UAVs are assigned to regional target tasks; and when there are multiple regional target tasks, the number of UAVs is allocated according to the size of the task area, and the larger the area, the more UAVs are allocated.
[0037] in,
[0038] The process of establishing the distance matrix by the distance generation module includes:
[0039] 1) Calculate the distance between each drone in the drone set X and each task in the task set T; there are three types of distances:
[0040] For point target tasks, the Euclidean distance between the UAV and the point target task point is calculated; for line target tasks, the Euclidean distance between the UAV and the starting point of the line target task is calculated; for area target tasks, the Euclidean distance between the UAV and the nearest point of the target area is calculated.
[0041] 2) Calculate the distance between tasks in the task set T; there are 9 types of distances according to different target types:
[0042] For point-to-point target tasks, the Euclidean distance between two points is directly calculated;
[0043] For point target tasks and line target tasks, the Euclidean distance between the point position of the point target task and the starting point of the line target task is calculated;
[0044] For point target tasks and area target tasks, the Euclidean distance between the point position of the point target task and the nearest point of the area target task is calculated;
[0045] For line target tasks and point target tasks, the Euclidean distance between the end point position of the line target task and the point position of the point target task is calculated;
[0046] For a line target task and a line target task, the Euclidean distance between the end point position of the line target task and the start point position of the other line target task is calculated;
[0047] For line target tasks and regional target tasks, the Euclidean distance between the end point of the line target task and the nearest point of the regional target task is calculated;
[0048] For regional target tasks and point target tasks, the Euclidean distance between the nearest point of the regional target task and the point position of the point target task is calculated;
[0049] For regional target tasks and line target tasks, the Euclidean distance between the nearest point of the regional target task and the starting point of the line target task is calculated;
[0050] For region target tasks and region target tasks, the Euclidean distance between the closest points of the two regions is calculated.
[0051] 3) Calculate the equivalent distance of each task in the task set T; there are three types of equivalent distances:
[0052] For point target tasks, a fixed value is used; for line target tasks, the path length is used; for area target tasks, the area of the area is divided by the coverage width, where the coverage width is the width of the drone's field of view.
[0053] 4) Establish a distance matrix using the calculated distances between each UAV and each task, the distances between tasks, and the task equivalent distances.
[0054] in,
[0055] The MVRP mathematical model constructed with minimizing the total path distance and minimizing the total cost as the objective function in the MVRP problem solving module is described as follows:
[0056]
[0057]
[0058]
[0059] Objective function (1) represents minimizing the total driving distance and minimizing the total cost;
[0060] Constraint (2) means that each task must be visited once.
[0061] Constraint (3) indicates that the path of each UAV must start from the starting point and end at the end point.
[0062] Where, T = {1, 2…, m} represents the task set, m is the number of tasks; X = {1, 2…, u} represents the drone set, u is the number of drones; i, j are the task numbers in the task set, i≠j; k is the total drone number in the drone set;
[0063] c ij is the distance from task i to task j, and the distance between tasks is obtained according to the distance matrix;
[0064] γ ij is the task equivalent path length from task i to task j; the task equivalent path length is obtained according to the distance matrix;
[0065] To indicate whether the path from task i to task j is selected by UAV k, the value is {0,1};
[0066] f 1 is the weight factor of the flight distance; f 2 is the weight factor of the equivalent path;
[0067] r i is the number of times task i needs to be visited.
[0068] The number of times task i needs to be visited r i The determination process includes:
[0069] 1) Determine whether the multi-task target includes a regional target type task, if not, proceed to step 2), if yes, proceed to step 3);
[0070] 2) Determine that the multi-task target only includes point / line target type tasks, and determine whether the number of tasks m is greater than the number of drones u. If yes, the number of drones dispatched is u (all drones dispatched), and the number of times task i needs to be visited is r i Set to 1; otherwise, the number of dispatched drones is m (only dispatch the same number of drones as the number of tasks), and task i needs to be visited r times i Set to 1;
[0071] 3) Determine the number of area target type tasks and the number of point / line target type tasks in the multi-task target;
[0072] 4) Set the fixed number of times the point / line target task needs to be visited r i Set to 1, that is, each point / line target task needs to be visited once, and each is assigned 1 drone;
[0073] 5) After allocating drones to point / line targets, the remaining drones are allocated to regional target tasks; when there is only one regional target task, all the remaining drones are allocated to that task; when there are multiple regional target tasks, proceed to the next step;
[0074] 6) According to the number of remaining drones U and the area of each area target mission A i Construct an integer programming problem and solve it for the first time to get the number of drones required for each area's target mission;
[0075] The number of times r the region target i obtained by the initial solution needs to be visited i for:
[0076]
[0077] A total is the sum of the areas of all regional target tasks;
[0078] 7) According to the sum of the number of visits of each regional target task obtained by the initial solution, which is U or U-1, determine whether to adjust the number of visits; if it is U, the number of visits of the planned regional target tasks will not be adjusted; if it is U-1, the number of visits of the planned largest regional target will be increased by 1 to ensure that all drones participate in target allocation.
[0079] Specifically, the solution process in the MVRP problem solving module includes:
[0080] 1) According to the established distance matrix, the objective function and constraints in the established MVRP problem, as well as related parameters including the number of times the task is visited and the time window, are converted into problem parameters of the data structure required by the planning solver;
[0081] 2) Select the optimization algorithm for the MVRP problem in the planning solver;
[0082] Select an appropriate optimization algorithm based on the actual situation, such as using integer programming algorithm to deal with MVRP problems;
[0083] 3) Using the API interface, the problem parameters are passed into the solution function in the planning solver for solving the problem and obtaining the optimal planning result to allocate the UAVs to the tasks, thereby obtaining the optimal task allocation plan with the allocation objectives of minimizing the total path distance and minimizing the total cost.
[0084] Specifically, the path planning module includes a planning range expansion module, a planning path generation module and a planning path backtracking module; wherein,
[0085] A planning range extension module is used to establish a grayscale map corresponding to the grayscale value and elevation data clipped according to the extended planning range, and an envelope set of avoidance zones intersecting with the extended planning range; the extended planning range includes the planning range and the range of the envelope set of avoidance zones intersecting with the planning range; the planning range is the area determined by the starting point and end point of the UAV path planning;
[0086] The planning path generation module is used to perform path planning within the extended planning range using an improved rapid exploration random tree RRT; the improvement is that:
[0087] In the heuristic path point inspection process of path planning, the generated path points are subjected to avoidance zone envelope inspection and grayscale map elevation inspection, and path points that fail the inspection are removed;
[0088] In the path convergence process of path planning, an adaptive step size is used to extend the sampling points within the ellipse with the path initial point and the target point as the focus to converge the planned path;
[0089] The planning path backtracking module is used to backtrack the planning path generated by the planning path generation module; perform collision detection on the generated path points in reverse order, remove unnecessary path points, and screen out necessary path points to form the planning path.
[0090] Specifically, the planning range expansion module includes: a preprocessing module, a planning area formation module, an expansion module and a planning grayscale map generation module; wherein,
[0091] The preprocessing module is used to preprocess the geographical data of the mission area and the avoidance zone data, wherein the geographical data of the mission area is processed by uniform density interpolation and grayscale image is generated; the avoidance zone data is processed by determining the envelope rectangle of the avoidance zone and constructing the envelope set;
[0092] The geographic data of the mission area includes longitude, latitude and altitude arrays. In the preprocessing, interpolation sampling is performed according to a uniform density to ensure the consistency and accuracy of the data. The elevation data after difference is converted into a grayscale image. Each pixel point of the grayscale image F corresponds to a longitude and latitude point of the elevation data.
[0093] The planning area forming module is used to expand the rectangle including the planning starting point and the end point to form a planning scope PS (Planning Scope) after the expansion; the diagonal distance of the planning scope PS is a set multiple of the diagonal distance of the original rectangle; the set number of digits is preferably 1.414;
[0094] The minimum value x in the rectangular range between the planning start and end points min and Y min Take the minimum value of the starting point and the end point, and the maximum value X max and Y max Take the maximum value of the starting point and the end point; the expansion direction is preferably from the center point of the rectangle to the minimum and maximum directions of the rectangular range, so that the diagonal line is expanded 1.414 times to obtain the planning range PS.
[0095] The planning area forming module is used to determine the extended planning range and the avoidance area envelope set intersecting with the extended planning range through the avoidance area envelope set retrieval; the extended planning range includes the planning range and the range of the avoidance area envelope set intersecting with it;
[0096] It includes two avoidance zone envelope set searches; among them,
[0097] First search: Search the avoidance envelope bounding rectangle AEBR (Avoidance Envelope Bounding Rectangle) set in the planning scope PS, and find the avoidance envelope set AEBR (PS) that intersects with the planning scope PS; Take the envelope rectangle of the planning scope PS and the avoidance envelope set AEBR (PS), and record it as the extended planning scope PSE;
[0098] Second search: search the avoidance area envelope rectangle AEBR set again in the extended planning range PSE, and find the avoidance area envelope set AEBR (PSE) intersecting with the extended planning range PSE;
[0099] Subsequent planning will use the extended planning range PSE and the avoidance zone envelope set AEBR (PSE) for path planning.
[0100] The planning grayscale map generation module is used to clip the grayscale map corresponding to the grayscale value and elevation data according to the extended planning range PSE to obtain the grayscale map F(PSE) used for planning.
[0101] Specifically, in the planning path generation module, the process of using the improved fast exploration random tree to perform path planning within the extended planning range includes:
[0102] 1) Initialize the target point, task point, and search tree:
[0103] Set the initial point latitude and longitude x init =(x init,lon ,x init,lat ) and the latitude and longitude of the target point (x goal =(x goal,lon ,x goal,lat )), select the longitude and latitude space as the state sampling space X;
[0104] Initialize the search tree T = (V, E), where V = {x init} is the set of nodes in the search tree, which only contains the initial point; is the edge set of the search tree, which is an empty set.
[0105] 2) Sampling of state sampling space; for the generated sampling point x rand Conduct avoidance zone envelope inspection and grayscale map elevation inspection, and resample sampling points that fail the inspection;
[0106] The sampling points are simultaneously transformed into the grayscale image F and the avoidance zone set AEBR (PSE), and the sampling points that fall into the avoidance zone set AEBR (PSE) and fail the grayscale image elevation test are reselected;
[0107] Random sampling is performed in the state sampling space to obtain the sampling point x rand =(x rand,lon ,x rand,lat ), the sampling point x rand Transformed into the pixel point of the grayscale image F, and at the same time transformed into the avoidance zone set AEBR (PSE), it is determined whether the point is within the obstacle or avoidance zone determined by the avoidance zone set AEBR (PSE); if the sampling point x rand If it is within an obstacle or avoidance zone, repeat this step again.
[0108] 3) Sampling point extension: for the sampling point x sampled in step 2) rand Find the closest node x in the search tree near , starting from searching for the nearest node x near Start and extend towards the sampling point to get a new node x new ;
[0109] If x rand Not in the obstacle or avoidance zone, calculate the sampling point x rand The latitude and longitude distance D between all nodes in the set V in the search tree is D(x rand ,xi ), where x i ∈V, get the distance from the sampling point x rand The nearest node x near . From node x near Start with a step length L towards node x rand Extend and generate a new node x new ;
[0110] Extension step length L: This extension step length is the step length in the latitude and longitude coordinate system, which mainly affects the maximum length of the edge in the search tree, that is, the step length in the drone path. The specific value needs to be selected according to the map size and requirements.
[0111] 4) Collision detection: determine node x near With the new node x new Connection E i Whether there is a collision with an obstacle or an avoidance zone; if yes, discard the node that collided and return to step 2); if no, replace the new node x that does not collide with the obstacle with a new node x. new Add to the node set V and connect E i Add to edge set E;
[0112] The planning path generation module in this embodiment improves the collision detection in the RRT algorithm as follows:
[0113] (1) For node x near With the new node x new Connection E i Discretize a series of longitude and latitude points e i ={e i,1 ,e i,2 ,…,e i,j ,…,e i,N}, j = 1, ..., N, N is the number of discrete points; e i,j For connection E i The jth discrete longitude and latitude point on the graph;
[0114] (2) Perform collision detection;
[0115] One by one, the longitude and latitude points e i,j ∈e i Convert it into a pixel point in the grayscale image to determine whether there is an obstacle at the pixel point; when e i When there are no obstacles at all points in E i No collision with obstacles; otherwise, a collision occurred;
[0116] Determine connection E i Whether it passes through the avoidance zone, the avoidance zone is the avoidance zone envelope set that intersects with the extended planning range PSE; if E iIf no avoidance zone is crossed, then E i It does not collide with the avoidance zone, but instead a collision occurs;
[0117] (3) Node x detected by collision near With the new node x new Connection E i If it collides with an obstacle or avoidance zone, the new node x is discarded. new , and return to resample the state sampling space; if the connection E i If it does not collide with an obstacle or avoidance zone, the new node x new Add to the node set V of the search tree and connect E i Add to the edge set E of the search tree.
[0118] 5) Add a new node x to the node set V new Reselect the parent node in the search tree; rewire the random tree by reselecting the parent node in the search tree to reduce the connection cost between the random tree nodes;
[0119] At the new node x new Nearby with a set radius R within r near Find all neighboring nodes X in the tree near ={x near,1 ,x near,2 ,…,x near,M}, as a replacement for x new The candidate for the parent node, M is the number of neighboring nodes found in the tree; select the new node x new and neighboring node X near There are connections with minimum cost and no collision between them, thus optimizing the cost of the generated path;
[0120] The radius range R is set to twice the extension step length, that is, R=2L.
[0121] For the new node x new After reselecting the parent node, in order to further reduce the connection cost between random tree nodes, it is necessary to rewire the random tree: if the neighboring node x near The parent node is changed to x new If the path cost can be reduced, the change is made; otherwise, no change is made.
[0122] 6) Determine the new node x added to the node set V near With the target point x goal Is the distance greater than the set distance threshold? If yes, return to step 2) and repeat sampling, extension, and collision detection; if no, terminate sampling and set the target point x goal Add to the node set V and search for a shortest path;
[0123] If a new node x is added to the node set near With the target point x goal If the distance between node x and node x is greater than the set latitude and longitude distance threshold δ, the above sampling, extension, and collision detection steps are repeated; if node x near With the target point x near If the distance is less than the threshold δ, the sampling is terminated, and the target point is added to the node set V, and then a shortest path Ρ0 is searched from the tree T;
[0124] The longitude and latitude distance threshold δ is used as a condition to determine whether the current node is near the target point. It is the distance in the longitude and latitude coordinate system. When it is less than the threshold, it means that the target point has been searched, otherwise, it has not been searched.
[0125] 7) Adaptive path convergence: Adaptive step size is used to converge from the path initial point x init and the target point x goal The sampling points are extended within the ellipse as the focus, the planned path is converged, and the planning result is obtained.
[0126] Specifically, in the planning path generation module, the improvements made to the path convergence process in the RRT algorithm include:
[0127] (1) The initial point x init and the target point x goal As the focus of the ellipse, and use the half of the shortest path PO searched from the search tree T as the sum of the distances from the points on the ellipse to the focus;
[0128] (2) Sampling is performed within the ellipse, and random sampling is performed within the ellipse to obtain the sampling point x rand =(x rand,lon ,x rand,lat ), calculate the shortest distance between the sampling point and the obstacle γ=min{D(x rand ,X obs )}, where X obs is the set of all obstacle points within the ellipse sampling range, and the min() function is used to calculate the minimum distance between the sampling point and the obstacle point set;
[0129] (3) Calculate the distance x on path P0 rand The nearest node x near ; Then in x rand As the center, K points are uniformly selected on the circle with a set length γ as the radius, and recorded as the point set
[0130] (4) Select a point from the K points to replace x near, which can minimize the path cost, and this point is recorded as
[0131] (5) Put the node x on path P0 near Replace Repeat steps (2)-(3) to obtain path lengths P1, P2, P3, ..., Pn; n is the number of iterations;
[0132] (6) When the path length change value Pn-Pn-1 is less than the set threshold ΔP or the number of iterations reaches the set iteration threshold, convergence is determined and the planning result is obtained.
[0133] As Pn becomes shorter, the ellipse will become flatter, thereby concentrating the sampling points near the current path and obtaining a converged path planning result.
[0134] The threshold ΔP is set as the path convergence improvement amount, which is the distance in the longitude and latitude coordinate system. It is used as a condition for judging the path convergence. When the length change value Pn-Pn-1 is less than the set threshold ΔP, it means that the path is close to the optimal path, otherwise it has not reached the optimal path.
[0135] The iteration threshold is set to a large positive integer. When the number of sampling exceeds this value, the program will stop immediately. At this time, if a path is found, the path node is returned, otherwise, no value is returned.
[0136] The specific process of using improved fast exploration random tree to perform path planning within the extended planning range is as follows: Figure 2 shown.
[0137] Specifically, the process of screening out necessary path points by backtracking the planned path generated by the planned path generation module in the planned path backtracking module includes:
[0138] 1) Obtain the path C generated by the planning path generation module = {x 1 ,…,x i ,…,x n}; n is the number of path points;
[0139] 2) Traverse all path points x i ∈C, for each path point x i , traverse all subsequent path points x j ∈{x i+1 x i+2 …x n}, judge x i With x j The connection i Whether j collides with obstacles;
[0140] 3) If x i With a certain xj Collision, then x i With x i All the path points in the middle are removed, and i=j is executed, and step 2 is repeated); if x i With all x j If there is no collision, then x i With x n All the path points in the middle are removed and the process ends, outputting the optimized path C. * .
[0141] In the path planning module, UAV path planning is implemented by combining geographic information and avoidance zone data, ensuring that each planned path point meets both the avoidance zone requirements and the elevation requirements; and by improving the RRT algorithm, the search calculation amount is reduced, the algorithm success rate is improved, and the convergence efficiency and search efficiency are improved. The backtracking method is used to screen the planned path points in reverse order and remove unnecessary path points, thereby improving the simplicity of the path and the planning efficiency.
[0142] In the preferred solution, a collaborative scanning path planning module for regional target tasks is also included;
[0143] The collaborative scanning path planning module is used to perform collaborative scanning path planning for the mission area for the UAVs assigned to the regional target mission, so that the flight path length of each UAV from the take-off position to the scanning starting point of the mission area and then to the completion of the scan is balanced;
[0144] Specifically, the collaborative scanning path planning module includes: a task area coverage scanning path generation module and a coverage scanning path collaborative division module;
[0145] Among them, the task area coverage scanning path generation module is used to decompose the polygon with holes converted from the task area, and perform access sequence planning and scanning path generation connection on each decomposed block to form a complete coverage scanning path that covers a single slope scanning line in each block and has the shortest total path length after the paths of each block are connected;
[0146] The coverage scanning path collaborative division module is used to divide the coverage scanning path into segments and assign them to each drone performing regional tasks. The particle swarm optimization algorithm is used to make the total path length the shortest and the difference in path length of each drone as balanced as possible, ultimately forming a coverage scanning path planning result for multiple drones to collaborate.
[0147] More specifically, the task area coverage scanning path generation module includes: a conversion module, a decomposition module, a sequence planning module, and a path generation connection module; wherein,
[0148] The conversion module is used to convert complex task areas into Polygon with Holes (PWH); PWH is formed by Boolean operations. This geometric shape consists of an outer polygon outline and one or more inner hole outlines. The outer polygon defines the overall boundary, while the inner holes are areas that are completely contained within the outer polygon. These holes are not part of the polygon. The outer contour of PWH is a simple polygon, but both its inner and outer contours can be concave polygons. This feature enables PWH to more accurately represent complex shapes and areas in the real world, especially in computer graphics and geographic information systems (GIS).
[0149] A decomposition module is used to decompose the polygon with holes by using the improved Boustrophedon Cellular Decomposition (BCD) to generate multiple block units;
[0150] The conventional best bidirectional coverage decomposition BCD algorithm will form a decomposition or merger of units when encountering an IN event or an OUT event. However, in areas where the PWH holes are densely distributed, these decompositions or mergers will lead to dense divisions of the graph, which is not conducive to subsequent sweep path planning. Therefore, in this embodiment, the improvements made to the ox-plowing block unit decomposition specifically include:
[0151] 1) According to the vertices of the polygon with holes, determine the sides of the polygon with holes;
[0152] 2) Select the vertical directions of each side of the polygon as all possible decomposition directions;
[0153] 3) For each possible decomposition direction, the optimal bidirectional covering decomposition (BCD) algorithm is used to calculate multiple polygonal units formed by the decomposition in that direction;
[0154] 4) respectively obtain the optimal sweep direction of each polygonal unit, and use the vertical direction of the sweep direction as the height of the decomposition unit, and calculate the minimum height sum of these decomposition units;
[0155] 5) By comparing the minimum heights obtained under different decomposition directions, the best decomposition result is finally determined;
[0156] 6) The multiple units obtained by the optimal decomposition are then merged to form the final block unit.
[0157] The merging process starts with the unit with a smaller area, finds another unit with the longest intersection line, and attempts to merge it; the merger is successful only if the following two conditions are met: first, the newly formed unit can find a sweep direction so that any sweep line that passes through the unit in the sweep direction has no more than two intersection points with the unit, that is, the newly formed merged unit can be effectively swept; second, the height of the merged unit is less than or equal to the height of the unit before the merger, that is, the newly formed merged unit has a more reasonable sweep plan. Merged units that meet the above two conditions reduce the number of block units and can avoid adding more sweep bend points, thereby improving sweep efficiency.
[0158] The sequential planning module is used to plan the block access sequence, find the shortest path between each block unit, establish the TSP problem, and use the Hungarian algorithm to solve it and generate the path planning between each block;
[0159] Before overlay scanning path planning, it is necessary to clarify the access order of each block unit and convert the global sweep planning problem into the sweep planning problem of each block. Therefore, in this embodiment, the shortest path between each block is obtained, the TSP problem is established, and the Hungarian algorithm is used to solve it to generate the path planning between each block.
[0160] Given the low complexity of sweep path planning in PWH, the Dijkstra algorithm or A* algorithm can be used to obtain the path between any two points in PWH and calculate the path length. The "shortest distance matrix" is calculated and filled to obtain the shortest path between each unit.
[0161] The specific calculation process of path planning includes:
[0162] 1) Determine the distance between two block units;
[0163] Determine whether two block units are adjacent. If so, the distance is 0. If not, traverse each vertex, calculate the shortest path combination and calculate the path length as the matrix element in the shortest path matrix. Depending on whether there is a single machine or multiple machines and whether there is a fixed end point, it is necessary to determine whether to put the starting point and the end point into the shortest path matrix;
[0164] 2) Initialize two matrices for dynamic programming; one for storing the cost of the shortest path and the other for storing the current path;
[0165] 3) Solve the Traveling Salesman Problem (TSP) through dynamic programming to obtain the block access sequence with the shortest path;
[0166] Since the size of the current merged block is limited, the traveling salesman problem can be solved by a dynamic programming function. The function recursively calculates the shortest path to visit all block cells and updates these paths and costs in two matrices; if all nodes have been visited, the distance to the end point is returned. The function traverses each unvisited cell, updates the shortest path, and records the path. The function reconstructs the path from the path matrix by backtracking from the end point to the starting point.
[0167] The path generation connection module is used to establish the path loss criterion, visit each block in sequence, and use the greedy algorithm to process the path planning problem from the starting point to the scanning of the entire block, so that the loss of the entire path is minimized;
[0168] The greedy algorithm is used to process the coverage scanning path planning problem of each block, so that the internal path loss of each block is minimized. The formula is as follows:
[0169] Cost k =L path / V l +n path ×90 / V a
[0170] In the formula, Cost k represents the path loss of the kth block;
[0171] L path It represents the total length of the path after completing the k-th block sweep from the current point;
[0172] n path Indicates the number of path points after completing the k-th block sweep starting from the current point;
[0173] V l The weight coefficient of the length is approximated as 10m / s in this scheme;
[0174] V a Represents the weight coefficient of steering, which is approximately estimated at 60° / s in this scheme.
[0175] When calculating the coverage scanning path of the block unit, first select the starting point of any UAV as the "current point" (because there is a subsequent path allocation link, the selection here does not represent the final allocation), and start from the "current point" to carry out the sweep planning of each block unit in sequence according to the routing order; for each block unit, analyze all feasible sweep directions, and calculate all possible unit scanning paths, and record the starting point of each unit sweep plan as the "unit starting point".
[0176] Calculate the path planning from the "current point" to each "unit starting point" and the sweep path planning within the block unit respectively. Next, starting from the "current point", traverse all calculated sweep path plans, calculate the total length and number of turns (i.e., the number of path points) of each path, and calculate the path loss of different planning plans based on the given length weight and turn weight. The path with the lowest loss is selected as the optimal path and recorded as the sweep path of the current block unit. At the same time, the end point of the sweep path of the current block unit is recorded as the starting point of the next path (i.e., the "current point"), and the sweep planning of the next block unit begins.
[0177] The sweep lines of the area coverage scan path planning are generated at equal intervals from the sweep start point, but there may not be enough space to place a sweep line at the end of the generation, which may lead to insufficient coverage. Therefore, to avoid insufficient coverage, the distance between the vertex of each block unit and the coverage sweep line should be checked. Since the vertices of the block unit are the protruding positions of the convex polygon, if these vertices are covered, it means that the sweep line also covers the entire block; if the distance between the vertex and the coverage line is less than half of the sweep width, it is necessary to add a sweep line that passes through the vertex.
[0178] After completing the sweep planning of all units, check whether it is necessary to complete the sweep task at the specified end point (only in the case of a single machine and with an end point). If necessary, add a path planning from the "current point" to the specified end point.
[0179] Complete the sweep planning of all units and generate a sequence of path points for sweeping the PWH;
[0180] The path point sequence includes a line segment point sequence with two path attributes, namely, a sweep line and a connecting line: the sweep line and the connecting line alternately form a covering sweep path;
[0181] Sweep Line (SL): The path line that plays the actual sweeping role in the coverage sweep;
[0182] Connection Line (CL): A path line connecting two sweep lines, used to connect the sweep lines in series to achieve path planning effects.
[0183] In the coverage sweep, the sweep line is the one that actually plays the role of coverage, while the connecting line is an auxiliary path line, which is used to connect the sweep lines in series to achieve the path planning effect;
[0184] In the coverage sweep, the PWH is divided into different internal blocks, and the planned sweep lines are used to sweep inside each block. The block can include multiple sweep lines with different sweep directions to achieve a more comprehensive coverage sweep; the sweep lines inside the block, the sweep lines between blocks, and the starting and ending points of the drone are connected by connecting lines.
[0185] Based on this, the connection line (CL) further includes the following types:
[0186] Sweep Connection Line (SCL) inside a block: represents the connection line inside a block.
[0187] Block Connection Line (BCL): represents the connection line between blocks.
[0188] Robot Connection Line (RCL): represents the connection line from the start point of the drone to the scan line, and the connection line from the scan line to the end point of the drone.
[0189] The path in the coverage sweep is composed of alternating sweep lines (SL) and connection lines (CL); there is at least one connection line between two sweep lines; it is worth noting that a connection line may contain multiple parts, for example, the path may be a sweep line, a connection line, a connection line, and a sweep line. Each connection line (CL) can be a block internal connection line (SCL), a block-to-block connection line (BCL) or a drone connection line (RCL).
[0190] ●The path starts from the starting point and passes through one or more drone connection lines (RCL) to reach the first sweep line (SL);
[0191] ●Then, the scanning of a certain area is completed through the combination of the block internal connection line (SCL) and the sweep line (SL);
[0192] ● Next, one or more blocks are connected to the sweep line (SL) of the next area through one or more blocks, and the scanning of the area is completed through the combination of the block internal connection line (SCL) and the sweep line (SL);
[0193] ●When all areas have been scanned, navigate to the end point via the drone connection line (RCL) to complete the entire path.
[0194] Accordingly, the information contained in each path point in the path point sequence is: path point sequence number, path point coordinates, line segment attributes pointing to the previous path point, and line segment attributes pointing to the next path point; the path point sequence contains each path point generated by the coverage scanning path planning, arranged in order.
[0195] Specifically, the multi-UAV collaborative coverage scanning path planning process in the coverage scanning path collaborative division module includes:
[0196] 1) Divide the coverage scanning path into segments according to the number of drones, and determine the starting point and end point of each path segment based on the segmentation points; calculate the distance information including the distance from each drone from the mission starting point to the starting point or end point of each path segment;
[0197] Specifically, they include:
[0198] (1) Path division: according to the number of UAVs, the total path of the coverage scan is divided into the same number of path segments; the segmentation points of the path division are selected from the path point sequence of the coverage scan path planning as the segmentation index;
[0199] Reasonable separation index can ensure that the path length of each UAV is balanced when performing tasks.
[0200] (2) determining the starting point and the end point of each path segment according to the separation index; the starting point and the end point of each path segment are points with sweep line attributes;
[0201] Starting point of path segment: If the path after the split point is a sweep line (SL), the split point is selected as the starting point of the path segment; if the path after the split point is a connecting line (CL), search backward from the split point until the first path point whose path after the split point is a sweep line SL is found, which is used as the starting point of the path segment.
[0202] Path segment endpoint selection: If the path before the split point is the sweep line SL, the split point is selected as the path segment endpoint; if the path before the split point is not the sweep line SL, search forward until the first path point whose previous path is the sweep line SL is found as the path segment endpoint.
[0203] (3) Calculate the distance information including the distance from each UAV from the mission starting point to the starting point or end point of each path segment by using the forward or reverse distance calculation method;
[0204] After determining the starting and ending points of each path segment, it is necessary to calculate the distance from the mission start point to the starting point or end point of each path segment for each drone; when the drone has a fixed mission end point, it is also necessary to calculate the distance from the other end of the path segment to the end point. Because the path can be performed in forward or reverse order, the distances of the two situations need to be calculated separately.
[0205] Positive sequence distance calculation:
[0206] Calculate the distance from the mission start point to the start point of the path segment for each drone;
[0207] Calculate the distance of each drone from the end of the path segment to the mission end point (if there is a fixed end point);
[0208] Reverse distance calculation:
[0209] Calculate the distance from the mission start point to the end point of the path segment for each drone;
[0210] Calculate the distance for each drone from the start of the path segment to the end point of the mission (if there is a fixed end point).
[0211] 2) Traverse the calculated distance information, find the UAV coverage scanning path allocation scheme that minimizes the total path length, use it as the optimized segmentation index, and output the path and path length of each UAV;
[0212] Specifically, the calculated distance information is traversed, and the Hungarian algorithm is used to find the drone coverage scanning path allocation scheme with the smallest total path length of all drones as the optimized segmentation index; the specific steps are as follows:
[0213] (1) Constructing a cost matrix; each element of the cost matrix is the distance from the starting point of the UAV to the starting point or the end point of the path segment calculated using the forward or reverse distance calculation method;
[0214] (2) Optimization algorithm solution: Use the Hungarian algorithm to solve the cost matrix and find the allocation solution with the minimum total path length;
[0215] (3) Determine the optimal path allocation: Based on the output of the Hungarian algorithm, determine the path and path length of each UAV.
[0216] For the Optimize Division Indices (ODI) of this embodiment, the path and path length of each UAV are obtained from the divided path segments. And for any path segment division method, the ODI process can find an optimal total path length.
[0217] 3) A particle swarm optimizer is used to perform local optimization of the divided path segments. During the optimization process of the particle swarm optimizer, perturbations are added to the segmentation points of the path point sequence, and the optimization segmentation index is used as the objective function for iteration. Finally, the optimized segmentation index that minimizes the total path length is found to divide the coverage scanning path of the drone.
[0218] In the particle swarm optimizer, a set of particles is initialized, each particle represents a possible path allocation scheme; each particle is updated according to its speed and position, and its quality is evaluated according to the fitness function; the algorithm gradually finds the global optimal solution by iteratively updating the particles. In each iteration, the position and speed of the particles are adjusted according to the inertia, cognitive and social components, and finally the segmentation index that minimizes the total path length is found.
[0219] The particle swarm optimizer used in this embodiment performs multi-machine path particle swarm optimization, such as Figure 3 As shown, including:
[0220] (1) Initialize the random number generator and particle swarm;
[0221] (2) Perform an iterative main loop; in the main loop, each particle is updated and its quality is evaluated according to the fitness function; by iteratively updating particles, the global optimal solution is gradually found;
[0222] In each iteration, the particle’s position and velocity are adjusted based on inertial, cognitive, and social components, ultimately finding the split index that minimizes the total path length;
[0223] The fitness function is determined by the optimized segmentation index ODI process determined in step S402; the path length value output by the optimized segmentation index ODI is used to evaluate the quality of the current position of the particle;
[0224] (3) After the main loop ends, the global optimal position is returned; the path and path length of each UAV in the final iterative optimized segmentation index are output as the final segmentation result.
[0225] Particle swarm optimization (PSO) searches for the optimal solution by simulating the behavior of a group of particles. Each particle moves in the search space and adjusts its direction and speed based on its own experience and the experience of other particles. The following is the key formula of PSO:
[0226] Speed update formula:
[0227]
[0228] In the formula, v i (t) is the velocity of particle i at time t;
[0229] ω is the inertia weight, which controls the influence of the particle’s previous velocity;
[0230] c 1 and c 2 are acceleration constants, which respectively represent the degree to which the particle follows its own optimal position and the global optimal position;
[0231] r 1 and r 2 It is a random number between [0,1], which increases randomness and diversity;
[0232] is the best historical position of particle i;
[0233] is the global optimal position;
[0234] x i (t) is the current position of particle i at time t.
[0235] Position update formula:
[0236] x i (t+1)=x i (t)+v i (t+1)
[0237] x i (t+1) is the new position of particle i at time t+1;
[0238] x i (t) is the current position of particle i at time t;
[0239] v i (t+1) is the new velocity of particle i at time t+1.
[0240] Fitness evaluation:
[0241] The fitness of each particle is determined by the ODI process determined in step S3. The value of the objective function ODI process is used to evaluate the quality of the particle's current position. The optimization goal is to find the particle position that minimizes the total path sum of the ODI process.
[0242] In the particle swarm algorithm, the optimization segmentation indexing process is used as a black box; the input of the black box is the segmentation point of the path segment, and the output is the path and path length of each drone; the function of the black box is to obtain the path and path length of each drone from the segmented path segment. Therefore, in any path segment division method that adds perturbations at the segmentation point in the particle swarm algorithm, the ODI process can find an optimal total path length.
[0243] The above description is only a preferred specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by any technician familiar with the technical field within the technical scope disclosed by the present invention should be covered within the protection scope of the present invention.
Claims
1. A collaborative planning device for multiple UAVs facing multiple mission targets, characterized in that: include: An information acquisition module, used to obtain information about each drone and multiple tasks to be performed, as well as an elevation map of the area including the drone take-off location and each task location; The elevation map includes obstacle and avoidance zone information; The task allocation module is used to establish the task allocation problem based on the number of drones in the cluster, the initial position, the type, quantity and location information of the task; the corresponding drone is allocated to each task with the allocation objectives of minimizing the total path distance and minimizing the total cost; The path planning module is used to plan the task execution path for the assigned UAV to avoid collision obstacles or avoidance zones in the elevation map based on the RRT algorithm; The information sending module is used to send the assigned tasks and the planned paths for executing the tasks to the corresponding drones.
2. The multi-UAV multi-task target collaborative planning device according to claim 1, characterized in that: The path planning module includes a planning range expansion module, a planning path generation module and a planning path backtracking module; among them, A planning range extension module is used to establish a grayscale map corresponding to the grayscale value and elevation data clipped according to the extended planning range, and an envelope set of avoidance zones intersecting with the extended planning range; the extended planning range includes the planning range and the range of the envelope set of avoidance zones intersecting with the planning range; the planning range is the area determined by the starting point and end point of the UAV path planning; A planning path generation module is used to perform path planning within an extended planning range using an improved rapid exploration random tree (RRT); In the heuristic path point inspection process of path planning, the generated path points are subjected to avoidance zone envelope inspection and grayscale map elevation inspection, and path points that fail the inspection are removed; In the path convergence process of path planning, an adaptive step size is used to extend the sampling points within the ellipse with the path initial point and the target point as the focus to converge the planned path; The planning path backtracking module is used to backtrack the planning path generated by the planning path generation module; perform collision detection on the generated path points in reverse order, remove unnecessary path points, and screen out necessary path points to form the planning path.
3. The collaborative planning device for multiple UAVs facing multiple mission targets according to claim 2 is characterized in that: The collision detection process of the improved RRT in the planning path generation module is: (1) For node x near With the new node x new Connection E i Discretize a series of longitude and latitude points e i ={e i,1 ,e i,2 ,…,e i,j ,…,e i,N }, j = 1, ..., N, N is the number of discrete points; e i,j For connection E i The jth discrete longitude and latitude point on the graph; Node x near The sampling point of the state sampling space sampling after the avoidance zone and elevation test, the new node x new For node x near New nodes obtained by extending the sampling points; (2) Perform collision detection; One by one, the longitude and latitude points e i,j ∈e i Convert it into a pixel point in the grayscale image to determine whether there is an obstacle at the pixel point; when e i When there are no obstacles at all points in E i No collision with obstacles; otherwise, a collision occurred; Determine connection E i Whether it passes through the avoidance zone, the avoidance zone is the avoidance zone envelope set that intersects with the extended planning range PSE; if E i If no avoidance zone is crossed, then E i It does not collide with the avoidance zone, but instead a collision occurs; (3) Node x detected by collision near With the new node x new Connection E i If it collides with an obstacle or avoidance zone, the new node x is discarded. new , and return to resample the state sampling space; if the connection E i If it does not collide with an obstacle or avoidance zone, the new node x new Add to the node set V of the search tree and connect E i Add to the edge set E of the search tree.
4. The multi-UAV multi-task target collaborative planning device according to claim 2, characterized in that: Improve the RRT path convergence process in the planning path generation module, including: (1) The initial point x init and the target point x goal As the focus of the ellipse, and use the half of the shortest path PO searched from the search tree T as the sum of the distances from the points on the ellipse to the focus; (2) Sampling is performed within the ellipse, and random sampling is performed within the ellipse to obtain the sampling point x rand =(x rand,lon ,x rand,lat ), calculate the shortest distance between the sampling point and the obstacle γ = min{D(x rand ,X obs )}, where X obs is the set of all obstacle points within the ellipse sampling range, and the min() function is used to calculate the minimum distance between the sampling point and the obstacle point set; (3) Calculate the distance x on path P0 rand The nearest node x near ; Then in x rand As the center, K points are uniformly selected on the circle with a set length γ as the radius, and recorded as the point set (4) Select a point from the K points to replace x near , which can minimize the path cost, and this point is recorded as (5) Put the node x on path P0 near Replace Repeat steps (2)-(3) to obtain path lengths P1, P2, P3, ..., Pn; n is the number of iterations; (6) When the path length change value Pn-Pn-1 is less than the set threshold ΔP or the number of iterations reaches the set iteration threshold, convergence is determined and the planning result is obtained.
5. The collaborative planning device for multiple UAVs facing multiple mission targets according to claim 2, characterized in that: The process of screening out necessary path points by backtracking the planning path generated by the planning path generation module in the planning path backtracking module includes: 1) Obtain the path C generated by the planning path generation module = {x1,…,x i ,…,x n }; n is the number of path points; 2) Traverse all path points x i ∈C, for each path point x i , traverse all subsequent path points x j ∈{x i+1 x i+2 …x n }, judge x i With x j The connection ij Whether there is a collision with an obstacle; 3) If x i With a certain x j Collision, then x i With x j All the path points in the middle are removed, and i=j is executed, and step 2 is repeated); if x i With all x j If there is no collision, then x i With x n All the path points in the middle are removed and the process ends, outputting the optimized path C. * .
6. The multi-UAV multi-task target collaborative planning device according to claim 1, characterized in that: include: The task allocation module includes: a distance generation module and an MVRP problem solving module; wherein, The distance generation module is used to calculate the distance between each UAV and each task, the distance between tasks and the task equivalent distance according to the initial position information and task position information of the UAV obtained by the information acquisition module, and establish a distance matrix; The MVRP problem solving module is used to use the distance matrix generated by the distance generation module as input to solve the MVRP problem and assign the corresponding drone to each task; The MVRP mathematical model in the module takes minimizing the total path distance and minimizing the total cost as the objective function; When the target types of multiple tasks only include point targets and / or line targets, one UAV is assigned to each task after the model is solved; when the task target type also includes regional targets and the number of UAVs is greater than the number of task targets, the model solves and assigns one UAV to each point / line target task in the multi-task, and then assigns the remaining UAVs to regional target tasks; and when there are multiple regional target tasks, the number of UAVs is allocated according to the size of the task area, and the larger the area, the more UAVs are allocated.
7. The collaborative planning device for multiple UAVs facing multiple mission targets according to claim 6, characterized in that: The MVRP mathematical model is described as: Where, T = {1, 2…, m} represents the task set, m is the number of tasks; X = {1, 2…, u} represents the drone set, u is the number of drones; i, j are the task numbers in the task set, i≠j; k is the total drone number in the drone set; c ij is the distance from task i to task j; γ ij is the task equivalent path length from task i to task j; To indicate whether the path from task i to task j is selected by UAV k, the value is {0,1}; f1 is the weight factor of the flight distance; f2 is the weight factor of the equivalent path; r i is the number of times task i needs to be visited.
8. The collaborative planning device for multiple UAVs facing multiple mission targets according to claim 7, characterized in that: The number of times task i needs to be visited r i The determination process includes: 1) Determine whether the multi-task target includes a regional target type task, if not, proceed to step 2), if yes, proceed to step 3); 2) Determine that the multi-task target only includes point / line target type tasks, and determine whether the number of tasks m is greater than the number of drones u. If yes, the number of drones dispatched is u, and the number of times task i needs to be visited is r i Set to 1; otherwise, the number of drones dispatched is m, and task i needs to be visited r times i Set to 1; 3) Determine the number of area target type tasks and the number of point / line target type tasks in the multi-task target; 4) Set the fixed number of times the point / line target task needs to be visited r i Set to 1, that is, each point / line target task needs to be visited once, and each is assigned 1 drone; 5) After allocating drones to point / line targets, the remaining drones are allocated to regional target tasks; when there is only one regional target task, all the remaining drones are allocated to that task; when there are multiple regional target tasks, proceed to the next step; 6) According to the number of remaining drones U and the area of each area target mission A i Construct an integer programming problem and solve it for the first time to get the number of drones required for each area's target mission; The number of times r the region target i obtained by the initial solution needs to be visited i for: A total is the sum of the areas of all regional target tasks; 7) According to the sum of the number of visits of each regional target task obtained by the initial solution, which is U or U-1, determine whether to adjust the number of visits; if it is U, the number of visits of the planned regional target tasks will not be adjusted; if it is U-1, the number of visits of the planned largest regional target will be increased by 1 to ensure that all drones participate in target allocation.
9. The collaborative planning device for multiple UAVs facing multiple mission targets according to claim 2, characterized in that: It also includes a collaborative scanning path planning module for regional target tasks; The collaborative scanning path planning module is used to perform collaborative scanning path planning for the mission area for the UAVs assigned to the regional target mission, so that the flight path length of each UAV from the take-off position to the scanning starting point of the mission area and then to the completion of the scan is balanced; The collaborative scanning path planning module includes: a task area coverage scanning path generation module and a coverage scanning path collaborative division module; wherein, The task area coverage scanning path generation module is used to decompose the polygon with holes converted from the task area, and perform access sequence planning and scanning path generation connection on each decomposed block to form a complete coverage scanning path that covers a single slope scanning line in each block and has the shortest total path length after the paths of each block are connected; The coverage scanning path collaborative division module is used to divide the coverage scanning path into segments and assign them to each drone performing regional tasks. The particle swarm optimization algorithm is used to make the total path length the shortest and the difference in path length of each drone balanced, ultimately forming a coverage scanning path planning result for multi-drone collaboration.
10. The collaborative planning device for multiple UAVs facing multiple mission targets according to claim 9, characterized in that: The multi-UAV collaborative coverage scanning path planning process in the coverage scanning path collaborative division module includes: 1) Divide the coverage scanning path into segments according to the number of drones, and determine the starting point and end point of each path segment based on the segmentation points; calculate the distance information including the distance from each drone from the mission starting point to the starting point or end point of each path segment; 2) Traverse the calculated distance information, find the UAV coverage scanning path allocation scheme that minimizes the total path length, use it as the optimized segmentation index, and output the path and path length of each UAV; 3) A particle swarm optimizer is used to perform local optimization of the divided path segments. During the optimization process of the particle swarm optimizer, perturbations are added to the segmentation points of the path point sequence, and the optimization segmentation index is used as the objective function for iteration. Finally, the optimized segmentation index that minimizes the total path length is found to divide the coverage scanning path of the drone.
Citation Information
Cited By
Multi-unmanned aerial vehicle target allocation and path planning method for executing multi-target type task
CN120066118A
Multi-robot target assignment and path planning method for performing multi-target type tasks
CN120066118B
Unmanned geological data acquisition control method and system
CN121069853A
Multi-aircraft collaborative search task planning method, system, equipment and medium
CN122308464A