Heterogeneous unmanned aerial vehicle cluster multi-task allocation method

CN122884148APending Publication Date: 2026-10-09SHENYANG AEROSPACE UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611193524.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-07
Publication Date
2026-10-09

AI Technical Summary

Technical Problem

[0005]鉴于此,本发明的目的在于提供一种异构无人机集群多任务分配方法,以解决现有任务分配方法中异构能力约束考虑不足、任务顺序优化不足以及复杂约束条件下可行解保持能力弱的问题

Benefits of technology

[0030]本发明提供的异构无人机集群多任务分配方法,通过获取目标点属性信息和异构无人机性能参数,并根据目标点状态自动生成任务集合,能够使任务类型和任务数量随任务区域实际情况动态确定,提高了多任务场景建模的灵活性;通过建立包含任务类型、时间窗、最大工作时间、能量、任务依赖和返航等约束的无人机集群任务分配模型,使任务分配结果更加符合异构无人机的实际执行条件;通过预存每个任务对应的可执行无人机集合,并利用包含任务分配变量和任务排序变量的解向量同时表示“任务由谁执行”和“任务按何顺序执行”,能够提高解码效率和方案可行性;结合路径、能耗、时间、负载均衡、任务奖励及约束违反情况计算适应度值,并且将动态精英保留、自适应探索/开发切换、多方向引导探索开发和旧解/候选解/反向解三者贪婪保留等机制引入迭代寻优步骤中,能够获得综合代价较小、任务完成质量较高且约束满足性较好的异构无人机集群多任务分配方案。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122884148A_ABST
    Figure CN122884148A_ABST
Patent Text Reader

Abstract

The application discloses a heterogeneous unmanned aerial vehicle cluster multi-task allocation method, comprising the following steps: obtaining attribute information of target points in a task area and performance parameters of heterogeneous unmanned aerial vehicles, generating a task set, establishing an unmanned aerial vehicle cluster task allocation model, and pre-storing an executable unmanned aerial vehicle set of each task; initializing a population composed of multiple individuals, each individual in the population carrying a dimension solution vector, the front dimension of the solution vector being a task allocation variable, the rear dimension being a task ordering variable, and the value interval of each dimension of the solution vector being [0, 1]; performing iterative cycle optimization on the population until a termination condition is met, and obtaining a global optimal solution vector; and decoding the global optimal solution vector to obtain a final heterogeneous unmanned aerial vehicle cluster task allocation scheme. The method is suitable for task allocation of different numbers of target points and different sizes of heterogeneous unmanned aerial vehicle clusters, and can improve task allocation quality, constraint feasibility and search stability in multi-type task scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of unmanned aerial vehicle (UAV) swarm mission planning technology, and in particular provides a method for multi-task allocation in heterogeneous UAV swarms, which is used to determine the task allocation relationship and task execution order under conditions of multiple target points, multiple task types and multiple types of UAVs. Background Technology

[0002] Drone swarms can perform complex tasks in scenarios such as disaster relief, target search, material delivery, communication support, area inspection, and emergency response. Compared with a single drone, drone swarms have advantages such as wider coverage, stronger parallel execution capability, and higher system robustness.

[0003] However, in actual mission execution, different UAVs often have different mission capabilities, takeoff positions, flight speeds, maximum operating time, maximum energy, and energy consumption rates; different target points may also simultaneously generate multiple mission requirements such as reconnaissance, search, supply delivery, and communication support. Among existing UAV mission allocation methods, some methods treat UAVs as isomorphic individuals, making it difficult to reflect the capability differences between different UAVs; some methods only consider mission allocation relationships without fully considering the mission order when the same UAV performs multiple missions; and some methods do not adequately consider time window constraints, energy constraints, maximum operating time constraints, mission dependencies, and return-to-home costs, leading to mission allocation schemes that are prone to infeasibility or high costs in actual execution.

[0004] Therefore, a novel multi-task allocation method for heterogeneous UAV swarms is proposed to determine the task allocation relationship and task execution order under the constraints of multiple target points, multiple task types and multiple UAV capabilities. This has become an urgent problem to be solved in the collaborative task planning of UAV swarms. Summary of the Invention

[0005] Therefore, the purpose of this invention is to provide a multi-task allocation method for heterogeneous UAV swarms, in order to solve the problems of insufficient consideration of heterogeneous capability constraints, insufficient optimization of task order, and weak ability to maintain feasible solutions under complex constraints in existing task allocation methods.

[0006] The technical solution provided by this invention is: a method for multi-task allocation in heterogeneous unmanned aerial vehicle (UAV) swarms, comprising the following steps:

[0007] Obtain the attribute information of target points within the task area and the performance parameters of heterogeneous UAVs. Generate a task set based on the attributes of the target points. Establish a UAV cluster task allocation model based on the task set and the performance parameters of the heterogeneous UAVs. The task allocation model is configured with task type constraints, time window constraints, maximum working time constraints, energy constraints, task dependency constraints, and return-to-home constraints. Pre-store the set of executable UAVs for each task.

[0008] Initialize a population consisting of multiple individuals, each individual in the population carrying a... 1D solution vector , The total number of tasks in the task set, and the first part of the solution vector. Dimension assigns variables to tasks to match tasks with executable drones, then... The dimension is a task sorting variable used to determine the task execution order within a single UAV. The value range of each dimension of the solution vector is [0,1]. The solution vector is decoded to obtain the heterogeneous UAV task allocation scheme, and the fitness of each individual in the population is evaluated based on the task allocation scheme. The historical best solution vector and the global best solution vector of the individual are initialized.

[0009] The population is iteratively optimized until the termination condition is met, and the globally optimal solution vector is obtained.

[0010] The global optimal solution vector is decoded to obtain the final heterogeneous UAV cluster task allocation scheme.

[0011] Preferably, the target point's attribute information includes the target point's location, damage level, survival probability, whether supplies need to be delivered, whether there is a communication interruption, and target priority; the UAV's performance parameters include its starting position, flight speed, maximum working time, maximum energy, energy consumption rate per unit distance, and the types of tasks it can perform; the task attribute information in the task set includes the task type, the target point to which the task belongs, the task location, the task duration, the task time window, the task reward, and the set of preceding tasks, wherein the task types include visible light reconnaissance tasks, infrared search tasks, supplies delivery tasks, and communication relay tasks.

[0012] Further optimization involves decoding the solution vector into a heterogeneous UAV task allocation scheme, as follows:

[0013] 1) Based on task allocation variables Mapping drones to be assigned: targeting the first Task Read the pre-stored data that can be used to execute tasks drone collection ,gather Includes Taiwan can perform tasks The drone; the interval [0,1] is divided according to Divide equally and allocate variables according to the task. The subinterval into which the drone falls determines its index in the set: ;in, This indicates the floor function;

[0014] 2) Based on task ranking variables Determine the task execution order: Summarize the tasks to be executed. The drones are assigned all tasks, and the sorting variables for the corresponding tasks are extracted. Numerical values ​​and sorting variables The tasks are sorted in ascending order by numerical values. The smaller the value, the earlier the corresponding task is executed.

[0015] Further optimization involves using a fitness function to evaluate the fitness of each individual in the population. This fitness function is used to comprehensively evaluate the task completion quality, path cost, energy cost, time cost, load balancing, and constraint satisfaction of the task allocation scheme corresponding to the solution vector.

[0016] Further optimization is performed with the fitness value as the target. The smaller the fitness value, the better the overall performance of the corresponding task allocation scheme.

[0017] fitness function It is expressed as follows:

[0018] ;

[0019] in, , , , , These are the normalized total flight distance, normalized total energy consumption, normalized maximum completion time, normalized load balancing index, and normalized mission reward. , , , , These are the weighting coefficients for the corresponding indicators; To constrain violations and penalties;

[0020] in, ; ; ; ; ;

[0021] in, The total flight distance of the entire drone swarm, The total energy consumption of the entire drone swarm The maximum completion time after all drones have completed their missions and returned to base. For the load balancing index of each drone's working time, The total reward for completed tasks. , , , These are the reference normalization coefficients for distance, energy consumption, time, and reward, determined by the specific scenario.

[0022] The penalty for constraint violation is as follows:

[0023] ;

[0024] in, Indicates the number of unfinished tasks; This indicates that the time windows for all tasks violate the total limit; This indicates that the maximum operating time of all drones has exceeded the total limit; This indicates that all drones violated the total energy constraint; Indicates the number of times task dependency constraints are violated; and This represents a reference normalization factor for time and energy consumption determined by a specific scenario. , , , , These are the penalty weights for incomplete tasks, time window violations, maximum working time violations, energy violations, and task dependency violations, respectively.

[0025] Further optimization involves introducing a dynamically increasing elite retention mechanism during the iterative optimization process. This mechanism works as follows: In each iteration, the population is dynamically divided into elite and ordinary individuals based on the current iteration number. The number of elite individuals increases with each iteration. Elite individuals do not participate in the current update and directly enter the next generation. In each iteration, the number of elite individuals is at least 1 and at most 10. , Population size.

[0026] Further optimization involves introducing an adaptive switching mechanism for global exploration / local development during the iterative optimization process. The specific adaptive switching mechanism for global exploration / local development is as follows: the exploration probability of an individual is adaptively calculated based on its quality and iteration progress, and the individual is then determined to execute either a global exploration update mode or a local development update mode based on the exploration probability. In this mode, poorer individuals tend to perform global exploration in the early stages, while better individuals and individuals in the later stages of iteration tend to perform local development.

[0027] Further optimization involves introducing a multi-directional guided search mechanism during the iterative optimization process. This mechanism is as follows: In the global exploration phase, the globally optimal solution vector, the individual's historical optimal solution vector, and the high-quality individual solution vector from a distance are considered simultaneously to generate new candidate solution vectors. In the local development phase, two methods are randomly employed to generate new candidate solution vectors: Lévy flight local perturbation or direct attack. The Lévy flight local perturbation update uses the fused globally optimal solution vector and the individual's historical optimal solution vector as the base solution vector, and superimposes random directional perturbations to generate new candidate solution vectors. The direct attack update uses the individual's current solution vector as the benchmark, and superimposes globally optimal and individual historical optimal double random weights to generate new candidate solution vectors.

[0028] Further optimization involves introducing a greedy selection and retention mechanism among the old solution, candidate solution, and reverse solution during the iterative optimization process. The specific details of the greedy selection and retention mechanism among the old solution, candidate solution, and reverse solution are as follows: the individual update operation generates a new candidate solution vector and a reverse solution vector at the same time, and greedily selects the best among the original solution vector, the new candidate solution vector, and the reverse solution vector.

[0029] In a further preferred embodiment, the heterogeneous UAV cluster multi-task allocation method further includes a step of boundary repair for the new candidate solution vector, wherein the reverse solution vector is generated based on the new candidate solution vector after boundary repair and the boundary is repaired.

[0030] The heterogeneous UAV swarm multi-task allocation method provided by this invention obtains target point attribute information and heterogeneous UAV performance parameters, and automatically generates a task set based on the target point status. This allows the task type and number to be dynamically determined according to the actual situation of the task area, improving the flexibility of multi-task scenario modeling. By establishing a UAV swarm task allocation model that includes constraints such as task type, time window, maximum working time, energy, task dependency, and return, the task allocation results are more consistent with the actual execution conditions of heterogeneous UAVs. By pre-storing the set of executable UAVs corresponding to each task, and using a solution vector containing task allocation variables and task ordering variables to simultaneously represent "who executes the task" and "in what order the tasks are executed," decoding efficiency and scheme feasibility can be improved. By combining path, energy consumption, time, load balancing, task rewards, and constraint violation conditions to calculate fitness values, and by introducing mechanisms such as dynamic elite retention, adaptive exploration / development switching, multi-directional guided exploration and development, and greedy retention of old solutions / candidate solutions / reverse solutions into the iterative optimization step, a heterogeneous UAV swarm multi-task allocation scheme with low overall cost, high task completion quality, and good constraint satisfaction can be obtained.

[0031] The heterogeneous UAV swarm multi-task allocation method provided by this invention is applicable to task allocation of heterogeneous UAV swarms with different numbers of target points and different sizes, and can improve the task allocation quality, constraint feasibility and search stability in various task scenarios. Attached Figure Description

[0032] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0033] Figure 1 The flowchart shows the multi-task allocation method for heterogeneous UAV clusters provided by the present invention. Detailed Implementation

[0034] The present invention will be further explained below with reference to specific implementation schemes, but this explanation does not limit the scope of the invention.

[0035] like Figure 1 As shown, the present invention provides a method for multi-task allocation in heterogeneous UAV swarms, comprising the following steps:

[0036] S1: Obtain the attribute information of the target points within the task area and the performance parameters of the heterogeneous UAVs, generate a task set based on the attributes of the target points, establish a UAV cluster task allocation model based on the task set and the performance parameters of the heterogeneous UAVs, and pre-store the set of executable UAVs for each task.

[0037] S1 specifically includes the following steps:

[0038] S11: Obtain the attribute information of target points within the mission area and the performance parameters of heterogeneous UAVs;

[0039] Let the set of target points within the task area be: ;

[0040] Among them, the Target points It can be represented as:

[0041] ;

[0042] In the formula, Indicates the location of the target point. Indicates the degree of damage. This represents the probability of survival. ∈{0,1} indicates whether supplies need to be delivered. ∈{0,1} indicates whether a communication interruption exists. Indicates target priority;

[0043] Let the heterogeneous unmanned aerial vehicle (UAV) set be: ;

[0044] Among them, the A drone can be represented as:

[0045] ;

[0046] In the formula, =(x j start ,y j start This indicates the starting position of the drone. Indicates flight speed. Indicates the maximum working time. Indicates maximum energy. Indicates energy consumption rate per unit distance. This indicates the types of tasks the drone is capable of performing;

[0047] S12: Generate a task set based on the attributes of the target point;

[0048] Let the set of task types be: ;

[0049] in, Indicates the number of task types. Indicates the first Task categories; each drone performs tasks of a corresponding category based on its capability type, including: ;

[0050] In this embodiment, the task type set is specifically set as follows:

[0051] ;

[0052] in, These respectively represent visible light reconnaissance missions, infrared search missions, material delivery missions, and communication relay missions;

[0053] For each target point Based on its attributes, determine whether to generate the corresponding type of task. For general cases, corresponding task triggering conditions can be preset for each type of task. When the target point Satisfy the first When the trigger condition for a task is met, the corresponding task is generated:

[0054] ;

[0055] in, For the first The trigger function corresponding to the task type is set to 1 if the condition is met, and 0 otherwise.

[0056] In this embodiment, the damage level threshold is set to... The survival probability threshold is The task generation rules are as follows:

[0057] ;

[0058] ;

[0059] ;

[0060] ;

[0061] Generate a task set from all target points:

[0062] ;

[0063] in, This is the total number of tasks automatically generated based on the target point attributes, and is not a fixed value; its quantity can be expressed as:

[0064] ;

[0065] In this embodiment, since the specific mission types are visible light reconnaissance, infrared search, material delivery, and communication relay, therefore, This can be further expressed as:

[0066] ;

[0067] in, () is an indicator function that takes the value 1 if the condition is true and 0 otherwise;

[0068] No. Each task can be represented as:

[0069] ;

[0070] in, Indicates the task type. Indicates the target point to which the task belongs. Indicates the task location. Indicates the duration of the task. =[a k ,b k [] indicates the task time window. This indicates the task reward. Represents the set of prerequisite tasks;

[0071] The task reward can be represented as:

[0072] ;

[0073] in, The basic reward corresponding to the task type. Priority of the target point to which the task belongs. This is the priority reward coefficient;

[0074] Multiple tasks can be generated simultaneously for the same target point. When both infrared search and material delivery tasks exist for the same target point, a task dependency rule is established:

[0075] ;

[0076] Right now: This indicates that the material delivery task must be executed after the infrared search task at the corresponding target point is completed, thus forming a prerequisite constraint.

[0077] S13: Establish a drone cluster task allocation model based on the task set and the performance parameters of the heterogeneous drones;

[0078] The task allocation model is used to determine which drone each task is assigned to and the execution order when the same drone performs multiple tasks.

[0079] Define a binary task assignment variable:

[0080] ;

[0081] in, ;

[0082] Each task is assigned to one drone: ;

[0083] If task By drone Execution starts from the previous position. Fly to mission location The distance is: ;

[0084] Flight time is: ;

[0085] Flight energy consumption is: ;

[0086] The task start time is: ;

[0087] The task completion time is: ;

[0088] in, Indicates the time when the drone arrives at the mission point. Set the start time of the task time window. This indicates the completion time of the prerequisite task; if the task has no prerequisite task, this value is 0.

[0089] The task allocation model includes the following constraints: task type constraint, time window constraint, maximum working time constraint, energy constraint, task dependency constraint, and return constraint.

[0090] 1) Mission type constraint: Drones can only perform missions that match their capabilities;

[0091] like ,but ;

[0092] 2) Time window constraint: Each task must be completed within a specified time period;

[0093] ;

[0094] in, For task completion time, This is the end time of the task time window;

[0095] 3) The maximum working time constraint is: the total working time of the UAV from the starting point to the completion of the mission and its return flight shall not exceed the maximum working time;

[0096] ;

[0097] in, Indicates the first The total working time of a drone from its starting point, through its mission, and back. For the first The maximum operating time of a drone;

[0098] 4) Energy Constraint: The total energy consumption during the entire flight shall not exceed the maximum onboard energy storage.

[0099] ;

[0100] in, Indicates the first The total energy consumption of a drone during mission flight and return. Indicates maximum energy;

[0101] 5) Task dependency constraint: Subsequent tasks cannot be started until the preceding tasks are completed;

[0102] If task There is a set of prerequisite tasks. Then the task It can only be executed after all its prerequisite tasks have been completed, and its constraint can be expressed as:

[0103] ;

[0104] in, Indicates the prerequisite task Completion time, Indicates the current task The start time, Indicates task The set of prerequisite tasks;

[0105] In this embodiment, when both infrared search and material delivery tasks exist for the same target point, the material delivery task is set to depend on the infrared search task, that is:

[0106] ;

[0107] Indicates the first The delivery of supplies to each target point must be executed after the infrared search mission at that target point is completed.

[0108] If a prerequisite task is not completed, subsequent tasks cannot be executed and this is recorded as a dependency failure; if a task cannot proceed due to a dependency relationship, it is recorded as a dependency block or dependency deadlock.

[0109] 6) Return-to-home constraint: All drones performing missions must return to the takeoff point, and the return distance, time, and energy consumption are all included in the cost;

[0110] If the first The last mission location of the drone was The return distance is: ;

[0111] The return time is: ;

[0112] The energy consumption for returning to base is: ;

[0113] The return distance, return time, and return energy consumption are included in the total flight distance, total drone working time, and total energy consumption.

[0114] S14: Determine the set of executable drones corresponding to each task in the task set based on the task type;

[0115] For the The task is According to task type The set of executable drones is determined as follows:

[0116] ;

[0117] in, Indicates the first The task type of each task Indicates the first The types of tasks that a drone can perform. Indicates the ability to perform tasks A collection of drones;

[0118] in, For executable tasks The number of drones;

[0119] S2: Initialize a population consisting of multiple individuals, each individual in the population carrying a... 1D solution vector , The total number of tasks in the task set, and the solution vector is the encoding corresponding to the task allocation scheme, with the first... Dimension assigns variables to tasks to match tasks with executable drones, then... The dimension is a task sorting variable used to determine the task execution order within a single UAV. The value range of each dimension of the solution vector is [0,1]. The solution vector is decoded to obtain the heterogeneous UAV task allocation scheme, and the fitness of each individual in the population is evaluated based on the task allocation scheme. The historical best solution vector and the global best solution vector of the individual are initialized.

[0120] Among them, in the solution vector, For the task The corresponding task assignment variable is used to determine the task. Which drone in its ensemble of executable drones will perform the task? For the task The corresponding task sorting variable is used to determine when to execute a task. When a drone is assigned multiple tasks, the tasks The execution sequence within the drone must satisfy the following:

[0121] ;

[0122] Therefore, the search space for the solution vector can be represented as:

[0123] ;

[0124] in, To optimize the problem dimensions, It is A continuous vector of dimensions, where each variable is in the interval [0,1].

[0125] The logic for decoding the solution vector into a task allocation scheme is as follows:

[0126] 1) Based on task allocation variables Mapping drones to be assigned (determining tasks) (Which drone in its set of executable drones will perform the operation?)

[0127] Regarding the first Task Read the pre-stored data that can be used to execute tasks drone collection ,gather Includes Taiwan can perform tasks The drone; the interval [0,1] is divided according to Divide equally and allocate variables according to the task. The subinterval into which the drone falls determines its index in the set:

[0128] ;

[0129] That is: the One task is assigned to the set The Middle Launching drones:

[0130] ;

[0131] in, This indicates the floor function;

[0132] 2) Based on task ranking variables Determine the order of task execution

[0133] Summary of execution tasks The drone was assigned all tasks, and the task was extracted. The execution sequence within the drone, and the specific steps, are as follows:

[0134] After all tasks have been assigned, the first step is to determine the tasks to be performed. drones The set of tasks assigned :

[0135] ;

[0136] If drone If an item is assigned to multiple tasks, then extract the sorting variable for each task. Numerical values ​​and sorting variables The tasks are sorted in ascending order by numerical values. The smaller the value, the earlier the corresponding task is executed;

[0137] That is: if Then in drones In the task sequence, task Prior to the task Execution, that is: ;

[0138] Therefore, drones can be obtained. Task execution sequence:

[0139] ;

[0140] in, To be allocated to drones The number of tasks;

[0141] Finally, the solution vector Decoded as a drone swarm task allocation scheme:

[0142] ;

[0143] The initialization of a population consisting of multiple individuals is as follows:

[0144] Let the population size be The maximum number of iterations is Initialize the first The solution vector carried by each individual:

[0145] ;

[0146] in: ;

[0147] Randomly generated in the interval [0,1]:

[0148] ;

[0149] in, and These represent the lower and upper bounds of the search space, respectively, in this task assignment model: ;

[0150] After initialization, the fitness of each individual is evaluated using a fitness function. This invention aims to minimize the fitness value; the smaller the fitness value, the better the overall performance of the corresponding task allocation scheme.

[0151] The fitness function is expressed as follows:

[0152] ;

[0153] in, , , , , These are the normalized total flight distance, normalized total energy consumption, normalized maximum completion time, normalized load balancing index, and normalized mission reward. , , , , These are the weighting coefficients for the corresponding indicators; To constrain violations and penalties; since distance, energy consumption, completion time, and load imbalance should be minimized, the corresponding items are positive; since task rewards should be maximized, the reward items are preceded by a negative sign;

[0154] in, ; ; ; ; ;

[0155] in, The total flight distance of the entire drone swarm, The total energy consumption of the entire drone swarm, The maximum completion time after all drones have completed their missions and returned to base. For the load balancing index of each drone's working time, The total reward for completed tasks. , , , These are the reference normalization coefficients for distance, energy consumption, time, and reward, determined by the specific scenario.

[0156] The penalty for constraint violation is as follows:

[0157] ;

[0158] in, Indicates the number of unfinished tasks; This indicates that the time windows for all tasks violate the total limit; This indicates that the maximum operating time of all drones has exceeded the total limit; This indicates that all drones violated the total energy constraint; Indicates the number of times task dependency constraints are violated; and This represents a reference normalization factor for time and energy consumption determined by a specific scenario. , , , , These are the penalty weights for incomplete tasks, time window violations, maximum working time violations, energy violations, and task dependency violations, respectively.

[0159] In summary, the fitness function can be fully expressed as:

[0160] ;

[0161] The above-mentioned comprehensive fitness function can unify task completion quality, path cost, energy cost, time cost, load balancing, and constraint satisfaction into a single optimization objective.

[0162] The following describes the calculation methods for path, energy consumption, time, and constraint violations in task allocation schemes:

[0163] Let the first Task Assigned to drones ,in Indicates the execution of a task The drone's ID number; for the same drone, the order of its mission execution is determined by the mission sorting variable.

[0164] For the task Let its execution drone be The previous position of this mission in the sequence of drone missions is ,like If this is the first mission performed by the drone, then:

[0165] ;

[0166] otherwise, The location of the previous mission for the same drone;

[0167] Therefore, the task The corresponding flight distance is:

[0168] ;

[0169] Flight time is:

[0170] ;

[0171] Flight energy consumption is:

[0172] ;

[0173] The task arrival time is:

[0174] ;

[0175] in, Indicates the completion time of the previous task on the same drone; if For the first mission performed by this drone, then =0;

[0176] The task start time is: ;

[0177] The task completion time is: ;

[0178] in, For the task Time window, For the duration of the task, For the task The completion time of the prerequisite tasks; if the task has no prerequisite tasks, then =0;

[0179] The time window violation amount is: ;

[0180] For each drone Let the set of tasks assigned to it be:

[0181] ;

[0182] Then the first The flight distance generated by the drone performing the mission is:

[0183] ;

[0184] The energy consumption generated during the execution of the task is: ;

[0185] If the first The drone has performed a mission, namely Let its last task position be... The return distance is:

[0186] ;

[0187] The return time is: ;

[0188] The energy consumption for returning to base is: ;

[0189] like ,but: ;

[0190] Therefore, the first The total flight distance of the drone is:

[0191] ;

[0192] No. The total energy consumption of the drone is: ;

[0193] No. The total working time of the drone is: ;

[0194] in, Indicates the first The completion time of the drone's last mission; if the drone did not perform a mission, then =0;

[0195] The maximum violation of drone operating time is: ;

[0196] The energy constraint violation is: ;

[0197] The total flight distance of the entire drone swarm is: ;

[0198] Total energy consumption is: ;

[0199] The maximum completion time is: ;

[0200] The load balancing metric is represented by the standard deviation of the operating time of each UAV. The smaller the standard deviation, the closer the operating time of each UAV is, and the more balanced the load.

[0201] ;

[0202] The total reward for completing the task is: ;

[0203] in, This represents the set of completed tasks;

[0204] The statistics for constraint violations are as follows:

[0205] ;

[0206] ;

[0207] ;

[0208] in, This indicates that the time windows for all tasks violate the total limit. This indicates that the maximum operating time of all drones has exceeded the total limit. This indicates that all drones have violated the total energy constraint.

[0209] The number of task dependency constraint violations is represented as:

[0210] ;

[0211] in, This indicates the number of times a subsequent task could not be executed because a prerequisite task was not completed. This indicates the number of times a task cannot continue execution due to task dependency blocking or dependency deadlock; the number of task dependency constraint violations is the sum of the two types of cases mentioned above.

[0212] The number of unfinished tasks is represented as follows: ;

[0213] in, This indicates the set of tasks that have been completed. Indicates the number of tasks completed. Indicates the total number of tasks;

[0214] The fitness value of each individual in the initial population is calculated using the fitness function. Then, initialize the historical best solution vector for each individual. and the global optimal solution vector ,in, ; That is, the solution vector corresponding to the individual with the smallest fitness value in the current population is selected as the global optimal solution vector;

[0215] S3: Iterate and search the population until the termination condition is met to obtain the global optimal solution vector. During the iteration process, a dynamic incremental elite retention mechanism, an adaptive switching mechanism between global exploration and local development, a multi-directional guided search mechanism, and a greedy selection retention mechanism among old solutions, candidate solutions, and reverse solutions are introduced.

[0216] Among them, the The round of iterations is as follows:

[0217] S31: Dynamically divide the population into elite individuals and ordinary individuals based on the current iteration round. The number of elite individuals increases with the increase of the iteration round. Elite individuals do not participate in the current update and directly enter the next generation.

[0218] This step utilizes a dynamic elite retention mechanism to preserve the best-performing individuals in the current population, ensuring that these outstanding individuals do not participate in the current update operation, and their solution vectors remain unchanged, allowing them to directly enter the next generation.

[0219] The specific steps are as follows:

[0220] S311: Calculate the current iteration progress: , This represents the maximum number of iterations.

[0221] S312: Dynamically determine the elite retention ratio based on the iteration progress. The formula is as follows:

[0222] ;

[0223] in, To retain the minimum elite ratio as preset, To retain the maximum elite ratio as preset, In this embodiment, the preset dynamic growth control factor is:

[0224] ;

[0225] S313: Determine the number of elite individuals based on the elite retention rate. :

[0226] ;

[0227] in, This indicates rounding down; the actual number of elites is rounded down to an integer. The number of elite individuals is at least 1 and at most 100. This is to ensure that there are still ordinary individuals in the population participating in the renewal process;

[0228] S314: Sort all individuals in the population in ascending order of fitness value, and select the top... Each individual is designated as an elite individual, and the remaining individuals are designated as ordinary individuals. Elite individuals directly enter the next generation and do not participate in the current round of update calculations. Their solution vectors remain unchanged and are directly retained in the next generation of the population.

[0229] S32: Perform an update operation on each ordinary individual to generate a new candidate solution vector and a reverse solution vector;

[0230] Among them, for the first The steps for generating new candidate solution vectors and reverse solution vectors for a given ordinary individual are as follows:

[0231] S321: Adaptively calculate the exploration probability of an individual based on its quality and iteration progress, and determine whether the individual should execute a global exploration update mode or a local development update mode based on the exploration probability. In this case, poorer individuals tend to perform global exploration in the early stage, while better individuals and individuals in the later stage of iteration tend to perform local development. If the global exploration update mode is executed, proceed to S322; otherwise, proceed to S323.

[0232] Among them, the first step is adaptively calculated based on individual quality and iteration process. The exploration probability of an ordinary individual The method is as follows:

[0233] 1) Calculate the first fitness based on the current best and worst fitness of the population. Individual quality factor of an average individual :

[0234] ;

[0235] in, For the first The fitness of an average individual The optimal fitness for the current population. , This represents the worst fitness of the current population. , To prevent extremely small positive numbers with a denominator of zero, for minimization problems, The larger the value, the worse the individual's fitness. The smaller the value, the closer the individual is to the current top performers;

[0236] 2) Calculate the time factor: ;

[0237] 3) Calculate the exploration probability based on individual quality factors and time factors:

[0238] ;

[0239] in: ;

[0240] 4) Generate random numbers If ∈[0,1], If the current individual enters the global exploration and update mode, then it enters the local development and update mode.

[0241] S322: Global Exploration Update: Consider the global optimal solution vector, the individual historical optimal solution vector, and the high-quality individual solution vector in the long distance, and generate a new candidate solution vector;

[0242] The global exploration update formula is as follows:

[0243] ;

[0244] in, This is the vector of the globally optimal solution. For the first The vector of the individual historical optimal solution for each individual. This represents the average solution vector of individuals that are farther away from the current individual and have better fitness. This is the old solution vector for the current individual. For individuals The new candidate solution vector, , , A random vector within the range [0,1];

[0245] The new method for generating candidate solution vectors considers the global optimal solution vector, the individual historical optimal solution vector, and the high-quality individual solution vector from a distance, which can enhance global search capabilities and population diversity.

[0246] Among them, the distance from the first The method for calculating the average solution vector of individuals that are further apart and have better fitness is as follows:

[0247] 1) Define the center of the search space:

[0248] ;

[0249] 2) Select a set of individuals with better fitness than the current individual. :

[0250] ;

[0251] 3) Calculate the set Distance between each individual and the current individual:

[0252] ;

[0253] 4) From Select a set of individuals that are furthest from the current individual. In this embodiment, a maximum of three individuals will be selected. ;

[0254] 5) Calculate the set Average solution vector of individuals:

[0255] ;

[0256] If there is no individual with better fitness than the current individual, then let: ;

[0257] S323: Local Development Update: New candidate solution vectors are generated randomly using either Lévy flight local perturbation or direct attack.

[0258] The specific steps are as follows:

[0259] 1) Generate random numbers ∈[0,1];

[0260] 2) If If the Lévy flight local perturbation update is used, otherwise a direct attack update is performed.

[0261] The local perturbation update method for Lévy flight is as follows:

[0262] First, construct a base solution vector guided by both the global optimal solution vector and the individual historical optimal solution vector:

[0263] ;

[0264] in, A random number in the interval [0,1];

[0265] Then, generate the Lévy step size:

[0266] ;

[0267] in, , and Let be a random variable that follows a normal distribution;

[0268] Finally, the following formula is used to generate a new candidate solution vector:

[0269] ;

[0270] In this case, the direct attack update uses the following formula to generate a new candidate solution vector:

[0271] ;

[0272] in, , A random vector within the range [0,1];

[0273] This method enables the current individual to simultaneously approach both the global optimal solution vector and its own historical optimal solution vector, thereby enhancing local development capabilities;

[0274] S324: For the new candidate solution vector Boundary repair is performed, and a reverse solution vector is generated through reverse learning;

[0275] The boundary repair formula constrains each dimension of the solution vector to the interval [0,1], as follows:

[0276] ;

[0277] The reverse solution vector is generated based on the new candidate solution vector after boundary repair, and boundary repair is performed simultaneously to ensure that all dimensions take values ​​in the interval [0,1]. The formula for generating the reverse solution vector based on the new candidate solution vector after boundary repair is as follows:

[0278] ;

[0279] The formula for boundary repair of the reverse solution vector is as follows:

[0280] ;

[0281] in, , ;

[0282] S33: New candidate solution vector for each individual Inverse solution vector and the old solution vector before the update Decode and calculate the fitness value separately, and update the individual's solution vector using the solution vector with the smallest fitness value. That is, retain the solution vector with the smallest fitness value to enter the next generation.

[0283] The specific steps are as follows:

[0284] Calculate the fitness of the new candidate solution vector and the reverse solution vector:

[0285] ;

[0286] ;

[0287] Choose the candidate solution vector with the lower fitness from the new candidate solution vector and the reversed solution vector:

[0288] ;

[0289] Select candidate solution vectors Compared with the old solution vector before the update For individuals with lower fitness, update the solution vector for that individual:

[0290] ;

[0291] This process is equivalent to selecting the solution vector with the lowest fitness from the old solution before the update, the new candidate solution, and the reverse solution to enter the next generation:

[0292] ;

[0293] By using the greedy retention mechanism of the three, we can avoid replacing the current individual's solution vector when both the new candidate solution vector and the reverse solution vector are inferior to the old solution vector, thereby improving the feasibility retention capability and search stability in complex constraint task allocation scenarios.

[0294] S34: Update the individual historical optimal solution vector and the global optimal solution vector;

[0295] S341: Based on the fitness value, compare the updated solution vector of a normal individual with its historical best solution vector. If the updated solution vector of a normal individual is better than its historical best solution vector, then update the historical best solution vector of the individual.

[0296] ;

[0297] S342: Traverse the entire new generation of the population, reselect the best individual in the current population, and update the global optimal solution vector: ;

[0298] S343: Record the optimal fitness value of the current iteration: ;

[0299] S35: Determine the current iteration round Has the maximum number of iterations been reached? If the maximum number of iterations is not reached, proceed to the next iteration and repeat S31-S34 until the maximum number of iterations is reached.

[0300] S4: Decode the global optimal solution vector to obtain the final heterogeneous UAV cluster task allocation scheme.

[0301] This heterogeneous UAV swarm multi-task allocation method acquires target point attribute information and heterogeneous UAV performance parameters, and automatically generates task sets based on target point status. This allows task types and quantities to be dynamically determined according to the actual situation of the task area, improving the flexibility of multi-task scenario modeling. By establishing a UAV swarm task allocation model that includes constraints such as task type, time window, maximum working time, energy, task dependency, and return, the task allocation results are more consistent with the actual execution conditions of heterogeneous UAVs. By pre-storing the set of executable UAVs corresponding to each task, and using a solution vector containing task allocation variables and task ordering variables to simultaneously represent "who executes the task" and "in what order the tasks are executed," decoding efficiency and solution feasibility can be improved. By combining path, energy consumption, time, load balancing, task rewards, and constraint violation conditions to calculate fitness values, and by introducing mechanisms such as dynamic elite retention, adaptive exploration / development switching, multi-directional guided exploration and development, and greedy retention of old solutions, candidate solutions, and reverse solutions into the iterative optimization step, a heterogeneous UAV swarm multi-task allocation scheme with low overall cost, high task completion quality, and good constraint satisfaction can be obtained.

[0302] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code. The solutions in the embodiments of the present invention can be implemented using various computer languages, such as the object-oriented programming language Java and the interpreted scripting language JavaScript.

[0303] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0304] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0305] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0306] Although preferred embodiments of the invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including both the preferred embodiments and all changes and modifications falling within the scope of the invention.

[0307] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.

Claims

1. A method for multi-task allocation in a heterogeneous unmanned aerial vehicle (UAV) swarm, characterized in that, Includes the following steps: Obtain the attribute information of target points within the task area and the performance parameters of heterogeneous UAVs. Generate a task set based on the attributes of the target points. Establish a UAV cluster task allocation model based on the task set and the performance parameters of the heterogeneous UAVs. The task allocation model is configured with task type constraints, time window constraints, maximum working time constraints, energy constraints, task dependency constraints, and return-to-home constraints. Pre-store the set of executable UAVs for each task. Initialize a population consisting of multiple individuals, each individual in the population carrying a... 1D solution vector , The total number of tasks in the task set, and the first part of the solution vector. Dimension assigns variables to tasks to match tasks with executable drones, then... The dimension is a task sorting variable used to determine the task execution order within a single UAV. The value range of each dimension of the solution vector is [0,1]. The solution vector is decoded to obtain the heterogeneous UAV task allocation scheme, and the fitness of each individual in the population is evaluated based on the task allocation scheme. The historical best solution vector and the global best solution vector of the individual are initialized. The population is iteratively optimized until the termination condition is met, and the globally optimal solution vector is obtained. The global optimal solution vector is decoded to obtain the final heterogeneous UAV cluster task allocation scheme.

2. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: The target point's attribute information includes its location, damage level, survival probability, whether it needs supply delivery, whether there is a communication interruption, and target priority; the UAV's performance parameters include its starting position, flight speed, maximum working time, maximum energy, energy consumption rate per unit distance, and the types of tasks it can perform; the task attribute information in the task set includes the task type, the target point to which the task belongs, the task location, the task duration, the task time window, the task reward, and the set of preceding tasks. The task types include visible light reconnaissance tasks, infrared search tasks, supply delivery tasks, and communication relay tasks.

3. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: The logic for decoding the solution vector into a heterogeneous UAV task allocation scheme is as follows: 1) Based on task allocation variables Mapping drones to be assigned: targeting the first Task Read the pre-stored data that can be used to execute tasks drone collection ,gather Includes Taiwan can perform tasks The drone; the interval [0,1] is divided according to Divide equally and allocate variables according to the task. The subinterval into which the drone falls determines its index in the set: ;in, This indicates the floor function; 2) Based on task ranking variables Determine the task execution order: Summarize the tasks to be executed. The drones are assigned all tasks, and the sorting variables for the corresponding tasks are extracted. Numerical values ​​and sorting variables The tasks are sorted in ascending order by numerical values. The smaller the value, the earlier the corresponding task is executed.

4. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: The fitness of each individual in the population is evaluated using a fitness function, which is used to comprehensively evaluate the task completion quality, path cost, energy cost, time cost, load balancing, and constraint satisfaction of the task allocation scheme corresponding to the solution vector.

5. The heterogeneous UAV swarm multi-task allocation method according to claim 4, characterized in that: The optimization objective is to minimize the fitness value. The smaller the fitness value, the better the overall performance of the corresponding task allocation scheme. fitness function It is expressed as follows: ; in, , , , , These are the normalized total flight distance, normalized total energy consumption, normalized maximum completion time, normalized load balancing index, and normalized mission reward. , , , , These are the weighting coefficients for the corresponding indicators; To constrain violations and penalties; in, ; ; ; ; ; in, The total flight distance of the entire drone swarm, The total energy consumption of the entire drone swarm The maximum completion time after all drones have completed their missions and returned to base. For the load balancing index of each drone's working time, The total reward for completed tasks. , , , These are the reference normalization coefficients for distance, energy consumption, time, and reward, determined by the specific scenario. The penalty for constraint violation is as follows: ; in, Indicates the number of unfinished tasks; This indicates that the time windows for all tasks violate the total limit; This indicates that the maximum operating time of all drones has exceeded the total limit; This indicates that all drones violated the total energy constraint; Indicates the number of times task dependency constraints are violated; and This represents a reference normalization factor for time and energy consumption determined by a specific scenario. , , , , These are the penalty weights for incomplete tasks, time window violations, maximum working time violations, energy violations, and task dependency violations, respectively.

6. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: A dynamic incremental elite retention mechanism is introduced during the iterative optimization process. The specific details of this mechanism are as follows: In each iteration, the population is dynamically divided into elite and ordinary individuals based on the current iteration number. The number of elite individuals increases with the iteration number. Elite individuals do not participate in the current update and directly enter the next generation. In each iteration, the number of elite individuals is at least 1 and at most 10. , Population size.

7. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: An adaptive switching mechanism for global exploration / local development is introduced during the iterative optimization process. The specific adaptive switching mechanism for global exploration / local development is as follows: the exploration probability of an individual is adaptively calculated based on the individual quality and the iteration process, and the individual is determined to execute either the global exploration update mode or the local development update mode based on the exploration probability. In this case, poorer individuals tend to be more inclined to global exploration in the early stage, while better individuals and individuals in the later stage of iteration tend to be more inclined to local development.

8. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: A multi-directional guided search mechanism is introduced during the iterative optimization process. The specific multi-directional guided search mechanism is as follows: In the global exploration phase, the global optimal solution vector, the individual historical optimal solution vector, and the high-quality individual solution vector at a distance are considered simultaneously to generate new candidate solution vectors; In the local development phase, two methods, Levy flight local perturbation or direct attack, are randomly used to generate new candidate solution vectors. Among them, the Levy flight local perturbation update uses the fused global optimal solution vector and the individual historical optimal solution vector as the base solution vector, and adds random directional perturbation to generate new candidate solution vectors. The direct attack update uses the current solution vector of the individual as the benchmark, and adds the global optimal and individual historical optimal double random weights to generate new candidate solution vectors.

9. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: In the iterative optimization process, a greedy selection and retention mechanism is introduced among the old solution, candidate solution, and reverse solution. The specific details of the greedy selection and retention mechanism are as follows: the individual update operation generates a new candidate solution vector and a reverse solution vector at the same time, and greedily selects the best among the original solution vector, the new candidate solution vector, and the reverse solution vector.

10. The heterogeneous UAV swarm multi-task allocation method according to claim 1, characterized in that: It also includes a step of boundary repair for the new candidate solution vector, and the reverse solution vector is generated based on the new candidate solution vector after boundary repair and then the boundary is repaired.