1. Introduction
Over the last decades, unmanned aerial vehicles (UAVs) have been widely used in a large range of applications, such as environmental monitoring [
1], searching and attacking [
2], forest fire fighting [
3] and so on. Due to the capability limitation of a single UAV, multiple UAVs working together in coordination are expected to perform more complex missions under various types of attack [
4]. For example, multiple UAVs can accomplish an attack mission much better than a single UAV when those UAVs arrive simultaneously to the target.
Two main aspects in multi-UAV attack mission are task allocation and path planning. The complexity of these problems increases with the number of UAVs and tasks. In addition, in some specific scenarios, the imposed constraints, such as resource requirement, collision avoidance and simultaneous arrival constraints further increase the complexity of those problems.
Many researchers treated the task allocation and path planning as two sub-problems separately in the in multi-UAV attack mission, they use a centralized or distributed approach to obtain a feasible task allocation strategy and then use path planning algorithms to generate feasible paths for UAVs. Sharma et al. [
5] proposed a cooperative ad-hoc network framework for multi-UAV using a neural network, cooperative task allocation and path planning algorithms can be used in the framework in different applications. Yao et al. [
6] developed an iterative mission planning framework for the task allocation and path planning problems, an improved auction algorithm with an iterative strategy was proposed in the task allocation process. When multi-UAV is used to perform multi-task, the task allocation and path planning process are coupled [
7], as the performance of task allocation depends on an accurate path length of UAVs, and the path planning depends on the UAV’s task allocation results.
To solve the coupled task allocation and path planning problems, there are two main ways. In the first class of methods, Euclidean distance between UAVs and targets is seen as the input in the task allocation process [
8,
9]. After obtaining the feasible allocation results, the path planning process is used to generate flyable and safe paths/trajectories for UAVs considering a variety of constraints. However, the length of the generated paths/trajectories are quite different from the Euclidean distance, especially when there are obstacles in the environment. This deviation will result in poor quality of solutions obtained in the task allocation process. The second method considers the task allocation and path planning process as an integrated optimization problem, and encoding the solution of the coupled problem, genetic-based [
10,
11] and decision tree [
12] algorithms are usually used. However, simultaneously solving task allocation and path planning needs a large amount of computation.
The presented task allocation studies above assume each target can be performed by single UAV and the resources of UAVs do not deplete. However, in a real situation, some targets may need a variety of resources and should be performed by multi-UAV simultaneously, such as for a simultaneous attacking mission, multiple UAVs are required to reach the target simultaneously with a different entry angle to maximize the mission performance. This problem can be called the single-task, multi-robot (ST-MR) problem according to the taxonomy criteria proposed by Gerkey et al. [
13]. The ST-MR problem is also known as the coalition formation problem [
14], a coalition means a team of UAVs performing the same target.
To solve the coalition formation problem for multiple UAVs performing multi-target, two distributed sub-optimal coalition formation algorithms were proposed to form coalition with minimum time and size to destroy targets simultaneously [
15,
16]. In a search and destroy mission for multiple UAVs, a welfare-based coalition formation algorithm for heterogeneous UAVs was presented by Kim et al. [
17], the UAVs use resources in a balanced manner to improve the system’s robustness in the dynamic and uncertain environment. However, the works cited above assume that only the UAV performing a search task can send a bid to form a coalition, they do not consider the overlapping coalitions, which will decrease the mission performance. For the cooperative task allocation and rendezvous problems, Sharma et al. [
18] proposed a global optimization algorithm inspired by the biological features of the hill Myna and desert Sparrow, the algorithm can be applied to ad-hoc networks in various applications. For the overlapping coalitions problem, Oh et al. [
19] proposed two distributed coalition formation algorithms for multi-UAV based on the contract net protocol, the sequence of UAVs and pop-up tasks are considered in the dynamic environment with limited communication range. The studies cited above do not take into account the obstacles and no-fly-zones in the environment, which significantly limits the application of the coupled task allocation and path planning algorithm.
To maximize the system performance, the paths for the UAVs in the same coalition should satisfy simultaneous arrival as well as some other constraints, such as the kinematic constraint of a UAV and collision avoidance with obstacles. For the simultaneous arrival problem (also called rendezvous problem), the velocity-based [
20,
21] method has been used. The simultaneous arrival problem of multiple UAVs is addressed by a velocity control approach [
20], the UAVs communicate with each other to make a consensus on the estimated time of arrival. A distributed optimization algorithm based on game theory [
21] was proposed for a UAV rendezvous problem, each UAV adjusts its velocity according to the states of its neighbors in a predefined time interval. However, this method is easy to cause velocity saturation [
22] and a large amount of communication is required. Some other studies [
7,
23] assume all the UAVs fly at the same and constant speed, so the simultaneous arrival for multi-UAV can be achieved by planning paths of equal length. In our previous work, a cooperative particle swarm optimization (CPSO) algorithm is proposed to generate Pythagorean hodograph (PH) paths of equal length for each UAV. However, the task sequence of UAVs is not considered.
In this paper, the focus is on the coupled task allocation and path planning problems for multi-UAV performing simultaneous arrival tasks. Considering the target’s resource requirement, simultaneous arrival, time-dependent values of targets, resource consumption of UAVs and collision avoidance with obstacles. A hierarchical mission planning method is proposed to solve the coupled task allocation and path planning problem for a multi-UAV performing a multi-task, which is also the contribution of this paper. The method consists of three phases. In the first phase, the PH curve is calculated as the estimated path for each UAV, which can provide a more accurate input for the task allocation process. Then, a task allocation algorithm is proposed to form a coalition for each target considering the task sequence of UAVs and the resource requirement of targets. Finally, the path planning process generates the flyable and safe paths for the fixed-wing UAVs in the same coalition to realize the simultaneous arrival.
The rest of this paper is organized as follows: In
Section 2, a description of the multi-UAV cooperative attacking problem is given.
Section 3 describe the task allocation method for multi-UAV. In
Section 4, path planning method to achieve simultaneous arrival is presented. Experimental results are shown in
Section 5. In
Section 6, the conclusions are given.
2. Description of the Multi-UAV Cooperative Attack Problem
The problem considered in this study consists of assigning a fleet of heterogeneous UAVs to a set of targets. At the initial time, there are some targets in the environment, it is assumed the information of these targets are known at the initial time. The UAVs are required to attack the targets.
In this paper, the UAVs and targets are modeled based on their resources. Each target may need a coalition of UAVs. According to the information of the targets and UAVs, the appropriate UAVs are allocated to each target. In order to maximize the system performance, the UAVs performing the same target are required to arrive to the target simultaneously. Then, the path planning process is used to generate simultaneous arrival paths for the UAVs in the same coalition. The resource requirement and simultaneous arrival of targets, the UAV’s kinematic constraints and collision avoidance with obstacles are taken into account.
In this study, some assumptions were made to simplify the problem:
For simplicity, the take-off and landing process of UAVs were not taken into account, the collision avoidance among UAVs were achieved by altitude layering.
In the task allocation process, the communication topology remained unchanged.
The aerodynamic and attitude of UAVs were not considered.
The obstacles and targets considered in this paper were static.
2.1. Targets and UAVs
Let
be the set of
stationary targets, it is assumed that the information of targets is known at the initial time. Each target requires
m-different types of resources, the resource requirement of target
can be expressed as Equation (1), for example,
denotes that there are three types of resources required to destroy target
and the required amount of each resource is 3, 3 and 2, respectively.
Let
be the set of values of the targets at the initial time, the value of targets decreases with time as follows:
where
is a user-defined coefficient, which denotes the descent rate of the target’s value.
is the time of arrival of the UAV coalition assigned to attack the target
.
Let
be the set of
heterogeneous UAVs. The heterogeneity of UAVs is reflected in their different dynamic characteristics and the amount of resources as shown below:
It is assumed that all UAVs fly in a two-dimensional plane. The motion of UAV
is governed by the following equation:
where
and
represents the Cartesian coordinates and the heading angle of UAV
, respectively.
and
denote the velocity and turn rate, respectively. It is assumed that the UAVs fly at a constant and same velocity.
The control input for each UAV can be described as:
, which is subject to the constraints in Equation (5).
is the minimum turning radius of UAV
.
In this paper, the UAVs were required to perform the attacking mission to the targets. The objective of the mission planning problem is to obtain the assignment strategy for each UAV to maximize the objective function and provide flyable and safe paths for these UAVs.
2.2. Objective Function and Constraints
The objective of the task allocation problem is to assign the targets to the UAV team to obtain the maximum system utility. To satisfy the resource requirement of targets, there may be some UAVs forming a coalition to attack one target. The reward to destroy targets and the cost of the UAV coalitions were considered in the objective function, so, two criteria were selected to quantify the objective function of this mission planning problem: The reward to destroy targets and the cumulative path length of all the UAV coalitions. Thus, the objective function to be maximized is as follows:
where
respectively denotes the weights of the reward and cost.
represents the UAV coalition assigned to attack the target
,
denotes the number of UAVs in the coalition
,
denotes the path length from the initial location of UAV
to the target
. Assuming
is the task sequence of UAV
, tasks before
should be considered in calculating
.
is the estimated time of arrival (ETA) of the latest UAV in the coalition assigned to the target
:
The constraints considered in this paper can be categorized into UAV-related constraints, target-related constraints and environment-related constraints.
(1) UAV-related constraints
First of all, UAVs have limited fuel, so a maximum flying distance constraint should be satisfied:
where
is the total path length of UAV
,
denotes the maximum flight distance of UAV
.
Each UAV can carry limited resources that deplete with use, so each UAV cannot consume more resources than it carries.
where
represents the total resource consumption for performing the targets assigned to
.
A flyable curve [
24] is required to satisfy the UAV’s kinematic constraint. In a two-dimensional plane, a curve is determined by its curvature. Let
be the curvature of UAV
at point
, the curvature of the path should be continuous and bounded as follows:
(2) Target-related constraints
Each target is required to be performed by a UAV coalition simultaneously, and the resource requirement should be satisfied:
(3) Environment-related constraints
Let
be the two-dimensional space in which UAVs fly. Let
denote the set of obstacles in the environment. The collision avoidance between UAVs and obstacles must be satisfied:
(4) Simultaneous arrival constraints
According to the resource model, each target may need a coalition of UAVs. To maximize the system performance, the UAVs in the same coalition are required to arrive to the target simultaneously as follows:
where
and
are two different UAVs in coalition
,
is the target assigned to the coalition
.
Thus, the mission planning problem was provided as the objective function (Equation (6)) with constraints (Equations (8)–(13))
4. Path Estimation and Simultaneous Arrival Path Planning
4.1. Pythagorean Hodograph Curve
In this paper, the PH curve was used in the path estimation and path planning processes, so a brief overview of PH curve is stated here.
In the two-dimensional plane, the Pythagorean hodograph (PH) curve
,
is a parameterized polynomial curve whose hodographs
satisfy a Pythagorean condition:
The PH curve can also be expressed in the Bézier form of degree
:
where
are control points. The length of a PH path parameterized with parameter
is calculated by:
In order to obtain the PH curve with continuous curvature, the quantic PH curve was used as the path for each UAV in this paper. The theory and calculation method of the PH curve were not repeated here, relevant contents can be found in [
29,
30]. It should be noted that the kinematics constraint of a UAV is satisfied by bounding the curvature of the PH curve in a two-dimensional plane, so the maximum curvature on a flyable PH curve should satisfy:
where
represents the maximum curvature of the UAV.
When the position and attitude of the starting point and ending point are given, the shape of the PH curve is determined by the modulus of the direction vectors of the starting and ending points. Increasing the modulus value can reduce the curvature of the PH curve, but it will increase the length of the curve. Therefore, it is necessary to select the appropriate modulus values to make the generated PH curve satisfy the kinematics constraints of the UAV, obstacle avoidance and some other coordination constraint.
4.2. Path Estimation
In the task allocation process, according to Equation (15), each UAV needs to calculate the ETA from its current location to the target. For the UAV
, if
,
needs to be estimated; otherwise, the ETA from the UAV
to the target
consists of two parts, the first part is the accurate path length of the assigned targets
(can be obtained in
Section 4.3), the second part
requires to be estimated, where
denotes the last target that has been assigned to the UAV
. For both
and
, they can be obtained directly by calculating the length of the PH curve from one point to another.
Assuming the starting and ending points are
and
, the flyable and safe path from
to
can be obtained by a constraint optimization problem as follows:
where
denotes the decision variable, the collision avoidance and curvature constraints are shown in the first and second constraint, respectively.
means the cost function to be minimized. In this paper, two criteria are selected to quantify the cost function, which are the length and the smoothness of the path as follows:
where
means the weight coefficient;
represents the cost function of the path length. The length of the path is very important in the path planning process, the shorter path will save time and fuel. The length of the PH curve was used in this paper.
denotes the cost function of the smoothness of the generated path, which can be expressed by the elastic energy of the generated PH curve [
29].
To the constraint optimization problem, the penalty function for violating the constraints can be represented as:
where
is the penalty parameter for violating the collision avoidance or curvature constraint, in this paper,
.
As mentioned above, a PH curve can be determined by the modulus values of the direction vectors of the starting and ending points, which are represented as and , respectively. In this paper, A PSO-based algorithm was designed to solve the constraint optimization problem.
First, the initial position and velocity of each particle is initialized as
and
, respectively.
, where
denotes the population size of the PSO algorithm. If the particle satisfies the collision avoidance and curvature constraint, its fitness can be calculated by Equation (25); otherwise, Equation (26) is used to calculate the particle’s fitness. The best position of each particle is represented as
, the global best position of all particles is represented as
. Then, each particle updates its position and velocity as follows:
where
;
;
;
is the iteration number.
and
are positive constants,
and
are random numbers between
.
After number of iterations, the global extremum is obtained. The estimated path length between the starting and ending point can be calculated by Equation (22).
4.3. Path Planning for Simultaneous Arrival
When the coalition
is determined to attack the target
, the UAVs in the coalition
should arrive at the target simultaneously to maximize the system performance. The simultaneous arrival problem for the UAVs in the coalition
can be regarded as a constrained optimization problem:
The cost function and the first two constraints are the same as Equation (24). For the simultaneous arrival problem, the third constraint requires the UAVs in the same coalition to realize the simultaneous arrival. It should be noted that, in this paper, the UAVs and targets are modeled by their resources. Each target may require a UAV coalition, and each UAV can attack a set of targets. So, the task sequence of UAVs should be considered in the third constraint, which means that the target assigned before should be considered in the simultaneous arrival paths. The following two cases illustrate how to obtain the simultaneous arrival paths for the UAVs in the coalition .
(1) If the target is the first assigned target.
If the target
is the first assigned target, which means the target
is the first target in the task sequence for the UAVs in the coalition
. A cooperative particle swarm optimization (CPSO) algorithm in our previous study [
31] can be used to solve the simultaneous arrival problem. Here is a brief explanation: A sub-swarm is generated for each UAV, the positions and velocities of the particles in each sub-swarm are initialized. Each particle’s fitness was calculated using Equation (25) or Equation (26; if the particle violates the first two constraints). Then, each sub-swarm selects its best global position as its representative particle. The particles in each sub-swarm modifies their fitness by communicating with other sub-swarms’ representative particles. After several rounds of iteration, the UAVs in the coalition
can obtain the paths of equal length.
(2) If the target is not the first assigned target.
If the target is not the first assigned target, the UAVs in the coalition may have tasks before the target . For the simultaneous arrival problem, the UAVs in the coalition should consider the targets performed before the target , a modified CPSO algorithm is presented here.
In the modified CPSO algorithm, a sub-swarm is initialized for each UAV in the coalition
. The positions and velocities of the particles in sub-swarm
can be represented as
and
, respectively. Where
,
,
denotes the population size of each sub-swarm. It should be noted that each particle in sub-swarm
determines a PH path from the location of target
to
, where
denotes the target performed by the UAV
just before the target
. The fitness of the particles in each sub-swarm were calculated using Equation (25) or Equation (26). However, as the target
was not the first assigned target, the target assigned before
should be considered in the cost function. For example, for the particles in sub-swarm
, the cost function for path length is modified as:
where
denotes the accurate path length from the current location of UAV
to the target
, which can be obtained in the previous allocation round.
denotes the path length from the location of the target
to
.
Then, a representative particle was selected in each sub-swarm, the representative particle with the maximum path length was selected as the reference particle
. The particles in each sub-swarm modifies their fitness according to the reference particle. For example, the particle
in sub-swarm
modifies its fitness as follows:
where
is the penalty function for the particle
in sub-swarm
:
It should be noted that, when calculating and , the target before should be considered using Equation (29).