Content uploaded by Daniele Tarchi

Author content

All content in this area was uploaded by Daniele Tarchi on Dec 20, 2018

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 ofﬂoading, 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 efﬁcient

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 Ofﬂoading, Biased-randomized Algorithms.

I. INTRODUCTION

ACCORDING to the ﬂagship 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 trafﬁc

over the next ﬁve 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 trafﬁc and transportation ﬂows,

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 deﬁnition

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 speciﬁc requirements,

smart cities can signiﬁcantly beneﬁt 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 ﬂows [8]. Thus, we can consider the MCC as a

framework that is the technological nervous system allowing

the networks and ﬂows 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 ofﬂoading, 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 trafﬁc

control domains [13].

Although computation ofﬂoading can signiﬁcantly increase

data processing capabilities of mobile users, it is challenging

2 IEEE SYSTEMS JOURNAL, VOL. X, NO. Y, MONTH YYYY

to achieve an efﬁcient coordination among the entire set of

requesting devices. In fact, and in order to make the operation

possible, the computation ofﬂoading 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 efﬁciency 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 inefﬁcient use of

ofﬂoading 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 efﬁciency 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 selﬁsh behavior in allocating resources to users. Such three

techniques –the proposed probabilistic algorithm, the greedy

heuristic, and the exact method– are based on the deﬁnition

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 modiﬁcations added do not

increase the computational complexity of the greedy heuristic.

These characteristics make it an efﬁcient 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 ﬁnd 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 ﬁrst

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 ﬁndings and conclusions are high-

lighted.

II. RELATED WORKS

The cyberforaging mechanism for achieving efﬁcient com-

putation ofﬂoading 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 efﬁciency of the Base Stations

composing the environment (macro and small cells), and

in [17] the authors investigate an energy-efﬁcient ofﬂoading

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 trafﬁc over cellular networks.

In the literature there are several works focused on the

ofﬂoading 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 ofﬂoading is related to the devel-

opment of application models aiming to extract ofﬂoading

friendly parts of codes from existing applications [21]–[23].

In [24] the authors present a dynamic ofﬂoading 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 ﬁelds, 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 Efﬁcient, Simple, and Parameter-Free (ILS-ESP)

algorithm for solving the permutation ﬂow-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 ofﬁces) and outdoors (e.g., in

amusement parks or trafﬁc 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 signiﬁcantly 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 ofﬂoading

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 inﬁnite, 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 ofﬂoading 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 simpliﬁcation 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 inﬂuence the performance of the computation

ofﬂoading:

•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 deﬁned 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 + SNRje−kdi,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 ofﬂoading 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 ofﬂoading beneﬁt and

select the most convenient RAT aiming at minimizing the

energy consumption of the user requesting the service. This

decision is ‘selﬁsh’ 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 ofﬂoad an application using the nodes of set M=

{0,1,2,··· , i, ··· ,M}, where the 0-th element represents the

ﬁctitious node related to the local computation. By deﬁning

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 ofﬂoading through the RATiin (7), by

exploiting (6), as:

Ei,j =xi,j Ptr j D

BWi

nilog2{1 + SNRje−kdi,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, deﬁned 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 + SNRje−kdi,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 ﬁnd 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

signiﬁcant 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 ﬁnd 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 ﬁrst approach to ﬁnd 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 difﬁculty for solving the QSAP comes from

the fact that the objective function is quadratic, which justiﬁes

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 ofﬂoading

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 ofﬂoading 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

modiﬁes 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 ﬁnd 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 signiﬁcant lower

time than the optimal method. The main idea behind the

proposed approach is to introduce a slight modiﬁcation 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 ←0∀i∈ M \ {0}

xi,j ←0∀i∈ M ∀j∈ N

yj←0∀j∈ 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 −1∀l∈ M s.t. xl,j 6= 1

X←xi,j

Y←yj

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 signiﬁcantly 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 deﬁned 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 ﬁctitious 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 modiﬁcations 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 coefﬁcient kfor the

propagation equal to 10−3has 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 ←ni∀i∈ M \ {0}

xi,j ←0∀i∈ M ∀j∈ N

yj←0∀j∈ 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)

X←xi,j

Y←yj

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 ofﬂoaded, 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 conﬁguration (i.e., all the SMDs compute locally)

and the nearest-node conﬁguration (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 conﬁguration.

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 conﬁguration 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 conﬁguration. 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

conﬁgurations in real time, while providing solutions that tend

to minimize the overall energy consumption. This is useful

for ofﬂoading applications which need a fast link selection

decision, for example when the users are moving and the

conﬁguration must be updated very often.

Fig. 6 and Fig. 7 report the different conﬁgurations (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 conﬁgurations, 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 ﬁgures 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 conﬁrms the

‘socially-aware’ optimization behavior of the proposed biased-

randomized approach.

VI. CONCLUSION

In this paper we have presented different strategies for an

efﬁcient 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 ﬁelds of logistics, transportation, and production. This

work extends their use to the ﬁeld 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 Trafﬁc 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] Scientiﬁc American, Ed., Designing the urban future: Smart Cities.

New York, USA: Scientiﬁc 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 Conﬁguration 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 Conﬁguration

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 Conﬁguration 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 Conﬁguration

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 Conﬁguration 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 Conﬁguration

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 Conﬁguration 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 Conﬁguration

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-efﬁcient 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 ofﬂoading 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

ofﬂoading 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-efﬁcient ofﬂoading 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 ofﬂoading 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

ofﬂoading 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 ofﬂoad,” 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 ofﬂoading 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 ﬂow-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 ﬂow-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 ﬁelds 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 Scientiﬁc 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 ﬁelds. 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, scientiﬁc creative thinking.