ArticlePDF Available

Abstract and Figures

Smart cities represent rich and dynamic environments in which a multitude of smart mobile devices (SMDs) interact among them by sharing data. SMDs require from fast access to online services, but they offer limited computing capabilities and battery lifetime. SMDs make frequent use of computation offloading, delegating computing-intensive tasks to the cloud instead of performing them locally. In such a large-scale and dynamic environment, there might be thousands of SMDs simultaneously executing processes and, therefore, competing for the allotment of remote resources. This arises the need for a smart allocation of these resources. Accordingly, this paper proposes a biased-randomized algorithm to support efficient and fast link selection. This algorithm is able to provide “real-time” near-optimal solutions that outperform solutions obtained through existing greedy heuristics. Furthermore, it overcomes the responsiveness limitations of exact optimization methods.
Content may be subject to copyright.
IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY 1
Supporting Mobile Cloud Computing in Smart
Cities via Randomized Algorithms
Daniela Mazza, Adela Pag`
es-Bernaus, Daniele Tarchi, Senior Member, IEEE, Angel Alejandro Juan Perez,
Giovanni Emanuele Corazza, Senior Member, IEEE
Abstract—Smart cities represent rich and dynamic environ-
ments in which a multitude of smart mobile devices (SMDs)
interact among them by sharing data. SMDs require from
fast access to online services, but they offer limited computing
capabilities and battery lifetime. SMDs make frequent use of
computation offloading, delegating computing-intensive tasks to
the cloud instead of performing them locally. In such a large-scale
and dynamic environment, there might be thousands of SMDs
simultaneously executing processes and, therefore, competing for
the allotment of remote resources. This arises the need for
a smart allocation of these resources. Accordingly, this paper
proposes a biased-randomized algorithm to support efficient
and fast link selection. This algorithm is able to provide ‘real-
time’ near-optimal solutions that outperform solutions obtained
through existing greedy heuristics. Furthermore, it overcomes the
responsiveness limitations of exact optimization methods.
Index Terms—Smart City, Mobile Cloud Computing, HetNets,
Computation Offloading, Biased-randomized Algorithms.
I. INTRODUCTION
ACCORDING to the flagship publication of the United
Nations World Urbanization Prospect [1], more than one
half of the world population is currently living in urban areas,
and it is expected that about 70% of global population will
be city inhabitants by 2050. At the same time, the Visual
Networking Index [2] outlines that mobile-connected devices
have already outnumbered the amount of people in the world.
Including machine-to-machine (M2M) modules, there will be
over 10 billion of such devices by 2018. Furthermore, it is
expected an 11-fold increase in the overall mobile data traffic
over the next five years.
Innovative smart city projects have been adopted in the
political agenda of many governments as a key program to
enable a vision where municipalities can use technology to
meet sustainability goals, boost local economies, and improve
urban services. These projects focus on strengthening network
infrastructures, optimizing traffic and transportation flows,
decreasing energy consumption, and supplying innovative ser-
vices [3], [4]. In addition, a green concept of technology,
intended to mitigate and reverse the effects of human activity
on the environment, cannot be neglected in a sustainable city
management [5].
Manuscript received February 19, 2016; revised May 10, 2016.
D. Mazza, D. Tarchi and G. E. Corazza are with Dept. of Electri-
cal, Electronic, and Information Eng., University of Bologna, Italy, email:
{daniela.mazza6,daniele.tarchi,giovanni.corazza}@unibo.it.
A. Pag`
es-Bernaus and A. A. Juan are with Computer Science Dept., Open
University of Catalonia - IN3, Spain, email: {apagesb,ajuanp}@unibo.it.
This work has been partially supported by the Spanish Ministry of Economy
and Competitiveness (grant TRA2013-48180-C3-P) and FEDER.
The increasing trends of both urbanization and mobile
connected people have driven the society towards the definition
of a geographic information system for smart cities that
is characterized by the presence of a multitude of smart
devices, sensors and processing nodes aiming to improve urban
services.
Smart mobile devices (SMDs) are becoming an essential
part of social life and the most effective and convenient com-
munication tool, which is not bounded in time nor place. In
recent years, the increasing request of ubiquitous services has
also led to a sharp increase in the so-called cloud computing,
where remote servers can be exploited for remote storage and
processing services. This is even more important in smart
city scenarios: due to their complexity related to the number
of users, heterogeneous services, and specific requirements,
smart cities can significantly benefit from a cloud computing
infrastructure as it can be used to improve system performance
and the battery life of user devices through decreased work
loads. Indeed, it is through information and communica-
tion technologies (ICTs) that smart cities are truly turning
smart [6], in particular by exploiting SMDs, which together
with cloud computing constitute the mobile cloud computing
(MCC) framework [7]. A third element is the wireless network,
allowing to link resource-constrained devices to centralized
large data centers located inside the cloud.
As suggested by Michael Batty, to understand cities we must
view them not simply as places in space but as systems of
networks and flows [8]. Thus, we can consider the MCC as a
framework that is the technological nervous system allowing
the networks and flows of the city to achieve a better urban
way of life. Moreover, the pervasiveness of wireless technolo-
gies has led to the presence of heterogeneous networks where
multiple types of access nodes operate simultaneously in the
same city area [9], [10].
In this context, one of the main challenges is to provide
solutions able to jointly optimize the activities of data transfer
(by exploiting wireless heterogeneous networks or HetNets),
and data processing (by delegating computing-intensive tasks
to the cloud in the MCC framework) [11], [12]. This strategy,
commonly called cyberforaging or computation offloading, al-
lows to overcome SMD limitations concerning limited battery
power and computational capacities. Moreover, it plays a key
role in a smart environment where wireless communication
is of utmost importance, particularly in mobility and traffic
control domains [13].
Although computation offloading can significantly increase
data processing capabilities of mobile users, it is challenging
2 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY
to achieve an efficient coordination among the entire set of
requesting devices. In fact, and in order to make the operation
possible, the computation offloading entails data transmission
among different devices and the cloud. If a large number of
citizens use the wireless resource to delegate computation to
the cloud, the efficiency of the access node can be severely
affected: its channel capacity has to be shared among all
the devices, leading to a reduced throughput for each user.
This can lead to a crucial increase in energy-usage and
data transmission times, representing an inefficient use of
offloading operations [14].
In this paper we present a probabilistic algorithm based
on biased-randomization techniques [15] to solve the link
selection problem. In this problem setting, the most promising
node allowing the potential increase in system efficiency has
to be selected. The biased-randomization techniques work by
introducing a biased or oriented random effect on the possible
solutions of a problem, allowing to choose the best solution
from a set of possible alternatives that are close to the global
optimal. Hence, a set of alternative solutions is generated in
short computational times.
We will compare the solution provided by our probabilistic
method with the optimal solution provided by exact methods.
However, these methods cannot be used in practice since they
require excessive computation times. Furthermore, we com-
pare our approach to a greedy algorithm [16] that implements
a selfish behavior in allocating resources to users. Such three
techniques –the proposed probabilistic algorithm, the greedy
heuristic, and the exact method– are based on the definition
of a proper objective function taking into account different
requirements and characteristics of the considered scenario.
In particular, this paper will focus on energy consumption
and time delays as key performance indicators (KPIs) for
comparing the performance of the three approaches.
The proposed randomized algorithm allows to achieve
similar solutions to those provided by the optimal method,
although in much less computing time. Moreover, the pro-
posed randomized algorithm clearly outperforms the greedy
heuristic while employing similar computing times once it
is parallelized, given that the modifications added do not
increase the computational complexity of the greedy heuristic.
These characteristics make it an efficient alternative for real-
life applications.
All in all, in this paper we propose a model establishing the
relationship among all the devices (the cloud infrastructure,
HetNet nodes, and Smart Mobile Devices), both in terms
of computing and communication. From this model, a cost
function is derived. The goal is to minimize the overall energy
consumption by selecting the best communication link for each
SMD. We show that this cost function cannot be optimally-
solved promptly, given that we have to apply it in real time.
Therefore, we present a biased-randomized algorithm that
allows to find a near-optimal solution in short computing
times. Thus, our proposed approach allows to reach near-
optimal solutions in ‘real time’. Moreover, we show that it
outclasses a greedy heuristic solution, used as a benchmark,
presented by the same authors in [16] and summarized in this
paper for completeness.
The remainder of the paper is organized as follows. We first
analyze the problem-related works in Section II, and describe
the problem and the optimization model in Section III. In
Section IV the biased randomization techniques are described.
Then, in Section V, we present the numerical results. Finally,
in Section VI, the main findings and conclusions are high-
lighted.
II. RELATED WORKS
The cyberforaging mechanism for achieving efficient com-
putation offloading for mobile cloud computing has been
discussed in the literature. In [14] a game theoretic approach
is proposed, showing that the game always admits a Nash
equilibrium. In [10] the authors propose a scheme for opti-
mizing the QoS-aware energy efficiency of the Base Stations
composing the environment (macro and small cells), and
in [17] the authors investigate an energy-efficient offloading
policy for transcoding as a service (TaaS) in a generic mobile
cloud system. The cloud system consists of a dispatcher at
the front end, and a set of service engines at the back end.
In [18] the authors exploit opportunistic communications to
facilitate information dissemination in the emerging mobile
social networks (MoSoNets). They propose three algorithms
for selecting the target set with only kusers, for minimizing
the mobile data traffic over cellular networks.
In the literature there are several works focused on the
offloading operation from the point of view of a single mobile
user, e.g., in [19], [20]. In addition, the focus of several works
concerning computation offloading is related to the devel-
opment of application models aiming to extract offloading
friendly parts of codes from existing applications [21]–[23].
In [24] the authors present a dynamic offloading algorithm
based on Lyapunov optimization for selecting the software
components to be remotely executed given an available wire-
less network connectivity.
However, none of the above explicitly considers the in-
teraction among users. This paper addresses this problem
by considering entire populations instead of each user indi-
vidually, aiming at reducing overall ‘community’ or social
costs. In contrast, in [16] the same authors proposed a utility
function model derived from economics, in which the greedy
heuristic summarized in Section IV-B was used for minimizing
the collective cost for a community in mobile clouds. Our
approach in this paper is focused on a global perspective,
corresponding to a centralized vision that is more effective
for a community. Hereby, the same application (viewed as an
entity made out of data and operation) is performed by many
users.
With respect to biased randomization techniques, probabilis-
tic algorithms –similar to the one presented here– have been
widely used to solve many combinatorial optimization prob-
lems such as sequencing and scheduling problems [25], vehicle
routing problems [26], quadratic assignment problems [27], lo-
cation and layout problems [28], covering, clustering, packing,
and partitions problems [29].
In particular, as described in [30], greedy randomized
adaptive search procedure (GRASP)-like algorithms have been
MAZZA et al.: SUPPORTING MOBILE CLOUD COMPUTING IN SMART CITIES VIA RANDOMIZED ALGORITHMS 3
Fig. 1. The reference scenario with multiple SMDs in a multi-RAT environ-
ment.
applied to solve a wide set of problems, among others:
scheduling, routing, logic, partitioning, location, graph the-
ory, assignment, manufacturing, transportation, telecommuni-
cations, biology and related fields, automatic drawing, power
systems, and very large scale integration (VLSI) design.
Regarding the use of biased, or skewed, randomization, the
SR-GCWS-CS (SimoRouting Generalized Clarke and Wrights
Savings with Cache and Splitting) algorithm is proposed
in [15] for solving the capacitated vehicle routing problem. It
combines a biased randomization process with a base heuristic.
A geometric distribution is used to randomize the constructive
process while keeping the logic behind the heuristic. Similarly,
in [31] the authors developed the RandSHARP algorithm for
solving the arc routing problem. This algorithm combines
a savings-based heuristic for the arc routing problem with
a biased randomization process also guided by a geometric
distribution. Likewise, in [32], the authors propose the Iterated
Local Search Efficient, Simple, and Parameter-Free (ILS-ESP)
algorithm for solving the permutation flow-Shop problem.
The ILS-ESP uses an iterated local search framework and
combines the Nawaz, Enscore, and Ham (NEH) heuristic [33]
with a biased randomization process guided by a descending
triangular distribution.
III. PROBLEM DESCRIPTION AND OPTIMIZATION MODEL
In this Section, the optimization problem is introduced. The
focus is on an urban area with a pervasive wireless coverage,
where several SMDs require cloud services. Each SMD can
connect to the cloud after selecting one of the available HetNet
radio access technologies (RATs), as shown in Fig. 1.
The SMDs aim at delegating storage and computing tasks
to overcome their resource constraints and to decrease com-
putational times. Beyond data storage, that is one of the most
common activities transferred to remote cloud infrastructures,
it is now possible to distribute the whole computational load,
or just a fraction, to a remote unit.
Multiple radio access technologies, such as IEEE 802.11
WLANs, mobile WiMAX, HSPA+ and LTE, are being inte-
grated to create a heterogeneous wireless network. Different
strategies can be carried out in order to increase the network
capacity, such as deployment of relays, distributed antennas,
and small cellular base stations (e.g., microcells, picocells,
femtocells). These deployments have occurred both indoors
(e.g., in residential homes and offices) and outdoors (e.g., in
amusement parks or traffic intersections).
Such network deployment is typically composed of a mix
of low-power nodes underlying the conventional homogeneous
macrocell network. By deploying additional small cells within
the local-area range and bringing the network closer to the
users, overall network capacities can be significantly boosted
through a better reuse of the spatial resources.
Inspired by the attractive features and the potential advan-
tages of the HetNets, their development has gained much
momentum in the wireless industry and research communities
in recent years.
The distributed smart city scenario is also an environment
where the SMDs can choose and exploit different available
RATs for transmitting the application data and for offloading
towards the cloud. However, the application can be com-
puted locally by the requesting SMD if this operation is not
convenient. The proposed model focuses on direct connec-
tions between a RAT and multiple SMDs, considering the
availability of direct interaction in a pervasive environment
(note that multi-hops links are not taken into account in
this paper). Furthermore, we consider energy savings from
the user-perspective, differently from other application-focused
works, which include the energy consumed by the cloud when
sending the resultant data to the SMDs [34]. In the following,
the entities involved in this scenario are introduced.
1) Cloud: The cloud infrastructure Ccc refers to the pres-
ence of a remote cloud computing infrastructure with a huge
amount of storage space and computing power. It allows the
citizens to interact remotely, e.g., for accessing open data
delivered by the public administration. The cloud infrastruc-
ture is often used for delivering the computing processes to
remote clusters, leading to a higher computing power, and/or
for storing big amounts of data. The centralized cloud allows
to reduce the computational time by exploiting powerful
processing units, but it could suffer from the distribution
latency –due to the data transfer from the users to the cloud
and vice versa–, the congestion –due to the multiple users
exploitation–, and the resiliency –due to the presence of a
single performing infrastructure leading to the single-point-
of-failure (SPOF) issue.
The cloud entity Ccc is characterized by its own compu-
tational speed, fcc. The storage availability of Ccc can be
considered infinite, thus it does not represent a constraint in
the interaction with the SMDs. Hence, it is possible to write
that the Ccc is a function of fcc:
Ccc =Ccc(fcc)(1)
2) HetNet nodes: The wireless HetNet infrastructure is
composed of several RAT nodes, characterized by different
features:
BW: the nominal bandwidth of a certain communication
technology that is available for the SMDs;
4 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY
n: the number of devices connected to the RAT node;
posRAT (cx, cy): the spatial position of the RAT node,
where cxand cyrepresent the coordinates.
Thus, the generic RAT is a function depending on the above
features:
RAT =RAT(BW, n, posRAT(cx, cy)) (2)
3) Applications: Even if all the SMDs can simultaneously
request the computation offloading of one or more applica-
tions, we focus on a scenario where each SMD request is
restricted to a single application that is characterized by the
number of operations to be executed, O, and the amount
of data to be exchanged, D. We neglect other parameters
usually considered in more application-focused studies (e.g.,
Mobibyte [23]) because our study is mainly based on the
communication links optimization, aside from the application
partitioning. This simplification does not prevent the general-
ization of the system, since the general case in which a user
requests several applications at a given time can be seen as
aggregation of several single-application requests. Hence, it is
possible to express a generic application App as a function of
Oand D:App =App(O, D)(3)
4) SMDs: Each SMD is characterized by the following
features which influence the performance of the computation
offloading:
Ptr: the power consumed by the SMD to transmit data to
the RAT node
Pl: the power consumed by the SMD for local computa-
tion
Pid: the power consumed by the SMD in waiting mode
while the computation is performed in the cloud
fmd: the speed to perform the computation locally
SNR: the signal to noise ratio at the receiver side of the
link between the SMD and the selected RAT node
posmd(cx, cy): the spatial position of the SMD, where cx
and cyrepresent the coordinates.
Thus, for a generic smart mobile device SMD we can write:
SMD =SMD(Ptr, Pl, Pid, fmd,SNR, posmd(cx, cy)) (4)
Given these entities, with the respective features, and after
having defined as di,j the distance between the i-th RAT and
the j-th SMD, we can resort to the Shannon formula for
evaluating the throughput Si,j of the link between the i-th RAT
and the j-th SMD, where SNRjis a reference Signal to Noise
Ratio (SNR) value at the receiver side and kis an attenuation
factor due to the signal propagation:
di,j =|posRAT,i(cx, cy)posmd,j(cx, cy)|(5)
Si,j =BWi
ni
log21 + SNRjekdi,j (6)
Among different parameters that can affect the system per-
formance, we will focus on the energy consumption, which
is very important when considering a scenario with mobile
devices. The energy consumed by the j-th SMD is composed
by the energy spent in transmitting the application data, the
energy consumed in idle –while the application is computed
on the cloud server–, and the energy consumed for the local
computation.
Considering an overall number of Ndevices and a total
number of MRAT nodes, the energy spent by the j-th SMD
for offloading through the i-th RAT is:
Ei,j =Ptr j D
Si,j +Pid j O
fcc
i= 1,2,...,M;j= 1,2,...,N.
(7)
In case of a local computation at the j-th SMD, its con-
sumed energy is:
E0,j =Pl j O
fmdj j= 1,2,...,N;(8)
where the index 0 stands for the local computation.
In classical approaches, the SMD computing an application
App has to evaluate the computation offloading benefit and
select the most convenient RAT aiming at minimizing the
energy consumption of the user requesting the service. This
decision is ‘selfish’ or greedy in the sense that it does not take
into account the current and future needs of other users.
In contrast to this, we propose to optimize the global
energy consumption, assuming an environment where the
devices of the set N={1,2,··· , j, ··· ,N}are requesting
to offload an application using the nodes of set M=
{0,1,2,··· , i, ··· ,M}, where the 0-th element represents the
fictitious node related to the local computation. By defining
xi,j , as a binary variable that stands for the presence of a
communication link between the SMDjand the RATi, and
yj, as a binary variable accounting for the local computation
performed by SMDj, it is possible to write the energy con-
sumed by SMDjwhen offloading through the RATiin (7), by
exploiting (6), as:
Ei,j =xi,j Ptr j D
BWi
nilog2{1 + SNRjekdi,j }+Pid j O
fcc !
+yjPl j O
fmdj (9)
where:
xi,j =(1if SMDjis assigned to RATi
0otherwise ,
yj=(1if SMDjcomputes App locally
0otherwise ,
and niis the number of SMDs connected to RATi, defined as
ni=X
l∈N
xi,l.
Rearranging the constant terms and the variable terms it is
possible to write:
Ei,j =xi,j (Ktr
i,j X
l∈N
xi,l +Kid
j)+yjE0,j (10)
MAZZA et al.: SUPPORTING MOBILE CLOUD COMPUTING IN SMART CITIES VIA RANDOMIZED ALGORITHMS 5
where the two constants are
Ktr
i,j =Ptr j D
BWilog2{1 + SNRjekdi,j }
and
Kid
j=Pid j O
fcc
.
Therefore, the optimization problem can be expressed as:
min
x,y Z=X
i∈M
j∈N
xi,j (Ktr
i,j X
l∈N
xi,l +Kid
j)+X
j∈N
yjE0,j
(11a)
s.t. X
i∈M
xi,j +yj= 1 j∈ N (11b)
xi,j , yj∈ {0,1}i∈ M j∈ N (11c)
The objective function (11a) minimizes the overall energy
spent, while ensuring that all devices are either assigned to a
RAT or leaving the computations to be done locally (11b).
IV. OPTIMAL AND HEURISTIC SOLUTIONS
In this section we present different methods to find an
optimal or near-optimal solution to the previously described
optimization problem. First, we use an off-the-shelf commer-
cial solver able to provide optimal solutions. However, for
real large-size instances it requires unsuitable computation
times. Moreover, since we take into account mobile devices
whose position can change, the objective function has to be
solved repeatedly. Given that the selection of the RAT by
the SMDs has to be done in a very short time, we propose
to use a fast probabilistic procedure. Our algorithm makes
use of biased (oriented) randomization, and it allows us to
obtain near-optimal solutions in real-time, which represent a
significant improvement over the previously proposed greedy
algorithm [16] summarized below.
In order to evaluate the effectiveness of our approach, the
performance is compared with the optimal solution. Note that
the global optimum can only be found ex-post, i.e., once
all the SMDs requests have been set. Thus, since the global
optimization needs to know the position and the requests of all
the SMDs, it cannot be used for online allocation of resources.
This approach assumes that all users’ requests are processed
at the same time –or, alternatively, that the allocation decision
is postponed until all requests have been received–, which in
practice might require customers to wait a few seconds for
their requests to be served.
In contrast, the heuristic method makes use of a ‘greedy’
behavior, consisting on the selection of the ’most promising’
next step from a list of potential constructive movements [16].
This allows to find a good solution in real time while each
agent tends to maximize his/her individual utility function.
The biased randomized method takes into account a solution
from a collective or social point of view by simultaneously
considering a set of users’ demands altogether instead of one
user’s demand at a time.
A. Optimal Solution
The mathematical model (11) can be seen as a particular
case of the quadratic semi-assignment problem (QSAP) which
is NP-hard [35]. A first approach to find the solution is to
use the global optimizer Branch-And-Reduce Optimization
Navigator (BARON) [36]. This solver combines constraint
propagation, interval analysis, and duality with advanced
branch-and-bound optimization concepts.
Note that the QSAP solution not only needs to know the
position of all the SMDs requests before assigning them to
an antenna, but it also takes longer time than available to
quickly serve SMD requests, as shown in Section V. The
computational difficulty for solving the QSAP comes from
the fact that the objective function is quadratic, which justifies
the use of fast heuristic methods. Therefore the optimal solver
is only taken as a reference to compare heuristic procedures
(which can do the assignment dynamically or following a
wait-and-go approach) with an optimal solution from the
performance point of view.
B. The Greedy Heuristic
A heuristic algorithm can be used to solve the link selection
problem following a greedy behavior [16]. If the offloading
operation is advantageous with respect to the local compu-
tation, the link selection scheme allows to select the ‘most
promising’ next node from the list of the available ones. As
explained in [16], this list is completed for each SMD, which
sorts each possible access node based on a self calculated
objective function. Since the requests of the SMDs appear
in time sequence, the cost function is evaluated on the basis
of the current situation, i.e., considering only the previous
requests. If the offloading cost is lower than the cost for the
local computation, the SMD will connect to the node which
minimizes the cost function, otherwise it will compute the
application locally.
The selection of the i-th node for connecting the j-th SMD
modifies the values of the throughput Si,k and consequently
the energy Ei,k for the SMDs already connected with the
same node, i.e., for k= 1,2,...,j 1. Thus, this strategy,
reported in Algorithm 1, does not take into account any
forecast of future connections, leading to a feasible but sub-
optimal solution.
C. Biased-randomized Algorithm
By exploiting biased-randomization techniques [15], the
proposed probabilistic algorithm is able to find near-optimal
solutions in ‘real time’ a few seconds or even milliseconds if
parallel strategies are employed. Thus, this approach outper-
forms by far the solution provided by the greedy approach,
while approaching the optimal solution in significant lower
time than the optimal method. The main idea behind the
proposed approach is to introduce a slight modification in
the greedy constructive behavior. Hereby the heuristic logic is
maintained but a certain degree of randomness is introduced.
This random effect is generated by the use of a skewed prob-
ability distribution: at each step of the constructive process, a
6 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY
Algorithm 1 Greedy Link Selection Heuristic
Inputs:
M={0,1,2,··· , M }// Mnumber of RAT nodes
N={1,2,··· , N }// Nnumber of SMDs
RATi=RAT(BWi, ni, posRAT,i(cx, cy)) i M \ {0}
App =App(O, D)
Output:
X= (xi,j )
Y= (yj)
Initialization :
RATi.n 0i∈ M \ {0}
xi,j 0i∈ M ∀j∈ N
yj0j∈ N
for j= 1 to Ndo
SMDj=SMD(Ptr,j, Pl,j, Pid,j, fmd,j,SNRj,posmd,j(cx, cy))
RATi.n RATi.n + 1 i∈ M \ {0}
calculate Ei,j i∈ M
choose xi,j yjs.t. Ei,j = min{El,j;l∈ M}
RATl.n RATl.n 1l∈ M s.t. xl,j 6= 1
Xxi,j
Yyj
end for
selection probability is assigned to each potential movement,
whereby the probability is higher for the more promising
movements.
The use of biased-randomization significantly improves the
quality of the solutions generated by the original heuristic
in different dimensions when considering social or collective
performance, reaching a solution closer to the optimal without
needing to know all SMD positions.
Moreover, it is important to note that if a uniform prob-
ability distribution would be used instead of a skewed one,
this improvement would rarely occur since the logic behind
the constructive heuristic would be destroyed and the process
would be random but not correctly oriented.
To avoid losing the logic behind the heuristic, GRASP
meta-heuristics [37] propose the consideration of a restricted
list of candidates –i.e., a sub-list including just some of the
most promising movements, corresponding to those at the top
of the list–, and then apply a uniform randomization to the
order in which the elements of that restricted list are selected.
In this way, a deterministic procedure is transformed into
a randomized algorithm –which can be encapsulated into a
multi-start process–, while most of the logic or common sense
behind the original heuristic is still respected.
The proposed biased-randomization approach goes one step
ahead. Instead of restricting the list of candidates, different
selection probabilities are assigned to each potential movement
in the sorted list. That is, elements at the top of the list have a
higher probability of being selected than those at the bottom,
whereas all elements are potentially eligible. This allows not
only to avoid the problem of selecting the proper size of the
restricted list, but we can also guarantee that the selection-
probabilities are proportional to the position of each element
in the list.
Fig. 2. Scheme of the biased-randomization approach.
Each time the randomized algorithm is executed a new
probabilistic solution is obtained (Fig. 2). Some of these
solutions allow to improve those obtained through the greedy
heuristic. Moreover, the proposed approach allows to achieve
different solutions depending on some of the inputs of the
model (i.e., throughput, energy, latency, etc.).
Focusing on the selected problem, the biased-randomization
algorithm for the link selection consists in a skewed criteria
based on the objective function defined in (11), that has been
also used for the greedy heuristic.
When there is a new SMD request, the cost function Ei,j
is evaluated for every possible RAT node (also considering
the fictitious node 0related to the local computation). The
obtained values are sorted in such a way that the probabilities
of being selected depend not only on the cost function Ei,j, but
also on the distances di,j of the device from the RAT nodes and
on the number of devices nithat potentially can be connected
to each RAT node.
To improve the link selection, the criteria for sorting the
choice list takes into account the product di,j·Ei,j, with i∈ M,
instead of Ei,j. The value of d0,j is adjusted empirically and
depends on the overall number of SMDs which are expected
to interact in the system. This strategy is reported in Algo-
rithm 2. Note that the modifications included in Algorithm 2
do not increase the computational complexity with respect to
Algorithm 1.
V. NUMERICAL RESULTS
In this Section a realistic test case is evaluated in order
to compare the performance of the different algorithms. A
deployment area equal to 1000×1000 m2is considered, where
one LTE eNodeB with a bandwidth of 100 MHz is positioned
at point (500,500) and three Wi-Fi access points (AP) with
a bandwidth equal to 22 MHz are positioned at point (0,0),
(500,999) and (1000,0). An attenuation coefficient kfor the
propagation equal to 103has been considered. Furthermore,
similarly to [16], the capacity constraints on the antennas is
not considered, assuming there is no limitation on the number
of SMD per each eNodeB/AP.
The location coordinates of each SMD in the deployment
area are sampled from a uniform distribution. In particular,
MAZZA et al.: SUPPORTING MOBILE CLOUD COMPUTING IN SMART CITIES VIA RANDOMIZED ALGORITHMS 7
Algorithm 2 Biased-randomization Algorithm
Inputs:
M={0,1,2,··· , M }// Mnumber of RAT nodes
N={1,2,··· , N }// Nnumber of SMDs
RATi=RAT(BWi, ni, posRAT,i(cx, cy)) i M \ {0}
App =App(O, D)
Output:
X= (xi,j )
Y= (yj)
Initialization :
d0,j d0
RATi.n nii∈ M \ {0}
xi,j 0i∈ M ∀j∈ N
yj0j∈ N
for j= 1 to Ndo
SMDj=SMD(Ptr,j, Pl,j, Pid,j, fmd,j,SNRj,posmd,j(cx, cy))
calculate di,j ;Ei,j i∈ M
sort di,j Ei,j ascending i∈ M
choose xi,j yjs.t. Ea,j =geoinv(Ei,j;i∈ M)
Xxi,j
Yyj
end for
we have chosen a controlled random number generation of
the Mersenne Twister type and a seed equal to 1 (this pseudo-
random number generator is implemented in Matlab). Fig. 3
represents the region assuming 500 and 5000 SMDs, respec-
tively.
The parameters fmd,Pid,Ptr,Pl, and SNR depend on the
selected mobile device. We considered a HP iPAQ PDA with a
400 MHz Intel XScale processor (fmd equal to 400 MHz) and
the following values: Plequal to 0.9 W, Pid equal to 0.3, Ptr
equal to 1.3 W, and SNR equal to 30 dB. For the cloud server
we suppose a computation speed fcs equal to 106MHz [20].
We have chosen an application which is accomplished through
a number of operation Oequal to 107and, if offloaded, needs
a data transfer Dequal to 104bits.
The algorithms are compared in terms of throughput, energy
and time needed for accomplishing the application. The no-
connection configuration (i.e., all the SMDs compute locally)
and the nearest-node configuration (i.e., each SMD is con-
nected to the closest RAT independently from the RATs
and SMDs characteristics) are also taken into account for
comparison purposes. However, we choose to compare all the
values with those obtained with the greedy algorithm as ref-
erence, due to its strict relationship with the proposed biased-
randomized approach. The throughput, the energy consumed
by the SMDs, and the time employed for accomplishing the
application are evaluated and observed for each configuration.
Also, different scenarios are considered, each of them involv-
ing an increasing number of SMDs: 500, 1000, 2000, and
5000.
Tabs. I, II, and III show, respectively, the results related
to the throughput, the energy, and the time. The ex-post
solution has been computed with Baron under the Neos server
(http://www.neos-server.org). The model was implemented
with the mathematical modeling language GAMS. The other
methods were implemented in Matlab.
The results show that the biased-randomized algorithm
clearly outperforms the link selection configuration obtained
with the greedy heuristic. Improvement of 2.24% in through-
put, and reductions of 14.30% in energy consumption, and
0.42% in computational time can be observed. Moreover, the
average energy and time values provided by the randomized
algorithm are similar to the optimal / near-optimal solutions
provided by Baron, which has been stopped after 1000 seconds
of computational time. This demonstrates that our probabilistic
algorithm is able to provide near-optimal solutions –similar to
the ones provided by the exact solver– in much lower com-
putation times. The higher improvement in terms of energy is
expected, since the objective function in (11a) is designed for
minimizing the energy consumption.
Tab. IV shows indeed the time needed by the algorithms
for achieving a stable solution of the link selection problem;
such time is not directly related to the time needed for the
application computation in Tab. III, while it is more related
to the ability of the algorithms to solve the problem in a
fast way and, hence, its exploitation in a real-life dynamic
scenario. On the one hand, it has to be noted that the exact
solver requires computation times that cannot be employed
in real-life practice. On the other hand, the computing time
employed by the biased-randomized algorithm is below a few
seconds, which is still a little higher than the one employed by
the greedy algorithm. This is due to the fact that the biased-
randomized algorithm is run several times in a multi-start
process. Nevertheless, it is still an acceptable computing time.
Moreover, if necessary the biased-randomized algorithm could
be easily parallelized –by simply running each iteration of the
multi-start process in a different core or computer–, so its
computing time would be the same as the one employed by
the greedy algorithm –i.e., in the order of milliseconds.
The results are visually compared in Figs. 4 and 5a, where
we can see that the performance of the biased-randomized
algorithm is very similar in terms of average throughput, com-
pared to Baron’s ex-post configuration. The greedy heuristic is
clearly outperformed. This means that the capacity of the RAT
nodes is well-exploited in the biased-randomized algorithm. In
Fig. 4 the average throughput values are shown in a different
scale to make possible the comparison of the three algorithms.
Considering the average energy consumed by one SMD
to perform the application, Fig. 5b shows that the biased-
randomized algorithm clearly outperforms the greedy heuris-
tic. The same observation can be inferred from Fig. 5c for the
average time that a device needs to accomplish the application.
Both the average energy and time values are very close to
the respective results of Baron. Thus, the biased-randomized
algorithm can be exploited by the SMDs to reach near-optimal
configurations in real time, while providing solutions that tend
to minimize the overall energy consumption. This is useful
for offloading applications which need a fast link selection
decision, for example when the users are moving and the
configuration must be updated very often.
Fig. 6 and Fig. 7 report the different configurations (of the
devices placed in the observed area) for an overall number
8 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY
0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
LTE (500,500)
PA (500,999)
PA (0,0) PA (1000,0)
0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
AP (0,0) AP (0,1000)
LTE (500,500)
AP (500,999)
Fig. 3. Scenarios in case of 500 and 5000 SMDs, respectively, three Wi-Fi access points, and one LTE eNodeB.
TABLE I
THROUGHPUT [MBPS]
N SMDs 500 1000 2000 5000
Avg. Dev. [%] Avg. Dev. [%] Avg. Dev. [%] Avg. Dev. [%]
Nearest Node 1.5693 -50.26 0.7847 -50.33 0.3926 -50.36 0.1570 -50.46
Greedy 3.1551 ref. 1.5799 ref. 0.7909 ref. 0.3169 ref.
Biased Rand. 3.1699 +0.47 1.5840 +0.26 0.8004 +1.20 0.3240 +2.24
Baron 3.1707 +0.50 1.5844 +0.29 0.7999 +1.14 0.3240 +2.22
TABLE II
ENERGY [W*S]
N SMDs 500 1000 2000 5000
Avg. Dev. [%] Avg. Dev. [%] Avg. Dev. [%] Avg. Dev. [%]
Local 22500.0000 +445.26 22500.0000 +173.19 22500.0000 +36.80 22500.0000 -2.17
Nearest Node 4609.3141 +11.70 9819.6194 +19.23 18832.6714 +14.50 46060.3241 +100.26
Greedy 4126.5039 ref. 8236.0653 ref. 16447.8885 ref. 22999.8480 ref.
Biased Rand. 4106.4181 -0.49 8239.5161 +0.04 14848.2169 -9.73 19711.6979 -14.30
Baron 4104.4986 -0.53 8210.9327 -0.31 14716.6647 -10.53 19347.2418 -15.88
TABLE III
TIME FOR APPLICATION COMPUTATION [S]
N SMDs 500 1000 2000 5000
Avg. Dev. [%] Avg. Dev. [%] Avg. Dev. [%] Avg. Dev. [%]
Local 25000.0000 +685.69 25000.0000 +294.13 25000.0000 +97.47 25000.0000 +19.01
Nearest Node 3553.3186 +11.67 7561.2457 +19.20 14494.3626 +14.49 35438.7108 +68.70
Greedy 3181.9261 ref. 6343.1271 ref. 12659.9142 ref. 21007.3416 ref.
Biased Rand. 3166.4755 -0.49 6345.7816 +0.04 14003.7438 +10.61 20918.6292 -0.42
Baron 3164.9989 -0.53 6323.7944 -0.30 13745.0152 +8.57 20432.3306 -2.74
TABLE IV
TIME FOR COMPLETING THE ALGORITHMS [S]
N SMDs 500 1000 2000 5000
Greedy 0.41 0.85 1.65 4.07
Biased Rand. 3.34 6.64 11.74 28.44
Baron stopped after 1000 sec.
MAZZA et al.: SUPPORTING MOBILE CLOUD COMPUTING IN SMART CITIES VIA RANDOMIZED ALGORITHMS 9
996 997 998 999 1000 1001 1002 1003 1004
Mobile Devices [n]
1.579
1.58
1.581
1.582
1.583
1.584
1.585
1.586
Throughput [Mbps]
Average Throughput
Greedy Algorithm
Biased Randomization
Baron
(a) Throughput for 1000 SMDs
1996 1997 1998 1999 2000 2001 2002 2003 2004
Mobile Devices [n]
0.79
0.792
0.794
0.796
0.798
0.8
0.802
Throughput [Mbps]
Average Throughput
Greedy Algorithm
Biased Randomization
Baron
(b) Throughput for 2000 SMDs
4996 4997 4998 4999 5000 5001 5002 5003 5004
Mobile Devices [n]
0.316
0.317
0.318
0.319
0.32
0.321
0.322
0.323
0.324
0.325
0.326
Throughput [Mbps]
Average Throughput
Greedy Algorithm
Biased Randomization
Baron
(c) Throughput for 5000 SMDs
Fig. 4. Comparison of the performance in terms of throughput for different SMDs number.
500 1000 1500 2000 2500 3000 3500 4000 4500 5000
Mobile Devices [n]
0
0.5
1
1.5
2
2.5
3
3.5
Throughput [Mbps]
Average Throughput
Nearest Node
Greedy Algorithm
Biased Randomization
Baron
(a) Throughput
500 1000 1500 2000 2500 3000 3500 4000 4500 5000
Mobile Devices [n]
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Energy [W*s]
×104Average Energy
Local
Nearest Node
Greedy Algorithm
Biased Randomization
Baron
(b) Energy
500 1000 1500 2000 2500 3000 3500 4000 4500 5000
Mobile Devices [n]
0
0.5
1
1.5
2
2.5
3
3.5
4
Time [s]
×104Average Time
Local
Nearest Node
Greedy Algorithm
Biased Randomization
Baron
(c) Latency
Fig. 5. Performance in terms of throughput, energy consumption and latency for a variable number of devices
of SMDs equal to 500 and 5000, respectively. Comparing
these configurations, we can note that the case referring to
the biased-randomized algorithm is very similar to the ex-post
optimal solution, where the SMDs connected to the same RAT
are clustered. In particular, in these figures the nodes represent
SMDs connected to each eNodeB/AP of the same gray or,
alternatively, performing local computation, represented as
black dots. It is possible also to highlight that the biased-
randomized approach allows to adapt the link selection based
on the node density, while the greedy approaches only take into
account the nodes density in a limited way. This confirms the
‘socially-aware’ optimization behavior of the proposed biased-
randomized approach.
VI. CONCLUSION
In this paper we have presented different strategies for an
efficient link selection in pervasive wireless environments. In
particular, we have proposed a novel randomized algorithm
that allows to consider a more global point of view –instead
of just a greedy or individual one– during the real-time
resource allocation. Thus, the mobile communication system
is managed in a cooperative way, considering the QoS of
the entire population of mobile users. This vision could be
adopted for the provision of services in a smart city, improving
performance and well-being of the community through a social
use of HetNets and MCC. Furthermore, it can be seen as an
enhancing method from an eco-friendly perspective, since it
aims to save SMD’s energy. Our approach is based on the use
of biased-randomization techniques, which have been used in
the past to solve similar combinatorial optimization problems
in the fields of logistics, transportation, and production. This
work extends their use to the field of smart cities and mobile
telecommunications. Some numerical results contribute to
illustrate the potential of the proposed approach.
REFERENCES
[1] World Urbanization Prospects - Population Division - United Nations.
[Online]. Available: http://esa.un.org/unpd/wup/
[2] Cloud and Mobile Network Traffic Forecast - VNI -
Cisco. [Online]. Available: http://www.cisco.com/c/en/us/solutions/
service-provider/visual-networking-index-vni/
[3] C. Manville, G. Cochrane, J. Cave, J. Millard, J. K. Pederson,
R. K. Thaarup, A. Liebe, M. Wissner, R. Massink, and B. Kotterink,
“Mapping smart cities in the EU,” European Parliament, Tech. Rep.,
Jan. 2014. [Online]. Available: http://www.europarl.europa.eu/RegData/
etudes/etudes/join/2014/507480/IPOL-ITRE ET(2014)507480 EN.pdf
[4] Scientific American, Ed., Designing the urban future: Smart Cities.
New York, USA: Scientific American, 2014.
[5] C. Zhu, V. Leung, L. Shu, and E. Ngai, “Green Internet of Things for
Smart World,IEEE Access, no. 3, pp. 2151–2162, November 2015.
[6] M. Dohler, C. Ratti, J. Paraszczak, and G. Falconer, “Smart cities [guest
editorial],” IEEE Commun. Mag., vol. 51, no. 6, pp. 70–71, Jun. 2013.
[7] H. T. Dinh, C. Lee, D. Niyato, and P. Wang, “A survey of mobile
cloud computing: architecture, applications, and approaches,” Wireless
Communications and Mobile Computing, vol. 13, no. 18, pp. 1587–1611,
Dec. 2013.
[8] B. Batty, The New Science of Cities. Cambridge, MA, USA: The MIT
Press, 2013.
10 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY
0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(a) Nearest Node Configuration 0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(b) Greedy Heuristic Configuration
0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(c) Biased-randomized Configuration 0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(d) Ex-post Optimal Configuration
Fig. 6. Link selection in case of 500 SMDs. Each gray indicates that the SMD is connected to the RAT marked with the same gray.
0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(a) Nearest Node Configuration 0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(b) Greedy Heuristic Configuration
0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(c) Biased-randomized Configuration 0 100 200 300 400 500 600 700 800 900 1000
0
100
200
300
400
500
600
700
800
900
1000
(d) Ex-post Optimal Configuration
Fig. 7. Link selection in case of 5000 SMDs. Each gray indicates that the SMD is connected to the RAT marked with the same gray, whereas the black
SMDs are computing the application locally.
MAZZA et al.: SUPPORTING MOBILE CLOUD COMPUTING IN SMART CITIES VIA RANDOMIZED ALGORITHMS 11
[9] R. Hu, Y. Qian, S. Kota, and G. Giambene, “Hetnets - a new paradigm
for increasing cellular capacity and coverage [guest editorial],IEEE
Wireless Communications, vol. 18, no. 3, pp. 8–9, Jun. 2011.
[10] L. Zhou, C. Zhu, R. Ruby, X. Wang, X. Ji, S. Wang, and J. Wei, “QoS-
aware energy-efficient resource allocation in OFDM-based heterogenous
cellular networks,” International Journal of Communication Systems,
2015.
[11] L. Lei, Z. Zhong, K. Zheng, J. Chen, and H. Meng, “Challenges on
wireless heterogeneous networks for mobile cloud computing,” IEEE
Wireless Commun., vol. 20, no. 3, pp. 34–44, Jun. 2013.
[12] A. U. R. Khan, M. Othman, S. A. Madani, and S. U. Khan, “A survey
of mobile cloud computing application models,” IEEE Communications
Surveys and Tutorials, vol. 16, no. 1, pp. 393–413, 2014.
[13] S. Barbarossa, S. Sardellitti, and P. Di Lorenzo, “Communicating while
computing: Distributed mobile cloud computing over 5G heterogeneous
networks,” IEEE Signal Processing Magazine, vol. 31, no. 6, pp. 45–55,
Nov. 2014.
[14] X. Chen, “Decentralized computation offloading game for mobile cloud
computing,” IEEE Transactions on Parallel and Distributed Systems,
vol. 26, no. 4, pp. 974–983, Apr. 2015.
[15] A. A. Juan, J. Faulin, J. Jorba, D. Riera, D. Masip, and B. Barrios,
“On the use of Monte Carlo simulation, cache and splitting techniques
to improve the Clarke and Wright savings heuristics,Journal of the
Operational Research Society, vol. 62, no. 6, pp. 1085–1097, Jun. 2011.
[16] D. Mazza, D. Tarchi, and G. E. Corazza, “A user-satisfaction based
offloading technique for smart city applications,” in Proc. of IEEE
Globecom 2014, Austin, TX, USA, Dec 2014.
[17] W. Zhang, Y. Wen, and H.-H. Chen, “Toward transcoding as a service:
energy-efficient offloading policy for green mobile cloud,IEEE Net-
work, vol. 28, no. 6, pp. 67–73, Nov. 2014.
[18] B. Han, P. Hui, V. S. A. Kumar, M. V. Marathe, J. Shao, and A. Srini-
vasan, “Mobile data offloading through opportunistic communications
and social participation,” IEEE Transactions on Mobile Computing,
vol. 11, no. 5, pp. 821–834, May 2012.
[19] F. Liu, P. Shu, H. Jin, L. Ding, J. Yu, D. Niu, and B. Li, “Gearing
resource-poor mobile devices with powerful clouds: architectures, chal-
lenges, and applications,” IEEE Wireless Communications, vol. 20, no. 3,
pp. 14–22, Jun. 2013.
[20] K. Kumar and Y.-H. Lu, “Cloud computing for mobile users: Can
offloading computation save energy?” Computer, vol. 43, no. 4, pp. 51–
56, Apr. 2010.
[21] E. Cuervo, A. Balasubramanian, D.-k. Cho, A. Wolman, S. Saroiu,
R. Chandra, and P. Bahl, “Maui: Making smartphones last longer with
code offload,” in Proc. of MobiSys ’10, San Francisco, CA, USA, Jun.
2010, pp. 49–62.
[22] B.-G. Chun, S. Ihm, P. Maniatis, M. Naik, and A. Patti, “CloneCloud:
Elastic execution between mobile device and cloud,” in Proc. of EuroSys
’11, Salzburg, Austria, Apr. 2011, pp. 301–314.
[23] A. Ur, R. Khan, M. Othman, A. N. Khan, S. Akhtar, A. Sajjad,
A. Madani, A. R. Khan, A. N. Khan, M. Othman, S. A. Abid, and S. A.
Madani, “MobiByte: An Application Development Model for Mobile
Cloud Computing,” Journal of Grid Computing, vol. 13, no. 4, pp. 605–
628, 2015.
[24] D. Huang, P. Wang, and D. Niyato, “A dynamic offloading algorithm
for mobile computing,” IEEE Transactions on Wireless Communications,
vol. 11, no. 6, pp. 1991–1995, Jun. 2012.
[25] M. L. Pinedo, Scheduling: Theory, Algorithms, and Systems, 3rd ed.
Springer Publishing Company, Incorporated, 2008.
[26] J. Caceres-Cruz, P. Arias, D. Guimarans, D. Riera, and A. A. Juan, “Rich
vehicle routing problem: Survey,” ACM Comput. Surv., vol. 47, no. 2,
pp. 1–32, Jan. 2015.
[27] E. M. Loiola, N. M. M. de Abreu, P. O. Boaventura-Netto, P. Hahn, and
T. Querido, “A survey for the quadratic assignment problem,” European
Journal of Operational Research, vol. 176, no. 2, pp. 657 – 690, Jan.
2007.
[28] N. Mladenovi´
c, J. Brimberg, P. Hansen, and J. A. Moreno-P´
erez, “The
p-median problem: A survey of metaheuristic approaches,European
Journal of Operational Research, vol. 179, no. 3, pp. 927–939, Jun.
2007.
[29] A. A. Chaves and L. A. N. Lorena, “Clustering search algorithm for
the capacitated centered clustering problem,” Computers & Operations
Research, vol. 37, no. 3, pp. 552–558, Mar. 2010.
[30] P. Festa and M. G. C. Resende, “An annotated bibliography of GRASP–
part ii: Applications,” International Transactions in Operational Re-
search, vol. 16, no. 2, pp. 131–172, Mar. 2009.
[31] S. Gonz´
alez-Mart´
ın, A. A. Juan, D. Riera, Q. Castell`
a, R. Mu˜
noz,
and A. P´
erez, “Development and assessment of the SHARP and Rand-
SHARP algorithms for the arc routing problem,” AI Communications,
vol. 25, no. 2, pp. 173–189, Apr. 2012.
[32] A. A. Juan, H. R. Lourenco, M. Mateo, R. Luo, and Q. Castella, “Using
iterated local search for solving the flow-shop problem: Parallelization,
parametrization, and randomization issues,” International Transactions
in Operational Research, vol. 21, no. 1, pp. 103–126, Jan. 2014.
[33] M. Nawaz, E. E. Enscore Jr., and I. Ham, “A heuristic algorithm for
the m-machine, n-job flow-shop sequencing problem,” Omega, vol. 11,
no. 1, pp. 91 – 95, 1983.
[34] A. Ur, R. Khan, and A. N. Khan, “Context-Aware Mobile Cloud
Computing and Its Challenges,” IEEE Computer Society, vol. 2, no. 3,
pp. 42–49, 2015.
[35] R. E. Burkard, “Quadratic assignment problems,” in Handbook of Com-
binatorial Optimization, P. M. Pardalos, D.-Z. Du, and R. L. Graham,
Eds. Springer New York, 2013, pp. 2741–2814.
[36] M. Tawarmalani and N. V. Sahinidis, “A polyhedral branch-and-cut
approach to global optimization,” Mathematical Programming, vol. 103,
no. 2, pp. 225–249, Jun. 2005.
[37] T. A. Feo and M. G. C. Resende, “Greedy randomized adaptive search
procedures,” Journal of Global Optimization, vol. 6, no. 2, pp. 109–133,
Mar. 1995.
Daniela Mazza is an expert on system optimization
in Public Administration organizational contexts at
Emilia Romagna Local Government (IT). Dr. Mazza
holds a Ph.D. in Electronics, Telecommunications
and Information Technologies Engineering, a Master
Degree in Electronic Engineering, and a second
Master Degree in Communication Science from the
University of Bologna (IT). Her research focuses on
the services to the citizens, including solution for
distributed multimedia system and services manage-
ment in a context of smart city. She holds more than
15 years of experience in the local government organizations and worked as
project manager for technological packaging industries since 1991.
Adela Pag`
es-Bernaus is a postdoc at the Computer
Science Department, Open University of Catalonia,
Spain. She holds a PhD in Statistics and Operations
Reasearch from the Polytechnical University of Cat-
alonia (UPC). She has been a postdoc at UPC and
NTNU (Norway). Her research interests include Op-
erations Research applied to the fields of Logistics
and Transportation, Internet Computing and Energy
systems. Her email address is apagesb@uoc.edu
Daniele Tarchi (S’99, M’05, SM’12) is an Assistant
professor at the University of Bologna, Italy. He
received the MSc degree in Telecommunications
Engineering and the PhD degree in Informatics and
Telecommunications Engineering from the Univer-
sity of Florence, Italy, in 2000 and 2004, respec-
tively. His research interests are in the telecommu-
nication area, with particular interests to resource
allocation and link adaptation algorithms in wireless
and Satellite networks. He has been involved in
several national projects as well as European projects
and has been active in several industry funded projects. He is an editorial
board member for the Wiley Wireless Communication and Mobile Computing,
Hindawi Journal of Engineering and Hindawi The Scientific World Journal
since 2012 and has served as an associate editor for IEEE Transactions on
Wireless Communications from 2008 to 2013. He has been symposium chair
at IEEE WCNC 2011 and at IEEE Globecom 2014, and workshop co-chair
at the IEEE ICC 2015. He is an IEEE Senior Member since February 2012.
12 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY
Angel Alejandro Juan Perez is an Associate Pro-
fessor of Optimization & Simulation in the Com-
puter Science Dept. at the Open University of Cat-
alonia (UOC). Dr. Juan holds a Ph.D. in Industrial
Engineering and a M.Sc. in Applied Mathematics.
He completed a predoctoral internship at Harvard
University and a postdoctoral internship at the MIT
Center for Transportation & Logistics. He has been
invited researcher at the University of Southampton
(UK), at LAAS-CNRS (France), at the University
of Natural Resources and Life Sciences (Austria),
and at the University of Portsmouth (UK). His research interests include
applications of Randomized Algorithms and Simheuristics in Logistics &
Transportation, Production, and Internet Computing. He has published over
150 peer-reviewed papers regarding these fields. His website address is
http://ajuanp.wordpress.com
Giovanni Emanuele Corazza is a Full Profes-
sor at the Alma Mater Studiorum-University of
Bologna, Member of the Alma Mater Board of
Directors, founder of the Marconi Institute for Cre-
ativity (2011), Member of the Marconi Society
Board of Directors, Member of the Board of the
5G Infrastructure Association, Vice-Chairman of the
NetWorld2020 European Technology Platform, and
founder of the Mavigex S.r.l. spin-off company.
He was Head of the Department of Electronics,
Computer Science and Systems (DEIS) in the years
2009-2012, Chairman of the School for Telecommunications in the years
2000-2003, Chairman of the Advanced Satellite Mobile Systems Task Force
(ASMS TF), Founder and Chairman of the Integral Satcom Initiative (ISI),
a European Technology Platform devoted to Satellite Communications. In
the years 1997-2012, he has served as Editor for Communication Theory and
Spread Spectrum for the IEEE Transactions on Communications. He is author
of more than 260 papers, and received the Marconi International Fellowship
Young Scientist Award in 1995, the IEEE 2009 Satellite Communications
Distinguished Service Award, the 2013 Newcom# Best Paper Award, the
2002 IEEE VTS Best System Paper Award, the Best Paper Award at
IEEE ISSSTA98, at IEEE ICT2001, and at ISWCS 2005. He has been the
General Chairman of the IEEE ISSSTA 2008, ASMS 2004-2012 Conferences,
MIC Conference 2013. His research interests are in wireless and satellite
communications, mobile radio channel characterization, Internet of Things,
navigation and positioning, estimation and synchronization, spread spectrum
and multi-carrier transmission, scientific creative thinking.
... Biased-randomized algorithms [22] constitute another class of methodologies for solving combinatorial optimization problems. These methodologies extend constructive heuristics by introducing a non-uniform randomization pattern into them [24,42]. For instance, Belloso et al. [6] use a non-uniform (skewed) probability distribution to bias a savings-based heuristic in order to solve the fleet size and mix vehicle routing problem with backhauls. ...
... To solve these instances, we employed an Intel Core i 9 -9980HK processor with 32 GB of RAM. Table 1 shows the parameter settings for the computational experiments [42,43,52]. Notice that the opening cost values for E i , which are derived from the number of facilities, are consistent with values considered in the literature for the energy spent for switching on an RSU [52]. ...
Article
Full-text available
Funding information The Uncapacitated Facility Location Problem (UFLP) is a popular NP-hard optimization problem that has been traditionally applied to logistics and supply networks, where decisions are difficult to reverse. However, over the years, many new application domains of the UFLP have emerged. Some of these applications require us to re-optimize the solution quickly, as inputs change slightly but frequently over time. For instance, the 5G communication standard considers several scenarios in which real-time optimization is needed, e.g., Internet of Vehicles (IoV), Virtual Network Functions placement , and Network Controller placement. Among these, IoV scenarios take into account the presence of multiple roadside units (RSUs) that should be frequently assigned to operating vehicles. In order to ensure the desired quality of service level, the allocation process needs to be carried out frequently and efficiently, as vehicles' demands change. In this dynamic environment, the mapping of vehicles to RSUs needs to be re-optimized periodically over time. This paper proposes an agile optimization algorithm designed to support fast re-optimization in the described dynamic environment. The algorithm is tested using a set of existing benchmark instances, and the experiments show that it can efficiently generate high-quality and real-time results in dynamic IoV scenarios.
... The rapid development of communication technologies and the explosive growth of the number of mobile devices (MDs) accelerate the emergence of innovative applications, such as augmented reality, face recognition, intelligent driving, and smart home [1][2][3]. These complex applications generally require intensive computing resources and low response latency, putting great pressure on the core networks [4]. ...
Article
Full-text available
With the rapid development of innovative applications, lots of computation-intensive and delay-sensitive tasks are emerging. Task offloading, which is regarded as a key technology in the emerging mobile edge computing paradigm, aims at offloading the tasks from mobile devices (MDs) to edge servers or the remote cloud to reduce system delay and energy consumption of MDs. However, most existing task offloading studies either didn’t consider the dependencies among tasks or simply designed heuristic schemes to solve dependent task offloading problems. Different from these studies, we propose a deep reinforcement learning (DRL) based task offloading scheme to jointly offload tasks with dependencies. Specifically, we model the dependencies among tasks by directed acyclic graphs and formulate the task offloading problem as minimizing the average cost of energy and time (CET) of users. To solve this NP-hard problem, we propose a deep Q-network learning-based framework that creatively utilizes deep neural networks to extract system features. Simulation results show that our proposed scheme outperforms the existing DRL scheme and heuristic scheme in reducing the average CET of all users and can obtain near-optimal solutions.
... On the other hand, larger parameter values p → 1 assign considerable different probabilities to the top elements in the candidate list, and the probabilities are more likely to represent the greedy behavior of the heuristic. The geometric distribution has been successfully utilized to introduce the biased randomized behavior in heuristics used to solve problems in mobile cloud computing [91] and food logistics [92]. As a result, many executions of the biased randomized heuristic result in different solutions; these executions could be performed in a parallel or serial manner. ...
Article
Full-text available
Achieving sustainable freight transport and citizens' mobility operations in modern cities are becoming critical issues for many governments. By analyzing big data streams generated through IoT devices, city planners now have the possibility to optimize traffic and mobility patterns. IoT combined with innovative transport concepts as well as emerging mobility modes (e.g., ridesharing and carsharing) constitute a new paradigm in sustainable and optimized traffic operations in smart cities. Still, these are highly dynamic scenarios, which are also subject to a high uncertainty degree. Hence, factors such as real-time optimization and re-optimization of routes, stochastic travel times, and evolving customers' requirements and traffic status also have to be considered. This paper discusses the main challenges associated with Internet of Vehicles (IoV) and vehicle networking scenarios, identifies the underlying optimization problems that need to be solved in real time, and proposes an approach to combine the use of IoV with parallelization approaches. To this aim, agile optimization and distributed machine learning are envisaged as the best candidate algorithms to develop efficient transport and mobility systems.
... Biased-randomized algorithms constitute a relatively recent approach for fast generation of alternative solutions to com-plex optimization problems [38]. This methodology employs skewed probability distributions, such as the geometric and triangular ones, to extend the constructive behavior of deterministic heuristics [39]. Many applications of biasedrandomized heuristics can be found in the literature [40]. ...
Article
Full-text available
Emerging technologies, such as self-driving cars and 5G communications, are raising new mobility and transportation possibilities in smart and sustainable cities, bringing to a new echo-system often referred to as Internet of Vehicles (IoV). In order to efficiently operate, an IoV system should take into account more stringent requirements with respect to traditional IoT systems, e.g., ultra-broadband connections, high-speed mobility, high-energy efficiency and requires efficient real-time algorithms. This paper proposes an energy and communication driven model for IoV scenarios, where roadside units (RSUs) need to be frequently assigned and re-assigned to the operating vehicles. The problem has been formulated as an Uncapacitated Facility Location Problem (UFLP) for jointly solving the RSU-to-vehicle allocation problem while managing the RSUs switch-on and -off processes. Differently from traditional UFLP approaches, based on static solutions, we propose here a fast-heuristic approach, based on a dynamic multi-period time scale mapping: the proposed algorithm is able to efficiently manage in real-time the RSUs, selecting at each period those to be activated and those to be switched off. The resulting methodology is tested against a set of benchmark instances, which allows us to illustrate its potential. Results, in terms of overall cost –mapping both energy consumption and transmission delays–, number of active RSUs, and convergence speed, are compared with static approaches, showing the effectiveness of the proposed dynamic solution. It is noticeable a gain of up to 11% in terms of overall cost with respect to the static approaches, with a moderate additional delay for finding the solution, around 0.8 s, while the overall number of RSUs to be switched on is sensibly reduced up to a fraction of 15% of the overall number of deployed RSUs, in the most convenient scenario.
... Simheuristics (Juan et al., 2015;Chica et al., 2020), as a simulation-optimization approach, combine simulation with metaheuristics to solve stochastic combinatorial optimization problems. Application areas of simheuristics include transportation and logistics (Reyes-Rubiano et al., 2017;Juan et al., 2019Juan et al., , 2018Gruler et al., 2020;Juan et al., 2014;Raba et al., 2020;Villarinho et al., 2021;Mara et al., 2021), finance Saiz et al., 2021), healthcare (Fikar et al., 2016), waste collection (Gruler et al., 2017b,a), and cloud computing (Mazza et al., 2018). For real-worlds complex stochastic optimization problems, simheuristics should be considered as a "first-resort" method (Chica et al., 2020), as it can handle reality in uncertain problems by simulation modeling, it can assess risk with ease, and a post-run simulation output analysis can be made. ...
Article
Full-text available
A fundamental part of the self‐healing grid is reducing disturbances and automatically responding to problems. Toward this goal, smart grid operators would be of great use to ensure stability after a potential overload for a planning horizon, as the electrical values are unknown. To evaluate the robustness of the topology reconfiguration after a disturbance, like an overload, reliability analysis through simulation can be employed. However, the simulation approach we propose in this paper, except for the excessive time it consumes, cannot assure the quality of its solutions. To achieve a more robust configuration, we, additionally, propose a single‐stage stochastic program to optimize the grid topology configuration after a potential overload to ensure stability for the next day. We suggest a simheuristic approach based on a Variable Neighborhood Search metaheuristic to solve the above stochastic optimization problem. We evaluate the two approaches for this real‐world problem, together with Creos Luxembourg S.A., the leading grid operator in Luxembourg. We show that our method can quickly suggest countermeasures to operators facing potential overloading incidents, ensuring the smart grid's stability for the next day.
... where γ is a constant in the range of [2,3] and , , ...
Article
Full-text available
In mobile edge computing (MEC), smart mobile devices (SMDs) with limited computation resources and battery lifetime can offload their computing-intensive tasks to MEC servers, thus to enhance the computing capability and reduce the energy consumption of SMDs. Nevertheless, offloading tasks to the edge incurs additional transmission time and thus higher execution delay. This paper studies the trade-off between the completion time of applications and the energy consumption of SMDs in MEC networks. The problem is formulated as a multiobjective computation offloading problem (MCOP), where the task precedence, i.e. ordering of tasks in SMD applications, is introduced as a new constraint in the MCOP. An improved multiobjective evolutionary algorithm based on decomposition (MOEA/D) with two performance enhancing schemes is proposed. 1) The problem-specific population initialization scheme uses a latency-based execution location initialization method to initialize the execution location (i.e. either local SMD or MEC server) for each task. 2) The dynamic voltage and frequency scaling based energy conservation scheme helps to decrease the energy consumption without increasing the completion time of applications. The simulation results clearly demonstrate that the proposed algorithm outperforms a number of state-of-the-art heuristics and meta-heuristics in terms of the convergence and diversity of the obtained nondominated solutions.
Article
With the advancement of the user application service demands, IoT system tends to offload the tasks to the edge server for execution. Most of the current studies on edge computation offloading ignore the dependencies between components of the application. The few pieces of research on edge computing offloading which focus on the topology of application are primarily applied in single-user scenarios. Unlike previous work, our work mainly solves dependent task offloading with edge computing in multi-user scenarios, which is more in line with reality. In this paper, the dependent task offloading problem is modeled as a Markov decision process (MDP) firstly. Then, we propose an Actor-Critic mechanism with two embedding layers for directed acyclic graphs (DAG)-based multiple dependent tasks computation offloading, namely ACED, by jointly considering the topology of the application and the channel interference between several users. Finally, the results of simulations also show the priorities of the proposed ACED algorithm.
Chapter
Full-text available
Nonsmooth optimization refers to the general problem of minimizing (or maximizing) functions that have discontinuous gradients. This Special Issue contains six research articles that collect together the most recent techniques and applications in the area of nonsmooth optimization. These include novel techniques utilizing some decomposable structures in nonsmooth problems—for instance, the difference-of-convex (DC) structure—and interesting important practical problems, like multiple instance learning, hydrothermal unit-commitment problem, and scheduling the disposal of nuclear waste. In the first article, “A Mixed-Integer and Asynchronous Level Decomposition with Application to the Stochastic Hydrothermal Unit-Commitment Problem” by Bruno Colonetti, Erlon Cristian Finardi and Welington de Oliveira, the authors develop an efficient algorithm for solving uncertain unit-commitment (UC) problems. The efficiency of the algorithm is based on the novel asynchronous level decomposition of the UC problem and the parallelization of the algorithm.
Article
Full-text available
Smart world is envisioned as an era in which objects (e.g., watches, mobile phones, computers, cars, buses, and trains) can automatically and intelligently serve people in a collaborative manner. Paving the way for smart world, Internet of Things (IoT) connects everything in the smart world. Motivated by achieving a sustainable smart world, this paper discusses various technologies and issues regarding green IoT, which further reduces the energy consumption of IoT. Particularly, an overview regarding IoT and green IoT is performed first. Then, the hot green information and communications technologies (ICTs) (e.g., green radio-frequency identification, green wireless sensor network, green cloud computing, green machine to machine, and green data center) enabling green IoT are studied, and general green ICT principles are summarized. Furthermore, the latest developments and future vision about sensor cloud, which is a novel paradigm in green IoT, are reviewed and introduced, respectively. Finally, future research directions and open problems about green IoT are presented. Our work targets to be an enlightening and latest guidance for research with respect to green IoT and smart world.
Article
Full-text available
Cloud computing is gaining popularity due to virtually unlimited resources, low capital cost, ease of adoption, flexible resource provisioning, and high scalability. Considering these benefits, researchers envision the usage of cloud computing for mobile devices to overcome the ever-increasing computational and energy demands of smartphone applications. However, this requires specialized context-ware application development models that can facilitate the development of cloud-enabled applications capable of making context-aware computation offloading decisions. This article provides an overview of mobile cloud computing technology, focusing on its context-awareness aspects and challenges.
Article
Full-text available
Mobile cloud computing presents an effective solution to overcome smartphone constraints, such as limited computational power, storage, and energy. As the traditional mobile application development models do not support computation offloading, mobile cloud computing requires novel application development models that can facilitate the development of cloud enabled mobile applications. This paper presents a mobile cloud application development model, named MobiByte, to enhance mobile device applications’ performance, energy efficiency, and execution support. MobiByte is a context-aware application model that uses multiple data offloading techniques to support a wide range of applications. The proposed model is validated using prototype applications and detailed results are presented. Moreover, MobiByte is compared with the most recent application models with a conclusion that it outperforms the existing application models in many aspects like energy efficiency, performance, generality, context awareness, and privacy.
Article
Full-text available
Current estimates of mobile data traffic in the years to come foresee a 1,000 increase of mobile data traffic in 2020 with respect to 2010, or, equivalently, a doubling of mobile data traffic every year. This unprecedented growth demands a significant increase of wireless network capacity. Even if the current evolution of fourth-generation (4G) systems and, in particular, the advancements of the long-term evolution (LTE) standardization process foresees a significant capacity improvement with respect to third-generation (3G) systems, the European Telecommunications Standards Institute (ETSI) has established a roadmap toward the fifth-generation (5G) system, with the aim of deploying a commercial system by the year 2020 [1]. The European Project named ?Mobile and Wireless Communications Enablers for the 2020 Information Society? (METIS), launched in 2012, represents one of the first international and large-scale research projects on fifth generation (5G) [2]. In parallel with this unparalleled growth of data traffic, our everyday life experience shows an increasing habit to run a plethora of applications specifically devised for mobile devices, (smartphones, tablets, laptops)for entertainment, health care, business, social networking, traveling, news, etc. However, the spectacular growth in wireless traffic generated by this lifestyle is not matched with a parallel improvement on mobile handsets? batteries, whose lifetime is not improving at the same pace [3]. This determines a widening gap between the energy required to run sophisticated applications and the energy available on the mobile handset. A possible way to overcome this obstacle is to enable the mobile devices, whenever possible and convenient, to offload their most energy-consuming tasks to nearby fixed servers. This strategy has been studied for a long time and is reported in the literature under different names, such as cyberforaging [4] or computation offloading [5], [6]. In recent years, a strong impu- se to computation offloading has come through cloud computing (CC), which enables the users to utilize resources on demand. The resources made available by a cloud service provider are: 1) infrastructures, such as network devices, storage, servers, etc., 2) platforms, such as operating systems, offering an integrated environment for developing and testing custom applications, and 3) software, in the form of application programs. These three kinds of services are labeled, respectively, as infrastructure as a service, platform as a service, and software as a service. In particular, one of the key features of CC is virtualization, which makes it possible to run multiple operating systems and multiple applications over the same machine (or set of machines), while guaranteeing isolation and protection of the programs and their data. Through virtualization, the number of virtual machines (VMs) can scale on ?demand, thus improving the overall system computational efficiency. Mobile CC (MCC) is a specific case of CC where the user accesses the cloud services through a mobile handset [5]. The major limitations of today?s MCC are the energy consumption associated to the radio access and the latency experienced in reaching the cloud provider through a wide area network (WAN). Mobile users located at the edge of macrocellular networks are particularly disadvantaged in terms of power consumption and, furthermore, it is very difficult to control latency over a WAN. As pointed out in [7]?[9], humans are acutely sensitive to delay and jitter: as latency increases, interactive response suffers. Since the interaction times foreseen in 5G systems, in particular in the so-called tactile Internet [10], are quite small (in the order of milliseconds), a strict latency control must be somehow incorporated in near future MCC. Meeting this constraint requires a deep ?rethinking of the overall service chain, from the physical layer up to virtualization.
Article
Full-text available
Recently, in order to satisfy the heavy demands of network capacity brought about by the proliferation of wireless devices, service providers are increasingly deploying heterogeneous cellular networks (HetNets) for boosting the network coverage and capacity. In this paper, we present an iterative energy-efficient scheduling scheme (IEESS) for downlink OFDM-based HetNets with quality-of-service (QoS) consideration. We formulate the problem as a nonlinear fractional programming problem aiming to maximize the QoS-aware energy efficiency (QEE) in HetNets. In order to solve this problem, we first transform it into a parametric programming problem, which takes QEE as an evolved parameter in the iterative procedure of IEESS. In each iteration, for the given value of QEE, subchannel and power assignment sub-problem is a nonlinear NP-hard problem. And hence we adopt dual decomposition method for obtaining the optimal assignment of subchannels and power of the sub-problem for the given value of QEE. Simulation results depict that both outer QEE parameter search and inner subgradient search can converge in a few iterations and the resultant solutions outperform the equal power allocation scheme (EPAS) and capacity maximization scheme (CMS) in terms of QEE.
Chapter
This chapter introduces quadratic assignment problems (QAP) as models for finding an optimal assignment among two sets of interrelated objects. References to many applications of QAPs, like in location theory, are given. Moreover, several classical combinatorial optimization problems are identified as special cases of the QAP, like the traveling salesman problem, graph partitioning, max clique problem, minimum-weight feedback arc set problem, (FASP) and packing problems in graphs. These subproblems show that the QAP is NP-hard. Several different formulations of the QAP are presented in detail as being basic for different solution approaches. Special emphasis is laid to the different possibilities for describing QAPs as (mixed-)integer linear programs. Moreover, QAP polyhedra are discussed. Crucial for exact solution approaches are lower bounding procedures. The paradigm of admissible transformations is introduced for describing several variants of Gilmore-Lawler type bounds. Moreover, bounds based on eigenvalues and bounds found by semidefinite programming are discussed in detail. Among exact solution methods, special emphasis is laid on branch-and-bound approaches. With respect to heuristics, not only simple construction heuristics and improvement heuristics are described, but also several metaheuristics like simulated annealing, tabu search, greedy randomized search, genetic algorithms, and ant systems are discussed. Links to available computer programs are delivered. © Springer Science+Business Media New York 2013. All rights are reserved.
Chapter
Consider the following situation: n buildings are to be erected on n possible sites. It is known, how often people have to go from building j to building q per day. The buildings shall be erected such that the total walking distance of the people becomes minimal. This problem, which arises in many situations, is known as quadratic assignment problem (QAP). A short mathematical description can be given as follows.
Article
Cloud computing heralds a new era of computing where application services are provided through the Internet. Cloud computing can enhance the computing capability of mobile systems. Is cloud computing the ultimate solution for extending battery lifetimes of mobile systems?
Article
In this article we investigate energy-efficient offloading policy for transcoding as a service (TaaS) in a generic mobile cloud system. Computation on mobile devices can be offloaded to a mobile cloud system that consists of a dispatcher at the front end and a set of service engines at the back end. Particularly, a transcoding task can be executed on the mobile device (i.e. mobile execution) or offloaded and scheduled by the dispatcher to one of the service engines in the cloud (i.e. cloud execution). We aim to minimize the energy consumption of transcoding on the mobile device and service engines in the cloud while achieving low delay. For the mobile device, we formulate its offloading policy under delay deadline as a constrained optimization problem. We find an operational region on which execution mode, that is, mobile execution or cloud execution, is more energy efficient for the mobile device. For the cloud, we propose an online algorithm to dispatch transcoding tasks to service engines, with an objective to reduce energy consumption while achieving queue stability. By appropriately choosing the control variable, the proposed algorithm outperforms alternative algorithms, with lower time average energy consumption and time average queue length on the service engines. The proposed offloading policy can reduce energy consumption on both mobile devices and the cloud jointly, which provides guidelines for the design of green mobile cloud.