Multi-unmanned aerial vehicle cooperative task allocation method and system for unmanned aerial vehicles

By using K-Means clustering algorithm and branching delimiting method in the drone task allocation system, the task allocation and path planning of drones are optimized, and the efficiency and success rate of drone task allocation in large-scale and multi-objective mission scenarios are solved, and the rational utilization of drone resources and the improvement of task execution efficiency are achieved.

CN119721585APending Publication Date: 2025-03-28AVIC AIR TRAFFIC CONTROL SYST EQUIP CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411779277.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-05
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

In large-scale and multi-objective mission scenarios, how to effectively allocate and coordinate drones tasks, ensure the rational use of various drone resources, and improve the execution efficiency and success rate of missions.

Method used

Through the stages of task constraint processing, task indicator evaluation, multi-machine multi-objective allocation optimization and single-machine multi-objective allocation optimization, K-Means clustering algorithm and branching delimiting method are used to optimize the task allocation and path planning of the drone.

Benefits of technology

The rational use of drone resources has been realized, the task execution efficiency and success rate have been improved, and the efficient completion of multi-machine collaborative tasks has been ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119721585A_ABST
    Figure CN119721585A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-aircraft cooperative task allocation method and system for unmanned aerial vehicles, and relates to the technical field of unmanned aerial vehicle task cooperative allocation, and the method comprises a task constraint processing stage, a task index evaluation stage, a multi-aircraft multi-target allocation optimization stage and a single-aircraft multi-target allocation optimization stage. And according to the reconnaissance and strike task characteristics, multi-unmanned aerial vehicle cooperative task execution of the unmanned aerial vehicles is allocated, so that each unmanned aerial vehicle has the shortest path in the task execution process. Reasonable utilization of resources of each unmanned aerial vehicle is ensured, and the execution efficiency and success rate of tasks are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of cooperative task allocation for unmanned aerial vehicles (UAVs), and in particular to a method and system for cooperative task allocation for multiple UAVs. Background Art

[0002] With the rapid development of drone technology, it has been widely used in many fields such as military, logistics, agriculture, and environmental monitoring. The autonomous flight and mission execution capabilities of drones enable them to replace humans in many scenarios to complete complex, dangerous, or repetitive tasks. However, in some tasks that require multiple drones to work together, how to effectively allocate and coordinate tasks becomes a key issue. Especially in large-scale, multi-target mission scenarios, multi-machine collaborative systems need to intelligently allocate tasks to ensure the rational use of each drone's resources and improve the efficiency and success rate of mission execution. Summary of the invention

[0003] In order to solve the above problems, the present invention provides a multi-machine collaborative task allocation method for unmanned aerial vehicles, comprising the following stages:

[0004] Mission constraint processing stage: for a specific combat mission, set constraints based on the characteristics of reconnaissance and strike missions;

[0005] Mission indicator evaluation stage: Execute mission allocation based on value indicators, flight range indicators, reconnaissance indicators, strike indicators and security threat indicators to control real-time allocation time;

[0006] Multi-machine multi-target allocation optimization stage: multiple targets are assigned to multiple machines through the K-Means clustering algorithm, so that the paths assigned to all drone reconnaissance are the shortest;

[0007] Single-machine multi-target allocation optimization stage: When the geometric centers of multiple targets and the starting point of the UAV are known, the attack value of the target, the total range of the UAV and the security threat value are considered as the objective function to obtain the shortest path of the UAV during the mission execution.

[0008] Preferably, in the task constraint processing stage, constraint conditions are set according to the target type and value parameters, the amount of ammunition consumed in attacking the target, the time window for attacking the target, the association between targets, and the constraint description manually input to support the processing of task constraints for no less than 5 Type 6 UAVs, wherein the association constraints between targets include: the parallel execution relationship of multiple tasks and the sequential execution relationship between tasks.

[0009] Preferably, in the task indicator evaluation stage, the effect of completing the target task is evaluated according to the task planning, and the value indicator is obtained to evaluate the task planning machine;

[0010] The total distance flown by the drone after it completes the determined mission sequence is used as the flight distance indicator;

[0011] Based on the reconnaissance requirements of the mission target and the reconnaissance capabilities of the UAV, combined with the flight performance of the UAV, the reconnaissance completion rate is used as an indicator to obtain the reconnaissance index;

[0012] Based on the strike requirements of the mission target and the strike capability of the UAV, combined with the flight performance of the UAV, the strike completion rate is used as an indicator to obtain the strike index;

[0013] Considering that a drone is executing a certain target, based on the threat level of the drone executing the target, the threat program of the drone executing different targets is quantified into coefficients to form a security threat index.

[0014] Preferably, in the multi-machine multi-objective allocation optimization stage, the allocation of multi-machine tasks is completed through spatial clustering, and load balancing is optimized on the basis of clustering to control the difference in the number of targets executed by different aircraft.

[0015] Preferably, in the single-machine multi-objective allocation optimization stage, after the multi-machine multi-objective allocation, the single-machine multi-objective allocation is optimized by the branch and bound method.

[0016] Preferably, in the process of optimizing the single-machine multi-objective allocation, a greedy algorithm is used to obtain the upper bound of the branch and bound method, and an iterative optimization solution is performed based on the obtained upper bound to meet the task allocation time requirement.

[0017] Preferably, in the process of obtaining the upper bound, based on the branch and bound method, through the greedy algorithm, a top-down, iterative method is used to make successive greedy choices. Each time a greedy choice is made, the problem is simplified into a smaller sub-problem. Through each step of greedy choice, an optimal solution to the problem is obtained to obtain the upper bound.

[0018] The present invention also discloses a multi-machine collaborative task allocation system for unmanned aerial vehicles, which is used in the multi-machine collaborative task allocation method for unmanned aerial vehicles mentioned above. The system includes:

[0019] The mission constraint processing module is used to set constraint conditions for a specific combat mission based on the characteristics of reconnaissance and strike missions;

[0020] The task index evaluation module is used to execute task allocation according to value index, flight range index, reconnaissance index, strike index and security threat index, and control the real-time allocation time;

[0021] The multi-machine multi-target allocation optimization module is used to allocate multiple targets to multiple machines through the K-Means clustering algorithm, so that the paths allocated to all drone reconnaissance are the shortest;

[0022] The single-machine multi-objective allocation optimization module is used to obtain the shortest path of the UAV during the mission execution by considering the target's attack value, the UAV's total range and the security threat value as the objective function when the geometric centers of multiple targets and the starting point of the UAV are known.

[0023] The present invention discloses the following technical effects:

[0024] The present invention ensures the rational use of the resources of each drone and improves the execution efficiency and success rate of the task. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0026] Figure 1 It is a multi-machine collaborative task allocation architecture diagram of the present invention;

[0027] Figure 2 It is a commonly used algorithm diagram for solving the vehicle routing problem described in the present invention;

[0028] Figure 3 is an example diagram of the branch and bound method of the present invention;

[0029] Figure 4 This is an example diagram of branch pruning using the branch and bound method described in the present invention.

[0030] Figure 5 Schematic diagram of the traveling salesman problem described in the present invention. DETAILED DESCRIPTION

[0031] To make the purpose, technical scheme and advantages of the embodiments of the present application clearer, the technical scheme in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. The components of the embodiments of the present application generally described and shown in the drawings here can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the application claimed for protection, but merely represents the selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present application.

[0032] like Figure 1-5 As shown, the present invention provides a method for multi-drone collaborative task allocation. The multi-drone collaborative task allocation is based on the current status, capability parameters and location, value attributes, priority and other information of heterogeneous multi-type drones, and comprehensive task index evaluation to determine the specific drone type and sortie number for each task, and generate a task sequence for each drone to execute the target. Multi-drone collaborative task allocation includes task constraint processing, task index evaluation, algorithm optimization, single-drone multi-target allocation optimization and multi-drone multi-target allocation optimization, specifically including the following contents:

[0033] Task constraint processing is mainly responsible for processing the constraints for a specific task.

[0034] According to the mission characteristics, the constraints that need to be considered include: target type and value parameters, the amount of ammunition consumed in attacking the target, the time window for attacking the target, and the association constraints between targets (the number of targets is not less than 30). The manually input constraint description supports the processing of mission constraints of no less than 5 Type 6 aircraft.

[0035] (1) Target type and value parameters

[0036] Different target types have different characteristics, so the standards for measuring their value are also different. Targets can be quantitatively measured from many angles, such as the type of target, the threat posed by the target to us, and the loss to the enemy caused by destroying the target.

[0037] According to the types of military targets in the battlefield area, they can be divided into command organizations, defense systems, early warning systems, fire strike systems, transportation systems, logistics support systems, etc. These systems are composed of many different units.

[0038] According to the threat posed by the target to us, it can be divided into direct threat and indirect threat. Direct threat can measure the target value from aspects such as weapon target distance, maneuverability, effective range, damage probability, weapon reaction rate and ammunition. Indirect threat can measure the target value from aspects such as command capability, reconnaissance capability, support capability and protection capability.

[0039] In order to quantify the advantages and disadvantages of mission planning from multiple perspectives, multiple indicators can be designed, such as the length of the track to complete the mission, the time required to complete the mission, the degree of enemy threat, the economic value of the enemy's target, etc. The calculation of a single indicator can be quantified by referring to the influencing factors of each indicator.

[0040] (2) Target demand load type

[0041] The drones are differentiated according to the target type to be executed. For reconnaissance targets, only reconnaissance drones can be assigned to conduct reconnaissance on the target, and for attack targets, only strike drones can be assigned to conduct strikes on the target. There are target type constraints between targets and drones.

[0042] (3) Association constraints between targets

[0043] Some goals have the following relationships, such as parallel execution and sequential execution.

[0044] The parallel execution relationship of multiple tasks is usually used to describe multi-machine coordinated attacks, which requires multiple aircraft to simultaneously execute a series of tasks against a certain target, that is, the start time of these three tasks must be the same. For example, if three drones attack an enemy position at the same time, it can be regarded as three tasks being executed in parallel.

[0045] If there is a sequential execution relationship between tasks, then these tasks must be executed in the specified order, that is, the start time of a task must be later than the end time of the previous task.

[0046] Task allocation should take into account value indicators, flight range indicators, reconnaissance indicators, strike indicators and security threat indicators, and the real-time allocation time should not exceed 10 seconds.

[0047] (1) Value indicators

[0048] According to the mission plan, the gains of our side or the losses of the enemy when completing the target mission. This is the standard for evaluating the quality of the planning algorithm. When modeling here, all targets are set with a value coefficient. The target with high value has a high value coefficient, and the target with low value has a low value coefficient.

[0049] (2) Flight range indicators

[0050] The flight range index is the total distance flown by the drone after it completes the specified mission sequence. This parameter can be used as part of the index function when modeling the index function by adding up the paths of all the targets executed by the drone in sequence.

[0051] (3) Reconnaissance indicators

[0052] The task allocation plan should be based on the reconnaissance requirements of the mission target and the reconnaissance capabilities of the UAV, combined with the flight performance of the UAV, and use the reconnaissance completion rate as an indicator to participate in the modeling of the indicator function.

[0053] (4) Strike indicators

[0054] The task allocation plan should be based on the strike requirements of the mission target and the strike capability of the UAV, combined with the flight performance of the UAV, and use the strike completion rate as an indicator to participate in the modeling of the indicator function.

[0055] (5) Security threat indicators

[0056] The task allocation plan should consider the threat level of the drone when it executes a certain target based on the status of our drone and the enemy's threat killing model, and quantify the threat program of our drone executing different targets as coefficients to participate in the indicator function modeling.

[0057] In the combat scenario of multiple aircraft and multiple targets, the goal of the clustering algorithm is to assign multiple targets to multiple aircraft so that all aircraft can find the shortest path assigned. The K-Means clustering algorithm is used to complete spatial clustering and complete the task of assigning multiple targets to multiple aircraft.

[0058] The assumption of the K-Means clustering problem is that there is a set of N data X = {x1, x2, x3, ..., xn} to be clustered. The K-means clustering problem is to find a partition of X Pk = {C1, C2, C3, ..., Ck} to minimize the objective function f(Pk). Among them, mi = 1 / ni, representing the center position of the i-th cluster, i = 1, ..., k; ni is the number of data items in cluster Ci; represents the distance from xi to mi. The usual spatial clustering algorithm is based on various distances, such as Euclidean distance, Manhattan distance and Minckhos distance. Among them, the most commonly used is Euclidean distance.

[0059] The basic idea of ​​the K-Means algorithm is: given a database containing n data objects and the number of clusters to be generated k, randomly select k objects as the initial k cluster centers; then calculate the distance from each remaining sample to each cluster center, assign the sample to the class where the cluster center closest to it is located, and use the average value method to calculate the new cluster center for the adjusted new class; if there is no change in the cluster centers of two consecutive times, it means that the sample adjustment is completed and the cluster average error criterion function has converged. This algorithm examines whether the classification of each sample is correct in each iteration. If not, it needs to be adjusted. After all samples are adjusted, modify the cluster center and enter the next iteration. If all samples are correctly classified in one iteration of the algorithm, there will be no adjustment and the cluster center will not change. The value is constantly decreasing in the algorithm iteration and eventually converges to a fixed value. This criterion is also one of the bases for measuring whether the algorithm is correct.

[0060] The process of K-Means algorithm can be described as:

[0061] Algorithm: Divide and calculate the average value based on the objects in the cluster.

[0062] Input: the number of clusters K and a database containing n objects.

[0063] Output: K clusters with the minimum sum of squared errors.

[0064] method:

[0065] 1) Arbitrarily select K objects as the initial cluster centers;

[0066] 2) Divide all objects into corresponding clusters;

[0067] 3) Calculate the average value of the objects in each cluster and reassign all objects to similar clusters;

[0068] 4) Repeat;

[0069] 5) until no more changes occur.

[0070] The problem of single-machine multi-task allocation algorithm can be extended to the traveling salesman problem. The TSP problem refers to a traveler who has to travel to n cities, and is required to visit each city only once, and then return to the starting city, and the distance traveled is required to be the shortest. In this article, it can be described as finding a sequence for the drone to perform tasks, given the geometric centers of multiple targets and the starting point of the drone, so that the drone has the shortest path during the task execution.

[0071] Design decision variable x kij , indicating that UAV k is executing target T i Then execute target Tj .

[0072] Considering the attack value of the target, the total range of the drone and the security threat value, the following objective function is designed:

[0073]

[0074] In the above formula, the first two items in the brackets represent the combat path and combat time, the second item represents the security threat value, and the smaller the cost, the better; the last item is the attack value, which is our benefit, and the larger the better. The three coefficients α, γ, and ω are adjustable parameters, representing the weight coefficients of each sub-goal. According to the description of the problem, the constraints can be divided into the following parts:

[0075] The decision variable is a 0-1 variable

[0076] x kij =1 or 0, 1≤i≠j≤n, k=1,2,3

[0077] Each mission is performed by a drone

[0078]

[0079] The flight trajectory of each drone is a circle passing through the starting point.

[0080]

[0081] Make sure each task is executed once and only once.

[0082] The mathematical model established by the above multi-machine task allocation is an integer programming problem, where x kij It is a 0-1 integer variable, and the state at each target depends on the value of the decision variable, which records the execution process of the target and can be output as the final result.

[0083] According to the above problem description and analysis, if we only look at the flight trajectory and target requirements of each drone, it is a vehicle routing problem (VRP): each drone takes off from the airport, performs its mission in turn, and then flies back to the airport. Each mission is traversed once. Common algorithms for solving vehicle routing problems include Figure 2 As shown:

[0084] Since the objective function involves not only the weights on the path but also the weights of the target points, and the constraints also have time window restrictions, the general multi-traveling salesman algorithm cannot solve this task allocation problem well. On the other hand, due to the random problems in genetic algorithms, particle swarm algorithms, and ant colony algorithms, different solutions may be obtained each time they are executed, which is not convenient for reliability problems and military use. To this end, we design an exact algorithm based on the branch and bound method.

[0085] The branch and bound method is an effective solution to combinatorial optimization problems. Its steps are as follows:

[0086] Step 1: If the problem objective is minimization, set the optimal solution value Z = ∞;

[0087] Step 2: According to the branching rule, select a node from the nodes that have not yet been understood (Fathomed) (local solution), and divide it into several new nodes in the next level of this node;

[0088] Step 3: Calculate the lower bound (LB) of each newly branched node;

[0089] Step 4: Test the insight condition for each node. If the node meets any of the following conditions, then this node can be insightful and will no longer be considered. The lower limit value of this node is greater than or equal to the Z value. A feasible solution with the minimum lower limit value has been found in this node; if this condition is met, then it is necessary to compare this feasible solution with the Z value. If the former is smaller, then the Z value needs to be updated and used as the value of the feasible solution. This node cannot contain a feasible solution;

[0090] Step 5: Determine whether there are still nodes that have not been understood. If so, proceed to step 2. If there are no nodes that have not been understood, the calculation stops and the optimal solution is obtained.

[0091] We know that the solution to the TSP problem is to use a sequence to represent the order in which cities are visited. For example, there are four cities (1,2,3,4). If we use an exhaustive method, there are six possible orders for visiting the cities: (1,2,3,4), (1,2,4,3), (1,3,2,4), (1,3,4,2), (1,4,3,2), and (1,4,2,3). We only need to calculate the shortest distance combination from the above six orders, which is the optimal travel order.

[0092] An example of branch and bound is Figure 3 As shown, the upper bound is determined, and then the above order is pruned by the upper bound, such as Figure 4 As shown in the figure, the distance between branches (1,3,2) and (1,4) is greater than the determined upper bound. At this time, there are only three orders: (1,2,3,4), (1,2,4,3), and (1,3,4,2) to select the best combination. Pruning them using the upper bound determined by the greedy algorithm can greatly reduce the efficiency of the algorithm iteration, and finally determine the best city travel order by the shortest distance.

[0093] After completing the clustering of tasks through the K-Means algorithm, since the clustering algorithm considers the shortest overall path to complete the clustering of targets, the number of targets executed by different aircraft may be too different, resulting in unbalanced load. Therefore, based on the clustering algorithm, it is necessary to consider that the number of targets executed by different aircraft should not be too different to complete the optimization process of load balancing. Load balancing is to adjust the number of tasks between drones in a small range to make the number of tasks as balanced as possible, to prevent a drone from executing too many tasks, resulting in a longer track. The following introduces the optimization process of load balancing.

[0094] First, the K-Means algorithm is used to divide the mission target points into N categories (N is the number of drones performing the mission); among them, the initial center point of the K-Means algorithm is selected from the mission target points according to the rule of the farthest distance.

[0095] Check the number of N types of task target points. If the difference between the largest and the smallest number does not exceed 2 (the code can be flexibly set here, and can be changed to no more than 3, etc.), it is considered that the load is balanced.

[0096] If a class, such as class A, has more tasks, then its number of tasks needs to be reduced; conversely, if the number of tasks in this class is the least, its number of tasks needs to be increased. The method to adjust a task from class A to class B is as follows (the number of tasks in class B is less than that in class A):

[0097] Select a target point A from class a, which is the closest to the center of class b, and the distance is recorded as Dab;

[0098] In class b, get the point farthest from its center and calculate the distance Rb between this point and the center of class b;

[0099] If Dab>=2*Rb, the adjustment fails (for example, an abnormal scenario: a drone has only one mission, and this mission is very far away from other mission points, so the drone only needs to perform this mission);

[0100] If Dab<2*Rb, then adjust task point A to class b.

[0101] Therefore, the multi-machine task allocation is completed through spatial clustering. On the basis of clustering, the number of targets executed by different aircraft should not be too different, and load balancing is optimized. Through the design and optimization of the clustering algorithm, the target allocation of multi-machine tasks is completed at this time, paving the way for the completion of the subsequent TSP task.

[0102] Since the branch and bound method needs to determine the upper bound to continuously iterate and optimize the solution, the traditional branch and bound method designs the algorithm by artificially determining the upper bound. The upper bound of the branch and bound method has a great influence on the convergence speed of the algorithm. If it is not set properly, it will cause the algorithm to run very slowly. Therefore, it is necessary to determine a method to obtain the upper bound of the branch and bound method to ensure that the speed of the single-machine multi-task allocation algorithm meets the requirements of the project scenario. The greedy algorithm is a simpler and faster design technology for some optimal solution problems. The characteristic of the greedy algorithm is that it proceeds step by step, often based on the current situation and making the best choice according to a certain optimization measure, without considering various possible overall situations, saving a lot of time that must be spent to exhaust all possibilities to find the optimal solution. Therefore, we use the greedy algorithm to obtain the upper bound of the branch and bound method, and then call the branch and bound method to complete the allocation of single-machine multi-tasks to meet the task allocation time requirements of the project.

[0103] A greedy algorithm is one that always makes the best choice at the moment when solving a problem. In other words, it does not consider the overall optimal solution, and the algorithm obtains a local optimal solution in a certain sense.

[0104] The greedy algorithm does not consider the overall optimality, and only makes local optimal choices in a certain sense. When using a greedy strategy, you should pay attention to the relationship between the local optimality and the global optimality. Choosing the current local optimality does not necessarily lead to the global optimality of the problem. The greedy strategy problem solving needs to solve the following two problems: whether the problem is suitable for solving using a greedy strategy, that is, whether the problem has the greedy selection property; and formulate a greedy strategy to achieve the optimal solution or a better solution to the problem.

[0105] To determine whether a problem is suitable for a greedy algorithm, it is necessary to prove that the greedy choice made at each step eventually leads to the overall optimal solution of the problem. The general process of the proof is: first examine an overall optimal solution to the problem, and prove that this optimal solution can be modified to start with a greedy choice. After making a greedy choice, the original problem is simplified to similar sub-problems of smaller scale. Then use mathematical induction to prove that by making greedy choices at each step, the overall optimal solution of the problem can be obtained.

[0106] Most of the problems that can be solved by greedy algorithms usually have the following characteristics:

[0107] 1. There is a problem to be solved in an optimal way. To construct a solution to the problem, there is a set of candidate objects: such as coins of different denominations;

[0108] 2. As the algorithm proceeds, two other sets will be accumulated: one containing candidates that have been considered and selected, and the other containing candidates that have been considered but discarded;

[0109] 3. There is a function to check whether a set of candidate objects provides a solution to the problem. This function does not consider whether the solution is optimal at this time;

[0110] 4. There is also a function that checks whether a set of candidate objects is feasible, that is, whether it is possible to add more candidate objects to the set to obtain a solution. As with the previous function, the optimality of the solution is not considered at this time;

[0111] 5. The selection function can indicate which of the remaining candidates is most likely to constitute a solution to the problem;

[0112] 6. Finally, the objective function gives the value of the solution.

[0113] The greedy algorithm generally proceeds as follows:

[0114] ① Establish a mathematical model to describe the problem;

[0115] ② Divide the problem to be solved into several sub-problems;

[0116] ③ Solve each sub-problem and obtain the local optimal solution of the sub-problem;

[0117] ④Synthesize the local optimal solutions of the sub-problems into a solution to the original problem.

[0118] The greedy algorithm uses a top-down, iterative method to make successive greedy choices. Each time a greedy choice is made, the problem is simplified into a smaller sub-problem. Through each step of greedy choice, an optimal solution to the problem can be obtained. Although each step must ensure that a local optimal solution can be obtained, the resulting global solution is sometimes not necessarily optimal, so the greedy algorithm does not backtrack.

[0119] For the TSP problem, we need to find a path that does not repeat some points and returns to the initial point at the end, so that the path has the shortest length among all possible paths. However, with the increase in the number of targets, it is almost impossible to find the optimal solution by exhaustive enumeration. The greedy algorithm can solve the TSP problem with a better solution and has the advantage of fast computing speed. The idea is: starting from the starting point, each time find the point closest to the current point among the points that have not been passed, as the point to be traversed in the next step, until all points are traversed and return to the starting point.

[0120] like Figure 5As shown, the traveler starts from city A, and there are three situations: (A, B), (A, C), and (A, D). At this time, since the city distance of (A, B) is 2, which is less than the city distance of (A, C) 6 and the city distance of (A, D) 5, the road of city (A, B) is chosen; continuing to iterate, after the traveler arrives at city B, there are only two orders (B, C) and (B, D) to choose from, but since the paths under the two orders (B, C) and (B, D) are the same, iterating further, there are two task execution orders (B, C, D) and (B, D, C), but the path lengths under the two task execution orders are both 6, iterating further, there are two task execution orders (B, C, D, A) and (B, D, C, A), since the path length of the task execution order (B, C, D, A) is less than the path length of (B, D, C, A). Therefore, the city travel order of the traveler finally determined by the greedy algorithm is: A->B->C->D->A.

[0121] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0122] In the description of the present invention, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of the present invention, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.

[0123] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations.

Claims

1. A multi-machine collaborative task allocation method for unmanned aerial vehicles, characterized in that: The following phases are included: Mission constraint processing stage: for a specific combat mission, set constraints based on the characteristics of reconnaissance and strike missions; Mission indicator evaluation stage: Execute mission allocation based on value indicators, flight range indicators, reconnaissance indicators, strike indicators and security threat indicators to control real-time allocation time; Multi-machine multi-target allocation optimization stage: multiple targets are assigned to multiple machines through the K-Means clustering algorithm, so that the paths assigned to all drone reconnaissance are the shortest; Single-machine multi-target allocation optimization stage: When the geometric centers of multiple targets and the starting point of the UAV are known, the attack value of the target, the total range of the UAV and the security threat value are considered as the objective function to obtain the shortest path of the UAV during the mission execution.

2. According to claim 1, a multi-machine collaborative task allocation method for unmanned aerial vehicles is characterized by: During the task constraint processing stage, the constraint conditions are set according to the target type and value parameters, the amount of ammunition consumed in attacking the target, the time window for attacking the target, the association between targets, and the constraint description manually input to support the processing of task constraints for no less than 5 Type 6 UAVs, among which the association constraints between targets include: the parallel execution relationship of multiple tasks and the sequential execution relationship between tasks.

3. The method for allocating multi-machine cooperative tasks for unmanned aerial vehicles according to claim 2, characterized in that: In the task indicator evaluation stage, the effect of completing the target task is evaluated according to the task plan, and the value indicator is obtained to evaluate the task planner; The total distance flown by the drone after the drone completes the determined mission sequence is used as the flight distance indicator; Based on the reconnaissance requirements of the mission target and the reconnaissance capabilities of the UAV, combined with the flight performance of the UAV, the reconnaissance completion rate is used as an indicator to obtain the reconnaissance index; Based on the strike requirements of the mission target and the strike capability of the UAV, combined with the flight performance of the UAV, the strike completion rate is used as an indicator to obtain the strike index; Considering that a drone is executing a certain target, based on the threat level of the drone executing the target, the threat program of the drone executing different targets is quantified into coefficients to form the security threat index.

4. The method for allocating multi-machine cooperative tasks for unmanned aerial vehicles according to claim 3, characterized in that: In the multi-machine multi-objective allocation optimization stage, the multi-machine task allocation is completed through spatial clustering. Based on the clustering, load balancing optimization is performed to control the difference in the number of targets executed by different aircraft.

5. The method for allocating multi-machine cooperative tasks for unmanned aerial vehicles according to claim 4, characterized in that: In the single-machine multi-objective allocation optimization stage, after the multi-machine multi-objective allocation, the single-machine multi-objective allocation is optimized by the branch and bound method.

6. The method for allocating multi-machine cooperative tasks for unmanned aerial vehicles according to claim 5, characterized in that: In the process of optimizing the single-machine multi-objective allocation, the greedy algorithm is used to obtain the upper bound of the branch and bound method, and based on the obtained upper bound, iterative optimization is performed to meet the time requirement of task allocation.

7. The method for allocating multi-machine cooperative tasks for unmanned aerial vehicles according to claim 6, characterized in that: In the process of obtaining the upper bound, based on the branch and bound method, through the greedy algorithm, a top-down, iterative method is used to make successive greedy choices. Each time a greedy choice is made, the problem is simplified into a smaller sub-problem. Through each step of greedy choice, an optimal solution to the problem is obtained to obtain the upper bound.

8. A multi-machine collaborative task allocation system for unmanned aerial vehicles, characterized in that: The system is used to implement a multi-machine collaborative task allocation method for unmanned aerial vehicles as described in any one of claims 1 to 7, and the system includes: The mission constraint processing module is used to set constraint conditions for a specific combat mission based on the characteristics of reconnaissance and strike missions; The task index evaluation module is used to execute task allocation according to value index, flight range index, reconnaissance index, strike index and security threat index, and control the real-time allocation time; The multi-machine multi-target allocation optimization module is used to allocate multiple targets to multiple machines through the target of the K-Means clustering algorithm, so that the paths allocated to all drone reconnaissance are the shortest; The single-machine multi-objective allocation optimization module is used to obtain the shortest path of the UAV during the mission execution by considering the target's attack value, the UAV's total range and the security threat value as the objective function when the geometric centers of multiple targets and the starting point of the UAV are known.