As smartphones are gaining enormous popularity, more and more new mobile applications such as face recognition, natural language processing, interactive gaming, and augmented reality are emerging and attract great attention[1, 2, 3]. This kind of mobile applications are typically resource-hungry, demanding intensive computation and real-time responsiveness. Due to the physical size constraint, however, mobile devices are in general resource-constrained, having limited computation resources. The tension between resource-hungry applications and resource-constrained mobile devices hence poses a significant challenge for the future mobile platform development.
Mobile cloud computing is envisioned as a promising approach to address such a challenge. By offloading the computation via wireless access to the resource-rich cloud infrastructure, mobile cloud computing can augment the capabilities of mobile devices for resource-hungry applications. Currently, one common approach for mobile cloud computing is to offload the computation-intensive tasks to the remote public cloud infrastructure(e.g., Amazon EC2 and Windows Azure), in order to utilize the powerful computing and processing capabilities by the public clouds. As a matter of fact, the current public cloud architecture - built around static Internet-based installments of cloud resources not integrated with wireless networks - is already starting to show its limits in terms of computation-intensive mobile application support, since mobile users would experience long latency for data exchange with the public cloud through the wide area network (WAN), which risks to become the major impediment in satisfying the real-time interactive response requirement of mobile applications.
To address this challenge, a novel mobile cloud computing paradigm, called mobile-edge cloud computing, has been proposed . As illustrated in Figure 1, mobile-edge cloud computing can provide cloud-computing capabilities at the edge of pervasive radio access networks (e.g., 3G, 4G, WiMax, femtocells) in close proximity to mobile users. In this case, the need for fast interactive response can be met by fast and low-latency connection (e.g., via fiber transmission) to resource-rich cloud computing infrastructures (called mobile-edge clouds) deployed by network operators (e.g., AT&T and T-Mobile) within the network edge and backhaul/core networks. By endowing ubiquitous radio access networks with powerful computing capabilities, mobile-edge cloud computing is envisioned to provide pervasive and agile computation augmenting services for mobile users at anytime and anywhere .
In this paper, we aim at devising an efficient mobile-edge cloud computing framework that can provide rich flexibility in meeting different mobile users’ demands. To this end, in this paper we propose a comprehensive framework consisting of a resource-efficient computation offloading mechanism for the users and a joint communication and computation (JCC) resource allocation mechanism for the network operator. Specifically, we first address the resource-efficient computation offloading problem, in order to reduce a user’s resource occupancy. We then study the admission control problem and design the pricing scheme for JCC resource allocation, by jointly taking into account the objective of system-wide performance optimization as well as the practical constraints such as computational complexity for practical implementation and truthfulness for preventing manipulation.
The main results and contributions of this paper are as follows:
We address the resource-efficient computation offloading problem for each individual user subject to the QoS constraint. Specifically, by leveraging the structural property of user’s task graph, we propose an efficient delay-aware task graph partition algorithm for computation offloading. Building on this, we derive the optimal communication and computation resource demanding profile for a user that minimizes the resource occupancy and meanwhile satisfies the completion time constraint.
We study the admission control problem for selecting the proper set of users in JCC resource demand satisfaction. We show the admission control problem involving joint communication and computation resource allocation is NP-hard. We hence develop an efficient approximation solution by carefully designing the user ranking criteria, which has a low complexity to facilitate the practical implementation. We further derive the upper bound of the performance loss of the approximate admission control solution with respect to the global optimal solution. Numerical results demonstrate that the proposed approximate solution is very efficient, with at most performance loss.
We investigate the truthful pricing problem for preventing manipulation by untruthful valuation reporting. We borrow the powerful tool of critical value approach in auction theory, and rigorously show that the proposed pricing scheme is truthful such that no user has the incentive to lie about its valuation for acquiring the mobile-edge cloud service to complete its computational task. This would be very useful to prevent manipulations by untruthful valuation report, which would lead to inefficient allocation of resources and system performance degradation.
The rest of the paper is organized as follows. We first introduce the system model in Section II. We then study resource-efficient computation offloading strategy for the users in Section III. We next discuss the admission control problem and pricing issue for JCC resource allocation in Sections IV and V, respectively. We conduct the performance evaluation in Section VI, discuss the related works in Section VII, and finally conclude in Section VIII.
Ii System Model
We consider that there are a set of wireless base-stations (e.g., macrocell/femtocell base-stations) and a set of mobile-edge clouds in the system. For a base-station , there are orthogonal wireless subchannels dedicated for supporting on-demand mobile-edge cloud service, and each subchannel has a bandwidth of . Moreover, a base-station is directly connected to the closest mobile-edge cloud in proximity, which has a total computation resource capacity of . Note that as illustrated in Figure 1, our model allows that multiple nearby base-stations share the same mobile-edge cloud in proximity.
A set of mobile users would like to acquire the mobile-edge cloud service from the network operator to complete their computation-intensive tasks. In the following we denote the base-station and the mobile-edge cloud with which a user is associated as and , respectively. Subject to the QoS requirement of the application, a user also has a maximum allowable completion time for its task, and possesses a valuation , i.e., the maximum amount of monetary cost that the user is willing to pay for acquiring the mobile-edge cloud service to complete its task.
In the following parts, we will first study the resource-efficient computation offloading problem for each user, in order to reduce user’s resource occupation by determining its optimal communication and computation resource profile with minimum resource occupation, and meanwhile satisfying the completion time constraint. We will then design the efficient admission control mechanism for the network operator in order to select the proper set of users for JCC resource allocation subject to the resource capacity constraints. We will further develop a pricing scheme to prevent the manipulation such that some users may untruthfully report their valuations in acquiring mobile-edge cloud service, which would lead to inefficient allocation of resources and system performance degradation.
Note that for ease of exposition, in this paper we consider two most critical resource types for mobile applications, i.e., communication and computation resources. Our model can be easily extended to the cases with more resource types such as storage resource. Also, similar to many existing studies in wireless resource auction (e.g., [5, 6, 7]), as an initial thrust and to enable tractable analysis, in this paper we consider a static setting such that users are stationary. The more general case that users may dynamically depart and leave the mobile-edge cloud system is very challenging and will be addressed in a future work.
Iii Resource-Efficient Computation Offloading
In this section, we consider the resource-efficient computation offloading problem of each individual user to determine the optimal joint communication and computation resource profile of a user for the cost-effective auction bidding, in order to minimize the resource occupancy and meanwhile satisfy the required completion time constraint.
Iii-a Task Graph Model
To proceed, we first introduce the task graph model to describe the processing procedure of the computational task of a user . Similar to many studies (e.g., [2, 8, 6, 9, 10, 11] and references therein), we describe the computation task profile of a user by a directed acyclic graph , with the end node as the output component to be executed at the user’s device. Figure 2 illustrates an example of the task graph of QR-code recognition application . Specifically, in the task graph , the nodes represent the task components and the directed edges stand for the data dependencies. For a node in the task graph , we denote as the total computational instructions (i.e., CPU cycles) to execute the corresponding task component. For a subsequential node that invokes the output data from node (i.e., ), we denote as the amount of data that input from node to node . Note that in practice many applications can be presented by such a directed acyclic task graph model111We will consider the cyclic task graph case in a future work. One possible solution is to transform this case to the acyclic case by grouping the nodes in a cycle as a “supper” node. [2, 8, 6, 9, 10, 11], e.g., face recognition, natural language processing, video streaming, virtual argumentation, data processing applications such as MapReduce.
Iii-B Computation and Communication Models
We then introduce both the communication and computation models. For a given task component of user on its task graph (i.e., ), the user can execute it either locally at its own device or remotely at the mobile-edge cloud. For the local computing approach, we have the time for executing the given task component as , where denotes the computation capability (CPU cycles per second) of user ’s device. For the cloud computing approach, a virtual machine is associated to user for its task execution in the mobile-edge cloud. To provide flexibility in the mobile-edge cloud service provision, we consider that there is a set of different virtual machine types available and the computation capability of a virtual machine type is denoted by . Let be the virtual machine type chosen by user for executing its whole task. Accordingly, we can then compute the time by the cloud computing approach for executing the given task component on the virtual machine as .
Now suppose that two task components with are executed at different locations (one at user’s device and the other at the mobile-edge cloud). Then a total amount of data needs to be transferred between these two components via wireless connection. We hence introduce the communication model for wireless data transmission. Let denote the number of subchannels demanded by user . We can then compute the data rate for computation offloading of user as , where is the transmission power of user which is determined by the base station according to some power control algorithm such as [12, 10], is the channel gain between the user and the base station, and is the background noise. Based on the communication model above, the total data transmission time for computation offloading between task components and is given as .
Iii-C Delay-Aware Task Graph Partition
We next consider the delay-aware task graph partition problem for a fixed resource allocation. That is, given that a user ’s subchannel demand for wireless communication and the virtual machine type selection for cloud computation are fixed, we would like to determine the optimal execution location (i.e., device or cloud) for each task component in its task graph, in order to minimize the total delay of executing the whole task.
To address the delay-aware task graph partition problem, we leverage the structural property of the task graph . Since the graph is directed acyclic, it is known that we can carry out a topology sorting of the graph, i.e., ordering of the nodes such that for every directed edge from node to node , comes before in the ordering .
We introduce the classic Kahn Algorithm  for the topology sorting of the task graph in Algorithm 1, which has a computational complexity of (please refer to  for the details). After the topology sorting, we then obtain an ordering of the nodes as such that . We also denote the set of nodes to which there is an edge directed from node as . According to the definition of topology sorting, we know that if , then in the ordering . Note that since no edge is directed from the end node (i.e., the output component) and for any other node there always exists some edge directed from it (otherwise the corresponding task component is useless since it does not provide any input to either other intermediate components or the output component), the last node in the ordering must be the output component.
Based on the node ordering by topology sorting, we then solve the delay-aware task graph partition problem by the principle of backward induction . That is, we first determine the optimal execution location for the last node in the ordering , and based on which we can determine the optimal location for the nodes by moving backward. Specifically, we denote the execution location of the task component as , with denoting the component will be executed at the cloud and denoting the component will be executed at the device. Moreover, we denote the minimum delay starting from executing the task component till the end of the whole task as .
For the last node (i.e., the output component) in the ordering , we have and the optimal execution location is , due to the fact that the final result will be returned to the user’s device. Then we move backward to consider the remaining nodes in the ordering in a recursive manner. According to the definition of , we know that the delay starting from executing the task component till the end of the whole task depends on that of the bottleneck node with maximum delay that requires the input data from node . Thus, we have the following:
where is an indicator function such that if the event is true and otherwise. Here implies the wireless data transmission is required since components and are executed at different locations.
By the back induction, for all the remaining nodes , we can recursively compute the values of and the optimal execution locations according to (1) and (2), respectively. We describe the procedure for the delay-aware task graph partition in Algorithm 2. The complexity of the backward induction is and the complexity of topology sorting is . We hence know then complexity of the delay-aware task graph partition algorithm is at most since .
Iii-D Resource-Efficient Demanding Strategy
In Section III-C, we have solved the delay-aware task graph partition problem given the fixed subchannel demand and virtual machine type selection of a user . Building on this, we then determine the resource-efficient demanding strategy (i.e., the optimal subchannel demand and virtual machine type selection ) of user to minimize the resource occupancy, while guaranteeing its task can be completed within the completion time deadline .
First of all, we define the resource occupancy function for a user as the sum of the normalized occupancy ratios of the user for both communication and computation resources, i.e.,
Recall that and are the total number of available subchannels and computation capacity at user n’s associated base-station and mobile-edge cloud, respectively. The key motivation of minimizing the resource occupancy is two-fold. On one hand, in the operator’s admission control mechanism design for later, the resource occupancy serves as an important indicator for accepting a user’s request and determining its payment. Thus, from the user’s point of view, a smaller resource occupancy implies a higher chance of getting admitted into the mobile-edge cloud service and a lower service payment as well. On the other hand, from the perspective of the network operator, it helps to increase the resource utilization efficiency and support more users in the mobile-edge cloud service.
Then, the resource-efficient demanding strategy can be obtained by solving the following optimization problem:
The objective is to minimize the resource occupancy, and the constraint guarantees that the whole task (i.e., all the task components) will be completed within the deadline . Building upon the delay-aware task graph partition algorithm in Algorithm 2, this problem can be solved as follows: first, we rank all the communication and computation resource profiles of a user according to the corresponding resource occupancy function value (with ties randomly broken). Then, according to the ranking, we sequentially select a resource profile and utilize Algorithm 2 to compute the value of for any . Once the constraint in (5) is satisfied, then we stop and find the optimal resource profile having the minimum value of . The key idea is that, by the backward induction based on (1) and (2), Algorithm 2 finds the optimal policy of the task graph partition that minimizes the total executing delay for given a fixed communication and computation resource allocation profile . So, the optimal resource allocation profile for the delay constrained optimization problem in (4) can be obtained by exhaustive searching over all the feasible resource allocation profiles. To do it in an efficient way, here we first rank the objective function value (3) for all the feasible resource allocation profiles in an increasing manner, and then sequentially search for the optimal resource profile with the minimum value and meanwhile the delay constraint in (5) being satisfied.
Note that the resource-efficient demanding strategy can be locally computed by each user based on its individual application information. Since there are at most subchannels and different virtual machine types, in the worst case a user only has to check at most resource profiles, then the total complexity of computing the resource-efficient demanding strategy in (4) is at most , which is computationally feasible.
Iv Admission Control for JCC Resource Allocation
After receiving users’ resource demanding profiles, a key challenge would be that the total available communication and computation resources are limited in practice and the network operator may not satisfy all resource demands of the users. We hence have to design a user admission control mechanism for the network operator to select the proper set of requesting users to serve, in order to optimize the system-wide performance subject to both communication and computation capacity constraints.
Iv-a Problem Formulation
We first formally state the admission control problem for JCC resource allocation as follows.
(Admission Control Problem) Given the resource demanding profiles of all the users, the operator would like to solve the following admission control problem:
The objective in (6) of the admission control problem is to select the proper set of users to serve, in order to maximize the social welfare (i.e., system-wide performance) which is the sum of the accepted users’ valuations. In other words, we would like to efficiently allocate the resources to the set of users that value those resources most. The first constraint in (8) means that for a base-station , the total requested communication resources (i.e., subchannels) by the selected users should not exceed its capacity. The second constraint in (8) represents that for a mobile-edge cloud , the total requested computation resources by the selected users should not exceed its total available computation capacity. In this paper we aim at designing efficient resource allocation scheme for optimizing the system-wide performance (i.e., social welfare maximization), and the case of maximizing the revenue of the operator will be considered in a future work. Note that since the valuation of a user characterizes its willingness to pay, maximizing the sum of the valuations would also have a positive effect on increasing the revenue obtained by the operator.
(Computational Efficiency) A mechanism is computationally efficient if the computing procedure of the mechanism terminates in polynomial time.
The computational efficiency of a devised algorithm for JCC resource allocation is very important in practice. Any optimal algorithm with high complexity would require a large amount of time overhead to compute the optimal solution, which leads to high latency and slow responsiveness and hence is useless in reality.
Iv-B Computational Complexity of Admission Control Problem
We first consider the computational complexity of the admission control problem. As mentioned above, to make the JCC resource allocation useful in practice, we need to develop a computationally efficient algorithm for the admission control problem. Unfortunately, we show that it is NP-hard to compute an optimal solution for the admission control problem.
The admission control problem for the JCC resource allocation is NP-hard.
We consider the special case with only one base station having subchannels available and one mobile-edge cloud having computation capacity. In this case, the admission control problem becomes
Actually, the problem above is a two-dimensional knapsack problem, by regarding the communication and computation resources as two deimensions. It is known that the two-dimensional knapsack problem is strongly NP-hard . Thus, as a generalized extension of the two-dimensional knapsack problem, the admission control problem in our case is also NP-hard. ∎
The NP-hardness of the admission control problem implies that we have to develop approximation algorithms for designing a fast admission control mechanism.
Iv-C Approximate Admission Control Algorithm
We then propose an approximate approach to solve the admission control problem. The key idea is to first design the proper ranking metric to order the demanding profiles of all the users, and then select the set of accepted users in a sequential manner.
Specifically, given the set of demanding profiles by all users , the operator first orders the bids according to the following performance metric (with tie randomly broken):
Recall that is user’s valuation and is the resource occupancy function in (3). The physical meaning of the performance metric indicates the user’s valuation per unit resource occupancy. Intuitively, if a user has a higher valuation and consumes fewer resources, then the user should have a higher chance to get accepted in the JCC resource allocation.
After ranking all users, the operator then sequentially selects the set of accepted users one by one. For a candidate user , the operator checks, by selecting this user as an accepted user, whether the total requested communication and computation resources exceed the capacity of its associated base-station and the mobile-edge cloud. If the capacity constraint is not violated, then the operator will accept this user as an accepted user; otherwise, the operator will reject this user. We summarize the whole procedure for determining the accepted users in Algorithm 3.
Iv-D Performance Analysis
For the approximate admission control in Algorithm 3, it has the complexity of to compute the ranking metrics of all users, to sort the users, to select the accepted users. Thus the complexity of Algorithm 3 is . Hence, the approximate admission control is computationally efficient for JCC resource allocation.
We next analyze the worst-case performance of the proposed admission control algorithm, with respect to the optimal solution that maximizes the social welfare in (6). Let and denote the set of accepted users by the admission control algorithm in Algorithm 3 and the optimal solution in (6), respectively. We also denote the social welfare by the admission control algorithm and the optimal solution as and , respectively. We define the approximation ratio of the admission control algorithm such that .
We first consider the special case that the total communication resource reserved for mobile-edge cloud service at each base station is homogeneous and each mobile user demands the same communication resource amount, i.e., for any and for any . This could correspond to the situation that all the base-stations reserve the same communication resource for mobile-edge could computing service and each user is allowed to utilize one channel for computation offloading in practice. For this special case, we have the following result.
For the case that for any base-station and for any user , the admission control algorithm in JCC resource allocation can approximate the optimal solution with a ratio of .
For this special case, the admission control problem can be reformulated as
Since a base-station is connected to only one mobile-edge cloud, in this case we can decompose the problem above by only considering the sub-problem for each mobile-edge cloud as follows. Here we denote the set of base-stations and users connecting to base-station as and , respectively.
Now suppose we relax the problem above by allowing the variable taking fractional value, i.e., as follows.
For the relaxed problem above, we can easily solve it by the greedy manner using as the ranking metric. Specifically, we first rank all the users in the set accordingly to the ranking metric and then sequentially add a user into the selected set (i.e., ) if both conditions (IV-D) and (IV-D) are satisfied. When a user violates condition (IV-D), we set . When a user who first violates (IV-D), we set as a fractional value to ensures the condition (IV-D) is satisfied and the algorithm ends. We can prove that this greedy algorithm can find the optimal solution to problem (14) by contradiction. This is because, if there exists a user of a higher ranking metric that is selected by the greedy algorithm but not included in the final solution, we can swap it with another user of lower ranking metric that is not picked by the greedy algorithm but is included in the solution to improve the solution. In particular, if there exists such a user that belongs to the same base-station with user , then we swap user with user in the solution and the conditions (IV-D) and (IV-D) are still satisfied. If not, we we swap user with user from another base-station. Since in the greedy algorithm user is selected and the conditions (IV-D) and (IV-D) are satisfied, then after the swap the the conditions are still satisfied. As a result, we see that the solution can be improved and this contradicts with the optimal assumption.
Without loss generality, we denote the optimal solution for problem (14) as , and for any . Since and , then the ranking metric in the admission control algorithm becomes . This is equivalent to using the ranking metric in the admission control algorithm. As a result, the admission control algorithm can obtain the solution as and for any . Let and denotes the values by the two solutions and above, and denotes the optimal solution to the original problem (IV-D). Then, we have
Thus, we have proved that . ∎
The key idea of the proof for Theorem (2) above is that we first formulate the special case admission control problem as an integer programming problem, and then show that the proposed approximate admission control algorithm can obtain the optimal solution for its relaxed fractional programming problem. By exploring the connection between the original integer programming problem and the relaxed fractional programming problem, we can finally show that in the worst case the approximate admission control algorithm can achieve approximation ratio of 1/2 for the original problem.
For the general case that each base station may have heterogenous total communication resource and each mobile user may demand the different amount of communication resource, we can show the following result.
For the general case, the admission control algorithm in JCC resource allocation can approximate the optimal solution with a ratio of where and .
Based on the ranking metric , we first define the set of users of a user such that if then and but due to that user blocks user being accepted in the JCC resource allocation. In the following we also define that . According to the admission control algorithm, we know that for any user , we have , and , which implies that
By summing over all the users , we have
Since and , we then have
Furthermore, we know that . This implies that
Thus, we have which completes the proof. ∎
Theorem 3 describes the performance guarantee of the admission control algorithm in the worst case (which rarely happens in practice). Numerical results demonstrate that in practice the proposed algorithm is very efficient, with at most performance loss, compared to the optimal solution.
V Truthful Pricing for JCC Resource Allocation
As discussed above, the valuation of a user measures the importance or the utility that the user can achieve for completing its task within the delay constraint. It plays a critical role in the admission control for JCC resource allocation. As a result, it would risk that some users may untruthfully report their valuations in order to increasing their chances in getting accepted in JCC resource allocation. These manipulations by the users would lead to inefficient allocation of resources and system-wide performance degradation. Thus, it is highly desirable to prevent such manipulations by designing truthful pricing scheme such that all users have incentives to report their true valuations.
Formally, if a user pays a monetary cost for its demanded resources, the user receives the net payoff of . Then the truthful pricing problem for JCC resource allocation is defined as follows.
(Truthful Pricing Problem) For a user , let and denote the demand report profiles with the truthful valuation and untruthful valuation , respectively. We also denote the payments of user under the truthful demand report and the untruthful report as and , respectively. Then net payoffs of user for the truthful report and the untruthful report are and , respectively. The truthful pricing problem is to design a payment scheme such that i.e., no user can benefit by reporting its valuation untruthfully.
V-a Truthful Pricing Scheme
We next consider the truthful pricing scheme design. Here we borrow the critical value approach in auction theory  for our design. Let denote user ’s reported valuation. Intuitively, a critical value of a user is the minimum value that user should pay in order to be accepted in admission control for JCC resource allocation. That is, if , then user is accepted; if , then user is rejected. And accordingly the truthful pricing scheme based the critical value is that if a user is accepted, then user pay ; otherwise, it pays .
The key challenge of the critical value approach is determining the critical value. For our problem, we show that determining the critical value of a user is equivalent to identifying its critical user, whose demanding profile is the first profile following user that has been rejected in admission control but would have been granted if user is absent in the JCC resource allocation. Note that if a user does not have a critical user, it has a critical value of zero.
To proceed, in order to find the critical user of an accepting user , we first assume user ’s demanding profile is not in the ranked user list by the admission control algorithm. Then we identify the first user (following user in the ranked user list) in the remaining set that if that user is selected as an accepted user (i.e., satisfy the resource constraints) it would make some resource constraint violated when we also add user in the accepted list. Thus, this user is indeed the critical user of user , since user will not be accepted in admission control when user has already been accepted. Accordingly, we can then compute the critical value of the user as
The procedure for obtaining the truthful pricing of JCC resource auction based on critical value is summarized in Algorithm 4. In the following we will show that the proposed payment scheme will guarantee that the proposed pricing scheme is indeed truthful.
V-B Truthfulness Analysis
We first show that the proposed pricing scheme for JCC resource allocation is truthful. According to the critical value approach for auction mechanism design , a pricing scheme is truthful if the following conditions hold: (1) the winner determination algorithm (i.e., the admission control algorithm for our problem) is monotone; (2) each winning user (i.e., each accepted user for our problem) is paid its critical value. To proceed, we formally define these two conditions.
(Monotonicity) An admission control algorithm is monotone, if for a user when a report is accepted, then given the reports of the other users are fixed, the report satisfying , and by user would also be accepted.
Intuitively, an admission control algorithm is monotone if, increasing the valuation and/or decreasing the size of the desired communication and computation resources in the bid will not cause an accepted user to lose given the reports of the other users are fixed.
(Critical Value) For a user in the accepted user set, given the reports of the other users are fixed, there is a critical value such that if the user declares a valuation in its report, then it must be accepted; if the user declares a valuation , then it will be rejected.
We then prove that the proposed pricing scheme is truthful by showing that it satisfies the two conditions above.
The proposed pricing scheme in Algorithm 4 for JCC resource allocation is truthful.
We first check the condition of monotonicity. Recall that we use the performance metric to rank the users in the admission control algorithm. Assume that a user with a report is an accepted user. Then given the reports of the other users are fixed, for the user with the report satisfying , and , we know that . Then the report must also be an accepted report according to the admission control algorithm. Thus, the condition of monotonicity is satisfied.
We then check the condition of critical value. Recall that the critical value of an accepted user is given as where user is the critical user of user , whose report is the first report following user that has been rejected but would have been granted if user is absent in accepted user set. Thus, if user declares a valuation in its report, then user has a higher priority than the critical user in the admission control since . In this case the set of accepted users does not change and user must still be accepted. If user declares a valuation in its report, then we have , i.e., user has a lower priority than the critical user in the admission control. In this case, according to Algorithm 4 for determining the critical user, the user will be accepted, and if we further add user in the accepted user set the resource capacity constraint is violated. As a result, user can not be accepted. Thus, the condition of critical value also holds. Combining the arguments above, we hence know that the proposed pricing scheme for JCC resource allocation is truthful. ∎
Hence, by adopting the truthful pricing scheme in Algorithm 4, all users have incentives to report their true valuations to the network operator. This will be very useful to prevent manipulations by untruthful reports and guarantee the system efficiency for mobile-edge cloud computing.
Vi Numerical Results
In this section, we evaluate the performance of the proposed on-demand JCC resource allocation mechanisms through numerical studies. We consider that there are randomly-scattered mobile users requesting mobile-edge cloud service. There are multiple wireless base-stations, each of which has subchannels (each with a bandwidth Mhz) for supporting on-demand mobile-edge cloud service. The transmission power of a mobile user is mW and the background noise dBm . According to the physical interference model, we set the channel gain where is the distance between user and its associated base-station and is the path loss factor [12, 16].
For the computation task, we consider two types of applications – face recognition  and high-resolution QR-code recognition , and use the task graphs therein. The task completion deadline of each user is randomly determined from the set ms, and the computation capability of a user is randomly assigned from the set GHz . For the cloud computing, there are multiple mobile-edge clouds, and each of which offers three types of virtual machines with the computation capabilities of GHz, respectively [17, 18]. The total computation capability of each mobile-edge cloud server is randomly assigned from the set GHz . To reduce the connection latency, we assume that each base-station is connected to the closest mobile-edge cloud and each user is associated with the closest base-station. The truthful valuation of each user for purchasing the mobile-edge cloud service to complete the task is randomly assigned from the set dollars.
We first evaluate the performance of our proposed resource-efficient offloading algorithm (i.e., delay-aware task graph partition in Algorithm 2 in terms of the resource occupancy. As the benchmark, we also implement the following computation offloading schemes: 1) all offloading solution – all task components in the task graph will be offloaded; 2) Odessa scheme  – a task component is decided to be executed locally or offloaded remotely in a greedy manner. For each offloading scheme we find the minimum resource occupancy that satisfies the given completion time requirement. The results are shown in Figure 3 using face recognition  as a study case, wherein we use the all offloading solution as the baseline to normalize the resource occupancy performance by the other two schemes. We see that the proposed delay-aware task graph partition in Algorithm 2 can reduce up-to 50% resource occupancy over the all offloading scheme. Compared to Odessa scheme, our algorithm can achieve up-to 22% resource occupancy reduction. This demonstrates the proposed delay-aware task graph partition algorithm has superior resource efficiency.
We then evaluate the proposed approximate admission control in JCC resource allocation. As the benchmark, we consider the following solutions: (1) Optimal solution: we compute the (near) optimal solution of the admission control problem using Cross Entropy method, which is an advanced randomized searching technique and has been shown to be efficient in finding near-optimal solutions to complex combinatorial optimization problems; (2) Coarse greedy solution: instead of using the ranking criterion in (12), we compute the greedy solution according to the coarse ranking criterion of , i.e., the claimed valuation in the bid; (3) Random selection: we sequentially and randomly select a new user to add into the accepted user set until the capacity constraints are violated.
In the following, we use the optimal solution by Cross Entropy method as the baseline to normalize the system utility (i.e., social welfare) of other solutions. We implement the simulations with different number of users, and mobile-edge clouds in Figures 4 and 5, respectively. In both cases, we observe that the proposed JCC solution achieves at least and performance improvement over the solutions of coarse greedy and random selection, respectively. Compared with the optimal solution, we see that the performance loss of the JCC solution is at most . This demonstrates of the efficiency of the proposed JCC solution.
We further investigate the running time of the proposed admission control algorithm. We measure the running time in the computing environment of a 64-bit Windows PC with 2.5GHz Quad core CPU and 16GB memory. The results are shown in Figure 6. We see that the JCC mechanism is computationally efficient (with a running time of several milliseconds), with a factor of up to 1000 speed-up compared with the optimal solution by Cross Entropy method. This also demonstrates the proposed admission control algorithm is useful for practical implementation.
We next evaluate the truthfulness of the proposed pricing scheme for JCC resource allocation. We randomly select two users from the system and allow them to claim different valuations in their reports. We show the obtained user utility for these two users in Figures 7 and 8, respectively. We see that by claimed valuations that are different from the truthful valuations, no users can improve their net utility (i.e., true valuation minus payment), under some cases the utility would be worsen. This demonstrates the proposed pricing scheme for JCC resource allocation is truthful such that no user has the incentive to lie about its valuation.
Vii Related Work
Many previous works in mobile cloud computing have focused on the computation offloading problem (e.g., [5, 6, 7, 21, 22] and references therein). Wen et al. in  presented an efficient offloading policy by jointly configuring the clock frequency in the mobile device and scheduling the data transmission to minimize the energy consumption. Yang et al. in 7, 23] proposed a game theoretic approach for designing decentralized multi-user computation offloading mechanism. Note that the computation offloading scheme in our paper is different from the studies above, since the existing works aim at optimizing user’s energy efficiency or delay performance, while our objective is to optimize the user’s offloading decision in terms of resource utilization efficiency. Moreover, existing works above do not consider the JCC resource allocation. Sardellitti et al. in  proposed an optimization framework for the energy-efficient JCC resource allocation, by assuming the network operator knows the complete information of all users’ applications. Li et al. in 
studied the computation offloading issue for deep learning applications. Taoet al. in  investigated the performance guaranteed computation offloading for mobile-edge cloud computing. Chen et al. in  considered to exploit the D2D communications to assist the mobile edge computing. Along a different line, in this paper we introduce a novel paradigm of on-demand mobile-edge cloud service in order to efficiently allocate the JCC resources to those users value them most. Moreover, in our setting each user can locally decide the communication and computation resource profile for computation offloading without the need of reporting the application information to the network operator. This is very useful for reducing the information exchange overhead and protecting user’s privacy without exposing the sensitive user specific application information.
There are existing studies in designing truthful pricing scheme for wireless resource auction (e.g., [27, 28, 29]) and cloud resource auction (e.g.,[30, 31, 32]), which consider either network communication or cloud computation resource allocation in a separate manner. While, in this paper we investigate the joint communication and computation resource allocation for mobile-edge cloud computing – the nexus between cloud computing and wireless networking. Moreover, the truthful pricing scheme in our study builds upon the approximate admission control algorithm using the ranking metric in (12) regarding to the resource occupancy function (3), which is due to user’s decision in the computation offloading. For the performance analysis we derive the approximation ratio for both the special and general cases. The analysis and the approximation ratios are completely different from the auction winner selection schemes in existing studies (e.g., [31, 27, 28, 29, 32]).
Aiming at provisioning flexible mobile-edge cloud service, in this paper we proposed a comprehensive framework consisting of a resource-efficient computation offloading mechanism for the users and a joint communication and computation (JCC) resource allocation mechanism for the network operator. We first solved the resource-efficient computation offloading problem for each individual user, and derive the optimal communication and computation resource demanding profile that minimizes the resource occupancy and meanwhile satisfies the delay constraint. We tackled the admission control problem for JCC resource allocation, and developed an efficient approximation solution of a low complexity. We also addressed the truthful pricing problem by resorting to the powerful tool of critical value approach. Extensive performance evaluation demonstrates that the proposed mechanisms can achieve superior performance for on-demand mobile-edge cloud computing.
For the future work, we are going to consider the more general case that users may dynamically depart and leave the mobile-edge cloud system. We will take into account users’ mobility patterns and devise efficient online resource allocation algorithms to cope with such system dynamics.
-  K. Kumar and Y. Lu, “Cloud computing for mobile users: Can offloading computation save energy?” IEEE Computer, vol. 43, no. 4, pp. 51–56, 2010.
-  T. Soyata, R. Muraleedharan, C. Funai, M. Kwon, and W. Heinzelman, “Cloud-vision: Real-time face recognition using a mobile-cloudlet-cloud acceleration architecture,” in IEEE Symposium on Computers and Communications (ISCC), 2012.
-  X. Chen, B. Proulx, X. Gong, and J. Zhang, “Exploiting social ties for cooperative d2d communications: A mobile social networking case,” IEEE/ACM Transactions on Networking, vol. 23, no. 5, pp. 1471–1484, 2015.
-  European Telecommunications Standards Institute, “Mobile-edge computing – introductory technical white paper,” September 2014.
-  Y. Wen, W. Zhang, and H. Luo, “Energy-optimal mobile application execution: Taming resource-poor mobile devices with cloud clones,” in IEEE INFOCOM, 2012.
-  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.
-  X. Chen, L. Jiao, W. Li, and X. Fu, “Efficient multi-user computation offloading for mobile-edge cloud computing,” IEEE/ACM Transactions on Networking, vol. 24, no. 5, pp. 2795–2808, 2016.
-  Y. Zhang, H. Liu, L. Jiao, and X. Fu, “To offload or not to offload: an efficient code partition algorithm for mobile cloud computing,” in IEEE 1st International Conference on Cloud Networking (CLOUDNET), 2012.
-  Y.-H. Kao and B. Krishnamachari, “Optimizing mobile computational offloading with delay constraints,” in IEEE GLOBECOM. IEEE, 2014, pp. 2289–2294.
-  S. Sardellitti, G. Scutari, and S. Barbarossa, “Joint optimization of radio and computational resources for multicell mobile-edge computing,” in IEEE Transactions on Signal and Information Processing over Networks. IEEE, 2015.
-  X. Chen, Q. Shi, L. Yang, and J. Xu, “Thriftyedge: Resource-efficient edge computing for intelligent iot applications,” IEEE Network, vol. 32, no. 1, pp. 61–65, 2018.
-  C. U. Saraydar, N. B. Mandayam, and D. J. Goodman, “Efficient power control via pricing in wireless data networks,” IEEE Transactions on Communications, vol. 50, no. 2, pp. 291–303, 2002.
-  C. Stein, T. Cormen, R. Rivest, and C. Leiserson, Introduction to algorithms. MIT press, 2009.
-  A. Caprara and M. Monaci, “On the two-dimensional knapsack problem,” Operations Research Letters, vol. 32, no. 1, pp. 5–14, 2004.
-  P. R. Milgrom, Putting auction theory to work. Cambridge University Press, 2004.
-  Z. Li, F. Xiao, S. Wang, T. Pei, and J. Li, “Achievable rate maximization for cognitive hybrid satellite-terrestrial networks with af-relays,” IEEE Journal on Selected Areas in Communications, vol. 36, no. 2, pp. 304–313, 2018.
-  Z. Zhou, M. Dong, K. Ota, G. Wang, and L. T. Yang, “Energy-efficient resource allocation for d2d communications underlaying cloud-ran-based lte-a networks,” IEEE Internet of Things Journal, vol. 3, no. 3, pp. 428–438, 2016.
-  Z. Li, B. Chang, S. Wang, A. Liu, F. Zeng, and G. Luo, “Dynamic compressive wide-band spectrum sensing based on channel energy reconstruction in cognitive internet of things,” IEEE Transactions on Industrial Informatics, vol. 14, no. 6, pp. 2598 – 2607, 2018.
-  M.-R. Ra, A. Sheth, L. Mummert, P. Pillai, D. Wetherall, and R. Govindan, “Odessa: enabling interactive perception applications on mobile devices,” in Proceedings of the 9th international conference on Mobile systems, applications, and services. ACM, 2011, pp. 43–56.
R. Y. Rubinstein and D. P. Kroese,
The cross-entropy method: a unified approach to combinatorial optimization, Monte-Carlo simulation and machine learning. Springer, 2004.
-  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 Journal on Selected Areas in Communications, vol. 34, no. 12, pp. 3887–3901, 2016.
-  X. Chen, Z. Zhou, W. Wu, D. Wu, and J. Zhang, “Socially-motivated cooperative mobile edge computing,” IEEE Network, 2018.
-  X. Chen, “Decentralized computation offloading game for mobile cloud computing,” IEEE Transactions on Parallel and Distributed Systems, vol. 26, no. 4, pp. 974–983, 2015.
-  H. Li, K. Ota, and M. Dong, “Learning iot in edge: Deep learning for the internet of things with edge computing,” IEEE Network, vol. 32, no. 1, pp. 96–101, 2018.
-  X. Tao, K. Ota, M. Dong, H. Qi, and K. Li, “Performance guaranteed computation offloading for mobile-edge cloud computing,” IEEE Wireless Communications Letters, 2017.
-  X. Chen, L. Pu, L. Gao, W. Wu, and D. Wu, “Exploiting massive d2d collaboration for energy-efficient mobile edge computing,” IEEE Wireless Communications, vol. 24, no. 4, pp. 64–71, 2017.
-  X. Zhou, S. Gandhi, S. Suri, and H. Zheng, “ebay in the sky: Strategy-proof wireless spectrum auctions,” in Proceedings of the 14th ACM international conference on Mobile computing and networking. ACM, 2008, pp. 2–13.
-  L. Gao, Y. Xu, and X. Wang, “Map: Multiauctioneer progressive auction for dynamic spectrum access,” IEEE Transactions on Mobile Computing, vol. 10, no. 8, pp. 1144–1161, 2011.
-  W. Dong, S. Rallapalli, L. Qiu, K. Ramakrishnan, and Y. Zhang, “Double auctions for dynamic spectrum allocation,” in IEEE INFOCOM. IEEE, 2014, pp. 709–717.
-  Y. Liu, A. Liu, S. Guo, Z. Li, Y.-J. Choi, and H. Sekiya, “Context-aware collect data with energy efficient in cyber–physical cloud systems,” Future Generation Computer Systems, 2017.
N. Nisan, T. Roughgarden, E. Tardos, and V. V. Vazirani,
Algorithmic game theory. Cambridge University Press Cambridge, 2007, vol. 1.
-  H. Zhang, B. Li, H. Jiang, F. Liu, A. V. Vasilakos, and J. Liu, “A framework for truthful online auctions in cloud computing with heterogeneous user demands,” in Proceedings IEEE INFOCOM, 2013.