UNMANNED AERIAL VEHICLEs (UAVs) are aircrafts which can be controlled remotely or autonomously. UAVs are initially designed for military applications. Introducing UAVs to the battlefield has greatly reduced the number of causalities in dangerous missions such as detecting enemy troops in hostile environments. Thanks to advanced technologies, inexpensive UAVs can now be produced in mass production. UAVs are now applied in civilian applications such as life rescue and land surveying. The main objective of applying UAVs is to off load those routine and tedious missions from pilots such as patrolling and landscape mapping, such that pilots can be allocated to more sophisticated missions which require human decisions. Thus, intensive researches have been carried out to study the possibility of autonomous control in UAVs.

One of the major studies in the autonomous control of UAVs is on path planning [1]. Path planning is usually defined as finding a path in a bounded terrain between an arbitrary starting point and an arbitrary ending point, provided that the path is optimized according to some constraints or requirements. Exact algorithms, such as linear programming [2], [3] and dynamic programming [4], have shown to provide good results in some small scale path planning problems. The major drawback of exact algorithms is that the computational complexity of these algorithms increases drastically with the resolution of the search space, making them impractical to be applied in real scenarios. Meta-heuristic algorithms, such as genetic algorithms (GA) [5], [6], [7], [8], [9], [10] and ant colony optimization (ACO) algorithms [11], are widely applied in large scale search problems. Meta-heuristic algorithms are able to deliver promising results in medium to large scale path planning problems. However, due to their meta-heuristic properties, parameters have to be carefully selected to prevent GA and ACO from being trapped in local optimum points.

In this paper, a cooperative path planner for UAVs using an ant colony optimization (ACO) algorithm with Gaussian distribution functions is proposed. In comparing with a non-cooperative path planner, the proposed cooperative path planner can greatly increase the total coverage area of the UAVs without reducing the desirability of the paths by a large extent. The rest of the paper is organized as follow. Section II gives the formulation of the optimization problem. Section III describes the proposed path planning optimization algorithm. Simulation results are shown and analyzed in Sections IV and V, respectively. Conclusions are given in Section VI.

SECTION II

## Problem Formulation

The optimization problem in this paper is concerned with finding a path in a bounded terrain between an arbitrary starting point *p*_{s} and an arbitrary ending point *p*_{e}, provided that the path is optimized according to a desirability function.

### A. Scenario Under Study

The scenario under study is a meshed 3-D model mimicking a hilly landscape. The model can be expressed by the following mathematical function:
TeX Source
$$z(x,y) =\sigma[a \sin (b\sqrt{y^2+x^2}+ c\cos(x)+\sin (y+d) + e\sin(y)]^2\eqno{\hbox{(1)}}$$where *a*, *b*, *c*, *d*, *e* are arbitrary constants. Parameter σ is the normalizing factor such that *z*(*x*,*y*) will lie within the range [0,1].

### B. Searching Zones

The 3D terrain is assumed to have a rectangular base of size *T*_{x}-by-*T*_{y} unit^{2}. The terrain is divided into *m*-by-*n* grids. A grid is considered as covered once it has been visited by an UAV.

For most target search and life rescue missions, the interested targets are usually located at those convex regions, i.e., the low-lying land. It is uneconomical to search those concave regions with low probability of finding the targets. The searching zones are therefore defined as the grids in the terrain with *z*(*x*,*y*)≤ *h*_{max}. A terrain is regarded as 100% covered if all its searching zones have been visited by the UAVs.

### C. Desirability of a Path

The desirability of a path is measured by a desirability function δ. The desirability function is the weighted sum of four constraint functions *s*_{i}, where *i* = 1, …, 4. The desirability function is expressed as:
TeX Source
$$\delta = {\sum^4_{i=1} w_is_i \over \sum^4_{i=1}w_i}\eqno{\hbox{(2)}}$$where *w*_{i} are the weightings of the constraints. The constraint functions are in terms of the path length, the minimum turning angle of the path, the maximum pitch rate, and the overlapping area of the current path with paths of other UAVs in the searching zones. The optimization problem is to maximize the desirability of the path.

A shorter path is more desirable than a longer path. Function *s*_{1} is inversely proportional to the length of the path.

Paths consisting of sharp turnings are undesirable for the navigation of UAVs. Function *s*_{2} is a function proportional to the minimum turning angle θ of the path. Suppose an UAV trajectory is formed using a B-spline curve with a number of control points *p*_{i}. A turning angle is the angle formed by any three consecutive control points as illustrated in Fig. 2.

To collect data from the ground, an UAV has to maintain its altitude at a constant level relative to the ground. Paths with frequent climbing and descending motions are undesirable in the sense of fuel consumption. Pitch rate is defined as the change of the altitude of an aircraft over time, which is shown in Fig. 3. Therefore, it is preferred to minimize the maximum pitch rate of the path. Function *s*_{3} is inversely proportional to the maximum pitch rate of the path.

To maximize the total coverage area of the UAVs, the overlapping area among paths of the UAVs should be minimized. Function *s*_{4} is inversely proportional to the overlapping area of the current path and the paths of other UAVs in the searching zones. The overlapping area is counted in term of grids.

SECTION III

## The Proposed Multiple UAV Path Planner

In the proposed path planner, the path of an UAV is represented by a B-spline model with a number of control points. The trajectory of the spline model is controlled by the locations of the control points. In order to maximize the total coverage of the UAVs, locations of these control points are optimized using an ant colony optimization algorithm.

### A. B-Spline Curves

The idea of B-spline curves was given by Schoenberg in the 1940's. A B-spline curve is a piecewise polynomial curve comprising a number of polynomial segments. The continuity nature of B-spline curves makes them most suitable for the representation of aircraft trajectories.

Basically, any B-spline curve can be represented by a set of control points. In the proposed path planner, all paths of the UAVs are represented by B-splines curves which are constructed by the de Boor's algorithm. Details on constructing a B-spline curve can be obtained in the literatures on spline studies [12], [13]. Each path is constructed with *r*+2 control points, *p*_{0}, *p*_{1}, …,*p*_{r+1}. To reduce the complexity of the problem, the UAVs are assumed to move across from the left boundary to the right boundary of the terrain. Therefore, the first control point *p*_{0} is located on the left boundary of the terrain (*x* = 0), while the last control point *p*_{r+1} is located on the right boundary of the terrain (*x* = *T*_{x}). Their *y*-positions depend on the locations where the UAVs enter and leave the terrain.

The remaining *r* control points (*p*_{1}, *p*_{2}, …,*p*_{r}) are distributed sequentially and evenly along the *x*-direction, such that the *x*-coordinate *x*_{i} of a control point *p*_{i} is equal to
TeX Source
$$x_i = i {T_x \over r+1}\eqno{\hbox{(3)}}$$where *T*_{x} is the width of the terrain. The *y*-coordinates of these *r* control points can be chosen along the *y*-direction of the terrain. A line parallel to the *y*-axis with *x* = *x*_{i} is defined as the control point line *L*_{i}. An illustration of the control points and the control point lines is shown in Fig. 4.

### B. ACO With Gaussian Probability Distribution Functions

The ant colony optimization algorithm was introduced by Dorigo in 1990's. The algorithm mimicks the foraging behavior of ants in ant colonies. An ant will leave a trace of chemical called pheromone on the path it has traveled. The instinct of an ant will make itself biased to a path with higher concentration of pheromone. Consider a situation where two paths, path A and path B, are available for the ants to travel from their nest to the food site and carry the food back to their nest. Suppose path A is more desirable than path B. Here, the term “a more desirable path” refers to the path with a shorter path length. Initially, as there is no pheromone trail on the paths, ants will randomly pick their paths. Since path A is shorter than path B, ants on path A can reach the food site and return to their nest in a shorter time than those on path B. Pheromone concentration on path A is therefore increased faster than that on path B. Because of this increase of pheromone concentration, more ants are attracted to pick path A. The mechanism acts as a positive feedback and reinforce the bias on path A. Finally, most ants will pick path A which is the best path in this example.

In the proposed path planner, an ACO algorithm is used to optimize the *y*-positions of the control points such that the total coverage of the UAVs is maximized while the path cost is maintained at low level. The algorithm will run for *t* iterations. In each iteration, the proposed path planner will release *k* “ants” into the terrain. These *k* ants will enter the terrain from the starting point, travel through *r* intermediate control points, and finally exit from the ending point. Except at the starting point and the ending point, these *k* ants are free to choose the *y*-position of the intermediate control points on the corresponding control point lines. When these *k* ants have passed through all the control point lines and have exited from the ending point, *k* paths can be constructed and the desirability function δ of each path can be calculated. Each ant will then leave its “pheromone” onto those control point lines it has visited. The concentration of the pheromone is a Gaussian distribution function *g*(*y*) as given by
TeX Source
$$g(y) = (\alpha \delta)^4 e^{-\beta(y-y_c)^2}\eqno{\hbox{(4)}}$$where α and β are constants, and *y*_{c} is the *y*-coordinate of the control point. The amplitude of the Gaussian distribution function is proportional to the desirability function δ of the corresponding path, while the center of the Gaussian distribution function is proportional to the *y*-positions of the corresponding control points *y*_{c}. Therefore, on each control point line, there will be *k* Gaussian distribution functions. These *k* Gaussian distribution functions will superpose and form a joint distribution function as shown in Fig. 5. The joint distribution function will then be rescaled and form a probability density function *f*(*y*). The probability density function serves as an indicator to indicate the concentration of pheromone at different *y*-positions. In the next iteration, another *k* ants will be released into the terrain. This time, an ant will select the *y*-position of a control point according to the probability density function of the corresponding control point line. A temporary probability density function *f*_{temp}(*y*) will be generated by these *k* ants.

This probability density function *f*_{temp}(*y*) will be used to update *f*(*y*) by using the following equation:
TeX Source
$$f(y) = {f_{\rm temp}(y) + vf(y) \over 1+ v}\eqno{\hbox{(5)}}$$Parameter *v* is called the pheromone evaporating factor which is a number between 0 and 1. This parameter is used to prevent the ACO algorithm from being trapped in local optimal points. After titerations, the proposed path planner will release a path constructing ant (PCA) into the terrain. The PCA will select the locations with the maximum pheromone concentration as the *y*-positions of its intermediate control points. Paths constructed by the PCAs are the solutions of the ACO algorithm.

In this section, the proposed path planner will be applied to a path planning problem. The objective of the simulation is to navigate 10 UAVs to fly across a terrain, such that the total coverage area of the UAVs are maximized provided that the paths are optimized in terms of path length, minimum turning angle and maximum pitch rate. Simulations are performed in Matlab. For comparison purposes, a non-cooperative UAVs path planner is introduced to the simulations to illustrate the performance difference between non-cooperative UAVs path planner (NCUPP) and cooperative UAVs path planner (CUPP). The implementation of the NCUPP is the same as the CUPP except that the weighting of constraint *s*_{4} is set to zero, i.e., *w*_{4} = 0.

The base of the 3D terrain is defined as a 2-by-2 unit^{2} square with the center located at the origin (0, 0). The starting point *p*_{s} and the ending point *p*_{e} of the UAVs are located at (−1,−0.4) and (1, 0.4), respectively. Parameters used in the simulations are shown in Table I. Results presented in this paper are obtained from the averaged of 100 individual simulations. Simulation results are shown in Table II.

SECTION V

## Performance Analysis

According to the simulation results, the proposed cooperative path planner can greatly improve the total coverage of the UAVs by more than 10% comparing with non-cooperative path planner. Such improvement is achieved by considering the overlapping area among paths during the optimization process. To increase the total coverage area, it is unavoidable to reduce the desirability of some of the paths. Simulation results show that the path length, the minimum turning angle, and the maximum pitch rate of the paths obtained from the proposed path planner are all degraded when comparing with that obtained form the non-cooperative path planner. Nevertheless, the degradations are all less than 6%.

In this paper, a cooperative path planner for UAVs is proposed. The path of each UAV is represented using a B-spline curve with a number of control points. The positions of these control points are optimized using an ACO algorithm. The path length, the minimum turning angle, the maximum pitch rate, and the total coverage area have been optimized simultaneously by using the ACO algorithm with Gaussian distribution functions. Simulation results show that, in comparison with a non-cooperative path planner, the proposed cooperative path planner can greatly improve the total coverage of the UAVs without imposing a large reduction on the desirability of the paths generated.