 Research
 Open Access
UAV positioning for throughput maximization
 Shams ur Rahman^{1} and
 YouZe Cho^{1}Email author
https://doi.org/10.1186/s1363801810380
© The Author(s) 2018
 Received: 4 July 2017
 Accepted: 19 January 2018
 Published: 5 February 2018
Abstract
The throughput of a communication system depends on the offered traffic load and the available capacity to support that load. When an unmanned aerial verhicle (UAV) is responsible for providing the communication service to users within its transmission range, the position of the UAV determines how much capacity each user gets. The closer the UAV to a user, the greater the capacity that the user gets. For a given set of user traffic demands and user locations, it is possible to maximize the total throughput by optimally positioning the UAV. This paper presents two methods, a heuristic method and an approximation algorithm, for determining the UAV position that maximizes the overall system throughput. This paper also considers a related problem of keeping all users within the transmission range while determining the UAV position that maximizes throughput. The proposed schemes were evaluated with extensive simulations using MATLAB and the ns2 simulator. The results show that significant throughput enhancement is possible by optimally positioning the UAV when user positions are unevenly distributed and/or data rate demands are widely spread.
Keywords
 Throughput
 Maximization
 Optimal
 UAV
 Positioning
 Transmission range
1 Introduction
Recently, unmanned aerial vehicles (UAVs) have attracted increasing research and commercial interest [1]. In particular, smallscale UAVs are being considered for a wide range of applications such as surveillance [2], search and rescue [3], forest fire monitoring [4], radiation monitoring [5], and sports [6]. Meanwhile, advancements in wireless and mobile communication technologies have changed all aspects of our lives. The demand for more bandwidth and the ability to communicate anytime and anywhere is increasing. Although the traditional infrastructurebased communication systems (such as cell towerbased LTE and access pointbased WiFi) have expanded to every corner in most countries, their lack of mobility hinders their adaptation to dynamic environments. Furthermore, their high cost and lengthy installation procedures make them unsuitable for deployment in remote locations and emergency scenarios. Therefore, nontraditional methods, such as project loon [7] and Facebook drone project [8], have emerged. For more dynamic and ad hoc scenarios, smallscale UAVs are attractive for their maneuverability, ease of deployment, hovering ability, and low cost. Smallscale UAVs are being considered to function as wireless relays to enhance the performance of cellular networks [9, 10] and satellite communication systems [11]. Their ease of deployment and low cost makes UAVbased communication systems attractive for mobile crowds (handling site outage and overload conditions in cellular networks) [10, 12] and emergency scenarios, such as natural or manmade disasters [13, 14].
Positioning of UAVs affects various network performance metrics, such as throughput, coverage, connectivity, and revenue. BorYaliniz and Yanikomeroglu [15] examined the positioning of drone base stations (BSs) for coverage and revenue maximization. Rasario et al. [16] proposed a mechanism for the placement of UAV relays to support the transmission of highquality live videos. Zhan et al. [17] considered a communication system using a UAV as a relay between groundbased terminals and network BSs. They proposed an algorithm for the performance optimization of the groundtorelay link by controlling the heading angle of the UAV. Dixon and Frew [18] proposed a mobility control algorithm for optimally positioning a chain of UAVs acting as communication relays to achieve endtoend communication. Guo et al. [10] derived a closedform expression for determining the optimal locations for the relays. Although in [10], the optimal locations for UAVs were also discussed, the reported study was fundamentally different from our work. In our work, the UAV position is determined based on the traffic demands and positions of the users, whereas the study in [10] was concerned with obtaining the optimal relay position with respect to other relays. Furthermore, [10] is focused on theoretical analyses, whereas our work is focused on algorithms. Kalantari et al. [19] investigated the threedimensional (3D) placement of drone BSs in 5G wireless networks constrained by the capacity of the backhaul link. Their objective was to maximize the number of served users and their total rate. In contrast with our work, the model in [19] considered only the physical layer characteristics. In our work, we consider both the physical (PHY) and media access control (MAC) layer characteristics to determine the UAV position that maximizes the throughput.
In this paper, we address the issue of optimally positioning a single UAV with respect to its associated users to maximize throughput. Our proposed solutions can be used in scenarios where UAVs function as singlehop communication relays. Such scenarios arise when the coverage extension of cellular communication is required. Similarly, such scenarios can arise in postdisaster communication systems. Moreover, the proposed solutions can be adapted for use in centralized multihop communication systems (e.g., softwaredefined networkingbased systems) by considering not only the UAVtouser communication but also the UAVtoUAV communication.

We provide a mathematical formulation of the problem: to maximize throughput, considering the characteristics of the PHY and MAC layers, by optimally positioning a UAV based on the data rate demands and positions of its associated users.

We propose a heuristic method and an approximation algorithm for determining the UAV position that maximizes throughput.

This work also introduces a simple and computationally efficient method for keeping all associated users within the transmission range of the UAV while determining a UAV position that maximizes throughput.
We performed extensive simulations using MATLAB and the ns2 simulator to evaluate the performance of the proposed schemes for various levels of unevenness in user position distribution. Results show that when user positions are more nonuniformly distributed around the UAV, the potential for throughput maximization is high. Furthermore, data rate demands with various ranges of uniform distribution were generated and evaluated. Results show that when data demands are widely spread, the potential for throughput maximization is high. Moreover, results clearly demonstrate that the approximation algorithm achieves considerably more improvement in throughput as compared to the heuristic method.
The rest of the paper is organized as follows. Section 2 illustrates the context for our idea of throughput maximization and describes a formal formulation of the problem. The heuristic method for throughput maximization is described in Section 3. The approximation algorithm is discussed in Section 4. Section 5 presents the simulation results. Section 6 discusses some associated issues. Finally, Section 7 presents the conclusions and discusses future work.
2 Background and problem formulation
This section first illustrates the context for our idea of throughput maximization and for the proposed schemes and then describes a formal formulation of the problem.
2.1 Background
2.1.1 Effect of transmitter/receiver distance on physical data rate
2.1.2 Throughput capacity at the MAC layer and above
Let \(C_{j}^{\text {phy}}\) denote the physical data rate for user j and C_{ j } denote the throughput capacity for j at the MAC layer. In practice, C_{ j } is less than \(C_{j}^{\text {phy}}\) because of the header and protocol overheads. However, it is obvious that higher physical data rates produce higher throughput at MAC layer (layer 2) and above. For example, with IEEE802.11a, the maximum throughput at layer 2 mainly depends on the frame size and the physical rate [21].
Equation (2) implies that no more than one user can use the channel at a time, which effectively eliminates the interference between the users in S. The time fraction, t_{ j }, is referred to as the airtime of user j. It is important that each user gets a fair share of airtime; otherwise, the system cannot achieve its full throughput potential. This is particularly the case for a multirate IEEE802.11 network. The DCF of IEEE802.11 suffers from the rate anomaly problem, wherein the stations transmitting at a slower rate get more airtime as compared with stations transmitting at higher rates [22]. This results in throughput degradation for the faster transmitting stations. In our approximation algorithm, users are allocated airtime according to the maxmin fair allocation policy.
2.1.3 Throughput depends on the offered load and the effective capacity
where S is the set of users communicating with the UAV.
2.1.4 Keeping all associated users within the transmission range
It is important to ensure that all users remain inside the transmission range, TxR, of the UAV while positioning it for throughput maximization. Therefore, the UAV cannot be allowed to move to any position. Thus, the UAV should be assigned a position in a certain region such that it can keep all the users within its transmission range. Let us call this region the containing region. The containing region is defined by the intersection of the circles centered at the positions of the users, with each circle having radius TxR. Kratky [23] showed that the intersection region of n circles having the same radii can be derived from the intersection region of fewer circles; however, they did not provide any algorithm. Librino et al. [24] proposed an algorithm for computing the intersection of circles of arbitrary radii, but their algorithm is computationally expensive and, therefore, not suitable for our proposed application. Therefore, we propose a simple and computationally efficient method for approximating the containing region.
 1.
Determine the smallest enclosing circle for the user positions, as shown in Fig. 2. Its center is denoted by c_{ s e c } and its radius by R_{sec}. The smallest enclosing circle for a set of points is a circle with the smallest radius that encloses all the points [25].
 2.
Using information on the smallest enclosing circle, compute the containing circle. Its center is c_{ c o n t }=c_{ s e c } and radius is R_{cont}=TxR − R_{sec}. As long as the UAV remains inside the containing circle, no users will be outside its transmission range.
Because the containing region is a convex polygon bounded by circular arcs, the containing circle provides a reasonable approximation for the objective of our application.
2.2 Problem formulation
The objective is to determine a UAV position p∗∈ContainingCircle such that τ(p∗)≥τ(p),∀p∈ContainingCircle.
Our optimization problem can be mathematically formulated as follows.
Equation (9a) is the objective function, which implies that total throughput needs to be maximized by finding an optimal UAV position. Equation (9b) ensures that no more than one user transmits at a time. Equation (9c) ensures that the airtime allocated to a user is not more than the user needs. Equation (9d) ensures the maxmin fairness of the airtime allocation among the users. Equation (9e) enforces that the UAV should remain inside the containing circle while finding the optimal position. Equation (9f) computes the distance between each user and the UAV. Equation (9g) shows that the throughput capacity is a function of the transmit power, distance between a user and the UAV, and interference experienced by the user. The throughput capacity also depends on the radio technology used. In Section 4.2.1, we will describe how the throughput capacity can be computed for IEEE802.11a.
2.3 A simple example
3 Heuristic method for determining UAV position
Here, w_{ j } is the weight assigned to user j and p_{ j } is the position of user j. This heuristic utilizes the user’s data rate demand to compute the weight for that user.
3.1 What is the effect of the weights?
Each user tries to pull the desired UAV position towards itself according to its relative weight value. The greater the relative weight value, the closer the desired UAV position to it.
3.2 Computing weights
The data rate of a link depends on the radio propagation model. The Shannon theorem gives the upper bound on the maximum data of a link. The radio propagation models and the Shannon theorem illustrate that data rate of a link is not linearly related to transmitter/receiver distance. Therefore, the computation of weights should capture the characteristics of the propagation model and the radio technology used. Here, we derive a mathematical formula for computing these weights. First, we derive an expression for computing the weights without considering the interference power. We subsequently extend that expression to incorporate the interference power.
The parameter β acts as a correction factor because the actual rate achieved by a practical system is less than the Shannon capacity. Therefore, it can be used to capture relevant characteristics of the radio technology used and the protocol overhead.
Therefore, using Eq. (16), the weight for each user can be computed and then Eq. (10) can be used to compute the desired UAV position. When P_{ t }, G_{ t }, G_{ r }, and λ are similar for all users, then Eq. (16) is simplified to
where I_{ j } is the interference experienced by j and Rate_{ j,d } is the data rate demand of j in the downlink direction. The overall weight, w_{ j }, is w_{ j }=w_{ j,u }+w_{ j,d }.
It is worth mentioning here that, in this paper, we used the largescale path loss model to derive equations for computing weights; however, using the same procedure, such equations can be derived for other channel models.
3.2.1 Implementation of the heuristic method
Procedure 1 shows the implementation of the heuristic method. It takes as input the set of users, set of positions of users, set of data rate demand of users, and set interference levels experienced by each user and the UAV. Lines 2 and 3 initialize variables. Lines 4 to 9 deal with the case when there is no interference from outside sources, which is indicated by I=∅. Lines 5 to 9 loop over the set of users. Line 6 computes the weight for each user. Line 7 updates the unnormalized UAV position and line 8 updates the sum of weights. Lines 10 to 18 deals with the case when there is interference from outside sources. Line 11 to 17 loop over the set of users. Line 12 to 14 compute the weight for each user. Line 14 updates the unnormalized UAV position, and line 17 updates the sum of weights. Line 19 divides the unnormalized UAV position by the sum of weights to obtain the desired UAV position p_{ u }. The computational complexity of this heuristic is linear in the number of users. Specifically, it is O(S), where S is the number of users.
3.2.2 A simple example using the heuristic method
3.2.3 Ensuring that all associated users remain inside the transmission range
 1.
Based on user traffic demands and user positions, compute the desired UAV position, indicated by p_{ d e s i r e d }.
 2.
The desired UAV position p_{ d e s i r e d } is outside the containing circle (as shown in Fig. 5). Some users (indicated by the small filled circles) are outside the Tx range. Therefore, we need to adjust the desired position so that all users are inside the Tx range of the UAV.
 3.
The adjusted desired position p^{′}_{ d e s i r e d } lies at the intersection of the containing circle and the line segment c_{ c o n t }p_{ d e s i r e d } (that is, the line segment joining c_{ c o n t } and p_{ d e s i r e d }.
 4.
When the UAV is moved to p^{′}_{ d e s i r e d }, all users will be within the Tx range. Therefore, a better throughput can be achieved while keeping all users in the transmission range of the UAV.
4 Approximation algorithm
The optimization problem defined in Eq. (9) is a nonconvex optimization problem because the objective function defined in Eq. (9a) can have local maxima (equivalently, the equivalent objective function, \(\underset {\mathbf {p}_{\mathbf {u}}}{\text {minimize}} \sum _{j \in S} t_{j}C_{j}\), can have local minima) when the number of users is more than one. The nonconvexity can cause the solver to produce a suboptimal (locally optimal) solution. Moreover, it can be computationally expensive to solve with general solvers. Therefore, in this section, we present an approximation algorithm for computing a UAV position that maximizes throughput. This algorithm estimates throughput at various positions inside the containing circle and chooses the position that has the maximum estimated throughput.
 1.
Define a grid of points (candidate positions for the UAV) inside the containing circle.
 2.
Estimate the total throughput at each grid point.
 3.
Choose the grid point with the maximum estimated throughput as the desired UAV position.
4.1 A grid of points inside the containing circle
As discussed in Section 2.1.4, as long as the UAV remains inside the containing circle, all its associated users will remain within its transmission range. By estimating throughput at various points inside the containing circle, it is possible to find a point that is approximately close to the point that produces the maximum throughput.
4.2 Estimating throughput at a grid point
As discussed in Section 2.1.3, the throughput of a user depends on the user data rate demand and the available throughput capacity. The total throughput is obtained by adding the throughput of all users. Therefore, to estimate the total throughput at a grid point (as a UAV position), we need to estimate the throughput for each user and then compute its total.
4.2.1 Estimating throughput capacity, C _{ j }, for each user at a grid point
To estimate the throughput for users at a grid point, we need to estimate the physical data rate, \(C^{\text {phy}}_{j}\), for each user j∈S. Based on \(C^{\text {phy}}_{j}\), throughput capacity at MAC layer, C_{ j }, can be determined for each user.
CBR packet size and MAC capacity for IEEE802.11a physical rates
Physical rate \(C_{j}^{\text {phy}}\) (Mbps)  CBR packet size b  MAC capacity C_{ j } (Mbps) 

54  2264  33.27 
48  2008  29.59 
36  1496  22.14 
24  984  14.14 
18  728  10.42 
12  472  6.71 
9  344  4.85 
6  216  3.56 
4.2.2 Estimating throughput based on C _{ j } and Rate _{ j }
In Section 4.2.1, we saw how to compute throughput capacity C_{ j } for each user. We will use these throughput capacities and data rate demands Rate_{ j } to estimate throughput for each user, which can then be used to compute total throughput at a grid point.
The throughput achievable by an individual user j∈S depends on the effective throughput capacity available to that user. The effective throughput capacity, \(C_{j}^{\text {eff}} = t_{j}C_{j}\), for a user j∈S depends on the the airtime, t_{ j }, and C_{ j }. The airtime of a user depends on the total number of users S, and their data rate demands Rate_{ j }, j∈S. In our algorithm, users are allotted airtime using maxmin fairness. Airtime fairness means that each user gets to use the wireless channel for approximately the same duration as every other user. However, if some users, due to lower data rate demand, do not fully use the channel for their share of time, other users with higher data rate demands may utilize that residue time, thereby increasing their effective throughput capacity.
Procedure 3 first computes the maximum throughput achievable by each user and then the total throughput. It takes as input the set of users S, set of their data rate demands Rates, and set of their throughput capacities C. Recall that C was obtained using Procedure 2. Line 2 makes a copy, S^{′}, of the set of users to work with. Line 3 initializes the variable TimeFractionAvailable to 1 to ensure that Eq. (2) is not violated while allocating the airtime to the users. Line 4 initializes the total throughput to zero. Lines 5 to 7 initialize the airtime for each user to zero. Lines 8 to 22 compute the airtime for each user based on their data rate demands while ensuring maxmin fairness. Users are allocated airtime in small increments of ≤TimeFractionAvailable/NoOfContendingUsers. The loop continues as long as there are users whose demands have not been satisfied (S^{′}≠∅), and there is still some free airtime available (TimeFractionAvailable>0). Line 9 determines the number of users contending for the available airtime. Line 10 computes the maximum airtime a user can receive in the current iteration of the while loop. Lines 11 to 21 increment the airtime of each contending user (j∈S^{′}). Line 12 checks if the current airtime increment will satisfy the data rate demand of the user; lines 13 to 16 deal with the case when user’s demand is satisfied, whereas lines 17 to 20 deal with the case when it is not satisfied. For the case when the demand is satisfied, line 13 computes the exact airtime increment the user needs. Line 14 updates the airtime of the user (sufficient for its data rate demand). Line 15 decrements the TimeFractionAvailable by the amount allocated to the user in the current iteration. Line 16 removes the user from the set of contending users because its demand has been satisfied. For the case when the demand is not satisfied, line 18 increments the airtime of the user by an amount no less than any other user. Line 19 decrements the TimeFractionAvailable accordingly. Upon termination of the while loop, all the users have been allocated airtime in a maxmin fair manner. Lines 23 to 25 compute the total throughput by summing the throughput of all users. Note that the airtime allocated to each user was not more than the user needed (t_{ j }C_{ j }≤Rate_{ j }); therefore, line 24 treats the effective capacity, \(\left (C_{j}^{eff}=t_{j}C_{j}\right)\), as the throughput for user j. Line 26 returns the total throughput.
4.3 Finding the grid point with maximum estimated throughput
In Section 4.2, we described how to estimate throughput at a given grid point. To determine the grid point with the maximum estimated throughput, Procedure 4 iterates over all the grid points inside the containing circle. The procedure takes as input the set of users and their positions and data rate demands, channel model, transmit power, set of interference levels, and set of grid points.
Lines 2 and 3 initialize the variables τ_{max} (maximum throughput value) and p_{ m a x } (maximum throughput position). Lines 4 to 11 loop over the grid points to determine the point with the maximum estimated throughput. Line 5 calls Procedure 2 to compute the throughput capacity for each user at a grid point. Line 6 calls Procedure 3 to estimate the total throughput at a grid point. Lines 7 checks whether the throughput at the current grid point is more than the current maximum; if it is, then line 8 updates the maximum throughput value and lines 9 records the current grid point as the maximum throughput position. At the termination of the loop, the point with estimated maximum throughput, p_{ m a x }, has been determined.
4.4 Computational complexity of the approximation algorithm
Let N_{ gp } represent the number of grid points for the approximation algorithm. Procedure 4 makes one pass over all the grid points. For each grid point, it makes one call to Procedure 2 and one call to Procedure 3. The computational complexity of Procedure 2 is O(S) and that of Procedure 3 is O(S^{2}). Therefore, the computational complexity of Procedure 4, that is the approximation algorithm, is O(N_{ gp }S^{2}). The value of N_{ gp } depends on the grid resolution; the finer the grid resolution, the greater the value of N_{ gp }. Halving the distance between grid points increases the value of N_{ gp } quadratically.
5 Simulation results
Extensive simulations were carried out for performance evaluation using MATLAB and the ns2 simulator. The performance was evaluated for various levels of unevenness in user position distribution. Similarly, uniformly distributed traffic demands with various ranges were generated, and the performance of the proposed schemes was evaluated.
5.1 Simulation setup
At the application layer, constant bit rate (CBR) traffic was generated. Packet size was adjusted according to the physical rate to ensure airtime fairness. IEEE802.11a was used as the radio technology, and because this a multirate network, the physical data rate for each user was selected based on the SINR and received signal power according to Table 1. In our simulations, we assumed there were no sources of interference outside the network. With DumbAgent as routing protocol, we found that the frame size at MAC layer was 40 bytes larger than the CBR packet size. Therefore, to achieve airtime fairness, we used the CBR packet with different rates as shown in Table 2. Given that the maximum MAC Service Data Unit (MSDU) size for IEEE802.11a is 2304 bytes, the maximum CBR packet size was chosen, so the packet size does not exceed the MSDU after the header overhead is added. Because in different environments (urban, suburban, and rural) different channel models are applicable and, in this work, we do not focus on any particular environment, we used Friis freespace propagation model owing to its simplicity. The transmission range was kept at 250 m, so when the UAV hovers at the height of 20 m, the transmission radius in the user plane is about 249 m. The values for MAC capacity against each physical rate in Table 2 were obtained experimentally using ns2. Initially, the UAV is positioned at coordinates (250,250,20) m. User positions were generated inside a circle of radius 249 m and centered at (250,250,0). For the heuristic method, β=11 was used, which was experimentally determined.
5.2 Ensuring airtime fairness
In a multirate network, IEEE802.11 DCF suffers from a phenomenon called rate anomaly [22]. In rate anomaly, for a fixed packet size, stations transmitting at lower rates get more airtime (time to use wireless channel) than their peers transmitting at higher rates. As a result, faster stations are penalized as they are forced to wait longer for the slower station to complete their transmissions. For example, a packet (frame) of size 100 bytes takes about 15 μs for a transmission rate of 54 Mbps whereas the same packet takes 133 μs when transmitted at 6 Mbps; the slower user occupies the channel for a duration 9 times longer than the faster user. Various solutions have been proposed to achieve airtime fairness [27]. In our experiments, we achieve airtime fairness by adjusting the packet size according to the data rate.
5.3 Estimated total throughput for various UAV positions
5.4 Effect of user position distribution on throughput
5.5 Effect of data rate demand distribution on throughput
5.6 Running times of the approximation algorithm and the heuristic method
Running times in seconds for the approximation algorithm and the heuristic method
No. of users  Approximation algorithm  Heuristic  

No. of grid points  
500  1000  2000  5000  10,000  
20  0.026387  0.051593  0.101761  0.307311  0.624166  0.000281 
40  0.038989  0.090803  0.165602  0.398023  0.860881  0.000305 
60  0.051421  0.101151  0.211755  0.542757  1.119988  0.00033 
80  0.064683  0.123208  0.254283  0.684712  1.369985  0.000358 
100  0.076188  0.153054  0.320479  0.773841  1.611464  0.00039 
6 Discussion
With the proposed scheme, the UAV’s position will be automatically adjusted according to the users’ mobility; therefore, if the users are moving in one particular direction, for example, when people are evacuated to higher ground in a disaster scenario, the UAV will follow.
The proposed schemes require the UAV to know the data rate demands of the users. To achieve this, a simple way is that users communicate their data rate demands to the UAV. Alternatively, the UAV can estimate the data rate demands of users.
Although many applications have roughly stable data rate requirements, such as audio video calls and video conferencing. However, when data traffic demands fluctuate quickly, the UAV might be required to change its position frequently. In these conditions, the average data rate demands over some interval of time can be used instead of instantaneous data rate demands.
The approximation algorithm can be adapted for providing quality of service (QoS), such as ensuring a certain level of throughput to some users or applications. Moreover, the approximation algorithm can also be adapted for bandwidth fairness.
7 Conclusions
This paper investigated throughput maximization via optimal UAV positioning. A heuristic method and an approximation algorithm were proposed to determine the UAV position based on user positions and their data rate demands. The heuristic method is computationally simple and has extremely low running time but does not guarantee the determination of the optimal UAV position. The approximation algorithm’s running time is relatively high as compared to the heuristic method but can determine a UAV position arbitrarily close to the optimal position. The computational complexity of the approximation algorithm is linearly dependent on the number of grid points and quadratically dependent on the number of users. For practical problems, the approximation algorithm can compute the desired UAV position in real time and can, therefore, be used on a UAV platform. Simulation results indicate that by moving the UAV to the position determined by the proposed schemes, higher improvement in throughput can be achieved when user positions are more unevenly distributed and vice versa. Similarly, when user data rate demands are more widely spread, higher improvement in throughput can be achieved by moving the UAV to the position determined by the proposed schemes. The approximation algorithm produces more improvement in throughput than the heuristic method.
The proposed schemes can be adapted for QoS provisioning. As a future work, we plan to simulate the performance of the approximation algorithm for various environments, such as urban, suburban, and rural. Moreover, we plan to adapt the approximation algorithm for QoS, such as smooth video streaming and low response time for interactive services.
Declarations
Acknowledgements
This research was supported in part by the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (2015R1D1A1A01059623) and by the NextGeneration Information Computing Development Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science and ICT (no. NRF 2017M3C4A7083676, 2017M3C4A7066010).
Publishers Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Authors’ contributions
This research was conducted by SuR under the supervision of YZC. The manuscript was written by SuR under the supervision of YZC. The organization of the manuscript was suggested by YZC and he closely monitored the writing process for coherence, clarity, and consistency. All authors read and approved the final manuscript.
Competing interests
The authors declare that they have no competing interests.
Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Authors’ Affiliations
References
 G Cai, J Dias, L Seneviratne, A survey of smallscale unmanned aerial vehicles: recent advances and future development trends. Unmanned Syst.02(02), 175–199 (2014).View ArticleGoogle Scholar
 S Yahyanejad, D WischounigStrucl, M Quaritsch, B Rinner, in 7th IEEE International Conference on Advanced Video and Signal Based Surveillance. Incremental mosaicking of images from autonomous, smallscale uavs (IEEE, 2010), pp. 329–336.Google Scholar
 S Waharte, N Trigoni, Supporting search and rescue operations with UAVs. IEEE Comput. Soc, 142–147 (2010).Google Scholar
 L Merino, F Caballero, JR MartínezdeDios, I Maza, A Ollero, An unmanned aircraft system for automatic forest fire monitoring and measurement. J. Intell. Robot. Syst. 65(1), 533–548 (2012).View ArticleGoogle Scholar
 PG Martin, S Kwong, NT Smith, Y Yamashiki, OD Payton, FS RussellPavier, JS Fardoulis, DA Richards, TB Scott, 3d unmanned aerial vehicle radiation mapping for assessing contaminant distribution and mobility. Int. J. Appl. Earth Observ. Geoinform.52:, 12–19 (2016).View ArticleGoogle Scholar
 E Natalizio, R Surace, V Loscri, F Guerriero, T Melodia, Filming sport events with mobile camera drones: mathematical modeling and algorithms (2012). https://hal.inria.fr/hal00801126.
 Loon Project  Baloonpowered Internet for everyone. https://x.company/loon/. Accessed 24 April 2017.
 Flying Aquila: Early lessons from the first fullscale test flight and the path ahead. https://code.facebook.com/posts/268598690180189/flyingaquilaearlylessonsfromthefirstfullscaletestflightandthepathahead/. Accessed 24 April 2017.
 W Guo, C Devine, S Wang, in 9th International Symposium on Communication Systems, Networks and Digital Sign (CSNDSP). Performance analysis of micro unmanned airborne communication relays for cellular networks (IEEE, 2014), pp. 658–663.Google Scholar
 W Guo, TO Farrell, Relay deployment in cellular networks: planning and optimization. IEEE J. Sel. Areas Commun. 31(8), 1597–1606 (2013).View ArticleGoogle Scholar
 T Akiyoshi, E Okamoto, H Tsuji, A Miura, Performance improvement of satellite/terrestrial integrated mobile communication system using unmanned aerial vehicle cooperative communications, 417–422 (2017). https://doi.org/10.1109/ICOIN.2017.7899525.
 S Rohde, C Wietfeld, in IEEE Vehicular Technology Conference (VTC Fall). Interference aware positioning of aerial relays for cell overload and outage compensation (IEEE, 2012), pp. 1–5.Google Scholar
 G Tuna, B Nefzi, G Conte, Unmanned aerial vehicleaided communications system for disaster recovery. J. Netw. Comput. Appl. 41:, 27–36 (2014).View ArticleGoogle Scholar
 A Valcarce, T Rasheed, KM Gomez, K Sithamparanathan, L Reynaud, R Hermenier, A Munari, M Mohorcic, M Smolnikar, I Bucaille, Airborne base stations for emergency and temporary events, vol. abs/1307.3158, (2013). http://arxiv.org/abs/1307.3158.Google Scholar
 I BorYaliniz, H Yanikomeroglu, The new frontier in ran heterogeneity: multitier dronecells. Comm. Mag.54(11), 48–55 (2016). https://doi.org/10.1109/MCOM.2016.1600178CM.View ArticleGoogle Scholar
 D Rosário, JA Filho, D do Rosário, A Santos, M Gerla, in 16th Annual Mediterranean Ad Hoc Networking Workshop, MedHocNet 2017, Budva, Montenegro, June 2830, 2017. A relay placement mechanism based on UAV mobility for satisfactory video transmissions (IEEE, Budva, 2017), pp. 1–8. https://doi.org/10.1109/MedHocNet.2017.8001638.Google Scholar
 P Zhan, K Yu, AL Swindlehurst, Wireless relay communications with unmanned aerial vehicles: performance and optimization. IEEE Trans. Aerosp. Electron. Syst. 47(3), 2068–2085 (2011).View ArticleGoogle Scholar
 C Dixon, EW Frew, Optimizing cascaded chains of unmanned aircraft acting as communication relays. IEEE J. Sel. Areas Commun.30(5), 883–898 (2012). https://doi.org/10.1109/JSAC.2012.120605.View ArticleGoogle Scholar
 E Kalantari, MZ Shakir, H Yanikomeroglu, A Yongacoglu, in 2017 IEEE International Conference on Communications Workshops (ICC Workshops). Backhaulaware robust 3d drone placement in 5g+ wireless networks, (2017), pp. 109–114. https://doi.org/10.1109/ICCW.2017.7962642.
 J Yee, H PezeshkiEsfahani, Understanding wireless LAN performance tradeoffs (EE Times, 2002). http://www.eetimes.com/document.asp?doc_id=1277804. Accessed 26 Apr 2017.
 J Jangeun, P Peddabachagari, M Sichitiu, in Second IEEE International Symposium on Network Computing and Applications, 2003. Theoretical maximum throughput of ieee 802.11 and its applications (NCA, Cambridge, 2003), pp. 249–256.View ArticleGoogle Scholar
 M Heusse, F Rousseau, G BergerSabbatel, A Duda, in IEEE INFOCOM 2003. Twentysecond Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428). Performance anomaly of 802.11b. vol. 2 (IEEE, 2003), pp. 836–8432.Google Scholar
 KW Kratky, The area of intersection of n equal circular disks. J. Phys. A Math. General. 11(6), 1017 (1978).MathSciNetView ArticleMATHGoogle Scholar
 F Librino, M Levorato, M Zorzi, in 7th International Symposium on Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks. An algorithmic solution for computing circle intersection areas and its applications to wireless communications, (2012), pp. 1–10. https://doi.org/10.1109/WIOPT.2009.5291627.
 E Welzl, Smallest enclosing disks (balls and ellipsoids). (H Maurer, ed.) (Springer, Berlin, Heidelberg, 1991). https://doi.org/10.1007/BFb0038202.Google Scholar
 IEEE Standard for Telecommunications and Information Exchange Between Systems  LAN/MAN Specific Requirements  Part 11: Wireless Medium Access Control (MAC) and physical layer (PHY) specifications: High Speed Physical Layer in the 5 GHz band. IEEE Std 802.11a1999, 1–102 (1999). https://doi.org/10.1109/IEEESTD.1999.90606.
 T Joshi, A Mukherjee, Y Yoo, DP Agrawal, Airtime fairness for ieee 802.11 multirate networks. IEEE Trans. Mobile Comput. 7(4), 513–527 (2008).View ArticleGoogle Scholar
 E Nan, C Xiaoli, G Weisi, Z Jie, in 8th International Conference on Communications and Networking in China (CHINACOM). User data traffic analysis for 3g cellular networks (IEEE, 2013), pp. 468–472.Google Scholar