Professional Documents
Culture Documents
ABSTRACT With the expansion of wireless networks throughout the world and the high growth rate of
the use of sophisticated programs in mobile devices, users’ expectations for the services provided by these
devices have increased. Mobile devices have some limitations, such as battery life time and processing
power for delivering all types of services to users. In recent years, mobile cloud computing, which is a
phenomenal branch of cloud computing, has achieved considerable evolution in the computing community.
By considering the advantage of offloading to the cloud, the limitations of mobile devices can be overcome
to a great extent. A mobile device can be converted to a powerful device by applying cloud resources.
The outstanding challenges in offloading are finding an optimum solution for the offloading problem to
overcome these limitations. In this paper, offloading is modeled via a mathematical graph where both Wi-Fi
and 3G links are topics of concern. Finding the best solution for offloading is equivalent to finding the
constrained shortest path in this graph. By considering the K-LARAC and M-LARAC heuristic algorithms,
a new heuristic algorithm is introduced to find the optimized path that can assess energy and delay, at a
minimum, financial cost. This path is an appropriate solution for the offloading problem. The obtained results
indicate that the designed algorithm can find an arbitrary approximation solution for the offloading problem
with low complexity in comparison to existing algorithms.
INDEX TERMS Call graph, Delay, Energy consumption, K-shortest path, LARAC, Mobile cloud
computing, Offloading.
I. INTRODUCTION networks (Wi-Fi and 3G), the computing industry has sig-
In today’s world, mobile devices have become very pop- nificantly changed. Therefore, many researchers believe that
ular for network users because mobility is an important mobile cloud computing is a great evolution in this con-
criterion for purchasing computing equipment/components. text. In general, resources such as networks, servers, storage,
Computing-intensive applications have significantly expanded applications, and services are provided as computing facili-
to a degree that the growth rate of complex programs has ties that can be leased and released by users via a network
become faster than the growth rate of computing resources in a cloud computing environment. The definition of cloud
of mobile devices. Despite the mobility advantages among computing according to the National Institute of Standards
network users, mobile devices have some limitations. Conse- and Technology (U.S.NIST) is
quently, enhancing some characteristics of mobile devices to ‘Cloud computing is a model for enabling convenient,
satisfy users’ expectations is not possible. The most impor- on-demand network access to a shared pool of configurable
tant limitations of mobile devices are the CPU processing computing resources that can be rapidly provisioned and
power and battery lifetime. Accordingly, an approach that can released with minimal management effort or service provider
overcome these limitations while maintaining the features of interaction’ [3].
mobile devices is required. Mobile cloud computing provides Mobile cloud computing is an extension of cloud com-
a platform to achieve these objectives. puting that provides cloud services via mobile devices and
Mobile cloud computing has recently become a new model wireless networks’ interfaces. Offloading to the cloud is one
in distributed computing [1], [2]. By development of mobile of the best advantages of mobile cloud computing. Offloading
computing, cloud services and integrated access to typical is defined as transferring the computing intensive operations
2169-3536
2018 IEEE. Translations and content mining are permitted for academic research only.
VOLUME 6, 2018 Personal use is also permitted, but republication/redistribution requires IEEE permission. 11849
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
V. Haghighi, N. S. Moayedian: Offloading Strategy in Mobile Cloud Computing Considering Energy and Delay Constraints
from a mobile device to the cloud and returning the results approach proposes an architecture that includes the benefits
to the mobile device. Offloading to the cloud can satisfy the of both the first approach and the second approach, in which
objective of mobile device advantages while removing limita- several cloud-assist mobile platforms are proposed. An archi-
tions of resource shortages. Due to the advantages of offload- tecture for offloading solutions based on the .NET framework
ing, the authors of this paper are motivated to present this MAUI is proposed by [11]. MAUI supports fine-grained
study. The following offloading advantages are presented: program offloading to maximize energy-saving with minimal
a. Increases the computing capability of mobile devices, burden on the programmer. The MAUI solution is derived via
where any complex program that needs a significant an optimization engine. The optimization problem is solved
amount of computational resources can be run in the using an integer linear programming (ILP) solver. Another
cloud and obtain results. A shared pool of resources that proposed project is the CloneCloud [12], [13], which is a
supports any complex program with minimal manage- system that transforms parts of a program to the cloud in an
ment effort is available; therefore, a powerful compu- automated manner. An offline static analysis is performed for
tation device that supports a basic mobile device. different conditions and dynamic profiling for program parti-
b. Improves mobile device energy consumption [4]. tioning. The optimization problem is solved by the standard
c. Reduces delay due to a processing unit. integer linear programming solver. CloneCloud constructs
d. Provides integrated access at any time and place to the the pre-computed partitioning database of an applicable pro-
cloud resources. gram to determine which part of the program can be offloaded
Note that the application of cloud services and offloading to the cloud. Thinkair [14] is a framework that seeks to
operations is not always efficient. Low bandwidth, consumed overcome the disadvantages of the MAUI and CloneCloud
energy and delay caused by data transmission are some draw- methods. An integer linear programming solver has expo-
backs of offloading, which motivates the researchers to find nential complexity, which increases when the size of the
solutions to overcome these drawbacks. inputs increases. Previously proposed methods have focused
The focus of this paper is the two most important mobile on presenting an architecture for implementing an offloading
device limitations of energy consumption and delay with mechanism in the cloud. Some studies have focused on find-
respect to the least financial cost. The financial cost parameter ing an optimum offloading mechanism as follows:
in the use of cloud services and data transmission via Wi-Fi In [15] and [16], the energy consumption of mobile devices
or 3G networks are important challenges for network clients. is optimized, where two optimization problems for making
An effective offloading solution with the least financial cost offloading decisions are solved: the solution to the first prob-
to satisfy the energy and delay constraints for a mobile device lem is to reconfigure the CPU clock frequency to locally
in a simultaneous manner is assessed in this paper. execute a program, and the solution to the second problem is
The remainder of this paper is organized as follows: The to schedule the task of offloading to the cloud side. Offloading
literature review is run in section 2; an offloading architec- decisions are made by comparing the energy consumption for
ture and the descriptive profilers are presented in section 3; local task execution and the energy required for offloading
offloading operations as a directed graph that computes a task. A sequence of tasks in linear topology to minimize
energy, delay and financial cost parameters are modeled in the energy consumption on a mobile device is considered
section 4; the offloading problem is defined and formu- in [17] and [18] while meeting a time deadline. The opti-
lated and a new K-M-LARAC is obtained and proposed mization problem is solved by applying the Lagrangian
in section 5; the online offloading algorithm is introduced Relaxation-based Aggregate Cost (LARAC) [19] algorithm
in section 6; the numerical results to assess this proposed in an approximation. Sometimes the approximate solution
offloading architecture is presented in section 7; and the is not optimal. The feasibility of both mobile computation
conclusions and suggestions are presented in section 8. offloading and mobile data backups by considering band-
width and energy consumption of offloading are explored
II. RELATED STUDIES in [20]. The energy consumption of a mobile device is
Many attempts are made to achieve the offloading solution. minimized while meeting the given program deadline based
Most of the proposed solutions are based on one of the three on Lyapunov optimization [21]. Zhang and Wen assess the
following methods: the first approach relies on the program- energy-efficient collaborative task execution to minimize the
mer who should determine how to partition a program and energy consumption of mobile devices, for which a mobile
how to adapt the program partitioning to change the network application is considered as a general topology to model
conditions for offloading. This approach is fine-grained and the offloading decision. The optimization problem is solved
significantly improves energy consumption and the perfor- by the LARAC algorithm. In [23], a distributed offload-
mance of the mobile device [5]–[8]. ing mechanism that minimizes the energy consumption of
The second approach comprises all or part of an individual a mobile device is presented. In [24], an energy-efficient
program that is offloaded to the cloud in an automated man- dynamic offloading and resource scheduling policy is formu-
ner. In this approach, programs do not need to be modified lated to reduce energy consumption subject to a completion
for offloading operation, which reduces the burden on the pro- deadline. The energy- efficiency cost minimization problem
grammer. This approach is coarse-grained [9], [10]. The third is solved while meeting the task-dependency requirements
and the completion deadline constraint. To solve the opti- different networks’ conditions. So we have to obtain valid
mization problem, they propose a distributed algorithm that data from profilers in both sides, in order to achieve new
consists of three sub-algorithms for computation offloading offloading strategy for the remaining tasks.
selection, clock frequency control and transmission power
allocation. Balancing the tradeoff betweenenergy efficiency A. DEVICE PROFILER
and responsiveness of mobile applications by developing Some information about the mobile device, such as the CPU
application-aware wireless transmission scheduling algo- clock frequency and CPU power consumption in active and
rithms is proposed in [25]. Xia et al. [26] optimized the exe- IDLE modes, are labeled fdevice , pactive IDLE
device , and pdevice . The cloud
cution delay by setting a threshold. If the predicted execution CPU clock frequency is labeled fcloud .
delay is greater than this threshold, then the application will
be locally executed; otherwise, it will be offloaded to the
cloud. Shah-Mansouri et al. [27] designed a task scheduler B. PROGRAM PROFILER
and determined the optimal pricing strategy for a cloud ser- A program profiler provides information about a specific pro-
vice provider. They formulated a utility maximization prob- gram, including the CPU cycles that are needed to complete
lem, in which the energy, delay and price of cloud services a certain method in the program. A program can be shown
are concerns. This problem is solved by convexification and as a directed call graph, where nodes represent methods and
primal-dual methods. In [28], the offloading problem is for- edges represent the relations among methods and the way
mulated as a joint optimization problem, in which both the they invoke each other. A call graph shows the program
energy consumption of a mobile device and the execution execution trend. The methods that are capable of offloading
delay in a mobile application are minimized. A heuristic are designated by a programmer.
algorithm for the general case of the problem is proposed The call graph, number of CPU cycles and amount of input
and solved. Geng et al. [29] applied the Dijkstra algorithm and output data for each method execution are captured by the
to find an energy efficient offloading solution for a cellular program profiler. The input and output data for each method
network, where no mobile device limitation is considered for execution are the program states that the program needs to
the offloading problem. continue remote execution. The program states, for example,
In this paper, first, an offloading architecture with a focus contain the CPU registered data, CPU counter and stack data.
on extracting a program partitioning mechanism is proposed. In this paper, the number of CPU cycles and the amount of
Second, an offloading problem is modeled as a directed graph input data and amount of output data for the execution of
with both Wi-Fi and 3G networks’ links. Energy consump- the ith method of the program are denoted by Ci , Ii , and Oi ,
tion and delay caused by processing, which are the two respectively.
most important limitations of mobile devices, are consid-
ered. Third, an offloading problem is formulated to find the C. NETWORK PROFILER
constraints shortest path to minimize the financial cost as a Mobile devices can use different technologies to access dif-
subject. Last, the optimal approximation solution is extracted ferent network infrastructures. Two extensively employed
via this newly proposed algorithm (K-M-LARAC), which is network infrastructures are 3G and Wi-Fi. Use of a 3G net-
subject to current network conditions. work can be advantageous due to its extensive coverage in the
absence of Wi-Fi. However, note that 3G network provides
III. OFFLOADING ARCHITECTURE less bandwidth than the time consumed by a Wi-Fi network.
The different parts of the offloading architecture are shown In addition, the interfaces connected to these two networks
in figure 1 and described as follows. Different parts of the significantly differ in energy consumption and charging. The
offloading architecture exist in both device and cloud sides; energy consumption of these two networks’ interfaces are
because the offloading strategy can change at runtime due to assessed as follows:
FIGURE 2. State machine of RRC protocol in cellular network. FIGURE 3. State machine for Wi-Fi interface transmission.
FIGURE 4. Sample call graph and the cost graph corresponding to the sample
call graph.
after the cost graph is constructed. Extracting the offloading methods are designated by the programmer. Subsequently,
strategy from this cost graph is the most important part of these states in the cost graph are related by some links. Each
this architecture and the focus of this paper. This solution link in the cost graph represents three parameters: financial
indicated which part of the selected program is executed in cost m, energy e and delay d. These parameters are related
the cloud and which part is executed in the mobile device; to the required data transfer and execution of the next state
it is referred to as the offloading strategy. in the cost graph. These parameters are computed in the
Consider a computing-intensive program which is going computation phase subsection. In some cases, more than one
to be run. This program has three steps. The first step is link exists between two states due to the existence of both 3G
collecting some information from user. In the second step, and Wi-Fi networks. This type of link is named a hyperlink
computing-intensive function is run. The third step displays and is represented by the dashed lines in the cost graph.
results on the monitor. The mobile device has low battery In general there are two types of offloading modes. The
and the specific program must be run in the tight deadline. first mode is on-the-spot. An on-the-spot offloading mode
Wireless network transmission rate is good for offloading. is applied in this paper because current smartphones use the
By applying the offloading architecture which is shown on-the-spot mode by default. Using on-the-spot offloading,
in figure 1 the specific program is divided into two parts the data transmission related to the offloading process can
which include locally and remotely executions. The extract switch to the cloud using a Wi-Fi network in an automated
offloading strategy is as follows: The first and third steps sense when it is available. When users exit the Wi-Fi coverage
are run locally in the mobile device and the second step area, the remainder of the data is transmitted via cellular
is offloaded to the cloud. This offloading solution satisfies networks. The other offloading mode is the Delayed mode.
energy and deadline limitations with the least financial cost. Using Delayed offloading, data transmission must be finished
by a deadline. In this case, when Wi-Fi networks are regained
IV. COST GRAPH CONSTRUCTION by the deadline, data transmission is resumed with Wi-Fi until
The offloading operation is modeled in a graph. This cost all data are transmitted. If the data transfer is not completed
graph consists of all possible solutions for the offloading by the assigned deadline, it will be completed via the cellular
operation. The cost graph is constructed based on the program network [33].
call graph. This graph is constructed with a set of paths,
each of which declare a certain offloading strategy. Two
execution states are assumed for each method in the call A. COMPUTATION PHASE
graph, as shown in figure 4. The first state represents the local Three parameters of energy, delay and financial cost are
execution of the method in a mobile device, and the second obtained for each link in the cost graph. A cost vector
state represents the remote execution of the method on the cost (l) = (m (l) , e (l) , d(l)) for each link l, which includes
cloud side. In other words, states 1, 2, . . . , n − 1, n represent these parameters, is defined. Assume that method i calls
local execution and states 1∗ , 2∗ , . . . , n − 1∗ , n∗ represent method j, which is shown by l(i, j). The three parameters
execution in the cloud. Some methods cannot be executed in of link l are computed for transferring data and executing
the cloud since they need at least one resource of the mobile method j. In general, four cases exists for the execution of the
device. In this case, only one state exists for the method in two methods i and j based on whether they run in the cloud
the cost graph, which is related to its local execution. These or a mobile device:
device , (3)
wifi wifi wifi
e (l) = e(DeviceExe)j = d(DeviceExe)j × pactive e (SendData)j = d (SendData)j × pt
wifi
ttimeout × pidle ,
are yielded.
d (CloudExe)j > ttimeout
Case 2 (Both Methods i and j Are Executed in the Cloud):
Here, e (l) is the energy consumption by the mobile device + wifi (15)
d (CloudExe)j × pidle ,
during the period of time that method j is executed on the
d (CloudExe)j ≤ ttimeout
cloud side, is labeled e (CloudExe)j . Parameter d(l) is the
delay caused by the execution of method j on the cloud side; it are yielded.
is labeled d(CloudExe)j . The parameter m (l) is the financial The energy consumption of the Wi-Fi network interface in
cost that corresponds to the execution of method j on the cloud the Sleep mode is not considered.
side; it is labeled m(CloudExe)j . Assume that a mobile device 3G: If the input data for running method j on the cloud
is in the IDLE mode when method j is executed on the cloud side are transmitted by the 3G network, then the following
side. Consequently, equations are made and
m (l) = m(CloudExe)j = Cj × γ , (4) j = Ij × β,
m (SendData)3G (16)
d (l) = d(CloudExe)j = −1
Cj × fcloud , (5) d(SendData)3G = Ij × (R ) 3G −1
, (17)
j
e (l) = e(CloudExe)j = device ,
d(CloudExe)j × pidle (6) e (SendData)3G = d (SendData)3G 3G
j j × pt
ttail × ptail ,
are yielded.
Case 3 (Method i is Executed in a Mobile Device and
d(CloudExe)j > ttail
Method j is Executed in the Cloud): In this case, the energy + (18)
d(CloudExe) j ) × ptail ,
consumption e (l) consists of two parts: The consumed
energy by a mobile device for sending the required input d(CloudExe)j ≤ ttail
data for the execution of method j in the cloud is labeled are yielded.
e (SendData)j , and the mobile device energy consumption The energy consumption of the 3G network interface in the
during the time of executing method j on the cloud side is IDLE mode is not considered.
labeled e (CloudExe)j . The total delay d (l) is the sum of the Case 4 (Method i is Executed on the Cloud Side and
delay caused by sending the input data for method j to the Method j is Executed in a Mobile Device): Here, e (l) consists
cloud, which is labeled d(SendData)j and the delay caused of the energy consumption by a mobile device for receiving
by the execution of method j in the cloud, which is labeled the output data of method i that are required for executing
d (CloudExe)j . The total financial cost m (l) is the sum of the method j in the mobile device; it is labeled e (ReceiveData)i ,
financial cost for sending the input data of method j to the and the consumed energy by the mobile device for executing
cloud, which is labeled m (SendData)j , and the financial cost method j in the mobile device is labeled e (DeviceExe)j . The
that corresponds to the execution method j in the cloud, which total delay d (l) is the sum of the delay caused by receiving the
is labeled m (CloudExe)j . The cost vector cost(l) for link l is output data of method i in the mobile device, which is labeled
expressed as: d(ReceiveData)i , and the delay caused by the execution of
method j in the device, which is labeled by d (DeviceExe)j .
m (l) = m (CloudExe)j + m (SendData)j , (7)
The financial cost m (l) is the sum of the financial cost caused
d (l) = d (CloudExe)j + d(SendData)j , (8) by receiving the output data of method i in the mobile device,
e (l) = e (CloudExe)j + e (SendData)j , (9) which is labeled m (ReceiveData)i , and the financial cost that
corresponds to the execution of method j in the mobile device,
where which is labeled m (DeviceExe)j . The cost vector cost(l) for
m(CloudExe)j = Cj × γ , (10) the link l is expressed as follows:
d(CloudExe)j = −1
Cj × fcloud , (11) m (l) = m (ReceiveData)i + m (DeviceExe)j , (19)
e (l) = e (DeviceExe)j + e (ReceiveData)i , (20) the method set V and edge set E described in section 4 and
d (l) = d (DeviceExe)j + d(ReceiveData)i , (21) n = |V | and m = |E| be the number of nodes and edges.
Assume that P(S, D) is the set of all paths from the source
where node S to the destination node D in the cost graph. Then,
a feasible path named p∗ with a minimum financial cost is
m (DeviceExe)j = 0, (22)
the optimal solution among all feasible paths. The offloading
d (DeviceExe)j = −1
Cj × fdevice , (23) operation can be formulated as the constrained shortest path
decice ,
d(DeviceExe)j × pactive
e(DeviceExe)j = (24) problem as
min m (p) ,
are yielded. pP(S,D)
Unlike case 1 and case 2, the hyperlink is a permanent subject to : e (p) ≤ B,
component of the cost graph; which enables the use of a Wi-Fi d (p) ≤ 1, (31)
or 3G network for transmission.
Wi-Fi: If the output data of method i for running method where m(p), e (p) and d (p) are the financial cost of path p,
j in the mobile device are received by a Wi-Fi network, then the energy consumed by the mobile device and the delay that
the following calculations are performed and corresponds to the path p in the cost graph, respectively.
wifi This optimization problem is NP-complete [34]; therefore,
m (ReceiveData)i = Oi × α, (25) an algorithm that ends at the theoretical optimum solution
wifi −1 in the polynomial time cannot be found. An approximate
d(ReceiveData)i = Oi × (Rwifi ) (26)
solution for problem (31) is achieved using the Lagrangian
wifi wifi
e (ReceiveData)i = d (ReceiveData)i × pwifir relaxation technique. Assume that L(λ1 , λ2 ) is the Lagrangian
wifi function defined by
ttimeout × pidle ,
L (λ1 , λ2 ) = min {m (p)+λ1 e(p)+λ2 d (p)}−λ1 B−λ2 1,
d (DeviceExe)j > ttimeout
pP(S,D)
+ wifi
d (DeviceExe)j × pidle , (32)
d (DeviceExe)j ≤ ttimeout
where λ1 and λ2 are the Lagrange multipliers. Due to the non-
B. DESCRIPTION OF K-M-LARAC
The steps of the K-M-LARAC algorithm are described as
follows:
1. Whether a solution for the problem exists is verified.
By assuming λ = (λ1 → ∞, λ2 → ∞), the shortest
path for λ is obtained by the Dijkstra algorithm and
named pλ . If pλ does not satisfy B and constraints,
no feasible path for the problem exists.
2. Here, λ is set to λ = λm = (0, 0). Next, the shortest
FIGURE 5. Planes corresponded to three sample paths. path for λm is obtained via the Dijkstra algorithm,
where the metric function Mλ1 ,λ2 in (34) is applied
and named pm . This path is optimized for the financial
cost. If pm satisfies both the 1 and B constraints, then
pm is the optimum solution for this problem. Then,
the algorithm ends; otherwise, step three is run.
3. Here, k shortest paths are calculated for λm , where
set Pλm includes these k shortest paths. If Pλm is the
mixed − type, then
p∗λm = arg min m(p), (35)
FIGURE 6. Lagrangian function that corresponds to the paths from pPB,1
λm
figure 5.
which will become the optimum path and exit the algo-
rithm. Otherwise, if Pλm is not the mixed − type, then
pλm becomes
Pλ = {p1 , p2 , . . . , pk is found, where Mλ (p1 ) ≤ Mλ (p2 ) ≤
pλm = arg min m(p), (36)
. . . Mλ (pk ). Assume that PBλ is a subset of Pλ , including all pPλm
paths that only satisfy the energy constraint B, and P1 λ is a which will become the optimum path for the financial
subset of Pλ with all paths that only satisfy the delay con- cost. Therefore, it does not satisfy one or both of the 1
straint 1. Assume that PB,1 λ is a subset of Pλ , which involves and B constraints.
paths that suit both the 1 constraint and the B constraint. The 4. Here, the k shortest paths are calculated for λe =
shortest path for a given λ = (λ1 , λ2 ) is labeled pλ . (λ1 → ∞, λ2 = 0). The set Pλe includes these k
The set Pλ is classified into nine types according to 1 shortest paths. If Pλe is the mixed − type, then
and B requirements; five types are important. For the first
type, which is named pN −type , no path satisfies the 1 and p∗λe = arg min m(p), (37)
B constraints. For the second type, which is named pB−type , pPB,1
λe
all paths only suit the B constraint. For the third type, which which will become the optimum path and exit the algo-
is named p1−type , all paths satisfies the 1 constraint. All rithm. Otherwise, if Pλe is not the mixed − type, then
paths satisfy both 1 and B constraints for the fourth type Pλ , pλe becomes
which is named pB,1−type . In the last type, which is named
pmixed−type , some paths are feasible, whereas other paths are pλe = arg min m(p), (38)
pPλe
not feasible.
which will become the path with an energy constraint
The λ1 space and λ2 space can be separated based on Pλ
that has the minimum financial cost.
types. For small values of λ1 and λ2 , Pλ will be the pN −type .
5. Here, the k shortest paths are calculated for λd = (λ1 =
An increase in λ1 would push Pλ closer to pB−type , which indi-
0, λ2 → ∞). The set Pλd includes these k shortest
cates that the energy parameter is more dominant. An increase
paths. If Pλd is the mixed − type, then
in λ2 would push Pλ closer to p1−type , which indicates
that delay is the dominant parameter. With a simultaneous p∗λd = arg min m(p), (39)
increase in λ1 and λ2 values, Pλ tends to be pmixed−type , and pPB,1
λ d
Pλ is pB,1−type . When a Pλ set of type pmixed−type is achieved,
which will become the optimum path and exit the algo-
an optimized path is obtained. If appropriate values are cho-
rithm. Otherwise, if Pλd is not the mixed − type, then
sen for the energy and delay constraints, achieving a Pλ
pλd becomes
set of pmixed−type becomes possible. Three sample paths are
shown in figure 5; their corresponding Lagrangian function pλd = arg min m(p), (40)
pPλd
is shown in figure 6. Each path yields a plane that matches
F (λ1 , λ2 ) = m (p) + λ1 (e (p) − B) + λ2 (d (p) − 1) with λ1 which will become the path with a delay constraint that
and λ2 parameters. has the minimum financial cost.
TABLE 1. Hardware characteristics for the mobile device and cloud. These three strategies are applied in different conditions
for Wi-Fi and 3G networks. The quality of the networks is the
primary requirement for the offloading operation. The energy
and delay constraints are effective in extracting the offloading
solution. Therefore, these three strategies are applied at differ-
ent ranges of energy and delay constraints subject to various
networks’ conditions. The energy and delay constraints are
divided into three ranges: high range, medium range and low
range.
At any given time, various applications are being run
in a mobile device, the energy consumption of which is
unknown. Only one specified remote application (face recog-
nition application) is running in the mobile device with a
known time execution and energy consumption rate. There-
fore, the values of the energy and delay constraints are deter-
mined according to the local execution of the face recognition
application in the mobile device. The energy consumption,
delay and financial cost for different offloading strategies
subject to various ranges of energy and delay constraints are
shown in figure 10, where both the Wi-Fi and 3G rates are
appropriate. The larger is the number of limitations in the
energy and delay constraints, the closer is the K-M-LARAC
solution to the cloud execution strategy.
Finding the solution that is similar to the cloud execution
strategy indicates that a greater financial cost is necessary to
overcome the energy and delay constraints. When the energy
and delay limitations are reduced, the K-M-LARAC solution
tends to be the device execution strategy, which demon-
needed to execute this method, and each edge is specified by strates that the mobile device executes the application when
the required input and output data for offloading the method. no battery and time limitations exist because device exe-
Three strategies are considered for offloading to the cloud: cution has no financial cost. Sometimes, the K-M-LARAC
the application is executed in the mobile device, where no algorithm finds the solution close to the optimum because
offloading operation exists and the purposed application is K-M-LARAC finds the lower bound for this problem and
locally executed. The application is executed on the cloud achieves the best solution that is close to the lower bound.
side, where the offloading strategy is the predefined cloud If the K-M-LARAC approximate solution is the optimum,
execution and an appropriate offloading strategy is obtained the lower bound is close to the optimum solution. The Wi-Fi
according to this proposed offloading architecture and the network has a lower financial cost and a higher bit rate than
K-M-LARAC algorithm at k = 10 and k = 20. These three the financial cost and bit rate of the 3G network. When
execution strategies are compared with the optimal solution the Wi-Fi and 3G rates are appropriate, the K-M-LARAC
because the K-M-LARAC algorithm sometimes finds the algorithm uses the Wi-Fi interface for the offloading oper-
approximate solution. The optimum solution is obtained via ation, as shown in figure 10. When the Wi-Fi rate is low,
a brute force search. the K-M-LARAC uses the 3G network for the offloading
m pλe d pλm − d pλd + m pλm d pλd − d pλe + m pλd d pλe − d pλm
λ1 : (43)
d pλe e pλm − e pλd + d pλm e pλd − e pλe + d pλd e pλe − e pλm
m pλe e pλm − e pλd + m pλm e pλd − e pλe + m pλd e pλe − e pλm
λ2 : (44)
e pλe d pλm − d pλd + e pλm d pλd − d pλe + e pλd d pλe − d pλm
FIGURE 10. Energy consumption, delay and financial cost for different offloading strategies for very good network conditions.
The horizontal lines show the limitations of the offloading problem.
FIGURE 11. Energy consumption, delay and financial cost for different offloading strategies for moderate network conditions.
The horizontal lines represent the limitations of offloading problem.
operation. The Wi-Fi and 3G rates are average and the the optimum solution. An increase in the K parameter in the
K-M-LARAC algorithm uses the Wi-Fi network for the K-M-LARAC algorithm will yield a better lower bound that is
offloading operation, as shown in figure 11. close the optimum solution. The experimental results indicate
When the K-M-LARAC lower bound is far from the opti- the impact of the K parameter in finding the optimum solu-
mum solution, the obtained approximate solution is far from tion. The K-M-LARAC at K = 20 finds the better solution
[25] L. Tong and W. Gao, ‘‘Application-aware traffic scheduling for workload [37] A. Carroll and G. Heiser, ‘‘An analysis of power consumption in a smart-
offloading in mobile clouds,’’ in Proc. IEEE INFOCOM, San Francisco, phone,’’ in Proc. USENIX Annu. Tech. Conf., vol. 14. Jun. 2010, p. 21.
CA, USA, Apr. 2016, pp. 1–9. [38] L. Zhang et al., ‘‘Accurate online power estimation and automatic
[26] F. Xia, F. Ding, J. Li, X. Kong, L. T. Yang, and J. Ma, ‘‘Phone2Cloud: battery behavior based power model generation for smartphones,’’
Exploiting computation offloading for energy saving on smartphones in in Proc. IEEE/ACM/IFIP Int. Conf. Hardw./Softw. Codesign Syst.
mobile cloud computing,’’ Mobile Cloud Comput. Inf. Syst. Frontiers, Synth. (CODES+ISSS), Oct. 2010, pp. 105–114.
vol. 16, no. 1, pp. 95–111, Mar. 2014. [39] Y. Zhang, H. Liu, L. Jiao, and X. Fu, ‘‘To offload or not to offload:
[27] H. Shah-Mansouri, V. W. Wong, and R. Schober, ‘‘Joint optimal pricing An efficient code partition algorithm for mobile cloud computing,’’
and task scheduling in mobile cloud computing systems,’’ IEEE Trans. in Proc. IEEE 1st Int. Conf. Cloud Netw. (CLOUDNET), Nov. 2012,
Wireless Commun., vol. 16, no. 8, pp. 5218–5232, Aug. 2017. pp. 80–86.
[28] X. Wang, J. Wang, X. Wang, and X. Chen, ‘‘Energy and delay tradeoff for
application offloading in mobile cloud computing,’’ IEEE Syst. J., vol. 11,
no. 2, pp. 858–867, Jun. 2017.
VENUS HAGHIGHI was born in Roudan, Iran,
[29] Y. Geng, W. Hu, Y. Yang, W. Gao, and G. Cao, ‘‘Energy-efficient compu-
tation offloading in cellular networks,’’ in Proc. IEEE 23rd Int. Conf. Netw.
in 1990. She received the B.S. degree in computer
Protocols (ICNP), Nov. 2015, pp. 145–155. engineering from the Shahid Bahonar University
[30] N. Balasubramanian, A. Balasubramanian, and A. Venkataramani, of Kerman in 2012, and the M.S. degree from the
‘‘Energy consumption in mobile phones: A measurement study and impli- Isfahan University of Technology in 2016.
cations for network applications,’’ in Proc. 9th ACM SIGCOMM Conf.
Internet Meas., Nov. 2009, pp. 280–293.
[31] F. Qian, Z. Wang, A. Gerber, Z. M. Mao, S. Sen, and O. Spatscheck,
‘‘Characterizing radio resource allocation for 3G networks,’’ in Proc. 10th
ACM SIGCOMM Conf. Internet Meas. (IMC), Nov. 2010, pp. 137–150.
[32] Y. Xiao et al., ‘‘Modeling energy consumption of data transmission over
Wi-Fi,’’ IEEE Trans. Mobile Comput., vol. 13, no. 8, pp. 1760–1773,
Aug. 2014. NAGHMEH S. MOAYEDIAN (S’06–M’11) was
[33] K. Lee, J. Lee, Y. Yi, I. Rhee, and S. Chong, ‘‘Mobile data offloading: How born in Pasau, Germany, in 1977. She received
much can WiFi deliver?’’ in Proc. 6th Int. ACM Conf., Nov. 2010, p. 26. the B.S., M.S., and Ph.D. degrees in electrical
[34] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to engineering from the Isfahan University of Tech-
the Theory of NP-Completeness. New York, NY, USA: Freeman, 1979. nology, Isfahan, Iran, in 1999, 2002, and 2009,
[35] K. Stachowiak and P. Zwierzykowski, ‘‘Lagrangian relaxation and linear respectively.
intersection based QoS routing algorithm,’’ Int. J. Electron. Telecommun., Since 2010, she has been with the ECE
vol. 58, no. 4, pp. 307–314, Dec. 2012. Department, Isfahan University of Technology.
[36] Z. Jia and P. Varaiya, ‘‘Heuristic methods for delay constrained least cost Her research interests include cloud networks,
routing using κ-shortest-paths,’’ IEEE Trans. Autom. Control, vol. 51, nanonetworks, and wireless networks.
no. 4, pp. 707–712, Apr. 2006.