Joint Task Offloading and Resource Allocation for
MultiServer MobileEdge Computing Networks
^{†}^{†}thanks: The authors are with the Department of Electrical and Computer Engineering, Rutgers University–New Brunswick, NJ, USA (email: tuyen.tran@rutgers.edu, pompili@cac.rutgers.edu).
^{†}^{†}thanks: This work was supported by the National Science Foundation (NSF) Grant No. CNS1319945.
Abstract
MobileEdge Computing (MEC) is an emerging paradigm that provides a capillary distribution of cloud computing capabilities to the edge of the wireless access network, enabling rich services and applications in close proximity to the end users. In this article, a MEC enabled multicell wireless network is considered where each Base Station (BS) is equipped with a MEC server that can assist mobile users in executing computationintensive tasks via task offloading. The problem of Joint Task Offloading and Resource Allocation (JTORA) is studied in order to maximize the users’ task offloading gains, which is measured by the reduction in task completion time and energy consumption. The considered problem is formulated as a Mixed Integer Nonlinear Program (MINLP) that involves jointly optimizing the task offloading decision, uplink transmission power of mobile users, and computing resource allocation at the MEC servers. Due to the NPhardness of this problem, solving for optimal solution is difficult and impractical for a largescale network. To overcome this drawback, our approach is to decompose the original problem into (i) a Resource Allocation (RA) problem with fixed task offloading decision and (ii) a Task Offloading (TO) problem that optimizes the optimalvalue function corresponding to the RA problem. We address the RA problem using convex and quasiconvex optimization techniques, and propose a novel heuristic algorithm to the TO problem that achieves a suboptimal solution in polynomial time. Numerical simulation results show that our algorithm performs closely to the optimal solution and that it significantly improves the users’ offloading utility over traditional approaches.
I Introduction
Motivation: The rapid growth of mobile applications and the Internet of Things (IoTs) have placed severe demands on cloud infrastructure and wireless access networks such as ultralow latency, user experience continuity, and high reliability. These stringent requirements are driving the need for highly localized services at the network edge in close proximity to the end users. In light of this, the MobileEdge Computing (MEC) [1] concept has emerged, which aims at uniting telco, IT, and cloud computing to deliver cloud services directly from the network edge. Differently from traditional cloud computing systems where remote public clouds are utilized, MEC servers are owned by the network operator and are implemented directly at the cellular Base Stations (BSs) or at the local wireless Access Points (APs) using a genericcomputing platform. With this position, MEC allows for the execution of applications in close proximity to end users, substantially reducing endtoend (e2e) delay and releasing the burden on backhaul networks [2].
With the emergence of MEC, the ability of resourceconstrained mobile devices to offload computation tasks to the MEC servers is expected to support a myriad of new services and applications such as augmented reality, IoT, autonomous vehicles and image processing. For example, the face detection and recognition application for airport security and surveillance can be highly benefit from the collaboration between mobile devices and MEC platform [3]. In this scenario, a central authority such as FBI would extend their Amber alerts such that all available cell phones in the area where a missing child was last seen that optin to the alert would actively capture images. Due to the significant amount of processing and the need for a large database of images, the captured images are then forwarded to the MEC layer to perform face recognition.
Task offloading, however, incurs extra overheads in terms of delay and energy consumption due to the communication required between the devices and the MEC server in the uplink wireless channels. Additionally, in a system with a large number of offloading users, the finite computing resources at the MEC servers considerably affect the task execution delay [4]. Therefore, offloading decisions and performing resource allocation become a critical problem toward enabling efficient computation offloading. Previously, this problem has been partially addressed by optimizing either the offloading decision [4, 5], communication resources [6, 7], or computing resources [8, 9]. Recently, Sardellitti et al. [10] addressed the joint allocation of radio and computing resources, while the authors in [11] considered the joint task offloading and resources optimization in a multiuser system. Both of these works, however, only concentrate on a system with a single MEC server.
Our Vision: Unlike the traditional approaches mentioned above, our objective is to design a holistic solution for joint task offloading and resource allocation in a multiserver MECassisted network so as to maximize the users’ offloading gains. Specifically, we consider a multicell ultradense network where each BS is equipped with a MEC sever to provide computation offloading services to the mobile users. The distributed deployment of the MEC servers along with the densification of (small cell) BSs—as foreseen in the 5G standardization roadmap [12]—will pave the way for real proximity, ultralow latency access to cloud functionalities. Additionally, the benefits brought by a multiserver MEC system over the singleserver MEC (aka singlecloud) system are multifold: (i) firstly, as each MEC server may be overloaded when serving a large number of offloading users, one can release the burdens on that server by directing some users to offload to the neighboring servers from the nearby BSs, thus preventing the limited resources on each MEC server from becoming the bottle neck; (ii) secondly, each user can choose to offload its task to the BS with more favorable uplink channel condition, thus saving transmission energy consumption; (iii) finally, coordination of resource allocation to offload users across multiple neighboring BSs can help mitigate the effect of interference and resource contention among the users and hence, improve offloading gains when multiple users offload their tasks simultaneously.
Challenges and Contributions: To exploit in full the benefits of computation offloading in the considered multicell, multiserver MEC network, there are several key challenges that need to be addressed. Firstly, the radio resource allocation is much more challenging than the special cases studied in the literature (cf. [11]) due to the presence of intercell interference that introduces the coupling among the achievable data rate of different users, which makes the problem nonconvex. Secondly, the complexity of the taskoffloading decision is high as, for each user, one needs to decide not only whether it should offload the computation task but also which BS/server to offload the task to. Thirdly, the optimization model should take into account the inherent heterogeneity in terms of mobile devices’ computing capabilities, computation task requirements, and availability of computing resources at different MEC servers.
In this context, the main contributions of this article are summarized as follows.

We model the offloading utility of each user as the weightedsum of the improvement in taskcompletion time and device energy consumption; we formulate the problem of Joint Task Offloading and Resource Allocation (JTORA) as a Mixed Integer Nonlinear Program (MINLP) that jointly optimizes the task offloading decisions, users’ uplink transmit power, and computing resource allocation to offloaded users at the MEC servers, so as to maximize the system offloading utility.

Given the NPhardness of the JTORA problem, we propose to decompose the problem into (i) a Resource Allocation (RA) problem with fixed task offloading decision and (ii) a Task Offloading (TO) problem that optimizes the optimalvalue function corresponding to the RA problem.

We further show that the RA problem can be decoupled into two independent problems, namely the Uplink Power Allocation (UPA) problem and the Computing Resource Allocation (CRA) problem; the resulting UPA and CRA problems are addressed using quasiconvex and convex optimization techniques, respectively.

We propose a novel lowcomplexity heuristic algorithm to tackle the TO problem and show that it achieves a suboptimal solution in polynomial time.

We carry out extensive numerical simulations to evaluate the performance of the proposed solution, which is shown to be nearoptimal and to improve significantly the users’ offloading utility over traditional approaches.
Article Organization: The remainder of this article is organized as follows. In Sect. II, we review the related works. In Sect. III, we present the system model. The joint task offloading and resource allocation problem is formulated in Sect. IV, followed by the NPhardness proof and decomposition of the problem itself. We present our proposed solution in Sect. V and numerical results in Sect. VI. Finally, in Sect. VII we conclude the article.
Ii Related Works
The MEC paradigm has attracted considerable attention in both academia and industry over the past several years. In 2013, Nokia Networks introduced the very first realworld MEC platform [13], in which the computing platform—Radio Applications Cloud Servers (RACS)—is fully integrated with the Flexi Multiradio BS. Saguna also introduced their fully virtualized MEC platform, so called OpenRAN [14], that can provide an open environment for running thirdparty MEC applications. Recently, a MEC Industry Specifications Group (ISG) was formed to standardize and moderate the adoption of MEC within the RAN [1].
A number of solutions have also been proposed to exploit the potential benefits of MEC in the context of the IoTs and 5G. For instance, our previous work in [2] proposed to explore the synergies among the connected entities in the MEC network and presented three representative usecases to illustrate the benefits of MEC collaboration in 5G networks. In [15], we proposed a collaborative caching and processing framework in a MEC network whereby the MEC servers can perform both caching and transcoding so as to facilitate Adaptive BitRate (ABR) video streaming. Similar approach was also considered in [16] which combined the traditional clientdriven dynamic adaptation scheme, DASH, with networkassisted adaptation capabilities. In addition, MEC is also seen as a key enabling technique for connected vehicles by adding computation and geodistributed services to the roadside BSs so as to analyze the data from proximate vehicles and roadside sensors and to propagate messages to the drivers in very low latency [17].
Recently, several works have focused on exploiting the benefits of computation offloading in MEC network [18]. Note that similar problems have been investigated in conventional Mobile Cloud Computing (MCC) systems [19]. However, a large body of existing works on MCC assumed an infinite amount of computing resources available in a cloudlets, where the offloaded tasks can be executed with negligible delay [20, 21, 22]. The problem of offloading scheduling was then reduced to radio resource allocation in [6] where the competition for radio resources is modeled as a congestion game of selfish mobile users. In the context of MEC, the problem of joint task offloading and resource allocation was studied in a singleuser system with energy harvesting devices [23], and in a multicell multiuser systems [10]; however the congestion of computing resources at the MEC server was omitted. Similar problem is studied in [11] considering the limited edge computing resources in a singleserver MEC system.
In summary, most of the existing works did not consider a holistic approach that jointly determines the task offloading decision and the radio and computing resource allocation in a multicell, multiserver system as considered in this article.
Iii System Model
We consider a multicell, multiserver MEC system as illustrated in Fig. 1, in which each BS is equipped with a MEC server to provide computation offloading services to the resourceconstrained mobile users such as smart phones, tablets, and wearable devices. In general, each MEC server can be either a physical server or a virtual machine with moderate computing capabilities provisioned by the network operator and can communicate with the mobile devices through wireless channels provided by the corresponding BS. Each mobile user can choose to offload computation tasks to a MEC server from one of the nearby BSs it can connect to. We denote the set of users and MEC servers in the mobile system as and , respectively. For ease of presentation, we will refer to the MEC server , server , and BS interchangeably. The modeling of user computation tasks, task uploading transmissions, MEC computation resources, and offloading utility are presented here below.
Iiia User Computation Tasks
We consider that each user has one computation task at a time, denoted as , that is atomic and cannot be divided into subtasks. Each computation task is characterized by a tuple of two parameters, , in which specifies the amount of input data necessary to transfer the program execution (including system settings, program codes, and input parameters) from the local device to the MEC server, and specifies the workload, i.e., the amount of computation to accomplish the task. The values of and can be obtained through carefully profiling of the task execution [24, 4]. Each task can be performed locally on the user device or offloaded to a MEC server. By offloading the computation task to the MEC server, the mobile user would save its energy for task execution; however, it would consume additional time and energy for sending the task input in the uplink.
Let denote the local computing capability of user in terms of CPU . Hence, if user executes its task locally, the task completion time is . To calculate the energy consumption of a user device when executing its task locally, we use the widely adopted model of the energy consumption per computing cycle as [6, 25], where is the energy coefficient depending on the chip architecture and is the CPU frequency. Thus, the energy consumption, , of user when executing its task locally, is calculated as,
(1) 
IiiB Task Uploading
In case user offloads its task to one of the MEC servers, the incurred delay comprises: (i) the time to transmit the input to the MEC server on the uplink, (ii) the time to execute the task at the MEC server, and (iii) the time to transmit the output from the MEC server back to the user on the downlink. Since the size of the output is generally much smaller than the input, plus the downlink data rate is much higher than that of the uplink, we omit the delay of transferring the output in our computation, as also considered in [11, 6].
In this work, we consider the system with OFDMA as the multiple access scheme in the uplink [26], in which the operational frequency band is divided into equal subbands of size . To ensure the orthogonality of uplink transmissions among users associated with the same BS, each user is assigned to one subband. Thus, each BS can serve at most users at the same time. Let be the set of available subband at each BS. We define the task offloading variables, which also incorporate the uplink subband scheduling, as , where indicates that task from user is offloaded to BS on subband , and otherwise. We define the ground set that contains all the task offloading variables as and the task offloading policy expressed as . As each task can be either executed locally or offloaded to at most one MEC server, a feasible offloading policy must satisfy the constraint below,
(2) 
Additionally, we denote as the set of users offloading their tasks to server , and as the set of users that offload their tasks.
Furthermore, we consider that each user and BS have a single antenna for uplink transmissions (as also considered in [27, 11]). Extension to the case where each BS uses multiple antennas for receiving uplink signals will be addressed in a future work. Denote as the uplink channel gain between user and BS on subband , which captures the effect of pathloss, shadowing, and antenna gain. Note that the userBS association usually takes place in a large time scale (duration of an offloading session) that is much larger than the time scale of smallscale fading. Hence, similar to [28], we consider that the effect of fastfading is averaged out during the association. Let denote the users’ transmission power, where is the transmission power of user when uploading its task’s input to the BS, subject to a maximum budget . Note that . As the users transmitting to the same BS use different subbands, the uplink intracell interference is well mitigated; still, these users suffer from the intercell interference. In this case, the SignaltoInterferenceplusNoise Ratio (SINR) from user to BS on subband is given by,
(3) 
where is the background noise variance and the first term at the denominator is the accumulated intracell interference from all the users associated with other BSs on the same subband . Since each user only transmits on one subband, the achievable rate of user when sending data to BS is given as,
(4) 
where . Moreover, let . Hence, the transmission time of user when sending its task input in the uplink can be calculated as,
(5) 
IiiC MEC Computing Resources
The MEC server at each BS is able to provide computation offloading service to multiple users concurrently. The computing resources made available by each MEC server to be shared among the associating users are quantified by the computational rate , expressed in terms of number of CPU . After receiving the offloaded task from a user, the server will execute the task on behalf of the user and, upon completion, will return the output result back to the user. We define the computing resource allocation policy as , in which is the amount of computing resource that BS allocates to task offloaded from user . Hence, clearly . In addition, a feasible computing resource allocation policy must satisfy the computing resource constraint, expressed as,
(6) 
Given the computing resource assignment , the execution time of task at the MEC servers is,
(7) 
IiiD User Offloading Utility
Given the offloading policy , the transmission power , and the computing resource allocation ’s, the total delay experienced by user when offloading its task is given by,
(8) 
The energy consumption of user , , due to uploading transmission is calculated as , where is the power amplifier efficiency of user . Without loss of generality, we assume that . Thus, the uplink energy consumption of user simplifies to,
(9) 
In a mobile cloud computing system, the users’ QoE is mainly characterized by their task completion time and energy consumption. In the considered scenario, the relative improvement in task completion time and energy consumption are characterized by and , respectively [11]. Therefore, we define the offloading utility of user as,
(10) 
in which , with , specify user ’s preference on task completion time and energy consumption, respectively. For example, a user with short battery life can increase and decrease so as to save more energy at the expense of longer task completion time. Note that offloading too many tasks to the MEC servers will cause excessive delay due to the limited bandwidth and computing resources at the MEC servers, and consequently degrade some users’ QoE compared to executing their tasks locally. Hence, clearly user should not offload its task to the MEC servers if .
The expressions of the task completion time and energy consumption in (10) clearly shows the interplay between radio access and computational aspects, which motivates a joint optimization of offloading scheduling, radio, and computing resources so as to optimize users’ offloading utility.
Iv Problem Formulation
We formulate here the problem of joint task offloading and resource allocation, followed by the outline of our decomposition approach.
Iva Joint Task Offloading and Resource Allocation Problem
For a given offloading decision , uplink power allocation , and computing resource allocation , we define the system utility as the weightedsum of all the users’ offloading utilities,
(11) 
with given in (10) and specifying the resource provider’s preference towards user , . For instance, depending on the payments offered by the users, the resource provider could prioritize users with higher revenues for offloading by increasing their corresponding preferences. With this position, we formulate the Joint Task Offloading and Resource Allocation (JTORA) problem as a system utility maximization problem, i.e.,
(12a)  
(12b)  
(12c)  
(12d)  
(12e)  
(12f)  
(12g) 
The constraints in the formulation above can be explained as follows: constraints (12b) and (12c) imply that each task can be either executed locally or offloaded to at most one server on one subband; constraint (12d) implies that each BS can serve at most one user per subband; constraint (12e) specifies the transmission power budget of each user; finally, constraints (12f) and (12g) state that each MEC server must allocate a positive computing resource to each user associated with it and that the total computing resources allocated to all the associated users must not excess the server’s computing capacity. The JTORA problem in (12) is a Mixed Integer Nonlinear Program (MINLP), which can be shown to be NPhard; hence, finding the optimal solution usually requires exponential time complexity [29]. Given the large number of variables that scale linearly with the number of users, MEC servers, and subbands, our goal is to design a lowcomplexity, suboptimal solution that achieves competitive performance while being practical to implement.
IvB Problem Decomposition
Given the high complexity of the JTORA problem due to the combinatorial nature of the task offloading decision, our approach in this article is to temporarily fix the task offloading decision and to address the resulting problem, referred to as the Resource Allocation (RA) problem. The solution of the RA problem will then be used to derive the solution of the original JTORA problem. The decomposition process is described as follows. Firstly, we rewrite the JTORA problem in (12) as,
(13a)  
(13b) 
Note that the constraints on the offloading decision, , in (12b), (12c), (12d), and the RA policies, , in (12e), (12f), (12g), are decoupled from each other; therefore, solving the problem in (13) is equivalent to solving the following Task Offloading (TO) problem,
(14a)  
(14b) 
in which is the optimalvalue function corresponding to the RA problem, written as,
(15a)  
(15b) 
In the next section, we will present our solutions to both the RA problem and the TO problem so as to finally obtain the solution to the original JTORA problem.
V Lowcomplexity Algorithm for Joint Task Offloading and Resource Allocation
We present now our lowcomplexity approach to solve the JTORA problem by solving first the RA problem in (15) and then using its solution to derive the solution of the TO problem in (14).
Firstly, given a feasible task offloading decision that satisfies constraints (12b), (12c), and (12d), and using the expression of in (10), the objective function in (15a) can be rewritten as,
(16) 
(17) 
We observe that the first term on the right hand side (RHS) of (16) is constant for a particular offloading decision, while can be seen as the total offloading overheads of all offloaded users. Hence, we can recast (15) as the problem of minimizing the total offloading overheads, i.e.,
(18a)  
(18b) 
Furthermore, from (8), (9), and (17), we have,
(19) 
in which, for simplicity, , , and . Notice from (18b) and (19) that the problem in (18) has a separable structure, i.e., the objectives and constraints corresponding to the power allocation ’s and computing resource allocation ’s can be decoupled from each other. Leveraging this property, we can decouple problem (18) into two independent problems, namely the Uplink Power Allocation (UPA) and the Computing Resource Allocation (CRA), and address them separately, as described in the following sections.
Va Uplink Power Allocation (UPA)
The UPA problem is decoupled from problem (18) by considering the first term on the RHS of (19) as the objective function. Specifically, the UPA problem is expressed as,
(20a)  
(20b) 
Problem (20) is nonconvex and difficult to solve because the uplink SINR corresponding to user depends on the transmit power of the other users associated with other BSs on the same subband through the intercell interference , as seen in (3). Our approach is to find an approximation for and thus for such that problem (20) can be decomposed into subproblems that, in turn, can be efficiently solved. The optimal uplink power allocation still generates small objective value for (20). Suppose each BS calculates its uplink power allocation independently, i.e., without mutual cooperation, and informs its associated users about the uplink transmit power; then, an achievable upper bound for is given by,
(21) 
Similar to [30], we argue that is a good estimate of since our offloading decision is geared towards choosing the appropriate userBS associations so as that be small in the first place. This means that a small error in should not lead to large bias in [30].
By replacing with , we get the approximation for the uplink SINR for user uploading to BS on subband as,
(22) 
Let and . The objective function in (20a) can now be approximated by . With this position, it can be seen that the objective function and the constraint corresponding to each user’s transmit power is now decoupled from each other. Therefore, the UPA problem in (20) can be approximated by subproblems, each optimizing the transmit power of a user , and can be written as,
(23a)  
(23b) 
Problem (23) is still nonconvex as the secondorder derivative of the objective function with respect to (w.r.t) , i.e., , is not always positive. However, we can employ quasiconvex optimization technique to address problem (23) based on the following lemma.
Lemma 1.
is strictly quasiconvex in the domain defined in (23b).
Proof.
See Appendix. ∎
In general, a quasiconvex problem can be solved using the bisection method, which solves a convex feasibility problem in each iteration [31]. However, the popular interior cutting plane method for solving a convex feasibility problem requires iterations, where is the dimension of the problem. We now propose to further reduce the complexity of the bisection method.
Firstly, notice that a quasiconvex function achieves a local optimum at the diminishing point of the firstorder derivative, and that any local optimum of a strictly quasiconvex function is the global optimum [32]. Therefore, based on Lemma 1, we can confirm that the optimal solution of problem (23) either lies at the constraint border, i.e., or satisfies . It can be verified that when,
(24) 
Moreover, we have, , and . This implies that is a monotonically increasing function and is negative at the starting point . Therefore, we can design a lowcomplexity bisection method that evaluates in each iteration instead of solving a convex feasibility problem, so as to obtain the optimal solution , as presented in Algorithm 1.
VB Computing Resource Allocation (CRA)
The CRA problem optimizes the second term on the RHS of (19) and is expressed as follows,
(25a)  
(25b) 
Notice that the constraint in (25b) is convex. Denote the objective function in (25a) as ; by calculating the secondorder derivatives of w.r.t. , we have,
(26a)  
(26b) 
It can be seen that the Hessian matrix of the objective function in (25a) is diagonal with the strictly positive elements, thus it is positivedefinite. Hence, (25) is a convex optimization problem and can be solved using KarushKuhnTucker (KKT) conditions. In particular, the optimal computing resource allocation is obtained as,
(27) 
and the optimal objective function is calculated as,
(28) 
VC Joint Task Offloading Scheduling and Resource Allocation
In the previous sections, for a given task offloading decision , we obtained the solutions for the radio and computing resources allocation. In particular, according to (15), (16), (19), and (28), we have,
(29) 
where can be obtained through Algorithm 1 and can be calculated using the closedform expression in (28). Now, using (29), we can rewrite the TO problem in (14) as,
(30a)  
(30b)  
(30c)  
(30d) 
Problem (30) consists in maximizing a set function w.r.t over the ground set defined by (30b), and the constraints in (30c) and (30d) define two matroids over . Due to the NPhardness of such problem [33], designing efficient algorithms that guarantee the optimal solution still remains an open issue. In general, a bruteforce method using exhaustive search would require evaluating possible task offloading scheduling decisions, where , which is clearly not a practical approach.
To overcome the aforementioned drawback, we propose a lowcomplexity heuristic algorithm that can find a local optimum to problem (30) in polynomial time. Specifically, our algorithm starts with an empty set and repeatedly performs one of the local operations, namely the remove operation or the exchange operation, as described in Routine 1, if it improves the set value . As we are dealing with two matroid constraints, the exchange operation involves adding one element from outside of the current set and dropping up to elements from the set, so as to comply with the constraints. In summary, our proposed heuristic algorithm for task offloading scheduling is presented in Algorithm 2.
Remark 1: (Complexity Analysis of Algorithm 2) Parameter in Algorithm 2 is any value such that is at most a polynomial in . Let be the optimal value of problem (30) over the ground set . It is easy to see that where is the element with the maximum over all elements of . Let be the number of iterations for Algorithm 2. Since after each iteration the value of the function increases by a factor of at least , we have , and thus . Note that the number of queries needed to calculate the value of the objective function in each iteration is at most . Therefore, the running time of Algorithm 2 is , which is polynomial in . ∎
Remark 2: (Solution of JTORA) Let be the output of Algorithm 2. The corresponding solutions for the uplink power allocation and for computing resource sharing can be obtained using Algorithm 1 and the closedform expression in (27), respectively, by setting . Thus, the local optimal solution for the JTORA problem is . While characterizing the degree of suboptimality of the proposed solution is a nontrivial task—mostly due to the combinatorial nature of the task offloading decision and the nonconvexity of the original UPA problem—in the next section we will show via numerical results that our heuristic algorithm performs closely to the optimal solution using exhaustive search method. ∎
Vi Performance Evaluation
In this section, simulation results are presented to evaluate the performance of our proposed heuristic joint task offloading scheduling and resource allocation strategy, referred to as hJTORA. We consider a multicell cellular system consisting of multiple hexagonal cells with a BS in the center of each cell. The neighboring BSs are set apart from each other. We assume that both the users and BSs use a single antenna for uplink transmissions. The channel gains are generated using a distancedependent pathloss model given as , and the lognormal shadowing variance is set to . In most simulations, if not stated otherwise, we consider cells and the users’ maximum transmit power set to . In addition, the system bandwidth is set to and the background noise power is assumed to be .
IOJRA  GOJRA  DORA  hJTORA  Exhaustive  

Runtime [ms] 
In terms of computing resources, we assume the CPU capability of each MEC server and of each user to be and , respectively. According to the realistic measurements in [24], we set the energy coefficient as . For computation task, we consider the face detection and recognition application for airport security and surveillance [3] which can be highly benefit from the collaboration between mobile devices and MEC platform. Unless otherwise stated, we choose the default setting values as , (following [3, 7]), , , and , . In addition, the users are placed in random locations, with uniform distribution, within the coverage area of the network, and the number of subbands is set equal to the number of users per cell. We compare the system utility performance of our proposed hJTORA strategy against the following approaches.

Exhaustive: This is a bruteforce method that finds the optimal offloading scheduling solution via exhaustive search over possible decisions; since the computational complexity of this method is very high, we only evaluate its performance in a small network setting.

Greedy Offloading and Joint Resource Allocation (GOJRA): All tasks (up to the maximum number that can be admitted by the BSs) are offloaded, as in [10]. In each cell, offloading users are greedily assigned to subbands that have the highest channel gains until all users are admitted or all the subbands are occupied; we then apply joint joint resource allocation across the BSs as proposed in Sect. VA, B.

Independent Offloading and Joint Resource Allocation (IOJRA): Each user is randomly assigned a subband from its home BS, then the users independently make offloading decision [21]; joint resource allocation is employed.

Distributed Offloading and Resource Allocation (DORA): Each BS independently makes joint task offloading decisions and resource allocation for users within its cell [11].
Via Suboptimality of Algorithm 2
Firstly, to characterize the suboptimality of our proposed hJTORA solution, we compare its performance with the optimal solution obtained by the Exhaustive method, and then with the three other described baselines. Since the Exhaustive method searches over all possible offloading scheduling decisions, its runtime is extremely long for a large number of variables; hence, we carry out the comparison in a small network setting with users uniformly placed in the area covered by cells, each having subbands. We randomly generate largescale fading (shadowing) realizations and the average system utilities (with confident interval) of different schemes are reported in Fig. 2(a,b) when we set and , respectively. It can be seen that the proposed hJTORA performs very closely to that of the optimal Exhaustive method, while significantly outperforms the other baselines. In both cases, the hJTORA algorithm achieves an average system utility within that of the Exhaustive algorithm, while providing upto , , and gains over the DORA, GOJRA, and IOJRA schemes, respectively. Additionally, in Table I, we report the average runtime per simulation drop of different algorithms, running on a Windows 7 desktop with CPU and RAM. It can be seen that the Exhaustive method takes very long time, about longer than the hJTORA algorithm for such a small network. The DORA algorithm runs slightly faster than hJTORA while IOJRA and GOJRA requires the lowest runtimes.
ViB Effect of Number of Users
We now evaluate the system utility performance against different number of users wishing to offload their tasks, as shown in Fig. 3(a,b). In particular, we vary the number of users per cell from to and perform the comparison in two scenarios with different task workload distribution: (a) uniform, , and (b) nonuniform, in cells and . Note that the number of subbands is set equal to the number of users per cell, thus the bandwidth allocated for each user decreases when there are more users in the system. Observe from Fig. 3(a,b) that hJTORA always performs the best, and that the performance of all schemes significantly increases when the tasks’ workload increases. This is because when the tasks require more computation resources the users will benefit more from offloading them to the MEC servers. We also observe in both scenarios that, when the number of users is small, the system utility increases with the number of users; however, when the number of users exceeds some threshold, the system utility starts to decrease. This is because when there are many users competing for radio and computing resources for offloading their tasks, the overheads of sending the tasks and executing them at the MEC servers will be higher, thus degrading the offloading utility.
ViC Effect of Task Profile
Here, we evaluate the system utility performance w.r.t. to the computation tasks’ profiles in terms of input size ’s and workload ’s. In Fig. 4(a,b), we plot the average system utility of the four competing schemes at different values of and , respectively. It can be seen that the average system utilities of all schemes increase with task workload and decrease with the task input size. This implies that the tasks with small input sizes and high workloads benefit more from offloading than those with large input sizes and low workloads do. Moreover, we observe that the performance gains of the proposed hJTORA scheme over the baselines also follow the similar trend, i.e., increasing with task workloads and decreasing with task input size.
ViD Effect of Users’ Preferences
Figure 5 shows the average time and energy consumption of all the users when we increase the users’ preference to time, ’s, between and while at the same time decrease the users’ preference to energy as . It can be seen that the average time consumption decreases when increases, at the cost of higher energy consumption. In addition, when , the users experience a larger average time and energy consumption than in the case when . This is because when there are more users competing for the limited resources, the probability that a user can benefit from offloading its task is lower.
ViE Effect of Intercell Interference Approximation
To test the effect of the approximation to model the intercell interference as in (21) in Sect. VA, we compare the results of the hJTORA solution to calculate the system utility using the approximated expression versus using the exact expression of the intercell interference. Figure 6 shows the system utility when the users’ maximum transmit power ’s vary between and . It can be seen that the performance obtained using the approximation is almost identical to that of the exact expression when is below , while an increasing gap appears when . However, as specified in LTE standard, 3GPP TS36.101 section 6.2.3^{1}^{1}1Refer to: 3GPP TS36.101, V14.3.0, Mar. 2017, the maximum UE transmit power is ; hence, we can argue that the proposed approximation can work well in practical systems.
Vii Conclusions
We proposed a holistic strategy for a joint task offloading and resource allocation in a multicell MobileEdge Computing (MEC) network. The underlying optimization problem was formulated as a MixedInteger Nonlinear Program (MINLP), which is NPhard. Our approach decomposes the original problem into a Resource Allocation (RA) problem with fixed task offloading decision and a Task Offloading (TO) problem that optimizes the optimalvalue function corresponding to the RA problem. We further decouple the RA problem into two independent subproblems, namely the uplink power allocation and the computing resource allocation, and address them using quasiconvex and convex optimization techniques, respectively. Finally, we proposed a novel heuristic algorithm that achieves a suboptimal solution for the TO problem in polynomial time. Simulation results showed that our heuristic algorithm performs closely to the optimal solution and significantly improves the average system offloading utility over traditional approaches.
Appendix
Firstly, it is straightforward to verify that is twice differentiable on . We now check the secondorder condition of a strictly quasiconvex function, which requires that a point satisfying also satisfies [31].
The firstorder and secondorder derivatives of can be calculated, respectively, as,
(31) 
and
(32) 
in which,
(33a)  
(33b)  
(33c)  
(33d) 
Suppose that ; to satisfy , it must hold that,
(34) 
By substituting into (32), we obtain,
(35) 
It can be easily verified that both and are strictly positive . Hence, , which confirms that is a strictly quasiconvex function in .
References
 [1] Y. C. Hu, M. Patel, D. Sabella, N. Sprecher, and V. Young, “Mobile Edge Computing – A Key Technology Towards 5G,” ETSI White Paper, vol. 11, 2015.
 [2] T. X. Tran, A. Hajisami, P. Pandey, and D. Pompili, “Collaborative mobile edge computing in 5G networks: New paradigms, scenarios, and challenges,” IEEE Communications Magazine, vol. 55, no. 4, pp. 54–61, 2017.
 [3] T. Soyata, R. Muraleedharan, C. Funai, M. Kwon, and W. Heinzelman, “Cloudvision: Realtime face recognition using a mobilecloudletcloud acceleration architecture,” in in Proc. IEEE Symposium on Computers and Communications (ISCC), pp. 59–66, 2012.
 [4] L. Yang, J. Cao, H. Cheng, and Y. Ji, “Multiuser computation partitioning for latency sensitive mobile cloud applications,” IEEE Trans. Comput., vol. 64, no. 8, pp. 2253–2266, 2015.
 [5] V. Cardellini, V. D. N. Personé, V. Di Valerio, F. Facchinei, V. Grassi, F. L. Presti, and V. Piccialli, “A gametheoretic approach to computation offloading in mobile cloud computing,” Mathematical Programming, vol. 157, no. 2, pp. 421–449, 2016.
 [6] X. Chen, “Decentralized computation offloading game for mobile cloud computing,” IEEE Trans. Parallel Distrib. Syst., vol. 26, no. 4, pp. 974–983, 2015.
 [7] X. Chen, L. Jiao, W. Li, and X. Fu, “Efficient multiuser computation offloading for mobileedge cloud computing,” IEEE/ACM Trans. Netw., vol. 24, no. 5, pp. 2795–2808, 2016.
 [8] L. Yang, J. Cao, Y. Yuan, T. Li, A. Han, and A. Chan, “A framework for partitioning and execution of data stream applications in mobile cloud computing,” ACM SIGMETRICS Performance Evaluation Review, vol. 40, no. 4, pp. 23–32, 2013.
 [9] M. R. Rahimi, N. Venkatasubramanian, and A. V. Vasilakos, “Music: Mobilityaware optimal service allocation in mobile cloud computing,” in Proc. IEEE Int. Conf. on Cloud Computing, pp. 75–82, 2013.
 [10] S. Sardellitti, G. Scutari, and S. Barbarossa, “Joint optimization of radio and computational resources for multicell mobileedge computing,” IEEE Trans. Signal Inf. Process. Over Netw., vol. 1, no. 2, pp. 89–103, 2015.
 [11] X. Lyu, H. Tian, P. Zhang, and C. Sengul, “Multiuser joint task offloading and resources optimization in proximate clouds,” IEEE Trans. Veh. Technol., vol. PP, no. 99, 2016.
 [12] X. Ge, S. Tu, G. Mao, C.X. Wang, and T. Han, “5G ultradense cellular networks,” IEEE Wireless Commun., vol. 23, no. 1, pp. 72–79, 2016.
 [13] Intel and Nokia Siemens Networks, “Increasing mobile operators’ value proposition with edge computing,” Technical Brief, 2013.
 [14] Saguna and Intel, “Using mobile edge computing to improve mobile network performance and profitability,” White paper, 2016.
 [15] T. X. Tran, P. Pandey, A. Hajisami, and D. Pompili, “Collaborative Multibitrate Video Caching and Processing in MobileEdge Computing Networks,” in Proc. IEEE/IFIP Conf. on Wireless Ondemand Network Systems and Services (WONS), pp. 165–172, 2017.
 [16] J. O. Fajardo, I. Taboada, and F. Liberal, “Improving content delivery efficiency through multilayer mobile edge adaptation,” IEEE Network, vol. 29, no. 6, pp. 40–46, 2015.
 [17] Nokia, “LTE and Car2x: Connected cars on the way to 5G.” [Online]: http://www.cambridgewireless.co.uk/Presentation/MB06.04.16NokiaUwe Putzschler.pdf.
 [18] Y. Mao, C. You, J. Zhang, K. Huang, and K. B. Letaief, “Mobile edge computing: Survey and research outlook,” arXiv preprint arXiv:1701.01090, 2017.
 [19] Z. Sanaei, S. Abolfazli, A. Gani, and R. Buyya, “Heterogeneity in mobile cloud computing: taxonomy and open challenges,” IEEE Commun. Surveys Tuts., vol. 16, no. 1, pp. 369–392, 2014.
 [20] W. Zhang, Y. Wen, and D. O. Wu, “Energyefficient scheduling policy for collaborative execution in mobile cloud computing,” in Proc. IEEE Int. Conf. on Comput. Commun. (INFOCOM), pp. 190–194, 2013.
 [21] W. Zhang, Y. Wen, and D. O. Wu, “Collaborative task execution in mobile cloud computing under a stochastic wireless channel,” IEEE Trans. Wireless Commun., vol. 14, no. 1, pp. 81–93, 2015.
 [22] Z. Cheng, P. Li, J. Wang, and S. Guo, “Justintime code offloading for wearable computing,” IEEE Trans. Emerg. Topics Comput., vol. 3, no. 1, pp. 74–83, 2015.
 [23] Y. Mao, J. Zhang, and K. B. Letaief, “Dynamic computation offloading for mobileedge computing with energy harvesting devices,” IEEE J. Sel. Areas in Commun., vol. 34, no. 12, pp. 3590–3605, 2016.
 [24] A. P. Miettinen and J. K. Nurminen, “Energy efficiency of mobile clients in cloud computing,” in Proc. USENIX Conf. Hot Topics Cloud Comput. (HotCloud), June 2010.
 [25] Y. Wen, W. Zhang, and H. Luo, “Energyoptimal mobile application execution: Taming resourcepoor mobile devices with cloud clones,” in Proc. IEEE INFOCOM, pp. 2716–2720, 2012.
 [26] E. Dahlman, S. Parkvall, and J. Skold, 4G: LTE/LTEadvanced for mobile broadband. Academic press, 2013.
 [27] W. Saad, Z. Han, R. Zheng, M. Debbah, and H. V. Poor, “A college admissions game for uplink user association in wireless small cell networks,” in Proc. IEEE INFOCOM, pp. 1096–1104, 2014.
 [28] Q. Ye, B. Rong, Y. Chen, M. AlShalash, C. Caramanis, and J. G. Andrews, “User association for load balancing in heterogeneous cellular networks,” IEEE Trans. Wireless Commun., vol. 12, no. 6, pp. 2706–2716, 2013.
 [29] Y. Pochet and L. A. Wolsey, Production planning by mixed integer programming. Springer Science & Business Media, 2006.
 [30] Y. Du and G. De Veciana, ““Wireless networks without edges": Dynamic radio resource clustering and user scheduling,” in Proc. IEEE Int. Conf. on Comput. Commun. (INFOCOM), pp. 1321–1329, 2014.
 [31] S. Boyd and L. Vandenberghe, Convex optimization. Cambridge university press, 2004.
 [32] B. Bereanu, “Quasiconvexity, strictly quasiconvexity and pseudoconvexity of composite objective functions,” Revue française d’automatique, informatique, recherche opérationnelle. Mathématique, vol. 6, no. 1, pp. 15–26, 1972.
 [33] J. Lee, V. S. Mirrokni, V. Nagarajan, and M. Sviridenko, “Nonmonotone submodular maximization under matroid and knapsack constraints,” in Proc. Annual ACM Symp. Theory of Comput., pp. 323–332, 2009.