Scholarly article on topic 'Cooperative task assignment of multiple heterogeneous unmanned aerial vehicles using a modified genetic algorithm with multi-type genes'

Cooperative task assignment of multiple heterogeneous unmanned aerial vehicles using a modified genetic algorithm with multi-type genes Academic research paper on "Materials engineering"

CC BY-NC-ND
0
0
Share paper
Academic journal
Chinese Journal of Aeronautics
OECD Field of science
Keywords
{"Cooperative control" / "Genetic algorithm" / "Heterogeneous unmanned aerial vehicles" / "Multi-type genes" / "Task assignment"}

Abstract of research paper on Materials engineering, author of scientific article — Qibo Deng, Jianqiao Yu, Ningfei Wang

Abstract The task assignment problem of multiple heterogeneous unmanned aerial vehicles (UAVs), concerned with cooperative decision making and control, is studied in this paper. The heterogeneous vehicles have different operational capabilities and kinematic constraints, and carry limited resources (e.g., weapons) onboard. They are designated to perform multiple consecutive tasks cooperatively on multiple ground targets. The problem becomes much more complicated because of these terms of heterogeneity. In order to tackle the challenge, we modify the former genetic algorithm with multi-type genes to stochastically search a best solution. Genes of chromosomes are different, and they are assorted into several types according to the tasks that must be performed on targets. Different types of genes are processed specifically in the improved genetic operators including initialization, crossover, and mutation. We also present a mirror representation of vehicles to deal with the limited resource constraint. Feasible chromosomes that vehicles could perform tasks using their limited resources under the assignment are created and evolved by genetic operators. The effect of the proposed algorithm is demonstrated in numerical simulations. The results show that it effectively provides good feasible solutions and finds an optimal one.

Academic research paper on topic "Cooperative task assignment of multiple heterogeneous unmanned aerial vehicles using a modified genetic algorithm with multi-type genes"

Chinese Journal of Aeronautics, (2013),26(5): 1238-1250

JOURNAL OF

AERONAUTICS

Chinese Society of Aeronautics and Astronautics & Beihang University

Chinese Journal of Aeronautics

cja@buaa.edu.cn www.sciencedirect.com

Cooperative task assignment of multiple heterogeneous unmanned aerial vehicles using a modified genetic algorithm with multi-type genes

Deng Qibo, Yu Jianqiao *, Wang Ningfei

Key Laboratory of Dynamics and Control of Flight Vehicle, Ministry of Education, School of Aerospace Engineering, Beijing Institute of Technology, Beijing 100081, China

Received 27 August 2012; revised 3 December 2012; accepted 20 February 2013 Available online 1 August 2013

KEYWORDS

Cooperative control; Genetic algorithm; Heterogeneous unmanned aerial vehicles; Multi-type genes; Task assignment

Abstract The task assignment problem of multiple heterogeneous unmanned aerial vehicles (UAVs), concerned with cooperative decision making and control, is studied in this paper. The heterogeneous vehicles have different operational capabilities and kinematic constraints, and carry limited resources (e.g., weapons) onboard. They are designated to perform multiple consecutive tasks cooperatively on multiple ground targets. The problem becomes much more complicated because of these terms of heterogeneity. In order to tackle the challenge, we modify the former genetic algorithm with multi-type genes to stochastically search a best solution. Genes of chromosomes are different, and they are assorted into several types according to the tasks that must be performed on targets. Different types of genes are processed specifically in the improved genetic operators including initialization, crossover, and mutation. We also present a mirror representation of vehicles to deal with the limited resource constraint. Feasible chromosomes that vehicles could perform tasks using their limited resources under the assignment are created and evolved by genetic operators. The effect of the proposed algorithm is demonstrated in numerical simulations. The results show that it effectively provides good feasible solutions and finds an optimal one.

© 2013 Production and hosting by Elsevier Ltd. on behalf of CSAA & BUAA.

1. Introduction

Unmanned aerial vehicles (UAVs) have been developed for decades and attract much research interest. As their

quick growth in onboard systems and great advantages in operations, they are being increasingly used in military and civilian domains.1 However, for their limitations in sizes and capabilities, future generations of UAVs should work as a team.2 Cooperative control of multiple UAVs that autonomously accomplish missions has been an emerging issue since the 21st century. Cooperation of multiple UAVs as a team will enable new operational paradigms and get higher team performance. However, some great challenges arise. The problem of cooperative multiple task assignment3-8 is a crucial one. Task assignment minimizes total performing cost or maximizes team performance. The general form is to assign a number of agents to perform a number of tasks on targets. Each agent can be

* Corresponding author. Tel.: +86 10 68912407. E-mail addresses: dqbhunter@gmail.com (Q. Deng), jianqiao@ bit.edu.cn (J. Yu).

Peer review under responsibility of Editorial Committee of CJA.

1000-9361 © 2013 Production and hosting by Elsevier Ltd. on behalf of CSAA & BUAA. http://dx.doi.Org/10.1016/j.cja.2013.07.009

assigned more than one task, and each target has multiple consecutive tasks to be performed on. One of the main challenges is computational complexity.5 Problem size, task coupling, and time constraint are three basic attributes.6-8

Moreover, there is a much more challenging complexity, that is, heterogeneity1'9 must be treated specially. In practical applications, varieties of vehicles may be needed. Firstly, different UAV platforms are considered. The UAV team may contain fixed-wing aircraft, helicopters, or airships, each of which has its specific kinematic and functional characteristics. Secondly, operational capabilities of UAVs may not be unique. For example, some vehicles may be functional for surveillance tasks while others for attack tasks. With limited and unequal resources (e.g., munitions), distinct vehicles are suitable for distinct tasks. Great benefits would result from cooperation of multiple heterogeneous UAVs because of the complementary advantages among vehicles.

In recent years the task assignment problem has been presented as a combinatorial optimization problem10 that is generalized as the cooperative multiple task assignment problem (CMTAP)5,7 associated with cooperation of multiple fixed-wing UAVs autonomously performing multiple tasks on multiple targets. As mentioned previously, it is very complicated and belongs to NP-hard problems.5,10,11 Several cooperative decision and control algorithms have been developed for solving the CMTAP, such as the network flow optimization method,12,13 mixed integer linear programming (MILP), and genetic algorithm (GA).9,17-20 Integer decision variables and continuous variables are involved in these customized combinatorial optimization methods. As a heuristic stochastic search algorithm, GA has much more potential to find a good solution of the CMTAP due to its prohibitive computational

complexity.5,11

However, as former GAs9,17-20 are essentially designed for homogeneous UAVs, heterogeneity and limited resource constraint are not dealt with well yet. In Ref.18, the number of weapons onboard each homogeneous vehicle is limited. As weapons are depleted, UAVs become heterogeneous, but heterogeneity and limitation of resources are not presented in the genetic operators. Then the heterogeneous CMTAP is studied in Ref.9, while limitation of resources is not considered and the heterogeneous CMTAP is not treated essentially. The common point is that, genes have no difference so that they cannot deal with heterogeneity of either targets or UAVs. In this paper, these issues of heterogeneity and limited resources are both considered.

In order to process the challenge brought by multiple heterogeneous UAVs, we propose a methodology of multi-type genes to modify GA by the inspiration of genetic engineering and biotechnology. It's known that chromosomes of human consist of many heterogeneous genes which are specifically functional. Why not use this idea in GA?

The most critical part of solving the heterogeneous CMTAP is to express specific demands of different tasks on targets and heterogeneity of UAVs. Compared to former GAs, in our work genes of chromosomes are distinct according to tasks that need to be performed on all targets, and then chromosomes are encoded to distinguish the designation of heterogeneous vehicles. Moreover, a method of mirror representation of UAVs is used to express the properties of UAVs' limited resources. Hence, the resource information of the UAV team is stored and

updated in real-time. With this strategy, genetic operators are redesigned to process distinct types of genes specifically, that is, GA is modified for the heterogeneous CMTAP.

2. Problem formulation

In this section a formulation of the heterogeneous CMTAP is presented through describing targets, tasks, and UAVs. It extends the work of Refs.9,18. The problem is considered for scenarios where multiple heterogeneous UAVs are allocated to perform a set of predefined tasks on known ground targets. The vehicle team contains a group of fixed-wing UAVs with limited resources (e.g., onboard weapons) and different operational capabilities and kinematic constraints.

2.1. Targets and tasks

Two types of targets are considered as examples, one of less importance or lightly armored needs a single attack and the other of more importance or heavily armored needs two simultaneous attacks from two separate UAVs. Let

Tall — {T1, T2; ••• , TNTg }

be the set of NTg stationary ground targets containing two types, with known positions. These targets are designated to the UAV team. Three consecutive tasks are predefined on targets. The task set MT of target T 2 Tall is a subset of the complete task set M, that is

Mt # M — {C, A, Vg (2)

where C, A, and V denote classify, attack, and verify, respectively. The tasks Cand Vare both surveillance tasks. According to the target type, there are two kinds of A, i.e., single attack As and double simultaneous attacks Ad. Ad consists of two attack tasks which should be performed by two distinct vehicles. It should be noted that there is a precedence requirement. A target cannot be attacked before being classified and must be verified after being attacked. If a target needs double simultaneous attacks, these attacks should be performed simultaneously.

Let NmT denote the number of tasks that need to be performed on target T 2 Tall, so that NmT — ||MT||, which is the cardinality of MT. Each task must be performed only once except for Ad that is performed twice. Hence, the number of all tasks that should be performed by UAVs throughout the sce-

Nall — Nm

If there are Ntc targets needing the C task, Ntv targets needing the V task, Nas targets needing the single attack task, and Nad targets needing the double simultaneous attacks, Ntc, Ntv, Nas, Nad 2 [0, NTg] are integers and Nas + Nad 6 NTg; so that the total number of surveillance tasks Nts and the total number of attack tasks Nta are

Nts — Ntc + Ntv Nta — Nas + 2Nad Nall — Nts + Nta

For scenarios involving heterogeneous UAVs, different vehicles have different operational capabilities and performances.

It is important to make tasks distinguished and ensure executable task sequences are allocated to vehicles.

2.2. Vehicles

The heterogeneous UAVs with limited resources of onboard weapons are defined. Two types of capabilities are used to specify vehicle specialties, but other capabilities could be used easily. They are surveillance and attack.9 A vehicle with capability of surveillance could perform surveillance tasks, i.e., classification and verification tasks, while vehicles with capability of attack could perform attack tasks, i.e., single attack and double simultaneous attacks. Moreover, each vehicle with the attack capability only has a limited number of weapons onboard. That is, there are a maximum number of attack tasks assigned to a vehicle with attack capability. After weapons are depleted, that vehicle can no longer be assigned attack tasks and then be useless or changed into a UAV of other type.

According to whether a vehicle has surveillance or attack capability, we discuss three vehicle specialties,9 which are combat UAV, surveillance UAV, and munition UAV. A combat UAV has both surveillance and attack capabilities, which makes it capable of performing all tasks in the set M. A surveillance UAV has the capability of surveillance, and can perform surveillance tasks, i.e., classification and verification tasks. A munition UAV which has the capability of attack can be assigned attack tasks. All UAVs with attack capability have limited weapons onboard. If a combat UAV uses up its weapons, it becomes a surveillance UAV, and hence can only perform surveillance tasks. While a munition UAV uses up its weapons, it can no longer be assigned tasks, and perhaps should return to base. The three UAV specialties are shown in Table 1.

Uall = {U\, U2 , UN g

be the set of Nv cooperating heterogeneous fixed-wing UAVs. In Eq. (5), t denotes the type of UAVs, and could be "c"— combat, "s" — surveillance, or "m" — munition. Each vehicle is subjected to its specific kinematic constraints. We use the Dubins Car model6'21'22 for motion planning. The configuration of vehicles can be defined by three states: q =(*,y, w) (6)

where (x, y) is the UAV's horizontal coordinate in a Cartesian inertial reference frame, and W the heading angle of the vehicle. For UAV u, the equations of motion are as follows:

x — vu cos W y — vu sin W

W — ^u/p^n

where vu is the constant speed of vehicle u, the minimum turning radius, and c the steering command such that |c| 6 1. The induced path, Dubins path, is used for path generation.

Table 1 UAV specialties.

No. Type Capability Task

1 Combat Surveillance and attack {C, A, V}

2 Surveillance Surveillance {C, V}

3 Munition Attack {A}

We adopt the definitions of heading angle discretization of W and graph representation of the CMTAP in Ref.9. Some basic statements are extracted in Eq. (8). For more details, refer to the excellent work in Ref.9.

H ={W/| W/ = 2P//NW , / = 0 , 1 , ... ;Nw - 1 g VTg = {(T, WOl' = 1,2,..., NTg ,j = 1,2,..., Nwg Ni = || Vrg11 = NTgNw

Vu = {(U1, W1,o), (U2, W2,o),..., (UN, wn„o)} 8

V = VTg U Vu ( )

N2 = || V||= Nv + NTgNw Eg = {(v,-, vj)|vi 2 V, Vj 2 VTg} Ne = ||Eg|| = NrgNw (Nv + NTgNw)

where positive integer Nw defines the desired heading angle resolution, H the heading angle discretization set, VTg the set of vertices standing for positions of targets and vehicles' spatial configurations approaching the target, N1 the cardinality of VTg, VU the set of vertices that represent UAVs' initial poses, N2 the number of all vertices in the graph, Eg the set of directed edge connecting a node in V to a node in VTg, NE the cardinality of Eg.

In addition, for the sake of simplicity, we have four basic assumptions that (1) uAVs are survivable and cannot be destroyed while performing tasks; (2) UAVs fly at separate altitudes so that have collision-free paths; (3) fuel is enough for every vehicle; (4) there are limited but enough resources (e.g., weapons) onboard the UAV team to perform all tasks.

2.3. Combinatorial optimization problem

The task assignment problem is described as a combinatorial optimization problem. Each assignment that allocates multiple vehicles to perform multiple tasks on multiple targets is a feasible solution. We choose the execution time that the mission takes to be accomplished as the objective function to be minimized,

n2 N1 3

J — maJ EEEXik.

where (v, vj) (i = 1, 2, ..., N2, j = 1,2,..., N1) denotes the directed edge of the optimization graph. wk{y. v ) is the cost of vehicle u performing task k under the guidance of the edge. We choose the task cost time, which is the time interval between the time of a UAV leaving the former node and the finishing time of the current node, as the cost. v ) is a binary decision variable, i.e.,

K, Vj)2{0 ,1} (10)

where v ) = 1 means that the edge e = (vi, vj) is followed by vehicle u 2 Uall to perform task k, k =1 corresponds to classify tasks, k = 2 attack tasks, and k = 3 verify tasks; otherwise, 0.

There are four constraints that should be satisfied in this problem.

The first constraint is

Nv N2 Nw-1 3

J2J2J2J2ruvkt, (T w,))— Nm

u—1 i—1 1=0 k—1

VTe Ta!

Eq. (11) ensures that every task of target T must be performed once. The second constraint is

the set Pu — {(v„v,)|X4) — 1, V 2 V,vj 2 Vxg , k 2 {1 ,2,3}} is the connected path of vehicle Vm 2 Uall

The third constraint is

tc 6 tAs < tV tc 6 tAd1 — tAd2 < tV

where tm (m = C, A, V) is the cumulative task time of a target from the start time to the time of being performed by a vehicle. The first equation is for targets that need single attack, and the second equation is for targets that need double simultaneous attacks. For simplicity, we set all vehicles start at the same time to perform tasks.

The last and core constraint of this paper is the limited resources, e.g., weapons, that is

EEXS,) < <, Vm 2 Uall (14)

i—1 j—1

where v) refers to the assignment of vehicle m to perform an attack task, and nam is the limitation of weapons. For surveillance vehicles, nam — 0 as they have no weapon onboard.

The objective function (Eq. (9)) and constraints (Eqs. (11)-(14)) compose a combinatorial optimization form of the heterogeneous CMTAP. Note that the objective function is in some sense to minimize the longest single path among all vehicles if the difference of UAV speeds is not considered. It could be derived by the setting of constant speed of the Dubins Car model.

3. Modified GA with multi-type genes

Genetic algorithm23 that imitates the way of survival of the fittest is a stochastic and heuristic search method based on the mechanics of natural selection and genetics. It creates an initial population of solutions, and then selects the good ones to evolve new generations of population iteratively until a best solution is found or a termination condition is satisfied. There are several basic functions and operators that make up a GA: objective and fitness functions, encoding of chromosomes, initialization, elitism, selection, crossover, and mutation. A simple flow chart is illustrated in Fig. 1. GA has become a powerful tool for solving combinatorial optimization problems of high computational complexity. It can be used to search good feasible solutions in a huge solution space, and converge to a good solution which may not be the optimal one.

All feasible solutions, each of which is a task allocation scheme in the topic of task assignment,17 are encoded as chromosomes. In this section, we present a modified GA with multi-type genes to search the solution space of the heterogeneous CMTAP. Firstly, the mirror representation of UAVs with limited resources is described to express the resource limitation of heterogeneous UAVs; secondly, the detail of the modified GA is presented; finally, some issues about time constraints are discussed.

3.1. Mirror representation of UAVs

Mirror representation is a basic method for the heterogeneous CMTAP with limited resources. It collects identical capability

Fig. 1 Flow chart of GA.

of a UAV team together and stores the team information that will be used in the genetic operators introduced in Section 3.2.

We take the limited weapons onboard each vehicle for example. As mentioned before, three types of vehicles and two types of capabilities are considered. We collect all surveillance capabilities in a surveillance set US, that is,

Us — {u„ U2; ••• ,USNvs, U1, U2,

where Us(i — 1,2 ,... ,Nvs) denote the surveillance vehicles, and Uc(i — 1,2 ,..., Nvc) the combat vehicles. Since the surveillance capability has no limitation, each vehicle in US could be assigned surveillance tasks any time. The total number of UAVs with surveillance capability, NS, is

Ns — II Us II — Nvs + Nvc

The attack capability is also collected in an attack set Ua,

Ua — {um , um ,..., umvm, uv u2, ..., Unvc } (17)

where U™(i — 1,2 ,... ,Nvm) denote the munition vehicles. However, onboard weapons are limited. In order to deal with this constraint, we use mirrors of vehicles in Ua to represent the limited resources. If the ith vehicle in Ua could perform attack tasks nia times at most, the universal (mirror) attack set Uaus in which the ith vehicle is replaced with nia mirrors is

U — { Um,1, UT,2, ... , Ul,n'i, ... , U,1, Ut,2, ... , Ui,na, ... , UNvc,1,

UNvc ,2 , ... UNvc nN^} (18)

That is, the degree of mirror of the ith vehicle in Uaus is nia, which represents the number of mirrors of the corresponding UAV. Each mirror corresponds to a unit of weapon.

The total number of mirrors or weapon units, Naw, and the total number of UAVs with attack capability, Na, are

NT — n

Na — 11 Ua 11 — Nvm + Nvc

where we set 0 as the value of nia for a surveillance vehicle to make the calculation easier.

Vehicles assigned attack tasks are selected from the universal attack set. We select a mirror to perform an attack task, and then the chosen mirror should be subtracted from the universal set. After all attack tasks allocated, the unused mirrors compose a new attack set, called the complement attack set Uas, which is a subset of the universal set,

uas = {"a 2 UTK is unused}

There are N — N — Nta unused mirrors.

The mirror representation of vehicles plays an important and basic role in the modified GA. It makes vehicles with more remaining weapons have more chances to be selected and makes us cope with the limited resource constraint sophisticatedly.

Remark 1. It should be noted that the mirror representation could be used in scenarios involving vehicles with more than one type of limited resources, and in scenarios that some attack tasks employ more than one unit of weapon. In this paper, only one type of resource, i.e., weapon, is considered. In addition, for simplicity, there is only one way to use weapons and each attack uses one weapon unit.

3.2. Modified GA

Former GAs used in the CMTAP are essentially designed for homogeneous UAVs. There is no difference between genes of chromosome, so that they cannot process the specific requirement of tasks and the distinct features of heterogeneous vehicles. Under the problem formulation previously described, we modify the former GAs with genes of multiple types. The basic idea is to encode chromosomes on the basis of task type, so that the distinct features and requirements of tasks and some characteristics of vehicles are expressed, and then to design genetic operators including initialization, crossover, and mutation for each type of genes. Meanwhile, attached to one chromosome, necessary information of the UAV team (e.g., the complement attack set) must be stored and updated. The mirror representation of vehicles is a basic tool to deal with the limited resource constraint. As is known to all, every gene composing natural chromosomes has a specific functionality. The genes of GA defined as follows get some similar properties.

3.2.1. Encoding

The encoding of chromosomes with multi-type genes is the most critical part of the modified GA. A chromosome is encoded as a matrix with Nall genes, each of which is a column of the matrix and represents designating a task of one target to a UAV.17 A gene gets two parts: the first part stands for target and task; the second part stands for UAV, capability, and approaching angle. It is shown in Fig. 2.

Part 1 is about targets, and Part 2 about vehicles. The target row is the target identifier which is a number of the set {1,2, ..., NTg}. The task row is the designated task. The number Ta of the task row is an indicator, which is —1 for classify, 1 for single attack, 2 for one of the double simultaneous attacks, and —2 for verify. They do not have the same meanings as k 2 {1,2, 3} in Eq. (9). k is used to specify tasks in the

Part l

Part 2

® Classify gene1 (2) Single attack gene" I Surveillance genes

2 —»-Target t -2 —»-TaskTa

I —»-UAVu -1 —»-Capability Ca

3 —Approaching angle 46

© Double attack gene" @ Verify gene1 II Attack genes

Fig. 2 Representation of multi-type genes (N^ = 36).

description of the combinatorial optimization problem. Here, we use the indicator Ta to specify types of genes more than tasks. Genes with Ta < 0 are surveillance genes including classify genes and verify genes, and genes with Ta > 0 are attack genes including single attack genes and double attack genes. The chosen UAV from the set {1,2, ..., Nv} is placed in the third row. The capability row shows the corresponding capability of the vehicle to perform the task. Ca = 1 represents the capability of attack, and Ca = — 1 stands for the surveillance capability. Ta and Ca of a same gene must have a same sign, i.e., the vehicle must have the right capability to perform the task, or else the chosen vehicle may not be capable to perform the task, for the vehicle may not have the right capability. The last row of the approaching angle / is the discretized heading angle at which the vehicle approaches the target. It should be selected from {0,1,..., Nw — 1} and the actual approaching angle is W = 2p//Nw. Thus genes are assorted into 2 types and 4 kinds according to what task a gene has. Fig. 3 illustrates several examples of genes.

Nall genes compose a chromosome. As shown in Fig. 4, they are arranged based on the target visitation order of each involved UAV, which is similar to the scheme in Ref.9 where the unique representation of each candidate in the solution search space has been proved. Moreover, we develop a new scheme by splitting a chromosome into two groups of subchromosomes based on vehicles and targets respectively, and then manipulating the chromosome and sub-chromosomes sophisticatedly with the mirror representation of vehicles to process the limited resource constraint.

In Fig. 4, n heterogeneous UAVs are allocated to perform tasks. Their identifiers are ranked from small to large in the vehicle row of chromosomes, that is

Ul < U2 < ■■■ < Un ; H < Nv

Genes with a same identifier Ui (i = 1,2,..., n) in the chromosome are arranged according to the task execution order of the corresponding UAV. If vehicle Ui is assigned hi tasks, there are

(a) Right genes (b) Failed genes

Fig. 3 Example genes (Nw = 36).

Encoding of chromosome

Jü¡ Tu¡ ■■ T"h¡ T"2 ju2 .. T¿1 .. Vi" Vi" «Ir

Ta"1 Ta"1 .. Ta»,1 Ta"2 Ta"2 ■■ Taí2 .. Ta"" Ta ? Ta t

U, U, .. U, u2 u2 .. U2 .. Un Un Un

Caí Caí .. Caí, Caí Caí .. Ca"f .. Caí Caí Ca a

<í>í W <K'2 .. K .. K <t>"" K

we have chromosomes encoded and get two groups of subchromosomes. These two groups have the relation of

Complement attack set of the chromosome

Group of vehicle-based sub-chromosomes Group of target-based sub-chromosomes

TU, TU, - n!¡

Taí Taí .. Ta",1

u> U, •• u,

Caí Caí ■■ Caí

«P,1 <P2 •• 'l.

Tu2 Tu2 ■• T¡¡i

Ta"2 Taí ■■ Ta£

u2 u2 .. U2

Caí Caí ■ ■ Ca"f

• • ¥>»2

1 Ta! 1 . Tai . . 1 ■ Tai,,,

u\ U\ . .

Ca1, Ca1, . <M ■ ■ Ca1 , ■

2 2 . . 2

Ta; Ta ¡ ■ •

u\ U\ . . Ul2

Caf Cal . . Ca22

<t>] 41 ■

j-fjn t2" tun

Taí Ta? •• Ta""

¡7 Un .. Un

Caí Caí ■■ Ca t

<S>1" </>?" ■• k

Ta> Ta> . Ta"?

£/> U?>. uZ°

Fig. 4 Encoding of a chromosome and its sub-chromosomes.

hi genes that get the same Ui, and each of them is a node in the optimization graph and the configuration of vehicle U to visit target TUi (j = 1,2, ..., hi). After a solution is encoded, we get a complement attack set. Note that each complement attack set is attached to one chromosome. Distinct task assignments (i.e., chromosomes) have distinct allocation schemes of vehicles. Thus each chromosome has a specific complement attack set. That is, not only the matrix but also the specific complement attack set, i.e., the team information, of the chromosome is stored.

A chromosome could be split into n vehicle-based sub-chromosomes naturally and uniquely. As presented in Section 2.1. Target T 2 Tall has a task set MT ç M = {C, A, V}. Solutions should fulfill all task sets to make sure all tasks are assigned. Hence, one chromosome can be split into NTg target-based sub-chromosomes. Each target-based sub-chromosome corresponds to a target. Genes of a same target-based sub-chromosome are ranked in the precedence order of tasks that is firstly classification task, secondly attack task, and finally verify task. We treat pairs of double simultaneous attacks no difference in precedence order, i.e., the double attack pair {Ad1, Ad2} is the same as {Ad2, Ad1} from the precedence order perspective. The precedence order of tasks is unique, and thus the arrangement of genes in target-based sub-chromosomes is unique. Finally,

Y^h NmT = Nall

A chromosome and its vehicle-based group are transformed into each other straightforwardly and naturally according to the encoding of chromosomes. Transforming a chromosome or a vehicle-based group into its target-based group is straightforward too. However, transforming a target-based group into its chromosome or vehicle-based group is not straightforward. Some tips should be noted. Genes of a vehicle-based sub-chromosome are arrayed in task execution order performed by the corresponding vehicle. Therefore, each vehicle-based sub-chromosome is actually the exact task sequence designated to the corresponding UAV, and the induced path is a set of connected traceable vehicle paths from the initial node to the final node. The target-based sub-chromosomes are constraints of task precedence order on the target. This means that the vehicle-based group corresponds to an allocation of multiple tasks uniquely, while the target-based group represents the unique time precedence constraint of multiple tasks on targets.

Remark 2. Note that the vehicle-based sub-chromosome is the task sequence of a vehicle and chromosomes are encoded based on all task sets of targets. Therefore, the first constraint in Eq. (11) of each task being performed exactly one time and the second constraint in Eq. (12) of a connected path of each UAV are naturally satisfied.

3.2.2. Initialization

Initialization, crossover, and mutation are three core genetic operators of the modified GA. The initialization operator is to obtain the initial population, and the other two operators are used to evolve the populations to get a best solution.

In former GAs that are essentially designed for homogeneous UAVs, an initial population is obtained by a stochastic process. There is no difference between vehicles, and it's unnecessary to distinguish genes. Their initialization operators are simple. The other two operators are straightforward and unique similarly. However, some significant changes appear in the heterogeneous CMTAP. Different types of tasks need different types of capabilities and resources. For a homogeneous team, each genetic operator is unique, since every vehicle could perform any task on any target. However, for a heterogeneous team, there are differences in operational capabilities. One UAV cannot perform all tasks anymore. Different tasks and then genes must be treated specially. The operators are not unique for heterogeneous UAVs. That is, each type of gene needs a specific operator. Given all of this, we design a new scheme of genetic operators to deal with the challenges of heterogeneous UAVs. The genetic operators are introduced as follows.

The initialization operator is a much more complex stochastic process than those of former GAs. The flow chart is shown in Fig. 5. There are three steps to get an initial chromosome.

Step 1 For each task in the task set MTc M = {C, A, Vg of a target 8 T 2 Tall, according to the task type, a

Fig. 5 Flow chart of initialization.

corresponding gene is generated by randomly selecting a right UAV from the corresponding capability set. That is, select a UAV from the surveillance set to generate a surveillance gene, and select a UAV mirror from the current complement attack set to generate an attack gene. After all tasks are exhausted, the target-based group and the attached complement attack set are obtained. The process detail is stated as pseudo code in Fig. 6.

Step 2 Transform the target-based group to a vehicle-based group. Genes with a same UAV identifier are collected in one matrix which is indeed an original vehicle-based sub-chromosome. Then randomly change the order of columns of the matrix. That is, randomly change the task execution order of the corresponding vehicle. After all genes are collected, a vehicle-based group that represents a unique mission assignment is obtained.

2: for each target T e TM , with the corresponding task set MT Q M = {Cjy\, do 3: initialize a matrix as the corresponding target-based sub-chromosome

11: case 3: is one of a pair of double simultaneous attack tasks

12: find the UAV u that is allocated to the other simultaneous attack task

16: randomly choose a discretized heading angle (j> e {0,1, —1}

20: the target-based sub-chromosome of target T *- the updated matrix

22: return a group of target-based sub-chromosomes and the attached complement

Fig. 6 Process detail of the first step of the initialization operator with three specific operations.

Step 3 Merge the vehicle-based group into a chromosome, and attach the complement attack set obtained in Step 1 to the chromosome.

Step 1 is the most important part in the initialization operator. The specific requirements of tasks are treated respectively, so that a right assignment that allocates UAVs with right capabilities and enough resources to perform corresponding tasks is generated. However, as the target-based group doesn't correspond with an assignment uniquely, it must be transformed to vehicle-based sub-chromosomes. By the operations in Step 2, a vehicle-based group is obtained and the diversity of chromosomes is ensured by randomly changing the task execution order. Then, the vehicle-based sub-chromosomes are transformed to a chromosome straightforwardly. Note that the transformation between the two groups is a random process of which the purpose is to get an initial chromosome stochastically.

Run the initialization operator Np times. We get the generation of initial population with Np initial chromosomes.

The objective and fitness functions, selection, and elitism are as follows: given a chromosome, the objective function is the execution time that the mission takes to be accomplished, i.e., the cost function given in Eq. (9), taking four constraints (Eqs. (11)-(14)) into account. The fitness and selection used in Ref.18 are adopted. The fitness of a chromosome in each generation is assigned linearly a value ranked between 0 and 1. The best solution with the minimal objective value is assigned a value of 1, while the worst one with the maximal objective achieves a value of 0. For example, if a generation has 11 chromosomes, a linear ranking of {0, 0.1, 0.2, ..., 1} would be assigned. We use the roulette wheel method to probabilistically choose chromosomes from a generation. The fitness values of chromosomes in a generation are added up to a positive number nsum. Then chromosomes are mapped into contiguous intervals in the range [0, nsum]. The fitness value of a chromosome is set as the size of each interval, and a random number in [0, nsum] is generated. We select the chromosome, of which the corresponding segment contains the number, to propagate an offspring.

Ng generations of population are reproduced iteratively. The cost of each chromosome in all generations must be evaluated. Then the best Ne chromosomes are propagated to the next generation. This process is the elitism. Meanwhile, the other Np—Ne chromosomes of reproductive generations must be generated by the reproductive operators, i.e., the crossover and mutation operators.

3.2.3. Crossover

In the process of crossover, two parent chromosomes are selected probabilistically from the current generation via the roulette wheel method based on their fitness to create a pair of child chromosomes. The single site crossover method is used. In a generation of offspring population, Ncr < Np—Ne offspring chromosomes are created by the crossover operator. The main process of crossover is stated in Fig. 7. Similar to the initialization operator, there are three specific operations according to the task type.

A simple example crossover process of double attack genes is illustrated in Fig. 8. Two small tips are used in the program. Firstly, Parent 1 is extended with a row of sort numbers of

genes; secondly, the order of genes is disrupted. The purpose is to make genes of different vehicle-based sub-chromosomes have an equivalent opportunity to be reproduced and genes could be re-ranked in the order of the original Parent 1 at last. After these pretreatments, a crossover site 5 is randomly selected. The previous 4 genes of the disrupted parent are copied to the generated offspring. Then, considering that the UAVs of the double attack genes are U2 and U3, the vehicle of the selected gene cannot be any of them. Moreover, the capability of the selected gene must belong to the complement attack set Uas of Parent 1. Hence, a gene of Parent 2 is selected to replace that of Parent 1. Finally, the disrupted offspring should be reordered and then be deleted from the sort number row. With the updated complement attack set Uf, we get a new offspring.

The core part of the crossover operator is the operations of selecting a right vehicle to perform a corresponding task and keeping on satisfying the limited resource condition. With the method as described above, right vehicles are chosen while the resource constraints are satisfied. A similar mechanism is used in the mutation operator.

3.2.4. Mutation

The mutation operator changes one or more gene values in a chromosome to get a new offspring. It is an important mechanism of GA to avoid the solution sinking into a local minimum. The mutation site of a chromosome is randomly selected. There are three alternative ways9 of mutation in our study: (1) mutating the UAV allocation; (2) exchanging two genes of a vehicle-based sub-chromosome; (3) mutating a gene's heading angle.

Most work should be devoted to the first way. Similar to the crossover operator, there are three styles of the first mutation:

(1) for a surveillance gene, a new and different UAV is selected from the surveillance set US vehiclenew 2 US\vehicleold, to replace the vehicle of the gene, while US has no change; (2) for a single attack gene, the mirror of a different UAV is selected from the complement attack set of the chromosome, vehiclenew 2 Uas\ vehicleold, while the replaced mirror used in the gene must go to the place of the chosen mirror in the complement set and update Uf, i.e., the new mirror exchanges place with the old one; (3) for a double attack gene, it's similar to that of

(2), except that the selected attack mirror must be different from the two vehicles vehicleold and vehicleold that perform the pair of double attack tasks, vehiclenew 2 Uf \{vehicleold , vehicleold}.

The second way of mutation alters the order of task sequence of a vehicle. Consequently, the time information of the chromosome would be changed. The third way of mutation of heading angles is to replace the old angle with a new angle randomly selected in a set so that /new 2{0 , 1,...,

Nw — 1}\{/old}.

The three ways of mutation could be applied on one chromosome alone or together. Nm = Np — Ne — Ncr offspring chromosomes of an offspring generation are reproduced by the mutation operator.

Remark 3. The three operators are designed specifically for the heterogeneous CMTAP to cope with the heterogeneity of both targets and UAVs, and keep on satisfying the limited resource constraints of Eq. (14). In the processes of initialization, crossover, and mutation, suitable UAVs are always selected to

perform tasks, and using mirror representation enables us to store the information of the UAV team and guarantee that every solution is a feasible employment of the limited resources.

3.3. Deadlock and path elongation

The time constraints in Eq. (13) are very important for the heterogeneous CMTAP as well. To satisfy the constraints, a special problem called deadlock should be noted, and the calculated paths might have to be coordinated.

Deadlock9 is a situation in which two or more processes are waiting for each other to finish, and thus fall into infinite wait. If a chromosome encodes deadlock, some encoded UAVs would never finish their assigned tasks, and thus the chromosome would be infeasible. An example chromosome is presented in Fig. 9. We set Nw = 36, MT1 = {C, A},

1 : stochastically choose a pair of parent chromosomes, parent 1 and parent 2, via the roulette wheel method

randomly select a crossover site, integer 5 uniformly from [1, NM]

offspring 1«- crossover [parent 1, parent 2 ,s) offspring 2 «- crossover [parent 2, parent 1, s)

Function offspring«- crossover(c/iro/n 1, chrom 2,p) initialize U™ <— of chrom 1, offspring <- chrom 1 collect surveillance genes of chrom 2 in a set Gs collect attack genes of chrom 2 in a set Ga for i =p:Na H do check the /th gene Ge of offspring Ca — the mirror used in Ge vehicle^ *- the UAV of Ge II vehicle0]d is the UAV that is allocated to Ge case 1: Ge is a surveillance gene

| randomly choose a surveillance gene G e Gs\{genes with vehicle0|d} case 2: Ge is a single attack gene

find the set of selectable genes Gx in chrom 2, such that Gx = (it E G. | ((UAV of g) g { vehicle^}) & ((mirror used in g) 6 C/f)} // GK might be an empty set randomly choose an attack gene G € G3e Ca' *- the mirror used in G update C/f <- (U? \ Ca') u {Ca} case 3: Ge is one of a pair of double simultaneous attack genes

find the UAV u that is allocated to the other simultaneous attack gene find the set of selectable genes Gx in chrom 2, such that Gx =

igeG.I ((UAV of g) t { vehicleold, u)) & ((mirror used in g) S C/,CI)! randomly choose an attack gene G G Gx Ca' *- the mirror used in G update [/ac!<-(i/f \Ca')u{Ca} end check

replace the mirror Ca and discretized heading angle <p of the /thgene Ge of offspring with the ones of G end for

reorder the offspring according to the encoding of chromosome return offspring and its attached complement attack set U^

Fig. 7 Main process of the crossover operator with three specific operations.

Extended Parent 1

Parent 1

Disrupted Parent 1

Uncertain offspr

ti t2 t\ t2 ti

-II 2-2 2

ui Ui u2 u2 u3 -11 1-11

0i 02 03 04 05

t, r2 t, n t,

-1 1 2 -2 2

u, u, ul ui uj

0. 02 02 04 05

1 2 3 4 5

t, t2 t2 n ti

2 -2 1 -1 2

u, 1 u2 -1 u, 1 u, -1 ur 1

05 5 0. 4 02 z 0. 1 03 3

Ti Ji r2 71! 71

Í: -2 i -1 2

u, t/j Ul E/i ?

05 04 02 0. ?

5 4 2 H 3

GSe= {gene G Ga I ((UAV of gene) g {Ui, t/3}) & ((mirror used in gene) G Uf )}

Parent 2

ti t, t ti t, -12 1-2 2

Disrupted offspring

t, t1 r2 r, 7-, 2-21-12

rand(site)=2 Reorder

u, u, u, u, u, — =£> « ^ ^ "< I-> f

04 02 01 0':

5 4 2 13

Offspring

Extended offspring

r, r2 r, r2 r, 12-22 tfi № № c 11-11

02 0 2 04 05

2 3 4 5

r. r2 t, r2 t,

-1 1 2 -2 2

№ № fi ui u,

Complement attack set of offspring

Fig. 8 Example crossover process of double attack genes.

MT2 = {A, V}, MT3 = {A, V}. The task row is intuitively replaced by alphabets.

As shown in Fig. 9, before task V of target T3 is executed by vehicle Ui, T3 should be attacked by vehicle U2. However, U2 must firstly verify the damage of target T2, so it needs to wait for vehicle U3 finishing attacking target T1, but T1 must be classified by U1 first. Hence, all vehicles are waiting and none of them can perform the next task.

It's impossible to avoid chromosomes that encode deadlock, so we have to develop a graph-based method to check whether a chromosome encodes deadlock. A directed graph, called task precedence graph (TPG), of a chromosome is constructed and analyzed for detecting deadlocks. If a TPG is not acyclic, the corresponding chromosome is deadlocked. Then chromosomes encoding deadlocks are modified and unlocked via a kind of transposing operations. In addition, the topological sort of genes is used in the path elongation of vehicles, which makes this process much more straightforward. Thus, deadlock free solutions are obtained through changing genes' orders of UAV sub-chromosomes without changing genes' assignments of targets and vehicles.

As mentioned above, the Dubins Car model is used for motion planning. It's been proved that the shortest feasible path between two nodes is a combination of arcs with the minimum turning radius qmin and straight lines. We follow the same notations used in Ref. where "C" represents a circular arc and "L" represents a straight line tangent to C, and focus on the CLC and CC paths.6 If a task is calculated earlier than the previous task on the same target, or if the UAVs of simultaneous tasks approach the target one after the other, the calculated Dubins path should be adjusted. The purpose can be achieved in two ways6: (1) by lengthening the Dubins paths for constant-speed UAVs, or (2) by producing paths of variable speeds. Here, the first way of the path elongation technique is considered.

The path elongation method used here is developed from the work of Refs.6,9. The method is based on appending additional maneuvers which are busy-wait circles at the current node of vehicles or additional maneuvers of intermediary points. For non-simultaneous tasks, the UAV to be delayed is obliged to perform circular flight with the minimum turning radius. Note that simultaneous tasks are considered, more manipulates must be carried out. For simultaneous tasks that the UAV's path must be lengthened equal to or more than the perimeter of the minimum turning circle, appending busy-wait circles with a turning radius 2 [qmin, 2qmin) at the current node of the vehicle is operated; otherwise, an intermediary point that the UAV must fly around with the minimum turning radius before approaching the target is simply generated and executed by the UAV. Finally, a desired target approaching distance ("stand-off")5'7'24 qoff that all assigned vehicles must approach the target from is set for all targets.

4. Simulation results

The modified GA with the methodology of multi-type genes has been implemented in our simulations of the heterogeneous CMTAP with limited resources. The area of interest where the positions of UAVs and targets are selected is a square of 5000 x 5000 m2. In Section 4.1, a sample scenario is illustrated. Then a Monte Carlo study is presented for comparing the performance of the modified GA to the random search method and another stochastic heuristic optimization method called particle swarm optimization (PSO). The heterogeneity of both operational capabilities and kinematic constraints, and the constraints of limited resources are considered.

In comparison, the initial solution generations of the other two methods are generated similarly to the modified GA's initialization. Then the random search method updates its populations similarly to the initialization operator and holds the elitism similarly to the elitism process of the modified

GA. However, no reproductive operators are used in this method.

As a heuristic, the PSO25-27 has its own evolution strategy. It simulates swarm intelligence of bird flocks to iteratively improve candidate solutions, i.e., particles or chromosomes, over particles' positions and velocities. Every particle is influenced by its local best known position and moves toward global best positions updated over all particles' trajectories. In this simulation, a form of the PSO is slightly adjusted from the work of Ref.28. The alteration is mainly laid on the solution encoding. Particles are encoded as matrices similar to those of the modified GA.

The algorithms are coded in MATLAB.

4.1. Sample run

The sample scenario involves 5 heterogeneous UAVs and 3 targets. All tasks in M are required for 3 targets including one target needing double simultaneous attacks. The UAV types, speeds, and minimum turning radii are given in Table 2. The simulation parameters are as follows: Np = 200, Ng = 100, Ne = 2, Ncr = 132, Nm = 66, Nw = 36, poff = 200 m. We set all tasks to have a known and fixed task execution time of 5 s which is from the time of a UAV approaching a target for performing a task to the time of the task being finished and the vehicle leaving for the next target. To be intuitive, the result trajectory of a sample run is illustrated in Fig. 10.

As shown in Fig. 10, Target 1 is prosecuted by combat UAV 2; Target 2 is prosecuted by UAV 3 and UAV 4, where there is one busy-wait circle on munition UAV 3 before it approaches the target; Target 3 is prosecuted by UAV 1 and UAV 5. In order to make two vehicles simultaneously arrive at Target 3 to perform simultaneous attack tasks, an intermediary point is generated for UAV 1 to lengthen its path as shown in the figure. The cost time of the whole mission is 98.0 s. Note that the obtained solution must have a few or no appending maneuvers.

4.2. Monte Carlo simulations

Two problems of different sizes are examined in the Monte Carlo study. The UAVs' initial configurations and the positions of targets are set as randomly chosen parameters. The performances of the modified GA and the other two methods, i.e., the random search method and the PSO, are compared in two scenarios. The small-scale scenario consists of 5 UAVs on 3 targets just like the one in the sample run. The large-scale scenario involves 15 heterogeneous UAVs and 10 targets. There are 5 combat UAVs, 5 surveillance UAVs, and 5 munition UAVs. Each combat vehicle can execute attack task 3 times at most, and each of munition UAVs 5 times. The

minimum turning radii and speeds of UAVs are randomly selected from pmn 2 [150,300] m, vu 2 [50, 100] m/s. All tasks from the complete task set M are required to be performed on each target. Three of ten targets need double simultaneous attacks. To enable the comparison, 4 Monte Carlo simulation cases, each of which consists of 120 or 60 runs, are performed. Some simulation parameters are stated in Table 3.

Figs. 11-14 present the average convergence performances of the three methods. The comparison parameters and method are based on Refs.5'9. The ratio E is a measure of convergence performance: the smaller, the better; Jk is the cost of the best individual of the k generation and J0 is the cost of the best individual in an initial population. The average ratio of each case is illustrated in the corresponding figure.

It's apparent that the modified GA is more effective than the random search method. For each separate problem, as the population size or the number of generations increases, the performances of both methods get better and the performance gap between the two methods becomes a little larger as well. It could be explained that, while the population size and the number of generations increase, both stochastic methods search more solutions and have more chances to find better solutions, and because of the reproductive operators, the solution population of the heuristic algorithm, GA, evolves much better than that of the pure random search method. Note that the mission cost time of the large-scale scenarios is longer than that of the small-scale scenarios, and the solution space of the small problems is much smaller than that of the large ones. The random process gets much more opportunities to generate a better solution in simulations of the small ones. Therefore, due to the NP-hard property, the GA should be more effective for large-scale problems.

As a heuristic, the PSO should have a close or better performance than the GA, and could be a reference to our study. However, in almost all 4 simulation cases, it is not only worse than the GA, but also worse than the random search. In the large-scale problems, it becomes a bad method. That is far from what we expected.

We found that in simulation cases of the PSO, about 13700 in 20000 candidate solutions and 103000 in 150000 for the small cases are infeasible, while about 19870 in 20000 and 149600 in 150000 for the large cases are infeasible. That is, about 2/3 of all candidate solutions in the small-scale problems and more than 99% in the large ones are infeasible. It must be the cause.

In this work, the heterogeneous CMTAP is studied. Heterogeneous UAVs with limited onboard resources are assigned to perform tasks on targets which might need simultaneous attacks. While particles are moving, they might get infeasible positions. A variety of situations would make a position infea-sible, such as selecting surveillance UAVs to perform attack tasks, selecting munition UAVs to perform surveillance tasks,

T, 7", T, T, T, T2

V c V A A A

Ut U, U2 u2 u3 u,

-1 -1 -1 1 1 1

10 21 5 0 17 1

Fig. 9 Example chromosome with deadlock.

Table 2 UAV types, speeds, and minimum turning radii in the sample scenario.

Parameter UAV 1 UAV 2 UAV 3 UAV 4 UAV 5

Type c c m s c

Speed (m/s) 70 80 70 90 60

Radius (m) 200 250 200 300 180

^Target \ \ 2

\ \ \ ■ Cu 1 Target 3 \/V-/v 1

Target 1 } UAV 3 UAV 2 UAV 1 f---- < / K ' / N OAV4) iUAV5 . >

x (km)

Fig. 10 Trajectory of the sample run (cost time is 98.0 s).

Table 3 GA simulation parameters of 4 Monte Carlo simulation cases.

Problem Np Ng Ne Ncr Nm Run

Small scale (5 UAVs on 3 targets) 200 100 2 132 66 120

500 300 2 330 168 60

Large scale (15 UAVs on 10 targets) 200 100 2 132 66 120

500 300 2 330 168 60

V ^ v-----

Random search

---PSO

— Modified GA

k generation

Fig. 11 Average convergence performance (mean of 120 runs: 200 x 100, small-scale scenario).

assigning several attack tasks to a vehicle without enough weapons, and designating only one UAV to perform simultaneous tasks. Indeed, UAVs are not "selected". They are just laid on when particles are moving.

The particle random movement of the PSO allows existing of infeasible positions. The feasibility of candidate solutions cannot be always kept when particles are moving. The problem is that, in the heterogeneous CMTAP, there are so many infea-sible candidates that the PSO loses its advantages.

Due to the mirror representation of UAVs and genetic operators, right vehicles with the corresponding capabilities and enough resources are always selected to reproduce solutions in the modified GA. Hence, chromosomes are always feasible. It could be said that the performance of the PSO reflects the effectiveness of our methodology from another aspect.

In order to get more performance information of the two heuristics, 6 groups, each of which consists of 20 runs, are

Fig. 12 Average convergence performance (mean of 60 runs: 500 x 300, small-scale scenario).

---------------------

- Random search

---PSO

-Modified GA

k generation

Fig. 13 Average convergence performance (mean of 120 runs: 200 x 100, large-scale scenario).

^^_______________

Random search

---PSO

Modified GA

150 k generation

Fig. 14 Average convergence performance (mean of 60 runs: 500 x 300, large-scale scenario).

implemented. They are on two fixed scenarios: one small scenario that is the same as the sample run and one large scenario which settings are the same as those of the previous large scenario but with fixed initial configurations of UAVs and positions of targets. The swarm sizes and the numbers of iterations of the PSO are as follows: 500 x 1000 for the small scenario; 1000 x 5000 for the large scenario. Those of the modified GA are the same as the ones in the previous Monte Carlo study.

The objectives of all runs are used to compare the two methods. They are illustrated in Fig. 15. In Fig. 15, the improvement of the modified GA's performance is obvious

♦++ ++++ +

75 80 85 90 95

Objectives of best solutions (s) (a) Small scale

+ + -H-

Objectives of best solutions (s) (b) Large scale

* Objectives of case: GA, 200*100 ■ Mean objective of case: GA,200x100 x Objectives of case: GA,500x300 • Mean objective of case: GA,500x300 + Objectives of case: PSO,500x1000 ♦ Mean objective of case: PSO,500x 1000

Fig. 15 The best solutions' objectives of the modified GA and the PSO in fixed runs.

as the population size and the number of generations increase. The mean objective of the PSO is between those of the two small GA cases, but the mean objective of the PSO is much worse than both of the large GA cases. Runs of the 6 simulation groups mainly keep this comparison.

Just like the previous simulations, in these runs of the PSO, about 2/3 of solutions of the small scenario are infeasible, and 99.9% of reproductive solutions are infeasible in the large runs. As the search space of the small scenario is much smaller than that of the large one, it is much easier to move over feasible positions in the small problems for the PSO. The performance in these runs further reflects the effectiveness of our methodology.

Note that as particles in small runs of the PSO move over enough feasible positions, the performance could finally be compared to the modified GA. However, the large runs are not so fortunate. Due to the huge search space, it is very hard and consumptive to get enough feasible candidates.

5. Conclusions

(1) A heterogeneous cooperative multiple task assignment problem of assigning multiple UAVs with different operational capabilities, different kinematic characteristics, and limited resources onboard to cooperatively perform multiple consecutive tasks on multiple targets is developed and studied in this paper. The objective is to minimize the total cost time of a mission.

(2) A methodology of multi-type genes is stated to modify the genetic algorithm for processing specific demands of tasks and heterogeneity of UAVs. Meanwhile, a method of mirror representation of UAVs is presented to deal with the limited resource condition of UAVs. With this strategy, genetic operators, including initialization, crossover, and mutation, are redesigned specially for gene types.

(3) The performance of the modified GA is compared to the random search method and the particle swarm optimization in simulations. The feasibility and effectiveness of the modified algorithm are examined. It's shown that the algorithm captures the features of targets and UAVs, and deals with the problem effectively.

References

1. Ollero A, Maza I. Multiple heterogeneous unmanned aerial vehicles. Berlin Heidelberg: Springer; 2007.

2. Banda S, Doyle J, Murray R, Paduano J, Speyer J, Stein G. Research needs in dynamics and control for uninhabited aerial vehicles (UAVs). Panel Rep 1997.

3. Schumacher C, Chandler PR, Rasmussen SR. Task allocation for wide area search munitions. In: Proceedings of the American control conference; 2002.

4. Bellingham J, Tillerson M, Richards A, How JP. Multi-task allocation and path planning for cooperating UAVs. In: Butenko S, Murphey R, Pardalos PM, editors. Cooperative control: models, applications and algorithms; 2003. p. 23-41.

5. Shima T, Rasmussen SJ, Sparks AG, Passino KM. Multiple task assignments for cooperating uninhabited aerial vehicles using genetic algorithms. Comput Oper Res 2006;33(11): 3252-69.

6. Tsourdos A, White B, Shanmugavel M. Cooperative path planning of unmanned aerial vehicles. Chichester: John Wiley & Sons; 2010.

7. Shima T, Rasmussen SJ. UAV Cooperative decision and control: challenges and practical approaches. Soc Ind Appl Math 2008.

8. Chandler PR, Pachter M, Swaroop D, Fowler JM, Howlett JK, Rasmussen S, et al. Complexity in UAV cooperative control. In: Proceedings of the American control conference; 2002.

9. Edison E, Shima T. Integrated task assignment and path optimization for cooperating uninhabited aerial vehicles using genetic algorithms. Comput Oper Res 2011;38(1):340-56.

10. Cook WJ, Cunningham WH, Pulleyblank WR, Schrijver A. Combinatorial optimization. New York: John Wiley & Sons; 2011.

11. Michalewicz Z, Fogel DB. How to solve it: modern heuristics. Berlin Heidelberg: Springer; 2004.

12. Nygard KE, Chandler PR, Pachter M. Dynamic network flow optimization models for air vehicle resource allocation. In: Proceedings of the American control conference; 2001.

13. Rasmussen S, Chandler P, Mitchell JW, Schumacher C, Sparks A. Optimal vs. heuristic assignment of cooperative autonomous unmanned air vehicles. In: Proceedings of the AIAA guidance, navigation, and control conference; 2003.

14. Darrah MA, Niland WM, Stolarik BM. Multiple UAV dynamic task allocation using mixed integer linear programming in a SEAD mission. In: Proceedings of the infotech at aerospace: advancing contemporary aerospace technologies and their integration; 2005.

15. Richards A, Bellingham J, Tillerson M, How J. Coordination and control of multiple UAVs. In: Proceedings of the AIAA guidance, navigation and control conference; 2002.

16. Schumacher C, Chandler P, Pachter M, Pachter L. Constrained optimization for UAV task assignment. In: Proceedings of the AIAA guidance, navigation, and control conference; 2004.

17. Shima T, Rasmussen SJ, Sparks AG. UAV cooperative multiple task assignments using genetic algorithms. In: Proceedings of the American control conference; 2005.

18. Darrah MA, Niland WM, Stolarik BM, Walp LE. UAV cooperative task assignments for a SEAD mission using genetic algorithms. In: Proceedings of the AIAA guidance, navigation, and control conference; 2006.

19. Yeonju E, Hyochoong B. Cooperative task assignment/path planning of multiple unmanned aerial vehicles using genetic algorithms. J Aircr 2009;46(1):338-43.

20. Karaman S, Shima T, Frazzoli E. Task assignment for complex UAV operations using genetic algorithms. In: Proceedings of the AIAA guidance, navigation, and control conference; 2009.

21. LaValle SM. Planning algorithms. Cambridge University Press; 2006.

22. Dubins LE. On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents. Am J Math 1957;79: 497-516.

23. Mitchell M. An introduction to genetic algorithms. MIT Press; 1998.

24. Wang YY, Wei TT, Qu XJ. Study of multi-objective fuzzy optimization for path planning. Chin J Aeronaut 2012;25(1):51-6.

25. Kennedy J, Eberhart R. Particle swarm optimization. In: Proceedings of the IEEE international conference on neural networks; 1995.

26. Kennedy J. The particle swarm: social adaptation of knowledge. In: Proceedings of the IEEE international conference on evolutionary computation; 1997.

27. Shi Y, Eberhart R. A modified particle swarm optimizer. In: Proceedings of the IEEE international conference on evolutionary computation; 1998.

28. Sujit PB, Georget JM, Beard R. Multiple UAV task allocation using particle swarm optimization. In: Proceedings of the AIAA guidance, navigation and control conference and exhibit; 2008.

Deng Qibo received his B.S. degree from Beijing Institute of Technology in 2008, and now is a Ph. D. candidate there. His main research interests are in cooperative decision and control, multi-vehicle task planning, and flight vehicle system design.

Yu Jianqiao received his B.S., M.S., and Ph.D. degrees from Beijing Institute of Technology in 1994, 1997, and 2007, respectively, and now is a professor there. His main research interests are in flight dynamics and control, cooperative control, flight vehicle system design and robust control.