Next Article in Journal
Scale Factor Calibration for a Rotating Accelerometer Gravity Gradiometer
Next Article in Special Issue
Development of a Recognition System for Spraying Areas from Unmanned Aerial Vehicles Using a Machine Learning Approach
Previous Article in Journal
Enhancing Multi-Camera People Detection by Online Automatic Parametrization Using Detection Transfer and Self-Correlation Maximization
Previous Article in Special Issue
Aerial Coverage Analysis of Cellular Systems at LTE and mmWave Frequencies Using 3D City Models
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:

Centralized Unmanned Aerial Vehicle Mesh Network Placement Scheme: A Multi-Objective Evolutionary Algorithm Approach

Instituto Superior Técnico-Universidade de Lisboa, Av. Rovisco Pais 1, 1049-001 Lisboa, Portugal
INESC-ID, R. Alves Redol 9, CP 1000-100 Lisboa, Portugal
Instituto de Telecomunicações, Av. Rovisco Pais 1, 1049-001 Lisboa, Portugal
Author to whom correspondence should be addressed.
Sensors 2018, 18(12), 4387;
Submission received: 15 October 2018 / Revised: 6 December 2018 / Accepted: 8 December 2018 / Published: 11 December 2018
(This article belongs to the Special Issue Unmanned Aerial Vehicle Networks, Systems and Applications)


In the past, Unmanned Aerial Vehicles (UAVs) were mostly used in military operations to prevent pilot losses. Nowadays, the fast technological evolution has enabled the production of a class of cost-effective UAVs that can service a plethora of public and civilian applications, especially when configured to work cooperatively to accomplish a task. However, designing a communication network among the UAVs is a challenging task. In this article, we propose a centralized UAV placement strategy, where UAVs are used as flying access points forming a mesh network, providing connectivity to ground nodes deployed in a target area. The geographical placement of UAVs is optimized based on a Multi-Objective Evolutionary Algorithm (MOEA). The goal of the proposed scheme is to cover all ground nodes using a minimum number of UAVs, while maximizing the fulfillment of their data rate requirements. The UAVs can employ different data rates depending on the channel conditions, which are expressed by the Signal-to-Noise-Ratio (SNR). In this work, the elitist Non-Dominated Sorting Genetic Algorithm II (NSGA-II) is used to find a set of optimal positions to place UAVs, given the positions of the ground nodes. We evaluate the trade-off between the number of UAVs used to cover the target area and the data rate requirement of the ground nodes. Simulation results show that the proposed algorithm can optimize the UAV placement given the requirement and the positions of the ground nodes in the geographical area.

1. Introduction

Unmanned Aerial Vehicles (UAVs), also known as drones, refer to aircraft with no human pilot on board. These are either programmed and fully autonomous or remotely and fully controlled from another location, e.g., ground or space station. There are various types of UAVs (e.g., fixed wing and multi-rotor), and they come in different sizes, raging from small (less than 5 kg) to large (over 4332 kg) [1]. Large UAVs are commonly used singly, for instance, in military operations such as border surveillance, strikes, and reconnaissance, whereas small UAVs may be utilized in swarms to accomplish a mission. With advancement in electronics and sensor technology, small UAVs are becoming massively present in many public and civilian applications, such as in search and rescue operations [2], aerial surveillance [3], tracking targets [4], agriculture field monitoring [5], network extension or compensation [6], and leisure, to mention a few.
The use of swarms of small UAVs has many advantages compared to a single and large UAV [7]. One of the key advantages is the cost to acquire and maintain small UAVs, which is generally much lower than the cost of a large UAV [8]. Swarms of UAVs can automatically reconfigure themselves in case of node failure or link break and accomplish the designated task. That is not possible with a single UAV. Additionally, when network coverage extension is needed, it may be easily achieved with swarms of UAVs by positioning additional UAVs in the target area and allowing them to operate through other already existing UAVs, unlike single UAV network coverage, which is limited by the communication range between the infrastructure and the UAV itself.
Although swarms of UAVs present many advantages, an important aspect to be considered when designing an application using multiple UAVs is the communication network, which poses many challenging issues, as described in [9,10]. Depending on the purpose of the application at hand, UAVs may be semi-stationary and hovering over the area of operations or move around at high speed, changing their relative positions. In the latter scenario, frequent topology changes are observed, which may lead to network partitioning and poor link quality. On the other hand, the commonly-used wireless ad-hoc network communication protocols or algorithms (e.g., proactive and reactive routing) cannot be directly used for UAVs [11]. For instance, since proactive routing protocols need to update the routing tables periodically, in the presence of a high degree of mobility and topology changes, it increases the number of control messages to be exchanged, which degrades the network performance. On the other hand, reactive protocols may introduce higher packet delivery delay each time they compute a new route to the destination node.
UAV placement schemes can help to mitigate the aforementioned issues by finding suitable positions to place UAVs while maintaining connectivity and improving the network performance. The UAV placement optimization schemes can be classified as centralized or distributed. The former assumes that the UAV positions are selected by a centralized entity and conveyed to the UAVs by means of a special purpose long-range low bit rate radio interface. On the other hand, in distributed approaches, UAVs work cooperatively to adjust their position based on local interactions to achieve optimal coverage. This work extends our previous work [12], where we considered the use of a swarm of UAVs as flying access points forming a mesh network among themselves, providing connectivity to ground nodes (GNs). Our main goal is to optimize the placement of the UAVs by choosing deployment positions for the UAVs in order to provide adequate wireless communication coverage to GNs in a target area, while fulfilling their Quality of Service (QoS) requirements.
This work is more related to centralized placement optimization. Given the nature of the problem requirements, we use Multi-Objective Evolutionary Algorithm (MOEA) techniques to optimize the UAV node placement considering the following objectives and constraints:
  • Minimization of the number of UAVs needed to service the GN, while ensuring that the QoS requirements (here, measured as the physical data rate) are properly met.
  • Minimization of the degree of dissatisfaction regarding the required data rate.
  • The number of available UAVs is limited and must not be exceeded.
  • The inter-UAV links do not necessarily employ the same technology as GN-UAV links. Inter-UAV links are considered in an abstract way, but constrained to a maximum range.
  • It is assumed that the throughput values of the links between UAVs are high enough not to constrain end-to-end inter-GN traffic. Only GN-UAV links impose limits to the satisfaction of QoS requirements (end-to-end QoS shall be addressed in future work);
  • GN-UAV links are orthogonal. This can be achieved, for example, by assigning different frequencies or orthogonal channel codes.
The main contribution of this work is to provide a meta-heuristic algorithm, which takes into account more than one objective and multiple constraints to best position the UAVs. Additionally, to reduce the search space and accelerate the convergence of the algorithm, we propose the use of convex hull algorithms to delimit the total area to be covered into a sub-area inside the convex hull formed by the 2D positions of the GNs as explained later in this paper. The remainder of this paper is structured as follows: Section 2 presents the related work. In Section 3, the system model is presented. Section 4 presents the problem definition and formulation as a Multi-Objective Optimization Problem (MOP). Section 5 presents our MOAEA implementation. The simulation results are presented in Section 6. Section 7 presents the simulation results’ discussion, and Section 8 concludes the paper.

2. Related Work

Optimal placement of UAVs has already been studied in the literature, whether considering single or multi-UAV scenarios. In [2], a single UAV was proposed for search and rescue application such as earthquake, flood, or bomb blast. The goal is to deploy a UAV to a position where it can bridge communication between two static nodes on the ground. It is assumed that the UAV hovers over the area in spiral or ladder search mode, sending hello/beacon messages at a regular interval. Upon receiving such a message, the GNs respond by sending their GPS positions back to the UAV. The UAV stores this information and continues hovering in the immediate surroundings to find a position based on the Received Signal Strength (RSS) and distance between the UAV and nodes on the ground. Simulation results showed that the algorithm provides maximum throughput and a low Bit Error Rate (BER) once the UAV is fixed at an optimal position. The drawback of this system is that it is only validated for two GNs. Therefore, as the number of GNs grows, the solution should consider energy constraints during the search process and bandwidth constraints when providing network access to GNs.
The authors in [13] have developed a framework named UAVNet. It is capable of autonomously deploying a wireless mesh network to interconnect two end systems using small quadrocopter-based UAVs with 802.11 s nodes on board. Each UAV would act as the access point and provide network access for regular IEEE 802.11 g wireless devices. There are two positioning modes to place the UAVs between the end systems. The first one is the location-based positioning mode. The latter uses the submitted GPS locations of the end systems and directs the UAV to the exact geographical position between these two GPS coordinates. The second one is the signal strength positioning mode. It extends the location positioning mode and includes also the received signal strength of the two end systems to calculate a more accurate position for the UAV. This takes the quality of the wireless link and other environmental factors into account.
Usually, the process of network densification in cellular networks uses fixed small cells (e.g., picocells and femtocells) to increase the network capacity based on the expected formation of hotspots. In places where temporary hotspots are formed, fixed small cells would remain under-utilized once the hotspots have moved to a different location or disappeared. The authors in [14] proposed small cells mounted on UAVs to offload User Equipment (UE) from the microcell infrastructure. The optimum placement points of the UAVs are determined using the K-means clustering algorithm. In their work, the performance metric was measured based on the RSS experienced by the UE. The simulation results have shown that as UAVs are able to position themselves in real time around the actual UE position rather than expected UE hotspots, they outperform equivalent small cell deployment.
In [15], Al-Hourani et al. presented a mathematical model that aims to optimize the flying altitude of UAV-based Base Stations (BSs) to maximize the coverage area on the ground. The Air-to-Ground (A2G) path loss model is based on their previous work [16]. The A2G path loss in [16] considered some parameters ( α o , β o , and γ o ) that describe to a fair extent the general geometrical statistics of a certain urban area in which the Radio Frequency (RF) signal propagates. The authors refer to the additive loss incurred on top of the Free Space Path Loss (FSPL) as the excessive path loss ( η ), which has a Gaussian distribution. In the model, η is used to identify three different groups of GNs, namely G1, which is the group favoring the Line-of-Sight (LoS) condition; group G2 corresponds to GNs with No Line-of-Sight (NLoS), but still receiving coverage via strong reflection and diffraction; and lastly, group G3, which suffer from deep fading conditions. The probability of a certain propagation group (excluding G3) to occur at a certain elevation angle is computed. Differently from [16], in [15], η refers to the mean value of the excessive path loss rather than its random behavior. The authors were able to present a closed-form equation based on the elevation angle and the urban statistical parameters ( α o , β o , γ o ).
In [17], Kalantari et al. proposed a 3D UAV placement scheme using the Particle Swarm Optimization (PSO) algorithm. Their system model envisioned the use of UAVs as flying base stations (referred to as drone-BSs) and limited their analysis to the downlink communications. The main goal of the proposed algorithm is to find the minimum number of drone-BSs and their 3D placement to service all GNs with some target QoS requirement. The A2G channel model is similar to the one presented by Al-Hourani et al. in [16], where the probability of LoS and NLoS connectivity between the drone-BSs and GNs was studied as explained previously.
Chen et al. [18] studied the optimum altitude to place a UAV when it is used to relay data from GN to a remote ground station for further processing. The new proposed model derives from the seminal A2G channel models [15,16]. Differently from the former models, the proposed model accounts for the hop from the UAV to the remote station. The study was limited to a single UAV, which in turn may limit the coverage area.
Mozaffari et al. [19] proposed a method to deploy multiple UAVs equipped with directional antennas. The aim was to maximize the coverage performance while ensuring that the coverage areas of UAVs do not overlap. The path loss model considered here is based on the model proposed in [16]. Although the A2G models and coverage schemes presented in [15,16,17,19] may be a good approximation in an urban environment, they do not address the coordination mechanism or connectivity among UAVs, i.e., the Air-to-Air (A2A) connectivity, which is important for network reliability. In another work, Mozaffari et al. [20] presented a study in which the main contribution was to analyze the coverage and rate performance of UAV-based wireless communication in the presence of underlying device-to device (D2D) communication links.
In [21], the authors presented a model for an optimal placement of UAVs to cover a set of targets, i.e., GNs. They considered two cost metrics, namely the number of UAVs and energy consumption, seeking to minimize both metrics. The authors assumed that each UAV had a minimum and maximum observation altitude. They also assured that the UAV’s energy consumption was related to this altitude, since the higher the altitude, the larger the observed area, but also the higher the energy consumption. The optimization problem was mathematically solved by defining an integer linear and a mixed non-linear optimization model.
The authors in [22] used the same assumption as in [21] to model an optimized UAV placement and formulate it as a multi-objective linear problem. The main difference is that, in [22], the connectivity among UAVs was considered as an additional constraint. In [22], the following objectives were to be minimized: the number of UAVs and the maximum flying altitude. Our work is closer to [22], though with some differences. Firstly, we consider using omni-directional antennas instead of directional. Secondly, one of our objectives is to minimize the difference between the assigned and required data rate, whereas one of their objectives is to maximize the flying altitude. Table 1 presents the main characteristics of the related work.

3. System Model

We consider a wireless network consisting of two kinds of nodes, GNs and UAVs, which are represented by the sets V and U , respectively. All nodes are assumed to be located in a rectangular area A with length X m a x and width Y m a x . Nodes are equipped with omni-directional transceivers and a GPS. Therefore, they know their positions in the aforementioned rectangular area at any time. The position of a GN v is assumed to be on the ground with coordinates q ( x , y , 0 ) v , while the position of a UAV node u is represented in the 3D plane as q ( x , y , h ) u , where h is the flying altitude of u. We consider A as a suburban area and that the main factor affecting the service quality offered by a UAV is path loss. Furthermore, orthogonal channel codes are used to avoid interference between concurrent transmissions. Similar to [23], we employed the log-distance path loss model, where the received power is calculated according to the following expression:
P r ( d ) = P r ( d 0 ) 10 α log 10 d d 0
where P r ( . ) is the received power at a given distance. In Equation (1), d 0 is the reference distance and α is the path loss exponent. UAVs are assumed to have the same operating characteristics, featuring the same transmit power, antenna gains, and enough energy storage to complete the mission, and they may fly at different altitudes. GNs can only communicate with each other through UAVs. Assuming communication between a GN and a UAV, d is computed as the Euclidean distance between their transceivers as follows:
d = ( x u x v ) 2 + ( y u y v ) 2 + h u 2
We define D i as the maximum achievable communication range for a given transmission mode i by simply manipulating Equation (1). D i is computed considering P r ( d ) as the receiver sensitivity at transmission mode i, and P r ( d 0 ) is the received power at a reference distance d 0 . The distance d between the transmitter and the receiver should not be greater than the maximum communication range D i for the required communication mode i. An overview of the proposed system is shown in Figure 1.

4. Problem Definition

Consider the network model presented in Section 3. The goal is to ensure that all GNs are covered and that the data rate requirements are met as much as possible when UAVs are used as relay nodes. We assume that there is a cost associated with each used UAV. Thus, minimizing the number of UAVs is desirable. On the other hand, GNs may have different data rate requirements. The satisfaction of data rate as GN requirements is closely dependent on the channel conditions (e.g., SNR), which also depends on the communication distance, which results from the number and placement of the serving UAV in the network. We intend to deploy as few connected UAVs as possible in suitable locations to enable communication between GNs, while satisfying multiple independent data rate requirements. In some instances, the QoS demands are competitive, i.e., one cannot satisfy them simultaneously. This gives rise to the need for finding solutions that try to balance them. This problem can be modeled meta-heuristically as a multi-objective optimization problem to find the trade-off among non-dominated solutions. In the rest of this section, we define the Multi-Objective Optimization Problem (MOP) and present the formulation of our UAV placement optimization problem as an MOP.

4.1. Multi-Objective Optimization Problem

A MOP can be stated as follows [24]:
M i n i m i z e / M a x i m i z e f ( ε ) , m = 1 , 2 , , M s u b j e c t t o : g j ( ε ) 0 , j = 1 , 2 , , J h k ( ε ) = 0 , k = 1 , 2 , , K ε i ( L ) ε i ε i ( U ) , n = 1 , 2 , , n }
where M is the number of objective functions subject to J inequalities and K equality constraints. A solution ε is a vector of n decision variables, i.e., ε = ( ε 1 , ε 2 , , ε n ) T . Each variable is subjected to a constraint called variable bounds. ε i ( L ) represents the lower (L) bound, and ε i ( U ) corresponds to the upper (U) bound. The set of all variable bounds defines the decision variable space Ω .
A solution ε that satisfies all constraints and variable bounds is named a feasible solution. The set of all feasible solutions is called the feasible region (or search space S).
Definition 1.
Domination: A solution ε ( 1 ) is said to dominate the other solution ε ( 2 ) , if the following conditions are verified:
  • The solution ε ( 1 ) is no worse than ε ( 2 ) in all objectives, or f m ( ε ( 1 ) ) is no worse than f m ( ε ( 2 ) ) for all m = 1 , 2 , , M ;
  • The solution ε ( 1 ) is strictly better than ε ( 2 ) in at least one objective, or f m ¯ ( ε ( 1 ) ) is better than f m ¯ ( ε ( 2 ) ) for at least one m ¯ = 1 , 2 , , M ;
Definition 2.
Non-dominated set: Among a set of solutions P, the non-dominated set of solutions P’ is comprised of those that are not dominated by any member of the set P.
Definition 3.
Globally Pareto-optimal: This refers to the non-dominated set of the entire feasible space S.

4.2. Formulation of UAV Placement Optimization as an MOP

In this section, we formulate the problem in R 2 objective space. We seek to minimize the number of deployed UAVs and simultaneously minimize the difference between the data rate required by the GNs to transmit data and the data rates that result from the MOP solution.

4.2.1. Minimize the Number of UAVs

We start by identifying a set of potential UAV placement points Q, by finding a sub-area a A , which corresponds to the area inside the convex hull (convex envelope) [25] formed by the GNs in A , as shown in Figure 2. We compute the convex hull to reduce the search space of the UAVs’ placement points in the target area. We intend to cover all GNs in a . Therefore, we discretize a in a grid layout according to Equation (4).
Δ = μ D ; μ [ 0 , 1 ]
where Δ is the distance between two neighboring UAVs, which is adjusted using μ . Let q j Q be the jth potential UAV placement point. We define δ q j u as a binary variable to indicate which points are currently being used by a UAV as presented bellow.
δ q j u = 1 if UAV u is located at q j 0 Otherwise
We also define ζ v u as a binary variable to indicate which GNs are being serviced by each deployed UAV. It is assumed that a GN will be connected to the closest deployed UAV.
ζ v u = 1 if v is connected to UAV u 0 Otherwise
Our objective is to select points in Q such that:
m i n q j Q u U δ q j u
subject to:
q j Q δ q j u 1 , u U
v V ζ v u 1 , v V
Constraint (6) indicates that each UAV u cannot be placed in more than one point at the same time. Constraint (7) ensures that a GN is in the communication range of at least one UAV. The cardinality of the set Q defines the maximum number of UAVs that can be used for each formed convex hull. In order to ensure connectivity among UAVs, we have considered using Algorithm 1, which verifies if each UAV has a path to the selected destination, which may be used as the control station. UAVs are assumed to have two main attributes: serving, when the UAV is used to serve GNs and to connect the network, and bridging, when it is solely being used to connect the serving UAVs.
Algorithm 1 Construction of the connected UAV network.
Input: u d e s t , adjacency matrix
Result: Connected UAV network
For each u U
   IF u is serving, and u is not bridging
      q c u r r = q u ; /* q c u r r Q is the current point towards the destination*/
     Until not reachable (u, u d e s t )
Find the closest point q Q to q u d e s t , which is within distance D from q c u r r
If q is not in use
q c u r r = q
Find u U , which is not serving or bridging
Set: u to bridging
q u = q c u r r
Update the adjacency matrix

4.2.2. Minimizing the Degree of Dissatisfaction of the Required Data Rate

Consider a set of transmission modes B comprising the possible bit rates b i . We denote the transmission modes in use by a UAV and requested by a GN as b i u and b i v , respectively. We define the degree of dissatisfaction as follows:
γ v = | b i u b i v | b i v if ( b i u b i v ) < 0 0 Otherwise
We consider that the use of a b i depends on the SNR. Usually, GNs experiencing a relatively low SNR will have their receiver interface tuned to a robust (with lower BER when compared with other modes under the same channel conditions) transmission mode with a lower data rate. On the other hand, if the SNR is relatively high, the receiver may be tuned to a transmission mode that offers a higher data rate. Essentially, from Equation (8), we measure the difference between the required data rate by the GN and the one that is delivered by the serving UAV given the current distance between them. As previously stated, LoS links are assumed between GNs and UAVs, and orthogonal channel codes are used to avoid interference between concurrent transmissions. Thus, if the distance between the UAV and GN is within the admissible distance for the required transmission mode b i v , then the GN can transmit at the required data rate, i.e., the degree of dissatisfaction is zero. In this work, we try to minimize the maximum dissatisfaction value as follows:
m i n ( m a x v V γ v )

5. UAV Placement Based on NSGA-II

In this section, we present the terminologies used by NSGA-II [26] and the main genetic algorithm elements (individual or chromosome, fitness, selection, population, and genetic operators). The term solutions and individuals are interchangeably used along the remaining part of this paper.
NSGA-II is an elitist MOEA, which comprises two main procedures. One is the Pareto ranking procedure, which aims at sorting the population into different non-domination levels ( i r a n k ) in ascending order. The lowest ranking level contains the best solution. In order to identify solutions of the first non-dominated front in a population of size N, each solution is compared with every other solution in the population to find if it is dominated. After all members of the first non-dominated front are found, they are discounted temporally so that the next non-dominated front could be found by repeating this first procedure. The other procedure is the diversity preservation, which is used to maintain a good spread of solutions in the obtained set of solutions. Members in each non-dominated front are assigned a value called crowding distance ( i d i s t a n c e ). This value gives an estimate of the density of solutions surrounding a particular solution in the population. A solution with a smaller value of this distance measure is, in some sense, more crowded by other solutions. The crowded-comparison operator, denoted as n , is used to distinguish the best solution during the selection process. It assumes that every individual i in the population has two attributes, i r a n k and i d i s t a n c e . The partial order n is defined as:
i n j if ( i r a n k < j r a n k ) or ( ( i r a n k = j r a n k ) and ( i d i s t a n c e > j d i s t a n c e ) )
That is, between two solutions with differing non-domination ranks, we prefer the solution with the lower (better) rank. Otherwise, if both solutions belong to the same front, then we prefer the solution that is located in a less crowded region.
Algorithm 2 shows the main loop of NSGA-II proposed by the authors in [26], where the call of the routines fast-non-dominated-sort ( R t ) and crowding-distance-assignment ( F i ) corresponds to the first and second procedure described above, respectively. R t is of size 2 N formed by combining parent S t and offspring Z t populations. F i refers to the i th front or level. The detailed explanation of the aforementioned procedures is also available in [26]. We describe the main loop of NSGA-II as follows:
Algorithm 2 NSGA-II main loop.
R t = S t Z t
F = fast-non-dominated-sort ( R t )
S t + 1 = and i = 1
Until | S t + 1 | + F i N
crowding-distance-assignment ( F i )
S t + 1 = S t + 1 + F i
i = i + 1
Sort( F i , n )
S t + 1 = S t + 1 F i [ 1 : ( N | S t + 1 | ) ]
Z t + 1 = make-new-population ( S t + 1 )
t = t + 1
Step 1.
Combine parent and offspring population;
Step 2.
F = ( F 1 , F 2 , ) ; sort R t according to non-domination procedure;
Step 3.
Initialize an empty set for the parent population P t + 1 = , and set a counter i to one;
Step 4.
Until the parent population is filled;
Calculate crowding-distance in F i ;
Include the ith non-dominated front in the parent population;
Check the next front for inclusion. The best solutions are in F 1 . If the size of F 1 is smaller than N, we choose all the members of the set F 1 for the new population S t + 1 . The remaining members of the population S t + 1 are chosen from the subsequent non-dominated front in the ascending order of their ranking, ( F 2 , F 3 , ) . Say that the set F l is the last non-dominated set beyond which no other set can be accommodated. In general, the count of solutions in all sets from F 1 to F l would be larger than the population size. In order to choose exactly N population members, we sort the solutions of the front F l using the crowded-comparison operator ( n ) in descending order and choose the best solution needed to fill all population slots;
Step 5.
Sort in descending order using n ;
Step 6.
Choose the first ( N | S t + 1 | ) elements of F i ;
Step 7.
Use selection, crossover, and mutation to create a new population Z t + 1 ;
Step 8.
Increment the generation counter.

5.1. Individual and Initial Population

An individual encodes a candidate solution to the problem. Our proposed individual stores the UAVs positions q j u Q inside the discretized convex hull area a for each deployed or serving UAV. The length of the individual (see Figure 3) represents the number of deployed UAVs or points used in Q; therefore, the length of one individual may differ from another in the population. If it is detected that some GNs are not covered in an individual, then the corresponding individual is considered as invalid, i.e., cannot be used in any step of the NSGA-II algorithm. Algorithm 1 ensures that all individuals are valid during the creation of the initial population.
In our implementation of NSGA-II, the initial population is a set of N randomly-generated valid individuals, i.e., random solutions to cover the target area.

5.2. Objective or Fitness Function

A fitness function decodes the solution represented by a chromosome and lets us know how far we are from the optimal/ideal solution if it is known. In MOEA, there will be a fitness function for each objective space. Equations (5) and (9) compute the fitness for the number of UAVs and degree of dissatisfaction, respectively. Values scored from both objective functions are used by NSGA-II to set the ith front.

5.3. Selection

The goal of selection procedure is to pick the best individuals for the next generation. We use binary tournament selection based on crowded-comparison operator n , as described in Section 5.

5.4. Genetic Operators

Genetic operators are responsible for generating new solutions to populate the next generations. In the next sections, we present how they are performed.

5.4.1. Crossover

Two parents are chosen to exchange their genes with a probability p c . We rely on 2D representation of each parent (see Figure 4) to show how crossover is conducted. In this procedure, we find the midpoint in a and draw a separation or cutting line to divide the area into two parts in each of the parents. The cutting line may be drawn diagonally in 45/−45 degrees or horizontally or vertically. Next, we remove all UAVs that are within a 1 2 D distance radius along the cutting line within a . If the separation line is either diagonally or vertically drawn, the leftmost part of one parent is joined with the rightmost part of the other to form an offspring. On the other hand, if it is horizontally drawn, the uppermost and bottommost will be joined instead. There may be some uncovered GNs in the vicinity of the separation line, since we have removed some UAVs, which makes the resulting offspring an invalid individual. In this case, we repair the offspring by repeatedly choosing a random uncovered GN and place a UAV in a closest available point q ( x , y , h ) u until all GNs are covered and the connectivity among UAVs is verified by Algorithm 1. UAVs that are not serving or bridging any GNs are removed.

5.4.2. Mutation

For each individual, a UAV is randomly chosen based on a probability p m . Next, either it is temporarilyremoved from the network or reallocated to a new available placement point with 50% chance for each procedure to be performed. If the above procedures fail to produce a valid individual, then the UAV is put back in its initial position. Figure 5a,b shows the removal and reallocation procedures, respectively.

5.5. Complexity

Determining the computational complexity of MOEA is difficult [27], since it depends on the specific problem setting. According to [26], the computational complexity of a faster algorithm such as NSGA-II is O ( M N 2 ) , where M is the number of objective functions and N is the population size. On the other hand, the authors in [27] have considered the computational complexity as O ( n g M N 2 ) , where n g is the number of generations. Depending on the stopping criteria used, n g can have any complexity from constant to NP. It should be noted that when n g is not constant or otherwise limited, it is a function of the chromosome size. In this work, although we define a fixed cut-off value, as we will see later, the number of generations n g will be variable due to the variable length/size of the chromosome. The size of the chromosome is defined by the current number of deployed UAVs (candidate solution). In a population of size N, we may have many different solutions, which in turn makes it difficult to determine the computational complexity of our MOEA-NSGA-II implementation.

6. Simulation Results

In this section, we present the simulation results of our implementation of NSGA-II. We have two objective functions. The first one aims at reducing the cost in terms of the number of deployed UAVs used to service GNs, and the second one is intended to reduce the maximum dissatisfaction of GNs in terms of the required data rate. We have developed the algorithm in the C++ programming language. We assume that there will be a centralized entity (eventually located on one of the ground vehicles, or on the cloud) responsible for running the algorithm and delivering the configuration to the UAVs. The setup of the proposed scenarios, the MOEA termination criterion, and the dominated and non-dominated sets are presented in Section 6.1, Section 6.2 and Section 6.3, respectively.

6.1. Scenario Setup

We considered a network with 100 fixed GNs uniformly distributed in a rectangular area of size 5000 m × 5000 m. We set three different scenarios by varying the value of μ . This parameter is used to discretize the area inside the convex hull formed by the GNs. Different from our previous work [12] where UAVs were only allowed to fly at a fixed altitude, here, a UAV may fly at a given altitude h uniformly selected from the set H = {40, 80, 120} m. We assume that the transmit power among the nodes is fixed at 23 dBm. Previously, in Section 4, it was stated that potential UAV placement points will be identified within a convex hull formed by the GNs. The convex hull is found by the Graham scan algorithm [28] based on the GN deployment positions q ( x , y , 0 ) v .
Our scenarios consider a suburban environment and use log-distance path loss model for the signal attenuation. Table 2 shows all possible data rates and their corresponding minimum sensitivities at the receiver, i.e., P r ( d ) . These values were used to compute the maximum achievable distance D i with α in Equation (1) set to 2.2 [23] and d 0 fixed at 1 m. We compute P r ( d 0 ) using the free space propagation model, P r ( d 0 ) = P t G t G r ( c / 4 π d 0 f ) 2 [29], where P t is the transmit power, G t and G r are the transmitter and receiver antenna gains, respectively, and c and f are the speed of light and carrier frequency, respectively. We set G t = G r = 1 (0 dBm). Moreover, each data rate in Table 2 is considered to be using a different transmission mode.
For the set of UAV candidate position Q, we chose D i with the lowest minimum sensitivity and adjusted it by using the parameter μ to ensure that two UAVs positioned side by side can communicate with each other. As already stated, we assumed that there was a wireless communication technology between UAVs that was capable of efficiently relaying all the traffic from the GNs, never causing a bottleneck. The parameters that were common in different scenario are detailed in Table 3 as follows.
We have adjusted NSGA-II parameters such as the probability of crossover ( p c ) and mutation ( p m ) and the population size so that the algorithm did not prematurely converge or perform an excessive number of computations due to either low values of the probability of crossover or a high population size. The NSGA-II parameters are summarized in Table 4.

6.2. MOEA Termination Criterion

The MOEA termination adopted in this work is similar to that used in [30], in the sense that we also maintained an external archive of non-dominated solutions obtained at some predefined steps at earlier generations, and it was subject to be updated some generations later. However, instead of computing the ratio of the number of solutions in the archive that were dominated by the new ones of the current generation and the ratio of the number of solutions that were also present in the new set of non-dominated solutions, we computed the ratio of new solutions, which were not present in both dominated and non-dominated sets of the archive, and we used it to define our stopping criterion. We used τ = 0.05 as the cut-off value for the new solutions. However, the choice of the exact cut-off value may depend on the problem and may require some trial and error. Figure 6 shows the ratio of new solutions at every tenth generation (i.e., step = 10). The ratio was significantly high in the first generation when the algorithm was evolving and decreased with the generation, as new solutions were not frequent. We also observed that depending on μ , NSGA-II took a different number of generations to achieve the cut-off value. In fact, the value of μ affected the cardinality of Q, hence increasing or decreasing the search space, i.e., the higher the cardinality of Q, the higher was the number of generations to achieve the cut-off value. On the other hand, the lower the cardinality of Q, the lower was the number of generations to achieve the cut-off value. These results are shown in Table 5.

6.3. Dominated and Non-Dominated Sets

For each value of μ , all dominated and non-dominated solutions are presented in Figure 7. From each Pareto front set, we can clearly see the trade-off between the number of UAVs that are flying in the area and the degree of dissatisfaction of the GNs in terms of the required data rate, i.e., when few UAVs are deployed, a high degree of the maximum dissatisfaction was observed. On the other hand, when the number of UAVs increased, the degree of the maximum dissatisfaction decreased.
Table 6 presents the maximum and minimum number of UAVs and their respective degrees of dissatisfaction from the Pareto front set of each value of μ presented in Figure 7. These results show that the proposed algorithm can optimize the UAV placement given the requirement and the positions of the GNs in the target area.

7. Discussion

As shown above, varying μ affects the objective functions, though we have computed the convex hull to reduce the search space to some extent. However, this parameter may still reduce or increase the number of candidate points to place UAVs in the target area. The choice of μ depends on the requirement such as the area to be covered, the maximum transmission range, and also the number of available UAVs to cover the GNs to meet the QoS requirements.
In this work, varying the flying altitude would not significantly affect the objective functions given the order of magnitude between the communication range of omni-directional antennas considered in the simulations and the allowed flying altitudes from the set H , i.e., picking uniformly any value from the set H , there will be a slight difference between the covered areas.
The use of NSGA-II as an optimization tool allows us to produce a set of solutions that are better and spread as observed in our simulations results. It enables us to have options to select a solution according to the requirement of the application or problem at hand. For instance, if it is not acceptable that any GN communicates beyond 75% of the degree of dissatisfaction and there are no more than 60 available UAVs, then they can easily be configured with solutions that respect these requirements from our Pareto-optimal (non-dominated) set chosen from Figure 7.
The experimental results presented in the previous section are specific to the proposed scenarios and assumptions that were considered in our system model. In a realistic environment, one should take into account additional constraints such as the effect of interference, GN mobility, number of GNs to be covered, terrain conditions, etc.
  • Interference: Nodes may be positioned within an acceptable distance for the required data rate, but may fail to achieve it due to interference caused by ongoing transmission of their neighboring nodes.
  • GN mobility: Although the mobility is not considered in this work, it is worth mentioning that it would at least demand scheduling of periodic updates and computation of new solutions due to topology changes. As was previously mentioned, that is a challenging issue, namely because of the need to minimize temporary connectivity disruption due to UAV position changes.
  • Number of GNs: UAVs have a limited capacity to service a certain number of GNs efficiently, and if this capacity is exceed, additional UAVs may be needed.
  • Terrain conditions/ structure: UAVs may not fly at the desired altitude due to the existence of obstacles (e.g., trees, mountains, buildings, etc.), which may require the addition of more UAVs to maintain the connectivity among the nodes.
Algorithm 1 was used to ensure the connectivity of the network and produce valid solutions. We used the Breadth First Search (BFS) algorithm to check if there is a path to the destination. If a path is not found, it adds a new UAV to connect it, as explained in Section 4.2.1. This procedure is not optimized, which may conflict with the objective of minimizing the number of UAVs. However, it may eventually reduce the degree of dissatisfaction of the GNs.

8. Conclusions

This paper presents an optimized placement scheme for UAV access points providing network connectivity to GNs with differentiated data rate requirements. The goal of the proposed algorithm is to deploy as few as possible connected UAVs to cover and simultaneously satisfy the aforementioned requirements of the GNs. In order to attain this goal, we have mathematically formulated the problem and used an MOEA named NSGA-II to run the simulations. In order for NSGA-II to work, we proposed a chromosome structure, crossover scheme, and mutation procedure. Simulations were performed considering Wi-Fi (802.11g) technology, where GNs would request to turn to a given transmission mode within a set of available ones. Simulation results show that the algorithm optimizes the UAV placement given the requirements and positions of the GNs, considering the trade-off between the number of UAVs and the quality of the coverage.
In future work, we will consider additional constrains such as limited inter-UAV link capacity and interference. We will also consider joint topology and routing optimization.

Author Contributions

Conceptualization: S.S., N.H. and A.G., Writing-Original Draft Preparation: S.S, Writing-Review: S.S., N.H. and A.G., Supervision and Validation: N.H and A.G.


This work was partially supported by Fundação Calouste Gulbenkian and by Portuguese national funds through Fundação para a Ciência e Tecnologia (FCT) with reference UID/CEC/50021/2013.

Conflicts of Interest

The authors declare no conflict of interest.


The following abbreviations are used in this manuscript:
BERBit Error Rate
BFSBreadth First Search
BSBase Station
FSPLFree Space Path Loss
GNGround Node
GPSGlobal Positioning System
IEEEInstitute of Electrical and Electronics Engineers
MOEAMulti-Objective Evolutionary Algorithm
MOPMulti-objective Optimization Problem
NLoSNo Line-of-Sight
NSGA-IINon-dominated Sorting Genetic Algorithm II
QoSQuality of Service
PSOParticle Swarm Optimization
RFRadio Frequency
RSSReceived Signal Strength
UAVUnmanned Aerial Vehicles
UEUser Equipment
Wi-FiWireless Fidelity


  1. Dalamagkidis, K.; Valavanis, K.P.; Piegl, L.A. Current status and future perspectives for unmanned aircraft system operations in the us. J. Intell. Robot. Syst. 2008, 52, 313–329. [Google Scholar] [CrossRef]
  2. Ullah, H.; McClean, S.; Nixon, P.; Parr, G.; Luo, C. An optimal uav deployment algorithm for bridging communication. In Proceedings of the 2017 15th International Conference on Proceedings of the ITS Telecommunications (ITST), Warsaw, Poland, 29–31 May 2017; pp. 1–7. [Google Scholar]
  3. Beard, R.W.; McLain, T.W.; Nelson, D.B.; Kingston, D.; Johanson, D. Decentralized cooperative aerial surveillance using fixed-wing miniature uavs. Proc. IEEE 2006, 94, 1306–1324. [Google Scholar] [CrossRef]
  4. Reynaud, L.; Guérin-Lassous, I. Design of a force-based controlled mobility on aerial vehicles for pest management. Ad Hoc Netw. 2016, 53, 41–52. [Google Scholar] [CrossRef]
  5. Xiang, H.; Tian, L. Development of a low-cost agricultural remote sensing system based on an autonomous unmanned aerial vehicle (uav). Biosyst. Eng. 2011, 108, 174–190. [Google Scholar] [CrossRef]
  6. Rohde, S.; Putzke, M.; Wietfeld, C. Ad hoc self-healing of ofdma networks using uav-based relays. Ad Hoc Netw. 2013, 11, 1893–1906. [Google Scholar] [CrossRef]
  7. Bekmezci, I.; Sahingoz, O.K.; Temel, Ş. Flying ad-hoc networks (fanets): A survey. Ad Hoc Netw. 2013, 11, 1254–1270. [Google Scholar] [CrossRef]
  8. Anderson, K.; Gaston, K.J. Lightweight unmanned aerial vehicles will revolutionize spatial ecology. Front. Ecol. Environ. 2013, 11, 138–146. [Google Scholar] [CrossRef] [Green Version]
  9. Gupta, L.; Jain, R.; Vaszkun, G. Survey of important issues in uav communication networks. IEEE Commun. Surv. Tutor. 2016, 18, 1123–1152. [Google Scholar] [CrossRef]
  10. Zeng, Y.; Zhang, R.; Lim, T.J. Wireless communications with unmanned aerial vehicles: opportunities and challenges. IEEE Commun. Mag. 2016, 54, 36–42. [Google Scholar] [CrossRef] [Green Version]
  11. Jiang, J.; Han, G. Routing protocols for unmanned aerial vehicles. IEEE Commun. Mag. 2018, 56, 58–63. [Google Scholar] [CrossRef]
  12. Sabino, S.; Grilo, A. Topology control of unmanned aerial vehicle (uav) mesh networks: A multi-objective evolutionary algorithm approach. In Proceedings of the 4th ACM Workshop on Micro Aerial Vehicle Networks, Systems, and Applications, Munich, Germany, 10–15 June 2018; ACM: New York, NY, USA, 2018; pp. 45–50. [Google Scholar]
  13. Morgenthaler, S.; Braun, T.; Zhao, Z.; Staub, T.; Anwander, M. Uavnet: A mobile wireless mesh network using unmanned aerial vehicles. In Proceedings of the 2012 IEEE Globecom Workshops, Anaheim, CA, USA, 3–7 December 2012; pp. 1603–1608. [Google Scholar]
  14. Galkin, B.; Kibilda, J.; DaSilva, L.A. Deployment of uav-mounted access points according to spatial user locations in two-tier cellular networks. In Proceedings of the Wireless Days (WD), Toulouse, France, 23–25 March 2016; pp. 1–6. [Google Scholar]
  15. Al-Hourani, A.; Kandeepan, S.; Lardner, S. Optimal lap altitude for maximum Coverage. IEEE Wirel. Commun. Lett. 2014, 3, 569–572. [Google Scholar] [CrossRef]
  16. Al-Hourani, A.; Kandeepan, S.; Jamalipour, A. Modeling air-to-ground path loss for low altitude platforms in urban environments. In Proceedings of the 2014 IEEE Global Communications Conference (GLOBECOM), Austin, TX, USA, 8–12 December 2014; pp. 2898–2904. [Google Scholar]
  17. Kalantari, E.; Yanikomeroglu, H.; Yongacoglu, A. On the number and 3d placement of drone base stations in wireless cellular networks. In Proceedings of the 2016 IEEE 84th Conference on Vehicular Technology Conference (VTC-Fall), Austin, TX, USA, 8–12 December 2016; pp. 1–6. [Google Scholar]
  18. Chen, Y.; Feng, W.; Zheng, G. Optimum placement of uav as relays. IEEE Commun. Lett. 2018, 22, 248–251. [Google Scholar] [CrossRef]
  19. Mozaffari, M.; Saad, W.; Bennis, M.; Debbah, M. Efficient deployment of multiple unmanned aerial vehicles for optimal wireless coverage. IEEE Commun. Lett. 2016, 20, 1647–1650. [Google Scholar] [CrossRef]
  20. Mozaffari, M.; Saad, W.; Bennis, M.; Debbah, M. Unmanned aerial vehicle with underlaid device-to-device communications: Performance and tradeoffs. IEEE Trans. Wirel. Commun. 2016, 15, 3949–3963. [Google Scholar] [CrossRef]
  21. Zorbas, D.; Pugliese, L.D.P.; Razafindralambo, T.; Guerriero, F. Optimal drone placement and cost-efficient target coverage. J. Netw. Comput. Appl. 2016, 75, 16–31. [Google Scholar] [CrossRef] [Green Version]
  22. Caillouet, C.; Razafindralambo, T. Efficient deployment of connected unmanned aerial vehicles for optimal target coverage. In Proceedings of the Global Information Infrastructure and Networking Symposium (GIIS), St. Pierre, France, 25–27 October 2017; pp. 1–8. [Google Scholar]
  23. Yanmaz, E.; Kuschnig, R.; Bettstetter, C. Channel measurements over 802.11 a-based uav-to-ground links. In Proceedings of the GLOBECOM Workshops (GC Wkshps), Houston, TX, USA, 5–9 December 2011; pp. 1280–1284. [Google Scholar]
  24. Kalyanmoy, D. Multi Objective Optimization Using Evolutionary Algorithms; John Wiley and Sons: Hoboken, NJ, USA, 2001. [Google Scholar]
  25. Jarvis, R.A. On the identification of the convex hull of a finite set of points in the plane. Inf. Process. Lett. 1973, 2, 18–21. [Google Scholar] [CrossRef]
  26. Deb, K.; Pratap, A.; Agarwal, S.; Meyarivan, T. A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE Trans. Evol. Comput. 2002, 6, 182–197. [Google Scholar] [CrossRef]
  27. Curry, D.M.; Dagli, C.H. Computational complexity measures for many-objective optimization problems. Procedia Comput. Sci. 2014, 36, 185–191. [Google Scholar] [CrossRef]
  28. Graham, R.L. An efficient algorith for determining the convex hull of a finite planar set. Inf. Process. Lett. 1972, 1, 132–133. [Google Scholar] [CrossRef]
  29. Beard, C.; Stallings, W. Wireless Communication Networks and System, 5th ed.; Pearson Education: London, UK, 2016; ISBN 1-292-1-10871-1. [Google Scholar]
  30. Goel, T.; Stander, N. A study of the convergence characteristics of multiobjective evolutionary algorithms. In Proceedings of the 13th AIAA/ISSMO Multidisciplinary Analysis Optimization Conference, Fort Worth, TX, USA, 13–15 September 2010; p. 9233. [Google Scholar]
Figure 1. System model overview.
Figure 1. System model overview.
Sensors 18 04387 g001
Figure 2. Convex hull formed by the GNs.
Figure 2. Convex hull formed by the GNs.
Sensors 18 04387 g002
Figure 3. Individual.
Figure 3. Individual.
Sensors 18 04387 g003
Figure 4. Crossover procedure.
Figure 4. Crossover procedure.
Sensors 18 04387 g004
Figure 5. UAV removal and reallocation procedures during mutation.
Figure 5. UAV removal and reallocation procedures during mutation.
Sensors 18 04387 g005
Figure 6. Ratio of new solutions.
Figure 6. Ratio of new solutions.
Sensors 18 04387 g006
Figure 7. Trade-off between the number of UAVs and the degree of dissatisfaction of the GNs.
Figure 7. Trade-off between the number of UAVs and the degree of dissatisfaction of the GNs.
Sensors 18 04387 g007aSensors 18 04387 g007b
Table 1. Main characteristics of the related work on UAV placement optimization.
Table 1. Main characteristics of the related work on UAV placement optimization.
ReferenceNo. of UAVsA2G Propag.ModelAntenna TypeEnvironmentA2A Communication
[14]MultipleLoS, NLoS-UrbanNo
[15,16,17]MultipleLoS, NLoSIsotropicUrbanNo
[18]SingleLoS, NLoS-SuburbanNo
[19]MultipleLoS, NLoSDirectionalUrbanNo
[20]SingleLoS, NLoS-UrbanNo
Table 2. Maximum achievable distance of each transmission mode based on the minimum sensitivity of the receiver antenna.
Table 2. Maximum achievable distance of each transmission mode based on the minimum sensitivity of the receiver antenna.
Data Rate (Mbits/s)Min. Sensitivity (dBm) D i (m)
Table 3. Parameters in each scenario.
Table 3. Parameters in each scenario.
Transmit Power ( P t )23 dBm
Antenna modelOmni-directional
Propagation modelLog-distance
Area A , ( X m a x × Y m a x )5000 m × 5000 m
No. of GNs100
α 2.2
d 0 1 m
c 3 × 10 8 m/s
f 2.412 × 10 9 H z
P r ( d 0 ) −47 dBm
μ [0.15, 0.30, 0.45]
D 892.24 m
Table 4. NSGA-II setup parameters.
Table 4. NSGA-II setup parameters.
NSGA-II Population Size80
NSGA-II p c 0.9
NSGA-II p m 0.6
Table 5. Number of generations achieved for cut-off τ = 0.05 for each μ .
Table 5. Number of generations achieved for cut-off τ = 0.05 for each μ .
μ = 0.15 μ = 0.30 μ = 0.45
# of generations330240180
Table 6. Maximum and minimum No. of UAVs for each scenario.
Table 6. Maximum and minimum No. of UAVs for each scenario.
Max. UAVsDegree.Dissat(%)Min. UAVDegree. Dissat (%)
μ = 0.15 3855.553483.33
μ = 0.30 4355.553588.88
μ = 0.45 5633.334387.50

Share and Cite

MDPI and ACS Style

Sabino, S.; Horta, N.; Grilo, A. Centralized Unmanned Aerial Vehicle Mesh Network Placement Scheme: A Multi-Objective Evolutionary Algorithm Approach. Sensors 2018, 18, 4387.

AMA Style

Sabino S, Horta N, Grilo A. Centralized Unmanned Aerial Vehicle Mesh Network Placement Scheme: A Multi-Objective Evolutionary Algorithm Approach. Sensors. 2018; 18(12):4387.

Chicago/Turabian Style

Sabino, Sérgio, Nuno Horta, and António Grilo. 2018. "Centralized Unmanned Aerial Vehicle Mesh Network Placement Scheme: A Multi-Objective Evolutionary Algorithm Approach" Sensors 18, no. 12: 4387.

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop