Multi-uav and vehicle cooperation task planning and path optimization method and device

By optimizing path planning for UAV-vehicle collaboration using K-means clustering and tabu search algorithms, the response delay problem in UAV-vehicle collaborative operations in dynamic environments was solved, achieving efficient task response and path optimization.

CN119759085BActive Publication Date: 2025-11-07STATE GRID HUBEI ELECTRIC POWER INFORMATION & TELECOMMUNICATION COMPANY +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411635423.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-15
Publication Date
2025-11-07
Estimated Expiration
2044-11-15

AI Technical Summary

Technical Problem

In existing drone-vehicle collaborative operations, path planning and task allocation cannot be optimized in dynamically changing environments, resulting in response delays and low efficiency.

Method used

The K-means clustering algorithm is used to select docking anchor points and task point sets, and the tabu search algorithm is combined to adjust the UAV flight path and optimize the UAV-vehicle cooperation model. By combining global static optimization and local dynamic optimization, the flexibility and response efficiency of the method are improved.

Benefits of technology

In dynamic scenarios, it effectively reduces response latency, improves task response efficiency and overall performance, and ensures that the UAV can efficiently complete data acquisition tasks under varying speed conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119759085B_ABST
    Figure CN119759085B_ABST
Patent Text Reader

Abstract

A multi-unmanned aerial vehicle and vehicle cooperation task planning and path optimization method and device, the method comprising: establishing a unmanned aerial vehicle and vehicle cooperation model; selecting a parking anchor point and a task point set corresponding to each parking anchor point using a K-means clustering algorithm; obtaining a unmanned aerial vehicle flight route set for the task point set in the parking anchor point; assigning each route in the unmanned aerial vehicle flight route set to each unmanned aerial vehicle to obtain a unmanned aerial vehicle flight route in a single parking anchor point; obtaining a vehicle driving route according to all parking anchor points to obtain a global static optimization solution; adjusting the unmanned aerial vehicle flight route in a single anchor point through a tabu search algorithm according to real-time changes in the unmanned aerial vehicle speed and outputting a local dynamic optimization solution. The present application fully considers the advantages of unmanned aerial vehicle and vehicle cooperation, and improves system flexibility and task response efficiency under constraint conditions and unmanned aerial vehicle speed changes, thereby greatly reducing the response delay of the system to user requests.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of unmanned aerial vehicle and vehicle cooperative operation, and particularly relates to a multi-unmanned aerial vehicle and vehicle cooperative task planning and path optimization method and device. BACKGROUND

[0002] In recent years, with the rapid development of unmanned aerial vehicle technology, the potential of unmanned aerial vehicles in various application scenarios has gradually emerged. The lightweight and high flexibility of unmanned aerial vehicles are gradually becoming a powerful supplement to traditional methods. At the same time, the cooperative operation of unmanned aerial vehicles and vehicles has become a research hotspot in the field of intelligent transportation and data collection. Compared with the traditional single operation mode, the cooperative operation of unmanned aerial vehicles and vehicles provides stronger adaptability and higher task execution efficiency.

[0003] At present, many research teams have developed various unmanned aerial vehicle and vehicle cooperation frameworks, realizing data collection and transportation tasks in complex environments. These unmanned aerial vehicles need to frequently communicate and exchange data with vehicles when performing tasks to support large-scale real-time data collection applications. In a dynamically changing environment, unmanned aerial vehicles and vehicles may face speed fluctuations and service demand changes every second. However, due to the dynamic changes caused by speed fluctuations, the path planning and task allocation of unmanned aerial vehicles become extremely complex.

[0004] In existing research, the path planning and task allocation of unmanned aerial vehicles are usually considered as two independent parts. Although this method simplifies the planning process to a certain extent, it may lead to the performance of the overall solution being unable to reach the optimal, especially in a dynamically changing environment. This method obviously cannot meet the actual demand. Therefore, how to effectively cope with the dynamic changes caused by speed fluctuations and reduce the response delay problem of unmanned aerial vehicles and vehicles in cooperative execution of large-scale real-time data collection tasks has become a key problem to be solved in this field.

[0005] The above content is only used to assist in understanding the technical solutions of the present application and does not represent the acknowledgement of the above content as prior art. SUMMARY

[0006] The purpose of the present application is to overcome the above-mentioned defects and problems in the prior art, and to provide a multi-unmanned aerial vehicle and vehicle cooperative task planning and path optimization method and device. The method fully considers the advantages of cooperative operation of unmanned aerial vehicles and vehicles, and improves the flexibility and task response efficiency of the method under the constraints and speed changes of unmanned aerial vehicles, thereby greatly reducing the response delay of the method to user requests.

[0007] To achieve the above purpose, the technical solution of the present application is: a multi-unmanned aerial vehicle and vehicle cooperative task planning and path optimization method, comprising:

[0008] establish a UAV and vehicle cooperation model, the model including a plurality of task points, a plurality of UAVs and at least one vehicle;

[0009] selecting a parking anchor point and a task point set corresponding to each parking anchor point by using a K-means clustering algorithm;

[0010] adjusting the UAV flight route in a single anchor point by using a tabu search algorithm according to the real-time change of the UAV speed, and outputting a local dynamic optimization solution of the UAV and vehicle cooperation model.

[0011] The K-means clustering algorithm includes:

[0012] inputting a task point set to be served, a candidate anchor point set and an anchor point position of a current vehicle;

[0013] randomly selecting K anchor points as centroids from the candidate anchor point set;

[0014] assigning each task point to be served to a cluster set in which the centroid is located closest;

[0015] calculating the total distance from all task points to be served in each cluster set to the centroid, and selecting an anchor point with the shortest distance as a new centroid to continue assigning the task points to be served;

[0016] after the initial clustering is completed, detecting whether the distance from the task points to be served in the cluster set to the centroid exceeds the maximum flight distance limit of the UAV, and if so, putting the task points to be served into a candidate task point set and reselecting an anchor point for the task points to be served;

[0017] if the anchor point position of the vehicle is not selected as a centroid anchor point, adding the anchor point position to a centroid set, and assigning the task point set to be served to a cluster set in which the nearest centroid is located according to the finally determined centroid set;

[0018] adding each centroid and the corresponding cluster set to the task point set corresponding to the anchor point.

[0019] The K-means clustering algorithm includes:

[0020] inputting an anchor point position and a task point set corresponding to the anchor point;

[0021] setting a temporary task point set including all unvisited task points;

[0022] Randomly select a task point from the temporary task point set to join the current route, calculate the distance from the anchor point position to the route and back to the anchor point position, and determine whether the distance exceeds the maximum flight distance of the unmanned aerial vehicle, if not, delete the task point from the temporary task point set, and take the task point as the last node position of the current route; if it exceeds, delete the task point from the route, and add the route to the unmanned aerial vehicle flight route set;

[0023] After multiple iterations until the temporary task point set is empty, the unmanned aerial vehicle flight route set at the anchor point is output.

[0024] The unmanned aerial vehicle flight route set is distributed to each unmanned aerial vehicle, and the unmanned aerial vehicle flight route in a single stop anchor point is obtained, including:

[0025] The anchor point position, the unmanned aerial vehicle flight route set and the unmanned aerial vehicle set are input;

[0026] For each unmanned aerial vehicle, traverse each flight route, if the flight route length is less than the remaining range of the unmanned aerial vehicle, the flight route is distributed to the unmanned aerial vehicle, and the flight route is deleted from the unmanned aerial vehicle flight route set; otherwise, the unmanned aerial vehicle returns to the anchor point for charging;

[0027] The remaining flight routes in the unmanned aerial vehicle flight route set are arranged in descending order of flight length, and the unmanned aerial vehicle with the shortest total route length is selected.

[0028] The vehicle driving route is obtained according to all the stop anchors, including:

[0029] An empty vehicle sequence list is established;

[0030] The anchor point where the current vehicle is located is added to the vehicle sequence list as the starting point, and the anchor point is deleted from the anchor point set;

[0031] An anchor point is selected from the remaining anchor points in the anchor point set to join the current vehicle sequence list to minimize the increase in route length, the anchor point is added to the end of the vehicle sequence list, and it is deleted from the anchor point set;

[0032] Multiple iterations until the anchor point set is empty, and the vehicle sequence list obtained generates a vehicle driving route solution.

[0033] The real-time change of the unmanned aerial vehicle speed is adjusted by the tabu search algorithm for the unmanned aerial vehicle flight route in a single anchor point, and the local dynamic optimization solution of the unmanned aerial vehicle and vehicle cooperation model is output, including:

[0034] In each iteration, one task point is randomly selected from each of the two flight routes to exchange, or one task point is randomly selected from one flight route to add to the other flight route, after which the newly generated two flight routes are reordered, and the empty flight route generated by the insertion operation is deleted, and finally the route is redistributed for the UAV to generate a new local solution;

[0035] The new local solution is inserted into the field, and the tabu table is updated according to the quality of the solution;

[0036] By calculating the cost of each field solution, the solution with the minimum cost is selected as the new current solution; if the cost of the new current solution is lower than that of the previous optimal solution, the optimal solution is updated;

[0037] The above steps are repeated until the maximum number of iterations is reached, and finally the local dynamic optimization solution is output.

[0038] The objective function of the local dynamic optimization solution is:

[0039]

[0040] In the formula, is the anchor point a q The total execution time of the remaining tasks in the inner loop; is the total flight time of the UAV with the longest time consumption among all UAVs;a q is the anchor point; is the length of the flight route r i ; z(u k , r i ) indicates whether the flight route r i is assigned to the UAV u k , if yes, then z(u k , r i ) = 1, otherwise z(u k , r i ) = 0; x(a q , r i ) indicates whether the anchor point a q is included in the flight route r i , if yes, then x(a q , r i ) = 1, otherwise x(a q , r i ) = 0; v uav is the UAV flight speed.

[0041] A multi-UAV and vehicle cooperative task planning and path optimization device, which is applied to the above-mentioned method, the device comprises:

[0042] The unmanned aerial vehicle and vehicle cooperation model establishing module is configured to establish an unmanned aerial vehicle and vehicle cooperation model, which includes a plurality of task points, a plurality of unmanned aerial vehicles and at least one vehicle.

[0043] The global static optimization solution obtaining module is configured to select a parking anchor point and a task point set corresponding to each parking anchor point by using a K-means clustering algorithm, obtain a set of unmanned aerial vehicle flight routes for the task point set in the parking anchor point, assign each route in the set of unmanned aerial vehicle flight routes to each unmanned aerial vehicle to obtain an unmanned aerial vehicle flight route in a single parking anchor point, and obtain a vehicle driving route according to all parking anchor points, thereby obtaining a global static optimization solution of the unmanned aerial vehicle and vehicle cooperation model.

[0044] The local dynamic optimization solution obtaining module is configured to adjust the unmanned aerial vehicle flight route in a single anchor point by using a tabu search algorithm according to real-time changes in the speed of the unmanned aerial vehicle, and output a local dynamic optimization solution of the unmanned aerial vehicle and vehicle cooperation model.

[0045] A multi-unmanned aerial vehicle and vehicle cooperation task planning and path optimization device includes a memory and a processor.

[0046] The memory is configured to store computer program code and transmit the computer program code to the processor.

[0047] The processor is configured to execute the method according to the instructions in the computer program code.

[0048] A computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the method.

[0049] Compared with the prior art, the beneficial effects of the present application are:

[0050] In the multi-unmanned aerial vehicle and vehicle cooperation task planning and path optimization method and system, the advantages of unmanned aerial vehicle and vehicle cooperation are fully considered, and the unmanned aerial vehicle flight route in a single anchor point is locally dynamically optimized based on the speed change of the current unmanned aerial vehicle under the constraint condition and dynamic scene, such as the speed change of the unmanned aerial vehicle, and the task of the unmanned aerial vehicle is redistributed according to the optimization result, so that the unmanned aerial vehicle can efficiently complete the data collection task under the speed change, the flexibility and task response efficiency of the method are improved, the response delay of the method to the user request is greatly reduced, and the overall performance is improved. BRIEF DESCRIPTION OF DRAWINGS

[0051] Figure 1 is a flowchart of a multi-unmanned aerial vehicle and vehicle cooperation task planning and path optimization method.

[0052] Figure 2is a multi-UAV and vehicle cooperative data collection system model schematic diagram mentioned in the embodiments of the present application.

[0053] Figure 3 is a vehicle driving route and anchor point schematic diagram mentioned in the embodiments of the present application.

[0054] Figure 4 is a structural block diagram of a multi-UAV and vehicle cooperative task planning and path optimization device.

[0055] Figure 5 is a structural block diagram of a multi-UAV and vehicle cooperative task planning and path optimization device. DETAILED DESCRIPTION

[0056] The present application is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0057] Reference Figure 1 , a multi-UAV and vehicle cooperative task planning and path optimization method, comprising:

[0058] S1, establishing a UAV and vehicle cooperation model, the model comprising a plurality of task points, a plurality of UAVs and at least one vehicle, as shown in Figure 2 ; wherein the UAV performs data collection tasks, and the vehicle is responsible for transporting the UAV and providing communication support.

[0059] The present application is applicable to data collection tasks in a dynamic environment composed of UAVs and vehicles, and determines the path planning and task allocation of the UAVs according to the flight capabilities of the UAVs and the transportation capabilities of the vehicles. The method aims to solve the technical problem of limited efficiency of UAV groups in large-scale regional data collection tasks under the speed fluctuation of UAVs in a dynamic scenario. The method optimizes the cooperation efficiency of UAVs and vehicles by dynamically adapting the path planning and task scheduling in real time, and reduces the efficiency loss caused by the limitations of UAV endurance, communication, computing power and storage space.

[0060] In the target area , there are irregularly scattered task points that need to be collected. Let the initial point set containing all points be P0={p1, p2,..., p n}, and all initial task point information is known. For each task point p i (i=1,...,n), its position on the two-dimensional coordinate axis is p i ∈Ω, i=1,...,n. There is a connecting edge between any two points, and the set of all edges is E={(p i , p j )|p i , p j∈P, i≠j}. The distance of any edge is a non-negative number, denoted as The distance between task points p i and p j . All task points and their connecting edges form a connected graph G = (P, E). In order to simplify the calculation, the distance between two points in this application is calculated by the straight-line distance. If the real city road network condition needs to be read, the shortest driving distance between two points is calculated according to the real road. Let the set of unmanned aerial vehicles be U = {u1, u2,..., u m}. The vehicle-mounted multi-unmanned aerial vehicle sets off from the starting point A start , and returns to the starting point after completing all tasks. In order to facilitate the recording of the vehicle route and the determination of the parking point of the vehicle to the target task point, this application introduces the concept of anchor point. In the target area Ω, according to the clustering and partitioning results, after discretization processing, a candidate anchor point is set every certain distance, and the set of all candidate anchor points is A = {a1, a2,..., a l}. The vehicle path will select some points from these candidate anchor points as parking anchor points, and the vehicle will wait for the unmanned aerial vehicle to perform the data collection task at the parking anchor point. Let the set of vehicle path nodes be

[0061] In the multi-unmanned aerial vehicle-vehicle cooperative data collection problem studied in this application, first, the vehicle will transport the m unmanned aerial vehicles to the parking point near the target task point in turn according to the driving route planned by the central control console. After the vehicle transports the multi-unmanned aerial vehicle to a parking anchor point, the unmanned aerial vehicle will take off and fly to the respective task point to perform data collection. In order to facilitate the recording of the vehicle route and the determination of the parking point of the vehicle to the target task point, the concept of anchor point is introduced. As shown in Figure 3 , in the target area Ω, according to the clustering and partitioning results, after discretization processing, a candidate anchor point is set every certain distance, and the set of all candidate anchor points is A = {a1, a2,..., a l}. In order to improve the working efficiency of the system, it is necessary to minimize the vehicle path as much as possible. Therefore, it is necessary to select some suitable points from these candidate anchor points as parking anchor points, and the vehicle will wait for the unmanned aerial vehicle to perform the data collection task at the parking anchor point. Let the set of vehicle path nodes be , where i = 1, 2,..., n. After the parking anchor point is determined, the vehicle path planning problem is to determine the starting point, traverse each path node in the set, and finally return to the starting point. This application uses the symbol r0 to represent the driving route of the vehicle, and there is only one. The driving route r0 of the vehicle is composed of the starting point A start and the selected parking anchor points, and is represented as r0 = {A start, a k1 , a k2 ,..., a kn , A start}. That is, the vehicle departs from the starting point A start , passes through the stop anchor points a k1 in sequence, and finally returns to the starting point A start . Let the distance between any two stop anchor points a ki and a kj be d , then the time for the vehicle to travel from the anchor point a ki to a kj can be recorded as t . The following can be calculated:

[0062]

[0063] In a single flight of a single unmanned aerial vehicle u k , suppose that the data collection task point set it needs to visit is Q = {q1, q2,..., q n}, the takeoff anchor point is recorded as a q , and the flight route of the unmanned aerial vehicle u k is generated according to the task point set. For a single flight route, it is recorded as r i = {a q , q1, q2,..., q n , a q}, where a q ∈ A c , q1,..., q n ∈ Q. r i represents the process that the unmanned aerial vehicle takes off from the anchor point a q , sequentially passes through the task points q1 to q n , and finally returns to the anchor point a q . The number of unmanned aerial vehicles is defined as M uav , and for all M uav unmanned aerial vehicles, their flight routes are placed together to obtain the unmanned aerial vehicle flight route set Therefore, the global route set in the multi-unmanned aerial vehicle-vehicle cooperation problem is For the unmanned aerial vehicle u k in the flight route r i , whether to fly from the task node q i to q j , the present application uses an auxiliary decision variable to represent, if yes, then otherwise, correspondingly, the following formula can calculate the length of the flight route r i ​

[0064]

[0065] UAV u k The time of a single flight along a flight route is given by:

[0066]

[0067] Since the UAVs have limited battery life, only a few data points can be visited in a single flight. Therefore, the UAV u k At the anchor point a q , there can be multiple flights. The algorithm assigned to the UAV by the mission control center calculates the UAV path and number of flights based on the data collection mission points of the UAV and sends instructions. In addition, a binary variable z(u k , r i ) is used to represent whether the route r i is assigned to the UAV u k . Specifically, if yes, then z(u k , r i ) = 1; otherwise, z(u k , r i ) = 0. The variable x(a i , r0) is used to represent whether the candidate anchor point a q is selected as a stopover anchor point and included in the route r0, and the auxiliary decision variable x(a q , r i ) = 1 is used to represent whether the stopover anchor point a q is included in the single flight route r i of a UAV. If yes, then x(a q , r i ) = 1; otherwise, x(a q , r i ) = 0. Then the total route length of the UAV u k at the anchor point a q can be calculated by:

[0068]

[0069] Assuming that the UAV u k has x flights at the anchor point a q , since the charging time of the UAV is ignored in the model assumption condition, the total flight time of the UAV u k at the anchor point a q is calculated as:

[0070]

[0071] S2, selecting the parking anchor points and the task point set corresponding to each parking anchor point by using the K-means clustering algorithm; obtaining the unmanned aerial vehicle flight route set for the task point set in the parking anchor point; assigning each route in the unmanned aerial vehicle flight route set to each unmanned aerial vehicle to obtain the unmanned aerial vehicle flight route in a single parking anchor point; obtaining the vehicle driving route according to all parking anchor points, thereby obtaining the global static optimization solution of the unmanned aerial vehicle and vehicle cooperation model.

[0072] Before the multi-unmanned aerial vehicle and vehicle start to perform the task, the central control console will plan and assign the route for the multi-unmanned aerial vehicle and vehicle according to the received initial static task and the calculated initial static solution. The generation of the initial greedy solution is roughly divided into four steps: anchor point selection and division of anchor point task point set, division of anchor point route set, unmanned aerial vehicle route assignment, and vehicle route planning. The initial greedy solution construction algorithm (IGSCA) is the core step of the static task planning for solving the multi-unmanned aerial vehicle-vehicle cooperative patrol point problem. The algorithm first inputs the initial static task point set, the set of anchor points to be selected, the anchor point position where the current vehicle is located, and the unmanned aerial vehicle state set. The main goal is to generate a feasible initial global solution by reasonably dividing and planning the execution route of the unmanned aerial vehicle and vehicle, although the solution is not necessarily the optimal solution, but provides a basis for the subsequent optimization steps.

[0073] The overall algorithm process is shown in Algorithm 1. First, Algorithm 2 is called to select K centroid parking anchor points based on K-means clustering, and the nearest parking anchor point is selected for each data collection task point. The task point set corresponding to each parking anchor point is output, thereby determining the anchor point position to which the vehicle will go. Second, each parking anchor point is iterated, and the task point set in the anchor point is processed. In each anchor point, the specific route for the unmanned aerial vehicle to perform is planned, so that the unmanned aerial vehicle departs from the anchor point, visits all the task points assigned to the anchor point, and returns to the anchor point. Algorithm 3 is called to divide the unmanned aerial vehicle flight route set, and Algorithm 4 is called to assign each route in the unmanned aerial vehicle flight route set to each unmanned aerial vehicle without repetition, ensuring that the flight time of the unmanned aerial vehicle and the task execution efficiency are maximized. Finally, a unmanned aerial vehicle solution obtained by the above steps is called by Algorithm 5 to obtain the vehicle driving route. The vehicle transports the unmanned aerial vehicle according to the planned path when visiting each anchor point, finally completes the patrol work of all task points, and finally obtains an initial greedy global solution S.

[0074]

[0075] S3, for the real-time change of the unmanned aerial vehicle speed, the taboo search algorithm is used to adjust the unmanned aerial vehicle flight route in a single anchor point, and a local dynamic optimization solution of the unmanned aerial vehicle and vehicle cooperation model is output.

[0076] Further, the K-means clustering algorithm is used to select the stop anchor point and the task point set corresponding to each stop anchor point, including:

[0077] Input the task point set to be served, the anchor point set to be selected, and the anchor point position where the current vehicle is located;

[0078] Randomly select K anchor points from the anchor point set to be selected as the center of mass;

[0079] For each task point to be served, assign it to the cluster set where the nearest center of mass is located;

[0080] Calculate the total distance of all task points to be served in each cluster set to the center of mass, and select an anchor point with the shortest distance as a new center of mass to continue assigning the task points to be served;

[0081] After the initial clustering is completed, it is detected whether the distance between the task point to be served in the cluster set and the center of mass exceeds the maximum flight distance limit of the unmanned aerial vehicle. If it exceeds, the task point to be served is put into the task point set to be selected, and a new anchor point is selected for it;

[0082] If the anchor point position where the vehicle is located is not selected as the center of mass anchor point, it is added to the center of mass set, and the task point set to be served is assigned to the cluster set where the nearest center of mass is located according to the finally determined center of mass set;

[0083] Each center of mass and its corresponding cluster set are added to the task point set corresponding to the anchor point.

[0084] Algorithm 2, i.e., the anchor point selection and division anchor task point set algorithm based on K-means clustering, aims to reasonably select the stop anchor point and divide the task point set by clustering the initial static task point set, thereby providing preliminary static task planning for the cooperative patrol of the unmanned aerial vehicle and the vehicle. The flow of the algorithm is as follows: first, the input of the algorithm includes the task point set to be served P0={p1, p2,..., p n}, the anchor point set to be selected A={A start , a1, a2,..., a l}, and the anchor point position a v where the current vehicle is located. The goal of the algorithm is to divide the task point set to each anchor point and generate the anchor point division task set E. In the initial step of the algorithm, first, K anchor points are randomly selected from the anchor point set to be selected as the initial center of mass. Then, for each task point p i, the algorithm will continue to iterate by reselecting new anchor points to optimize the division of task points. At each iteration, the algorithm calculates the total distance of each task point in the cluster set to the anchor point, and selects the anchor point with the shortest distance as the new anchor point, and continues to assign task points. After the initial clustering is completed, the algorithm will detect whether the clustering result meets the distance constraint condition. If the distance between some task points and their anchor points exceeds the maximum flight distance limit, these task points will be put into the candidate task point set P, and a suitable anchor point will be selected for them. Finally, if the anchor point position a v is not selected as the anchor point, the algorithm will add it to the anchor point set, and according to the final determined anchor point set, the task point set will be assigned to the nearest anchor point one by one. Through this algorithm, the preliminary anchor point selection and task point set division result can be provided for subsequent path planning, and the foundation for the collaborative work of UAVs and vehicles is laid.

[0085]

[0086]

[0087] Further, the task point set in the anchor point is obtained. The UAV flight route set includes:

[0088] Input anchor point position and task point set corresponding to anchor point;

[0089] Set a temporary task point set containing all unvisited task points;

[0090] Randomly select a task point from the temporary task point set to join the current route, calculate the distance from the anchor point position to the route and back to the anchor point position, and determine whether the distance exceeds the maximum flight distance of the UAV. If not, delete the task point from the temporary task point set, and take the task point as the last node position of the current route; if it exceeds, delete the task point from the route, and add the route to the UAV flight route set;

[0091] After multiple iterations until the temporary task point set is empty, output the UAV flight route set at the anchor point.

[0092] Algorithm 3, i.e. anchor point route division algorithm, aims to optimize the division of the task point set corresponding to each anchor point, so as to plan the best flight route for the UAV. The specific process can be summarized as follows: the algorithm first inputs the current anchor point position a iAnd the task point set E covered by the anchor point. During the initialization phase, the algorithm creates an empty route set `routes` and sets the maximum number of iterations to `max_iter`. Then, a temporary task point set `Q` is set, and the task points E are... i The concentrated task points are added to Q. Each time, a task point is randomly selected from the temporary task point set Q and added to the current single route. It is then determined whether the distance from the anchor point, through the route, and back to the anchor point exceeds the drone's maximum flight distance d. max If the distance exceeds 2, the task point is removed from the route, and the route is added to the route set, then the route is set to empty. In each iteration, the algorithm selects the task point closest to the current task point from the task point set and adds it to the current route. If a new task point causes the total flight distance to exceed the drone's maximum flight distance, the task point is removed, and the current route is saved to the route set. Through multiple iterations, the algorithm aims to allow the drone to visit as many task points as possible in each flight while satisfying the drone's flight distance constraint. The maximum number of iterations is set to max_iter. After max_iter rounds of iteration until the temporary task point set Q is empty, all task points within the anchor point are assigned to different drone flight routes, thus outputting the drone flight route set routes at that anchor point. This greedy algorithm optimizes the access order of task points through multiple iterations, ensuring that the generated flight routes are as efficient as possible. The location is used to record the position of the last node of the current route.

[0093]

[0094] Furthermore, the process of assigning each route in the drone flight path set to individual drones to obtain drone flight paths within a single docking anchor point includes:

[0095] Input the anchor point location, the set of UAV flight paths, and the set of UAVs;

[0096] For each drone, iterate through each flight path. If the length of the flight path is less than the drone's remaining range, assign the flight path to the drone and remove the flight path from the drone flight path set; otherwise, the drone returns to the anchor point to recharge.

[0097] The remaining flight routes of the drones are sorted in descending order of flight length, and the drone with the shortest total length of the arranged routes is selected.

[0098] After dividing a single docking anchor point into multiple drone flight routes, these routes need to be allocated to individual drones. To improve the system efficiency of multi-drone-vehicle collaborative patrol, the allocation needs to be more balanced in the solution, with each drone executing tasks in parallel to minimize the execution time of a single anchor point task.

[0099] Algorithm 4, the UAV route allocation algorithm, aims to rationally allocate pre-defined flight routes to multiple UAVs to maximize the efficiency of patrol missions. The basic process of this algorithm is as follows: First, the algorithm input includes the anchor point position 'a'. i The set of drone flight paths is called routes, and the set of drones is called U. For each drone u k The algorithm will traverse each flight path r i If the length of the flight path Smaller than the drone u k Remaining range (That is, the distance from the current drone position through all task points on the route and back to the anchor point), then the route r i Assigned to drone u k The route is then removed from the drone flight route set. The drone executes its task and returns to the anchor point, setting a flag to True. The drone's position is updated to the anchor point, and its remaining range is at full charge. If the route length exceeds the drone's remaining range, its status is updated to require returning to the anchor point to recharge. After each route assignment, the drone's range status is reset to full charge, ready to execute the next assigned route. The remaining drone flight routes in the flight route set are sorted in descending order of flight length (distance from the anchor point through all task points in the route and back to the anchor point). Each time the flight route set is traversed, if a route minimizes the total length of a drone's current assigned route, that route is added to the drone's solution set, ensuring balanced task allocation and reducing the workload of individual drones. The algorithm maximizes system efficiency and reduces the total execution time of single-anchor-point tasks when multiple drones collaborate on tasks. Finally, the algorithm outputs the task allocation results for each drone, ensuring that each drone's range is fully utilized and achieving globally optimal route allocation.

[0100]

[0101]

[0102] Furthermore, obtaining the vehicle's travel route based on all stopping points includes:

[0103] Create an empty list of vehicle sequences;

[0104] add the anchor point where the current vehicle is located as the starting point to the vehicle order list and remove it from the anchor point set;

[0105] select one from the remaining anchor points in the anchor point set that can minimize the increase in route length when added to the current vehicle order list, add it to the end of the vehicle order list and remove it from the anchor point set;

[0106] iterate multiple times until the anchor point set is empty, and the obtained vehicle order list generates the vehicle driving route solution.

[0107] Algorithm 5, i.e., the vehicle path route allocation algorithm, is mainly used to determine the driving route of the vehicle between multiple anchor points to minimize the total path length and improve the task completion efficiency. The basic flow of the algorithm is as follows: first, input the initial global solution S, and establish an empty vehicle order list trunk_order, add the anchor point A start where the current vehicle is located as the starting point to the list and remove the anchor point from the anchor point set. Then, the algorithm enters the loop iteration step. In each loop, select one anchor point from the remaining anchor point set so that its addition to the current path can minimize the increase in route length (the distance from all anchor points in trunk_order to the warehouse and back). The selected anchor point will be added to the end of the trunk_order list, and the anchor point will be removed from the anchor point set. This process will be repeated until the anchor point set is empty and all anchor points are allocated. The final path order list generates the vehicle driving route solution. The vehicle will visit the anchor points in the order of the solution to complete all tasks. The algorithm ensures that the driving path of the vehicle is as short as possible, improving the execution efficiency of the entire system.

[0108]

[0109] Further, for the real-time changes of the speed of the UAV, the flight route of the UAV in a single anchor point is adjusted through the tabu search algorithm, and the local dynamic optimization solution of the UAV and vehicle cooperation model is output, including:

[0110] In each iteration, randomly exchange one task point from each of the two flight routes, or randomly take one task point from one flight route and add it to the other flight route. After completion, reorder the two newly generated flight routes, delete the empty flight route generated due to the insertion operation, and finally redistribute the route for the UAV to generate a new local solution;

[0111] insert the new local solution into the field and update the tabu table according to the quality of the solution;

[0112] The solution with the minimum cost is selected as the new current solution by calculating the cost of each field solution; if the cost of the new current solution is lower than the previous optimal solution, the optimal solution is updated;

[0113] The above steps are repeated until the maximum number of iterations is reached, and the final local dynamic optimization solution is output.

[0114] The tabu search-based dynamic processing optimization algorithm (TSDPOA) is mainly used for dynamic adjustment and optimization of the flight route of an unmanned aerial vehicle. Tabu search (TS) is an optimization search algorithm based on neighborhood selection, which records movements in a tabu list to avoid falling into local optimization after multiple iterations. In view of the change of the speed of the unmanned aerial vehicle, the tabu search algorithm is used to adjust the route of the unmanned aerial vehicle in a single anchor point, and a local optimization solution is output. The flow of the algorithm is as follows: first, input the solution S in the current single anchor point and initialize the optimal solution and the current solution S. The tabu list List is initially empty. The algorithm optimizes the current solution through multiple iterations, and generates multiple solutions in the neighborhood each time the iteration is performed, and the optimal solution is selected for updating. The specific steps include the following parts:

[0115] (1) Neighborhood generation: in each iteration, the algorithm randomly selects one task point from each of the two routes for exchange, or randomly inserts a task point from one route into another route. After completion, the two new routes are reordered, and the empty route generated by the insertion operation is deleted. Finally, the unmanned aerial vehicle route allocation algorithm is called to reassign the route to the unmanned aerial vehicle, generating a new local solution.

[0116] (2) Tabu list update: insert the newly generated solution into the neighborhood, and update the tabu list according to the quality of the solution to prevent the algorithm from falling into local optimization.

[0117] (3) Optimal solution selection: the cost of each neighborhood solution is calculated, and the solution with the minimum cost is selected as the new current solution. If the cost of the new solution is lower than that of the previous optimal solution, the optimal solution is updated.

[0118] (4) Iterative optimization: the algorithm repeatedly performs the above steps until the maximum number of iterations is reached, and finally outputs a local optimization solution.

[0119] The algorithm generates multiple candidate solutions through two basic neighborhood search operations: node exchange and node insertion, and performs tabu search. After multiple iterations, TSDPOA can effectively optimize the flight route of the unmanned aerial vehicle in a dynamic environment, ensuring the task execution efficiency of the system.

[0120]

[0121]

[0122] In practice, factors such as terrain and weather can cause drone and vehicle speeds to be non-constant. Vehicle speed fluctuations have almost no impact on anchor point division, vehicle routes, or drone routes, but they do change vehicle travel time, thus affecting the overall time cost. When drone speed fluctuates, it may prevent a single drone's planned route from being completed or complete prematurely, significantly altering the drone route planning and allocation scheme within a single anchor point. Therefore, this invention primarily addresses dynamic optimization adjustments for drone speed variations, specifically local optimization adjustments within anchor points. Each dynamic processing step only requires route optimization within the anchor point where the drone is currently performing its task.

[0123] Since the current state values ​​of multiple drones will be read every time interval τ, executed task points will be deleted, and the remaining task points within the anchor point will undergo drone flight path replanning and reallocation, it is necessary to calculate the cost of the new solution to evaluate its merits after replanning and reallocation, and to consider the cost of a single anchor point a. q Total remaining execution time of tasks As an optimization target.

[0124] According to the drone u k At anchor point a q The total flight time at each location can be compared to determine the longest total flight time among all drones. That is to say Therefore, the objective function is expressed as follows:

[0125]

[0126] In the formula, For anchor point a q Total remaining execution time for tasks; The longest total flight time for any drone among all drones; a q For anchor points; For the flight path r i Length of z(u) k r i ) indicates the flight path r i Is it assigned to a drone? k If so, then z(u) k r i ) = 1, otherwise z(u) k r i ) = 0; x(a q r i ) indicates anchor point a q Is it included in flight route r? ix(a q , r i ) = 1, otherwise x(a q , r i ) = 0; v uav is the speed of the UAV.

[0127] In the dynamic scenario of multiple UAVs and vehicle speed constantly fluctuating, the complete dynamic task processing algorithm mainly includes: constructing a global initial solution based on K-means clustering, HGA static and local dynamic optimization based on tabu search (TS), so the dynamic processing optimization algorithm based on the speed change of UAV and vehicle is called KGTSA algorithm. According to the depth from shallow, the vehicle and machine joint optimization problem is divided into three steps: problem preprocessing, cluster solution construction and global solution construction. Among them, the construction of global initial solution, HGA static optimization, local dynamic optimization are based on the optimization adjustment of the previous two steps. The overall dynamic simulation process of KGTSA algorithm is as follows: after the central control console receives the initial static task, algorithms 1-5 are called to generate a static optimization solution, so that the multiple UAVs and vehicles pick up the task from the starting point. After starting, the speed of the multiple UAVs and vehicles is always in random fluctuation, and the random fluctuation has a certain range limit. After a short time τ, if the vehicle is on the way to the next anchor point, the driving distance of the vehicle after time τ is updated forward; otherwise, it is indicated that the vehicle is parked at the anchor point, and the UAV is executing the task, then the flight distance of each UAV after time τ is updated forward, and algorithm 6 is called to generate a local dynamic optimization solution in the current anchor point, and all UAVs continue to execute the task according to the new flight route. Repeat the above process until all task points are visited, then the algorithm ends. Based on the speed change of the current UAV, the KGTSA algorithm is used to locally optimize the UAV flight route in a single anchor point, and according to the optimization result, the task of the UAV is redistributed to ensure that the UAV can efficiently complete the data collection task under the condition of speed change.

[0128] The prototype code of the method is implemented by using Python language, and the feasibility and effectiveness are verified on simulation data.

[0129] Referring to Figure 4 , the application further provides a task planning and path optimization device for cooperation of multiple UAVs and vehicles, which is applied to the task planning and path optimization method for cooperation of multiple UAVs and vehicles, and comprises:

[0130] A UAV and vehicle cooperation model establishing module is configured to establish a UAV and vehicle cooperation model, which comprises multiple task points, multiple UAVs and at least one vehicle.

[0131] The global static optimization solution acquisition module is configured to select the parking anchor points and the task point sets corresponding to each parking anchor point by using a K-means clustering algorithm; for the task point set in each parking anchor point, the UAV flight route set is acquired; each route in the UAV flight route set is assigned to each UAV to obtain the UAV flight route in a single parking anchor point; the vehicle driving route is acquired according to all the parking anchor points, so that the global static optimization solution of the UAV and vehicle cooperation model is obtained.

[0132] The local dynamic optimization solution acquisition module is configured to adjust the UAV flight route in a single anchor point by using a tabu search algorithm according to the real-time change of the UAV speed, and output the local dynamic optimization solution of the UAV and vehicle cooperation model.

[0133] Referring to Figure 5 The application further provides a multi-UAV and vehicle cooperation task planning and path optimization device, which comprises a memory and a processor.

[0134] The memory is configured to store computer program codes and transmit the computer program codes to the processor.

[0135] The processor is configured to execute the above-mentioned multi-UAV and vehicle cooperation task planning and path optimization method according to the instructions in the computer program codes.

[0136] The application further provides a computer readable storage medium, wherein the computer readable storage medium stores computer programs, and the computer programs are executed by the processor to realize the above-mentioned multi-UAV and vehicle cooperation task planning and path optimization method.

[0137] Generally, the computer instructions used to realize the method of the application can be carried by any combination of one or more computer readable storage media. The non-transitory computer readable storage medium can include any computer readable medium except the signal itself in the process of temporarily propagating.

[0138] Computer-readable storage media can be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or any combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EKROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0139] Computer program code for performing the operations of this invention can be written in one or more programming languages ​​or a combination thereof. These programming languages ​​include object-oriented programming languages—such as Java, Smalltalk, and C++—as well as conventional procedural programming languages—such as the "C" language or similar programming languages. In particular, Python, suitable for neural network computation, and platform frameworks such as TensorFlow and PyTorch can be used. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer or to an external computer (e.g., via the Internet using an Internet service provider) through any type of network, including a local area network (LAN) or a wide area network (WAN).

[0140] The aforementioned equipment and non-transitory computer-readable storage media can be found in the detailed description of a multi-UAV and vehicle collaborative task planning and path optimization method and its beneficial effects, which will not be repeated here.

[0141] Although embodiments of the present invention have been shown and described above, it should be understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A method for multi-UAV and vehicle cooperative task planning and path optimization, characterized in that, The application relates to a method for optimizing the cooperation between unmanned aerial vehicles and vehicles. The method comprises the following steps: establishing a cooperation model of unmanned aerial vehicles and vehicles, the model comprising a plurality of task points, a plurality of unmanned aerial vehicles and at least one vehicle; selecting a parking anchor point and a task point set corresponding to each parking anchor point by using a K-means clustering algorithm; obtaining a set of unmanned aerial vehicle flight routes for the task point set in the parking anchor point; allocating each route in the set of unmanned aerial vehicle flight routes to each unmanned aerial vehicle to obtain the unmanned aerial vehicle flight route in a single parking anchor point; obtaining a vehicle driving route according to all parking anchor points, thereby obtaining a global static optimization solution of the cooperation model of unmanned aerial vehicles and vehicles; adjusting the unmanned aerial vehicle flight route in a single anchor point by using a tabu search algorithm according to the real-time change of the unmanned aerial vehicle speed, and outputting a local dynamic optimization solution of the cooperation model of unmanned aerial vehicles and vehicles; the method comprises the following steps: in each iteration, randomly selecting one task point from each of the two flight routes to exchange, or randomly selecting one task point from one flight route to add to the other flight route, completing the operation, reordering the two newly generated flight routes, deleting the empty flight route generated due to the insertion operation, and finally reallocating the routes to the unmanned aerial vehicles to generate a new local solution; ; wherein is the anchor point is the total execution time of the remaining tasks inside; is the total flight time of the longest drone among all drones; is the anchor point is the flight route length; indicates whether the flight route is assigned to the drone , if yes, then , otherwise ; indicates whether the anchor point is contained in the flight route , if yes, then , otherwise ; is the drone flight speed. 2.The method of claim 1, wherein, inserting the new local solution into the field, and updating the tabu table according to the quality of the solution; selecting the solution with the minimum cost as a new current solution by calculating the cost of each field solution; if the cost of the new current solution is lower than that of the previous optimal solution, the optimal solution is updated; repeating the above steps until the maximum number of iterations is reached, and finally outputting the local dynamic optimization solution; the objective function of the local dynamic optimization solution is: the method for selecting a parking anchor point and a task point set corresponding to each parking anchor point by using a K-means clustering algorithm comprises the following steps: inputting a set of to-be-served task points, a set of to-be-selected anchor points and the anchor point position of a current vehicle; randomly selecting K anchor points as the centers from the set of to-be-selected anchor points; allocating each to-be-served task point to the cluster set in which the nearest center is located; 3.The method of claim 1, wherein, calculating the total distance of all to-be-served task points in each cluster set to the center, and selecting an anchor point with the shortest distance as a new center to continue the allocation of the to-be-served task points; after the initial clustering is completed, detecting whether the distance between the to-be-served task points in the cluster set and the center exceeds the maximum flight distance limit of the unmanned aerial vehicle, and if yes, the to-be-served task points are put into a set of to-be-selected task points, and the anchor points are reselected; if the anchor point position of the vehicle is not selected as the center anchor point, the anchor point position is added into the center set, and the set of to-be-served task points is allocated to the cluster set in which the nearest center is located according to the finally determined center set; each center and the corresponding cluster set are added into the set of task points corresponding to the anchor point. the method for obtaining a set of unmanned aerial vehicle flight routes for the task point set in the parking anchor point comprises the following steps: inputting the anchor point position and the set of task points corresponding to the anchor point; setting a temporary task point set containing all unvisited task points; randomly select one task point from the temporary task point set to join the current route, calculate the distance from the anchor point position to the route and back to the anchor point position, and determine whether the distance exceeds the maximum flight distance of the unmanned aerial vehicle, if not, delete the task point from the temporary task point set, and take the task point as the last node position of the current route; if it exceeds, delete the task point from the route, and add the route to the unmanned aerial vehicle flight route set; after multiple iterations until the temporary task point set is empty, output the unmanned aerial vehicle flight route set at the anchor point. 4.The method of claim 1, wherein, The method further comprises: inputting the anchor point position, the unmanned aerial vehicle flight route set and the unmanned aerial vehicle set; for each unmanned aerial vehicle, traversing each flight route, if the flight route length is less than the remaining range of the unmanned aerial vehicle, assigning the flight route to the unmanned aerial vehicle, and deleting the flight route from the unmanned aerial vehicle flight route set; otherwise, the unmanned aerial vehicle returns to the anchor point for charging; arranging the remaining flight routes in the unmanned aerial vehicle flight route set in descending order of flight length, and selecting the unmanned aerial vehicle with the shortest total route length among the unmanned aerial vehicles.

5. The method of claim 1, wherein, The method further comprises: establishing an empty vehicle sequence list; adding the anchor point where the current vehicle is located as the starting point to the vehicle sequence list, and deleting the anchor point from the anchor point set; selecting an anchor point from the remaining anchor points in the anchor point set that can increase the route length the least when added to the current vehicle sequence list, adding the anchor point to the end of the vehicle sequence list, and deleting it from the anchor point set; iterating multiple times until the anchor point set is empty, and the obtained vehicle sequence list generates a vehicle driving route solution.

6. A multi-UAV and vehicle cooperative task planning and path optimization device, characterized in that, The device is applied to the method of any one of claims 1-5, and the device comprises: an unmanned aerial vehicle and vehicle cooperation model establishing module, configured to establish an unmanned aerial vehicle and vehicle cooperation model, which comprises a plurality of task points, a plurality of unmanned aerial vehicles and at least one vehicle; a global static optimization solution obtaining module, configured to select the parking anchor points and the task point set corresponding to each parking anchor point by using a K-means clustering algorithm; obtain the unmanned aerial vehicle flight route set for the task point set in each parking anchor point; assign each route in the unmanned aerial vehicle flight route set to each unmanned aerial vehicle to obtain the unmanned aerial vehicle flight route in each parking anchor point; and obtain the vehicle driving route from all parking anchor points, thereby obtaining the global static optimization solution of the unmanned aerial vehicle and vehicle cooperation model; a local dynamic optimization solution obtaining module, configured to adjust the unmanned aerial vehicle flight route in each parking anchor point by using a tabu search algorithm according to the real-time change of the unmanned aerial vehicle speed, and output the local dynamic optimization solution of the unmanned aerial vehicle and vehicle cooperation model.

7. A multi-unmanned aerial vehicle and vehicle cooperation task planning and path optimization device, comprising: a memory and a processor; the memory is configured to store computer program code and transmit the computer program code to the processor; the processor is configured to execute the method according to the instructions in the computer program code.

7. A multi-unmanned aerial vehicle and vehicle cooperation task planning and path optimization device, comprising: a memory and a processor; the memory is configured to store computer program code and transmit the computer program code to the processor; the processor is configured to execute the method according to the instructions in the computer program code.

8. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is executed by the processor to implement the method in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Air-ground unmanned system reconnaissance cooperative path planning method based on task priority

    CN113552897A

  • Air-ground unmanned cluster multi-task point path planning method under road network constraint

    CN115237157A