A multi-target unmanned aerial vehicle task allocation method and system based on a quantum flying fox mechanism
Through the multi-objective UAV task allocation method based on the quantum flying fox mechanism, the quantum flying fox swarm algorithm is used to optimize and solve the objective function, which solves the joint optimization problem in multi-objective UAV task allocation, achieves improved stability and feasibility, and obtains the Pareto optimal solution.
Patent Information
- Application Number
- CN202411951800.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-27
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2044-12-27
AI Technical Summary
Existing technologies are difficult to effectively solve the joint optimization problem in multi-objective UAV task allocation. In particular, traditional algorithms have problems in multi-objective optimization, such as algorithm complexity, high randomness of results, and strong instability, which cannot meet the needs of multi-objective joint optimization.
A multi-target UAV task allocation method based on the quantum flying fox mechanism is adopted. By establishing a multi-target UAV task allocation model, the quantum flying fox swarm algorithm is used to optimize and solve the objective function, including initializing the quantum flying fox swarm, calculating the fitness function value, updating the quantum flying fox position and performing iterative optimization, and finally obtaining the optimal task allocation matrix.
The scheme steps of multi-target UAV task allocation are simplified, the stability and feasibility of the scheme are improved, the Pareto optimal solution can be effectively obtained, the scope of application is expanded, and the difficult problem of multi-target UAV task allocation is solved.
Smart Images

Figure CN119781293B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of unmanned aerial vehicle (UAV) task allocation, and in particular to a multi-target UAV task allocation method and system based on a quantum flying fox mechanism. Background Art
[0002] UAV task allocation is a crucial component of UAV systems. During this process, UAVs are automatically planned, decided, and scheduled based on the nature of the mission, UAV performance, and environmental conditions. Task allocation algorithms must comprehensively consider a variety of complex factors, including mission requirements, UAV capabilities, environmental factors, communication and control, coordinated operations, task priorities, and dynamic adjustments. Currently, there are three primary task allocation methods: centralized control, distributed control, and hybrid control. However, multi-objective UAV task allocation, which requires the joint optimization of multiple conflicting objectives, is a difficult technical challenge. Its successful solution could overcome the application and engineering limitations of existing UAV task allocation systems.
[0003] Through the search of existing literature, it is found that the task allocation problem has existed since the first UAV was manufactured in 1917. After gradual evolution and accumulation, many research institutions, scholars and engineers have continuously experimented and innovated, and the task allocation method has been fully developed. Qi Xiaogang et al. pointed out in the "Research Review of Task Planning of Multi-UAVs under Multiple Constraints" published in the Journal of Intelligent Systems (2020, 15(2): 204-217.) that the challenges currently faced in the field of multi-UAV task allocation include: how to build a unified framework to coordinate the collaborative target allocation of multiple UAVs; how to select and quantify the constraints in the collaborative tasks; how to effectively handle the path planning of multi-UAV collaborative operations to ensure the smoothness and rationality of the path; and how to quickly respond and replan the flight path of multiple UAVs when encountering serious threats. The above problems are difficult to solve in actual engineering. Therefore, in actual engineering, it is necessary to fully consider the possible situations, continuously simplify the constraints and optimize the UAV model. Zhang Ruipeng et al. designed a hybrid particle swarm algorithm in the paper "Hybrid Particle Swarm Algorithm for Collaborative Task Allocation of Multi-UAVs" published in Acta Aeronautica Sinica (2022, 43(12): 326011-326011). This algorithm successfully solved the problem that traditional particle swarm algorithms are prone to local convergence and can effectively solve the problem of UAV task allocation. However, due to the limitations of the single-objective particle swarm algorithm itself and limited application scenarios, it cannot meet the joint optimization of multiple objectives, and the effect achieved is not very good. Konstantinos Zervoudakis and Stelios Tsafarakis proposed the Flying Foxes Optimization (FFO) in "A global optimizer inspired from the survival strategies offlying foxes" published in "Engineering with Computers" (2023, 39(2): 1583-1616). The FFO algorithm was inspired by the survival strategy of flying foxes in heat waves. This algorithm solves the optimization problem by simulating the behavior of flying foxes, which provides a new idea for solving the drone allocation problem. However, it can only solve single-objective problems and cannot effectively solve the Pareto front solution set of multi-objective joint optimization.
[0004] In summary, existing technologies for UAV task allocation still face numerous challenges. Common task allocation methods, such as exhaustive search, graph theory, genetic algorithms, ant colony optimization, and threshold response methods, while effective, suffer from complex algorithms, highly random results, and significant instability. While recently proposed novel optimization algorithms, such as the Flying Fox algorithm, have addressed these challenges, they remain unable to solve multi-objective problems. Summary of the Invention
[0005] In view of this, the present invention proposes a multi-target UAV task allocation method and system based on the quantum flying fox mechanism to solve the technical problems that cannot be solved in the existing technology.
[0006] According to one aspect of the present invention, a multi-target UAV task allocation method based on the quantum flying fox mechanism is proposed, comprising the following steps:
[0007] Step 1: Establish a multi-UAV task allocation model and then set the objective function of multi-objective UAV task allocation;
[0008] Step 2: Using the objective function as the fitness function, the objective function is optimized and solved using the quantum flying fox swarm algorithm to obtain the optimal task allocation matrix; including:
[0009] Step 21: Initialize the quantum flying fox group;
[0010] Step 22: Calculate the fitness function value of each quantum flying fox in the quantum flying fox group;
[0011] Step 2 and 3: Use the fitness function values of all quantum flying foxes to obtain the non-dominated ranks and crowding distances of all quantum flying foxes;
[0012] Step 24: Update the quantum flying fox using the quantum flying fox death mechanism and the density of the quantum flying fox;
[0013] Step 25: Use the population evolution strategy of the quantum flying fox group to update the quantum position of the quantum flying fox group;
[0014] Step 26: Determine whether the upper limit of the number of iterations has been reached. If so, terminate the iteration and proceed to step 27; if not, return to step 24.
[0015] Step 27: Convert the quantum position information of the quantum flying fox with the highest non-dominated level into a task allocation matrix.
[0016] Furthermore, the objective function in step 1 is:
[0017]
[0018] In the formula, min means minimization; is the combat benefit fitness function; is the loss cost fitness function; is the time cost fitness function;
[0019]
[0020]
[0021] where N is the number of UAVs; M is the number of targets; A={a n,m |a n,m ∈{0,1}} N×M is a task assignment matrix, where n=1,2,...,N, m=1,2,...,M, a n,m =1 indicates that the nth UAV is responsible for performing combat tasks on the mth enemy target, a n,m =0 indicates that the nth UAV does not perform combat tasks on the mth enemy target; P' n,m represents the probability of the UAV n attacking the target m; P" n,m represents the survival probability of the UAV n after attacking the target m; V' m represents the value of the mth target; is the maximum number of tasks performed by the nth UAV; S n is the total range of the nth UAV performing tasks, is the maximum range of the nth UAV; represents the moving average speed of the nth UAV; max(·) is the maximum value function; |·| is the absolute value function; χ1, χ2 and χ3 are weight factors of the task constraint penalty term, the attack constraint penalty term and the range constraint penalty term, respectively.
[0022] Further, the initializing quantum flying fox group in step two includes:
[0023] The number of individuals of the quantum flying fox group is set to The maximum number of iterations is T, and each dimension of the quantum position of the quantum flying fox is randomly initialized to a random number between 0 and 1. The quantum position of the ith quantum flying fox in the tth generation is denoted as where D represents the maximum dimension of the quantum position vector, which matches the number of targets, d=1,2,...D; the position corresponding to the quantum position of the ith quantum flying fox in the tth generation is The position is obtained through a mapping relationship , and are the maximum value and the minimum value of the dth dimension position in the search space, respectively; the fitness vector of the ith quantum flying fox in the tth generation is denoted as t is the number of iterations; a survival list for storing backup quantum flying foxes is initialized: the quantum flying foxes in the initial generation are randomly added to the survival list, and the survival list is filled to a size of where β is a constant.
[0024] Further, the process of step two includes: mapping the quantum position of the ith quantum flying fox in the tth generation to the position Mapping the position of the quantum flying fox to the task allocation matrix Then the fitness function vector of the i-th quantum flying fox in the t-th generation is: Wherein, t = 1, 2,..., T.
[0025] Further, the process of steps two and three includes:
[0026] Calculate the non-dominated level: judge the dominance relationship between quantum flying foxes, including the non-dominated situation between quantum flying foxes and the non-dominance relationship between two quantum flying foxes; the non-dominated situation between quantum flying foxes includes: there are two quantum flying foxes in the t-th generation, numbered i1 and i2, if the fitness values of the two quantum flying foxes exist at the same time, the relationship includes
[0027] And not at the same time, then the quantum flying fox i2 is non-dominated quantum flying fox i1, that is, the quantum flying fox i2 is inferior to the quantum flying fox i1; the calculation process of the non-dominance relationship between the two quantum flying foxes includes: according to the non-dominance relationship between the quantum flying foxes, the quantum flying foxes not dominated by any quantum flying fox are stored in the first level, and the non-dominance level is 1; the quantum flying foxes dominated by the quantum flying foxes in the first level and not dominated by any other quantum flying fox are stored in the second level, and the non-dominance level is 2; continue to calculate until the non-dominance level of all quantum flying foxes in the t-th generation is obtained;
[0028] Calculate the crowding distance of each target fitness function: first, set the quantum flying fox in the first level μ quantum flying foxes in the t-th generation, and the fitness vector is k = 1, 2,..., μ, arrange the quantum flying foxes in the first level in ascending order according to the first fitness value, and the crowding distances of the two boundaries after sorting are And Set to infinity, then the crowding distance of the first fitness function of the k-th quantum flying fox is:
[0029]
[0030] Wherein, k is the corresponding unsorted label after the first fitness function is arranged in ascending order, The maximum fitness value of the first fitness function, The minimum fitness value of the first fitness function,
[0031] Then, calculate the crowding distances of the second and third fitness functions And Then the total crowding distance value of the k-th quantum flying fox is
[0032] Finally, the μ quantum flying foxes are sorted in descending order according to the crowding distance.
[0033] Furthermore, the process of step 24 includes:
[0034] Density calculation of quantum flying foxes: taking the quantum position of the quantum flying fox and the target fitness function as input, first calculate the distance between the quantum flying foxes, then set the distance threshold according to the distance between the quantum flying foxes and the average distance of the group, and finally obtain the density according to the distance threshold and the distance between the quantum flying foxes;
[0035] According to the density of the quantum flying foxes, some suffocated quantum flying foxes are selected and supplemented with quantum flying foxes in the survival list; the survival list is an excellent individual selected from the previous generation of quantum flying foxes, and its size is approximately β times the number of groups. After each iteration, the better quantum flying foxes in the current population are added to the survival list, and the redundant solutions in the list are deleted.
[0036] Furthermore, the process of step 25 is:
[0037] Crossover: Exclude quantum flying foxes with a non-dominated level of 1 and randomly select different quantum flying foxes for multi-point crossover. The number of crossover points is related to the dimension of the quantum flying fox position vector. The formula is in is the floor function;
[0038] Quantum Flying Fox Update: The quantum rotation angle update formula of the i-th quantum flying fox is in is the j-th quantum position of the quantum flying fox labeled b randomly selected from the t-th generation Pareto optimal solution set, α t Is the distance exploration factor, according to the current individual fitness and Pareto optimal solution fitness, α t The update amplitude will be automatically adjusted; α t The update formula is in is the kth fitness value of the quantum flying fox labeled b randomly selected from the tth generation Pareto optimal solution set, is the kth fitness value of the i-th quantum flying fox, c1 and c2 are constants; the j-dimensional quantum position update formula of the i-th quantum flying fox is: in is the j-th dimensional quantum position of the i-th quantum flying fox before update;
[0039] The parent generation quantum flying fox population is The offspring population is Will and Synthesize into At this time, perform Pareto non-dominated sorting and calculate the crowding distance. Arrange in ascending order according to the non-dominated level. Arrange the quantum flying foxes of the same non-dominated level in descending order according to the crowding distance. Finally, select from top to bottom. The quantum flying fox is placed into the new parent population middle.
[0040] According to another aspect of the present invention, a multi-target UAV task allocation system based on the quantum flying fox mechanism is proposed, the system comprising:
[0041] a model building module configured to establish a multi-UAV task allocation model and thereby set an objective function for the multi-objective UAV task allocation;
[0042] The optimal task allocation solution module is configured to use the objective function as the fitness function, optimize and solve the objective function using the quantum flying fox swarm algorithm, and obtain the optimal task allocation matrix; the module includes: initializing the quantum flying fox swarm; calculating the fitness function value of each quantum flying fox in the quantum flying fox swarm; using the fitness function values of all quantum flying foxes to obtain the non-dominated level and crowding distance of all quantum flying foxes; using the quantum flying fox death mechanism and the density of quantum flying foxes to update the quantum flying foxes; using the population evolution strategy of the quantum flying fox swarm to update the quantum position of the quantum flying fox swarm; judging whether the upper limit of the number of iterations is reached, terminating the iteration if it is reached, and converting the quantum position information of the quantum flying fox with the highest non-dominated level into a task allocation matrix; and continuing to update if it is not reached.
[0043] Furthermore, the objective function in the model building module is:
[0044]
[0045] In the formula, min means minimization; is the combat benefit fitness function; is the loss cost fitness function; is the time cost fitness function;
[0046]
[0047] Where N is the number of drones; M is the number of targets; A={a n,m |a n,m ∈{0,1}} N×M represents the task allocation matrix, where n=1,2,...,N,m=1,2,...,M,a n,m =1 means that the nth UAV is responsible for carrying out the combat mission against the mth enemy target, a n,m =0 means that the nth UAV is not on a combat mission against the mth enemy target; represents the probability that drone n attacks target m; P″ n,m represents the survival probability of drone n after attacking target m; V′ m represents the value of the mth goal; The maximum number of tasks to be performed by the nth UAV; S n is the total distance of the nth UAV’s mission, is the maximum range of the nth UAV; represents the moving average speed of the nth UAV; max(·) is the maximum value function; |·| is the absolute value function; χ1, χ2 and χ3 are the weight factors of the mission constraint penalty term, attack constraint penalty term and range constraint penalty term, respectively.
[0048] The beneficial technical effects of the present invention are:
[0049] The present invention establishes a multi-UAV task allocation model with the purpose of obtaining a multi-target multi-UAV task allocation scheme, providing a new method for solving practical engineering problems, and using the quantum flying fox mechanism to simplify the scheme steps and improve the stability, feasibility and effectiveness of the scheme. Specifically, based on the target fitness function of the model, the quantum flying fox swarm algorithm is used to optimize and solve the target fitness function, and the optimal quantum position of the quantum flying fox is obtained, thereby obtaining the optimal fitness value of the multi-target UAV task allocation method; wherein, the present invention simplifies the complex parameters in the original flying fox algorithm, improves the shortcomings of the flying fox algorithm that is prone to falling into local optimal solutions and cannot solve multi-target engineering problems, and compared with other schemes, the obtained non-dominated solution set can meet a wider range of allocation scenarios and expand the scope of application.
[0050] This invention combines quantum computing theory with the Flying Fox algorithm, improving upon the existing algorithm in several ways. The traditional Flying Fox algorithm employs a fuzzy self-adjustment method to avoid parameter dependence, but this method is complex and involves multiple operations and parameters, resulting in a slow convergence rate. The existing Flying Fox algorithm is also unable to solve multi-objective problems, and the UAV task allocation model has too many constraints. The quantum Flying Fox swarm algorithm of the present invention introduces a quantum revolving gate to update the quantum position of the Flying Fox by updating the quantum rotation angle, improving global search capabilities and making it easier for the Flying Fox to escape local optima. Furthermore, two generations of quantum Flying Fox swarms are merged and specially processed, ensuring that outstanding individuals that emerge during the iteration process are always retained. The quantum Flying Fox swarm algorithm of the present invention innovatively overcomes the limitations of existing quantum fox swarm algorithms in handling multi-objective tasks, enabling the generation of Pareto optimal solutions and effectively resolving the difficult problem of UAV task allocation when faced with multiple optimization objectives. Finally, the penalty term incorporated into the quantum Flying Fox swarm algorithm of the present invention simplifies the multi-constraint problem, providing more allocation options for multi-objective task allocation and promising broader application prospects. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] The present invention can be better understood by referring to the description given below in conjunction with the accompanying drawings, which together with the following detailed description are included in this specification and form a part of this specification, and are used to further illustrate the preferred embodiments of the present invention and explain the principles and advantages of the present invention.
[0052] Figure 1 This is a flowchart of a multi-target UAV task allocation method based on the quantum flying fox mechanism described in the present invention.
[0053] Figure 2 This is a schematic diagram of a multi-target UAV task allocation method based on the quantum flying fox mechanism of the present invention.
[0054] Figure 3 This is the initial position distribution map of the UAV and the target in the present invention.
[0055] Figure 4 This is a comparison chart of the Pareto optimal solution and non-dominated solution obtained by different methods in the present invention. DETAILED DESCRIPTION
[0056] In order to enable those skilled in the art to better understand the present invention, exemplary embodiments or examples of the present invention will be described below with reference to the accompanying drawings. Obviously, the described embodiments or examples are only some of the embodiments or examples of the present invention, and not all of them. Based on the embodiments or examples of the present invention, all other embodiments or examples obtained by those skilled in the art without creative work should fall within the scope of protection of the present invention.
[0057] The embodiment of the present invention proposes a multi-target UAV task allocation method based on the quantum flying fox mechanism, such as Figure 1-2 As shown, the method includes the following steps:
[0058] Step 1: Set the objective function of multi-objective UAV task allocation;
[0059] Step 2: Using the objective function as the fitness function, the objective function is optimized and solved using the quantum flying fox swarm algorithm to obtain the optimal task allocation matrix; including:
[0060] Step 21: Initialize the quantum flying fox group;
[0061] Step 22: Calculate the fitness function value of each quantum flying fox in the quantum flying fox group;
[0062] Step 2 and 3: Use the fitness function values of all quantum flying foxes to obtain the non-dominated ranks and crowding distances of all quantum flying foxes;
[0063] Step two four, the quantum flying fox is updated by using quantum flying fox death mechanism and the density of quantum flying fox;
[0064] Step two five, the quantum position of the quantum flying fox group is updated by using the population evolution strategy of the quantum flying fox group;
[0065] Step two six, it is judged whether the upper limit of iteration times is reached, if yes, the iteration is terminated, and step two seven is entered; if not, step two four is returned;
[0066] Step two seven, the quantum position information of the quantum flying fox with the highest non-dominated level is converted into a task allocation matrix.
[0067] The method starts from step one. In step one, a multi-unmanned aerial vehicle task allocation model is established, and then a target function of multi-objective unmanned aerial vehicle task allocation is set.
[0068] The specific steps are as follows: assuming that there are M targets to be attacked by unmanned aerial vehicles, there is an unmanned aerial vehicle group containing N unmanned aerial vehicles, the core of task allocation is to create a corresponding relationship table between unmanned aerial vehicles and targets, which is defined as a task allocation matrix, and the task allocation matrix is A={a n,m |a n,m ∈{0,1}} N×M , n=1, 2,..., N, m=1, 2,..., M, the element a n,m in the matrix can be defined as The optimization objectives considered by the application are three: maximizing the total value of the targets destroyed by the unmanned aerial vehicles, minimizing the loss cost of the unmanned aerial vehicles, and minimizing the task completion time.
[0069] The total value of the targets destroyed by the unmanned aerial vehicles can be expressed as Where P' n,m is the probability of the unmanned aerial vehicle n attacking the target m, the better the performance of the unmanned aerial vehicle, the greater the attack probability, P'' n,m is the survival probability of the unmanned aerial vehicle n after attacking m, the stronger the defense of the target, the smaller the survival probability, and V' m represents the value of the mth target.
[0070] The loss cost of the unmanned aerial vehicle can be expressed as 1-P'' n,m is the damage probability of the unmanned aerial vehicle attacking the target.
[0071] The maximum time cost of the unmanned aerial vehicle attacking the target is Where S n is the total flight distance of the nth unmanned aerial vehicle performing the task, is the average flight speed of the nth UAV, assuming that the time spent by the UAV on performing the mission is negligible.
[0072] In addition, the target and UAV mission should also satisfy the following constraints:
[0073] 1. Regarding the limit on the number of times a target can be attacked: Each target can only be attacked once at most.
[0074] 2. Constraints on drones: First, due to the limitation on the number of ammunition a drone can carry, each drone can only attack a limited number of targets; second, drones have limited fuel, and their attack range cannot exceed their maximum range.
[0075] Therefore, a penalty term is introduced, and the constraints are converted into penalty terms and substituted into the objective function to transform the multi-UAV task allocation model.
[0076] In general, there are N drones that need to perform tasks and the number of targets is M. The task allocation matrix between drones and targets is: A = {a n,m |a n,m ∈{0,1}} N×M , where n=1,2,...,N,m=1,2,...,M,a n,m =1 means that the nth UAV is responsible for carrying out the combat mission against the mth enemy target, a n,m =0 means that the nth drone is not on a combat mission against the mth enemy target. The multi-drone task allocation model constructed by the present invention has three objective functions and three constraints. In order to simplify the calculation, a penalty term is introduced, and the constraints are converted into penalty terms and substituted into the objective function. Among them, the target optimization involves three core aspects: the overall value of the target destroyed by the drone, the loss cost of the drone in the process of executing the mission, and the time required to complete the entire mission; the penalty terms are: penalty for exceeding the number of times the target is attacked, penalty for exceeding the number of drone attacks, and penalty for exceeding the drone's range. The multi-drone task allocation model is:
[0077]
[0078] Where N is the number of drones; M is the number of targets; A={a n,m |a n,m ∈{0,1}} N×M , represents the task allocation matrix, where n=1,2,...,N, m=1,2,...,M, a n,m =1 means that the nth UAV is responsible for carrying out the combat mission against the mth enemy target, a n,m = 0 means that the nth UAV is not on a combat mission against the mth enemy target; P′ n,mrepresents the probability that drone n attacks target m, P″ n,m represents the survival probability of drone n after attacking target m; V′ m represents the value of the mth goal, P d is the two-dimensional coordinate of the UAV base, P t is the two-dimensional coordinate of the target; the maximum moving distance of the drone is D max ; The maximum number of tasks to be performed by the nth UAV; S n is the total distance of the nth UAV’s mission, is the maximum range of the nth UAV; represents the average moving speed of the nth UAV; Assigning a model fitness function to the multi-UAV mission; is the combat benefit fitness function; is the loss cost fitness function; is the time cost fitness function; max(·) is the maximum value function; |·| is the absolute value function; χ1, χ2 and χ3 are the weight factors of the mission constraint penalty term, attack constraint penalty term and range constraint penalty term, respectively.
[0079] Then, step 2 is executed. In step 2, the objective function is used as the fitness function, and the quantum flying fox swarm algorithm is used to optimize and solve the objective function to obtain the optimal task allocation matrix.
[0080] In this step 2, first execute step 21 to initialize the quantum flying fox group.
[0081] According to an embodiment of the present invention, Figure 3 As shown in the figure, the initial task graph of UAV and task is given, based on the UAV task allocation model and Figure 3 , initialize the quantum flying fox group as follows: Set the number of individuals in the quantum flying fox group to The maximum number of iterations is T. Each dimension of the quantum position of the quantum flying fox is randomly initialized to a random number between [0,1]. The quantum position of the i-th quantum flying fox in the t-th generation is recorded as Where D represents the maximum dimension of the quantum position vector, which matches the number of targets. d=1,2,...D; the quantum position of the ith quantum flying fox in the tth generation corresponds to the position This position is mapped through Income, and are the maximum and minimum values of the d-th dimension position in the search space respectively. The fitness vector of the ith quantum flying fox in the tth generation is denoted as t is the number of iterations, initially t = 1; initialize the survival list of the replacement quantum flying foxes: randomly add the first generation of quantum flying foxes to the survival list, fill the survival list, and the size is
[0082] Then execute step 22 to calculate the fitness function value of each quantum flying fox in the quantum flying fox group.
[0083] According to an embodiment of the present invention, the calculation process is as follows: the quantum position of the ith quantum flying fox of the tth generation is Mapping to Position Then map the position of the quantum flying fox into the task allocation matrix Then the fitness function vector of the ith quantum flying fox of the tth generation is in, t=1,2,...,T。
[0084] Then execute steps two and three, and use the fitness function values of all quantum flying foxes to obtain the non-dominated ranks and crowding distances of all quantum flying foxes.
[0085] According to an embodiment of the present invention, the calculation of the non-dominated level is as follows: Non-dominated situation between quantum flying foxes: There are two quantum flying foxes in the tth generation, numbered i1 and i2 respectively. If their fitness values are related at the same time If the two quantum foxes are not equal, then quantum fox i2 is said to not dominate quantum fox i1. This means that quantum fox i2 is inferior to quantum fox i1. Otherwise, there is no domination relationship between the two quantum foxes. Based on the non-domination between quantum foxes, quantum foxes that are not dominated by any quantum fox are stored in the first level with a non-domination level of 1. Quantum foxes that are dominated by quantum foxes in the first level but not dominated by any other quantum foxes are stored in the second level with a non-domination level of 2. Similarly, the non-domination levels of all quantum foxes in generation t can be calculated.
[0086] The calculation of crowding distance is as follows: Taking the quantum flying fox in the first level as an example, assuming that there are μ quantum flying foxes in the first level of the tth generation, the fitness vector is k=1,2,...,μ, first sort the quantum flying foxes in the first level in ascending order according to the first fitness value, and then sort the crowding distance between the two boundaries and Set to infinity, the crowding distance of the first fitness function of the kth quantum flying fox for Among them, label k is the first fitness function in ascending order The corresponding unsorted labels, is the maximum fitness value of the first fitness function, is the minimum fitness value of the first fitness function, Follow the above steps to calculate the crowding distance of the second and third fitness functions and Then the total crowding distance of the kth quantum flying fox is Finally, the μ quantum flying foxes are sorted in descending order according to the crowding distance.
[0087] Then execute step 24 to update the quantum flying fox using the quantum flying fox death mechanism and the density of the quantum flying fox.
[0088] According to an embodiment of the present invention, the death mechanism of the quantum flying fox updates the quantum position of the quantum flying fox according to the density of each quantum flying fox. Density calculation of quantum flying fox: first calculate the distance between the quantum flying foxes, then set the distance threshold according to the obtained distance and the average distance of the group, and finally obtain the density according to the distance threshold and the distance between the quantum flying foxes. Suffocation: When the density of quantum flying foxes in a certain area is too large, the quantum flying fox will suffocate. According to the previously obtained density, a part of the flying foxes will be selected for suffocation and supplemented with quantum flying foxes in the survival list. The survival list is an excellent individual selected from the previous generation of quantum flying foxes, and its size is β times the number of individuals. After each iteration, the survival list is updated, the better quantum flying foxes in the current population are added to the survival list, and the redundant solutions in the list are deleted.
[0089] Then execute step 25 and use the population evolution strategy of the quantum flying fox group to update the quantum position of the quantum flying fox group.
[0090] According to an embodiment of the present invention, updating the quantum position of the quantum flying fox group includes:
[0091] Crossover: Randomly select different quantum flying foxes for multi-point crossover. The number of crossover points is related to the dimension D of the quantum flying fox position vector. in is the floor function.
[0092] The quantum flying fox update process is as follows: The quantum rotation angle update formula of the i-th quantum flying fox is in is the j-th quantum position of the quantum flying fox labeled b randomly selected from the t-th generation Pareto optimal solution set, α t Is the distance exploration factor, according to the current individual fitness and Pareto optimal solution fitness, α t The update amplitude will be automatically adjusted. t The update formula is in is the kth fitness value of the quantum flying fox labeled b randomly selected from the tth generation Pareto optimal solution set, is the kth fitness value of the ith quantum flying fox, c1 and c2 are constants. The formula for updating the jth dimension quantum position of the ith quantum flying fox is: in is the j-th dimensional quantum position of the i-th quantum flying fox before update.
[0093] The parent generation quantum flying fox population is The offspring population is Will and Synthesize into At this time, perform Pareto optimal solution non-dominated sorting and calculate the crowding distance, sort in ascending order according to the non-dominated level, and sort the quantum flying foxes of the same non-dominated level in descending order according to the crowding distance, and finally select from top to bottom. The quantum flying fox is placed into the new parent population middle.
[0094] Then execute step 26 to determine whether the upper limit of the number of iterations has been reached. If so, terminate the iteration and proceed to step 27. If not, return to step 24.
[0095] According to an embodiment of the present invention, specifically, first check whether the preset iteration upper limit T has been reached. If it has been reached, end the iteration and proceed to the next step; if it has not been reached, set t=t+1 and return to the fifth step to continue execution.
[0096] Finally, step 27 is executed to convert the quantum position information of the quantum flying fox with the highest non-dominated level, i.e., level 1, into a task allocation matrix, thereby obtaining the final task allocation plan.
[0097] According to an embodiment of the present invention, the position information of the quantum fox with the highest non-dominated level (level 1) is converted into a task allocation matrix, the quantum position of the quantum flying fox in the Pareto optimal solution set is mapped to a position, and then the position of the quantum flying fox is mapped to a task allocation matrix to obtain the final task allocation solution.
[0098] According to another embodiment of the present invention, a multi-target UAV task allocation system based on the quantum flying fox mechanism is proposed, the system comprising:
[0099] a model building module configured to set an objective function for multi-objective UAV task assignment;
[0100] The optimal task allocation solution module is configured to use the objective function as the fitness function, optimize and solve the objective function using the quantum flying fox swarm algorithm, and obtain the optimal task allocation matrix; the module includes: initializing the quantum flying fox swarm; calculating the fitness function value of each quantum flying fox in the quantum flying fox swarm; using the fitness function values of all quantum flying foxes to obtain the non-dominated level and crowding distance of all quantum flying foxes; using the quantum flying fox death mechanism and the density of quantum flying foxes to update the quantum flying foxes; using the population evolution strategy of the quantum flying fox swarm to update the quantum position of the quantum flying fox swarm; judging whether the upper limit of the number of iterations is reached, terminating the iteration if it is reached, and converting the quantum position information of the quantum flying fox with the highest non-dominated level into a task allocation matrix; and continuing to update if it is not reached.
[0101] In this embodiment, preferably, the objective function in the model building module is:
[0102]
[0103] In the formula, min means minimization; is the combat benefit fitness function; is the loss cost fitness function; is the time cost fitness function;
[0104]
[0105] Where N is the number of drones; M is the number of targets; A={a n,m |a n,m ∈{0,1}} N×M represents the task allocation matrix, where n=1,2,...,N,m=1,2,...,M,a n,m =1 means that the nth UAV is responsible for carrying out the combat mission against the mth enemy target, a n,m = 0 means that the nth UAV is not on a combat mission against the mth enemy target; P n ' ,m represents the probability that drone n attacks target m; P″ n,m represents the survival probability of drone n after attacking target m; V′ m represents the value of the mth goal; The maximum number of tasks to be performed by the nth UAV; S n is the total distance of the nth UAV’s mission, is the maximum range of the nth UAV; represents the moving average speed of the nth UAV; max(·) is the maximum value function; |·| is the absolute value function; χ1, χ2 and χ3 are the weight factors of the mission constraint penalty term, attack constraint penalty term and range constraint penalty term, respectively.
[0106] The technical effects of the present invention are further verified through experiments.
[0107] The experimental parameters are set as follows. Set the population size The proportion of flying fox suffocation p s = 0.1, maximum number of iterations T = 200, size of the survival list Where β = 0.3, the constants c1 and c2 in the distance exploration factor are 0.2 and 0.6 respectively. This paper adopts the 0-1 planning model to solve the multi-UAV task allocation problem, and the upper bound of the d-th dimension position in the search space is Nether Assume that the total number of drones is N = 8, the total number of targets to be attacked is M = 10, the success probability of a drone attacking a target is P′, the probability of a drone surviving after the attack is P″, the value of each target is V′, and the two-dimensional coordinates of the drone base are P d , the two-dimensional coordinates of the target are P t , the maximum number of tasks performed by the drone is N max , the maximum range of the UAV is S max , the average speed of the drone is The parameters are as follows:
[0108]
[0109] V′=[1.1 2.0 1.5 1.3 1.4 1.3 1.5 1.5 1.7 1.6] 1×10
[0110]
[0111] N max =[2 3 3 2 3 2 4 5] 1×8
[0112] S max =[3 2 4 3 2.6 3.7 4.5 2.4] 1×8
[0113]
[0114] Table 1 is the multi-target UAV task allocation scheme finally obtained by the present invention. In Table 1, U1 to U8 represent the UAV numbers, T1 to T 10 represents the mission number, objective functions 1, 2, and 3 represent the drone attack benefit, drone loss, and mission completion time, respectively. Objective function 1 is the minimum optimization target obtained by the inverse operation.
[0115] As can be seen from Table 1, Table 1 shows three complete task allocation results, the three task allocation schemes are all converted from Pareto optimal solutions, and in the case of simultaneously considering three optimization objectives, the task allocation scheme obtained by the application meets the requirements of multi-objective optimization solution, and effectively solves the problem of multi-objective multi-unmanned aerial vehicle task allocation.
[0116] Table 1
[0117]
[0118] As Figure 4 shown, the Pareto front diagram obtained by different methods is given, compared with the multiple object particle swarm optimization (MOPSO) method and the population diversity-based particle swarm optimization (PDPSO) method, the results show that the MOFFO method proposed in the application has better convergence of the Pareto optimal solution front end solution, more uniform distribution and better performance.
[0119] Although the application has been described in terms of limited embodiments, those skilled in the art, with the benefit of the above description, will appreciate that other embodiments are possible within the scope of the application described herein. The disclosure of the application is illustrative rather than restrictive, and the scope of the application is defined by the appended claims.
Claims
1. A multi-target UAV task allocation method based on quantum flying fox mechanism, characterized in that: The following steps are involved: Step 1: Establish a multi-UAV task allocation model, and then set the objective function of multi-objective UAV task allocation; the objective function in step 1 is: In the formula, min means minimization; is the combat benefit fitness function; is the loss cost fitness function; is the time cost fitness function; Where N is the number of drones; M is the number of targets; A={a n,m |a n,m ∈{0,1}} N×M represents the task allocation matrix, where n=1,2,...,N,m=1,2,...,M,a n,m =1 means that the nth UAV is responsible for carrying out the combat mission against the mth enemy target, a n,m = 0 means that the nth UAV is not on a combat mission against the mth enemy target; P′ n,m represents the probability that drone n attacks target m; P″ n,m represents the survival probability of drone n after attacking target m; V′ m represents the value of the mth goal; The maximum number of tasks to be performed by the nth UAV; S n is the total distance of the nth UAV’s mission, is the maximum range of the nth UAV; represents the moving average speed of the nth UAV; max(·) is the maximum value function; |·| is the absolute value function; χ1, χ2 and χ3 are the weight factors of the mission constraint penalty term, attack constraint penalty term and range constraint penalty term, respectively; Step 2: Using the objective function as the fitness function, the objective function is optimized and solved using the quantum flying fox swarm algorithm to obtain the optimal task allocation matrix; including: Step 2.1: Initialize the quantum flying fox group; including: setting the number of individuals in the quantum flying fox group to The maximum number of iterations is T. Each dimension of the quantum position of the quantum flying fox is randomly initialized to a random number between [0,1]. The quantum position of the i-th quantum flying fox in the t-th generation is recorded as where D represents the maximum dimension of the quantum position vector, which matches the target number, d=1,2,...D; the quantum position of the ith quantum flying fox in the tth generation corresponds to the position This position is mapped by Income, and are the maximum and minimum values of the d-th dimension position in the search space respectively; the fitness vector of the ith quantum flying fox in the t-th generation is recorded as t is the number of iterations; initialize the survival list of the replacement quantum flying fox: randomly add the first generation quantum flying fox to the survival list, fill the survival list, and the size is Where β is a constant; Step 22: Calculate the fitness function value of each quantum flying fox in the quantum flying fox group; including: converting the quantum position of the ith quantum flying fox of the tth generation Mapping to Position Then map the position of the quantum flying fox into a task allocation matrix Then the fitness function vector of the ith quantum flying fox of the tth generation is: in, t=1,2,...,T; Step 2 and 3: Use the fitness function values of all quantum flying foxes to obtain the non-dominated ranks and crowding distances of all quantum flying foxes; Step 24: Update the quantum flying fox using the quantum flying fox death mechanism and the density of the quantum flying fox; Step 25: Use the population evolution strategy of the quantum flying fox group to update the quantum position of the quantum flying fox group; Step 26: Determine whether the upper limit of the number of iterations has been reached. If so, terminate the iteration and proceed to step 27; if not, return to step 24. Step 27: Convert the quantum position information of the quantum flying fox with the highest non-dominated level into a task allocation matrix.
2. A multi-target UAV task allocation method based on the quantum flying fox mechanism according to claim 1, characterized in that: The process of steps two and three includes: Calculate the non-dominated level: judge the dominance relationship between quantum flying foxes, the dominance relationship includes the non-dominated situation between quantum flying foxes and the non-dominated relationship between two quantum flying foxes; the calculation process of the non-dominated situation between quantum flying foxes includes: there are two quantum flying foxes in the tth generation, numbered i1 and i2 respectively, if the fitness values of the two quantum flying foxes have the relationship including and If the equal signs are not taken at the same time, then quantum flying fox i2 is said to be non-dominated by quantum flying fox i1, that is, quantum flying fox i2 is inferior to quantum flying fox i1; the calculation process of the two quantum flying foxes having no domination relationship includes: according to the non-domination situation between the quantum flying foxes, the quantum flying fox that is not dominated by any quantum flying fox is stored in the first level, and the non-domination level is 1; the quantum flying fox that is dominated by the quantum flying fox in the first level and not dominated by any other quantum flying fox is stored in the second level, and the non-domination level is 2, and the calculation is continued until the non-domination level of all quantum flying foxes in the tth generation is obtained; Calculate the crowding distance by target fitness function: First, suppose there are μ quantum flying foxes in the first level of the tth generation of quantum flying foxes, and the fitness vector is k=1,2,...,μ, sort the quantum flying foxes in the first level in ascending order according to the first fitness value, and the crowding distance between the two boundaries after sorting and Set to infinity, the crowding distance of the first fitness function of the kth quantum flying fox is: Among them, k is the number of fitness functions sorted in ascending order. The corresponding unsorted labels, is the maximum fitness value of the first fitness function, is the minimum fitness value of the first fitness function, Then, calculate the crowding distance of the second and third fitness functions and Then the total crowding distance of the kth quantum flying fox is Finally, the μ quantum flying foxes are sorted in descending order according to the crowding distance.
3. A multi-target UAV task allocation method based on quantum flying fox mechanism according to claim 2, characterized in that: The process of step 24 includes: Density calculation of quantum flying foxes: taking the quantum position of the quantum flying fox and the target fitness function as input, first calculate the distance between the quantum flying foxes, then set the distance threshold according to the distance between the quantum flying foxes and the average distance of the group, and finally obtain the density according to the distance threshold and the distance between the quantum flying foxes; According to the density of the quantum flying foxes, some suffocated quantum flying foxes are selected and supplemented with quantum flying foxes in the survival list; the survival list is an excellent individual selected from the previous generation of quantum flying foxes, and its size is approximately β times the number of groups. After each iteration, the better quantum flying foxes in the current population are added to the survival list, and the redundant solutions in the list are deleted.
4. A multi-target UAV task allocation method based on quantum flying fox mechanism according to claim 3, characterized in that: The process of step 25 is: Crossover: Exclude quantum flying foxes with a non-dominated level of 1 and randomly select different quantum flying foxes for multi-point crossover. The number of crossover points is related to the dimension of the quantum flying fox position vector. The formula is in is the floor function; Quantum Flying Fox Update: The quantum rotation angle update formula of the i-th quantum flying fox is in is the j-th quantum position of the quantum flying fox labeled b randomly selected from the t-th generation Pareto optimal solution set, α t Is the distance exploration factor, according to the current individual fitness and Pareto optimal solution fitness, α t The update amplitude will be automatically adjusted; α t The update formula is in is the kth fitness value of the quantum flying fox labeled b randomly selected from the tth generation Pareto optimal solution set, is the kth fitness value of the i-th quantum flying fox, c1 and c2 are constants; the j-dimensional quantum position update formula of the i-th quantum flying fox is: in is the j-th dimensional quantum position of the i-th quantum flying fox before update; The parent generation quantum flying fox population is The offspring population is Will and Synthesize into At this time, perform Pareto non-dominated sorting and calculate the crowding distance. Arrange in ascending order according to the non-dominated level. Arrange the quantum flying foxes of the same non-dominated level in descending order according to the crowding distance. Finally, select from top to bottom. Only quantum flying foxes are placed into the new parent population middle.
5. A multi-target UAV task allocation system based on the quantum flying fox mechanism, characterized in that: include: The model building module is configured to establish a multi-UAV task allocation model and then set an objective function for multi-objective UAV task allocation; the objective function is: In the formula, min means minimization; is the combat benefit fitness function; is the loss cost fitness function; is the time cost fitness function; Where N is the number of drones; M is the number of targets; A={a n,m |a n,m ∈{0,1}} N×M represents the task allocation matrix, where n=1,2,...,N,m=1,2,...,M,a n,m =1 means that the nth UAV is responsible for carrying out the combat mission against the mth enemy target, a n,m = 0 means that the nth UAV is not on a combat mission against the mth enemy target; P′ n,m represents the probability that drone n attacks target m; P″ n,m represents the survival probability of drone n after attacking target m; V′ m represents the value of the mth goal; The maximum number of tasks to be performed by the nth UAV; S n is the total distance of the nth UAV’s mission, is the maximum range of the nth UAV; represents the moving average speed of the nth UAV; max(·) is the maximum value function; |·| is the absolute value function; χ1, χ2 and χ3 are the weight factors of the mission constraint penalty term, attack constraint penalty term and range constraint penalty term, respectively; The optimal task allocation solution module is configured to use the objective function as a fitness function and optimize the objective function using the quantum flying fox swarm algorithm to obtain an optimal task allocation matrix; including: Initialize the quantum flying fox group, including: setting the number of individuals in the quantum flying fox group to The maximum number of iterations is T. Each dimension of the quantum position of the quantum flying fox is randomly initialized to a random number between [0,1]. The quantum position of the i-th quantum flying fox in the t-th generation is recorded as where D represents the maximum dimension of the quantum position vector, which matches the target number, d=1,2,...D; the quantum position of the ith quantum flying fox in the tth generation corresponds to the position This position is mapped by Income, and are the maximum and minimum values of the d-th dimension position in the search space respectively; the fitness vector of the ith quantum flying fox in the t-th generation is recorded as t is the number of iterations; initialize the survival list of the replacement quantum flying fox: randomly add the first generation quantum flying fox to the survival list, fill the survival list, and the size is Where β is a constant; Calculate the fitness function value of each quantum flying fox in the quantum flying fox group, including: the quantum position of the ith quantum flying fox of the tth generation Mapping to Position Then map the position of the quantum flying fox into the task allocation matrix Then the fitness function vector of the ith quantum flying fox of the tth generation is: in, t=1,2,...,T; The non-dominated ranks and crowding distances of all quantum flying foxes are obtained using the fitness function values of all quantum flying foxes. Update the Quantum Flying Fox using the Quantum Flying Fox death mechanism and the density of the Quantum Flying Fox; Use the population evolution strategy of the quantum flying fox group to update the quantum position of the quantum flying fox group; Determine whether the upper limit of the number of iterations has been reached. If so, terminate the iteration and convert the quantum position information of the quantum flying fox with the highest non-dominated level into a task allocation matrix; if not, continue updating.
Citation Information
Patent Citations
Multi-objective quantum-behaved particle swarm algorithm-based unmanned aerial vehicle cooperative task distribution method
CN107045458A
Underwater robot global path planning method based on interval multi-objective optimization
CN113985899A