Content uploaded by Xinwei Wang
Author content
All content in this area was uploaded by Xinwei Wang on Nov 22, 2023
Content may be subject to copyright.
Conditional probability based multi-objective cooperative task
assignment for heterogeneous UAVs
Xiaohua Gaoa, Lei Wanga, Xinyong Yua, Xichao Sub, Yu Dingc,d,e , Chen Luc,d,e, Haijun
Pengf, Xinwei Wangf,∗
aSchool of Mathematical Science, Dalian University of Technology, Dalian, Liaoning 116024, China.
bDepartment of Airborne Vehicle Engineering, Naval Aeronautical and Astronautical University, Yantai
264001, China.
cScience and Technology on Reliability and Environmental Engineering Laboratory, Beijing 100191, China.
dInstitute of Reliability Engineering, Beihang University, Beijing 100191, China.
eSchool of Reliability and Systems Engineering, Beihang University, Beijing 100191, China.
fDepartment of Engineering Mechanics, State Key Laboratory of Structural Analysis for Industrial
Equipment, Dalian University of Technology, Dalian, Liaoning 116024, China.
Abstract
In actual air combat, there is an inevitable risk that an unmanned aerial vehicle (UAV) will be
destroyed. However, this risk is rarely considered in the mission planning phase. In this paper,
we focus on cooperative mission assignment for heterogeneous UAVs. We develop a multi-objective
optimization model to find a balance between mission gains and UAV losses. The objective function
is expressed using conditional probability theory by introducing the probabilities of mission success
and UAV loss. Munitions loading capacity, time constraints, and priority constraints are modeled
as constraints. To solve this combinatorial problem, an improved multi-objective genetic algorithm,
which incorporates a natural chromosome encoding format and specially designed genetic operators,
is developed. An efficient unlocking method is constructed to address the unavoidable dead-lock
phenomenon meanwhile maintaining the population randomness. Numerical simulations for different
problem sizes and ammunition stocks are performed, and the proposed algorithm is compared with
the Multi-objective Particle Swarm Optimization and the Multi-objective Grey Wolf Optimization,
respectively, using different unlocking approaches. The simulation and comparison results demonstrate
the practical value and effectiveness of the developed model and the proposed algorithm.
Keywords: unmanned aerial vehicle; cooperative task assignment; multi-objective
optimization; genetic algorithm.
1. Introduction
1.1. Background and motivations
UAVs have the advantage of significantly reducing cost and risk to human lives, and
they are ideal for performing dangerous and tedious tasks (Bethke et al.,2008). Nowadays,
UAVs are widely used in various fields, such as disaster area inspection (Song et al.,2022),
power lines inspection (Korki et al.,2019), aerial surveillance (Coombes et al.,2017), targets
∗Corresponding author E-mail: wangxinwei@dlut.edu.cn
surveillance (Gu et al.,2018). To improve the task completion efficiency, compared with a
single UAV, multiple UAV systems or UAV swarms are generally used due to their superiority
in redundancy, compatibility and scalability (Zhen et al.,2018;Tahir et al.,2019). There are
many decision problems in various fields in the real world, and it is meaningful to investigate
models and methods with risk and uncertainty environments (Deng et al.,2022a,2022b;Wang
et al.,2022;Wang et al.,2022,2023). For a multiple UAV system, path planning (Chen et al.,
2021a,2021b) and task assignment (Zhao et al.,2021) are two important research directions,
and the key to improve the efficiency of task execution is to obtain a task assignment scheme
based on task decisions to optimize a certain objective or multiple objectives, provided that
the constraints are satisfied.
The motivation for this paper consists of two main aspects: i) to construct a multi-
objective optimization model capable of measuring the risk of UAV destruction and various
resource constraints for the cooperative multi-task assignment problem (MOCTAP); and ii)
to propose an evolutionary algorithm with efficient unlocking capability to avoid deadlock
situations. Although many models and algorithms for cooperative task assignment problems
(CTAP) have been developed, there is still a need to further improve the accuracy of modeling
and the applicability of multi-UAV MOCTAP in order to adapt to the increasingly complex
battlefield environment. On the one hand, in order to reduce the complexity of the models and
the computational difficulty of the algorithms, existing studies have formulated the problem
with appropriate assumptions at the mission, UAV, and munitions levels, such as the UAV
must be able to complete the mission and survive, the munitions must be sufficient, and so
on. However, these assumptions lead to an idealized model that is hardly representative of
CTAP in real battlefield environments. On the other hand, for infeasible individuals that
violate priority constraints (i.e., deadlock phenomenon), current research usually adopts a
stochastic-based unlocking approach, which has the disadvantage of consuming significant
runtime and is computationally inefficient, especially when dealing with large-scale problems.
Improving the practicality of the MOCTAP model as well as the efficiency and applicability
of the algorithm for multiple UAV systems is the main work of this paper.
1.2. Related work
1.2.1. Model and algorithm for CTAP
In recent years, CTAP for UAVs has attracted a lot of attention, where the main focus
is on optimization model formulation and algorithm design (Zhang et al.,2018;Issac et al.,
2020). CTAP is essentially a combinatorial optimization problem, and the classical basic mod-
els include the traveling salesman problem (TSP) (Dantzig et al.,1954), the vehicle routing
problem (VRP) (Laporte,1992), and the generalized assignment problem (GAP) (Cattrysse
and Van Wassenhove,1992). As the size of the CTAP increases, the established optimiza-
tion model comes with more design variables and constraints. Under such circumstances,
deterministic algorithms(e.g., Branch and Bound algorithm (Rasmussen and Shima,2006),
dynamic programming (Alighanbari et al.,2005) usually do not perform well in terms of com-
putational efficiency, or even find reasonable solutions. Compared to deterministic algorithms,
2
heuristics show great potential in terms of efficiency and robustness for complex CTAPs, and
common approaches include particle swarm optimization (PSO) and its variants (Sujit et al.,
2008;Zeng et al.,2022), ant colony optimization (ACO) and its variants (Fei et al.,2008),
and genetic algorithm (GA) and its variants (Darrah et al.,2006), etc.
1.2.2. Single-objective optimization for CTAP with multiple UAVs
Early investigations on CTAP for multiple UAVs mainly focus on homogeneous UAV
systems. For the multi-UAV reconnaissance task assignment problem, Wang et al. (2018)
proposed a model and an opposition-based genetic algorithm involving double-chromosomes
encoding and multiple mutation operators. Velhal and Sundaram (2020) formulated the re-
stricted airspace protection as a multi-UAV spatio-temporal task assignment problem and
proposed a modified consensus-based bundled auction method. Considering the limitation of
the total flight distance of UAVs, Wang et al. (2020) established a model with the total weight-
ed cost of target value and distance cost as the objective, and presented an improved genetic
algorithm based on the beetle antennae search algorithm. As modern aerial warfare becomes
complex in both the spatial and temporal dimension, a group of heterogeneous UAVs fre-
quently constitute a fleet to complete a series missions. Research under such a heterogeneous
framework becomes the mainstream in the last two decades. For example, Ye et al. (2021)
proposed a modified consensus-based bundle algorithm with task coupling constraints for C-
TAP. And in (Ye et al.,2020), they further developed an adaptive GA for the suppression of
enemy air defense (SEAD) mission. Afghah et al. (2018) established a leader-follower coalition
formation model for CTAP in heterogeneous UAV networks, and proposed a reputation-based
mechanism to monitor the cooperative behavior of UAVs. Taking the effective task execution
scope and the task priority into consideration, Fan et al. (2021) proposed a comprehensive
solution framework that integrates obstacle-avoidance distance estimation, crossover-based
updating and search intensity adaptive mechanism. Ye et al. (2020) developed a improved
genetic algorithm that includes multi-type-gene chromosome encoding strategy for CTAP.
Zhen et al. (2020) developed an intelligent cooperative mission planning scheme based on a
hybrid artificial potential field and ant colony optimization method.
1.2.3. Multi-objective optimization for CTAP with multiple UAVs
It should be noted that researches mentioned above are developed under the framework of
single-objective optimization. In practical aerial warfare, commanders always expect to max-
imize the benefit with minimum loss. The multi-objective optimization framework, which has
been used in many different domains, provides a feasible technique to take these two conflict-
ing objectives into account simultaneously (Li et al.,2019;Zeng et al.,2021;Li et al.,2022).
Atencia et al. (2019) proposed a novel weighted random generator for the formation of new
individuals, which was used to reduce the convergence rate of the multi-objective evolution-
ary algorithm (MOEA) solver. Chen et al. (2019) studied the multi-objective optimization
for the reconnaissance task assignment problem and developed a modified Multi-Objective
Symbiotic Organisms Search algorithm. Wang et al. (2020) considered a high-dimensional
3
multi-objective optimization problem containing four objectives, and described an improved
multi-objective quantum-behaved particle swarm optimization algorithm. Cheng et al. (2020)
constructed a heuristic algorithm based on the task assignment, non-dominated sort steps and
differential evolution-aided for the multi-objective optimization problem.
However, ammunition shortage scenarios, risk of UAV destruction, and mission incomple-
tion are rarely considered by studies of multi-UAV CTAP. The constructed algorithms are also
not directly applicable to solve multi-UAV CTAP for various ammunition scenarios. More-
over, the inefficiency of the current unlocking methods when the problem size is large and the
chromosome dimension is high will directly affect the optimization process of the algorithms.
Therefore, it is imperative to develop a risk-based model and design a multi-objective opti-
mization algorithm for CTAP suitable for the multiple munitions case, which also needs to
be able to unlock chromosomes efficiently in large-scale problems.
1.3. Contributions
In this paper, the MOCTAP is investigated with heterogeneous UAVs (i.e., surveillance
UAV, combat UAV and munition UAV) and multiple task types (i.e., classification task,
attack task and verification task). The task assignment model may become idealized if the
task assignment ignores the actual risks, i.e., the risk of the UAV being destroyed, the risk
of the task not being completed. Considering them would result in a more practical task
assignment strategy than ignoring the risks in the model. The most important innovations in
this paper are the construction of a multi-objective optimization model for cooperative multi-
UAV task assignment based on various risks and the design of a multi-objective optimization
algorithm that includes a fast-unlocking method. The details are as follows.
First, to address the risk of UAV destruction and mission non-completion, a risk-based
optimization model framework for MOCTAP based on conditional probability theory is de-
veloped by comprehensively considering various risks. Maximizing the value of the attack
target and minimizing the value of the UAV being destroyed are taken as objectives. Ammu-
nition, time, and coordination constraints are all considered as constraints in the optimization
problem.
Second, to solve this problem, we propose an improved genetic algorithm (MOCTAP-
GA) based on the fast non-dominated sorting approach and an elite retention strategy. A
chromosome encoding format that only considers the assignment task is used, which reduces
the size of each chromosome. Compared with the encoding method that includes all tasks, this
encoding method can improve the computational efficiency of the algorithm. The specially
designed genetic operator can handle both ammunition sufficient and ammunition insufficient
cases. This solves the shortcomings of a single crossover operator and a single mutation
operator.
Finally, a Fast Positioning Unlocking Method (FPUM) is proposed to handle deadlock
chromosomes. This method combines two stages of judging and unlocking chromosomes and
is able to unlock chromosomes exactly at the locking point to achieve an efficient unlocking
4
process and maintain the randomness of the population. The high unlocking efficiency of
FPUM improves the efficiency of the constructed optimization algorithm.
1.4. Organization
The remainder of the paper is organized as follows. Section 2 describes the CTAP for
heterogeneous UAVs. Section 3 gives the multi-objective optimization model of CTAP. Section
4 provides the multi-objective optimization strategy and the unlocking method. The numerical
examples are given in Section 5. Finally, Section 6 concludes the paper.
2. Description of the UAV cooperative task assignment problem
For convenience, let In:= {1,2,· · · , n},n∈N+.
2.1. Enemy targets
Suppose that there are NTtargets on the battlefield, and we denote the target set as
T={T1, T2,· · · , TNT},
where Tj(j∈INT) represents the j-th targets. Each target includes three types of indispens-
able tasks: classification task, attack task, and verification task, which are abbreviated as C,
A and V, respectively. The set of task type is denoted as
Stypes ={C, A, V }.
Targets with high values generally result in significant risks, whereas targets with low values
typically result in low risks. In this paper, we make the assumption that the attack numbers on
low-value and high-value targets, respectively, are 1 and 2, in order to increase the successful
strike rate. Let V alueTj(j∈INT) represents the value of Tj∈T.
Hence, the task set of Tj∈T(j∈INT) is denoted as follows.
MTj=({C, A1, V },if Tjis a low-value target,
{C, A1, A2, V },otherwise,
where A1and A2represent the first and the second (if necessary) attack on Tj. A target
is successfully executed only if all its tasks have been completed. Suppose that there are L
(L≤NT) high-value targets in T, then the total number of tasks Nall is 3NT+L.
As shown in Fig. 1, classification task, attact task(s) and verification task for each target
are executed successively. Let timeC
Tj,timeA1
Tj,timeA2
Tjand timeV
Tjrepresent the execution
C A1V
CA1A2V
(a) Low-value targets (b) High-value targets
Fig. 1. Order of execution of tasks
time instants of C,A1,A2and Vof Tj, respectively; and let 4tC
Tj,4tA1
Tj,4tA2
Tjand 4tV
Tj
represent the time durations required to perform C,A1,A2and Vof Tj, respectively.
5
Table 1. The capabilities of heterogeneous UAVs
Types of UAVs Symbol Types of tasks that can be performed
Surveillance UAV s C, V
Combat UAV c C, A, V
Munition UAV m A
2.2. Heterogeneous UAVs
Suppose that the UAV fleet consists of NUUAVs. The set of UAVs is defined as
U={U1, U2,· · · , UNU},
where Uirepresents the i-th UAV. Surveillance, combat and munition UAVs are included in
the UAV fleet. For each type of UAV, its abbreviation and abilities are listed in Table 1.
The task set of Ui(i∈INU) is denoted as MUi,
MUi={taskUi
1, taskUi
2,· · · , taskUi
NUi},
where NUiis the number of tasks for Uiand taskUi
l(l∈INUi) represent the l-th task performed
by Ui.
The value of Ui(i∈INT) is denoted as V alueUi. Different UAVs have different probabil-
ities of success and survival when performing tasks to different targets. Let SV k
ij (i∈INU,
j∈INT,k∈I3) represents the probability that Tjis destroyed by Uiwith task type k,
and k= 1,2,3 represent the task type of C,Aand V, respectively. Let KI k
ij denotes the
probability of Uibeing destroyed when Uiperforms the task type kfor Tj. If Uiis of type
s, then it cannot complete the attack task; if Uiis type of m, then it can only complete the
attack task. Consequently, we can make the following natural assumption. If the type of Uiis
s, then SV 2
ij =KI2
ij = 0, and while the type of Uiis m, then SV 1
ij =SV 3
ij =KI1
ij =KI3
ij = 0,
j∈INT.
3. Establishment of the multi-objective optimization model
3.1. Connected digraph
To represent the order in which the UAVs perform their tasks, a connected graph (Jia et
al.,2018) is introduced to reflect the execution of the UAV from the current task to the next
task. Let the set of vertices be defined as V={T1, T2,· · · , TNT}. And the set of edges be
defined as E={(Vm, Vn)|Vm∈V, Vn∈V, m 6=n}. Then the connected digraph can be
given as G= (V, E).
3.2. Objective functions
A task assignment plan with small losses and large profits is expected. Therefore, the
maximization of expectation of the profits and the minimization of expectation of the costs
are used as indicators to measure the task assignment plan. Since the UAV can continue to
perform the next task only if it is not destroyed, conditional probabilities are used in the
6
modeling. Only the following two conditions are satisfied, taskUi
j(i∈INU,j∈INUi) can be
executed.
1) The tasks before taskUi
jin the target set corresponding to taskUi
jhave been completed;
2) The taskUi
1,taskUi
2,· · · ,taskUi
j−1in task set MUihave been completed.
Two expectations are considered in the construction of the objective function, namely the
expectation of the value of the completed targets and the expectation of the value of the
destroyed UAVs. The specific formulations are as follows.
(i) Maximizing the expectation of the value of the destroyed targets:
max J1:=
NT
X
j=1
NU
Y
i=1 n
NUi
Y
l=1 h(1 −KIiai
l)SViai
liIFioV alueTj,(1)
(ii) Minimizing the expectation of the value of the destroyed UAVs:
min J2:=
NU
X
i=1 hV alueUi−
NUi
Y
l=1
(1 −KIiai
l)V alueUii,(2)
where ai
l(l∈INUi,i∈INU) represents the target number of the l-th task in MUi, and
Xi,k
(Vai
l−1
,Vj)∈ {0,1}is introduced to represent whether Uiflies from Tai
l−1to Tjto perform
task type kfor Tjor not. Thus, ai
l:=
NT
P
j=1
3
P
k=1
jXi,k
(Vai
l−1
,Vj), l ∈INUi, i ∈INU.
For convenience, we let ai
0:= 0. And Viai
l,KIiai
l,KIiai
lare given as follows,
SViai
l:=
SV k
iai
l
, if Xi,k
(Vai
l−1
,Vai
l
)= 1, k ∈I3, ai
l=j,
1, else,
and
KIiai
l:=
KIk
iai
l
, if Xi,k
(Vai
l−1
,Vai
l
)= 1, k ∈I3,
0, else,
and
IFi:=
NUi
Q
l=1
1/(1 −KIiai
l), if ai
l6=j, ∀l∈INUi,
NUi
Q
m=˜
l
1/(1 −KIiai
m),˜
l= max{l|ai
l=j, l ∈INUi}, else.
(iii) Minimizing the the expectation of the value of the undestroyed targets:
min J3:=
NT
X
j=1
V alueTj−J1.(3)
Let f= (f1, f2)>, where f1=J3and f2=J2. Then the objective function is to minimize
the vector function f.
7
3.3. Constraints
The following constraints are taken into account in CTAP based on the characteristics of
CTAP and the analysis mentioned above.
(1) Ammunition constraints
The number of the task type Aassigned to UAVs cannot exceed the ammunition capacity
of the UAVs. And the number for type Cand Vperformed by a UAV is not limited by the
UAV itself.
NUi
X
l=1
NT
X
jl=1
Xi,2
(Vai
l−1
,Vjl)≤AMi,∀i∈INU,(4)
where AMirepresents the ammunition capacity of Ui. If the type of a UAV is s, then its
ammunition capacity is recorded as 0.
(2) Coordination constraints
In order to shorten the dwell time of the same UAV at a location and reduce the risk
of UAV being discovered and destroyed, we assume that the number of attacks on the same
target by the same UAV does not exceed one, that is,
NUi
X
l=1
Xi,2
(Vai
l−1
,Vjl)≤1,∀jl∈INT.(5)
Therefore, attack tasks for high-value target will be assigned to different UAVs.
(3) Task timing constraints
The tasks for each target need to be executed in order. For tasks of the same target, task
Acan only be executed after task Cis completed, and task Vcan only be executed after task
Ais completed. Therefore, the task assignment needs to satisfy the following constraints,
timeC
Tj+4tC
Tj< timeA
Tj, timeA
Tj+4tA
Tj< timeV
Tj,∀j∈INT,(6)
where 4tA
Tj= max{4tA1
Tj,4tA2
Tj}when Tjis a high-value target, otherwise, 4tA
Tj=4tA1
Tj.
(4) UAV execution timing constraints
For a certain UAV, it needs to follow the task sequence in its task set. For example,
taskUi
j∈MUi(j∈INUi,i∈INU) can only be executed after the previous task taskUi
j−1∈MUi
has been completed. Therefore, the following constraints need to be considered,
timej
Ui< timej+1
Ui,∀j∈INUi−1,∀i∈INU,(7)
where timej
Uirepresents the execution time instant of taskUi
j∈MUi.
3.4. Multi-objective optimization model
Based on the above description, the MOCTAP is to find task assignment plans to minimize
the objective function funder the certain constraints (4)-(7).
(MOCTAP) min f= (f1, f2)>
s.t. (4)−(7).(8)
8
4. Multi-objective optimization algorithm of MOCTAP
Among MOEAs, the non-dominated sorting genetic algorithm II (NSGA-II) is widely used
due to its advantages of the fast non-dominated sorting approach and the elite-preserving
strategy (Deb et al.,2002). In this section, we modify the chromosome encoding format
and genetic operators and propose an efficient unlocking method to deal with the deadlock
chromosomes.
4.1. Chromosome encoding
Considering the heterogeneous UAVs and various types of tasks in MOCTAP, the chro-
mosome needs to contain the assignment information of UAVs, targets and tasks. At the
same time, information about unassigned targets and UAVs is not expected to be included in
the chromosome to reduce the chromosome dimension. However, the chromosome encoding
methods in the traditional GA cannot achieve these requirements, such as binary encoding
method, decimal encoding method and real number encoding method, etc.
The encoding of chromosomes is achieved by constructing genes and combining all genes.
Each gene fragment consists of three parts: target number, task type, and UAV number. All
generated genes are synthesized into a complete chromosome, as shown in Fig. 2. The genes of
each chromosome are generated sequentially, and the UAVs perform the corresponding tasks
based on the order in which the genes are generated. The dimension of the chromosome is
not fixed, it depends on the number of tasks assigned. The dimension, denoted by DIM, is
calculated as follows,
DIM =
3NT+L, if all tasks are assigned,
3
NU
P
i=1
AMi−2h, else, (9)
where h(0 < h ≤L≤[b/2]) represents the number of high-value targets assigned, and b
represents the total number of ammunition.
Ti2
C/A/V
Uj2
Ti1
C/A/V
Uj1
Ti3
C/A/V
Uj3
Ti
C/A/V
Uj
Target number
Type of task
UAV number
Gene
Gene Gene Gene
Chromosome
Fig. 2. The chromosome encoding method
For calculation purposes, all genes of the chromosome need to be grouped and sorted
according to the UAV number. This process is illustrated with an example where tasks are
all assigned. Suppose there are 4 UAVs and 4 targets, and the specific information of UAVs
9
and targets is shown in Table 2and Table 3. A chromosome that satisfies constraints (4)-(7)
is shown in Fig. 3. Based on (9), the dimension of the chromosome is 14.
Table 2. The information of UAVs
UAVs Types Ammunition UAVs Types Ammunition
U1s0U3c2
U2c2U4m4
Table 3. The information of targets
Targets Task sets Targets Task sets
T1{C, A1, V }T3{C, A1, A2, V }
T2{C, A1, V }T4{C, A1, A2, V }
T3
C
U3
T3
A1
U4
T3
A2
U2
T3
V
U1
T2
C
U2
T2
A1
U2
T2
V
U3
T4
C
U1
T4
A1
U3
T4
A2
U4
T4
V
U2
T1
C
U1
T1
A1
U4
T1
V
U3
Gene1 Gene2 Gene3 Gene4 Gene5 Gene6 Gene7 Gene8 Gene9 Gene10 Gene11 Gene12 Gene13 Gene14
Fig. 3. A chromosome in the population
In Fig. 3, it is not quite readily apparent what specific tasks each UAV accomplished.
Therefore, based on the tasks accomplished by each UAV, the genes of the chromosome are
regrouped and reordered in Fig. 4. The task sets of U1,U2,U3and U4are as follows,
MU1={TV
3, T C
4, T C
1}, MU2={TA2
3, T C
2, T A1
2, T V
4},
MU3={TC
3, T V
2, T A1
4, T V
1}, MU4={TA1
3, T A2
4, T A1
1}.
In order to ensure randomness, the targets and UAVs are randomly selected in the chromosome
encoding. The specific process is shown in Algorithm 1.
4.2. Crossover operator
The crossover operator play an important role in GA for generating the offspring popu-
lation. Some difficulties lead to the fact that the traditional crossover operators cannot be
applied to MOCTAP. For example, 1) the selection of the crossover point will be problematic
if the crossover parents have different chromosome dimensions; 2) the same task of the same
target in the chromosomes of the crossover offspring is performed multiple times, etc.
According to Eq. (9), the chromosome dimension is related to the number of ammunition
and the number of attack tasks, so the crossover operators are constructed according to the
relationship between these two factors. The probability of crossover is denoted by Pc. Let F1
and F2respectively denote the two parents of the crossover operation, and RMidenotes the
10
T3
C
U3
T3
A1
U4
T3
A2
U2
T3
V
U1
T2
C
U2
T2
A1
U2
T2
V
U3
T4
C
U1
T4
A1
U3
T4
A2
U4
T4
V
U2
T1
C
U1
T1
A1
U4
T1
V
U3
Subchromosome1 Subchromosome2 Subchromosome3 Subchromosome4
Chromosome
Fig. 4. New form of chromosome
Algorithm 1: Chromosome encoding process
Input:Am,T S,AU ,C V U(the ammunition of the UAVs, the set of discovered targets, the set of
UAVs of type cand m, and the set of UAVs of type sand c)
Output: Chromosome
1Chromosome ←initialize() {Initially empty archive};
2Randomly select a target from T S;
3while length[T S]6=0 and Am 6=0 do
4Randomly select a UAV from CV U, and let Gene ←[T arg et,C,UAV ];
5Chromosome ←Chromosome ∪Gene;
6Randomly select a UAV from AU , and let Gene ←[T arg et,A1,UAV ];
7Chromosome ←Chromosome ∪Gene;
8Am[UAV ]←Am[U AV ]-1;
9if Am == 0 then
10 break;
11 else if T ar get is a high-value target and Am 6=0 then
12 Randomly select a UAV from AU , and let Gene ←[T arg et,A2,UAV ];
13 Chromosome ←Chromosome ∪Gene;
14 Am[UAV ]←Am[U AV ]-1;
15 if Am == 0 then
16 break;
17 Randomly select a UAV from CV U , and let Gene ←[Tar get,V,UAV ];
18 Chromosome ←Chromosome ∪Gene;
19 Delete T arget from T S ;
20 if length [T S]==0 then
21 break;
22 else if length [T S ]6=0then
23 Randomly select a target from T S;
11
set of UAVs with residual attack capability corresponding to Fi. And RTidenotes the set of
targets that are not attacked in Fi,i∈I2. The cases of sufficient and insufficient ammunition
are discussed separately in the following.
4.2.1. Crossover operator for sufficient ammunition
Obviously,
NU
P
i=1
AMi≥NT+Lindicates that ammunition is sufficient. Two intersection
points p1, p2∈INall are chosen arbitrarily, and crossover operations are performed on the
genes between the two intersection points of F1and F2.
If
NU
P
i=1
AMi> NT+L, then RMi6=∅,RTi=∅,i∈I2. For the genes between p1and p2in
F1and F2,Ssc
1and Ssc
2are denoted the set of UAVs performing Cor Vtasks, Scm
1and Scm
2
are denoted the set of UAVs performing attack task, respectively. The crossover operation
on F1is shown in Algorithm 2. Similarly, the crossover operation on chromosome F2can be
obtained.
Algorithm 2: Crossover operator 1
Input:p1,p2,F1,F2
Output: Crossover offspring
1i←p1−1;
2while i≤p2−1do
3if The task in F1[i]is task Athen
4if RM1∩Scm
26=∅and RM1∩Scm
2− {F1[i][0]} 6=∅then
5Randomly select a UAV from RM1∩Scm
2, and update RM1;
6else if RM1∩Scm
2=∅or RM1∩Scm
2− {F1[i][0]}=∅then
7Randomly select a UAV from RM1− {F1[i][0]}, and update RM1;
8if The task in F1[i]is task Cor Vthen
9if Ssc
26=∅then
10 Randomly select a UAV from Ssc
2;
11 else if Ssc
2=∅then
12 Randomly select a UAV from the UAVs of types sand cthat do not belong to Ssc
1;
13 Update the UAV information in F1[i], and i←i+ 1;
If
NU
P
i=1
AMi=NT+L, then RMi=∅,RTi=∅,i∈I2. Algorithm 2is not suitable for
this situation, therefore, the crossover operation for this situation is achieved by exchanging
the internal information of chromosomes. The specific steps are shown in Algorithm 3.
To illustrate the crossover operator, the following example of 3 UAVs to execute 2 targets
is considered. For simplicity of description, the UAVs are U1,U2, and U4in Table 2, and the
targets are T1and T3in Table 3. Obviously, for this case, Algorithm 2should be adopted.
Assume p1= 3, p2= 5, and two fathers F1,F2of crossover operation are shown in Fig. 5. Then
we can get RM1={U2, U4},Ssc
1={U1},Scm
1={U4},RM2={U2, U4},Ssc
2={U1, U2},
Scm
2={U2}. For Gene3 and Gene4 of F1, the UAVs need to be randomly selected from
Ssc
2due to Ssc
26=∅. We suppose that the selected UAVs are all U2. For Gene5 of F1,
12
Algorithm 3: Crossover operator 2
Input:p1,p2,F1,F2
Output: Crossover offspring
1i←p1−1;
2while i≤p2−1do
3T arget1←F1[i][0];
4T arget2←F2[i][0];
5if T arget16=T ar get2then
6Exchange gene information of T arget1 and T arg et2 in F1;
7if There is only one high-value target between T arget1and T arg et2then
8if T arget1is a high-value target then
9ht ←T arget1, lt ←T ar get2;
10 else if T ar get1is a low-value target then
11 ht ←T arget2, lt ←T ar get1;
12 Randomly select a attack gene of lt;
13 Replace the target of the selected gene with ht;
14 l←The number of genes updated between p1and p2, and i←i+l;
T1
C
U2
T1
A1
U4
T1
V
U1
T3
C
U1
T3
A1
U4
T3
A2
U2
T3
V
U1
T3
C
U1
T3
A1
U4
T3
A2
U2
T3
V
U1
T1
C
U2
T1
A1
U4
T1
V
U1
p1p2p1p2
F1F2
Gene3 Gene4 Gene5 Gene3 Gene4 Gene5
Fig. 5. The parents of crossover operation
13
RM1∩Scm
2={U2} 6=∅,RM1∩Scm
2− {U2}=∅. Therefore, the UAV needs to be randomly
selected from RM1− {U2}={U4}, and the UAV information of Gene5 of F1does not change.
The new Gene3-Gene5 of F1is shown in Fig. 6. Similarly, for Gene3-Gene5 of F2, UAVs need
to be randomly selected from RM2∩Scm
1, the UAVs of types sand cthat do not belong to
Ssc
2and Ssc
1. Suppose U4,U2, and U1are UAVs that are selected. The updated Gene3-Gene5
after the crossover operation is shown in Fig. 6. The offspring chromosomes of F1and F2are
shown in Fig. 7.
T1
V
U1
T3
C
U1
T3
A1
U4
F1
Gene3 Gene4 Gene5
T1
V
U2
T3
C
U2
T3
A1
U2
Gene3 Gene4 Gene5
T3
A2
U2
T3
V
U1
T1
C
U2
F2
Gene3 Gene4 Gene5
T3
A2
U4
T3
V
U2
T1
C
U1
Gene3 Gene4 Gene5
Fig. 6. The updated genes obtained after the crossover operation
T1
C
U2
T1
A1
U4
T1
V
U2
T3
C
U2
T3
A1
U2
T3
A2
U2
T3
V
U1
T3
C
U1
T3
A1
U4
T3
A2
U4
T3
V
U2
T1
C
U1
T1
A1
U4
T1
V
U1
Ospring1 O spring2
Fig. 7. The offspring chromosomes of F1and F2
4.2.2. Crossover operator for insufficient ammunition
In this case,
NU
P
i=1
AMi< NT+L. If there are high-value targets, the dimension of the
chromosome depends on the number of ammunition and high-value targets. There are two
difficulties in constructing the crossover operator: 1) The dimensions of the chromosomes are
different; 2) RM1=RM2=∅.
The crossover method of replacing the UAV is not suitable for this situation. Considering
that there are targets that have not been performed, the construction of the crossover operator
in this case is based on the idea of replacing targets. Let P T1and P T2denote the set of targets
in F1and F2, respectively. The crossover operation on F1is shown in Algorithm 4. Similarly,
the crossover operation on F2can be obtained.
The procedure of Algorithm 4is explained based on the example of 3 UAVs executing 6
targets. The UAVs are U1,U2and U3in Table 2, and the targets are Ti(i∈I4) in Table
3,T5(MT5={C, A1, V }) and T6(MT6={C, A1, V }). Suppose F1and F2are shown
in Fig. 8. Because min{length(F1), length(F2)}= 10, the p1and p2need to be arbitrarily
selected from [1,10]. Suppose that p1= 5 and p2= 8. It can be seen from Fig. 8that the
genes between p1and p2are Gene5-Gene8, but based on Algorithm 4, the genes that actually
14
Algorithm 4: Crossover operator 3
Input:p1,p2,F1,F2
Output: Crossover offspring
1i←p1−1;
2while i≤p2−1do
3ˆ
T←The target in chromosome[i];
4if RT1∩P T26=∅then
5Randomly select a target ˜
T∈RT1∩P T2;
6else if RT1∩P T2=∅then
7Randomly select a target ˜
T∈RT1;
8if ˆ
Tis a low-value target then
9if ˜
Tis a low-value target then
10 For genes whose target is ˆ
T, replace their targets with ˜
T;
11 else if ˜
Tis a high-value target then
12 Randomly select a low-value target ˇ
T∈F1,ˇ
T6=ˆ
T, and delete its Cand Vtasks;
13 For genes whose target is ˆ
Tor ˇ
T, replace targets with ˜
T;
14 else if ˆ
Tis a high-value target then
15 if ˜
Tis a high-value target then
16 For genes whose target is ˆ
T, replace their targets with ˜
T;
17 else if ˜
Tis a low-value target then
18 Randomly select a low-value target ˇ
T∈RT1,ˇ
T6=˜
T;
19 For genes whose target is ˆ
T, replace their targets with ˜
T;
20 Randomly select an attack gene of target ˜
T, replace the target of this gene with ˇ
T, and
add the genes of the Cand Vtasks of ˇ
T;
21 Update RT1and P T1;
22 j←The number of genes updated between p1and p2;
23 i←i+j;
15
need to be changed in F1and F2are Gene4-Gene10 and Gene4-Gene9, respectively. For F1
and F2,RT1={T1, T3, T6},P T1={T2, T4, T5},RT2={T3, T4},P T2={T1, T2, T5, T6}.
T2
C
U1
T2
A1
U3
T2
V
U2
T5
C
U1
T5
A1
U2
T5
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T4
V
U1
F1
p1p2
Gene5 Gene6 Gene7 Gene8
p1p2
T2
C
U2
c
T2
A1
U3
c
T2
V
U1
s
T6
C
U1
s
T6
A1
U2
c
T6
V
U1
s
T5
C
U3
c
T5
A1
U2
c
T5
V
U1
s
T1
C
U1
s
T1
A1
U3
c
T1
V
U2
c
F2
Gene5 Gene6 Gene7 Gene8
Fig. 8. The parents of crossover operation
For Gene4-Gene6 of F1, randomly select a target from RT1∩P T2={T1, T6}, and let
the chosen target is T1. Based on Algorithm 4, the low-value target T5of Gene4-Gene6 can
be directly replaced with T1, as shown in Fig. 9. The updated RT1is RT1={T3, T5, T6}.
For Gene7-Gene10 of F1, randomly select a target from RT1∩P T2={T5, T6}, and assume
that low-value target T6is chosen. Based on the Algorithm 4, three steps are required. First,
replace T4in Gene7-Gene10 with T6. Then, randomly delete one of the attack task genes of
T6, and assume that the deleted gene is Gene3. And update the set RT1. Finally, a target
with only one attack task is randomly selected from RT1. According to the information of
RT1, the selected target can only be T5. The genetic information of Cand Vtasks of T5also
needs to be added. Its worth mentioning that the UAVs that perform Cand Vtasks of T5
are randomly selected.
T4
C
U3
T4
A1
U2
T4
A2
U3
T4
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T4
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T4
V
U1
T6
C
U3
T6
A1
U2
T6
A2
U3
T6
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T6
C
U3
T6
A1
U2
T6
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T5
C
U2
T5
A1
U3
T5
V
U1
Gene7 Gene8 Gene9 Gene10
Randomly select a
target to replace T5
Randomly select a
target to replace T4.
Randomly delete
a gene of task A
of T6.
Randomly add the
genetic information
of a target with a
single attack task.
Gene5 Gene6
Gene4
T5
C
U1
T5
A1
U2
T5
V
U1
T1
C
U1
T1
A1
U2
T1
V
U1
Fig. 9. The crossover process of F1genes
For Gene4-Gene6 of F2, randomly select a target from RT2∩P T1={T4}to replace T6.
Then, randomly select a target from {T1, T2, T5}, and suppose that the chosen target is T2.
And add the attack task information of T2to T4. For Gene7-Gene9 of F2, randomly select a
target from RT2∩P T1={T2, T3, T6}to replace T5. Suppose that the selected target is T2.
The process of crossover operation is shown in Fig. 10. The crossover offspring of F1and F2
are shown in Fig. 11.
16
Randomly select a
target to replace T6
T6
C
U1
T6
A1
U2
T6
V
U1
T5
C
U3
T5
A1
U2
T5
V
U1
Gene5 Gene6 Gene7 Gene8 Gene9
Gene4
T4
C
U1
T4
A1
U2
T4
V
U1
T5
C
U3
T5
A1
U2
T5
V
U1
T2
C
U2
T2
A1
U3
T2
V
U1
T4
A2
U3
Gene2 Gene3
Gene1
The crossover
opera on of Gene 4-
6 is completed T4
C
U1
T4
A1
U2
T4
A2
U3
T4
V
U1
T5
C
U3
T5
A1
U2
T5
V
U1
Randomly select
a target to
replace T5
T4
C
U1
T4
A1
U2
T4
A2
U3
T4
V
U1
T2
C
U3
T2
A1
U2
T2
V
U1
Randomly select a
target, and only
retain the gene of
its a ack task
Fig. 10. The crossover process of F2genes
T2
C
U1
T2
A1
U3
T2
V
U2
T1
C
U1
T1
A1
U2
T1
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T6
C
U3
T6
A1
U2
T6
V
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T5
C
U2
T5
A1
U3
T5
V
U1
Ospring1
T4
C
U1
T4
A1
U2
T4
A2
U3
T4
V
U1
T2
C
U3
T2
A1
U2
T2
V
U1
T1
C
U1
T1
A1
U3
T1
V
U2
Ospring2
Fig. 11. The offspring chromosomes of F1and F2
4.3. Mutation operator
The mutation operator has shown significant influence on the algorithm performance (Zuo
et al.,2021). It has the ability to search locally and maintain the diversity of the distribution.
Considering that the dimension of chromosomes is not fixed, different mutation operators are
given for various situations. Let Pmdenotes the probability of mutation. If the probability
obtained is less than Pm, then crossover offspring O1needs to be mutated. We select a
gene segment in O1, and perform mutation operation on the gene segment. Let q1and q2
respectively denote the start and end point of the gene fragment. CT denotes the set of
low-value targets in O1. Let Gcv and Garespectively denote the set of C, V and Atask genes
in O1.¯
RM1and ¯
RT 1respectively denote the set of UAVs with remaining ammunition and
unassigned targets in O1.
The mutation operator is given in Algorithm 5. Take offspring1 in Fig. 7and offspring2
in Fig. 11 as examples to illustrate the mutation operator. The chromosomes and mutation
points are shown in Fig. 12.
For offspring1 in Fig. 12, it is the case of
NU
P
i=1
AMi> NT+L, so the 1-9 lines in Algorithm
5are used. Let the parameters in Algorithm 5are CV U ={U1, U2},¯
RM1={U2, U4}. Since
Gene2 is a gene for attack task, we randomly select a UAV from ¯
RM1− {O1[i][2]}, in this
situation, is U2. And the updated ¯
RM1={U4}.Gene3 is a gene of Vtask, Gene4 is a gene
of Ctask, so the selected UAVs are all U1. The gene fragment after mutation in offspring1 is
shown in Fig. 13.
17
Algorithm 5: Mutation operator
Input:q1,q2,O1
Output: Crossover offspring
1i←q1−1;
2while i≤q2−1do
3if
NU
P
i=1
AMi> NT+Lthen
4if O1[i][1] is Cor Vtask then
5Randomly select Um∈CV U − {O1[i][2]};
6else if O1[i][1] is Atask then
7Randomly select Um∈¯
RM1− {O1[i][2]};
8Update ¯
RM1;
9Replace the UAV information of O1[i] with Um;
10 else if
NU
P
i=1
AMi< NT+Lthen
11 Randomly select a target Tm∈¯
RT 1;
12 Find all the genes of target O1[i][0];
13 Replace the target information of these genes with Tm;
14 if Tmis a high-value target, but O1[i][0] is not then
15 Randomly delete a target from CT − {O1[i][0]};
16 Allocate ammunition to Tm;
17 else if Tmis a low-value target, but O1[i][0] is not then
18 Randomly delete one of the attack genes of Tm;
19 else if
NU
P
i=1
AMi=NT+Lthen
20 if O1[i][1] is Cor Vtask then
21 Randomly select a gene from Gcv − {O1[i]};
22 else if O1[i][1] is Atask then
23 Randomly select a gene from Ga− {O1[i]};
24 Exchange the UAV information of O1[i] and the selected gene;
25 j←The number of genes updated between q1and q2;
26 i←i+j;
T1
C
U2
T1
A1
U4
T1
V
U2
T3
C
U2
T3
A1
U4
T3
A2
U2
T3
V
U1
Ospring1 in Fig.7
q1q2
T4
C
U1
T4
A1
U2
T4
A2
U3
T4
V
U1
T2
C
U3
T2
A1
U2
T2
V
U1
T1
C
U1
T1
A1
U3
T1
V
U2
Ospring2 in Fig.11
q1q2
Gene6 Gene7 Gene8 Gene9
Gene2 Gene3 Gene4
Fig. 12. Chromosomes of mutation operation
18
T1
A1
U4
T1
V
U2
T3
C
U2
Randomly select a
UAV
Update the Gene2
informa on with
this selected UAV
Gene2 Gene3 Gene4
T1
A1
U2
T1
V
U2
T3
C
U2
Gene2 Gene3 Gene4
Randomly select a
UAV and update the
Gene3
Randomly select a
UAV and update
the Gene4
T1
A1
U2
T1
V
U1
T3
C
U1
Gene2 Gene3 Gene4
Fig. 13. The mutation process of gene fragment of offspring1
For offspring2 in Fig. 12, it is the case of
NU
P
i=1
AMi< NT+L, so the 10-18 lines in
Algorithm 5are used. The gene fragment should be Gene6−Gene9, but the actual gene
fragment that need to be mutated is Gene5−Gene10. For Gene5−Gene7, randomly select a
target from ¯
RT 1={T3, T5, T6}, and suppose it is T6. Then the updated ¯
RT 1={T2, T3, T5}.
For Gene8−Gene10, we randomly select a target from ¯
RT 1, and suppose it is T3. Then, the
gene fragment after mutation in offspring2 is shown in Fig. 14. The chromosomes obtained
after mutation are shown in Fig. 15.
T2
C
U3
T2
A1
U2
T2
V
U1
T1
C
U1
T1
A1
U3
T1
V
U2
Gene6 Gene7 Gene8 Gene9
Gene5 Gene10
Randomly select a
target and suppose it is
T6
Update the Gene5-7
Update the set
T6
C
U3
T6
A1
U2
T6
V
U1
T1
C
U1
T1
A1
U3
T1
V
U2
Gene6 Gene7 Gene8 Gene9
Gene5 Gene10
Randomly select a
target and suppose it is
T5
Update the Gene8-9
Update the set
T6
C
U3
T6
A1
U2
T6
V
U1
T5
C
U1
T5
A1
U3
T5
V
U2
Gene6 Gene7 Gene8 Gene9
Gene5 Gene10
Fig. 14. The mutation process of gene fragment of offspring2
T1
C
U2
T1
A1
U2
T1
V
U1
T3
C
U1
T3
A1
U4
T3
A2
U2
T3
V
U1
T4
C
U1
T4
A1
U2
T4
A2
U3
T4
V
U1
T6
C
U3
T6
A1
U2
T6
V
U1
T5
C
U1
T5
A1
U3
T5
V
U2
Chromosome1 Chromosome2
Fig. 15. The chromosomes obtained by mutation
19
4.4. Deadlock and the method to unlock
4.4.1. Deadlock of chromosome
All chromosomes in the generated initial population satisfy constraints. However, the
chromosomes obtained after crossover and mutation operations cannot be guaranteed to sat-
isfy constraints (6). If constraints (6) are not satisfied, then some UAVs will be in an infinite
waiting state. This phenomenon is called deadlock, and it can lead to infeasible solutions (Jia
et al.,2018). There are three cases of deadlock, which are called self-locking, interlocking and
hybrid deadlock.
The phenomenon of self-locking means that when a UAV performs multiple tasks of the
same target, the order of execution of the tasks does not satisfy the constraint (6). A gene
fragment is given in Fig. 16 (a) to illustrate the self-locking. The phenomenon of interlocking
T4
A2
U3
T2
C
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T1
A1
U1
T3
V
U1
T3
A1
U1
Sequence of tasks
performed by U1
Priorities of tasks of T3
T4
A2
U3
T2
V
U1
T4
C
U3
T4
A1
U2
T1
A1
U1
T3
C
U1
Sequence of tasks
performed by U1
Priorities of tasks of T2
T4
A2
U3
T1
V
U2
T4
C
U3
T4
A1
U2
T4
A2
U3
T2
C
U2
T2
A1
U2
T3
A1
U2
T4
A1
U2
T4
A2
U3
T1
C
U3
T3
V
U3
Sequence of tasks
performed by U2
Sequence of tasks
performed by U3
Priorities of tasks of T1
(a) The example of self-locking (b) The example of interlocking
Fig. 16. Examples of locked chromosomes
means that multiple UAVs and targets are locked at the same time, as shown in the example
in Fig. 16 (b). Obviously, the order in which U1and U2perform tasks is opposite to the
priorities of the tasks of T1and T2, which will cause UAVs to be in a state of waiting for
infinite time. This is the interlock state. Hybrid deadlock is a state that combines self-locking
and interlocking.
4.4.2. Unlocking method
In order to unlock the chromosomes, Deng et al. (2014) proposes a transposition opera-
tion based on the directed graph. Because hybrid deadlock is very complicated, the simpler
self-locking situation is solved first, which can reduce the complexity of locking. However,
the interlock is resolved by randomly adjusting the assignment and sequence of tasks. And
judging whether the chromosome is locked and unlocking the chromosome are two completely
independent steps. When the scale of the chromosome is large, this unlocking method is not
efficient.
In order to improve the efficiency of unlocking, a fast positioning unlocking method (F-
PUM) is proposed in this section. FPUM has two notable features. One feature is that it can
judge whether the chromosome is locked and unlock the chromosome at the same time, and
20
the other one is that it can accurately unlock the chromosome. First, transform the chromo-
some into the form of Fig. 4. Then, use lines 4-16 of Algorithm 6to determine whether the
chromosome is locked. Finally, if the chromosome is locked, use lines 17-30 of Algorithm 6to
unlock the chromosome at the locked points.
The deadlock examples in Fig. 16 are used to illustrate the unlocking method. For the
deadlock situation in Fig. 16 (a), MU1={TC
2, T A1
1, T V
3, T A1
3}. According to Algorithm 6, the
order of TV
3and TA1
3in MU1needs to be exchanged to unlock the self-locking situation, as
shown in Fig. 17. For the deadlock situation in Fig. 16 (b), MU1={TV
2, T A1
1, T C
3},MU2=
T4
A2
U3
T2
C
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T1
A1
U1
T3
V
U1
T3
A1
U1
Exchange the order of
selected genes T4
A2
U3
T2
C
U1
T4
C
U3
T4
A1
U2
T4
A2
U3
T1
A1
U1
T3
A1
U1
T3
V
U1
Self-locking Unlocked form
Fig. 17. The unlocking process of the self-locking situation
{TV
1, T C
2, T A1
2, T A1
3},MU3={TC
1, T V
3}. The Ctask of T1can be performed. Update MU3and
¯
MT1, then MU3={TV
3},¯
MT1={TC
1}. At this time, U1,U2and U3are in a state of waiting
for an infinite time. According to the rules of Algorithm 6, the order of tasks in task sets of
MUi(i∈I3) is changed. The updated MU1,MU2and MU3are MU1={TA1
1, T V
2, T C
3},MU2=
{TC
2, T V
1, T A1
2, T A1
3},MU3={TV
3}, respectively. Obviously, the chromosome is unlocked. The
detailed process is shown in Fig. 18.
T4
A2
U3
T2
V
U1
T4
C
U3
T4
A1
U2
T1
A1
U1
T3
C
U1
T4
A2
U3
T1
V
U2
T4
C
U3
T4
A1
U2
T4
A2
U3
T2
C
U2
T2
A1
U2
T3
A1
U2
T4
A1
U2
T4
A2
U3
T1
C
U3
T3
V
U3
Exchange the
order of selected
genes
T4
A2
U3
T2
A1
U1
T4
C
U3
T4
A1
U2
T1
V
U1
T3
C
U1
T4
A2
U3
T1
C
U2
T4
C
U3
T4
A1
U2
T4
A2
U3
T2
V
U2
T2
A1
U2
T3
A1
U2
T4
A1
U2
T4
A2
U3
T1
C
U3
T3
V
U3
Interlocking Unlocked form
Fig. 18. The unlocking process of the interlocking situation
4.5. Improved genetic algorithm for MOCTAP
Based on the construction methods of the chromosomes and genetic operators and the
FPUM, the process of MOCTAP-GA is given as follows.
Algorithm 7 (MOCTAP-GA)
Step 1: Set the values of algorithm parameters, including the population size N, the crossover
probability Pc, the mutation probability Pm, and the maximum number of evolutions Gmax.
Step 2: Randomly generate an initial population Pg(g= 0) of size Nby Algorithm 1.
21
Algorithm 6: FPUM
Input: Chromosome
Output: Unlocked chromosome
1A←Empty array, A[i]←The task set MUi+1 of Ui+1 ,i∈Iau−1, where au is the number of allocated
UAVs;
2j←0, ¯
MTi←∅,i∈INT;
3while j < DIM do
4j1←0, n←0;
5for l= 0;l < length(A);l+ + do
6if A[l][0] is Ctask then
7¯
MTl←¯
MTl∪A[l][0], n←n+ 1;
8else if A[l][0] is Atask then
9If ¯
MTlcontains C, then ¯
MTl←¯
MTl∪A[l][0], and n←n+ 1, otherwise, n←n;
10 else if A[l][0] is Vtask then
11 If ¯
MTlcontains Cand A, then ¯
MTl←¯
MTl∪A[l][0], and n←n+ 1, otherwise, n←n;
12 A[l]←A[l]− {A[l][0]};
13 if length(A[l]) = 0 then
14 A←A− {A[l]};
15 l←l+ 1;
16 j1←j1+n;
17 if n= 0 then
18 for l= 0;l < length(A);l+ + do
19 if A[l][0] is Atask then
20 for m= 1;m < length(A);l+ + do
21 if A[l][m]is Ctask then
22 Exchange the order of A[l][m] and A[l][0];
23 Exchange the order of genes corresponding to A[l][m] and A[l][0] in
chromosome;
24 break;
25 else if A[l][0] is Vtask then
26 for m= 1;m < length(A);l+ + do
27 if A[l][m]is Cor Atask then
28 Exchange the order of A[l][m] and A[l][0];
29 Exchange the order of genes corresponding to A[l][m] and A[l][0] in
chromosome;
30 break;
31 j←j+j1;
22
Step 3: Calculate the values of fitness functions for each chromosome of population Pg.
Step 4: Generate a descendant population of size N.
Step 4.1: Use roulette algorithm to select parent chromosomes for crossover operation
from population Pg.
Step 4.2: According to the battle situation, select the appropriate crossover operator from
the Algorithm 2–4. Generate a random number r1∈[0,1]. If r1< Pc, then cross over the
chromosomes and go to Step 4.3, otherwise, go to Step 4.1.
Step 4.3: Generate a random number r2∈[0,1]. If r2< Pm, then mutate the crossover
offspring by Algorithm 5.
Repeat Steps 4.1-4.3 to get a population Sgof size N.
Step 5: Use Algorithm 6to judge whether the chromosomes in population Sgare locked,
and unlock the locked chromosomes.
Step 6: Combine Pgwith Sgto get a new population Qgof size 2N.
Step 7: Calculate the value of the fitness functions and the crowding distance of chromosomes
in Qg.
Step 8: Select Nchromosomes from Qgto form a new population Pqbased on the fast
non-dominated sorting approach and the elite-preserving strategy.
Step 9: Let g=g+ 1, q=g.
Step 10: If g < Gmax , go to Step 3. Otherwise, sort Pgby using the fast non-dominated
sorting approach, then obtain the Pareto solution set. Select a solution from the Pareto
solution set. Output Pareto solution set and the selected solution.
In MOCTAP-GA, the process of selecting individuals from current individuals to form
a new population in each iteration is based on the fast non-dominated sorting approach
(Deb et al.,2002). The time complexity of the algorithm is governed by the non-dominated
sorting part of the algorithm. Therefore, the algorithm’s time complexity for each iteration
is O(MN 2), where Mis the number of objectives and Nis the population size. In order to
understand the specific calculation process of the algorithm more clearly, the flow chart of
MOCTAP-GA is shown in Fig. 19.
5. Numerical experiments
In this section, numerical experiments are conducted to analyze the characteristics of
the model of MOCTAP and the performance of the proposed algorithm MOCTAP-GA. The
algorithm proposed in this paper is suitable for solving multi-objective optimization problems
of task assignment in various battle conditions, including sufficient ammunition resources and
insufficient ammunition resources. Sections 5.1-5.3 give examples of all battle situations, and
analyze the performance of the proposed algorithm based on these examples. Sections 5.4 gives
the analysis of the effectiveness of the proposed unlocking method. Numerical experiments are
implemented by using Python3.8 on a computer with Intel Core i5-10210U CPU @ 1.60GHz
2.11GHz and 4.00GB RAM.
Let ¯pdenotes the number of non-dominated solutions on the Pareto-optimal front end,
23
Start
Maximum number of it-
erations Gmax, Popula-
tion size N, and g= 0
Initialize the
population
Calculate fit-
ness function
Selection, crossover,
and mutation op-
erations. Get the
offspring popu-
lation of size N
Locked?
Unlock
Combine the par-
ent population
and the offspring
population into a
population of size 2N
Fast non-
dominated sort
Calculate the
crowded distance
of individuals
Select Nchro-
mosomes to form
a new parent
population
g=g+ 1
g < Gmax?
Fast non-
dominated sort
Select a solution
from the Pareto
solution set
The Pareto solution set
and the chosen solution
End
Yes
No
Yes No
Fig. 19. The flow chart of MOCTAP-GA
24
and NDi= (Fi
1, F i
2) (i∈I¯p) denotes the ith non-dominated solution. In order to facilitate
decision makers to select a solution from the Pareto solution set, the following selection rule
is given. First, calculate Si=α1Fi
1+α2Fi
2(i∈I¯p), where α1and α2are weights and
α1+α2= 1. The value of the weights is related to the decision maker’s preference for the
objective functions. Second, sort the Si(i∈I¯p). Finally, select Siwith the smallest value,
and its corresponding solution needs to be chosen by the decision maker.
5.1. Scenario I: total ammunition >total number of attack tasks
In this case, we consider 5 UAVs to execute 5 targets. The details of the UAVs and targets
are shown in Tables 4and 5. The probabilities of death and success are shown in Table 6.
Table 4. The information of UAVs
Type AMiValue Type AMiValue
U1c 3 3.2 U4s 0 2.5
U2m 5 3.0 U5s 0 2.5
U3c 3 3.0 - - - -
Table 5. The information of targets
Type Task set Value Type Task set Value
T1High value {C, A1, A2, V }2.5 T4Low value {C, A1, V }1.5
T2High value {C, A1, A2, V }2.0 T5Low value {C, A1, V }1.9
T3Low value {C, A1, V }1.7 - - - -
Table 6. The probabilities of tasks being successfully executed and the probability of survival
of UAVs
T1T2T3T4T5
C A V C A V C A V C A V C A V
U1
KI k
1j0.18 0.48 0.07 0.11 0.45 0.1 0.04 0.16 0.06 0.14 0.24 0.07 0.18 0.1 0.05
SV k
1j0.82 0.7 0.97 0.92 0.78 0.93 0.96 0.93 0.95 0.98 0.96 0.97 0.82 0.95 1.0
U2
KI k
2j0.15 0.37 0.1 0.01 0.35 0.04 0.1 0.2 0.07 0.14 0.14 0.05 0.08 0.23 0.02
SV k
2j0.96 0.72 0.94 0.81 0.81 0.98 0.91 1.0 0.95 1.0 0.94 0.92 0.96 0.97 0.97
U3
KI k
3j0.2 0.47 0.05 0.02 0.38 0.09 0.01 0.27 0.01 0.1 0.23 0.08 0.1 0.23 0.06
SV k
3j0.83 0.8 0.94 0.82 0.79 0.96 0.92 0.98 0.94 0.87 0.97 0.92 0.93 0.92 0.91
U4
KI k
4j0.15 0 0.04 0.09 0 0.1 0.0 0 0.05 0.12 0 0.01 0.19 0 0.01
SV k
4j0.93 0 0.95 0.99 0 0.9 0.94 0 0.99 0.85 0 0.98 0.83 0 0.92
U5
KI k
5j0.01 0 0.09 0.17 0 0.05 0.13 0 0.01 0.15 0 0.02 0.03 0 0.09
SV k
5j0.81 0 0.91 0.8 0 0.96 0.9 0 0.98 0.96 0 0.94 0.94 0 0.98
To verify the effectiveness of the proposed algorithm, MOCTAP-GA is compared with
Multi-objective Particle Swarm Optimization (MOPSO) and Multi-objective Grey Wolf Op-
25
timization (MOGWO), two unlocking methods (i.e. FPUM and transposition operation (TO))
are used in MOCTAP-GA, MOPSO and MOGWO, respectively. In MOCTAP-GA, the
crossover probability is Pc= 0.8, and the mutation probability is Pm= 0.2. In MOPSO,
the values of the parameters are ω= 0.7298, c1= 1.49618, c2= 1.49618. And in MOGWO,
the values of the parameters are r1=r2=1
3. For the values of the population size Nand
the maximum number of iterations G, two cases are considered, which are N= 80, G= 50
and N= 100, G= 200, respectively. The performance of three algorithms using differen-
t unlocking methods in the small-scale case (N= 80, G= 50) is compared, and in order
to highlight the performance of MOCTAP-GA, the performance of three algorithms using
different unlocking methods in the large-scale case (N= 100, G= 200) is compared.
The comparison results of the Pareto-optimal front under two scales (i.e. N= 80, G= 50;
N= 100, G= 200) obtained by the three algorithms are shown in Fig. 20(a) and Fig. 22(a),
respectively. From the comparison results, it can be concluded that the solutions of MOPSO
and MOGWO are dominated by the solutions of MOCTAP-GA, that is, the results obtained
by MOCTAP-GA are better than those obtained by MOPSO and MOGWO. At the same
time, it can be seen from the comparison that the performance of the algorithm using FPUM
is better than the algorithm using TO. The MOCTAP-GA using FPUM has advantages in
both calculation results and CPU runtime than using TO. More detailed comparison results
between different algorithms are given in Table 7. The convergence curves of the objective
functions in the iterations of the three algorithms using different unlocking methods are shown
in Fig. 21 and Fig. 23, respectively. Based on the given solution selection strategy, the 9th
solution (5.4921, 3.6313) in Fig. 20(a) and the 15th solution (5.4802, 3.6313) in Fig. 22(a) are
the non-dominated solutions selected from the obtained Pareto-optimal in these two cases.
The corresponding assignment schemes are given in Table 8, respectively.
To verify the computational efficiency of MOCTAP-GA using FPUM, 15 experiments
in two scales were performed based on three algorithms using different unlocking methods.
The CPU runtime of the experiments is shown in Fig. 20(b) and Fig. 22(b), and the average
CPU runtime of the algorithms is shown in Table 8. Obviously, compared with MOPSO using
FPUM and TO and MOCTAP-GA using TO, the CPU runtime of MOCTAP-GA using FPUM
is the shortest, which proves that its efficiency is the best. Because the individuals in MOPSO
are encoded as binary matrices, the large scale of the problem results in long CPU runtime for
pbest and gbest. This is the main reason for the long CPU runtime of MOPSO. Compared with
MOGWO, the CPU runtime of MOCTAP-GA is slightly longer, but the calculation result of
MOCTAP-GA is better than that of MOGWO. Therefore, MOCTAP-GA works better than
MOGWO for CTAP that require high-quality solutions.
5.2. Scenario II: total ammunition =total number of attack tasks
In this section, an example involving 8 UAVs and 12 targets is considered, which contains
5 high-value targets. For the convenience of description, the information of Ui(i∈I5)
and Tj(j∈I5) is consistent with the information in Table 4-6, and the information of Ui
(i∈ {6,7,8}) and Tj(j∈ {6,7,· · · ,12}) is shown in Table 9and Table 10. Table 11 shows
26
(a) Pareto-optimal front (b) CPU runtime
Fig. 20. N= 80 and G= 50
Table 7. Information about the results calculated by the algorithms
Algorithm N, G(Size) Unlocking method J3min J2min CPU runtime (s)
MOCTAP-GA
80, 50 FPUM 5.403 (5.403,5.694) 4.900 (5.973,4.900) 4.845
TO 5.437 (5.437,5.796) 5.208 (6.258,5.208) 6.877
100, 200 FPUM 5.236 (5.236,4.099) 3.600 (5.652,3.600) 27.137
TO 5.368 (5.368,4.464) 4.171 (5.540,4.171) 30.959
MOPSO
80, 50 FPUM 5.537 (5.537,6.342) 4.787 (6.182,4.787) 35.35
TO 5.514 (5.514,6.490) 5.457 (6.080,5.457) 49.616
100, 200 FPUM 5.209 (5.209,4.991) 3.941 (5.802,3.941) 1055.985
TO 5.280 (5.280,5.505) 4.912 (5.852,4.912) 1327.714
MOGWO
80, 50 FPUM 5.662 (5.662,6.704) 5.657 (6.778,5.657) 4.001
TO 5.904 (5.904,6.648) 5.695 (6.508,5.695) 14.735
100, 200 FPUM 5.795 (5.795,6.131) 5.708 (6.461,5.780) 22.054
TO 5.699 (5.699,6.569) 5.604 (6.449,5.604) 23.3
Table 8. The task assignment plans of the selected solutions
N, G(Size) Solution UAV Task set UAV Task set
80, 50 (5.4941,5.2658)
U1MU1={T2
5, T 3
5}U2MU2={T2
2, T 2
3, T 2
1}
U3MU3={T1
2, T 2
2, T 3
2, T 3
3, T 2
4, T 2
1, T 3
1}U4MU4={T1
3, T 1
4, T 3
4}
U5MU5={T1
5, T 1
1}
100, 200 (5.4941,5.2658)
U1MU1={T1
4, T 2
2}U2MU2={T2
1, T 2
3, T 2
5}
U3MU3={T1
2, T 2
2, T 2
4}U4MU4={T3
1, T 1
3, T 3
5, T 3
4}
U5MU5={T1
1, T 3
3, T 1
5, T 3
2}
27
Fig. 21. The curves of changes in the values of J2and J3(N= 80, G= 50)
(a) Pareto-optimal front (b) CPU runtime
Fig. 22. N= 100 and G= 200
the survival probability of UAVs and the probability of the tasks being successfully executed.
In MOCTAP-GA, the parameters are N= 100, G= 200, Pc= 0.8 and Pm= 0.2.
The obtained Pareto-optimal front is shown in Fig. 24(a). According to the given method
for selecting solution from the Pareto-optimal front, the 9th non-dominated solution in Fig. 24(a)
is selected, and its task assignment scheme is shown in Table 12. In order to obtain the CPU
runtime of MOCTAP-GA for this scale experiment, 15 numerical experiments were carried
out for this example. The CPU runtime is shown in Fig. 24(b). In order to analyze the con-
vergence of algorithm, the optimal values of objective functions in each iteration are recorded.
During the entire iteration process, the changes of the minimum value of J2and J3in each
iteration are shown in Fig. 25. It can be observed that the values of both functions tend to
Table 9. The information of Ui(i∈ {6,7,8})
Type AMiValue Type AMiValue
U6s 0 2.5 U8m 4 3.0
U7c 2 2.9 - - - -
28
Fig. 23. The curves of changes in the values of J3and J2(N= 100, G= 200)
Table 10. The information of Tj(j∈ {6,7,· · · ,12})
Type Task set Value Type Task set Value
T6Low value {C, A1, V }1.8 T10 Low value {C, A1, V }1.9
T7High value {C, A1, A2, V }2.3 T11 High value {C, A1, A2, V }2.4
T8Low value {C, A1, V }1.7 T12 Low value {C, A1, V }1.8
T9High value {C, A1, A2, V }2.2 - - - -
converge as the number of evolved generations increases.
The main contribution and application value of this paper is that the constructed mis-
sion assignment model takes into account the conditional probabilities and the corresponding
algorithms designed on the consideration of various risks in realistic scenarios, i.e., the risk
of the UAV being destroyed by the enemy and the possibility of the mission not being com-
pleted. Ignoring these objective factors can make the obtained solution not a Pareto solution
or even very worse in a realistic scenario. In order to illustrate the necessity of considering
both risks, we compare it with two extreme cases. In the first case, only the risk of mission
failure is considered and the risk of UAV being destroyed is ignored. In the second case, the
risk of destroying the UAV is considered without considering the risk of not completing the
task. The initial populations for the comparison experiments are identical, N= 100 and
G= 200. The Pareto-optimal fronts of the populations obtained at the 200th iteration for
each of these two cases are obtained according to the constructed model using conditional
probabilities. Then, the obtained Pareto-optimal fronts were compared, and the results are
shown in Fig. 26. It can be seen that the non-dominated solutions obtained using the method
of this paper dominate the Pareto-optimal fronts obtained in these two cases.
5.3. Scenario III: total ammunition <total number of attack tasks
In the case of insufficient ammunition, a large-scale example of 32 UAVs performing tasks
on 42 targets is considered in this subsection. Among them, there are 24 high-value targets
and 18 low-value targets. The information of UAVs and targets are given in Tables 13 and
29
Table 11. The probabilities of tasks being successfully executed and the probabilities of
survival of UAVs
T1T2T3T4T5
C A V C A V C A V C A V C A V
U6
KI k
6j0.15 0 0.01 0.09 0 0.06 0.23 0 0.08 0.0 0 0.05 0.05 0 0.18
SV k
6j0.9 0 0.99 0.78 0 0.83 0.94 0 0.95 0.82 0 0.91 0.78 0 0.93
U7
KI k
7j0.16 0.17 0.02 0.1 0.23 0.08 0.08 0.45 0.16 0.14 0.3 0.07 0.16 0.26 0.02
SV k
7j0.71 0.96 0.99 0.79 0.84 0.83 0.78 0.97 0.9 0.97 0.97 0.93 0.78 0.94 0.93
U8
KI k
8j0.13 0.14 0.08 0.07 0.44 0.03 0.06 0.49 0.19 0.24 0.42 0.14 0.01 0.49 0.07
SV k
8j0.84 0.84 0.98 0.95 0.81 0.84 0.72 0.85 0.89 0.81 0.76 0.83 0.87 0.79 0.99
T6T7T8T9T10
C A V C A V C A V C A V C A V
U1
KI k
1j0.18 0.44 0.0 0.03 0.21 0.03 0.06 0.35 0.07 0.18 0.12 0.06 0.17 0.49 0.18
SV k
1j0.72 0.74 0.91 0.85 0.97 0.82 0.74 0.96 0.94 0.93 0.85 0.93 0.79 0.75 0.83
U2
KI k
2j0.11 0.17 0.15 0.06 0.22 0.02 0.02 0.33 0.11 0.12 0.27 0.06 0.18 0.49 0.04
SV k
2j0.96 0.94 0.83 0.93 0.74 0.84 0.81 0.95 0.93 0.82 0.93 0.92 0.83 0.79 0.92
U3
KI k
3j0.05 0.1 0.1 0.07 0.49 0.1 0.2 0.18 0.12 0.18 0.29 0.08 0.19 0.45 0.01
SV k
3j0.77 0.85 0.95 0.79 0.83 0.86 0.81 1.0 0.89 0.98 0.82 0.92 0.97 0.9 0.81
U4
KI k
4j0.01 0 0.12 0.03 0 0.04 0.3 0 0.04 0.16 0 0.04 0.08 0 0.16
SV k
4j0.8 0 0.9 0.89 0 0.96 0.75 0 0.96 0.82 0 0.89 0.72 0 0.88
U5
KI k
5j0.22 0 0.11 0.01 0 0.08 0.01 0 0.17 0.15 0 0.08 0.23 0 0.04
SV k
5j0.95 0 0.95 0.82 0 0.97 0.77 0 0.81 0.91 0 0.84 0.72 0 0.92
U6
KI k
6j0.03 0 0.06 0.14 0 0.05 0.06 0 0.19 0.17 0 0.09 0.23 0 0.0
SV k
6j0.98 0 0.94 0.73 0 0.85 0.91 0 0.8 0.77 0 0.8 0.97 0 0.83
U7
KI k
7j0.05 0.46 0.05 0.17 0.36 0.03 0.05 0.11 0.08 0.17 0.34 0.04 0.06 0.44 0.08
SV k
7j0.71 0.76 0.94 0.95 0.86 0.87 0.82 0.93 0.82 0.87 0.91 0.88 0.98 0.86 0.93
U8
KI k
8j0.18 0.35 0.12 0.05 0.26 0.1 0.09 0.4 0.06 0.01 0.38 0.07 0.29 0.2 0.2
SV k
8j0.89 0.74 0.9 0.71 0.94 1.0 0.99 0.78 0.97 0.94 0.8 0.86 0.75 0.98 0.94
T11 T12 T11 T12
C A V C A V C A V C A V
U1
KI k
1j0.09 0.37 0.06 0.27 0.12 0.09 U5
KI k
5j0.18 0 0.07 0.29 0 0.11
SV k
1j0.75 0.8 0.98 0.74 0.71 0.84 S V k
5j0.88 0 0.95 0.92 0 0.89
U2
KI k
2j0.16 0.32 0.08 0.27 0.26 0.06 U6
KI k
6j0.14 0 0.03 0.16 0 0.04
SV k
2j0.82 0.91 0.81 0.9 0.95 0.88 S V k
6j0.99 0 0.96 0.94 0 0.94
U3
KI k
3j0.12 0.26 0.01 0.0 0.35 0.18 U7
KI k
7j0.12 0.44 0.06 0.07 0.2 0.02
SV k
3j0.81 0.93 0.87 0.75 0.99 0.95 SV k
7j0.77 0.9 0.83 0.87 0.96 0.98
U4
KI k
4j0.16 0 0.07 0.03 0 0.08 U8
KI k
8j0.08 0.36 0.07 0.1 0.44 0.13
SV k
4j0.95 0 0.97 0.73 0 0.91 S V k
8j0.79 0.84 0.84 0.97 0.78 0.98
30
(a) Pareto-optimal front (b) CPU runtime
Fig. 24. Pareo-optimal front and CPU runtime
Table 12. The task assignment plans of the selected solutions
Solution UAV Task set UAV Task set
(14.1019,10.1648)
U1MU1={T2
12, T 3
7, T 2
5, T 3
3, T 3
6, T 2
9, T 3
9}U2MU2={T2
7, T 2
4, T 2
3, T 2
2, T 2
11}
U3MU3={T2
10, T 1
12, T 1
4, T 2
6, T 1
11, T 3
11, T 2
9}U4MU4={T3
5, T 3
4, T 1
3, T 1
6, T 3
2, T 1
9}
U5MU5={T3
12, T 1
7, T 1
5, T 1
1}U6MU6={T1
8, T 1
2}
U7MU7={T1
10, T 3
10, T 2
1, T 3
1, T 2
8, T 3
8}U8MU8={T2
7, T 2
1, T 2
2, T 2
11}
14. Given the large size of the problem, this leads to a huge amount of probabilistic in-
formation involved, which can be found in the URL https://github.com/gaoxh-github/
parameters-values-of-problem-. The parameters in MOCTAP-GA are N= 100, G= 200,
Pc= 0.8 and Pm= 0.2.
The obtained Pareto-optimal front and the CPU runtime of 15 experiments are shown in
Fig. 27. The selected solution for parameter α1=α2= 0.5 is the 5th non-dominated solution.
The task assignment scheme corresponding to the selected solution is shown in Table 15. In
order to clearly show the computational efficiency of MOCTAP-GA, the CPU runtime of
MOCTAP-GA for 9 examples of different sizes is given, and each case is calculated 15 times.
Fig. 25. The curves of changes in the values of J2and J3
31
Fig. 26. Experimental comparisons that demonstrate the practical value of the method
Table 13. The information of UAVs for Scenario III
UAV Type AMiValue UAV Type AMiValue UAV Type AMiValue
U1m 3 3.2 U12 s 0 2.5 U23 c 2 3.2
U2c 2 3.2 U13 m 4 3.3 U24 s 0 2.6
U3c 2 3.1 U14 c 3 3.1 U25 m 3 3.1
U4c 2 3.1 U15 c 2 3.0 U26 m 4 3.3
U5s 0 2.7 U16 s 0 2.8 U27 s 0 2.7
U6s 0 2.9 U17 m 3 3.1 U28 c 2 3.1
U7s 0 2.8 U18 s 0 2.5 U29 m 3 3.1
U8c 3 3.0 U19 c 2 2.9 U30 m 4 3.2
U9m 4 3.3 U20 s 0 2.8 U31 m 3 3.1
U10 s 0 2.9 U21 m 4 3.2 U32 s 0 2.8
U11 s 0 2.7 U22 m 4 3.3 - - - -
Table 14. The information of targets for Scenario III
Target Task set Value Target Task set Value Target Task set Value
T1{C, A1, A2, V }2.2 T15 {C, A1, V }1.9 T29 {C, A1, A2, V }2.0
T2{C, A1, V }1.7 T16 {C, A1, V }1.7 T30 {C, A1, V }1.5
T3{C, A1, A2, V }2.4 T17 {C, A1, A2, V }2.5 T31 {C, A1, A2, V }2.4
T4{C, A1, A2, V }2.4 T18 {C, A1, A2, V }2.3 T32 {C, A1, A2, V }2.1
T5{C, A1, V }1.7 T19 {C, A1, V }1.6 T33 {C, A1, A2, V }2.2
T6{C, A1, A2, V }2.2 T20 {C, A1, A2, V }2.1 T34 {C, A1, A2, V }2.0
T7{C, A1, V }1.5 T21 {C, A1, A2, V }2.0 T35 {C, A1, V }1.7
T8{C, A1, A2, V }2.5 T22 {C, A1, V }1.5 T36 {C, A1, A2, V }2.2
T9{C, A1, A2, V }2.0 T23 {C, A1, V }1.7 T37 {C, A1, A2, V }2.4
T10 {C, A1, A2, V }2.1 T24 {C, A1, V }1.7 T38 {C, A1, V }1.8
T11 {C, A1, A2, V }2.0 T25 {C, A1, A2, V }2.4 T39 {C, A1, V }1.8
T12 {C, A1, V }1.9 T26 {C, A1, A2, V }2.4 T40 {C, A1, A2, V }2.1
T13 {C, A1, V }1.5 T27 {C, A1, A2, V }2.4 T41 {C, A1, V }1.6
T14 {C, A1, A2, V }2.2 T28 {C, A1, V }1.6 T42 {C, A1, V }1.8
32
Table 15. The task assignment of the 5th non-dominated solution in Fig. 27(a)
UAV Task set UAV Task set
U1MU1={T2
1, T 2
21, T 2
24}U2MU2={T3
16, T 3
1, T 2
4, T 3
20, T 2
27}
U3MU3={T1
16, T 1
15, T 1
9, T 2
9, T 3
30, T 3
29, T 2
3, T 3
7, T 3
22, T 1
5}U4MU4={T2
26, T 2
23, T 3
27}
U5MU5={T1
1, T 1
14}U6MU6={T1
19, T 1
18, T 3
15, T 3
31, T 1
41, T 3
17}
U7MU7={T1
3, T 1
17}U8MU8={T3
19, T 3
40, T 1
13, T 3
13, T 1
31, T 2
31, T 2
14, T 2
28}
U9MU9={T2
40, T 2
30, T 2
31, T 2
3}U10 MU10 ={T1
21, T 1
6, T 3
6, T 1
25}
U11 MU11 ={T1
23, T 1
29, T 1
24, T 1
27, T 3
5}U12 MU12 ={T3
9, T 1
42}
U13 MU13 ={T2
29, T 2
36, T 2
27, T 2
6}U14 MU14 ={T3
26, T 1
7, T 1
8, T 1
28, T 3
24, T 2
32, T 2
25, T 2
17}
U15 MU15 ={T2
16, T 2
15, T 3
42}U16 MU16 ={T3
25}
U17 MU17 ={T2
4, T 2
37, T 2
20}U18 MU18 ={T1
26, T 1
4, T 3
37, T 1
30, T 3
41, T 101}
U19 MU19 ={T1
38, T 3
38, T 3
21, T 1
37, T 1
33, T 2
35, T 2
6, T 3
10, T 1
32}U20 MU20 ={T3
33, T 3
35, T 3
14, T 3
28, T 1
22}
U21 MU21 ={T2
20, T 2
36, T 2
8, T 2
22}U22 MU22 ={T2
37, T 2
5, T 2
10, T 2
32}
U23 MU23 ={T2
8, T 2
10}U24 MU24 ={T3
2, T 3
3, T 3
36}
U25 MU25 ={T2
1, T 2
33, T 2
7}U26 MU26 ={T2
18, T 2
38, T 2
33, T 2
41}
U27 MU27 ={T1
12, T 3
12}U28 MU28 ={T3
23, T 1
2, T 2
18, T 3
18, T 3
4, T 1
36, T 3
8, T 2
12, T 3
32}
U29 MU29 ={T2
26, T 2
19, T 2
9}U30 MU30 ={T2
2, T 2
13, T 2
29, T 2
14}
U31 MU31 ={T2
40, T 2
21, T 2
42}U32 MU32 ={T1
40, T 1
35, T 1
20}
In these 9 examples, the variation rule for the number of UAVs is that each scale example
has 4 UAVs more than its previous scale example, and the variation rule for the number of
targets is that each scale example has 5 targets more than its previous scale example. The
CPU runtime and the average CPU runtime of MOCTAP-GA for these 9 problems are shown
in Fig. 28 and Fig. 29.
(a) Pareto-optimal front (b) CPU runtime
Fig. 27. Pareo-optimal front and CPU runtime
5.4. Test of the genetic operators
The various constraints of CTAP and the special meaning of chromosome genes make the
comparison of the crossover operator constructed in this paper with other crossover operators
less meaningful. Therefore, to test the effect of the crossover operator part on the performance
of the algorithm, for a given same initial population, different crossover probabilities are
considered to observe the change curve of the objective function values. Taking the 8 UAVs
33
Fig. 28. CPU runtime for 9 problems of different sizes
Fig. 29. Average CPU runtime of MOCTAP-GA for 9 problems of different sizes
34
and 12 targets in Section 5.2 as an example, the change curves of the objective function values
for 5 crossover probabilities (Pc={0.5,0.6,· · · ,0.9}) are shown in Fig. 30, from which it can
be seen that the algorithm with a crossover probability of 0.8 has the best performance for
the objective function.
Fig. 30. The curves of changes in the values of J2and J3under different crossover probabilities
The mutation operator is an auxiliary for generating new individuals in the algorithm.
It has local search capability and can increase the diversity of the population. To verify
the effectiveness of the constructed mutation operator. Three different groups of numerical
simulations with different initial populations were carried out for the example in Section 5.2.
Each simulations includes experiments with and without the mutation operator, while the
initial population of numerical experiments in the same group is the same. The obtained
Pareto-optimal front is shown in Fig. 31, and the curve of the objective function is shown
in Fig. 32. It can be seen that the solution of the Pareto-optimal front obtained by the
algorithm using the constructed genetic operator dominates the solution obtained by the
algorithm without the mutation operator in the three groups of numerical simulations. Also,
the curves of the objective function of the algorithm using the mutation operator are better
than those of the algorithm without the mutation operator.
Fig. 31. The Pareto-optimal fronts of 3 groups of simulation experiments
35
Fig. 32. The curves of changes in the values of J2and J3for the 3 groups of simulation
experiments
5.5. Test of the FPUM
The processing of a chromosome obtained through crossover and mutation operations is
divided into two stages. The first stage is to determine whether the chromosome is locked.
If the chromosome is locked, then the second stage is to unlock the chromosome. Deng
et al. (2014) proposes the transposition operation method, which randomly reorders the
genes of chromosome to achieve the purpose of unlocking chromosome. However only the
unlocking stage is considered in the transposition operation, and the random selection of
genes is performed on the entire chromosome. Although transposition operation method
guarantees randomness, the probability of chromosome being unlocked after each operation is
low. In this paper, the FPUM combines the judgment stage and the unlocking stage, and the
chromosome is unlocked according to the given rules at the deadlock point. The unlocking
principle of FPUM can preserve randomness while reducing unlocking time.
The efficiency of these two methods is compared by taking the case of 8 UAVs performing
tasks on 12 targets as an example. Among all targets, 5 high value targets are included. First,
100 chromosomes are randomly generated without considering timing constraints. Then, the
two methods were used to unlock these chromosomes for 15 unlocking experiments. The
average CPU runtime for FPUM and the transposition operation is 0.2442sand 66.3289s,
respectively. The CPU runtime comparison of unlocking is shown in the Fig. 33. As can be
seen from the Fig. 33, the unlocking efficiency of FPUM is higher than that of the transposition
operation in (Deng et al.,2014). There are two main reasons for the high unlocking efficiency
of FPUM. One is that the two stages are combined together, and the other is that the
chromosome is unlocked directly at the deadlock point.
In order to obtain the variation of the unlocking time of the algorithm for problems of
different sizes, 9 examples in Section 5.3 are utilized to test the two unlocking algorithms.
In each problem, 100 chromosomes are randomly generated, and these two algorithms are
used to unlock chromosomes 15 times. The unlocking time of FPUM and transposition
operation are shown in Fig. 34. The unlocking efficiency of FPUM is much higher than that
of the transposition operation. It can be seen from Fig. 34 that when the problem becomes
36
Fig. 33. Comparison of time for two unlocking algorithms
complicated, the rate of change of the unlocking time of FPUM is smaller than that of the
transposition operation method. That means that the problem size has a greater impact on
the transposition operation than on the FPUM.
(a) FPUM (b) Transposition operation
Fig. 34. The unlocking times of these two algorithms
6. Conclusions
In this paper, we study MOCTAP for multiple UAVs by considering potential operational
risks. By introducing conditional probabilities for the risk of UAV destruction and mission
failure, we construct a novel mission assignment model for MOCTAP. Based on the idea of
evolutionary algorithms, we construct chromosome coding patterns and genetic operators for
different ammunition cases to design a multi-objective optimization algorithm for MOCTAP.
For the case of chromosome deadlock, a fast localization unlocking method is presented, which
can effectively unlock chromosomes at the locked points while maintaining the population
randomness. The results of numerical experiments demonstrate the validity of the algorithm
and the practicality of the model, as well as the use of this unlocking method significantly
improves the optimization efficiency of the proposed multi-objective optimization algorithm.
The modeling ideas and algorithms can also be transferred to other areas of MOCTAP
that have a similar structure to our work. Moreover, the FPUM construction principles have
37
a certain generality that can be used to construct unlocking methods that are applicable
to different problems. Considering the actual battlefield environment, the feasible path of
the UAV is one of the factors that affects the mission assignment of the UAV between two
target locations. Obstacles are usually present in large operational areas, such as enemy radar
zones, mountains, etc. The probability of UAV detection and attack is significantly higher
when passing through the enemy’s radar zone. Therefore, it is meaningful to study the task
allocation problem based on trajectory planning when there are obstacles in the environment,
which is the focus of our further research.
CRediT authorship contribution statement
Xiaohua Gao : Writing–original draft, Writing–review & editing, Software, Methodology,
Data curation. Lei Wang : Methodology, Supervision, Investigation. Xinyong Yu : Soft-
ware, Formal analysis. Xichao Su : Conceptualization, Data curation. Yu Ding : Super-
vision, Validation. Chen Lu : Supervision, Formal analysis. Haijun Peng : Investigation,
Methodology. Xinwei Wang : Validation, Writing–review & editing, Methodology, Funding
acquisition, Project administration.
Declaration of competing interest
The authors declare that they have no known competing financial interests or personal
relationships that could have appeared to influence the work reported in this paper.
Acknowledgements
This work was supported by the National Key Research and Development Plan (2021YF-
B3302501); the National Natural Science Foundation of China (12102077, 12161076); and the
Fundamental Research Funds for the Central Universities (DUT22LAB305, DUT22RC(3)010).
References
Bethke, B., Valenti, M., How, J. P. (2008). UAV task assignment. Robotics and Automation
Magazine IEEE, 15(1), 39–44. http://dx.doi.org/10.1109/M-RA.2007.914931.
Song, H., Yu, J., Qiu, J., Sun, Z., Lang, K., Luo, Q., Wang, Y. (2022). Multi-UAV cover-
age planning with limited endurance in disaster environment. arXiv: 2201.10150 cs.RO .
https://doi.org/10.48550/arXiv.2201.10150.
Korki, M., Shankar, N. D., Shah, R. N., Waseem, S. M., Hodges, S. (2019). Automatic fault
detection of power lines using unmanned aerial vehicle (UAV). In 2019 1st International
Conference on Unmanned Vehicle Systems-Oman (UVS), IEEE, 1–6. http://dx.doi.org/
10.1109/UVS.2019.8658283.
38
Coombes, M., Chen, W. H., Liu, C. (2017). Boustrophedon coverage path planning for
UAV aerial surveys in wind. 2017 International Conference on Unmanned Aircraft Sys-
tems (ICUAS), IEEE, 1563–1571. http://dx.doi.org/10.1109/ICUAS.2017.7991469.
Gu, J., Tao, S., Wang, Q., Du, X. , Guizani, M. (2018). Multiple moving targets surveillance
based on a cooperative network for multi-UAV. IEEE Communications Magazine, 56(4),
82–89. http://dx.doi.org/10.1109/MCOM.2018.1700422.
Zhen, Z. Y., Xing, D. J., Gao, C. (2018). Cooperative search-attack mission planning for multi-
UAV based on intelligent self-organized algorithm. Aerospace Science and Technology, 76,
402–411. http://dx.doi.org/10.1016/j.ast.2018.01.035.
Tahir, A., Bling, J. M., Haghbayan, M. H., Toivonen, H. T., Plosila, J. (2019). Swarms of
unmanned aerial vehicles C a survey. Journal of Industrial Information Integration, 16
(100106). http://dx.doi.org/10.1016/j.jii.2019.100106.
Deng, J., Zhan, J., Xu, Z., Herrera-Viedma, E. (2022). Regret-Theoretic Multiattribute
Decision-Making Model Using Three-Way Framework in Multiscale Information Systems.
IEEE Transactions on Cybernetics .http://dx.doi.org/10.1109/TCYB.2022.3173374.
Deng, J., Zhan, J., Herrera-Viedma, E., Herrera, F. (2022). Regret theory-based three-
way decision method on incomplete multi-scale decision information systems with inter-
val fuzzy numbers. IEEE Transactions on Fuzzy Systems.http://dx.doi.org/10.1109/
TFUZZ.2022.3193453.
Wang, J., Ma, X., Xu, Z., Zhan, J. (2022). Regret theory-based three-way decision model in
hesitant fuzzy environments and its application to medical decision. IEEE Transactions on
Fuzzy Systems.http://dx.doi.org/10.1109/TFUZZ.2022.3176686.
Wang, W., Zhan, J., Herrera-Viedma, E. (2022). A three-way decision approach with a prob-
ability dominance relation based on prospect theory for incomplete information systems.
Information Sciences, 611, 199-224. https://doi.org/10.1016/j.ins.2022.08.065.
Wang, W., Zhan, J., Zhang, C., Herrera-Viedma, E., Kou, G. (2023). A regret-theory-based
three-way decision method with a priori probability tolerance dominance relation in fuzzy
incomplete information systems. Information Fusion, 89, 382-396. https://doi.org/10.
1016/j.inffus.2022.08.027.
Chen, J., Ling, F., Zhang, Y., You, T., Liu, Y., Du, X. (2021). Coverage path planning of het-
erogeneous unmanned aerial vehicles based on ant colony system. Swarm and Evolutionary
Computation, 69 (101005). https://doi.org/10.1016/j.swevo.2021.101005.
Chen, J., Zhang, Y., Wu, L., You, T., Ning, X. (2021). An adaptive clustering-based algorithm
for automatic path planning of heterogeneous UAVs. IEEE Transactions on Intelligent
Transportation Systems.https://doi.org/10.1109/TITS.2021.3131473.
39
Zhao, Y., Zhou, D., Piao, H., Yang, Z., Pan, Q. (2021). Cooperative multiple task assignment
problem with target precedence constraints using a waitable path coordination and modified
genetic algorithm. IEEE Access, 99. https://doi.org/10.1109/ACCESS.2021.3063263
Zhang, L. J., Sun, J. B., Guo C., Zhang, H. (2018). A multi-swarm competitive algorithm
based on dynamic task allocation particle swarm optimization. Arabian Journal for Science
and Engineering, 43(12), 8255–8274. http://dx.doi.org/10.1007/s13369-017-2820-8.
Issac, T., Silas, S., Rajsingh, E. B. (2020). Prototyping a scalable P-system-inspired dynamic
task assignment algorithm for a centralized heterogeneous wireless sensor network. Arabian
Journal for Science and Engineering, 45(12), 10353–10380. https://doi.org/10.1007/
s13369-020-04700-6.
Dantzig, G., Fulkerson, R., Johnson, S. (1954). Solution of a large-scale traveling salesman
problem. Journal of the operations research society of America, 2(4), 393–410. http://dx.
doi.org/10.1287/opre.2.4.393.
Laporte, G. (1992). The vehicle routing problem: An overview of exact and approximate
algorithms. European journal of operational research, 59(3), 345–358. http://dx.doi.org/
10.1016/0377-2217(92)90192-c.
Cattrysse, D. G., Van Wassenhove, L. N. (1992). A survey of algorithms for the generalized
assignment problem. European journal of operational research, 60(3), 260–272. http://dx.
doi.org/10.1016/0377-2217(92)90077-M.
Rasmussen, S. J., Shima, T. (2006). Branch and bound tree search for assigning cooperating
UAVs to multiple tasks. In 2006 American Control Conference.http://dx.doi.org/10.
1109/ACC.2006.1656541.
Alighanbari, M., How, J. P. (2005). Cooperative task assignment of unmanned aerial vehicles
in adversarial environments. American Control Conference, 4661–4666. http://dx.doi.
org/10.1109/ACC.2005.1470731.
Sujit, P. B., George, J. M., Beard, R. (2008). Multiple UAV task allocation using parti-
cle swarm optimization. AIAA Guidance, Navigation and Control Conference and Exhibit.
http://dx.doi.org/10.2514/6.2008-6837.
Zeng, N., Wang, Z., Liu, W., Zhang, H., Hone, K., Liu, X. (2022). A dynamic neighborhood-
based switching particle swarm optimization algorithm. IEEE Transactions on Cybernetics,
52(9), 9290–9301. http://dx.doi.org/10.1109/TCYB.2020.3029748.
Fei, S., Yan, C., Shen, L. (2008). UAV cooperative multi-task assignment based on ant colony
algorithm. Acta Aeronautica et Astronautica Sinica, 29(5), 188–189. http://en.cnki.com.
cn/Article_en/CJFDTOTAL-HKXB2008S1028.htm.
40
Darrah, M., Niland, W., Stolarik, B., Walp, L. (2006). UAV cooperative task assignments
for a SEAD mission using genetic algorithms. AIAA Guidance, Navigation, and Control
Conference and Exhibit.http://dx.doi.org/10.2514/6.2006-6456.
Wang, Z., Li, L., Long, T., Wen, Y. (2018). Multi-UAV reconnaissance task allocation for
heterogeneous targets using an opposition-based genetic algorithm with double-chromosome
encoding. Chinese Journal of Aeronautics, 31(2), 339–350. https://doi.org/10.1016/j.
cja.2017.09.005.
Velhal, S., Sundaram, S. (2020). Restricted airspace protection using multi-UAV spatio-
temporal multi-task allocation. Arxiv: 2011.11247 Eess.SY.https://doi.org/10.48550/
arXiv.2011.11247.
Wang, Z. Y., Wang, B., Wei, Y. L., Liu, P. F., Zhang, L. (2020). Cooperative multi-task
assignment of multiple UAVs with improved genetic algorithm based on beetle antennae
search. 2020 39th Chinese Control Conference, 1065–1610. https://doi.org/10.23919/
CCC50068.2020.9189661.
Ye, F., Chen, J., Sun, Q., Tian, Y., Jiang, T. (2021). Decentralized task allocation for hetero-
geneous multi-UAV system with task coupling constraints. The Journal of Supercomputing,
77(1), 111–132. https://doi.org/10.1007/s11227-020-03264-4.
Ye, F., Chen, J., Tian, Y., Jiang, T. (2020). Cooperative task assignment of a heterogeneous
multi-UAV system using an adaptive genetic algorithm. Electronics, 9(4), 687. https://
doi.org/10.3390/electronics9040687.
Afghah, F., Zaeri-Amirani, M., Razi, A., Chakareski, J., Bentley, E. (2018). A coalition
formation approach to coordinated task allocation in heterogeneous UAV networks. In
2018 Annual American Control Conference (ACC), IEEE, 5968–5975. https://doi.org/
10.23919/acc.2018.8431278.
Fan, C., Han, S., Li, X., Zhang, T., Yuan, Y. (2021). A modified nature-inspired meta-heuristic
methodology for heterogeneous unmanned aerial vehicle system task assignment problem.
Soft Computing, 25(22), 14227–14243. https://doi.org/10.1007/s00500-021-06104-6.
Ye, F., Chen, J., Tian, Y., Jiang, T. (2020). Cooperative multiple task assignment of het-
erogeneous UAVs using a modified genetic algorithm with multi-type-gene chromosome
encoding strategy. Journal of intelligent and robotic systems, 100(2), 615–627. https:
//doi.org/10.1007/s10846-020-01184-2.
Zhen, Z., Chen, Y., Wen, L., Han, B. (2020). An intelligent cooperative mission planning
scheme of UAV swarm in uncertain dynamic environment. Aerospace Science and Technol-
ogy, 100, 105826. https://doi.org/10.1016/j.ast.2020.105826.
Li, Y., Zhang, S., Zhang, J., Yin, Y., Xiao, W., Zhang, Z. (2019). Data-driven multi-
objective optimization for burden surface in blast furnace with feedback compensation.
41
IEEE Transactions on Industrial Informatics, 16(4), 2233–2244. https://doi.org/10.
1109/TII.2019.2908989.
Zeng, N., Song, D., Li, H., You, Y., Liu, Y., Alsaadi, F. E. (2021). A competitive mecha-
nism integrated multi-objective whale optimization algorithm with differential evolution.
Neurocomputing, 432, 170-182. https://doi.org/10.1016/j.neucom.2020.12.065.
Li, Y., Zhang, J., Zhang, S., Xiao, W., Zhang, Z. (2022). Multi-objective optimization-based
adaptive class-specific cost extreme learning machine for imbalanced classification. Neuro-
computing, 496, 107–120. https://doi.org/10.1016/j.neucom.2022.05.008.
Atencia, C. R., Del Ser, J., Camacho, D. (2019). Weighted strategies to guide a multi-objective
evolutionary algorithm for multi-UAV mission planning. Swarm and Evolutionary Compu-
tation, 44, 480–495. https://doi.org/10.1016/j.swevo.2018.06.005.
Chen, H. X., Nan, Y., Yang, Y. (2019) Multi-UAV reconnaissance task assignment for hetero-
geneous targets based on modified symbiotic organisms search algorithm. Sensors, 19(3),
734. https://doi.org/10.3390/s19030734.
Wang, J. F., Jia, G. W., Lin, J. C., Hou, Z. X. (2020). Cooperative task allocation for
heterogeneous multi-UAV using multi-objective optimization algorithm. Journal of Central
South University , 27(2), 432–448. https://doi.org/10.1007/s11771-020-4307-0.
Cheng, Y., Liao, Y., Zhai, X. (2020). Energy-efficient resource allocation for UAV-empowered
mobile edge computing system. 2020 IEEE/ACM 13th International Conference on Util-
ity and Cloud Computing (UCC), 408–413. https://doi.org/10.1109/UCC48980.2020.
00064.
Wang, J. F., Jia, G. W., Lin, J. C., Hou, Z. X. (2020). Cooperative task allocation for
heterogeneous multi-UAV using multi-objective optimization algorithm. Journal of Central
South University, 27(2), 432–448. https://doi.org/10.1007/s11771-020-4307-0.
Jia, Z. Y., Yu, J. Q., Ai, X. L., Xu, X., Yang, D. (2018). Cooperative multiple task assignment
problem with stochastic velocities and time windows for heterogeneous unmanned aerial
vehicles using a genetic algorithm. Aerospace Science and Technology, 76, 112–25. https:
//doi.org/10.1016/j.ast.2018.01.025.
Deb, K., Pratap, A., Agarwal, S., and Meyarivan, T. (2002). A fast and elitist multiobjective
genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation, 6(2), 182–
197. https://doi.org/10.1109/4235.996017.
Zuo, M. C., Dai, G. M., Peng, L. (2021). A new mutation operator for differential
evolution algorithm. Soft Computing, 25(21), 13595–13615. https://doi.org/10.1007/
s00500-021-06077-6.
42