Multi-uav task allocation system and method based on two-stage multi-population wolf pack algorithm

By optimizing multi-drone task allocation through a two-stage multi-swarm wolf pack algorithm, and by using a leader group to guide the search of ordinary groups, combined with dynamic swarm mechanism and communication mechanism, the problems of high algorithm complexity and local optima trap in existing technologies are solved, thus achieving efficient and accurate task allocation.

CN119596976BActive Publication Date: 2025-12-09NAVAL UNIV OF ENG PLA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411730462.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-12-09
Estimated Expiration
2044-11-29

AI Technical Summary

Technical Problem

While improving the accuracy of multi-UAV task allocation algorithms, existing algorithms often come at the cost of increased algorithm complexity and solution time, resulting in unsatisfactory overall performance and a tendency to get trapped in local optima.

Method used

A two-stage multi-swarm wolf pack algorithm is adopted. The wolf pack is divided into ordinary group and leader group through the initialization module. Different strategies such as wandering, summoning, besieging and individual wolf reconstruction modules are used. Combined with dynamic population mechanism, population protection mechanism, population migration mechanism and population communication mechanism, the task allocation scheme is optimized.

Benefits of technology

It accelerates convergence to the global optimum, improves solution efficiency and accuracy, saves UAV resources, avoids getting trapped in local optima, and achieves a reasonable allocation of the minimum number of UAVs to complete all tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119596976B_ABST
    Figure CN119596976B_ABST
Patent Text Reader

Abstract

The application provides a multi-unmanned aerial vehicle task allocation system based on a two-stage multi-population wolf swarm algorithm, comprising: an initialization module, which defines the individual wolf position in the two-stage multi-population wolf swarm algorithm as a multi-unmanned aerial vehicle task allocation scheme, divides the wolf swarm into multiple sub-populations, and comprises an ordinary group and a leader group; a wandering module: the ordinary group and the leader group explore wolves and adopt different wandering number calculation methods to reorder task numbers; a calling module: the ordinary group and the leader group use different convergence speeds to learn the scheme of the current alpha wolf; a siege module: except for the alpha wolf, the individual wolves of the ordinary group and the leader group use different threshold values to mutate or learn the scheme of the individual wolf with low fitness; an individual wolf reconstruction module: a roulette mechanism is adopted for reconstruction; and a sub-population adjustment module: after reconstruction is completed, the multi-population mechanism is started, and the leader group is reconstituted. The application improves the wolf swarm algorithm through multiple mechanisms, and improves the solving efficiency and accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of multi-unmanned aerial vehicle task allocation, and particularly relates to a multi-unmanned aerial vehicle task allocation system and method based on a two-stage multi-population wolf pack algorithm. BACKGROUND

[0002] The wolf pack algorithm is a relatively new heuristic optimization algorithm, which mainly simulates the hunting behavior and social division of a wolf pack to solve an optimal solution. In actual operation, the wolf pack algorithm has better global search capability and can effectively balance between local search and global search, and exhibits excellent performance when dealing with high-dimensional complex problems. Therefore, in recent years, scholars have gradually applied the wolf pack algorithm to multi-unmanned aerial vehicle task allocation problems.

[0003] In the field of multi-unmanned aerial vehicle task allocation, although scholars have made many improvements to the initial solution, solution accuracy, population diversity and other aspects of the wolf pack algorithm, most of the improvement work is still in the stage of single population and single optimization mode, or although the solution accuracy of the algorithm is improved to a certain extent, it is at the cost of greatly improving the complexity and solution time of the algorithm, and the overall effect is not ideal. SUMMARY

[0004] The purpose of the present application is to overcome the defects of the prior art and provide a multi-unmanned aerial vehicle task allocation system based on a two-stage multi-population wolf pack algorithm, comprising:

[0005] An initialization module is configured to define the position of each individual wolf in the wolf pack in the two-stage multi-population wolf pack algorithm as a multi-unmanned aerial vehicle task allocation scheme composed of a task list and a unmanned aerial vehicle list, and the task number in the task list and the unmanned aerial vehicle number in the unmanned aerial vehicle list correspond one by one, and the wolf pack is divided into multiple sub-populations, the sub-populations include multiple ordinary groups and a leader group, the wolf pack is first evenly divided into multiple ordinary groups, and then the individual wolves with the top n% of ascending order of fitness values in the wolf pack are copied to form a leader group;

[0006] A wandering module is configured to make the scout wolves in the ordinary groups and the scout wolves in the leader group adopt different wandering number calculation strategies for wandering, the wandering is defined as reordering the task numbers in the task number list, if the fitness value of the scout wolf in the ordinary group is higher than that of the scout wolf in the leader group, the scout wolf copies the multi-unmanned aerial vehicle task allocation scheme of the copy;

[0007] A calling module is configured to make the fierce wolves in the ordinary groups and the fierce wolves in the leader group adopt different convergence speeds for calling, the calling is defined as the fierce wolves learning the multi-unmanned aerial vehicle task allocation scheme of the current alpha wolf, if the fitness value of the fierce wolf in the ordinary group is higher than that of the fierce wolf in the leader group, the fierce wolf copies the multi-unmanned aerial vehicle task allocation scheme of the copy;

[0008] surrounding module, configured to make the individual wolves in the common group except the current alpha wolf and the individual wolves in the leader group except the current alpha wolf take different threshold values to perform surrounding, the surrounding being defined as the individual wolves except the current alpha wolf performing mutation or learning the multi-unmanned aerial vehicle task allocation scheme from the individual wolf with a lower fitness value than the individual wolf, and the individual wolf in the common group copying the multi-unmanned aerial vehicle task allocation scheme of the replica in the leader group if the fitness value of the individual wolf is higher than the replica;

[0009] individual wolf reconstruction module, configured to make the L individual wolves ranked in ascending order of fitness value in the common group and the L individual wolves ranked in ascending order of fitness value in the leader group both perform individual wolf reconstruction by using a roulette mechanism, the individual wolf reconstruction being defined as placing the position of the individual wolf near the X individual wolves ranked in ascending order of fitness value, and the individual wolf in the common group copying the multi-unmanned aerial vehicle task allocation scheme of the replica in the leader group if the fitness value of the individual wolf is higher than the replica;

[0010] sub-population adjustment module, configured to start the two-stage mechanism, the dynamic population mechanism, the population protection mechanism, the population migration mechanism and the population exchange mechanism in the two-stage multi-population wolf swarm algorithm after the individual wolf reconstruction is completed, and to copy the individual wolves ranked in ascending order of fitness value in the current wolf swarm to reconstitute the leader group.

[0011] Further, the method further comprises an iteration calculation module, configured to set a maximum iteration number to complete iteration calculation by taking the running of the wandering module, the calling module, the surrounding module, the individual wolf reconstruction module and the sub-population adjustment module as one round of iteration, and output the position of the alpha wolf generated in the last iteration as the final multi-unmanned aerial vehicle task allocation scheme.

[0012] Further, the two-stage mechanism is to pre-divide the iteration process into an early iteration stage and a late iteration stage according to the iteration number, and the specific process is as follows:

[0013] In the wandering module, in the early iteration stage, the scouts in the common group perform wandering by using a fixed wandering number strategy, and the scouts in the leader group perform wandering by using a dynamic wandering number strategy; in the late iteration stage, the scouts in the common group perform wandering by using a dynamic wandering number, and the scouts in the leader group perform wandering by using a fixed wandering number;

[0014] In the calling module, in the early iteration stage, the hunters in the leader group have a lower convergence speed of calling than the hunters in the common group; in the late iteration stage, the convergence speed of calling of the hunters in the common group is the same as the convergence speed of calling of the hunters in the leader group in the early iteration stage, and the leader group does not perform calling in the late iteration stage.

[0015] In the siege module, the individual wolves in the common group use a probability threshold strategy to siege, and the individual wolves in the leader group use a fixed threshold strategy to siege, whether before or after iteration;

[0016] In the individual wolf reconstruction module, at the early iteration stage, the L individual wolves in the common group ranked in ascending order of fitness value and the L individual wolves in the leader group ranked in ascending order of fitness value all use a roulette mechanism for individual wolf reconstruction; at the late iteration stage, the L individual wolves in the common group ranked in ascending order of fitness value continue to use the roulette mechanism for individual wolf reconstruction, and the leader group does not reconstruct individual wolves.

[0017] Further, the dynamic population mechanism is that at the beginning of each iteration, a batch of individual wolves are mobilized from the common group with a relatively low contribution value to the common group with a relatively high contribution value, and the number of mobilization is the difference between the contribution value of the common group with a relatively high contribution value and the contribution value of the common group with a relatively low contribution value, and the specific formula is as follows:

[0018]

[0019] Wherein, contrpop l represents the contribution of the common group l, np.mean(fitness l ) represents the average value of the sum of the fitness values of all individual wolves in the common group l, bestfitness represents the lowest fitness value of all individual wolves in the common group l, and len(pop l ) represents the total number of individual wolves in the common group l;

[0020] The population protection mechanism is that the number of individual wolves mobilized by the common group each time when the dynamic population mechanism is executed is less than or equal to a;

[0021] The population migration mechanism is that after the dynamic population mechanism is executed, when the number of individual wolves in the common group is less than b, the common group will randomly absorb a number of individual wolves ranked in the top n% in ascending order of fitness value in the wolf group except the head wolf.

[0022] The population communication mechanism is: when the result obtained by a sub-population after c iterations does not change, if the sub-population is not the sub-population to which the individual wolf with the lowest fitness value in the wolf pack belongs, the individual wolf with the highest fitness value in the sub-population is replaced by the individual wolf with the lowest fitness value in the wolf pack; if the sub-population is the sub-population to which the individual wolf with the lowest fitness value in the wolf pack belongs, the UAV list of the individual wolf with the lowest fitness value is mutated, and the mutation range is limited to the UAVs assigned with tasks, the mutation is defined as randomly selecting one from the preset range of UAV numbers to replace the UAV number to be mutated, and the fitness value of the individual wolf after each mutation is compared with the fitness value before the mutation, if the fitness value after the mutation is lower, the position of the individual wolf is updated, otherwise the position of the individual wolf remains unchanged.

[0023] Further, in the wandering module, the specific method of wandering is as follows:

[0024] An integer is randomly generated according to the wolf exploring number formula as the number of wolves exploring in this round of iteration, and the wolf exploring number formula is as follows:

[0025]

[0026] Wherein, N is the population size, and d is the wolf exploring proportion factor;

[0027] The wandering direction of the wandering behavior is defined as the number of UAVs;

[0028] The fixed wandering number strategy is as follows:

[0029] In each wandering direction, a fixed wandering number is used for wandering, and the wandering stops after the wandering number is reached;

[0030] The dynamic wandering number strategy is as follows:

[0031] In each wandering direction, the number of task execution sequences of each UAV is calculated as the wandering number of the wolf exploring for the UAV according to the number of tasks assigned to each UAV, and the wandering is performed, and the wandering stops after the wandering number is reached;

[0032] The fitness value of the wolf exploring after the wandering of each sub-population is calculated, if the fitness value of the wolf exploring is lower than that before the wandering, the position of the wolf exploring is updated, otherwise the position of the wolf exploring remains unchanged.

[0033] Further,

[0034] The number of fierce wolves fnum is calculated, and the calculation formula is as follows:

[0035] fnum=N-snum-1

[0036] Wherein, N is the population size, and snum is the number of wolves exploring;

[0037] Keeping the task number list of the wolf unchanged, randomly selecting j drone numbers in the drone number list of the wolf as the to-be-modified drone numbers, modifying the to-be-modified drone numbers to the drone numbers corresponding to the task numbers corresponding to the to-be-modified drone numbers in the drone number list of the head wolf, 1≤j≤the total number of drone number lists, and j is a randomly generated integer;

[0038] The fitness value of the wolf after calling is calculated for each sub-population, if the fitness value of the wolf after calling is lower than that of the head wolf in the sub-population, the wolf replaces the head wolf to become the new head wolf in the sub-population, and the calling behavior is initiated again according to the position of the new head wolf, if the fitness value of the wolf after calling is lower than that before calling but higher than that of the head wolf, the position of the wolf is updated, and if the fitness value of the wolf after calling is higher than that before calling, the position of the wolf remains unchanged;

[0039] Among them, for the ordinary group, in the early stage of iteration, the specific method of randomly selecting j drone numbers in the drone number list of the wolf as the to-be-modified drone numbers is as follows: the wolf in the ordinary group generates a random first integer in the range of [0, Nt-1] as the number j, and then generates a second integer in the range of [0, Nt-1] as the specific to-be-modified drone number again, in the later stage of iteration, only the first integer in the range of [0, 0.2*Nt] is generated as the number j, and the second integer in the range of [0, Nt-1] is randomly generated as the specific to-be-modified drone number, Nt is the total number of tasks; for the leader group, the calling method of the wolf in the leader group in the early stage of iteration is the same as that of the wolf in the ordinary group in the later stage of iteration, and the leader group does not perform calling behavior in the later stage of iteration.

[0040] Further,

[0041] The probability threshold strategy is as follows:

[0042]

[0043] Wherein, F leader is the fitness value corresponding to the head wolf, F i is the fitness value corresponding to the i-th individual wolf, T is the temperature coefficient, θ is the adjustment coefficient, and P is the probability threshold between the individual wolf and the head wolf;

[0044] The distance probability P between the i-th individual wolf and the head wolf is calculated, and a random number r is randomly generated between 0 and 1, if P>r, a drone number in the drone list of the individual wolf is randomly selected for mutation; if P

[0045] The fixed threshold strategy is as follows:

[0046] A random number r is generated randomly between [0, 1], if 0.5>r, a UAV number in the UAV list of the individual wolf is randomly selected for mutation; if 0.5

[0047] The mutation is defined as randomly selecting one UAV number in a preset range to replace the UAV number to be mutated, and the learning is defined as selecting an arbitrary h pair of task number and UAV number with a corresponding relationship in the individual wolf in a preset range to replace the h pair of task number and UAV number with a corresponding relationship of the individual wolf to be learned;

[0048] The fitness value of the individual wolf after the siege of each subpopulation is calculated, if the fitness value of the individual wolf is lower than before the siege, the position of the individual wolf is updated, otherwise, the position of the individual wolf remains unchanged;

[0049] Among them, whether it is a normal group or a leadership group, in the early stage of iteration, the mutation range is all UAV numbers, and the learning range is a random one in the individual wolf with a smaller fitness value than the individual wolf to be learned, in the later stage of iteration, the mutation range is the UAV number that has been assigned a task, and the learning range is the head wolf in the subpopulation to which the individual wolf to be learned belongs.

[0050] Further, in the individual wolf reconstruction module, the roulette mechanism is as follows:

[0051] First, an integer is randomly generated as the number L of individual wolf reconstruction in this round of iteration according to the update formula, and the update formula is as follows:

[0052]

[0053] Wherein, N is the population size, and e is the update proportion factor;

[0054] Then, on the premise of keeping the task list unchanged, empty the UAV list of the L individual wolves ranked in ascending order of fitness value, and in the first X individual wolves ranked in ascending order of fitness value in the wolf pack, count all the UAV numbers assigned to each task number, define the roulette as the task number, divide the area of the roulette according to the ratio of the roulette result, define the roulette result as the UAV number assigned to the task number, one-to-one correspondence between each UAV number and each roulette result, and the proportion of the number of times that each UAV number is assigned to the task number to X as the ratio of the occurrence of the corresponding roulette result, and define the rotation of the roulette as the solution of the UAV number matched by the task number corresponding to the roulette.

[0055] Rotating the wheel, the obtained one-to-one matching of each task number UAV number is filled into the fitness value ascending ranking after L individual wolf UAV list according to the matching relationship.

[0056] A multi-UAV task allocation method based on a two-stage multi-population wolf pack algorithm, comprising the following steps:

[0057] The position of each individual wolf in the wolf pack in the two-stage multi-population wolf pack algorithm is defined as a multi-UAV task allocation scheme composed of a task list and a UAV list, the task number in the task list corresponds one-to-one with the UAV number in the UAV list, and the wolf pack is divided into multiple sub-populations, including multiple ordinary groups and a leader group, the wolf pack is first evenly divided into multiple ordinary groups, and then the individual wolves with top n% fitness values are copied to form a leader group;

[0058] The explorers in the ordinary group and the explorers in the leader group adopt different walking frequency calculation strategies for walking, the walking is defined as reordering the task numbers in the task number list, if the fitness value of the explorer in the ordinary group is higher than that of the explorer in the leader group, the explorer copies the multi-UAV task allocation scheme of the copy;

[0059] The hunters in the ordinary group and the hunters in the leader group adopt different convergence speeds for calling, the calling is defined as the hunter learning the multi-UAV task allocation scheme of the current alpha, if the fitness value of the hunter in the ordinary group is higher than that of the hunter in the leader group, the hunter copies the multi-UAV task allocation scheme of the copy;

[0060] The individual wolves in the ordinary group except the current alpha and the individual wolves in the leader group except the current alpha adopt different thresholds for siege, the siege is defined as the individual wolves except the current alpha performing mutation or learning the multi-UAV task allocation scheme of the individual wolf with lower fitness value, if the fitness value of the individual wolf in the ordinary group is higher than that of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy;

[0061] The L individual wolves in the ordinary group ranked in ascending order of fitness value and the L individual wolves in the leader group ranked in ascending order of fitness value both adopt the roulette mechanism for individual wolf reconstruction, the individual wolf reconstruction is defined as placing the position of the individual wolf near the top X individual wolves ranked in ascending order of fitness value, if the fitness value of the individual wolf in the ordinary group is higher than that of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy;

[0062] After the individual wolf reconstruction is completed, the two-stage mechanism, the dynamic population mechanism, the population protection mechanism, the population migration mechanism and the population exchange mechanism in the two-stage multi-population wolf swarm algorithm are started, and the individual wolves ranked in the top n% in the current wolf swarm in ascending order of the fitness value are copied to reconstitute a leader group

[0063] A computer program product comprises computer programs / instructions which, when executed by a processor, implement the multi-unmanned aerial vehicle task allocation method based on the two-stage multi-population wolf swarm algorithm.

[0064] The present application has the following advantages:

[0065] 1. The multi-population mechanism proposed in the present application can guide the ordinary group to search in a better direction during wandering, calling, besieging and the like, thereby accelerating convergence to a global optimal solution and improving the efficiency and accuracy of the solution.

[0066] 2. The significance of the two-stage mechanism proposed in the present application lies in that the algorithm focuses on solving the minimum number of unmanned aerial vehicles capable of completing all tasks in the early stage, and focuses on optimizing the task execution order of each unmanned aerial vehicle in the later stage based on the number of unmanned aerial vehicles obtained in the early stage, so that the result of the algorithm solution is that all the to-be-scouted targets are completed using the least number of unmanned aerial vehicles and the most reasonable task execution route, thereby saving the occupation of unmanned aerial vehicle resources and maintaining the excellence of the scheme.

[0067] 3. The dynamic population mechanism, the population protection mechanism and the population migration mechanism proposed in the present application realize dynamic allocation of computing resources by calculating the average contribution of each sub-population to the optimal solution after each iteration. In order to avoid the situation of "big eating small" between sub-populations (i.e. due to the relatively poor performance of the sub-population with a relatively low contribution contri pop, all the individual wolves of the sub-population with a relatively low contribution contri pop are extracted to the sub-population with a relatively high contribution), the population protection mechanism and the population migration mechanism are proposed. When the population migration mechanism is executed, the "excellent" individual wolves absorbed will guide the update of the individual wolves in the sub-population, so as to improve the solving effect of the sub-population and solve the problem of poor performance of the sub-population.

[0068] 4. Under the multi-population mechanism, the number of individual wolves in each sub-population is small, which will lead to small coverage area of each sub-population to the solution space, thereby easily falling into a local optimal solution. When the optimal solution does not change after a certain number of iteration calculations of a sub-population, it is considered that the sub-population falls into a local optimal solution, and the population exchange mechanism is triggered. In order to ensure that each population still has solving "vigor" in the later iteration, the population exchange mechanism is proposed, which greatly avoids the algorithm falling into a local optimal solution in the later iteration. BRIEF DESCRIPTION OF DRAWINGS

[0069] Figure 1 This is a system block diagram of the present invention.

[0070] Figure 2 This is a schematic diagram of the task list and drone list of the present invention.

[0071] Figure 3 This is a schematic diagram of the wandering behavior of the present invention.

[0072] Figure 4 This is a schematic diagram of the summoning behavior of the present invention.

[0073] Figure 5 This is a schematic diagram of the siege behavior of the present invention.

[0074] Figure 6 This is a schematic diagram of the individual wolf reconstruction behavior of the present invention. Detailed Implementation

[0075] To make the technical problems, technical solutions, and beneficial effects to be solved by this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and are not intended to limit the scope of this application.

[0076] Example 1

[0077] refer to Figure 1 A multi-UAV task allocation system based on a two-stage multi-wolf swarm algorithm includes:

[0078] The initialization module is used to define the position of each individual wolf in the two-stage multi-population wolf pack algorithm as a multi-drone task allocation scheme composed of a task list and a drone list. The task number in the task list corresponds one-to-one with the drone number in the drone list. The wolf pack is divided into multiple subpopulations, which include multiple ordinary groups and leader groups. First, the wolf pack is divided into multiple ordinary groups on an average basis. Then, the top n% of individual wolves in the wolf pack with ascending fitness values ​​are copied to form a leader group.

[0079] The roaming module is used to enable scout wolves in the normal group and scout wolves in the leader group to roam using different roaming number calculation strategies. The roaming is defined as reordering the task numbers in the task number list. If the fitness value of a scout wolf in the normal group is higher than that of its clone in the leader group, then the scout wolf copies the clone's multi-UAV task allocation scheme.

[0080] a calling module, configured to make the wolf in the common group and the wolf in the leader group adopt different convergence speeds for calling, the calling being defined as the wolf learning the multi-unmanned aerial vehicle task allocation scheme of the current alpha wolf, and if the fitness value of the wolf in the common group is higher than the replica of the wolf in the leader group, the wolf replicates the multi-unmanned aerial vehicle task allocation scheme of the replica;

[0081] a siege module, configured to make the individual wolf in the common group and the individual wolf in the leader group adopt different threshold values for siege, the siege being defined as the individual wolf performing mutation or learning the multi-unmanned aerial vehicle task allocation scheme of the individual wolf with a lower fitness value, and if the fitness value of the individual wolf in the common group is higher than the replica of the individual wolf in the leader group, the individual wolf replicates the multi-unmanned aerial vehicle task allocation scheme of the replica;

[0082] an individual wolf reconstruction module, configured to make the L individual wolves ranked in ascending order of fitness value in the common group and the L individual wolves ranked in ascending order of fitness value in the leader group adopt a roulette mechanism for individual wolf reconstruction, the individual wolf reconstruction being defined as the position of the individual wolf being placed near the X individual wolves ranked in ascending order of fitness value, and if the fitness value of the individual wolf in the common group is higher than the replica of the individual wolf in the leader group, the individual wolf replicates the multi-unmanned aerial vehicle task allocation scheme of the replica;

[0083] a sub-population adjustment module, configured to start the two-stage mechanism, the dynamic population mechanism, the population protection mechanism, the population migration mechanism and the population exchange mechanism in the two-stage multi-population wolf swarm algorithm after the individual wolf reconstruction is completed, and to reconstitute the leader group by replicating the individual wolves ranked in ascending order of fitness value in the current wolf swarm.

[0084] an iterative calculation module, configured to set a maximum number of iterations to complete the iterative calculation by sequentially running the wandering module, the calling module, the siege module, the individual wolf reconstruction module and the sub-population adjustment module as one round of iteration, and to output the position of the alpha wolf generated in the last iteration as the final multi-unmanned aerial vehicle task allocation scheme.

[0085] (1) In the initialization module, the task numbers and the unmanned aerial vehicle numbers are randomly shuffled in order and stored in the task list Tn and the unmanned aerial vehicle list Un, respectively. The columns corresponding to the task list Tn and the unmanned aerial vehicle list Un are regarded as a whole (i.e., the task numbers in the task list correspond to the unmanned aerial vehicle numbers in the unmanned aerial vehicle list one by one), representing a task allocation scheme in which a certain task is allocated to a certain unmanned aerial vehicle. For a single unmanned aerial vehicle, the execution order of the tasks depends on the order in which the task numbers appear in the Tn list, such as Figure 2As shown, taking the first column and the fifth column as examples, the first column number of the Tn list is 1, indicating the first task, and the first column number of the Un list is 4, indicating the fourth unmanned aerial vehicle, indicating that the first task is assigned to the fourth unmanned aerial vehicle to complete, and similarly, the fifth list indicates that the fifth task is also assigned to the fourth unmanned aerial vehicle to complete, but since in the Tn list, the first task appears before the fifth task, the fourth unmanned aerial vehicle first completes the first task, and then completes the fifth task.

[0086] (2) The wolf population is divided into multiple sub-populations, and the sub-populations include multiple ordinary groups and a leader group, the wolf population is first evenly divided into multiple ordinary groups, then a leader group is formed by copying the individual wolves ranked in the top n% in ascending order of fitness value in the wolf population, and in the wandering, calling, besieging and individual wolf reconstruction, if the fitness value of an individual wolf in an ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-unmanned aerial vehicle task allocation scheme of the copy, and the leader group is re-formed by copying the individual wolves ranked in the top n% in ascending order of fitness value in the current wolf population at the end of each iteration.

[0087] The above is the multi-population mechanism proposed by the application. The leader group is composed of individual wolves with lower fitness values, which represent the excellent solutions in the current population. In the wandering, calling, besieging and other processes, the leader group can guide the ordinary group to search in a better direction, thereby accelerating the convergence to the global optimal solution. When the fitness value of an individual wolf in an ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-unmanned aerial vehicle task allocation scheme of the copy. The multiple mechanisms promote the propagation of excellent solutions while maintaining the diversity of the population, which helps to avoid premature convergence. At the end of each iteration, the leader group is re-formed according to the fitness values of the individual wolves in the current population. This dynamic updating mechanism ensures that the leader group always contains the best individual wolves, thereby ensuring the robustness and stability of the algorithm.

[0088] (3) The two-stage mechanism is to pre-divide the iteration process into the early iteration stage and the late iteration stage according to the number of iterations, specifically as follows:

[0089] In the wandering module, in the early iteration stage, the explorers in the ordinary group adopt a fixed wandering number strategy to wander, and the explorers in the leader group adopt a dynamic wandering number strategy to wander; in the late iteration stage, the explorers in the ordinary group adopt a dynamic wandering number to wander, and the explorers in the leader group adopt a fixed wandering number to wander;

[0090] In the calling module, in the early iteration stage, the fierce wolves in the leader group have a slower convergence speed than the fierce wolves in the ordinary group; in the late iteration stage, the convergence speed of the fierce wolves in the ordinary group is the same as that of the fierce wolves in the leader group in the early iteration stage, and the leader group does not call in the late iteration stage;

[0091] In the siege module, the individual wolves in the common group use the probability threshold strategy to siege, and the individual wolves in the leader group use the fixed threshold strategy to siege, whether in the pre-iteration stage or the post-iteration stage;

[0092] In the individual wolf reconstruction module, in the pre-iteration stage, the L individual wolves ranked in ascending order of fitness value in the common group and the L individual wolves ranked in ascending order of fitness value in the leader group use the roulette mechanism to reconstruct individual wolves; in the post-iteration stage, the L individual wolves ranked in ascending order of fitness value in the common group continue to use the roulette mechanism to reconstruct individual wolves, and the leader group does not reconstruct individual wolves.

[0093] The significance of the two-stage mechanism lies in that the algorithm focuses on solving the minimum number of unmanned aerial vehicles that can complete all tasks in the pre-solution stage, and focuses on optimizing the task execution order of each unmanned aerial vehicle based on the number of unmanned aerial vehicles obtained in the pre-solution stage in the post-solution stage. The result of the final algorithm solution is to use the least number of unmanned aerial vehicles to complete all the reconnaissance targets with the most reasonable task execution route.

[0094] (4) The dynamic population mechanism is that at the beginning of each iteration, a batch of individual wolves are mobilized from the common group with a relatively low contribution value to the common group with a relatively high contribution value, and the number of mobilization is the difference between the contribution value of the common group with a relatively high contribution value and the contribution value of the common group with a relatively low contribution value, and the specific formula is as follows:

[0095]

[0096] Wherein, cantrpop l represents the average contribution of the common group l, np.mean(fitness l ) represents the average value of the sum of the fitness values of all individual wolves in the common group l, bestfitness represents the lowest fitness value of all individual wolves in the common group l, and len(pop l ) represents the total number of individual wolves in the common group l;

[0097] The population protection mechanism is that the number of individual wolves mobilized by the common group each time when the dynamic population mechanism is executed is less than or equal to a;

[0098] The population migration mechanism is that after the dynamic population mechanism is executed, when the number of individual wolves in the common group is less than b, the common group will randomly absorb a number of individual wolves ranked in ascending order of fitness value in the top n% of the wolf group except the leader.

[0099] The dynamic allocation of computing resources is realized by calculating the average contribution of each sub-population to the optimal solution after each iteration. In order to avoid the situation of "big eating small" among sub-populations (i.e. due to the relatively low contribution of the sub-population contri pop The performance of the individual wolf has been poor, which leads to the fact that all the individual wolves of the sub-population with relatively low contribution contri pop are extracted into the sub-population with relatively high contribution, which will lead to too large difference between sub-populations at the beginning of iteration, and the excellent sub-population will swallow more than half of the size of other sub-populations, so that the sub-population which is swallowed will not be good at optimization in the subsequent iteration), the population protection mechanism and the population migration mechanism are proposed. When the population migration mechanism is executed, the "excellent" individual wolf absorbed will play a guiding role in updating the individual wolf of the sub-population, so as to improve the solving effect of the sub-population and solve the problem of poor performance of the sub-population.

[0100] (5) The population exchange mechanism is: when the result obtained by a certain sub-population after c iterations does not change, if the sub-population is not the sub-population to which the individual wolf with the lowest fitness value in the wolf pack belongs, replace the individual with the highest fitness value in the sub-population with the individual wolf with the lowest fitness value in the wolf pack; if the sub-population is the sub-population to which the individual wolf with the lowest fitness value in the wolf pack belongs, mutate the UAV list of the individual wolf with the lowest fitness value, and the mutation range is limited to the UAVs assigned with tasks. The mutation is defined as randomly selecting one from the preset range of UAV numbers to replace the UAV number to be mutated. After each mutation, the individual wolf compares the fitness values before and after mutation. If the fitness value after mutation is lower, update the position of the individual wolf, otherwise the position of the individual wolf remains unchanged.

[0101] Under the multi-population mechanism, the number of individuals in each sub-population is small, which will lead to small coverage area of each sub-population to the solution space, and thus it is easy to fall into local optimum. When a certain sub-population has not changed after a certain number of iterations, it is considered that the sub-population has fallen into local optimal solution, and the population exchange mechanism is triggered. In order to ensure that each population still has solving "vigor" in the later iteration, the population exchange mechanism is proposed, which greatly avoids the algorithm falling into local optimum in the later iteration.

[0102] (6) In the wandering module, as shown in Figure 3 The specific method of wandering is as follows:

[0103] An integer is randomly generated as the number of exploratory wolves in this round of iteration according to the exploratory wolf number formula, and the exploratory wolf number formula is as follows:

[0104]

[0105] Wherein, N is the population number, and d is the exploratory wolf proportion factor.

[0106] The wandering direction of the wandering behavior is defined as the number of UAVs;

[0107] The fixed wandering number strategy is specifically as follows:

[0108] In each wandering direction, a fixed wandering number is used for wandering, and the wandering is stopped after the wandering number is reached;

[0109] The dynamic wandering number strategy is specifically as follows:

[0110] In each wandering direction, the number of permutations and combinations of the task execution order of each UAV is calculated as the wandering number of the wolf for the UAV according to the number of tasks allocated to each UAV, and the wandering is performed, and the wandering is stopped after the wandering number is reached;

[0111] The fitness value of the wolf after wandering of each sub-population is calculated, if the fitness value of the wolf is lower than that before wandering, the position of the wolf is updated, otherwise the position of the wolf is unchanged.

[0112] For the ordinary group, the main task of the early stage of the algorithm is to find the optimal UAV resource allocation, so the algorithm invests less computing resources in the wandering behavior at this stage (i.e., a fixed and small number of wandering times, such as less than 10 times), which helps them to explore widely and uniformly within a certain range, so as to find potential feasible solutions. The main task of the later stage of the algorithm is to adjust the UAV task execution order, which is different from the early stage. At this time, the wandering behavior adopts a dynamic wandering number strategy, which can further refine the search on the basis of the early exploration to find better solutions.

[0113] The wandering behavior of the leader group is opposite to that of the ordinary group at different stages, that is, the dynamic wandering number strategy is adopted in the early stage, and the fixed wandering number strategy is adopted in the later stage. In the early stage of the algorithm, in order to minimize the influence of the quality of the task execution order on the solution of the UAV number configuration, more computing resources need to be invested in the excellent individuals in the ordinary group to guide the iterative calculation of the ordinary group, that is, the leader group can flexibly adjust the wandering number according to the current situation, more deeply explore the solution space, and find higher quality solutions. In the later stage of the algorithm, since the focus of this stage is to optimize the UAV task execution order, many computing resources have been invested in the ordinary group to solve the problem, so in the leader group, repeated calculation is no longer needed, only a fixed and small number of wandering times are needed to perform similar "checking" work, and the high-quality solution found in the early stage can be stably maintained near the search, avoiding algorithm divergence, and ensuring the stability and reliability of the final solution.

[0114] (7) In the calling module, as shown in Figure 4 The specific method of calling is as follows:

[0115] The number of wolves fnum is calculated according to the following formula:

[0116] fnum = N - snum - 1

[0117] wherein N is the population number, and snum is the number of scout wolves;

[0118] The task number list of the wolves is kept unchanged, and j drone numbers in the drone number list of the wolves are randomly selected as the to-be-modified drone numbers, the to-be-modified drone numbers are modified to the drone numbers corresponding to the task numbers corresponding to the to-be-modified drone numbers in the drone number list of the alpha wolf, 1≤j≤the total number of the drone number list, and j is a randomly generated integer;

[0119] The fitness value of the called wolf in each subpopulation is calculated, if the fitness value of the called wolf in a subpopulation is lower than that of the alpha wolf in the subpopulation, the wolf replaces the alpha wolf to become the new alpha wolf in the subpopulation, and the calling behavior is initiated again according to the position of the new alpha wolf, if the fitness value of the called wolf is lower than that before calling but higher than that of the alpha wolf, the position of the called wolf is updated, and if the fitness value of the called wolf is higher than that before calling, the position of the called wolf remains unchanged;

[0120] wherein for the ordinary group, in the early iteration stage, the specific method of randomly selecting j drone numbers in the drone number list of the wolves as the to-be-modified drone numbers is as follows: the wolves in the ordinary group generate a random first integer in the range of [0, Nt-1] as the number j, and then generate a second integer in the range of [0, Nt-1] as the specific to-be-modified drone number, in the later iteration stage, the first integer is generated in the range of [0, 0.2*Nt] as the number j, and the second integer is randomly generated in the range of [0, Nt-1] as the specific to-be-modified drone number, Nt is the total number of tasks; for the leader group, the calling method of the wolves in the leader group in the early iteration stage is the same as that of the wolves in the ordinary group in the later iteration stage, and the leader group does not perform the calling behavior in the later iteration stage.

[0121] The calling behavior is a key step for the algorithm to converge. The essence of the calling behavior is that the alpha wolves in the wolf group learn the partial task allocation scheme of the leader wolf to make the individual wolves in the wolf group approach the optimal solution. The calling behavior of the leader group is essentially a process of mutual learning of excellent individuals in each ordinary group. In the early stage of the algorithm, the strategy of the calling behavior of the leader group is the same as that of the calling behavior of the ordinary group in the later stage, which is to avoid the excessive convergence of the individuals in the leader group. Although the calculation resources are different between different sub-populations, they all converge to the same optimal solution, which helps the algorithm search in a wider solution space and avoid falling into a local optimum too early. In the later stage of iteration, the convergence speed of the alpha wolves in the ordinary group is accelerated, which is the same as that of the leader group in the early stage of iteration, which helps to search more deeply around the high-quality solution found in the early stage and accelerate the convergence to the global optimal solution. The leader group does not call in the later stage of iteration, because the multi-population mechanism essentially wants to have more opportunities to explore more solution space. The leader group in the later stage actually represents the best part of individuals in the sub-population, and the best part of individuals guides the exploration direction of the sub-population. Therefore, if the individuals in the leader group converge too much, it actually means that the two sub-populations converge in the same direction, which is no different from the single-population mechanism.

[0122] (8) In the siege module, as shown in Figure 5 , the specific method of the siege is as follows:

[0123] The probability threshold strategy is as follows:

[0124] The calculation formula of the distance probability P is as follows:

[0125]

[0126] Wherein, F leader is the fitness corresponding to the leader wolf, F i is the fitness corresponding to the i-th individual wolf, T is a temperature coefficient, and θ is an adjustment coefficient.

[0127] The distance probability P between the i-th individual wolf and the leader wolf is calculated, and a random number r is randomly generated between [0, 1]. If P > r, a UAV number in the UAV list of the individual wolf is randomly selected for mutation. If P < r, the i-th individual wolf and the leader wolf are randomly selected for learning.

[0128] The fixed threshold strategy is as follows:

[0129] A random number r is randomly generated between [0, 1]. If 0.5 > r, a UAV number in the UAV list of the individual wolf is randomly selected for mutation. If 0.5 < r, the i-th individual wolf and the leader wolf are randomly selected for learning.

[0130] The variation definition is to randomly select one of the UAV numbers in the preset range to replace the UAV number to be mutated, and the learning definition is to select an individual wolf in the preset range to replace the h pair of task numbers and UAV numbers corresponding to the individual wolf to be learned;

[0131] The fitness value of the individual wolf after the siege of each sub-population is calculated, and if the fitness value of the individual wolf is lower than before the siege, the position of the individual wolf is updated, otherwise the position of the individual wolf remains unchanged;

[0132] Wherein, whether it is a normal group or a leader group, in the early stage of iteration, the mutation range is all UAV numbers, and the learning range is a random one in the individual wolves with smaller fitness values than the individual wolf to be learned, and in the later stage of iteration, the mutation range is the UAV numbers that have been allocated tasks, and the learning range is the alpha wolf in the sub-population to which the individual wolf to be learned belongs.

[0133] In the early stage of the algorithm, in order to explore more combinations of UAV use, for a task, the mutation range is all UAVs, and in order to avoid premature algorithm, the replacement range is no longer just the alpha wolf, but any individual wolf that is better than the current individual wolf can be used as a replacement example. In the later stage of the algorithm, after multiple rounds of iteration calculation, the optimal UAV resource allocation has been found by default, so in the later stage, the mutation range is only among those UAVs that have been allocated tasks, and the replacement is only the current optimal UAV resource allocation (alpha wolf) as an example. The reason why the strategies of the normal group and the leader group are different in the early and late stages of iteration is to avoid the similarity of individuals in the population being too high, which helps to maintain a certain randomness and diversity in the search process of the algorithm, avoid falling into local optimum, and balance the proportion of mutation and learning in updating.

[0134] (9) In the individual wolf reconstruction module, the roulette mechanism is as follows:

[0135] First, an integer is randomly generated as the number L of individual wolf reconstruction in this round of iteration according to the update formula, and the update formula is as follows:

[0136]

[0137] Wherein, N is the population size, and e is the update proportion factor;

[0138] Then, while keeping the task list unchanged, clear the drone list of the L individual wolves ranked in ascending order of fitness value. At the same time, among the top X individual wolves in the wolf pack ranked in ascending order of fitness value, count all drone numbers assigned to each task number. Define the roulette wheel as the task number, divide the area of ​​the roulette wheel according to the ratio of the occurrence of the roulette wheel result, define the roulette wheel result as the drone number assigned to the task number, and map each drone number to each roulette wheel result one by one. The proportion of times each drone number is assigned to the task number is X, which is taken as the ratio of the occurrence of the corresponding roulette wheel result. Rotating the roulette wheel is defined as solving for the drone number matched by the task number corresponding to the roulette wheel.

[0139] Spin the wheel and fill the list of L individual wolf drones, which are ranked in ascending order of fitness value, with the drone numbers that match each task number.

[0140] Individual reconstruction refers to improving the algorithm's solving ability by reconstructing poorly performing individuals in the wolf pack to the vicinity of excellent solutions.

[0141] like Figure 6 The diagram illustrates the task allocation results for four individuals, which are then used to construct a "roulette wheel." Taking the allocation result of the first task as an example, it can be seen that in the allocation scheme for the first task, the fourth drone accounts for 50%, and the second and third drones each account for 25%. If the generated random number is distributed between [0, 0.25], the newly generated individual will assign the first task to the second drone; if the random number is distributed between [0.25-0.5], the newly generated individual will assign the first task to the third drone; if the random number is distributed between [0.5-1], the newly generated individual will assign the first task to the fourth drone.

[0142] The roulette wheel algorithm doesn't restrict the reconstruction to near the optimal solution. Instead, it uses random selection to allow weaker wolves to learn the behavioral patterns or task allocation strategies of stronger individuals (not only those at the optimal solution but also those at the near-optimal). This randomness helps the algorithm escape local optima and explore a wider solution space, thus improving its global search capability. The roulette wheel algorithm's random selection ensures that each reconstructed individual may have a different task allocation strategy, which helps maintain population diversity and prevents the algorithm from getting trapped in local optima too early, thereby improving its robustness and adaptability.

[0143] In the early iteration, the individual wolves in the common group and the leader group all use roulette mechanism to reconstruct individual wolves, which helps to improve the solving ability of the algorithm. In the later iteration, the common group continues to use the roulette mechanism to reconstruct individual wolves to maintain a certain search ability and diversity. The leader group does not reconstruct individual wolves because the leader group itself represents the excellent solution. If the excellent solution is reconstructed in the later iteration, it will lead to the fact that these excellent solutions are similar and fall into local optimum, causing the whole population to converge too much.

[0144] (10) The fitness calculation formula is as follows:

[0145] fitness = a x TCT + b x AFT + g x ATF

[0146] Wherein, fitness is fitness, a is the weight of the time of the unmanned aerial vehicle group executing the reconnaissance process, b is the weight of the average flight time of the unmanned aerial vehicle, g is the weight of the average threat value of the unmanned aerial vehicle, TCT is the time of the unmanned aerial vehicle group executing the reconnaissance process, AFT is the average flight time of each unmanned aerial vehicle in the unmanned aerial vehicle group, ATF is the average threat value of each unmanned aerial vehicle in the unmanned aerial vehicle group executing the reconnaissance process, the values of a and b vary within the constraint condition of a + b = 1 {a, b e (0, 1)}, when the multi-unmanned aerial vehicle task allocation scheme does not satisfy the constraint condition, the fitness of the scheme is set to infinity, and the reconnaissance process is the process from the starting point to completing all tasks and returning to the starting point.

[0147] The time TCT of the unmanned aerial vehicle executing the reconnaissance process is divided into the time required for the unmanned aerial vehicle to fly to the target point, the time required for the unmanned aerial vehicle to execute the reconnaissance process, and the time required for the unmanned aerial vehicle to return to the launching platform. When all the unmanned aerial vehicles complete the reconnaissance process, it marks that all the reconnaissance processes are completed, and the time TCT of the unmanned aerial vehicle group executing the reconnaissance process is determined by the unmanned aerial vehicle that takes the longest time. The calculation formula of the time TCT of the unmanned aerial vehicle group executing the reconnaissance process is as follows:

[0148]

[0149] In the formula, TCT m represents the time of the mth unmanned aerial vehicle executing the reconnaissance process, and Nu represents the number of unmanned aerial vehicles, The calculation formula of TCT is as follows:

[0150]

[0151] In the formula, u m represents the mth unmanned aerial vehicle, t k represents the kth task, represents the distance from the mth unmanned aerial vehicle to the location of the first task t1, represents the distance between the location of the kth task and the location of the k+1th task, and xk denotes the location of the kth task, denotes the flight distance of the mth UAV to complete the kth task, denotes the distance from the last task t n of the mth UAV to return to the starting point, denotes the flight speed of the mth UAV;

[0152] The calculation formula of the average flight time AFT of each UAV in the UAV group is as follows:

[0153]

[0154] In the formula, T m denotes the time required for the mth UAV to complete the reconnaissance process;

[0155] The calculation formula of the average threat value ATF faced by each UAV in the UAV group in the reconnaissance process is as follows:

[0156]

[0157] In the formula, wherein denotes the threat coefficient faced by the mth UAV in performing the kth task.

[0158] Embodiment 2

[0159] A multi-UAV task allocation method based on a two-stage multi-population wolf pack algorithm, comprising:

[0160] The ordinary wolves and the leader wolves in the leader group are made to adopt different wandering frequency calculation strategies for wandering, the wandering is defined as reordering the task numbers in the task number list, if the fitness value of the ordinary wolf is higher than that of the replica of the ordinary wolf in the leader group, the ordinary wolf replicates the multi-UAV task allocation scheme of the replica;

[0161] The ordinary wolves and the leader wolves in the leader group are made to adopt different convergence speeds for calling, the calling is defined as the ordinary wolves learning the multi-UAV task allocation scheme of the current leader wolf, if the fitness value of the ordinary wolf is higher than that of the replica of the ordinary wolf in the leader group, the ordinary wolf replicates the multi-UAV task allocation scheme of the replica;

[0162] The ordinary wolves and the leader wolves in the leader group are made to adopt different convergence speeds for calling, the calling is defined as the ordinary wolves learning the multi-UAV task allocation scheme of the current leader wolf, if the fitness value of the ordinary wolf is higher than that of the replica of the ordinary wolf in the leader group, the ordinary wolf replicates the multi-UAV task allocation scheme of the replica;

[0163] The individual wolves in the common group except the current alpha wolf and the individual wolves in the leader group except the current alpha wolf take different thresholds to attack, the attack is defined as the individual wolves except the current alpha wolf mutate or learn the multi-UAV task allocation scheme from the individual wolf with lower fitness value than the individual wolf, if the fitness value of the individual wolf in the common group is higher than the replica of the individual wolf in the leader group, the individual wolf replicates the multi-UAV task allocation scheme of the replica;

[0164] The L individual wolves ranked in ascending order of fitness value in the common group and the L individual wolves ranked in ascending order of fitness value in the leader group both take the roulette mechanism to reconstruct the individual wolves, the individual wolf reconstruction is defined as the position of the individual wolf is placed near the X individual wolves ranked in ascending order of fitness value, if the fitness value of the individual wolf in the common group is higher than the replica of the individual wolf in the leader group, the individual wolf replicates the multi-UAV task allocation scheme of the replica;

[0165] After the individual wolf reconstruction is completed, the two-stage mechanism, the dynamic population mechanism, the population protection mechanism, the population migration mechanism and the population exchange mechanism in the two-stage multi-population wolf swarm algorithm are started, and the individual wolves ranked in ascending order of fitness value in the current wolf swarm are replicated to reconstitute the leader group.

[0166] Taking the running of the wandering module, the calling module, the attack module, the individual wolf reconstruction module and the sub-population adjustment module in turn as one round of iteration, setting the maximum number of iterations to complete the iteration calculation, outputting the alpha wolf position generated in the last iteration as the final multi-UAV task allocation scheme.

[0167] (1) Randomly shuffle the task numbers and UAV numbers, and store them in the task list Tn and the UAV list Un respectively. The columns corresponding to the task list Tn and the UAV list Un are regarded as a whole (i.e. the task numbers in the task list correspond one-to-one to the UAV numbers in the UAV list), representing a task allocation scheme in which a certain task is allocated to a certain UAV. For a single UAV, the execution order of the tasks depends on the order in which the task numbers appear in the Tn list. Taking the first column and the fifth column as examples, the first column of the Tn list is 1, indicating the first task, and the first column of the Un list is 4, indicating the fourth UAV. This means that the first task is assigned to the fourth UAV for completion. Similarly, it can be seen that the fifth column indicates that the fifth task is also assigned to the fourth UAV for completion. However, since in the Tn list, the first task appears before the fifth task, the fourth UAV completes the first task first, and then completes the fifth task.

[0168] (2) the wolf group is divided into multiple sub-populations, the sub-populations include multiple ordinary groups and a leader group, the wolf group is first evenly divided into multiple ordinary groups, then a leader group is formed by copying the individual wolves ranked in the top n% in the wolf group in ascending order of fitness value, and in the wandering, calling, besieging and individual wolf reconstruction, if the fitness value of an individual wolf in an ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy; the leader group is reformed by copying the individual wolves ranked in the top n% in the current wolf group in ascending order of fitness value at the end of each iteration.

[0169] The above is the multi-population mechanism proposed by the application. The leader group is composed of individual wolves with higher fitness values, which represent the excellent solutions in the current population. In the wandering, calling, besieging and other processes, the leader group can guide the ordinary group to search in a better direction, thereby accelerating the convergence to the global optimal solution. When the fitness value of an individual wolf in an ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy. The multiple mechanisms promote the spread of excellent solutions while maintaining the diversity of the population, which helps to avoid premature convergence. At the end of each iteration, the leader group is reformed according to the fitness values of the individual wolves in the current population. This dynamic updating mechanism ensures that the leader group always contains the best individual wolves, thereby ensuring the robustness and stability of the algorithm.

[0170] (3) the two-stage mechanism is to pre-divide the iteration process into an early iteration stage and a late iteration stage according to the number of iterations, specifically as follows:

[0171] In the early iteration stage, the explorers in the ordinary groups use a fixed wandering frequency strategy to wander, and the explorers in the leader group use a dynamic wandering frequency strategy to wander; in the late iteration stage, the explorers in the ordinary groups use a dynamic wandering frequency to wander, and the explorers in the leader group use a fixed wandering frequency to wander;

[0172] In the early iteration stage, the hunters in the leader group have a slower convergence speed than the hunters in the ordinary groups; in the late iteration stage, the convergence speed of the hunters in the ordinary groups is the same as that of the hunters in the leader group in the early iteration stage, and the leader group does not call in the late iteration stage;

[0173] In both the early iteration stage and the late iteration stage, the individual wolves in the ordinary groups use a probability threshold strategy for besieging, and the individual wolves in the leader group use a fixed threshold strategy for besieging;

[0174] In the early iteration stage, the L individual wolves ranked in ascending order of fitness value in the ordinary groups and the L individual wolves ranked in ascending order of fitness value in the leader group all use a roulette mechanism for individual wolf reconstruction; in the late iteration stage, the L individual wolves ranked in ascending order of fitness value in the ordinary groups continue to use the roulette mechanism for individual wolf reconstruction, and the leader group does not perform individual wolf reconstruction.

[0175] The significance of the two-stage mechanism is that the algorithm focuses on solving the minimum number of UAVs that can complete all tasks in the early stage, and focuses on optimizing the task execution order of each UAV based on the number of UAVs obtained in the early stage in the later stage. The final algorithm solving result is to use the least number of UAVs to complete all the reconnaissance targets with the most reasonable task execution route.

[0176] (4) The dynamic population mechanism is that at the beginning of each iteration, a batch of individual wolves are mobilized from the ordinary group with relatively low contribution value to the ordinary group with relatively high contribution value, and the mobilization number is the difference between the contribution value of the ordinary group with relatively high contribution value and the contribution value of the ordinary group with relatively low contribution value, and the specific formula is as follows:

[0177]

[0178] Wherein, contrpop l represents the average contribution of the ordinary group l, np.mean(fitness l ) represents the average value of the sum of the fitness values of all individual wolves in the ordinary group l, bestfitness represents the lowest fitness value of all individual wolves in the ordinary group l, and len(pop l ) represents the total number of individual wolves in the ordinary group l;

[0179] The population protection mechanism is that the number of individual wolves mobilized by the ordinary group each time when the dynamic population mechanism is executed is less than or equal to a;

[0180] The population migration mechanism is that when the number of individual wolves in the ordinary group is less than b after the dynamic population mechanism is executed, the ordinary group will randomly absorb a number of individual wolves in the wolf group except the head wolf in the top n% of the ascending order of fitness values.

[0181] By calculating the average contribution of each sub-population to the optimal solution after each iteration, the dynamic allocation of computing resources is realized. At the same time, in order to avoid the situation of "big eating small" between sub-populations (i.e. due to the relatively poor performance of the sub-population with relatively low contribution contri pop, all individual wolves of the sub-population with relatively low contribution contri pop are extracted to the sub-population with relatively high contribution), which will lead to too large difference between sub-populations at the beginning of iteration, and the excellent sub-population will swallow more than half of the size of other sub-populations, so that the sub-population that is swallowed will not be good at optimization in subsequent iterations. Therefore, the population protection mechanism and the population migration mechanism are proposed, wherein when the population migration mechanism is executed, the "excellent" individual wolves absorbed will guide the update of the individual wolves in the sub-population, so as to improve the solving effect of the sub-population and solve the problem of poor performance of the sub-population.

[0182] (5) the population communication mechanism is: when a sub-population does not change after c iterations, if the sub-population is not the sub-population to which the wolf with the lowest fitness value in the wolf pack belongs, replace the individual wolf with the highest fitness value in the sub-population with the wolf with the lowest fitness value in the wolf pack; if the sub-population is the sub-population to which the wolf with the lowest fitness value in the wolf pack belongs, mutate the UAV list of the wolf with the lowest fitness value, and the mutation range is limited to the UAVs assigned tasks, the mutation is defined as randomly selecting one from the preset range of UAV numbers to replace the UAV number to be mutated, and the fitness value of the wolf with the lowest fitness value is compared before and after each mutation, if the fitness value after mutation is lower, the position of the wolf is updated, otherwise the position of the wolf does not change.

[0183] Under the multi-population mechanism, the number of individuals in each sub-population is small, which will lead to small coverage area of each sub-population on the solution space, and thus easily fall into local optimum. When a certain sub-population does not change after a certain number of iterations, we consider that the sub-population falls into local optimal solution, and the population communication mechanism is triggered. In order to ensure that each population still has the "vigor" of solving in the later iteration, the population communication mechanism is proposed, which greatly avoids the algorithm falling into local optimum in the later iteration.

[0184] (6) as shown in Figure 3 , the specific method of wandering is as follows:

[0185] An integer is randomly generated as the number of explorers in this round of iteration according to the explorer number formula, and the explorer number formula is as follows:

[0186]

[0187] Wherein, N is the population number, and d is the explorer proportion factor;

[0188] The wandering direction of the wandering behavior is defined as the number of UAVs;

[0189] The fixed wandering number strategy is as follows:

[0190] In each wandering direction, a fixed number of wanderings is used for wandering, and the wandering stops after the number of wanderings is reached;

[0191] The dynamic wandering number strategy is as follows:

[0192] In each wandering direction, according to the number of tasks assigned to each UAV, the permutation and combination number of the task execution order of each UAV is calculated as the wandering number of the explorer for the UAV, and the wandering stops after the wandering number is reached;

[0193] The fitness value of each sub-population after the wolf walks is calculated, if a wolf has a lower fitness value than before walking, the wolf position is updated, otherwise the wolf position remains unchanged.

[0194] For the general group, the main task of the early stage of the algorithm is to find the optimal unmanned aerial vehicle resource allocation, so the early stage of the algorithm invests less computing resources in the walking behavior (i.e., a fixed and small number of walking times, for example, less than 10 times), which helps them to explore widely and uniformly within a certain range, so as to find potential feasible solutions. The main task of the later stage of the algorithm is to adjust the unmanned aerial vehicle task execution order. Unlike the early stage, the walking behavior at this time adopts a dynamic walking time strategy, which can further refine the search on the basis of the early exploration to find better solutions.

[0195] The walking behavior of the leader group is opposite to that of the general group at different stages, that is, the early stage adopts a dynamic walking time strategy, and the later stage adopts a fixed walking time strategy. In the early stage of the algorithm, in order to minimize the influence of the pros and cons of the task execution order on the solution of the unmanned aerial vehicle quantity allocation, more computing resources need to be invested in the excellent individuals in the general group to guide the iterative calculation of the general group, that is, the leader group can flexibly adjust the walking times according to the current situation, more deeply explore the solution space, and find higher quality solutions. In the later stage of the algorithm, since the focus of this stage is to optimize the unmanned aerial vehicle task execution order, many computing resources have been invested in the general group to solve it. In the leader group, repeated calculation is no longer needed, only a fixed and small number of walking times are needed to perform similar "checking" work, and it can stably search near the high-quality solution found in the early stage, avoid algorithm divergence, and ensure the stability and reliability of the final solution.

[0196] (7) As shown in Figure 4 , the specific method of calling is as follows:

[0197] The number of fierce wolves fnum is calculated, and the calculation formula is as follows:

[0198] fnum=N-snum-1

[0199] Wherein, N is the population quantity, and snum is the number of wolves;

[0200] The task number list of the fierce wolf is kept unchanged, and j unmanned aerial vehicle numbers in the unmanned aerial vehicle list of the fierce wolf are randomly selected as to-be-modified unmanned aerial vehicle numbers, the to-be-modified unmanned aerial vehicle numbers are modified to the unmanned aerial vehicle numbers corresponding to the task numbers corresponding to the to-be-modified unmanned aerial vehicle numbers in the unmanned aerial vehicle number list of the head wolf, 1≤j≤the total number of unmanned aerial vehicle number lists, and j is a randomly generated integer;

[0201] The fitness value of each sub-population after calling the wolves is calculated, if the fitness value of a wolf after calling is lower than the head wolf in the sub-population, the wolf replaces the head wolf to become the new head wolf in the sub-population, and the calling behavior is initiated again according to the position of the new head wolf, if the fitness value of the wolf after calling is lower than before calling but higher than the head wolf, the position of the wolf is updated, and if the fitness value of the wolf after calling is higher than before calling, the position of the wolf is unchanged;

[0202] wherein, for the ordinary group, in the early stage of iteration, each of the j UAV numbers in the list of UAV numbers randomly selected by the wolf is a specific method for modifying the UAV number, as follows: the wolf in the ordinary group generates a random first integer in the range of [0, Nt-1] as the number j, and then generates a second integer in the range of [0, Nt-1] again as a specific UAV number to be modified, in the late stage of iteration, only the first integer in the range of [0, 0.2*Nt] is generated as the number j in each iteration, and the second integer in the range of [0, Nt-1] is also randomly generated as a specific UAV number to be modified, and Nt is the total number of tasks; for the leader group, the calling method of the wolf in the leader group in the early stage of iteration is the same as the calling method of the wolf in the ordinary group in the late stage of iteration, and the leader group does not perform the calling behavior in the late stage of iteration.

[0203] The calling behavior is a key step for the algorithm to converge, and the essence is that the wolves in the wolf group approach the optimal solution by learning part of the task allocation scheme of the head wolf. The calling behavior of the leader group is essentially a process of mutual learning of excellent individuals in each ordinary group. In the early stage of the algorithm, the strategy of the leader group calling behavior is the same as that of the ordinary group in the late stage of iteration, which is to avoid the excessive convergence of individuals in the leader group, because although the computing resources are different between different sub-populations, they all converge to the same optimal solution, which helps the algorithm to search in a wider solution space and avoid falling into local optimum too early. In the late stage of iteration, the convergence speed of the wolf calling of the ordinary group is accelerated, which is the same as that of the leader group in the early stage of iteration, which helps to search more deeply around the high-quality solution found in the early stage and speeds up the convergence to the global optimal solution. The leader group does not perform calling in the late stage of iteration, because the multi-population mechanism essentially wants to have more opportunities to explore more solution space, and the leader group in the late stage actually represents the best part of individuals in the sub-population, and the best part of individuals guides the exploration direction of the sub-population, so if the individuals in the leader group converge too much, it actually means that the two sub-populations converge in the same direction, which is no different from the single-population mechanism.

[0204] (8) As shown in Figure 5 , the specific method of siege is as follows:

[0205] The probability threshold strategy is as follows:

[0206] The calculation formula of the distance probability P is as follows:

[0207]

[0208] Wherein, F leader is the fitness corresponding to the head wolf, F i is the fitness corresponding to the i-th individual wolf, T is a temperature coefficient, and θ is an adjustment coefficient.

[0209] The distance probability P of the i-th individual wolf and the head wolf is calculated, and a random number r is randomly generated between [0, 1]. If P > r, a UAV number in the UAV list of the individual wolf is randomly selected for mutation. If P < r, the h pair of task numbers and UAV numbers having a corresponding relationship of the individual wolf is randomly selected for learning.

[0210] The fixed threshold strategy is specifically as follows:

[0211] A random number r is randomly generated between [0, 1]. If 0.5 > r, a UAV number in the UAV list of the individual wolf is randomly selected for mutation. If 0.5 < r, the h pair of task numbers and UAV numbers having a corresponding relationship of the individual wolf is randomly selected for learning.

[0212] The mutation is defined as randomly selecting one from the UAV numbers in a preset range to replace the UAV number to be mutated. The learning is defined as selecting an arbitrary h pair of task numbers and UAV numbers having a corresponding relationship from the individual wolves in a preset range to replace the h pair of task numbers and UAV numbers having a corresponding relationship of the individual wolf to be learned.

[0213] The fitness values of the individual wolves after the siege of each sub-population are calculated. If the fitness value of a certain individual wolf is lower than that before the siege, the position of the individual wolf is updated, otherwise, the position of the individual wolf remains unchanged.

[0214] Wherein, whether it is a normal group or a leader group, in the early iteration, the mutation range is all UAV numbers, and the learning range is a random one of the individual wolves with a smaller fitness value than the individual wolf to be learned. In the later iteration, the mutation range is the UAV numbers that have been assigned tasks, and the learning range is the head wolf in the sub-population to which the individual wolf to be learned belongs.

[0215] In the early stage of the algorithm, in order to explore more combinations of unmanned aerial vehicle use, the mutation range is all unmanned aerial vehicles for a task, and in order to avoid premature algorithm, the replacement range is not only the head wolf, but also any individual wolf better than the current individual wolf. In the later stage of the algorithm, after multiple iterations, the optimal unmanned aerial vehicle resource configuration has been found by default, so in the later stage, the mutation range is only among the unmanned aerial vehicles that have been assigned tasks, and the replacement is only the current optimal unmanned aerial vehicle resource configuration (the head wolf). The reason why the strategies of the ordinary group and the leader group are different before and after iteration is to avoid the similarity of individuals in the population being too high, which helps the algorithm maintain a certain randomness and diversity in the search process, avoids falling into local optimum, and balances the proportion of mutation and learning in updating.

[0216] (9) The roulette mechanism is as follows:

[0217] First, an integer is randomly generated as the number L of individual wolves reconstructed in this round of iteration according to the update formula, and the update formula is as follows:

[0218]

[0219] Where N is the population size, and e is the update proportion factor.

[0220] Then, under the premise of keeping the task list unchanged, the unmanned aerial vehicle list of the L individual wolves ranked in ascending order of fitness value is emptied, and in the X individual wolves ranked in ascending order of fitness value in the wolf pack, the number of all unmanned aerial vehicles assigned to each task number is counted. The roulette is defined as the task number, the area of the roulette is divided according to the ratio of the roulette result, the roulette result is defined as the unmanned aerial vehicle number assigned to the task number, each unmanned aerial vehicle number is matched with each roulette result one by one, and the proportion of the number of times each unmanned aerial vehicle number is assigned to the task number to X is taken as the ratio of the occurrence of the corresponding roulette result. The rotating roulette is defined as the unmanned aerial vehicle number matched with the task number corresponding to the roulette.

[0221] The rotating roulette will get the unmanned aerial vehicle number matched with each task number according to the matching relationship and fill it into the unmanned aerial vehicle list of the L individual wolves ranked in ascending order of fitness value.

[0222] Individual reconstruction refers to improving the solving ability of the algorithm by reconstructing the individual with poor performance in the wolf pack to the vicinity of the excellent solution.

[0223] For example Figure 6As shown, the task allocation results of four individuals are displayed, and a "roulette" is constructed. Taking the allocation results of the first task as an example, it can be seen that in the allocation scheme of the first task, the fourth unmanned aerial vehicle accounts for 50%, and the second and third unmanned aerial vehicles each account for 25%. If the generated random number is distributed in [0, 0.25], the newly generated individual will allocate the first task to the second unmanned aerial vehicle to complete; if the random number is distributed in [0.25-0.5], the newly generated individual will allocate the first task to the third unmanned aerial vehicle to complete; if the random number is distributed in [0.5-1], the newly generated individual will allocate the first task to the fourth unmanned aerial vehicle to complete.

[0224] The roulette mechanism does not limit the reconstruction to the vicinity of the optimal solution, but through random selection, it enables the poor individuals to learn the behavior patterns or task allocation strategies of the excellent individuals (not only the optimal solution, but also the suboptimal solution). This randomness helps the algorithm to jump out of the local optimal solution and explore a wider solution space, thereby improving the global search ability of the algorithm. Through random selection, the roulette mechanism enables each individual after reconstruction to have different task allocation strategies, which helps to maintain the diversity of the population and prevent the algorithm from falling into a local optimal solution too early, thereby improving the robustness and adaptability of the algorithm.

[0225] In the early iteration period, the individual wolves in the ordinary group and the leader group all use the roulette mechanism for individual wolf reconstruction, which helps to improve the solving ability of the algorithm. In the later iteration period, the ordinary group continues to use the roulette mechanism for individual wolf reconstruction to maintain a certain search ability and diversity. The leader group does not perform individual wolf reconstruction because the leader group itself represents the excellent solution. If the excellent solutions are reconstructed in the later iteration period, it will cause these excellent solutions to be similar and fall into a local optimum, resulting in excessive convergence of the entire population.

[0226] (10) The fitness calculation formula is as follows:

[0227] fitness = a x TCT + β x AFT + γ x ATF

[0228] Wherein, fitness is the fitness, a is the weight of the time of the unmanned aerial vehicle group executing the reconnaissance process, β is the weight of the average flight time of the unmanned aerial vehicle, γ is the weight of the average threat value of the unmanned aerial vehicle, TCT is the time of the unmanned aerial vehicle group executing the reconnaissance process, AFT is the average flight time of each unmanned aerial vehicle in the unmanned aerial vehicle group, ATF is the average threat value faced by each unmanned aerial vehicle in the unmanned aerial vehicle group during the execution of the reconnaissance process, and the values of a and β vary within the constraint condition of a + β = 1 {a, β ∈ (0, 1)}. When the multi-unmanned aerial vehicle task allocation scheme does not satisfy the constraint condition, the fitness of the scheme is set to infinity. The reconnaissance process is the process of starting from the starting point to completing all tasks and returning to the starting point.

[0229] The time TCT that the UAVs perform the reconnaissance process is divided into the time that the UAVs fly to the target points, the time that the UAVs perform the reconnaissance process, and the time that the UAVs return to the launching platform. When all the UAVs complete the reconnaissance process, it is marked that all the reconnaissance processes are completed, and the time TCT that the UAV group performs the reconnaissance process is determined by the UAV that takes the longest time, and the calculation formula of the time TCT that the UAV group performs the reconnaissance process is as follows:

[0230]

[0231] In the formula, TCT represents the time that the mth UAV performs the reconnaissance process, and Nu represents the number of UAVs. The calculation formula of TCT is as follows:

[0232]

[0233] In the formula, u represents the mth UAV, t represents the time, and x represents the distance. m k k n

[0234] The calculation formula of the average flight time AFT of each UAV in the UAV group is as follows:

[0235]

[0236] In the formula, T represents the time, and Nu represents the number of UAVs. m

[0237] The calculation formula of the average threat value ATF that each UAV in the UAV group faces during the performance of the reconnaissance process is as follows:

[0238]

[0239] In the formula, T represents the time, and Nu represents the number of UAVs.

[0240] Embodiment 3 ​​​​​​​​​​​​

[0241] A computer program product comprising computer programs / instructions which, when executed by a processor, implement the multi-unmanned aerial vehicle task allocation method based on a two-stage multi-population wolf pack algorithm in embodiment 2.

[0242] The details of this Specification not described in detail are the prior art known to those skilled in the art. Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application 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-ROMs, optical storage devices, etc.) containing computer-usable program code.

[0243] The present application is described with reference to flowcharts and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, as well as combinations of flows and / or blocks in the flowcharts 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, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus produce a means for implementing the functions specified in the flowcharts and / or block diagrams. Figure 1 one or more flows and / or blocks Figure 1 means for performing the functions specified in the flowchart

[0244] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to work in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including instruction means, which implement the functions specified in the flowcharts and / or block diagrams. Figure 1 one or more flows and / or blocks Figure 1 means for performing the functions specified in the flowchart

[0245] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus, so that a series of operation steps are performed on the computer or other programmable data processing apparatus to produce a computer-implemented process, so that the instructions executed on the computer or other programmable data processing apparatus provide a means for implementing the functions specified in the flowcharts and / or block diagrams. Figure 1 one or more flows and / or blocks Figure 1 means for performing the functions specified in the flowchart

[0246] It should be pointed out finally that the above examples are only used for illustrating the technical solutions of the present application but not for limiting the protection scope thereof, and although the present application has been described in detail with reference to the above examples, it should be understood by those skilled in the art that the specific embodiments of the present application can be changed, modified or replaced equivalently by those skilled in the art after reading the present application, but these changes, modifications or equivalent replacements are all within the protection scope of the claims to be filed of the present application.

Claims

1. A multi-UAV task allocation system based on a two-stage multi-population wolf pack algorithm, characterized in that, The application relates to a two-stage multi-population wolf swarm algorithm for multi-unmanned aerial vehicle (UAV) task allocation. The initialization module is used for defining the position of each individual wolf in the wolf swarm as a multi-UAV task allocation scheme composed of a task list and a UAV list, the task number in the task list corresponding to the UAV number in the UAV list, and dividing the wolf swarm into multiple sub-populations, the sub-populations including multiple ordinary groups and a leader group, the wolf swarm being evenly divided into multiple ordinary groups, and an ordinary group being copied to form a leader group. The wandering module is used for making the scout wolves in the ordinary groups and the scout wolves in the leader group adopt different wandering times calculation strategies to wander, wandering being defined as reordering the task numbers in the task number list, and if the fitness value of a scout wolf in the ordinary group is higher than that of the copy of the scout wolf in the leader group, the scout wolf copies the multi-UAV task allocation scheme of the copy. The calling module is used for making the hunting wolves in the ordinary groups and the hunting wolves in the leader group adopt different convergence speeds to call, calling being defined as the hunting wolves learning the multi-UAV task allocation scheme of the current alpha wolf, and if the fitness value of a hunting wolf in the ordinary group is higher than that of the copy of the hunting wolf in the leader group, the hunting wolf copies the multi-UAV task allocation scheme of the copy. The besieging module is used for making the individual wolves in the ordinary groups except the current alpha wolf and the individual wolves in the leader group except the current alpha wolf adopt different threshold values to besiege, besieging being defined as the individual wolves except the current alpha wolf performing mutation or learning the multi-UAV task allocation scheme of the individual wolf with a lower fitness value, and if the fitness value of an individual wolf in the ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy. The individual wolf reconstruction module is used for making the L individual wolves ranked in ascending order of fitness value in the ordinary groups and the L individual wolves ranked in ascending order of fitness value in the leader group adopt a roulette mechanism to reconstruct the individual wolves, individual wolf reconstruction being defined as placing the position of the individual wolf near the X individual wolves ranked in ascending order of fitness value, and if the fitness value of an individual wolf in the ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy. The sub-population adjustment module is used for starting the two-stage mechanism, the dynamic population mechanism, the population protection mechanism, the population migration mechanism and the population exchange mechanism in the two-stage multi-population wolf swarm algorithm after the individual wolf reconstruction is completed, and copying the individual wolves ranked in ascending order of fitness value in the current wolf swarm to re-form the leader group, the dynamic population mechanism being that a batch of individual wolves are mobilized from ordinary groups with relatively low contribution values to ordinary groups with relatively high contribution values at the beginning of each iteration, the mobilized number being the difference between the contribution value of the ordinary group with the relatively high contribution value and the contribution value of the ordinary group with the relatively low contribution value, and the specific formula being as follows: wherein, represents the contribution degree of the common group , represents the average of the sum of the fitness values of all individual wolves in the common group , represents the lowest fitness value among all individual wolves in the common group , represents the total number of individual wolves in the common group .

2. The two-stage multi-swarm wolf pack algorithm based multi-UAV task allocation system according to claim 1, characterized in that, The iteration calculation module is used for taking the sequentially running wandering module, calling module, besieging module, individual wolf reconstruction module and sub-population adjustment module as one round of iteration, setting the maximum iteration number to complete iteration calculation, and outputting the position of the alpha wolf generated in the last iteration as the final multi-UAV task allocation scheme. ​ 3. The multi-UAV task allocation system based on the two-stage multi-population wolf pack algorithm of claim 2, wherein: the two-stage mechanism is to pre-divide the iteration process into the early iteration stage and the late iteration stage according to the number of iterations, and the specific process is as follows: in the wandering module, in the early iteration stage, the scout wolves in the ordinary group adopt the fixed wandering number strategy to wander, and the scout wolves in the leader group adopt the dynamic wandering number strategy to wander; in the late iteration stage, the scout wolves in the ordinary group adopt the dynamic wandering number to wander, and the scout wolves in the leader group adopt the fixed wandering number to wander; in the calling module, in the early iteration stage, the attack wolves in the leader group reduce the convergence speed of calling compared with the attack wolves in the ordinary group; in the late iteration stage, the convergence speed of calling of the attack wolves in the ordinary group is the same as that of the attack wolves in the leader group in the early iteration stage, and the leader group does not call in the late iteration stage; in the siege module, whether in the early iteration stage or in the late iteration stage, the individual wolves in the ordinary group all adopt the probability threshold strategy to siege, and the individual wolves in the leader group all adopt the fixed threshold strategy to siege; in the individual wolf reconstruction module, in the early iteration stage, the L individual wolves ranked in ascending order of fitness value in the ordinary group and the L individual wolves ranked in ascending order of fitness value in the leader group all adopt the roulette mechanism to reconstruct the individual wolves; in the late iteration stage, the L individual wolves ranked in ascending order of fitness value in the ordinary group continue to adopt the roulette mechanism to reconstruct the individual wolves, and the leader group does not reconstruct the individual wolves.

4. The multi-UAV task allocation system based on the two-stage multi-population wolf pack algorithm of claim 1, wherein: The population protection mechanism is that the number of individual wolves mobilized by the ordinary group each time when the dynamic population mechanism is executed is less than or equal to ; the population migration mechanism is that, after the dynamic population mechanism is executed, when the number of individual wolves in the ordinary group is less than b, the ordinary group will randomly absorb a number of individual wolves ranked in ascending order of fitness value from the wolf group except the head wolf; The population communication mechanism is: when a sub-population passes through If the result obtained in the secondary iteration does not change, if the sub-population is not the sub-population to which the individual wolf with the lowest fitness value in the wolf group belongs, replace the individual with the highest fitness value in the sub-population with the individual wolf with the lowest fitness value in the wolf group; if the sub-population is the sub-population to which the individual wolf with the lowest fitness value in the wolf group belongs, mutate the UAV list of the individual wolf with the lowest fitness value, and the mutation range is limited to the UAVs assigned with tasks, the mutation is defined as randomly selecting one from the UAV numbers in the preset range to replace the UAV number to be mutated, and the fitness value of the individual wolf with the lowest fitness value after each mutation is compared with the fitness value before the mutation, if the fitness value after the mutation is lower, the position of the individual wolf is updated, otherwise the position of the individual wolf remains unchanged.

5. The multi-UAV task allocation system based on the two-stage multi-population wolf pack algorithm of claim 3, wherein: an integer is randomly generated as the number of scout wolves in the current iteration according to the scout wolf number formula, and the scout wolf number formula is as follows: wherein, is the population number, is the proportion of explorers factor; the wandering direction of the wandering behavior is defined as the number of UAVs; the specific process of the fixed wandering number strategy is as follows: in each wandering direction, a fixed wandering number is used for wandering, and the wandering is stopped after the wandering number is reached; the specific process of the dynamic wandering number strategy is as follows: in each wandering direction, the number of permutations and combinations of the task execution order of each UAV is calculated as the wandering number of the scout wolf for the UAV according to the number of tasks allocated to each UAV, and the wandering is stopped after the wandering number is reached; the fitness value of the scout wolf after wandering of each sub-population is calculated, and if the fitness value is lower than that before wandering, the position of the scout wolf is updated, otherwise the position of the scout wolf remains unchanged.

6. The multi-UAV task allocation system based on the two-stage multi-population wolf pack algorithm of claim 3, wherein: Counting the number of wolves The formula is as follows: wherein, is the population number, is the number of explorers; The task number list of the alpha wolf is kept unchanged, and j drone numbers in the drone number list of the alpha wolf are randomly selected as the to-be-modified drone numbers, the to-be-modified drone numbers are modified into the drone numbers corresponding to the task numbers corresponding to the to-be-modified drone numbers in the drone number list of the beta wolf, 1≤j≤the total number of drone numbers, and j is a randomly generated integer; The fitness value of the alpha wolf after the calling is calculated, if the fitness value of the alpha wolf after the calling is lower than that of the beta wolf in the same sub-population, the alpha wolf replaces the beta wolf to become the new beta wolf in the sub-population, and the calling behavior is initiated again according to the position of the new beta wolf, if the fitness value of the alpha wolf after the calling is lower than that before the calling but higher than that of the beta wolf, the position of the alpha wolf is updated, and if the fitness value of the alpha wolf after the calling is higher than that before the calling, the position of the alpha wolf remains unchanged; In the early iteration, the specific method of randomly selecting j drone numbers in the drone number list of the alpha wolf as the to-be-modified drone numbers is as follows: the alpha wolf in the ordinary group generates a random first integer in the range of [0, Nt-1] as the number j, and then generates a second integer in the range of [0, Nt-1] as the specific to-be-modified drone number, and in the later iteration, the first integer is generated in the range of [0, 0.2*Nt] as the number j, and the second integer is randomly generated in the range of [0, Nt-1] as the specific to-be-modified drone number, and Nt is the total number of tasks; the calling method of the alpha wolf in the leader group in the early iteration is the same as that of the alpha wolf in the ordinary group in the later iteration, and the leader group does not perform the calling behavior in the later iteration.

7. The multi-unmanned aerial vehicle task allocation system based on the two-stage multi-population wolf pack algorithm according to claim 3, wherein: The specific method of the probability threshold strategy is as follows: wherein, fitness corresponding to the head wolf, fitness corresponding to the first fitness corresponding to the individual wolf, temperature coefficient, adjustment coefficient, P is the distance probability between the individual wolf and the head wolf; Calculate the distance probability between the individual wolf and the head wolf The distance probability between the individual wolf and the head wolf At the same time, a random number between [0, 1] is randomly generated If , a UAV number in the UAV list of the individual wolf is randomly selected for mutation; if , the The task number and UAV number with the corresponding relationship are learned; The specific method of the fixed threshold strategy is as follows: Generate a random number between [0, 1] randomly , if , randomly select a UAV number in the UAV list of the individual wolf to mutate; if , randomly select a UAV number in the UAV list of the individual wolf to mutate; if , learn the task number and the UAV number with the corresponding relationship; The variation is defined as randomly selecting one of the UAV numbers in a preset range to replace the UAV number to be varied, and the learning is defined as selecting an arbitrary individual wolf from individuals in a preset range The task number and the UAV number having the corresponding relationship are replaced with the individual wolf to be learned The task number and the UAV number having the corresponding relationship The fitness value of the individual wolf after the siege is calculated, if the fitness value of the individual wolf after the siege is lower than that before the siege, the position of the individual wolf is updated, otherwise, the position of the individual wolf remains unchanged; In the early iteration, the mutation range is all drone numbers, and the learning range is a random one of the individual wolves with a fitness value smaller than that of the to-be-learned individual wolf, and in the later iteration, the mutation range is the drone numbers that have been allocated tasks, and the learning range is the beta wolf in the sub-population to which the to-be-learned individual wolf belongs.

8. The multi-unmanned aerial vehicle task allocation system based on the two-stage multi-population wolf pack algorithm according to claim 3, wherein: In the individual wolf reconstruction module, the roulette mechanism is as follows: First, a random integer is generated as the number L of individual wolf reconstruction in the current iteration according to the update formula, and the update formula is as follows: wherein, is the population number, is the update scaling factor; Then, the UAV list of the L individual wolves ranked in ascending order of fitness value is emptied while the task number corresponding to the assigned UAV number is counted in the X individual wolves ranked in ascending order of fitness value in the wolf pack, the roulette is defined as the task number, the area of the roulette is divided according to the ratio of the roulette result, the roulette result is defined as the UAV number assigned to the task number, each UAV number is matched with each roulette result, the proportion of the number of times that each UAV number is assigned to the task number to X is taken as the ratio of the occurrence of the corresponding roulette result, and the rotating roulette is defined as the UAV number matched with the task number corresponding to the roulette. The rotating roulette is rotated, and the UAV number matched with each task number is filled into the UAV list of the L individual wolves ranked in ascending order of fitness value according to the matching relationship.

9. A multi-unmanned aerial vehicle task allocation method based on a two-stage multi-population wolf pack algorithm, characterized in that, The method comprises the following steps: The position of each individual wolf in the wolf pack in the two-stage multi-population wolf pack algorithm is defined as a multi-UAV task allocation scheme composed of a task list and a UAV list, the task number in the task list is matched with the UAV number in the UAV list, and the wolf pack is divided into multiple sub-populations, the sub-populations include multiple ordinary groups and a leader group, the wolf pack is first evenly divided into multiple ordinary groups, and then the individual wolves ranked in ascending order of fitness value are copied to form a leader group; The exploring wolves in the ordinary groups and the exploring wolves in the leader group adopt different walking times calculation strategies for walking, the walking is defined as reordering the task numbers in the task number list, if the fitness value of the exploring wolf in the ordinary group is higher than that of the copy of the exploring wolf in the leader group, the exploring wolf copies the multi-UAV task allocation scheme of the copy; The attacking wolves in the ordinary groups and the attacking wolves in the leader group adopt different convergence speeds for calling, the calling is defined as learning the multi-UAV task allocation scheme of the current alpha wolf by the attacking wolf, if the fitness value of the attacking wolf in the ordinary group is higher than that of the copy of the attacking wolf in the leader group, the attacking wolf copies the multi-UAV task allocation scheme of the copy; The individual wolves other than the current alpha wolf in the ordinary groups and the individual wolves other than the current alpha wolf in the leader group adopt different threshold values for attacking, the attacking is defined as performing mutation or learning the multi-UAV task allocation scheme of the individual wolf with a lower fitness value by the individual wolf other than the current alpha wolf, if the fitness value of the individual wolf in the ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy; The L individual wolves ranked in ascending order of fitness value in the ordinary groups and the L individual wolves ranked in ascending order of fitness value in the leader group both adopt the roulette gambling mechanism for individual wolf reconstruction, the individual wolf reconstruction is defined as placing the position of the individual wolf near the X individual wolves ranked in ascending order of fitness value, if the fitness value of the individual wolf in the ordinary group is higher than that of the copy of the individual wolf in the leader group, the individual wolf copies the multi-UAV task allocation scheme of the copy; After the individual wolf reconstruction is completed, the two-stage mechanism, the dynamic population mechanism, the population protection mechanism, the population migration mechanism and the population exchange mechanism in the two-stage multi-population wolf swarm algorithm are started, and the individual wolves ranked in the top n% in the current wolf swarm in ascending order of the fitness value are copied to form a leader group, the dynamic population mechanism is that at the beginning of each iteration, a batch of individual wolves are mobilized from the ordinary group with a relatively low contribution value to the ordinary group with a relatively high contribution value, and the number of mobilization is the difference between the contribution value of the ordinary group with a relatively high contribution value and the contribution value of the ordinary group with a relatively low contribution value, and the specific formula is as follows: wherein, represents the contribution degree of the ordinary group , represents the average value of the sum of the fitness values of all individual wolves in the ordinary group , represents the lowest fitness value among all individual wolves in the ordinary group , represents the total number of individual wolves in the ordinary group .

10. A computer program product comprising computer programs / instructions, characterized in that, The computer program / instructions are executed by the processor to realize the multi-unmanned aerial vehicle task allocation method based on the two-stage multi-population wolf swarm algorithm in claim 9.

Citation Information

Patent Citations

  • Method for scheduling UAVs based on chaotic adaptive firefly algorithm

    AU2020101065A4

  • Multi-unmanned aerial vehicle task allocation system and method based on dynamic wolf pack algorithm

    CN118778698A