1

Mobile Edge Computing via a UAV-Mounted
Cloudlet: Optimization of Bit Allocation and Path
Planning
arXiv:1609.05362v3 [cs.NI] 18 May 2017

Seongah Jeong, Osvaldo Simeone, and Joonhyuk Kang

Abstract—Unmanned Aerial Vehicles (UAVs) have been recently considered as means to provide enhanced coverage or
relaying services to mobile users (MUs) in wireless systems with
limited or no infrastructure. In this paper, a UAV-based mobile
cloud computing system is studied in which a moving UAV
is endowed with computing capabilities to offer computation
offloading opportunities to MUs with limited local processing capabilities. The system aims at minimizing the total mobile energy
consumption while satisfying quality of service requirements of
the offloaded mobile application. Offloading is enabled by uplink
and downlink communications between the mobile devices and
the UAV that take place by means of frequency division duplex
(FDD) via orthogonal or non-orthogonal multiple access (NOMA)
schemes. The problem of jointly optimizing the bit allocation for
uplink and downlink communication as well as for computing at
the UAV, along with the cloudlet’s trajectory under latency and
UAV’s energy budget constraints is formulated and addressed
by leveraging successive convex approximation (SCA) strategies.
Numerical results demonstrate the significant energy savings that
can be accrued by means of the proposed joint optimization
of bit allocation and cloudlet’s trajectory as compared to local
mobile execution as well as to partial optimization approaches
that design only the bit allocation or the cloudlet’s trajectory.
Index Terms—Mobile cloud computing, Unmanned aerial vehicles (UAVs), Communication, Computation, Successive convex
approximation (SCA).

I. I NTRODUCTION
The deployment of moving base stations or relays mounted
on unmanned aerial vehicles (UAVs) is a promising solution
to extend the coverage of a wireless system to areas in which
there is a limited available infrastructure of wireless access
points, such as in developing countries or rural environments,
as well as in disaster response, emergency relief and military
scenarios [1]–[7]. However, the limited coverage and mobility
of energy-constrained UAVs introduce new challenges for
the design of UAV-based wireless communications. As a
result, recent research activity has focused on the problems of
path planning and energy-aware deployment for UAV-based
systems [8]–[18], as we briefly review below.
S. Jeong is with the School of Engineering and Applied Sciences (SEAS),
Harvard University, 29 Oxford street, Cambridge, MA 02138, USA (e-mail:
sej293@g.harvard.edu).
O. Simeone is with the Department of Informatics, King’s College London, Strand, London WC2R 2LS, England, UK (e-mail: osvaldo.simeone@kcl.ac.uk).
J. Kang is with the Department of Electrical Engineering, Korea Advanced
Institute of Science and Technology (KAIST), 291, Daehak-ro, Yuseong-gu,
Daejeon 34141, Korea (e-mail: jhkang@ee.kaist.ac.kr).

A. State of the Art
In [8]–[11], a UAV-enabled mobile relaying system is
studied, where the role of the UAV is to act as a relay for
communication between wireless devices. In particular, the
problem of jointly optimizing the power allocation at source
and moving relay, as well as the relay’s trajectory, is tackled in
[8] with the aim of maximizing the throughput under mobility
constraints on the relay’s speed and terminal locations and
assuming a decode-store-and-forward scheme. To address the
problem, an iterative algorithm is proposed to alternatively
optimize the power allocation and relay’s trajectory. In [9],
the problem of efficient data delivery in sparse mobile ad hoc
networks is studied, where a set of moving relays between
pairs of sources and destinations is employed. Two types
of relaying schemes are developed in order to minimize the
message drop rate under energy constraints, whereby either
the nodes move to meet a given relay’s trajectory, or a relay
moves to meet static nodes. Both schemes are optimized in
terms of trajectory of either the nodes or the relay. A similar
scheme has also been introduced for sparse sensor networks
in [10].
The authors in [11] study the deployment of UAVs acting
as relays between ground terminals and a network base station
so as to provide uplink transmission coverage for ground-toUAV communication. The problem of optimizing the UAV
heading angle is tackled with the goal of maximizing the
sum-rate under individual minimal rate constraints. To this
end, the authors derive a closed-form expression approximate
for the average uplink data rate for each link. In [12], a
scheduling and resource allocation framework is developed
for energy-efficient machine-to-machine communications with
UAVs, where multiple UAVs provide uplink transmission to
collect the data from the heads of the clusters consisting of a
number of machine-type devices. The authors investigate the
minimum number of required UAVs to serve the cluster heads
and their dwelling time over each cluster head by using the
queue rate stability concept.
References [13], [14], instead, study the optimal deployment
of multiple UAVs acting as flying base stations in the downlink
scenario. The optimal altitude for a single UAV is addressed
with the aim of minimizing the required downlink transmit
power for covering a target area, and then the treatment is
extended to two UAVs with and without interference between
the UAVs in [13]. In contrast, in [14], the minimization of
the total required downlink transmit power from the UAVs is

2

tackled under minimum users’ rate requirements by iteratively
addressing the optimizations of the UAV’s locations and of the
boundaries of their coverage areas. The authors in [15] analyze
the downlink coverage and rate performance for static and
mobile UAV. For a static UAV, they derive coverage probability
and system sum-rate as a function of the UAV’s altitude and of
the number of users. For a mobile UAV, the minimum number
of stop points for the UAV required to completely cover the
area of interest is analyzed via disk covering problem. A
point-to-point communication link between the UAV and a
ground user is investigated in [16] with the goal of optimizing
the UAV’s trajectory under a UAV’s energy consumption
model that accounts for the impact of the UAV’s velocity and
acceleration.
Beside the communication scenarios reviewed above, other
optimization problems involving UAV path planning have been
studied. For instance, in [17], a scenario is investigated in
which a ground vehicle and an aerial vehicle move cooperatively to carry out intelligence, surveillance and reconnaissance
(ISR) missions. Path planning for the ground and aerial
vehicles is carried out via a branch-and-cut algorithm. As
another example, reference [18] tackles the problem of UAV
trajectory optimization for drone delivery of material goods by
minimizing the total energy cost under a delivery time limit
constraint, as well as by minimizing the overall delivery time
under a energy budget constraint. Sub-optimal solutions for
the problem of interest are presented via a simulated annealing
heuristic approach.
B. UAV as a Moving Cloudlet
As briefly reviewed above, most prior works on the deployment of UAVs in communication system assume their use
either as moving relays [8]–[11] or as flying base stations [12]–
[18]. It was instead noted in [4] that UAVs can also be used
as mobile cloud computing systems, in which a UAV-mounted
cloudlet [3]–[5] provides application offloading opportunities
to mobile users (MUs). UAVs can hence enable fog computing
[19] even in the absence of a working wireless infrastructure.
Specifically, MUs can offload computationally heavy tasks,
such as object recognition or augmented-reality applications,
to the cloudlet by means of uplink/downlink communications
with the UAV. Referring to Fig. 1 for an illustration, the
offloading procedure requires uplink transmission of input
data for the application to be run at the cloudlet from the
mobiles to the UAV, computing at the UAV-mounted cloudlet,
and downlink transmission of outcome of computing at the
cloudlet from the UAV to the mobiles. Among the possible
examples and applications, the use of the moving cloudlets
can for instance play an important role in disaster response,
emergency relief or military scenarios, as mobile devices with
limited processing capabilities can benefit from the cloudletaided execution of data analytics application for the assessment
of the status of victims, enemies, or hazardous terrain and
structures.
C. Main Contributions
In this paper, we focus on the scenario illustrated in Fig.
1 in which a moving UAV is deployed to offer offloading

Table I
L IST OF SYMBOLS
Parameter
K
Ik
Ck
Ok
T
N
pm
k
pcn )
p c (t) (p
p c1 )
p cI (p
pcN+1 )
p cF (p
H
v cn
vc
vmax
a cn
amax
∆
E
pcn )
g k,n (p
g0
Em
Ekm
c
Ek,n
d
EO,k,n

d
EN,k,n

c
EF,n
d
Lk,n

lk,n
fkm
fnc
B
N0
γkm
γc
M
g
κ
κ1
κ2

Definition
Number of mobile users (MUs)
Number of input information bits of MU k to be processed
Number of CPU cycles per input bit of MU k needed for
computing
Number of output bits produced by the execution of the
application per input bits of MU k
Latency constraint or deadline
Number of frames within T
Position of MU k
Position of UAV
Initial position of UAV projected onto xy-plane
Final position of UAV projected onto xy-plane
Altitude of the UAV
UAV’s velocity at the nth frame
UAV’s initial and final velocity constraint
UAV’s maximum speed
UAV’s acceleration at the nth frame
UAV’s maximum acceleration
Frame duration
UAV’s energy budget
Path loss between MU k and cloudlet at the nth frame
Received power at the reference distance d0 = 1 m for
a transmission power of 1 W
Total energy consumption in mobile execution
Energy consumption of MU k in mobile execution
Computation energy consumption at cloudlet for MU k
at the nth frame
Transmission energy consumption for communication between MU k and cloudlet at the nth frame in orthogonal
access (d = m for uplink, d = c for downlink)
Transmission energy consumption for communication
between MU k and cloudlet at the nth frame in nonorthogonal access (d = m for uplink, d = c for
downlink)
Flying energy consumption of the nth frame
Number of bits transmitted for communication between
MU k and cloudlet at the nth frame (d = m for uplink,
d = c for downlink)
Number of bits computed for application of MU k at
cloudlet in nth frame
CPU frequency of MU k
CPU frequency of cloudlet at the nth frame
Bandwidth
Noise spectrum density
Effective switched capacitance of MU k’s processor
Effective switched capacitance of cloudlet processor
UAV’s gross mass
Gravitational acceleration
Constant for Model 1 in (8) (κ = 0.5M ∆)
Constant for Model 2 in (29) (κ1 = 0.5ρCD0 Sr ∆ for
fixed-wing UAV and κ1 = 0.5ρCDf Sr ∆ for rotarywing UAV)
Constant for Model 2 in (29) (κ2
=
2M 2 g 2 ∆/(πe0 AR ρSr ) for fixed-wing UAV and
κ2 = ǫM 2 g 2 ∆/(2ρA) for rotary-wing UAV)

opportunities to mobile devices. We tackle the key design
problem of optimizing the bit allocation for communication
in uplink and downlink and for computing at the cloudlet,
as well as the UAV’s trajectory, with the goal of minimizing
the mobile energy consumption. For uplink and downlink
transmission, we assume frequency division duplex (FDD) and
either orthogonal or non-orthogonal multiple access (NOMA)
schemes. We note that the latter is a promising multiple access

3

8$90RXQWHG&ORXGOHW
࢖௖ ‫ ݐ‬ൌ ሺ‫ ݔ‬௖ ‫ ݐ‬ǡ ‫ ݕ‬௖ ‫ ݐ‬ǡ ‫ܪ‬ሻ
࢜

«
ୡ
࢖୬ିଵ

08ͳ

)UDPH݊ െ ͳ

08ʹ

ο

)UDPH݊
࢖୬ୡ

࢖ୡ୬ାଵ

οΤ‫ܭ‬

«

«

08݇
D 2UWKRJRQDODFFHVV

8/
‫ݖ‬

‫ݕ‬

08ͳ

'/
08݇
௠ ௠
࢖௠
௞ ൌ ሺ‫ݔ‬௞ ǡ ‫ݕ‬௞ ǡ Ͳሻ

08ͳ

ο

«

)UDPH݊ ൅ ͳ

08‫ ܭ‬െ ͳ

«
ୡ
࢖୬ାଶ

7LPH

08‫ܭ‬

08‫ܭ‬

E 1RQRUWKRJRQDO DFFHVV

08‫ܭ‬

Figure 2. Frame structure of the considered mobile cloud computing system:
(a) Orthogonal access, (b) Non-orthogonal access.

‫ݔ‬
Figure 1. Illustration of the considered mobile cloud computing system based
on a UAV-mounted cloudlet that provides application offloading opportunities
to MUs. The key design problem is the optimization of the bit allocation for
communication in uplink (UL) and downlink (DL) and computing, as well
as the cloudlet’s trajectory with the goal of minimizing the mobile energy
consumption.

technique for 5G networks which is currently being considered
due to its potentially superior spectral efficiency [20], [21].
The design problem is formulated for both orthogonal access
and non-orthogonal access under latency and UAV’s energy
budget constraints. The UAV’s energy budget includes the
energy consumption for communication and computing as well
as for flying. For the latter energy constraint, we consider
two different models, both of which are investigated in the
literature. The first model, adopted in [22]–[25], postulates the
flying energy to depend only on the UAV’s velocity, while the
second model accounts also for the impact of the acceleration
following [16], [26]–[28]. The resulting non-convex problem is
tackled by means of successive convex approximation (SCA)
[29], [30], which allows us to derive an efficient iterative
algorithm that is guaranteed to converge to a local minimum
of the original non-convex problem.
The rest of this paper is organized as follows. Section II
presents the system model including the energy consumption
models for communication, computation and flying. In Section
III and Section IV, we formulate and tackle the mentioned
joint optimization problems over the bit allocation and UAV’s
trajectory under the first UAV’s flying energy consumption
model for orthogonal access and NOMA, respectively. Then,
in Section V, the joint optimization problems are studied with
the second UAV’s flying energy consumption model. Finally,
numerical results are given in Section VI, and conclusions are
drawn in Section VII.
II. S YSTEM M ODEL
A. Set-Up
In this paper, we consider the mobile cloud computing
system illustrated in Fig. 1, which consists of K MUs and
a UAV-mounted cloudlet. We study the optimization of the
offloading process from the MUs to the moving cloudlet with
the goal of minimizing the total energy consumption of all

the MUs. To enable the offloading of a given application
for each MU k, with k ∈ K = {1, . . . , K}, the following
steps are necessary; (i) uplink transmission of the application
input data from the MU k to the UAV; (ii) execution of the
application by the UAV-mounted cloudlet; and (iii) downlink
transmission of the output of the application from the UAV
to MU k. We assume frequency division duplex (FDD) with
equal channel bandwidth B allocated for uplink and downlink.
Moreover, for uplink and downlink communications, two types
of access schemes are considered, namely orthogonal and nonorthogonal access. We note that, in 5G, the latter is typically
referred to as NOMA. Receivers at the MUs and cloudlet are
assumed to have no limitations on the resolution of their digital
front-ends. The application of the MU k ∈ K is characterized
by the number Ik of input information bits to be processed, the
number Ck of CPU cycles per input bit needed for computing,
and the number Ok of output bits produced per input bit by the
execution of the application. We assume that all applications
need to be computed within a time T .
A three-dimensional Cartesian coordinate system is adopted,
as shown in Fig. 1, whose coordinates are measured in meters.
We assume that all MUs are located at the xy-plane, e.g., on
m m
the ground, with MU k located at position p m
k = (xk , yk , 0),
for k ∈ K, while the UAV flies along a trajectory p c (t) =
(xc (t), y c (t), H) with a fixed altitude H, for 0 ≤ t ≤ T . In this
work, since the UAV flies horizontally at a constant altitude
H, we focus on the UAV’s trajectory projected onto the xyplane. Due to its launching and landing locations, flying paths
and operational capability, the initial and final location and
maximum speed of the UAV are assumed to be predetermined
as p cI = (xcI , yIc ), p cF = (xcF , yFc ), both with the altitude H,
and vmax , respectively.
As seen in Fig. 2, the time horizon T is divided into
N intervals each of duration ∆ seconds [3], [8], [16], i.e.,
T = N ∆, in which the UAV continuously communicates and
computes while flying. The frame duration ∆ is chosen to be
sufficiently small for the UAV’s location to be approximately
constant within each frame. Accordingly, the UAV’s trajectory
p c (t) can be characterized by the discrete-time UAV’s location
p cn = (xcn , ync ) with altitude H, for n ∈ N = {1, . . . , N },
where p c1 = p cI and p cN +1 = p cF . The trajectory {ppcn }n∈{2,...,N }

4

is subject to optimization. The quantity
pcn+1 − pcn
(1)
∆
represents the velocity vector in the nth frame. As mentioned,
we have the constraint on the maximum speed
v cn =

c
Lm
k,n bits in the uplink, or Lk,n in the downlink, between
the MU k and cloudlet, within the allocated slot ∆/K seconds at the nth frame, can be computed based on standard
information-theoretic arguments [34] as
!
Ld
k,n
N0 B∆/K
d
d
c
(6)
2 B∆/K − 1 ,
EO,k,n (Lk,n , p n ) =
gk,n (ppcn )

p cn+1 − p cn
≤ vmax .
(2)
∆
where we recall that gk,n (ppcn ) in (4) is the path loss between
Note that the final position should be assumed no later than the MU k and cloudlet at the nth frame, and d = m for uplink
after a time T from the initial time. As a result, we have the while d = c for downlink.
constraint
With non-orthogonal access, e.g., NOMA in 5G, since all
p cN +1 − p c1
the
MUs can simultaneously transmit and receive data within
≤ vmax ,
(3)
N∆
entire frame of duration ∆ in both uplink and downlink,
in order for a feasible trajectory from the UAV’s initial to final interference is caused by the undesired signals of other MUs
location to exist.
which are assumed to be treated as additive noise [31]. When
c
For orthogonal access, each nth frame, for n ∈ N , is Lm
k,n and Lk,n bits are transmitted in uplink and in downlink,
assumed to have K equally spaced time slots, each of which respectively, between the MU k and cloudlet experiencing a
has the duration of ∆/K seconds and is preallocated to one path loss gk,n (ppcn ) at the nth frame, the transmission energy
MU in both uplink and downlink. For non-orthogonal access, consumptions of uplink and downlink are calculated as [34]
all MUs simultaneously transmit and receive data within the
1
m
c
(N0 B∆
EN,k,n
(Lm
entire frame of ∆ seconds in uplink and downlink. In the
n , pn ) =
gk,n (ppcn )

latter case, we treat the interference from undesired signals

 Lm
K
X
as additive noise. This assumption is standard in the practical
k,n
c
m
m c 
B∆
− 1 (7a)
+
gk′ ,n (ppn )EN,k′ ,n (Ln , p n )
2
implementation of communication systems, as well as in the
k′ =1,k′ 6=k
communication and information theory literatures (see, e.g.,

N0 B∆
[31]). We recall that uplink and downlink do not interfere with and E c
c
c
(L
,
p
)
=
N,k,n
n n
gk,n (ppcn )
one another due to the assumption of FDD.

As in [3], [8], [16], we assume that the communication

 Lc
K
X
k,n
c
c
c 
channels between MUs and UAV are dominated by line-of(7b)
+
EN,k
2 B∆ − 1 ,
′ ,n (Ln , p n )
sight links. At the nth frame, the channel gain between the
k′ =1,k′ 6=k
MU k and cloudlet is accordingly given by [3], [8], [16]
respectively, where the sets of all the uplink and downlink
g0
transmission bits related to the nth frame are denoted as
gk,n (ppcn ) =
,
(4)
2
m 2
c
2
m
c
c
(xcn − xm
k ) + (yn − yk ) + H
Lm
n = {Lk,n }k∈K and Ln = {Lk,n }k∈K . Note that in the
where g0 represents the received power at the reference dis- non-orthogonal access, the transmission energies required for
tance d0 = 1 m for a transmission power of 1 W. An additive the applications of MU k ∈ K in both uplink and downlink
white Gaussian channel noise with zero mean and power depend on the transmission energies of the other MUs due to
spectral density N0 [dBm/Hz] is assumed. In the following, the interference.
Flying energy: As for the energy consumption at the UAV
we summarize the energy consumption model for computation
[32], [33], communication [3], [8], [16] and flying [22]–[25]. due to flying, we will consider two different models that have
As we will detail in the following sections, our goal is to been adopted in the literature. The first model considered in,
e.g., [22]–[25], postulates the flying energy at each frame n
minimize the mobile energy consumption.
to depend only on the velocity vector v cn as
kvv cn k =

2

c
(Model 1) EF,n
(vv cn ) = κ kvv cn k ,

B. Energy Consumption Model for Offloading
Computation energy: First, we review the energy consumption model for computation at the cloudlet [32], [33]. When
the CPU of the cloudlet is operated at the frequency f c [CPU
cycles/s], the energy consumption required for executing the
application of MU k over l input bits is given as
Ekc (l, f c ) = γ c Ck l(f c )2 ,

(5)

where γ c is the effective switched capacitance of the cloudlet
processor.
Communication energy: The energy consumption for communication at the mobile and at the UAV depends on whether
orthogonal access or non-orthogonal access are deployed. With
orthogonal access, the energy consumption for transmitting

(8)

where κ = 0.5M ∆ and M is the UAV’s mass, including its
payload. Note that only the kinetic energy is accounted for in
Model 1, due to the fact that constant-height flight entails no
change in the gravitational potential energy. The second model
c
assumes that the energy EF,n
depends also on the acceleration
vector (cf. (29)) according to [16], [26]–[28]. We will describe
and study this model in Section V.
C. Energy Consumption Model for Mobile Execution
For reference, we consider the total energy consumption of
the MUs if all applications are executed locally. In order to
guarantee that each MU k processes the Ik input bits within

5

T seconds, the CPU frequency fkm must be chosen as [32],
[33]
Ck Ik
,
(9)
fkm =
T

all MUs along with the cloudlet trajectory {ppcn }n∈{2,...,N } .
The corresponding design problem is formulated as follows:
minimize
c

pc
{Lm
k,n },{lk,n },{Lk,n },{p n }

which yields the total energy consumption of MUs of
Em ,

K
X

Ekm (Ik , fkm ) =

k=1

K
X
γ mC 3
k

k=1

k

T2

s.t.
Ik3 ,

(10)

K N
−2
X
X

where
is the effective switched capacitance of the MU k’s
processor.

FOR

O RTHOGONAL

n
X

lk,i+1 ≤

n
X

A. Problem Formulation
At the nth frame, for n ∈ N , we define the number of input
bits transmitted in the uplink from the MU k to cloudlet as
Lm
k,n , the number of bits computed for the application of the
MU k at the cloudlet as lk,n , and the number of bits transmitted
in the downlink from cloudlet to MU k as Lck,n . Also, we
denote the frequency at which the cloudlet CPU is operated
for the offloaded applications from MUs at the nth frame as
fnc . Along with the cloudlet position {ppcn }, these variables are
subject to optimization.
According to the definitions above, at every nth frame, the
selected by the UAV must be such that the
CPU frequency fncP
K
UAV can process k=1 lk,n bits from the applications of all
the MUs within the given frame as
fnc

=

PK

Ck lk,n
.
∆

k=1

(11)

This yields the computation energy required for offloading by
MU k at the nth frame as
c
Ek,n
(ln )

,

Ekc (ln , fnc )

γ c Ck lk,n
=
∆2

K
X

k′ =1

Ck′ lk′ ,n

!2

, (12)

where we have defined the total number of computing bits
at the nth frame as ln = {lk,n }k∈K . Our objective is
to minimize the total energy consumption at the MUs by
jointly optimizing the bit allocation {Lm
k,n }n∈{1,...,N −2},k∈K ,
{lk,n }n∈{2,...,N −1},k∈K and {Lck,n }n∈{3,...,N },k∈K for communication and computing needed to support offloading from

N
X

c
EF,n
(vv cn ) ≤ E

n=1
n
X

(13b)

Lm
k,i ,

i=1

Lck,i+2

i=1

In this section, we tackle the problem of minimizing the
total mobile energy consumption for offloading assuming
orthogonal access in uplink and downlink. Specifically, we
focus on the joint optimization of the bit allocation for uplink
and downlink data transmission and for cloudlet’s computing,
as well as of the cloudlet’s trajectory, under constraints on the
UAV’s energy budget and mobility constraints. We consider
the model (8) for the UAV flying model.

(13a)

k=1 n=1

k=1 n=1

i=1

III. O PTIMAL E NERGY C ONSUMPTION
ACCESS

m
c
EO,k,n
(Lm
k,n , p n )

c
c
Ek,n+1
(ln+1 ) + EO,k,n+2
(Lck,n+2 , p cn+2 )

+

γkm

K N
−2
X
X

N
−2
X

n=1
N
−2
X

n=1
N
−2
X

for k ∈ K and n = 1, . . . , N − 2
n
X
lk,i+1 ,
≤ Ok

(13c)

i=1

for k ∈ K and n = 1, . . . , N − 2

(13d)

Lm
k,n = Ik , for k ∈ K

(13e)

lk,n+1 = Ik , for k ∈ K

(13f)

Lck,n+2 = Ok Ik , for k ∈ K

(13g)

n=1
c
Lm
k,n , lk,n , Lk,n ≥ 0,
p c1 = p cI , p cN +1 = p cF ,
kvv cn k ≤ vmax , for n
p c − p cn
for
v cn = n+1

for k ∈ K and n ∈ N

(13h)
(13i)

∈N

(13j)

n ∈ N,
(13k)
∆
m
where v cn is defined in (13k) (cf. (1)); the energies EO,k,n
(·)
c
and EO,k,n (·) needed for uplink and downlink communication
between MU k and cloudlet in (13a) and (13b), respectively,
are defined in (6); and E in (13b) represents the UAV energy
budget constraint, accounting for offloading and flying. In
problem (13), the inequality constraints (13c) and (13d) ensure
that the number of bits computed at the (n + 1)th frame by
the cloudlet is no larger than the number of bits received by
the cloudlet in the uplink in the previous n frames, and the
number of bits transmitted from the cloudlet in the downlink
at the (n + 2)th frame is no larger than the number of bits
available at the cloudlet after computing in the previous (n+1)
frames, respectively, for the MU k ∈ K and n = 1, . . . , N − 2.
The equality constraints (13e) - (13g) enforce the completion
of offloading while (13h) is imposed for the non-negative
bit allocations. The constraints (13i) and (13j) guarantee the
cloudlet’s initial and final position constraint and maximum
speed constraints, respectively.
B. Successive Convex Approximation
The problem (13) is non-convex due to the non-convex
objective function (13a) and non-convex constraint (13b). To
tackle this problem without resorting to expensive global optimization methods, we develop an SCA-based algorithm that
builds on the inner convex approximation framework proposed

6

in [29], [30]. This approach prescribes the iterative solution
of problems in which the non-convex objective function and
constraints are replaced by suitable convex approximations.
Each problem can be further solved in a distributed manner
by using dual decomposition techniques.
In order to develop the SCA-based algorithm, we use the
following lemmas.
Lemma 1: ([29, Example 8]) Given a non-convex objective
x ) = f1 (x
x )f2 (x
x ), with f1 and f2 convex and
function U (x
x), a convex
non-negative, for any y in the domain of U (x
x) that has the properties required by the
approximant of U (x
SCA algorithm [29, Assumption 2] is given as
τi
x −yy )T H (yy )(x
x −yy ),
x ; y ) , f1 (x
x )f2 (yy )+f1 (yy )f2 (x
x )+ (x
Ū (x
2
(14)
where τi > 0 is a positive constant (ensuring that (14) is
strongly convex) and H (yy ) is a positive definite matrix.
Lemma 2: ([29, Example 4]) Given a non-convex constraint
x1 , x 2 ) ≤ 0, where g(x
x1 , x 2 ) = h1 (x
x 1 )h2 (x
x2 ) is the product
g(x
of h1 and h2 convex and non-negative, for any (yy 1 , y 2 ) in the
x 1 , x 2 ), a convex approximation that satisfies the
domain of g(x
conditions [29, Assumption 3] required by the SCA algorithm
is given as
x1 , x 2 ; y 1 , y 2 )
ḡ(x

1
1 2
x 1 ) + h2 (x
x 2 ))2 −
, (h1 (x
h (yy 1 ) + h22 (yy 2 ) −
2
2 1
′
′
x 1 − y 1 ) − h2 (yy 1 )h2 (yy 2 )(x
x 2 − y 2 ).
h1 (yy 1 )h1 (yy 1 )(x

where τLmk,n , τxcn , τync > 0.
For the non-convex constraint (13b), we derive a convex
upper bound using Lemma 2 given that the constraint can
be written as the sum of two products of convex functions,
namely
γ c Ck
x 1 , x2 )
g(x
(18a)
∆2
c
c
c
c
and EO,k,n (zz n ) , EO,k,n (Lk,n , p n )
N0 B∆/K
x 1 , x2 ),
g(x
(18b)
=
g0
P
2
x1 ) = lk,n and h2 (x
x2 ) = ( K
where h1 (x
k′ =1 Ck′ lk′ ,n ) with
x1 ) =
x 1 = lk,n and x 2 = ln = {lk′ ,n }k′ ∈K in (18a), while h1 (x
c
c
Ek,n
(zz n ) , Ek,n
(ln ) =

Lc
k,n
B∆/K

2
c
m 2
2
x 2 ) = (xcn − xm
2
− 1 and h2 (x
k ) + (yn − yk ) + H
c
c
x
x
p
with 1 = Lk,n and 2 = n in (18b). Then, given a possible
solution z n (v), we obtain a valid convex upper bound of (13b)
by applying (15) as

c
c
Ek,n+1
(zz n+1 ) + EO,k,n+2
(zz n+2 )
c
c
≤ Ēk,n+1 (zz n+1 ; z n+1 (v)) + ĒO,k,n+2
(zz n+2 ; z n+2 (v)), (19)
c
c
where Ēk,n
(zz n ; z n (v)) and ĒO,k,n
(zz n ; z n (v)) are defined in
(39) and (41), respectively, in Appendix A, where their derivations are discussed.
Finally, the resulting strongly convex inner approximation
of (13), for a given a feasible z (v) = {zz n (v)}n∈N , is given
by

(15)
We recall that, beside technical conditions on continuity and
smoothness, the SCA algorithm requires the strongly convex
approximation of the objective function to have the same
first derivative of the objective function, while the convex
approximation of the constraints is required to be tight at
the approximation point and to upper bound the original
constraints.
To proceed, define the set of primal variables for problem (13) as z = {zz n }n∈N with z n = ({Lm
k,n }k∈K ,
{lk,n }k∈K , {Lck,n }k∈K , p cn ) being the optimization variables
m
for the nth frame. We observe that the function EO,k,n
(zz n ) ,
m
m
c
EO,k,n (Lk,n , p n ) is the product of two convex and nonnegative functions, namely

 Lm
k,n
N0 B∆/K
m
B∆/K
f1 (Lk,n ) =
−1
(16a)
2
g0
2
c
m 2
2
and f2 (ppcn ) = (xcn − xm
(16b)
k ) + (yn − yk ) + H .
Then, using Lemma 1 and defining z n (v)
=
c
c
(v)}
,
{l
(v)}
,
{L
(v)}
,
p
(v))
∈
X
for
({Lm
k∈K
k,n
k∈K
k∈K
n
k,n
k,n
the vth iterate within the the feasible set X of (13), we obtain
m
a strongly convex surrogate function ĒO,k,n
(zz n ; z n (v)) of
m
EO,k,n (zz n ) as
c
m
m
c
m
(Lm
ĒO,k,n
(zz n ; z n (v)) , ĒO,k,n
k,n , p n ; Lk,n (v), p n (v))
m
c
m
c
= f1 (Lk,n )f2 (ppn (v)) + f1 (Lk,n (v))f2 (ppn )
τLm
2 τxcn c
2
m
+ k,n Lm
+
(xn − xcn (v))
k,n − Lk,n (v)
2
2
τyc
2
+ n (ync − ync (v)) ,
(17)
2

minimize
z

s.t.

K N
−2
X
X

m
ĒO,k,n
(zz n ; z n (v))

(20a)

k=1 n=1
K
N
−2
XX
c
Ēk,n+1
(zz n+1 ; z n+1 (v))
k=1 n=1
N
X
c
c
+ĒO,k,n+2
(zz n+2 ; z n+2 (v)) +
EF,n
(zz n )
n=1

≤ E (20b)

(13c) - (13k),

(20c)

which has a unique solution denoted by ẑz (zz (v)). The problem
(20) is convex. We note that closed-form solutions could be
obtained via dual decomposition by following the approach
in [3], but we do not elaborate on this here given that the
resulting expressions are rather cumbersome. Using (20), the
SCA-based algorithm is summarized in Algorithm 1. The
convergence of Algorithm 1 in the sense of [29, Theorem
2] is guaranteed if the step size sequence
P {γ(v)} is selected
such that γ(v) ∈ (0, 1], γ(v) → 0, and v γ(v) = ∞. More
specifically, the sequence {zz (v)} is bounded, and every point
of its limit points of z (∞) is a stationary solution of problem
(13). Furthermore, if Algorithm 1 does not stop after a finite
number of steps, none of the limit points z (∞) is a local
minimum of problem (13).
IV. O PTIMAL E NERGY C ONSUMPTION
N ON - ORTHOGONAL ACCESS

FOR

In this section, we discuss the design of bit allocation and
UAV trajectory for non-orthogonal access.

7

Algorithm 1 SCA-based algorithm for problem (13) for
orthogonal access
Input: z (0) = {zz n (0)}n∈N ∈ X with z n (0) ,
c
c
({Lm
k,n (0)}k∈K , {lk,n (0)}k∈K , {Lk,n (0)}k∈K , p n (0)), and
τLmk,n , τxcn , τync > 0 for k ∈ K and n ∈ N . Set v = 0.
1. If z (v) is a stationary solution of (13), stop;
2. Compute ẑz (zz (v)) using (20);
3. Set z (v + 1) = z (v) + γ(v)(ẑz (zz (v)) − z (v)) for some
γ(v) ∈ (0, 1];
3. v ← v + 1 and go to step 1.
c
pcn }.
Output: {Lm
k,n }, {lk,n }, {Lk,n } and {p

where the uplink and downlink transmission energies in
(7a) and (7b) are redefined with slack variables α−k,n =
{αk′ ,n }k′ ∈K,k′ 6=k and β−k,n = {βk′ ,n }k′ ∈K,k′ 6=k as

k′ =1,k′ 6=k

and

A. Problem Formulation

pc
{Lm
k,n },{lk,n },{Lk,n },{p n }

s.t.

K N
−2
X
X

K N
−2
X
X

c
m
EN,k,n
(Lm
n , pn)

(21a)

k=1 n=1

c
c
Ek,n+1
(ln+1 ) + EN,k,n+2
(Lcn+2 , p cn+2 )

k=1 n=1

+
(13c) - (13k).

N
X

c
EF,n
(vv cn ) ≤ E

(21b)
(21c)

B. Successive Convex Approximation
The problem (21) is non-convex due to the non-convex
objective function (21a) and the non-convex constraint (21b).
To address this problem, here we propose an SCA-based
algorithm, for the reasons discussed in Section III. We start by
rewriting the non-convex problem (21) in an equivalent nonconvex form by introducing the slack variables αk,n ≥ 0 and
βk,n ≥ 0 for n ∈ N and k ∈ K as

{Lm
k,n },{lk,n },{Lk,n },
p cn },{αk,n },{βk,n }
{p

s.t.

−2
K N
X
X

K N
−2
X
X
k=1 n=1

αk,n
gk,n (ppcn )

(22a)

c
Ek,n+1
(ln+1 ) + βk,n+2

k=1 n=1

+

N
X

(23b)

respectively.
In order to tackle the problem (22) via the SCA algorithm [29], [30], as discussed in Section III-B, we need to
derive convex approximations for the non-convex objective
function (22a) and constraints (22b), (22c) and (22d) according to Lemma 1 and Lemma 2, respectively. To this
end, let us define the set of primal variables of problem
(22) as z = {zz n }n∈N with z n = ({Lm
k,n }k∈K , {lk,n }k∈K ,
{Lck,n }k∈K , p cn , {αk,n }k∈K , {βk,n }k∈K ) being the optimization variables for the nth frame. The objective function
αk,n /gk,n (ppcn ) in (22a) is the product of one non-negative
linear function and one non-negative convex function, namely

c
EF,n
(vv cn ) ≤ E

(22b)

n=1

and

(22c)

for k ∈ K and n = 1, . . . , N − 2
αk,n , βk,n ≥ 0, for k ∈ K and n ∈ N

(22d)
(22e)

(13c) - (13k),

(22f)

(24a)
(24b)

Therefore,
using
Lemma
1
and
z n (v)
=
c
c
({Lm
(v)}
,
{l
(v)}
,
{L
(v)}
,
p
(v),
k∈K
k,n
k∈K
k∈K n
k,n
k,n
{αk,n (v)}k∈K , {βk,n (v)}k∈K ) ∈ X for the vth iterate in the
feasible set X of (22), a strongly convex surrogate function
m
ĒN,k,n
(zz n ; z n (v)) of the objective function αk,n /gk,n (ppcn ) in
(22a) is obtained as
m
ĒN,k,n
(zz n ; z n (v)) , f1 (αk,n )f2 (ppcn (v)) + f1 (αk,n (v))f2 (ppcn )
τxc
τα
2
2
+ k,n (αk,n − αk,n (v)) + n (xcn − xcn (v))
2
2
τyc
2
+ n (ync − ync (v)) ,
(25)
2

where ταk,n , τxcn , τync > 0, for k ∈ K and n ∈ N .
Moreover, using Lemma 2, the non-convex function
m
m
c
hm
, gk,n (ppcn )ÊN,k,n
(Lm
k,n (Lk,n , α−k,n )
k,n , p n , α−k,n ) in
c
(22c) and ÊN,k,n
(Lck,n , p cn , β−k,n ) in the constraint (22d) can
be upper bounded for a given z (v) = {zz n (v)}n∈N ∈ X as

m
c
gk,n (ppcn )ÊN,k,n
(Lm
k,n , p n , α−k,n ) ≤ αk,n ,

for k ∈ K and n = 1, . . . , N − 2
c
ÊN,k,n+2 (Lck,n+2 , p cn+2 , β−k,n+2 ) ≤ βk,n+2 ,

αk,n
,
g0
2
c
m 2
2
f2 (ppcn ) = (xcn − xm
k ) + (yn − yk ) + H .

f1 (αk,n ) =

n=1

minimize c


N0 B∆
c
ÊN,k,n
(Lck,n , p cn , β−k,n ) =
gk,n (ppcn )

 Lc

K
X
k,n

B∆
′
2
−1 ,
+
βk ,n
k′ =1,k′ 6=k

Using the same definitions as in the previous section, the
problem of minimizing the total energy consumption of the
MUs is formulated as in (13) by substituting the energies
needed for uplink and downlink communication in (13a) and
(13b) with (7a) and (7b), respectively. We summarize the
resulting problem as
minimize
c

1
m
c
ÊN,k,n
(Lm
(N0 B∆
k,n , p n , α−k,n ) =
gk,n (ppcn )

 Lm

K
X
k,n

2 B∆ − 1
αk′ ,n
+
(23a)

and

m
m
z n ; z n (v))
hm
k,n (Lk,n , α−k,n ) ≤ h̄k,n (z

(26a)

c
ÊN,k,n
(Lck,n , p cn , β−k,n )

(26b)

≤

c
ĒN,k,n
(zz n ; z n (v)),

c
z n ; z n (v)) and ĒN,k,n
where h̄m
(zz n ; z n (v)) are convex funck,n (z
tions calculated by (43) and (45), respectively, in Appendix B,
where the details of the derivations are discussed.

8

By using (25) and (26), given a feasible z (v) ∈ X , we have
a strongly convex inner approximation of (22) as (cf. (20))
minimize
z

s.t.

K N
−2
X
X

m
ĒN,k,n
(zz n ; z n (v))

k=1 n=1
K
N
−2
XX
c
Ēk,n+1
(zz n+1 ; z n+1 (v))
k=1 n=1
N
X
c
(zz n ) ≤ E
+
EF,n
n=1
z n ; z n (v)) ≤ αk,n ,
h̄m
k,n (z

(27a)

where g is gravitational acceleration. A discussion of model
(29) can be found along with the values for the constants
κ1 and κ2 in in Appendix C. The velocity vector v cn and
acceleration vector a cn are related to the UAV’s position p cn
according to the second-order Taylor approximation model
1
p cn+1 = p cn + v cn ∆ + a cn ∆2 ,
2

+ βk,n+2
(27b)

for k ∈ K and n = 1, . . . , N − 2

(27c)

for n ∈ N .
Considering an overall constraint on the UAV energy with
(29) in lieu of (8) yields the following optimization problem
for orthogonal access

c
ĒN,k,n+2
(zz n+2 ; z n+2 (v))

≤ βk,n+2 ,
for k ∈ K and n = 1, . . . , N − 2

(27d)

(22e), (13c) - (13k),

(27e)

c
where Ēk,n
(zz n ; z n (v)) is defined equivalently in (39), which
provides a unique solution denoted by ẑz (zz (v)). The SCAbased algorithm is summarized using (27) in Algorithm 2.
Its convergence is established by following [29, Theorem 2]
as discussed in Section III.

Algorithm 2 SCA-based algorithm for problem (22) for nonorthogonal access
Input: z (0) = {zz n (0)}n∈N ∈ X with z n (0) ,
c
c
({Lm
k,n (0)}k∈K , {lk,n (0)}k∈K , {Lk,n (0)}k∈K , p n (0),
{αk,n (0)}k∈K , {βk,n (0)}k∈K ), and ταk,n , τxcn , τync > 0 for
k ∈ K and n ∈ N . Set v = 0.
1. If z (v) is a stationary solution of (22), stop;
2. Compute ẑz (zz (v)) using (27);
3. Set z (v + 1) = z (v) + γ(v)(ẑz (zz (v)) − z (v)) for some
γ(v) ∈ (0, 1];
3. v ← v + 1 and go to step 1.
c
pcn }, {αk,n } and {βk,n }.
Output: {Lm
k,n }, {lk,n }, {Lk,n }, {p

V. UAV’ S P ROPULSION E NERGY C ONSUMPTION
In the previous sections, we assumed the UAV’s energy
consumption model (8) for flying, in which the flying energy
depends only on the velocity. In this section, we adopt a
more refined model following [16], [26]–[28], in which the
propulsion energy of the UAV depends on both the velocity
and acceleration vectors. One of the goals of this study is to
understand the impact of the energy consumption model on
the optimal system design.
Let us denote the UAV’s acceleration vector for the nth
frame as a cn , where
v c − v cn
.
(28)
= n+1
∆
Following [16], [26]–[28], the UAV’s propulsion energy consumption at the nth frame can be modeled as
a cn

(Model 2)
c
(vv cn , a cn )
EF,n

=

3
κ1 kvv cn k

κ2
+ c
kvv n k

ac k2
ka
1 + n2
g

!

,

(29)

(30)

minimize c

{Lm
k,n },{lk,n },{Lk,n },
p cn },{v
v cn },{a
a cn }
{p

s.t.

K N
−2
X
X

−2
K N
X
X

m
c
EO,k,n
(Lm
k,n , p n )

(31a)

k=1 n=1

c
c
Ek,n+1
(ln+1 ) + EO,k,n+2
(Lck,n+2 , p cn+2 )

k=1 n=1

+

N
X

c
EF,n
(vv cn , acn ) ≤ E

(31b)

n=1

v cn+1 = v cn + a cn ∆, for n ∈ N
1
p cn+1 = p cn + v cn ∆ + a cn ∆2 , for n ∈ N
2
v c1 = v cN +1 = v c
acn k ≤ amax , for n ∈ N
ka
(13c) - (13j),

(31c)
(31d)
(31e)
(31f)
(31g)

where (31b) is the overall UAV energy constraint; (31e)
represents the UAV’s initial and final velocity constraint; and
(31f) guarantees a maximum acceleration constraint of amax .
Note that, as compared to (13), problem (31) has the additional
acn }.
optimization variables {vv cn } and {a
To tackle the non-convex problem (31), we apply the SCA
approach as above in Section III-B. The key difference with
respect to Section III-B is the need to cope with the nonc
convex function EF,n
(vv cn , a cn ) in (31b). To elaborate, we
introduce nonnegative slack variables {τvnc ≥ 0}, and impose
the additional constraints kvv cn k ≥ τvnc for n ∈ N . Under these
c
constraints, the propulsion energy consumption EF,n
(vv cn , a cn )
in (29) is upper bounded as
2

c
EF,n
(vv cn , a cn ) ≤

,

κ1 kvv cn k3 +

acn k
κ2
κ2 ka
+
τvnc
τvnc g 2

c
ĒF,n
(zz n ; z n (v)),

(32)

where the inequality in (32) results from the constraint kvv cn k2 ≥ τv2nc , yielding the convex upper bound
c
ĒF,n
(zz n ; z n (v)). In (32), we redefined the set of variables z and z n (v) by including the additional variacn } and {τvnc } as z = {zz n }n∈N with
ables {vv cn }, {a
m
z n = ({Lk,n }k∈K , {lk,n }k∈K , {Lck,n }k∈K , p cn , v cn , a cn , τvnc )
c
and as z n (v) = ({Lm
k,n (v)}k∈K , {lk,n (v)}k∈K , {Lk,n (v)}k∈K ,
c
c
c
p n (v), v n (v), a n (v), τvnc (v)) ∈ X for the vth iterate, where X
is the feasible set of problem (31). By using the bound (32),

9

we obtain the convex program to be solved at the vth iteration
as

minimize
z

K N
−2
X
X

m
ĒO,k,n
(zz n ; z n (v))

k=1 n=1
K
N
−2
XX
c
Ēk,n+1
(zz n+1 ; z n+1 (v))
s.t.
k=1 n=1
N
 X
c
c
ĒF,n
(zz n ; z n (v))
+ĒO,k,n+2
(zz n+2 ; z n+2 (v)) +
n=1

(33a)

≤E
(33b)
(33c)

τvnc ≥ 0, for n ∈ N
(31c) - (31g),

(33d)
(33e)

where f LB (zz n ; z n (v)) is the linear lower bound on the
squared norm kvv cn k2 as
2
T
= kvv cn (v)k + 2 (vv cn (v)) (vv cn − v cn (v))
≤ kvv cn k2 .
(34)

The problem (33) is used within Algorithm 1, where (13) and
(20) is substituted with (31) and (33), respectively, to yield
the proposed SCA solution.
In a similar manner, we can consider non-orthogonal access
yielding the problem
K N
−2
X
X

minimize

c
{Lm
k,n },{lk,n },{Lk,n },
c
c
c
p n },{v
v n },{a
an }
{p

s.t.

K N
−2
X
X

m
c
EN,k,n
(Lm
n , pn )

(35a)

k=1 n=1

c
c
Ek,n+1
(ln+1 ) + EN,k,n+2
(Lcn+2 , p cn+2 )

k=1 n=1

+

N
X

c
EF,n
(vv cn , a cn ) ≤ E

(35b)

n=1

(31c) - (31g),

(35c)

where (35b) is the overall UAV energy constraint. Then, using
slack variables αk,n ≥ 0 and βk,n ≥ 0 for k ∈ K and n ∈ N
as in (22), we can rewrite the problem (35) into

minimize c

{Lm
k,n },{lk,n },{Lk,n },
a cn },
v cn },{a
p cn },{v
{p
{αk,n },{βk,n }

s.t.

K N
−2
X
X

K N
−2
X
X

k=1 n=1

αk,n
gk,n (ppcn )

(36a)

c
Ek,n+1
(ln+1 ) + βk,n+2

k=1 n=1

+

N
X

c
EF,n
(vv cn , a cn ) ≤ E

(36b)

n=1

(31c) - (31g), (22c) - (22e).

minimize
z

s.t.

τv2nc ≤ f LB (zz n ; z n (v)), for n ∈ N

f LB (zz n ; z n (v))

This can be tackled using SCA in Algorithm 2 with the
following convex problem as

(36c)

K N
−2
X
X

m
ĒN,k,n
(zz n ; z n (v))

k=1 n=1
K
N
−2
XX
c
Ēk,n+1
(zz n+1 ; z n+1 (v)) + βk,n+2
k=1 n=1
N
X
c
ĒF,n
(zz n ; z n (v)) ≤ E
+
n=1

(33c) - (33e), (27c), (27d), (22e),

(37a)

(37b)
(37c)

in lieu of (22) and (27), respectively, where
z = {zz n }n∈N with z n = ({Lm
k,n }k∈K , {lk,n }k∈K ,
{Lck,n }k∈K , p cn , v cn , a cn , {αk,n }k∈K , {βk,n }k∈K , τvnc ); z n (v) =
c
c
c
({Lm
k,n (v)}k∈K , {lk,n (v)}k∈K , {Lk,n (v)}k∈K , p n (v), v n (v),
c
a n (v), {αk,n (v)}k∈K , {βk,n (v)}k∈K , τvnc (v)) ∈ X with the
c
c
feasible set X ; and EF,n
(vv cn , a cn ) and ĒF,n
(zz n ; z n (v)) are
defined in (29) and (32), respectively.
VI. N UMERICAL R ESULTS
In this section, we evaluate the performance of the proposed optimization algorithm over bit allocation and UAV’s
trajectory via numerical experiments. We will consider both
the results of the optimization studied in Section III and
Section IV in which the UAV energy for flying is given by (8)
(Model 1) or (29) (Model 2). Furthermore, for reference, we
consider the following schemes: (i) No optimization: With this
scheme, the same number of bits is transmitted in uplink and
downlink in each frame, the same number of bits is computed
at the cloudlet at each frame, and the cloudlet flies at constant
velocity between the initial and final positions, i.e., Lm
k,n =
lk,n+1 = Ik /(N − 2) and Lck,n+2 = Ik Ok /(N − 2) for k ∈ K
and n = 1, . . . , N − 2, and xcn = xcI + (n − 1)(xcF − xcI )/N
and ync = yIc + (n − 1)(yFc − yIc )/N for n ∈ N ; (ii)
Optimized bit allocation: With this scheme, the optimized
number of bits is transmitted in each uplink and downlink
frame and computed at the cloudlet by the proposed algorithms
while keeping the described constant-velocity cloudlet’s trajectory; (iii) Optimized UAV’s trajectory: With this scheme, the
cloudlet flies along the optimized trajectory between the initial
and final positions as obtained by the proposed algorithms
with fixed equal bit allocation in each frame. The UAV’s
initial and final velocity constraint for Model 2 is set to be
v c = kvv c k(ppcF − p cI )/kppcF − p cI k, where kvv c k ≤ vmax is
its initial and final speed. The remaining parameters used in
the simulations, unless specified otherwise, are summarized in
Table I, where κ1 and κ2 are set for Model 2 by considering
the fixed-wing UAV’s parameters.
As shown in Fig. 3, in the first scenario under study,
there are K = 3 MUs located at positions p m
1 = (0, 10, 0),
m
pm
=
(10,
10,
0)
and
p
=
(10,
0,
0),
while
the initial and
2
3
final positions of the cloudlet are p cI = (0, 0) to p cF = (5, 0),
respectively, with the UAV’s initial speed kvv c k = 2.22 m/s.
The numbers of bits to be offloaded in the uplink from the
MUs are assumed to be I1 = 4 Mbits, I2 = 6 Mbits and
I3 = 2 Mbits. The latency constraint is T = 2.25 s, or

10

Parameter
N0
Ok
H

Value
−174 dBm/Hz
0.5
5m

105

6

Lm
k,n
lk,n

4

Lck,n

2
0
1

5

10

15

20

25

30

35

40

45

50

30

35

40

45

50

30

35

40

45

50

Slot n
5

MU 2's number of bits

E
vmax
∆
ρ
Sr
AR
κ1

Value
40 MHz
10−28 [32], [33]
1550.7
(95th
percentile of random
Ck in [32], [33])
500 kJ
50 m/s
45 ms
1.225 kg/m3
3.77 m2
13
0.0037

9.8 m/s2
30 m/s2
9.65 kg
0.0355
0.85
0.2171
5.0206

g
amax
M
CD0
e0
κ
κ2

10

8

Lm
k,n

6

lk,n

4

Lck,n

2
0
1

5

10

15

20

25

Slot n

MU 3's number of bits

Parameter
B
γkm , γ c
Ck

MU 1's number of bits

Table II
S IMULATION PARAMETERS

105

6

Lm
k,n
lk,n

4

Lck,n

2
0
1

10

5

10

15

20

25

Slot n
9

MU 1
(I1 = 4 Mbits)

8

MU 2
(I2 = 6 Mbits)

Figure 4. Optimized bit allocation for the UAV trajectory under Model 2 in
Fig. 3 (K = 3, T = 2.25 s, (I1 , I2 , I3 ) = (4, 6, 2) Mbits, p m
1 = (0, 10, 0)
c
m
c
m, p m
2 = (10, 10, 0) m, p 3 = (10, 0, 0) m, p I = (0, 0) m, p F = (5, 0) m
and the reference SNR g0 /(N0 B) = −5 dB).

7

Optimized UAV's trajectory
(Model 1)

y (m)

6

Optimized UAV's trajectory
(Model 2)

5

4

3

2

MU 3
(I3 = 2 Mbits)

Constant-velocity
UAV's trajectory

1

n=0

n = 50

0
0

1

2

3

4

5

6

7

8

9

10

x (m)

Figure 3. Position of the MUs and optimized UAV’s trajectory for orthogonal
access with Algorithm 1 (K = 3, T = 2.25 s, (I1 , I2 , I3 ) = (4, 6, 2) Mbits,
m
m
c
pm
1 = (0, 10, 0) m, p 2 = (10, 10, 0) m, p 3 = (10, 0, 0) m, p I = (0, 0) m,
p cF = (5, 0) m and the reference SNR g0 /(N0 B) = −5 dB).

N = 50 with the parameters in Table I, and the reference
SNR g0 /(N0 B) = −5 dB.
Fig. 3 shows the optimized trajectories obtained for orthogonal access under both UAV’s flying energy consumption
models. The same qualitative behavior was observed for nonorthogonal access with Algorithm 2 (not reported here). Fig.
3 shows that, under both models, the UAV tends to stay
longer near MU 2, which has the largest number of input
bits to offload. However, when including the UAV’s propulsion
energy consumption as in Model 2, the trajectory tends to turn
smoothly compared to Model 1 in order to limit the energy
consumption caused by accelerations. This demonstrates the
impact of the energy consumption model on the optimal
system design.
For the same example, Fig. 4 shows the optimized bit
allocation for the UAV trajectory in Fig. 3 that is attained
under Model 2. A similar trend is observed also under Model
1 (not shown here). It is seen that, when the UAV is closer to an

MU k, a larger number {Lm
k,n } of bits for uplink transmission
is allocated for MU k. Moreover, the bit allocation {lk,n }
for computation and {Lck,n } for downlink transmission are
constrained by the number of bits received in the uplink and on
the output bits obtained as a result of computing, respectively.
Finally, the downlink bit allocation {Lck,n } is seen to be less
affected by the cloudlet’s position compared to the uplink
bit allocation {Lm
k,n } since the algorithm does not attempt to
minimize UAV’s energy consumption but it only imposes the
UAV energy budget at the cloudlet.
Fig. 5 compares the average total energy consumptions
(10) for mobile execution with the mobile energy needed
for offloading using orthogonal and non-orthogonal access
as a function of the deadline T under Model 1. For this
experiment, we have K = 2 MUs with input bits I1 = I2 = 8
Mbits that are uniformly distributed in a 10 × 10 m2 square
region. We assume the initial and final position of cloudlet
as p cI = (0, 0) and p cF = (0, 8), respectively. The energy
shown in Fig. 5 is averaged with respect to the MUs’ locations.
The reference SNR g0 /(N0 B) is set to be −2.5 dB. From
Fig. 5, we first observe that as the deadline T becomes more
stringent, the energy savings of cloudlet offloading become
more prominent compared with respect to mobile execution
given that mobile computing energy grows as T −2 as per
(10) while the mobile energy with offloading decreases more
slowly with T . Furthermore, we note the significant gains
obtained by means of joint optimization of trajectory and bit
allocation. For instance, for T = 2.7 s, the proposed scheme
requires an average total MUs’ energy consumption of 36.8
J for orthogonal access and 29.9 J for non-orthogonal access,
whereas the non-optimized systems with equal bit allocation
and constant-velocity cloudlet trajectory requires 43.1 J and
44.3 J, respectively, which implies a 14.5% and 32.7% de-

11

100
90

Total mobile energy consumption (J)

80

the cloudlet’s trajectory. They also point to the importance
of acquiring accurate energy consumption models for the
UAV. Interesting open problems concern the generalization of
the optimization studied here to multiple moving interfering
mobile devices and to trajectories with a variable altitude.

Nonorthogonal
Orthogonal
No opt.
Opt. bit allocation
Opt. trajectory
Opt. trajectory and bit allocation

70

Mobile Execution

60

A PPENDIX A
D ERIVATIONS OF (19)

50

40

30

25
0.54

0.9

1.2

1.5

1.8

2.1

2.4

2.7

In this appendix, for a given z (v) ∈ X with the feasible set X of problem (13), we derive the convex upper
c
c
bounds Ēk,n
(zz n ; z n (v)) and ĒO,k,n
(zz n ; z n (v)) of non-convex
c
c
functions Ek,n (zz n ) and EO,k,n (zz n ), respectively, in (13b) by
following Lemma 2.
c
The computing energy consumption Ek,n
(zz n ) of MU k can
be first rewritten as

Deadline T (s)

 
γ Ck  1 
c
lk,n +
Ek,n
(zz n ) =

∆2
2
c

Figure 5. Average total energy consumption of the MUs as a function of
the deadline T under Model 1 when the MUs are uniformly distributed in a
10 × 10 m2 square region (K = 2, (I1 , I2 ) = (8, 8) Mbits, p cI = (0, 0) m,
p cF = (0, 8) m and the reference SNR g0 /(N0 B) = −2.5 dB).

crease on the mobile energy consumption. The larger gain for
non-orthogonal access can be attributed to the dependence of
its performance on the mutual interference among MUs, which
is affected by bit allocation. Also, optimizing the trajectory is
seen to be more advantageous than optimizing only the bit
allocation. For instance, of the mentioned 32.7% decrease in
energy with non-orthogonal access, 27.4% can be obtained
by optimizing only the trajectory, while 2% is achieved by
optimizing only the bit allocation. Finally, upon optimization,
non-orthogonal access is preferred to the orthogonal access
unless T is small. This can be explained since a shorter deadline T requires a larger energy consumption, which renders
the performance of non-orthogonal access interference-limited.
Note that if the deadline T is not enough long for the UAV to
fly from its initial to final location under its maximum velocity
constraint, the offloading becomes infeasible (cf. (3)).
VII. C ONCLUDING R EMARKS
In this paper, we studied a mobile cloud computing architecture based on a UAV-mounted cloudlet which provides
the offloading opportunities to multiple static mobile devices.
Two types of access schemes, namely orthogonal access and
non-orthogonal access, were considered for the uplink and
downlink transmissions required for the offloading procedure.
We tackled the minimization of the mobile energy over the
bit allocation for uplink, downlink and computation as well as
over the UAV’s trajectory for both access schemes by means of
successive convex approximation methods. Numerical results
verify the significant mobile energy savings of the proposed
joint optimization of bit allocation and cloudlet’s trajectory
as compared to local mobile execution, as well as to partial
optimization approaches that design only the bit allocation or



1
2
− (lk,n ) +
2

K
X

k′ =1
K
X

k′ =1

!2 2
Ck′ lk′ ,n 

!4 
Ck′ lk′ ,n  ,

(38)

c
which leads to the convex upper bound of Ek,n
(zz n ) around
z n (v) as
c
c
Ēk,n
(zz n ; z n (v)) , Ek,n
(ln ; ln (v))

!2 2
K
c
X
γ Ck 
Ck′ lk′ ,n 
=
 lk,n +
2∆2
′
k =1

2

− (lk,n (v)) −

K
X

k′ =1



!4 
Ck′ lk′ ,n (v) 

γ c Ck
− 2 lk,n (v) (lk,n − lk,n (v)) + 2
∆
!#
K
X
×
.
Ck′ (lk′ ,n − lk′ ,n (v))

K
X

k′ =1

!3

Ck′ lk′ ,n (v)

(39)

k′ =1

Similarly, we can rewrite the downlink communication energy
c
consumption EO,k,n
(zz n ) as
c
EO,k,n
(zz n ) =

N0 B∆/K
g0

  Lc
k,n
1
2 B∆/K − 1
2

2
2
c
m 2
2
+ (xcn − xm
)
+
(y
−
y
)
+
H
k
n
k
 Lc
2
k,n
1
2 B∆/K − 1
−
2

2 
2
c
m 2
2
. (40)
+ (xcn − xm
)
+
(y
−
y
)
+
H
k
n
k

12

c
Then, the desired convex upper bound of EO,k,n
(zz n ) around
z n (v) can then be obtained as
c
c
ĒO,k,n
(zz n ; z n (v)) , EO,k,n
(Lck,n , p cn ; Lck,n (v), p cn (v))
 Lc
k,n
N0 B∆/K
=
2 B∆/K − 1
2g0
2
2  Lck,n (v)
2
c
m 2
2
B∆/K − 1
−
2
+ (xcn − xm
)
+
(y
−
y
)
+
H
k
n
k
2 

2
c
m 2
2
− (xcn (v) − xm
)
+
(y
(v)
−
y
)
+
H
k
n
k
 Lc (v)

Lck,n (v)
k,n

N0 ln 2 B∆/K
2 B∆/K − 1 Lck,n − Lck,n (v)
−
2
g0

2N0 B∆/K  c
2
c
m 2
2
(xn (v) − xm
−
k ) + (yn (v) − yk ) + H
g0
c
c
c
m
c
c
((xcn (v) − xm
k ) (xn − xn (v)) + (yn (v) − yk ) (yn − yn (v))) .
(41)

c
Similarly, the non-convex function ÊN,k,n
(Lck,n , p cn , β−k,n )
in the constraint (22d) can be expressed as
c
c
ÊN,k,n
(zz n ) , ÊN,k,n
(Lck,n , p cn , β−k,n )

 Lc
k,n
1 N0 B∆
2
2 B∆ − 1 + (xcn − xm
=
k)
2
g0

2
Lck,n
2
+ (ync − ykm ) + H 2 + 2 B∆ − 1 +

K
X

k′ =1,k′ 6=k




2
  Lc
k,n
1  N0 B∆
− 
+1
2 B∆ − 1 + 
2
g0

K
X

k′ =1,k′ 6=k

2 
N0 B∆  c
m 2
c
m 2
2
,
(xn − xk ) + (yn − yk ) + H
+
g0

2 

βk′ ,n  
2

βk′ ,n 

(44)

which is upper bounded by the convex surrogate function to
c
linearize the concave parts of ÊN,k,n
(zz n ) as
c
ĒN,k,n
(zz n ; z n (v))

A PPENDIX B
D ERIVATIONS

OF

(26)

Here, for a given z (v) ∈ X with the feasible set X
of problem (22), we derive the convex upper bounds of
c
z n ; z n (v)) and ÊN,k,n
hm
(zz n ; z n (v)) in (26) similarly with
k,n (z
Appendix A based on Lemma 2.
m
We can rewrite the non-convex function hm
k,n (Lk,n , α−k,n )
of (22c) as

 Lm
k,n
m
m
B∆ − 1
z
,
α
)
=
N
B∆
2
(L
hm
(z
)
,
h
−k,n
0
k,n
k,n n
k,n
2

K
m
X
k,n
1  LB∆
−1+
αk′ ,n 
+
2
2
′
′
k =1,k 6=k


2 
 Lm
2
K
X
k,n
1

−  2 B∆ − 1 + 
αk′ ,n   , (42)
2
′
′
k =1,k 6=k

whose convex upper bound is given as
z n ; z n (v))
h̄m
k,n (z

m
m
h̄m
k,n (Lk,n , α−k,n ; Lk,n (v), α−k,n (v))

,
 Lm

k,n
= N0 B∆ 2 B∆ − 1

K
Lm
X
k,n
1
+ 2 B∆ − 1 +
2
′
′

k =1,k 6=k



−

K
X

k′ =1,k′ 6=k

2 

αk′ ,n (v) 

2

2
 Lm (v)
k,n
αk′ ,n  − 2 B∆ − 1

 Lm (v)

m

k,n
ln 2 Lk,n (v)
m
2 B∆ − 1 Lm
2 B∆
−
k,n − Lk,n (v)
B∆



K
K
X
X
−
αk′ ,n (v) 
αk′ ,n − αk′ ,n (v) . (43)
k′ =1,k′ 6=k

k′ =1,k′ 6=k

c
, ĒN,k,n
(Lck,n , p cn , β−k,n ; Lck,n (v), p cn (v), β−k,n (v))

 Lc
k,n
1 N0 B∆
2
=
2 B∆ − 1 + (xcn − xm
k)
2
g0

2
K
2
Lck,n
X
+ (ync − ykm )2 + H 2 + 2 B∆ − 1 +
βk′ ,n 
k′ =1,k′ 6=k

  Lc (v)
2
k,n
N0 B∆
+1
2 B∆ − 1
−
g0

2
K
X
N0 B∆  c
2
(xn (v) − xm
−
βk′ ,n (v) −
k)
g0
′
′
k =1,k 6=k
2 
+ (ync (v) − ykm )2 + H 2


− ln 2



N0
1
+
g0
B∆



2

 Lc (v)

k,n
2 B∆ − 1

K
X
βk′ ,n (v)

Lc
(v)
k,n
B∆



× Lck,n − Lck,n (v) − 

k′ =1,k′ 6=k



K
X



2N0 B∆
g0
k′ =1,k′ 6=k


2
c
m 2
2
× (xcn (v) − xm
k ) + (yn (v) − yk ) + H
×

βk′ ,n − βk′ ,n (v) −

c
c
× ((xcn (v) − xm
k ) (xn − xn (v))
+ (ync (v) − ykm ) (ync − ync (v))) .

(45)

A PPENDIX C
D ERIVATIONS OF M ODEL 2 IN (29)
Here, following [16], [26]–[28], we briefly discuss the
propulsive energy consumption model (29) which can be
applied for both fixed-wing and rotary-wing UAV of weight
W = M g. For a fixed-wing UAV with initial and final
velocity constraint (31e), the propulsion energy consumption
is upper bounded by (29), where κ1 = 0.5ρCD0 Sr ∆ and

13

κ2 = 2M 2 g 2 ∆/(πe0 AR ρSr ) are derived by following [16,
Eq. (56)]; ρ is the air density in kg/m3 ; CD0 is the zerolift drag coefficient; Sr is a reference area; e0 is the Oswald
efficiency; and AR is the aspect ratio of the wing. For a rotarywing UAV, the power PF required for constant-height flight
with speed kvv c k can be approximated as [26]–[28]
PF ≈ P0 + Pp + Pi ,

(46)

where P0 is the so called profile power, which is the power
spent to turn the rotors and overcome the rotor aerodynamic
drag force; Pp is the so called parasitic power, which is the
power required to overcome parasite drag; and Pi is the so
called induced power, which is the power required to produce
lift by moving a mass of air through the disk at the induced
velocity. In (46), although the profile power P0 is a function
of flight speed kvv c k, its contribution is constant in low-speed
flight and small compared to the other components, and is
hence generally neglected. Moreover, following references
[26]–[28], the other two components in (46) can be modeled
as
PF (vv c , a c )

T k2
ǫkT
(47a)
≈ 0.5ρCDf Sr kvv c k3 +
2ρAkvv c k


a c k2
ka
κ2
κ1 c 3
1+
,(47b)
kvv k +
=
c
∆
∆kvv k
g2

where κ1 = 0.5ρCDf Sr ∆ and κ2 = ǫM 2 g 2 ∆/(2ρA); a c
is the UAV’s acceleration vector; CDf is the drag coefficient
based on the reference area Sr ; A is the area of the main rotor
disk; ǫ is the induced power factor; and T is the total required
T k2 = W 2 (1 + ka
ac k2 /g 2 )
thrust, which can be calculated as kT
c
p
for constant-height flight. For a trajectory (t), velocity v c (t)
and acceleration a c (t), the total propulsion energy is then given
by integrating (47) over time
Z
EFc (vv c (t), a c (t)) = PF (vv c (t), a c (t))dt.
(48)

By applying the discrete linear state-space approximation
in [16] to (48), the rotary-wing UAV’s propulsion energy
consumption at the nth frame can be also derived as Model 2
in (29).
R EFERENCES
[1]
[online] www.internet.org.
[2]
[online] www.google.com/loon.
[3] S. Jeong, O. Simeone, A. Haimovich, and J. Kang, “Mobile cloud
computing with a uav-mounted cloudlet: Optimal bit allocation for
communication and computation,” to appear in IET Communications,
Jan. 2017.
[4] S. W. Loke, “The internet of flying-things: Opportunities and challenges
with airborne fog computing and mobile cloud in the clouds,” arXiv
preprint arXiv:1507.04492, Jul. 2015.
[5] Y. Zeng, R. Zhang, and T. J. Lim, “Wireless communications with
unmanned aerial vehicles: opportunities and challenges,” IEEE Comm.
Mag., vol. 54, no. 5, pp. 36–42, May. 2016.
[6] M. Asadpour, D. Giustiniano, K. Hummel, S. Heimlicher, and S. Egli,
“Now or later?: delaying data transfer in time-critical aerial communication,” in Proc. ACM conference on Emerging Networking Experiments
and Technologies, New York, Dec. 2013, pp. 127–132.
[7] M. Asadpour, B. V. den Bergh, D. Giustiniano, K. Hummel, S. Pollin,
and B. Plattner, “Micro aerial vehicle networks: An experimental analysis of challenges and opportunities,” IEEE Comm. Mag., vol. 52, no. 7,
pp. 141–149, Jul. 2014.

[8] Y. Zeng, R. Zhang, and T. J. Lim, “Throughput maximization for uavenabled mobile relaying systems,” IEEE Trans. Comm., vol. 64, no. 12,
pp. 4983–4996, Dec. 2016.
[9] W. Zhao, M. Ammar, and E. Zegura, “A message ferrying approach
for data delivery in sparse mobile ad hoc networks,” in Proc. ACM
International Symposium on Mobile Ad Hoc Networking and Computing,
Tokyo, Japan, May 2004, pp. 187–198.
[10] R. Shah, S. Roy, S. Jain, and W. Brunette, “Data MULEs: modeling and
analysis of a three-tier architecture for sparse sensor networks,” Ad Hoc
Networks, vol. 1, no. 2, pp. 215–233, Sep. 2003.
[11] P. Zhan, K. Yu, and A. L. Swindlehurst, “Wireless relay communications
with unmanned aerial vehicles: performance and optimization,” IEEE
Trans. Aerospace and Electronic Systems, vol. 47, no. 3, pp. 2068–2085,
Jul. 2011.
[12] M. N. Soorki, M. Mozaffari, W. Saad, M. H. Manshaei, and H. Saidi,
“Resource allocation for machine-to-machine communications with unmanned aerial vehicles,” in Proc. 2016 IEEE Globecom Workshops (GC
Wkshps), Washington, DC, Dec. 2016.
[13] M. Mozaffari, W. Saad, M. Bennis, and M. Debbah, “Drone small cells
in the clouds: Design, deployment and performance analysis,” in Proc.
IEEE Glob. Telecom. Conf., San Diego, CA, Dec. 2015.
[14] ——, “Optimal transport theory for power-efficient deployment of
unmanned aerial vehicles,” in Proc. IEEE Int. Conf. on Comm., Kuala
Lumpur, Malaysia, May 2016.
[15] ——, “Unmanned aerial vehicle with underlaid device-to-device communications: Performance and tradeoffs,” IEEE Trans. Wireless Comm.,
vol. 15, no. 6, pp. 3949–3963, Jun. 2016.
[16] Y. Zeng and R. Zhang, “Energy-efficient UAV communication with
trajectory optimization,” arXiv preprint arXiv:1608.01828v1, Aug. 2016.
[17] S. Manyam, D. Casbeer, and K. Sundar, “Path planning for cooperative
routing of air-ground vehicles,” in Proc. American Control Conference
(ACC), Boston, MA, Jul. 2016.
[18] K. Dorling, J. Heinrichs, G. Messier, and S. Magierowski, “Vehicle
routing problems for drone delivery,” IEEE Transactions on Systems,
Man, and Cybernetics: Systems, vol. PP, no. 99, pp. 1–16, Jul. 2016.
[19] F. Bonomi, R. Milito, P. Natarajan, and J. Zhu, “Fog computing: A
platform for internet of things and analytics,” Big Data and Internet
of Things: A Roadmap for Smart Environments, vol. 546, pp. 169–186,
2014.
[20] Y. Saito, A. Benjebbour, Y. Kishiyama, and T. Nakamura, “System level
performance evaluation of downlink non-orthogonal multiple access
(NOMA),” in Proc. IEEE Int. Symp. on Pers., Indoor and Mobile Radio
Comm., London, UK, Sep. 2013.
[21] Z. Ding, Z. Yang, P. Fan, and H. Poor, “On the performance of nonorthogonal multiple access in 5G systems with randomly deployed
users,” IEEE Sig. Proc. Lett., vol. 21, no. 12, pp. 1501–1505, Dec. 2014.
[22] N. Xue, “Design and optimization of lithium-ion batteries for electricvehicle applications,” 2014, Doctoral dissertation, University of Michigan.
[23] C. Borst, F. Sjer, M. Mulder, M. V. Paassen, and J. Mulder, “Ecological
approach to support pilot terrain awareness after total engine failure,”
Journal of Aircraft, vol. 45, no. 1, pp. 159–171, Jan. 2008.
[24] A. Chakrabarty and J. Langelaan, “Energy maps for long-range path
planning for small-and micro-UAVs,” in Proc. AIAA Guidance, Navigation, and Control Conference, Honolulu, Hawaii, Aug. 2009.
[25] ——, “Energy-based long-range path planning for soaring-capable unmanned aerial vehicles,” Journal of Guidance, Control, and Dynamics,
vol. 34, no. 41, pp. 1002–1015, Jul. 2011.
[26] A. Filippone, Flight performance of fixed and rotary wing aircraft.
Elsevier, 2006.
[27] G. J. Leishman, Principles of helicopter aerodynamics. Cambridge
University Press, 2006.
[28] Z. Kong, V. Korukanti, and B. Mettler, “Mapping 3D guidance performance using approximate optimal cost-to-go function,” in Proc. AIAA
Guidance, Navigation, and Control Conference, Honolulu, Hawaii, Aug.
2009, pp. 6017–6027.
[29] G. Scutari, F. Facchinei, L. Lampariello, and P. Song, “Parallel and
distributed methods for nonconvex optimizationpart I: Theory,” arXiv
preprint arXiv:1410.4754v2, Jan. 2016.
[30] G. Scutari, F. Facchinei, L. Lampariello, P. Song, and S. Sardellitti,
“Parallel and distributed methods for nonconvex optimizationpart II:
Applications,” arXiv preprint arXiv:1601.04059v1, Jan. 2016.
[31] C. Geng, N. Naderializadeh, A. S. Avestimehr, and S. A. Jafar, “On
the optimality of treating interference as noise,” IEEE Trans. Info. Th.,
vol. 61, no. 4, pp. 1753–1767, Apr. 2015.

14

[32] W. H. Yuan and K. Nahrstedt, “Energy-efficient soft real-time CPU
scheduling for mobile multimedia systems,” ACM SIGOPS Operating
Systems Review, vol. 37, no. 5, Dec. 2003.
[33] ——, “Energy-efficient CPU scheduling for multimedia applications,”
ACM Trans. Computer Systems, vol. 24, no. 3, pp. 292–331, Aug. 2006.
[34] T. M. Cover and J. A. Thomas, Element of Information Theory. John
Wiley & Sons, 2006.

