Delay-Constrained Hybrid Computation Offloading With Cloud and

0 downloads 0 Views 4MB Size Report
Oct 25, 2017 - SPECIAL SECTION ON MOBILE EDGE COMPUTING FOR WIRELESS ... INDEX TERMS Cloud computing, computation offloading, delay ...... [13] X. Chen, L. Jiao, W. Li, and X. Fu, ''Efficient multi-user computation offloading ...
SPECIAL SECTION ON MOBILE EDGE COMPUTING FOR WIRELESS NETWORKS

Received June 30, 2017, accepted August 10, 2017, date of publication September 1, 2017, date of current version October 25, 2017. Digital Object Identifier 10.1109/ACCESS.2017.2748140

Delay-Constrained Hybrid Computation Offloading With Cloud and Fog Computing XIANLING MENG, WEI WANG, (Senior Member, IEEE), AND ZHAOYANG ZHANG, (Member, IEEE) College of Information Science and Electronic Engineering, Zhejiang Provincial Key Laboratory of Information Processing, Communication and Networking, Zhejiang University, Hangzhou 310027, China

Corresponding author: Wei Wang ([email protected]) This work was supported in part by the National Natural Science Foundation of China under 61571396, in part by the Zhejiang Provincial Natural Science Foundation of China under Grant LR17F010001, in part by the Young Elite Scientist Sponsorship Program by CAST under Grant 2016QNRC001, in part by the Talent Project of ZJAST under Grant 2017YCGC011, and in part by Fundamental Research Funds for the Central Universities under Grant 2015XZZX001-03.

ABSTRACT To satisfy the delay constraint, the computation tasks can be offloaded to some computing servers, referred to as offloading destinations. Different to most of existing works which usually consider only a single type of offloading destinations, in this paper, we study the hybrid computation offloading problem considering diverse computation and communication capabilities of two types of offloading destinations, i.e., cloud computing servers and fog computing servers. The aim is to minimize the total energy consumption for both communication and computation while completing the computation tasks within a given delay constraint. It is quite challenging because the delay cannot be easily formulated as an explicit expression but depends on the embedded communication-computation scheduling problem for the computation offloading to different destinations. To solve the computation offloading problem, we first define a new concept named computation energy efficiency and divide the problem into four subproblems according to the computation energy efficiency of different types of computation offloading and the maximum tolerable delay. For each subproblem, we give a closed-form computation offloading solution with the analysis of communicationcomputation scheduling under the delay constraint. The numerical results show that the proposed hybrid computation offloading solution achieves lower energy consumption than the conventional single-type computation offloading under the delay constraint. INDEX TERMS Cloud computing, computation offloading, delay optimization, wireless communications.

I. INTRODUCTION

With the rapid growing wireless services in our real life, more and more compute-intensive applications are executed at mobile terminals (MTs), such as image/speech recognition, video surveillance, virtual reality, etc [1]. However, some delay-constrained computation tasks cannot be completed in time by the MT due to its limited battery and low computing ability. Computation offloading can overcome the limitation of energy and computing capability of the MT [2], which distributes a part of computation tasks to some computing servers, referred to as offloading destinations. For computation offloading, the MT transmits the data of computation tasks to the offloading destinations over capacity-limited communication links such as wireless access links and backhaul links in LTE [3] and 5G [4] systems, and then the offloading destinations complete the computation tasks and send the results back to the MT [5], [6]. In this way, the VOLUME 5, 2017

delay-constrained computation tasks are completed with the help of offloading destinations. It is important to design the computation offloading strategy to select appropriate offloading destinations and schedule the communication and computation for different offloading destinations. Cloud computation offloading is an approach to offload the computation tasks to the cloud computing server. In [7], [8], cloud computation offloading and data caching are considered jointly with the concept of smart basestations. In [9], the long tail effect is analyzed for computation offloading, and the micro-wave power transfer is considered as a complement of computation offloading in [10]. The above existing researches on cloud computation offloading usually assume that the channel capacity is large enough for transmitting the data of computation tasks, which leads to the conclusion that cloud computation offloading can reduce delay and energy consumption effectively. Actually, this assumption does not

2169-3536 2017 IEEE. Translations and content mining are permitted for academic research only. Personal use is also permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

21355

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

always hold in practical systems, where the channel capacity is not very large, e.g., the computation offloading via wireless links. The data transmission between the MT and the cloud server cannot be ignored, especially for the delay-constrained computation tasks. Most existing computation offloading schemes did not provide a feasible method for completing the delay-constrained computation tasks. It is necessary to derive an efficient computation offloading scheme to complete the computation tasks under the given delay constraint. Different to cloud computation offloading, fog computation offloading offloads the computation tasks to fog computing servers [11], which usually have relatively lower computing capability compared to the cloud server. The computation tasks are offloaded to multiple fog servers, which provide enough computing capability for completing the computation tasks within the delay constraint. Mobile edge computing (MEC) [12], [13] generalizes the concept of fog computation offloading by letting the computing servers in close proximity to the MT. Based on this concept, [14] compares two types of offloading and describes the advantages of different types of offloading respectively. In recent research, D2D fogging [15] introduces a framework for the MTs to dynamically share their computation and communication resources from the economic perspective. In [16], an optimal network partition is provided for D2D multicast offloading to minimize the optimal energy consumption of the MTs. In [17], a delay-optimal problem is studied through adopting a Markov decision process approach to control the data transmission of computation tasks according to the channel information. In [18], a green MEC system with rechargeable devices is investigated and an effective computation offloading strategy is proposed. Fog computation offloading provides a good supplemental way for cloud computation offloading because its strong communication capability leads to a low delay for transmission of computation tasks. With the consideration of different communication and computation capabilities of both types of computation offloading, there are a couple of technical challenges involved. • Delay performance according to communicationcomputation scheduling: The delay cannot be easily formulated using an explicit expression but depends on the communication-computation scheduling for the computation offloading to different destinations. As the communication and computation delays are different for cloud and fog computation offloading, it is necessary to analyze the complicated time overlapping cases for communication-computation scheduling. • Energy-delay tradeoff for hybrid computation offloading: The relationship between delay and energy consumption of hybrid computation offloading is not trivial due to the characteristics of different types of computation offloading. The communication and computation delays for different types of offloading are coupled with each other due to the time overlapping. Thus, to satisfy the delay constraint, the computation 21356

offloading strategy should be adjusted carefully considering the cost in terms of energy consumption. In this paper, we study the hybrid computation offloading problem considering diverse computation and communication capabilities of two types of computation offloading destinations: cloud computing servers and fog computing servers. The computation offloading strategy is optimized to minimize the total energy consumption for both communication and computation while completing the computation tasks within a given delay constraint. To solve the computation offloading problem, we first define a new concept named computation energy efficiency and divide the problem into four subproblems according to the computation energy efficiency of offloading destinations and the maximum tolerable delay. For each subproblem, we give a closed-form computation offloading solution with the analysis of communicationcomputation scheduling under the delay constraint. The numerical results show that the proposed hybrid computation offloading solution achieves lower energy consumption than the conventional single type computation offloading for completing the computation tasks within the delay constraint. The remainder of this paper is organized as follows: In Section II, the system model is presented. Section III analyzes the delay of fog computation offloading. Section IV proposes the optimal computation offloading strategy. Section V discusses the communication-computation scheduling problem. Section VI provides the numerical results for performance evaluation. Finally, the conclusions are drawn in Section VII. II. SYSTEM MODEL

Consider a MT with computation tasks, a cloud computing server and a number of fog computing servers, as shown in Fig. 1. The computation offloading can be completed by three steps: request, computation, and response. The amount of computation tasks at the MT is denoted as λ. Denote h(req) and h(rsp) as the lengths of the request and response messages of a computation task respectively. Denote c as the amount of floating point operations of a computation task. For the energy consumption of the MT, we denote preq and prsp as the power for sending and receiving the data of a computation task respectively and pcomp as the power consumption of computing at the MT and the fog computing servers.

FIGURE 1. Network framework.

We first consider the local computation at the MT itself. By denoting µmt as the delay of completing a floating point VOLUME 5, 2017

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

operation at the MT, we express the computation delay and the energy consumption of the MT as (comp)

= cµmt ,

zmt = zmt Emt =

(comp) Emt

=

(1)

(comp) zmt pcomp

= cµmt pcomp .

(2)

A. CLOUD COMPUTATION OFFLOADING MODEL

Denote ecloud as the delay of transmitting a unit of data between the MT and the cloud server. For a single computation task, the communication delay for cloud computation offloading is (req)

(rsp)

zcloud = zcloud + zcloud = ecloud h(req) + ecloud h(rsp) , (3) (req)

where zcloud is the delay of sending the request messages from (rsp) the MT to the cloud server, and zcloud is the delay of sending the response messages. Denote µcloud as the delay of completing a floating point operation at the cloud server. The computation delay for cloud computation offloading is (comp)

zcloud = cµcloud .

(4)

Combining (3) and (4), the delay for cloud computation offloading can be expressed as (trans)

(comp)

zcloud = zcloud + zcloud .

(5)

For the energy consumption for cloud computation offloading, because the cloud server has adequate energy resources, the energy consumption of the cloud server is not taken into account [16]. The energy consumption for cloud computation offloading is (trans)

(req)

(rsp)

Ecloud = Ecloud = zcloud preq + zcloud prsp ,

(6)

(trans)

where Ecloud is the communication energy consumption for cloud computation offloading. B. FOG COMPUTATION OFFLOADING MODEL

Consider that the computation tasks are offloaded into m fog computing servers. To extract some insights, we assume that all the fog servers have the same computing capability as the MT and the same communication capability for the links to the MT. VOLUME 5, 2017

(trans)

zfog

(req)

(rsp)

= zfog + zfog = efog h(req) + efog h(rsp) ,

(req)

(comp)

where Emt is the computing energy consumption of (comp) the MT. Here, Emt = Emt because the local computation does not make any communication energy consumption. We consider two types of computation offloading models, including cloud computation offloading and fog computation offloading. Cloud computation offloading offloads the computation tasks into the cloud computing server and fog computation offloading offloads the computation task into the fog computing servers. Denote xcloud , xfog and xmt as the amount of computation tasks with cloud computation offloading, fog computation offloading and the local computation at the MT, respectively.

(trans)

Denote efog as the delay of transmitting a unit of data between the MT and the fog servers. The communication delay for fog computation offloading is (7)

(rsp)

where zfog and zfog are the delays of sending the request and response messages respectively. Denote µfog as the delay of completing a floating point operation at the fog servers. The computation delay at each fog server is cµfog (comp) . (8) zfog = m Different to the cloud computation offloading case, there are multiple fog computing servers, so the delay zfog is limited by either communication or computation, which will be analyzed in detail in Section III later. For fog computation offloading, the energy consumption of both the MT and the fog servers should be taken into account, we express the energy consumption as (trans)

Efog = Efog

(comp)

+ Efog

,

(9)

where the communication energy consumption and computing energy consumption of fog computation offloading are expressed as   (req) (rsp) (trans) Efog = zfog + zfog (preq + prsp ), (10) (comp)

Efog

(comp)

= zfog

pcomp m,

(11)

respectively. C. PROBLEM FORMULATION

Consider both cloud computation offloading and fog computation offloading, we try to formulate the hybrid computation offloading optimization problem. Table 1 lists the main notations used in this paper. Instead of simply expressing the total delay as Z = max{zcloud xcloud , zfog xfog , zmt xmt }, we have to consider the time overlapping of different types of offloading due to the single radio interface of the MT. Specifically, the communication-computation scheduling must be considered because the communication delay and the computation delay overlap with each other. It is hard to describe the total delay by an explicit expression. In order to show the effect of scheduling in the hybrid computation offloading problem, we denote σ as the result of the scheduling problem and the total delay, denoted as Z , can be expressed as Z = σ {zcloud xcloud , zfog xfog , zmt xmt }.

(12)

The total energy consumption, denoted as E, can be expressed as E = Ecloud xcloud + Efog xfog + Emt xmt .

(13)

Denote Zmax as the maximum tolerable delay, and M as the number of available fog computation servers. The hybrid computation offloading problem for minimizing the 21357

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

TABLE 1. List of notations.

FIGURE 2. Two cases of delay analysis for fog computation offloading. (a) Computation-limited delay, z1 . (b) Communication-limited delay, z2 .

energy consumption with the delay constraint is formulated as follows: min

xcloud ,xfog ,xmt ,m,σ

E

s.t. Z ≤ Zmax xcloud ∈ [0, λ] xfog ∈ [0, λ]

If the computation delay is short, the total delay mainly depends on the communication delay as shown in Fig. 2(b). In the communication-limited case, the delay for fog computation offloading consists of the delay of sending the request messages from the MT to all the fog servers and the delay of sending the response messages from all the fog servers to the MT. The delay for the communication-limited case is expressed as (req)

xcloud + xfog + xmt = λ m ∈ {1, 2, 3, . . . , M }

(14)

III. DELAY ANALYSIS FOR FOG COMPUTATION OFFLOADING

Before solving the above optimization problem, we first analyze the delay expression for fog computation offloading. Unlike cloud computation offloading that there is usually only one offloading destination, fog computation offloading involves a number of fog computing servers. Since the MT has only a single radio interface, the data of computation tasks should be transmitted in a time division manner. According to the relationship between the delays of communication and computation, the total delay has different expressions. If the computation delay is long enough so that the total delay mainly depends on the computation delay as shown in Fig. 2(a). In the computation-limited case, the delay for fog computation offloading consists of the delay of sending the request messages from the MT to all the fog servers, the delay of computing the computation task at one fog server and the delay of sending the response message from one fog server to the MT. The delay for the computation-limited case is expressed as (req)

z1 = zfog + 21358

1 (rsp) (comp) z + zfog . m fog

(rsp)

z2 = zfog + zfog .

xmt ∈ [0, λ]

(15)

(16)

From the delay expressions in (15) and (16), we provide the explicit expression of zfog in the following lemma. Lemma 1: The delay for fog computation offloading is ( z1 , if m < me1 , (17) zfog = z2 , if m ≥ me1 . where me1 = 1 +

cµfog . efog h(rsp)

(18)

Proof: To prove this lemma, we first try to obtain the threshold of m for determining which one of z1 and z2 is larger by letting z1 = z2 . From (15) and (16), we obtain 1 (rsp) (comp) (req) (rsp) z + zfog = zfog + zfog . (19) m fog By solving the above equation, we obtain the solution m = me1 as (18). Next, we prove the monotonicity of z1 − z2 in m. Denote zdiff = z1 − z2 . The derivative of zdiff with respect to m is (req)

zfog +

dzdiff d(z1 − z2 ) 1 (rsp) = = − 2 zfog < 0. (20) dm dm m According to the above analysis, zdiff is monotonic decreasing. Due to the monotonicity of (z1 − z2 ) in m, we obtain (17) and the lemma is proved. After obtaining the delay expression for fog computation offloading, we further compare it with the delay for cloud computation offloading in the following lemma. VOLUME 5, 2017

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

Lemma 2: For completing the same amount of computation tasks, zfog > zcloud if m < me2 , and zfog ≤ zcloud if m ≥ me2 , where me2 =

efog h(rsp) + cµfog . ecloud (h(req) + h(rsp) ) + cµcloud − efog h(req)

(21)

Proof: Compared to the cloud server, the fog servers usually have shorter distance to the MT, and fog computation offloading can support a higher rate for transmitting the data of computation tasks, so efog < ecloud is considered as practical networks. When zfog = z1 , we calculate the threshold of m by letting zcloud = z1 , From (5) and (15), we obtain 1 (rsp) (comp) z + zfog . (22) m fog By solving the above equation, we obtain the solution m = me2 as (21). Due to the monotonicity of z1 in m, we obtain ( m ≥ me2 H⇒ zfog ≤ zcloud , m < me2 H⇒ zfog > zcloud . (trans)

(comp)

(req)

zcloud + zcloud = zfog +

When zfog = z2 , because efog < ecloud , it always holds that zfog < zcloud . Fig. 3 illustrates the delay with different numbers of fog computing servers. From Fig. 3 we find that z1 is a monotonic decreasing function of m and the delay for fog computation offloading is limited by the larger one of z1 and z2 . The intersection point of the blue and red curves shows the threshold me1 provided in Lemma 1. With a large enough number of fog servers, fog computation offloading is a better choice than cloud computation offloading. The intersection point of the green and red curves verifies the threshold me2 provided in Lemma 2. Note that it always holds that me1 ≥ me2 according to (18) and (21).

FIGURE 3. The relation between the delay and the number of fog computing servers.

IV. OPTIMAL COMPUTATION OFFLOADING A. OBSERVATIONS ON CLOUD AND FOG COMPUTATION OFFLOADING

To solve the hybrid computation offloading problem, we first discuss the properties of cloud and fog computation offloading. VOLUME 5, 2017

The properties of cloud computation offloading include: • Adequate energy resource: The energy resource of the cloud server is usually considered to be adequate due to its steady power supply. • Strong computing capability: The computing capability of the cloud server is much more powerful than that of a fog server. • Weak communication capability: The communication between the cloud server and the MT is costly with a large communication delay due to their long distance. The properties of fog computation offloading include: • Limited energy resource: The energy consumption of fog servers need to be considered since some fog servers are powered by the battery. • Weak computing capability: The computing capability of a fog server is usually relatively low compared to the cloud server. • Strong communication capability: Fog servers are deployed at the edge of the network, so the communication between the fog servers and the MT is usually cheap and fast. Different to the previous publications which usually define the energy efficiency as the data transmitted by consuming a unit of energy, we define a new metric called computation energy efficiency as follows: Definition 1: The computation energy efficiency (CEE) is defined as the amount of the computation tasks that are offloaded by consuming a unit of energy. Based on the properties of cloud and fog computation offloading, we obtain the following two observations on the CEE. Observation 1: With the assumption that the MT and the fog servers have the same computation energy consumption for floating point operation, since extra energy is consumed for transmitting the data of computation tasks for the computation offloading to the fog servers, the CEE of the local computation is always higher than that of fog computation offloading. Observation 2: The energy consumption is linear to the amount of computation tasks. Thus, for minimizing the energy consumption of completing the computation tasks, the offloading with the higher CEE should be allocated first if the delay constraint can be satisfied. Based on the above two observations, we divide the hybrid computation offloading problem into four subproblems, as shown in Fig. 4. When CEEcloud ≥ CEEfog , we first consider the cloudonly computation offloading subproblem. The subproblem is to determine the allocation between the local computation and the cloud computation offloading. If the cloud-only computation offloading cannot complete the computation tasks under the given delay constraint, the fog computation offloading needs to be added and we consider the cloudfirst computation offloading subproblem. In this subproblem, 21359

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

FIGURE 4. Four subproblems for hybrid computation offloading.

both types of computation offloading are adopted and the cloud computation offloading has a higher priority for minimizing the energy consumption with satisfying the delay constraint. When CEEcloud < CEEfog , we first consider the fogonly computation offloading subproblem. The CEE of the local computation is higher than that of fog computation offloading according to Observation 1, so the local computation is always full loading if the fog computation offloading is adopted. If the fog-only computation offloading cannot complete the computation tasks under the given delay constraint, cloud computation offloading needs to be added and we consider the fog-first computation offloading subproblem. In this subproblem, both types of computation offloading are adopted and the fog computation offloading has a higher priority for minimizing the energy consumption with satisfying the delay constraint. B. OPTIMAL OFFLOADING SOLUTION

Following the conditions of the four subproblems, we first determine which type of computation offloading has a higher CEE. Definition 2: The CEE ratio is defined as the ratio of the CEE of cloud computation offloading to that of fog computacloud tion offloading, denoted as η = CEE CEEfog . From (6) and (9), we have η= =

CEEcloud CEEfog 2efog cµfog pcomp + · . ecloud ecloud (h(req) + h(rsp) ) ptrans

(23)

According to the value of η, we determine which type of computation offloading has a higher CEE. If η ≥ 1, CEEcloud ≥ CEEfog , else CEEcloud < CEEfog . Next, we consider the optimal computation offloading solutions for these four subproblems respectively. 21360

1) CLOUD-ONLY COMPUTATION OFFLOADING

In this subproblem, xfog = 0. The optimization problem can be simplified as min

xcloud ,xmt

E

s.t. Z ≤ Zmax xcloud ∈ [0, λ] xmt ∈ [0, λ] xcloud + xmt = λ

(24)

According to the above simplified optimization problem, we first derive the conditions of this o o subproblem. n n Zmax max , ≤ min λ, zZcloud Lemma 3: If max 0, λ − zmt the original optimization problem (14) can be simplified as the cloud-only computation offloading subproblem (24). Proof: From the delay constraint, we have xmt zmt ≤ Zmax and xcloud zcloud ≤ Zmax . By solving these two inequamax tions, we obtain that xmt ≤ Zzmax . Because and xcloud ≤ zZcloud mt of the upper bound of xmt , for completing the computation tasks within the maximum tolerable delay, xcloud ≥ λ − Zzmax . mt Based on the above analysis, we obtain the feasible region of xcloud as      Zmax Zmax max 0, λ − ≤ xcloud ≤ min λ, (25) zmt zcloud n o n o Zmax If max 0, λ − Zzmax ≤ min λ, zcloud , the feasible domain mt of xcloud is not empty, and this subproblem has an optimal solution. Next, we consider the preference of the local computation at the MT and the cloud computation offloading. We provide the optimal solution of the cloud-only computation offloading subproblem (24) in the following theorem. Theorem 1: The optimal solution of the cloud-only computation offloading subproblem (24) is  o n max 0, λ − Zmax , if CEEmt ≥ CEEcloud ; ∗ n ozmt xcloud = min λ, Zmax , if CEEmt < CEEcloud . zcloud VOLUME 5, 2017

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

n o Proof: From Lemma 3, when max 0, λ − Zzmax ≤ mt o n Zmax min λ, zcloud , the computation tasks can be completed by

for the optimization problem of m. min m

cloud computation offloading only. We rewrite the expression of E in (13) as a function of xcloud , E = Ecloud xcloud + Emt (λ − xcloud ),

1 (rsp) (comp) z + zfog ) m fog Zmax Zmax (comp) Zmax (λ − − ) ≤ zcloud zcloud zmt zcloud m ∈ {1, 2, 3, . . . , M } (req)

s.t. (zfog +

(26)

Take the derivation of E with respect to xcloud , dE = Ecloud − Emt . dxcloud

(27)

From the expression of the derivation we know that if ≥ 0 and the optimal CEEmt ≥ CEEcloud , we obtain dxdE cloud n o ∗ solution xcloud = max 0, λ − Zzmax ; if CEEmt < CEEcloud , mt ∗ < 0 and the optimal solution xcloud = we obtain dxdE cloud n o Zmax min λ, zcloud .

If max{0, λ −

Zmax zmt }

>

max }, the cloudmin{λ, zZcloud

only computation offloading subproblem has no feasible solution and the computation tasks cannot be completed by cloud computation offloading only. In this case, fog computation offloading should be considered together with cloud computation offloading to satisfy the delay constraint. 2) CLOUD-FIRST COMPUTATION OFFLOADING

Because CEEfog < CEEcloud , the cloud computation offloading has a higher priority than the fog computation offloading if the delay constraint can be satisfied. (comp) max max Theorem 2: If z2 (λ− zZcloud − Zzmax ) ≤ zcloud zZcloud , the optimt mal solution of the cloud-first computation offloading subproblem (14) is   ∗ = Zmax ,  xmt   zmt   Zmax ∗ xcloud = ,  zcloud     ∗ = λ − Zmax − Zmax . xfog zmt zcloud Proof: We first let both the cloud computation offloading and the local computation at the MT is full loading, ∗ ∗ ∗ max = Zzmax , xcloud = zZcloud and xfog = λ − i.e., xmt mt ∗ − x∗ xmt cloud . For reducing the total delay, fog computation offloading can utilize the time of the computation part of cloud computation offloading, which denoted as zfog xfog ≤ (comp) zcloud xcloud . From Fig. 4, the lower bound of zfog is z2 . With (16) we transform the above inequation to z2 (λ − (comp) Zmax Zmax Zmax zcloud − zmt ) ≤ zcloud zcloud . If this equation is satisfied, it is

feasible to complete the computation task under the delay constraint. Next, we try to obtain the lower bound of m to complete the computation tasks. With the decrease of m, zfog = z1 . With (15), the condition in Theorem 2 provides a constraint VOLUME 5, 2017

(28)

By solving the above problem, the optimal number of fog servers m∗ is   (rsp) z · A fog , (29) m∗ =   (comp)   zcloud zmt Zmax − A · B  where A = λzcloud zfog − Zmax zmt − Zmax zcloud , (req)

(comp)

B = zfog + zfog If z2 (λ −

Zmax zcloud



Zmax zmt )

. (comp) Zmax zcloud

> zcloud

the delay constraint

is not satisfied with the full loading local computation and cloud computation offloading. Because of the monotonicity of zfog in m, for obtaining the minimal delay for fog computation offloading, we have m = min{me1 , M }. For minimizing the total delay, according to Observation 1, the local compu∗ = Zmax , tation at the MT should still be full loading, i.e., xmt zmt due to the presence of fog computation offloading. Thus, in this case, cloud computation offloading should not be full loading. If m ≥ me1 , zfog = z2 . In this condition, the request and response of fog computation offloading occupy all the time within Zmax (refer to z2 in Fig. 2(b)), so the transceiver of the MT is fully occupied. We can add fog computation offloading into the time period of the computation part of the cloud computation offloading, (trans)

∗ − xcloud ) = Zmax . zcloud xcloud + z2 (λ − xmt

(30)

By solving the above equation, we obtain the optimal solution ∗ ]. If not, this problem does not of xcloud if xcloud ∈ [0, λ − xmt have any feasible solution. If m < me2 , the delay of fog computation offloading is longer than that of cloud computation offloading for completing the same computation tasks, so this problem does not have any feasible solution. If me2 ≤ m < me1 , zfog = z1 and zfog < zcloud , it is possible to reduce the delay for satisfying the delay constraint Z ≤ Zmax by adjusting the task allocation of cloud computation offloading and fog computation offloading. The specific solution highly depends on the communicationcomputation scheduling for the computation offloading to different offloading destinations. We will discuss the details of the scheduling problem later in Section V. 21361

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

3) FOG-ONLY COMPUTATION OFFLOADING

In this subproblem, η < 1 and xcloud = 0. The optimization problem (14) can be simplified as min

xfog ,xmt ,m

E

4) FOG-FIRST COMPUTATION OFFLOADING

s.t. Z ≤ Zmax xfog ∈ [0, λ] xmt ∈ [0, λ] xfog + xmt = λ m ∈ {1, 2, 3, . . . , M }

(31)

According to the above simplified optimization problem, we first derive the conditions for this subproblem. + Zzmax ≥ λ, the original optimization Lemma 4: If Zzmax mt fog problem (14) can be simplified as the fog-only computation offloading subproblem (31). Because xmt ≤ Zzmax and xfog ≤ Zzmax , the Lemma 4 is easy mt fog to prove and we omit the details for brevity. Theorem 3: If Zmax ≥ λzmt , the optimal solution of fog-only computation offloading is ( ∗ = 0; xfog ∗ = λ. xmt and if Zmax < λzmt , the optimal solution of fog-only computation offloading is  Zmax ∗   xfog = λ − z ;  mt    ∗ Zmax  xmt = ; zmt   (rsp)   zfog (λzmt − Zmax )   .  m∗ =    req (comp)    zmt Zmax − (λzmt − Zmax )(zfog + zfog )  Proof: Based on Observation 1, if Zmax ≥ λzmt , the computation tasks can be completed only by the MT. We allocate all the computation tasks to the MT and obtain ∗ = 0, x ∗ = λ. the optimal solution xfog mt If Zmax < λzmt , the computation task cannot be completed by the MT only and fog computation offloading needs to be considered. Let the local computation at the MT full loading ∗ = Zmax , then x ∗ = λ−x ∗ . Next, we solve the following xmt mt fog zmt optimization problem for obtaining the optimal number of fog computing servers m∗ . min m Zmax )z1 ≤ Zmax zmt Zmax (λ − )z2 ≤ Zmax zmt m ∈ {1, 2, 3, . . . , M }

s.t. (λ −

(32)

If this problem has a feasible solution, the computation tasks can be completed in this subproblem and we obtain the optimal m∗ . If this problem does not have any feasible solution, the subproblem has no solution. 21362

If this subproblem has no solution, cloud computation offloading should be considered together with fog computation offloading to satisfy the delay constraint.

Similar to the cloud-first computation subproblem, we need to consider the number of fog servers m for determining the expression of zfog . Based on the monotonicity of zfog in m, we assume m = min{me1 , M }. If m ≥ me1 , zfog = z2 , the transceiver of the MT is occupied over all the time with in Zmax and there is not any idle time for cloud computation offloading, so this optimization problem has no solution. If me2 ≤ m < me1 , zfog = z1 and zfog < zcloud . Under this condition, the transceiver of the MT is not fully occupied. We first let the fog computation offloading and the local ∗ computation at the MT full loading as xfog = Zmax z1 and Z ∗ − x ∗ . Define 1 as the ∗ = max . Then x ∗ xmt = λ − x mt cloud fog zmt time period when all the fog servers are computing, 1 (rsp) (rsp) (comp) 1 = zfog + zfog − zfog m m − 1 (rsp) (comp) = zfog − z . (33) m fog With the time period 1, we rewrite the expression of z1 as (req)

(rsp)

z1 = zfog + 1 + zfog .

(34)

We schedule the cloud computation offloading in the time ∗ ∗ 1. period 1 and check the inequation xcloud zcloud ≤ xfog If the inequation is satisfied, the computation tasks can be completed. Otherwise, because zfog < zcloud , we cannot reduce the total delay by adjusting the task allocation of two types of offloading and thus, this subproblem has no solution. If m < me2 , the analysis is similar to the cloud-first computation offloading subproblem and the solution can be obtained according to the communication-computation scheduling problem in Section V. V. COMMUNICATION-COMPUTATION SCHEDULING FOR COMPUTATION OFFLOADING

In the cloud-first computation offloading and fog-first computation offloading subproblems, it is possible to reduce the delay for satisfying the delay constraint Z ≤ Zmax by adjusting the task allocation of both types of offloading. The specific solution highly depends on the communication and computation scheduling for the computation offloading to different offloading destinations. In this section, we take the cloud-first computation offloading subproblem as an example to discuss the solution of the communication-computation scheduling problem. The fog-first computation offloading subproblem can be analyzed in a similar approach and we omit the details for brevity. This problem schedules the communication and computation parts for different offloading destinations, and aims to reduce the total delay by overlapping the communication and computation parts under the following constraints: VOLUME 5, 2017

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

Delay constraint: The total delay should satisfy Z ≤ Zmax ; • Order constraint: For one destination, the process order of offloading a computation task must be requestcomputation-response; • Communication constraint: At most one communication link can be activated at the same time due to the single radio interface of the MT. In the cloud-first computation offloading subproblem, cloud computation offloading consumes less energy than fog computation offloading. We try to maximize the task amount of cloud computation offloading xcloud instead of minimizing the total energy consumption E, which are equivalent. Because the total delay can be reduced by increasing the amount of the computation tasks offloaded by fog computation offloading, and the MT has only one radio interface, the data for cloud and fog computation offloading cannot be transmitted at the same time. By overlapping the computation part of fog computation offloading and the communication part of cloud computation offloading, or the communication part of fog computation offloading and the computation part of cloud computation offloading, we can complete more computation tasks within the maximum tolerable delay. We enumerate four cases based on the order of the request and response messages for both types of computation offloading as follows: • CASE 1 (cloud’s request first, fog’s response first): The computation part of cloud computation offloading and the total process of fog computation offloading are overlapped. • CASE 2 (fog’s request first, cloud’s response first): The computation part of fog computation offloading and the total process of cloud computation offloading are overlapped. • CASE 3 (cloud’s request first, cloud’s response first): The computation part of cloud computation offloading and the request part of fog computation offloading are overlapped. The response part of cloud computation offloading and the computation part of fog computation offloading are overlapped. • CASE 4 (fog’s request first, fog’s response first): The computation part of fog computation offloading and the request part of cloud computation offloading are overlapped. The response part of fog computation offloading and the computation part of cloud computation offloading are overlapped. Fig. 5 illustrates the above four scheduling cases. Next, we analyze the feasible domain and the optimal offloading solution for each case respectively. Case 1: We formulate the following linear problem: •

(trans)

f1 (xcloud ) = zcloud xcloud + z1 xfog (trans)

∗ = (zcloud − z1 )xcloud + z1 (λ − xmt ). ∗ By solving the above problem, we obtain xcloud . ∗ Theorem 4: In CASE 1, if xcloud does not satisfy ∗ ) 1(λ − xmt (comp) zcloud

+1

∗ < xcloud ≤

Zmax , zcloud

(36)

the optimal solution in CASE 1 is not an optimal solution of the scheduling problem. ∗ max Proof: If xcloud = zZcloud , cloud computation offloading is full loading, and the upper bound of xcloud in CASE 1 is Zmax Zcloud . Thus, if the solution of problem (35) is bigger than Zmax zcloud ,

If

it is an infeasible solution.

∗ xcloud


(comp) mt , zcloud +1

vice versa. Case 2: We formulate the following linear problem: s.t. f2 (xcloud ) ≤ Zmax

s.t. f1 (xcloud ) ≤ Zmax

VOLUME 5, 2017

where

max xcloud

max xcloud xcloud ∈

FIGURE 5. Illustration of different scheduling cases. (a) CASE 1. (b) CASE 2. (c) CASE 3. (d) CASE 4.

∗ [0, λ − xmt ]

(35)

∗ xcloud ∈ [0, λ − xmt ]

(37) 21363

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

where (trans)

f2 (xcloud ) = zfog

xfog + zcloud xcloud (trans)

= (zcloud − zfog

(trans)

)xcloud + zfog

∗ (λ − xmt ).

∗ By solving the above problem, we obtain xcloud . ∗ Theorem 5: In CASE 2, if xcloud does not satisfy ∗ ) 1(λ − xmt 1(λ − x ∗ ) ∗ ≤ xcloud ≤ (comp) mt , zcloud + 1 zcloud + 1

(38)

the optimal solution in CASE 2 is not an optimal solution of the scheduling problem. ∗ Proof: According to Theorem 4, the domain of xcloud in ∗ ) 1 (λ−x ∗ ∗ mt CASE 2 has been limited to {xcloud | xcloud < (comp) }. zcloud +1

We prove the lower bound by contradiction. If the computation tasks can be completed by the scheduling in CASE 2 under the delay constraint, there exists an optimal solution of ∗ ) 1 (λ−xmt ∗ ∗ ∗ + xcloud that satisfies xcloud < zcloud +1 . Because of xcloud ∗ ) zcloud (λ−xmt zcloud +1 . ∗ find zcloud xcloud

∗ + x ∗ = λ, we obtain x ∗ ≥ xfog mt fog

Based on

∗ ∗ , we ∗ . the domain of xcloud and xfog < 1xfog It means that the cloud computation offloading does not fill all the time period 1 of fog computation offloading, ∗ ∗ to satso it is feasible to increase xcloud and decrease xfog ∗ ∗ . This adjustment will not violate isfy zcloud xcloud = 1xfog the delay constraint because the adjustment just increases the amount of the computation tasks for cloud computation offloading, which costs more time but needs lower energy consumption, to reduce the energy consumption while satisfying the delay constraint at the same time. By the above ∗ adjustment, we obtain another solution better than xcloud , which leads to a contradiction to the assumption that ∗ xcloud is a optimal solution. Therefore, the lower bound is proved. Case 3: We formulate the following linear problem:

max xcloud s.t. f3 (xcloud ) ≤ Zmax ∗ xcloud ∈ [0, λ − xmt ]

(39)

where (req)

(rsp)

f3 (xcloud ) = zcloud xcloud + zfog xfog + φ (comp)

(rsp)

φ = max{(zcould + zcloud )xcloud , (req)

(rsp)

(req)

zfog xfog + zcloud xcloud , (zfog + 1)xfog }. ∗ By solving the above problem, we obtain xcloud . With different xcloud and xfog , the expression φ has different forms as illustrated in Fig. 6. By calculating and comparing 21364

(comp)

FIGURE 6. Different forms of delay in CASE 3. (a) φ = (zcloud +

(rsp) (req) (rsp) (req) zcloud )xcloud . (b) φ = zfog xfog + zcloud xcloud . (c) φ = (zfog + 1)xfog .

the terms of φ, we obtain    (comp) (rsp)  ∗  (zcloud + zcloud )xcloud ,        (req) ∗ (rsp) ∗    zfog xfog + zcloud xcloud , φ=

            (req) ∗   (zfog + 1)xfog ,

(req)

if

∗ xcloud



∗ ) zfog (λ − xmt (req)

(comp)

;

zfog + zcloud ∗ ) 1(λ − xmt ∗ ≤ xcloud if (rsp) 1 + zcloud (req) ∗ ) zfog (λ − xmt ; < (req) (comp) zfog + zcloud ∗ ) 1(λ − xmt ∗ if xcloud < . (rsp) 1 + zcloud

We can transform the expression of Zmax into a piecewise ∗ function by discussing different regions of xcloud as  (rsp) ∗ (rsp) ∗ )  (zcloud − zfog )xcloud + zfog (λ − xmt    (req)  ∗ )  zfog (λ − xmt   ∗  if xcloud ≥ (req)  (comp)   zfog + zcloud    (trans) (trans) ∗ (trans)  ∗  (zcloud − zfog )xcloud + zfog (λ − xmt ) ∗ (req) ∗ ) f3 (xcloud ) = ∗ ) zfog (λ − xmt 1(λ − xmt  ∗  ≤ x < if  cloud (rsp) (req) (comp)   1 + zcloud zfog + zcloud    (req)  ∗ ∗ )  (zcloud − z1 )xcloud + z1 (λ − xmt    ∗  1(λ − xmt )  ∗    if xcloud < (rsp) 1 + zcloud (40) Case 4: We formulate the following linear problem: max xcloud s.t. f4 (xcloud ) ≤ Zmax xcloud ∈

(41)

∗ [0, λ − xmt ] VOLUME 5, 2017

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

where (req)

(rsp)

f4 (xcloud ) = zfog xfog + zcloud xcloud + ψ (rsp)

(req)

(rsp)

ψ = max{(1 + zfog )xfog , zcloud xcloud + zfog xfog , (req)

(comp)

(zcloud + zcloud )xcloud }. ∗ By solving the above problem, we obtain xcloud . We consider this case using the approach similar to CASE 3 and Zmax is expressed as a piecewise function as  (rsp) ∗ (req) ∗ )  (zcloud − zfog )xcloud + zfog (λ − xmt    (rsp)  ∗ )  zfog (λ − xmt   ∗  if xcloud ≥ (comp)  (rsp)   zcloud + zfog    (trans) (trans) ∗ (trans)  ∗  (zcloud − zfog )xcloud + zfog (λ − xmt ) ∗ (rsp) ∗ ) f4 (xcloud ) = ∗ ) zfog (λ − xmt 1(λ − xmt  ∗  ≤ x < if  cloud (req) (comp) (rsp)   zcloud + 1 zcloud + zfog    (rsp)  ∗ ∗ )  (zcloud − z1 )xcloud + z1 (λ − xmt    ∗  1(λ − xmt )  ∗    if xcloud < (req) zcloud + 1 (42)

For finding the optimal solution of delay-constrained computation offloading, we jointly consider the above four cases, ∗ for obtaining the maximum value of xcloud . max xcloud

FIGURE 7. Energy consumption with different CEE ratios.

the case that Zmax is large enough such that either cloud computation offloading or fog computation offloading can complete the computation tasks. The simulation results show that when η < 1, the proposed hybrid computation offloading has the same energy consumption as fog computation offloading, and when η ≥ 1, it has the same performance as cloud computation offloading. This implies that the hybrid computation offloading makes a good choice between cloud computation offloading and fog computation offloading. Note that choosing the better one is just under the assumption that Zmax is large enough. The proposed hybrid computation offloading can complete the computation tasks within a small Zmax even when neither cloud computation offloading nor fog computation offloading can complete.

xcloud

s.t. Z ≤ Zmax Z = min{f1 (xcloud ), f2 (xcloud ), f3 (xcloud ), f4 (xcloud )} ∗ xcloud ∈ [0, λ − xmt ]

The above problem is a linear optimization problem and it is ∗ easy to obtain the optimal solution xcloud . VI. PERFORMANCE EVALUATION

In this section, the performance of the proposed delayconstrained hybrid computation offloading scheme is evaluated. For performance comparison, we adopt cloud computation offloading and fog computation offloading as the baselines. The amount of computation tasks λ is set as 10. Parameters h(req) , h(rsp) and c are set as 0.5, 0.3 and 10, respectively. The power preq , prsp and pcomp are set as 8, 4 and 2. If the computation tasks cannot be completed within the given delay, we use a very large energy consumption to express the infeasibility. A. CEE RATIO

We first compare the performances of the hybrid, cloud and fog computation offloading schemes with different CEE ratios η in Fig. 7. The CEE ratio η is a key parameter to choose between cloud computation offloading and fog computation offloading. The logarithmic coordinate is adopted for the CEE ratio. In this simulation, efog is set as 0.1 and ecloud is changed to satisfy the value of η. To show the choice of two types of computation offloading, in Fig. 7, we consider VOLUME 5, 2017

B. COMMUNICATION-COMPUTATION PARAMETER REGIONS FOR SUBPROBLEMS

We analyze the parameter regions for four subproblems in Fig. 8. The value of η is based on the communication and computation capabilities of cloud computation offloading and fog computation offloading, i.e., ecloud , efog , µcloud and µfog . Because the effect factors of cloud and fog computation offloading are independent, when analyzing the parameters about cloud computation offloading, we fix the parameters about fog computation offloading. Fig. 8(a) demonstrates the effects of ecloud and µcloud . The blue line means that the cloud and fog computation offloading consume the same amount of energy for completing the same computation tasks, which is the solution of η = 1. Because µcloud does not appear in the expression of η, the blue line is a horizontal line. The red line provides a threshold to judge whether cloud-only computation offloading can complete the computation tasks, which is the solution of the cloud-only computation offloading problem. These two lines split the whole space into three regions. In the region ‘‘Fog-only & Fog-first’’, fog computation offloading consumes less energy than cloud computation offloading. In the region ‘‘Cloud-first’’, cloud computation offloading consumes less energy than fog computation offloading but both types of computation offloading are necessary to complete the tasks under the delay constraint. In the region ‘‘Cloud-only’’, cloud computation offloading has enough capability to complete the computation tasks. 21365

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

FIGURE 8. Communication-computation parameter regions for subproblems. (a) µfog = 0.295 and efog = 0.1. (b) µcloud = 0.00005 and ecloud = 5.

FIGURE 9. Energy consumption under different delay constraints Zmax . (a) η ≥ 1. (b) η < 1.

Fig. 8(b) demonstrates the effects of efog and µfog . The blue line has the same meaning in Fig. 8(a). The green curve provides a threshold to judge whether fog-only computation offloading can complete the computation tasks which is the solution of the fog-only computation offloading subproblem. Like Fig. 8(a), two curves split the whole space into three regions. In the region ‘‘Cloud-only & Cloud-first’’, cloud computation offloading consumes less energy than fog computation offloading. In the region ‘‘Fog-first’’, fog computation offloading consumes less energy consumption than fog computation offloading but both types of computation offloading are necessary to complete the tasks under the delay constraint. In the region ‘‘Fog-only’’, fog computation offloading has enough capability to complete the computation tasks. C. MAXIMUM TOLERABLE DELAY

Fig. 9 shows the energy consumption performance under different delay constraint Zmax . For η ≥ 1 in Fig. 9(a), ecloud , efog , µcloud and µfog are set as 2.5, 0.5, 0.00005 and 0.667, respectively. M is set as 10. Cloud computation offloading is a better choice than that of fog computation offloading, so if cloud-only computation offloading can complete the computation task, the proposed hybrid computation offloading makes the same decision as cloud computation offloading. 21366

With a small Zmax , cloud computation offloading cannot complete the tasks and the advantage of hybrid computation offloading under the delay constraint is more significant. When Zmax is small, hybrid computation offloading can still complete the computation tasks by communicationcomputation scheduling. For η < 1 in Fig. 9(b), ecloud , efog , µcloud and µfog are set as 2.5, 0.5, 0.00005 and 0.667, respectively. The power preq , prsp and pcomp are set as 24, 12 and 2. M is set as 3. In this condition, fog computation offloading is a better choice than cloud computation offloading. From the results, we can also conclude that hybrid computation offloading outperforms the conventional singletype computation offloading methods. VII. CONCLUSION

In this paper, we solve the hybrid computation offloading problem considering two types of computation offloading destinations: cloud computing servers and fog computing servers. The task allocation for computation offloading to different offloading destinations is optimized to minimize the total energy consumption while completing the computation tasks within a given delay constraint. To solve the computation offloading problem, we first define the computation energy efficiency and divide the problem into four subproblems according to the computation energy efficiency VOLUME 5, 2017

X. Meng et al.: Delay-Constrained Hybrid Computation Offloading

of different types of computation offloading and the maximum tolerable delay. For each subproblem, we give a closedform computation offloading solution with the analysis of communication-computation scheduling under the delay constraint. The numerical results show that the proposed computation offloading solution achieves lower energy consumption than the conventional single-type computation offloading while completing the computation tasks within the delay constraint. REFERENCES [1] K. Kumar, J. Liu, Y.-H. Lu, and B. Bhargava, ‘‘A survey of computation offloading for mobile systems,’’ Mobile Netw. Appl., vol. 18, no. 1, pp. 129–140, Feb. 2013. [2] K. Kumar and Y.-H. Lu, ‘‘Cloud computing for mobile users: Can offloading computation save energy?’’ Computer, vol. 43, no. 4, pp. 51–56, Apr. 2010. [3] F. Lobillo et al., ‘‘An architecture for mobile computation offloading on cloud-enabled LTE small cells,’’ in Proc. IEEE Wireless Commun. Netw. Conf. Workshops (WCNCW), Apr. 2014, pp. 1–6. [4] O. Chabbouh, S. B. Rejeb, Z. Choukair, and N. A. Ueve, ‘‘Computation offloading decision algorithm for energy saving in 5G/HetNets C-RAN,’’ in Proc. IEEE ICMCS, Sep. 2016, pp. 284–289. [5] X. Ma, Y. Zhao, L. Zhang, H. Wang, and L. Peng, ‘‘When mobile terminals meet the cloud: Computation offloading as the bridge,’’ IEEE Netw., vol. 27, no. 5, pp. 28–33, Sep. 2013. [6] Y. D. Lin, E. T. H. Chu, Y. C. Lai, and T. J. Huang, ‘‘Time-and-energyaware computation offloading in handheld devices to coprocessors and clouds,’’ IEEE Syst. J., vol. 9, no. 2, pp. 393–405, Jun. 2015. [7] W. Fan, Y. Liu, B. Tang, F. Wu, and H. Zhang, ‘‘TerminalBooster: Collaborative computation offloading and data caching via smart basestations,’’ IEEE Wireless Commun. Lett., vol. 5, no. 6, pp. 612–615, Dec. 2016. [8] S. Guo, B. Xiao, Y. Yang, and Y. Yang, ‘‘Energy-efficient dynamic offloading and resource scheduling in mobile cloud computing,’’ in Proc. IEEE INFOCOM, Apr. 2016, pp. 1–9. [9] Y. Geng, W. Hu, Y. Yang, W. Gao, and G. Cao, ‘‘Energy-efficient computation offloading in cellular networks,’’ in Proc. IEEE 23rd Int. Conf. Netw. Protocols (ICNP), Nov. 2015, pp. 145–155. [10] C. You and K. Huang, ‘‘Wirelessly powered mobile computation offloading: Energy savings maximization,’’ in Proc. IEEE GLOBECOM, Dec. 2015, pp. 1–6. [11] M. T. Saqib and M. A. Hamid, ‘‘FogR: A highly reliable and intelligent computation offloading on the Internet of Things,’’ in Proc. IEEE TENCON, Nov. 2016, pp. 1039–1042. [12] C. Wang, F. R. Yu, C. Liang, Q. Chen, and L. Tang, ‘‘Joint computation offloading and interference management in wireless cellular networks with mobile edge computing,’’ IEEE Trans. Veh. Technol., vol. 66, no. 8, pp. 7432–7445, Aug. 2017. [13] X. Chen, L. Jiao, W. Li, and X. Fu, ‘‘Efficient multi-user computation offloading for mobile-edge cloud computing,’’ IEEE/ACM Trans. Netw., vol. 24, no. 5, pp. 2795–2808, Oct. 2016. [14] B. P. Rimal, D. P. Van, and M. Maier, ‘‘Mobile-edge computing versus centralized cloud computing over a converged FiWi access network,’’ IEEE Trans. Netw. Service Manage., vol. 14, no. 3, pp. 498–513, Sep. 2017. [15] L. Pu, X. Chen, J. Xu, and X. Fu, ‘‘D2D fogging: An energy-efficient and incentive-aware task offloading framework via network-assisted D2D collaboration,’’ IEEE J. Sel. Areas Commun., vol. 34, no. 12, pp. 3887–3901, Dec. 2016. [16] S. Yu, R. Langar, and X. Wang, ‘‘A D2D-multicast based computation offloading framework for interactive applications,’’ in Proc. IEEE GLOBECOM, Dec. 2016, pp. 1–6.

VOLUME 5, 2017

[17] J. Liu, Y. Mao, J. Zhang, and K. B. Letaief, ‘‘Delay-optimal computation task scheduling for mobile-edge computing systems,’’ in Proc. IEEE ISIT, Jul. 2016, pp. 1451–1455. [18] Y. Mao, J. Zhang, and K. B. Letaief, ‘‘Dynamic computation offloading for mobile-edge computing with energy harvesting devices,’’ IEEE J. Sel. Areas Commun., vol. 34, no. 12, pp. 3590–3605, Dec. 2016.

XIANLING MENG received the B.S. degree in information and communication engineering from Zhejiang University, Hangzhou, China, in 2017, where he is currently pursuing the M.S. degree with the College of Information Science and Electronic Engineering. His research interests mainly focus on mobile edge computing.

WEI WANG (S’08–M’10–SM’15) received the B.S. and Ph.D. degrees from the Beijing University of Posts and Telecommunications, China, in 2004 and 2009, respectively. From 2007 to 2008, he was a Visiting Student with the University of Michigan, Ann Arbor, USA. From 2013 to 2015, he was a Hong Kong Scholar with The Hong Kong University of Science and Technology, Hong Kong. He is currently an Associate Professor with the College of Information Science and Electronic Engineering, Zhejiang University, China. His research interests mainly focus on stochastic optimization for cross-layer resource allocation in wireless networks and caching and computing in wireless networks. He is an Editor of the book entitled Cognitive Radio Systems and serves as an Editor of the IEEE ACCESS, the Transactions on Emerging Telecommunications Technologies, and the KSII Transactions on Internet and Information Systems.

ZHAOYANG ZHANG (M’00) received the Ph.D. degree in communication and information systems from Zhejiang University, Hangzhou, China, in 1998. He is currently a Full Professor with the College of Information Science and Electronic Engineering, Zhejiang University. He has co-authored over 150 refereed international journal and conference papers, and also two books in his areas of interest. His research interests are mainly focused on information theory and coding theory, signal processing techniques, and their applications in wireless communications and networking. Dr. Zhang co-received three conferences Best Paper Awards/Best Student Paper Award. He has served as the Technical Program Committee Co-Chair or the Symposium Co-Chair of many international conferences, such as the 2013 International Conference on Wireless Communications and Signal Processing and the 2014 IEEE Global Communications Conference Wireless Communications Symposium. He is currently serving as an Editor of the IEEE TRANSACTIONS ON COMMUNICATIONS, the IET Communications, and several other international journals.

21367

Suggest Documents