Optimal Computing Resource Management Based on Utility Maximization in Mobile Crowdsourcing

Mobile crowdsourcing, as an emerging service paradigm, enables the computing resource requestor (CRR) to outsource computation tasks to each computing resource provider (CRP). Considering the importance of pricing as an essential incentive to coordinate the real-time interaction among the CRR and CRPs, in this paper, we propose an optimal real-time pricing strategy for computing resource management in mobile crowdsourcing. Firstly, we analytically model the CRR and CRPs behaviors in form of carefully selected utility and cost functions, based on concepts from microeconomics. Secondly, we propose a distributed algorithm through the exchange of control messages, which contain the information of computing resource demand/supply and real-time prices. We show that there exist real-time prices that can align individual optimality with systematic optimality. Finally, we also take account of the interaction among CRPs and formulate the computing resource management as a game with Nash equilibrium achievable via best response. Simulation results demonstrate that the proposed distributed algorithm can potentially benefit both the CRR and CRPs. The coordinator in mobile crowdsourcing can thus use the optimal real-time pricing strategy to manage computing resources towards the benefit of the overall system.


Introduction
With the explosion of mobile devices, mobile computing has become an overwhelming trend in the development of mobile networks and Internet of things (IoT) [1][2][3].However, mobile devices are facing some limitations on various resources, for example, computation, memory, and energy [4][5][6].To overcome these limitations, mobile cloud computing has become a promising solution to enable mobile devices to use cloud server resources via wireless communications and networking [7][8][9].Such mobile devices, that is, mobile as a computing resource requestor (CRR), can improve the computation capability and energy efficiency by offloading computation tasks to cloud servers.
On the other hand, with the proliferation of increasingly powerful mobile devices, mobile users can collaboratively form a mobile cloud to provide pervasive services, such as data collection, processing, and computing [10][11][12].
Empowered by these capabilities, mobile devices shift from service consumers to service providers, that is, mobile as a computing resource provider (CRP) [13][14][15][16].With the unprecedentedly powerful mobile cloud, mobile crowdsourcing has been gaining momentum as a viable platform for solving very large-scale problems with the help of the masses [17][18][19].By outsourcing computation tasks to the crowd, costeffective and pervasive computing services can be achieved at a societal scale, using a possibly large number of mobile devices to collaborate together in a distributed way.
Resource management is one of the fundamental issues in mobile networks and IoT for network utility maximization (NUM) [20][21][22].In mobile crowdsourcing, the CRR wants to adjust its demand amount of computing resources so as to pursuit the maximum benefit, while each CRP wants to adjust its supply amount of computing resources so as to pursuit the maximum benefit.Given the importance of computing resource management, in this paper, we focus 2 Wireless Communications and Mobile Computing on the real-time interaction among the CRR and CRPs and introduce an optimal real-time pricing strategy.At first, we analytically model the CRR and CRPs behaviors in form of carefully selected utility and cost functions, based on concepts from microeconomics.Then, we formulate the computing resource management in mobile crowdsourcing as an optimization problem to maximize the satisfaction of the CRR while minimizing the aggregate expense of all CRPs in the system.We show that there exist real-time prices that can align individual optimality with systematic optimality, that is, under such prices, when the CRR and CRPs selfishly optimize their own benefits, they also automatically maximize the system welfare.In order to preserve everyone's privacy, we propose a distributed algorithm for the CRR and CRPs to jointly determine the optimal real-time prices and computing resource demand/supply.The coordinator in mobile crowdsourcing can thus use the optimal real-time pricing strategy to manage computing resources towards the benefit of the overall system.Finally, we take account of the interaction among CRPs and formulate the computing resource management as a game with Nash equilibrium achievable via best response.
To the best of our knowledge, this is an early effort towards providing a systematic framework of optimal computing resource management in mobile crowdsourcing.We hope that this pioneering work can throw light on coordinating the real-time interaction among the CRR and CRPs via the optimal real-time pricing strategy.Specifically, the original contributions of this paper are summarized as follows: (1) We model the CRR and CRPs behaviors and formulate the computing resource management in mobile crowdsourcing as an optimization problem.The proposed distributed algorithm does not require anyone to reveal its private information.
(2) We take account of the interaction among CRPs and formulate the computing resource management as a game with Nash equilibrium achievable via best response.
(3) Simulation results demonstrate that both the CRR and CRPs will benefit from the proposed algorithm.
The remainder of this paper is organized as follows.The system model is introduced in Section 2. We solve the problem of the one-CRR and one-CRP case in Section 3 and that of the one-CRR and multi-CRP case in Section 4. Numerical results are illustrated in Section 5 before conclusions drawn in Section 6.

System Model
Consider a mobile crowdsourcing system consisting of one CRR, one or multiple CRPs, and a coordinator.The time cycle is divided into  time slots.In a certain time slot, let  denote the computing resource demand of the CRR; Similarly, let   denote the computing resource supply of the CRP  ( = 1, 2, . . ., , where  is the total number of CRPs).
(1) The Utility Function for the CRR.The computing resource demand of the CRR depends on the resource price and the priority of the task, which can be modeled by the utility function.Specifically, the utility function (⋅) represents the satisfaction obtained by the CRR as a function of the computing resource demand , which is nondecreasing and concave.In this paper, we consider the following quadratic utility function: where ,  > 0 are predetermined parameters.It corresponds to a linear decreasing marginal benefit () ≜ ()/ =  −  ≥ 0 when 0 ≤  ≤ /.
(2) The Cost Function for the CRP.The cost function   (⋅) represents the expense of supplying the computing resource   by the CRP , which is increasing and strictly convex.In this paper, we consider the following quadratic cost function: where   > 0 and   ,   ≥ 0 are predetermined parameters.

One-CRR and One-CRP Case
At the beginning, consider a simple case for a mobile crowdsourcing system consisting of one CRR, one CRP, and a coordinator.We formulate the interaction among the CRR, CRP, and coordinator as local and global optimization problems and obtain the solution in a distributed way.The resource price is taken as an incentive to reach the balance between the supply and demand, as well as the maximum benefit of both the CRR and CRP.
3.1.Problem Formulation.Firstly, in a certain time slot, under the resource price , the benefit of the CRR by demanding the computing resource  is calculated as   () = () − .
The CRR wants to adjust its demand amount of computing resources so as to pursuit the maximum benefit.Thus the local optimization problem from the CRR perspective is Similarly, in a certain time slot, under the resource price , the benefit of the CRP by supplying the computing resource  is calculated as   () =  − ().The CRP wants to adjust its supply amount of computing resources so as to pursuit the maximum benefit.Thus the local optimization problem from the CRP perspective is max   −  () . (4) From the system perspective, it is desirable that the satisfaction of the CRR is maximized and the expense of the CRP is minimized.Mathematically, we define the system welfare as (, ) = () − (), where  ≥ .The individually optimal solution may not be systematically optimal under an arbitrary resource price.We take the utility function minus the cost function as the objective with the constraint that the supply should be at least equal to the demand.Thus the global optimization problem from the system perspective is max ,  () −  () s.t. ≥ . (5) Note that the problem is a concave maximization problem, which can be solved by convex optimization techniques in a centralized way [23].For example, we take the constraint into the objective by a Lagrangian multiplier.Thus the Lagrangian is defined as where  denotes the Lagrangian multiplier associated with the constraint in (5).By means of / = / = / = 0 for (6), the coordinator wants to adjust the resource price (later we will show that  can be interpreted as the resource price) so as to pursuit the maximum benefit of both the CRR and CRP.
However, the arising challenge is that the coordinator needs to know the exact utility function of the CRP and cost function of the CRP.Since such information is private and no one wants to reveal any, the coordinator may not have sufficient information to solve problem (5).Nevertheless, the distributed algorithm will not require the coordinator to know the exact utility function of the CRP and cost function of the CRP and thus preserves their privacy.Therefore, in the following, we will present the distributed algorithm to approach the optimal resource price for computing resource management in mobile crowdsourcing.

Lagrange Duality.
In order to solve problem (5) in a distributed way, we define the dual function as the maximum value of (6) over , : Furthermore, the Lagrange dual problem is min   () We can solve the dual problem (8) instead of the primal problem (5) [23].
Comparing (7) with ( 3) and ( 4), we find that the Lagrangian multiplier  can be replaced by the resource price  to pursuit the global optimum.In this way, the dual problem can be decomposed into two separable subproblems: one is in the form of (3), which can be locally solved by the CRR, while the other is in the form of ( 4), which can be locally solved by the CRP.After both the CRR and CRP solve their own local optimization problem to obtain  * and  * , the coordinator can solve the dual problem ( 8) to obtain  * , which guarantees the constraint  * ≥  * , such that the locally optimal solution will become globally optimal.
Firstly, for the CRR, the locally optimal solution to (3) is Similarly, for the CRP, the locally optimal solution to ( 4) is Taking the resource price  in place of the Lagrangian multiplier , together with the locally optimal solution  * and  * , we rewrite the dual problem (8) as The globally optimal solution to (11) is Note that from ( 9) and ( 10) we have ( * )/ * = ( * )/ * = , so Overall, by jointly solving ( 9), (10), and ( 13), we can obtain the optimal resource price  * and further calculate the specific  * and  * , such that both the local and global optimums are achieved.In other words, the coordinator wants to make the locally optimal solution be globally optimal by adjusting the resource price.

Distributed Solution.
In order to preserve everyone's privacy, it is possible to approach the optimal resource price of the dual problem (11) in a distributed way [24][25][26]: (1) The coordinator begins with any initial resource price   ≥ 0 ( ∈ N + is the iteration index) and announces it to both the CRR and CRP.
(2) On receiving the resource price   , the CRR updates its demand amount of computing resources   by solving the local optimization problem   = arg max  [() −   ] and feeds it back to the coordinator.Similarly, on receiving the resource price   , the CRP also updates its supply amount of computing resources   by solving the local optimization problem   = arg max  [   − ()] and feeds it back to the coordinator too.
(3) On receiving the local optimal computing resource demand   and supply   , the coordinator updates the resource price  +1 for the next iteration using the following gradient projection method: where  > 0 is the step size to adjust the convergence rate and [] + represents the larger one between  and 0.
With the sufficiently small step size , the proposed distributed algorithm converges to the globally optimal supply  * and demand  * , as long as the primal problem ( 5) is feasible.The reason is as follows.Since the utility function (⋅) is concave and the cost function (⋅) is convex, and thus the relationship from the supply  and demand  to the price  is monotone, there exists the sufficiently small step size  that guarantees the convergence of the gradient projection method [27].The proposed distributed algorithm converges when 0 <  < 2/, where  is the Lipschitz constant for the dual function: The convergence of the following proposed distributed algorithms is similar, which will be omitted due to the space limitation.
The interaction among the CRR, CRP, and coordinator is shown in Figure 1.Intuitively, from (14), if the supply is larger than the demand, that is,   >   , the coordinator will drop the price, that is,  +1 <   ; otherwise, if the supply is less than the demand, that is,   <   , the coordinator will rise the price, that is,  +1 >   .In this way the iteration will converge to the globally optimal price which balances between the supply and demand.
Note that the globally optimal price which balances between the supply and demand will also achieve the maximum benefit of both the CRR and CRP.Otherwise, if the supply is less than the demand, the exceeded computing resource demanded by the CRR will not be satisfied, which reduces its benefit; similarly, if the supply is larger than the demand, the exceeded computing resource supplied by the CRP will be wasted, which reduces its benefit too.

One-CRR and Multi-CRP Case
Now, consider another case for a mobile crowdsourcing system consisting of one CRR, multiple CRPs, and a coordinator.

Without Interaction among
CRPs.Firstly, we focus on the interaction only between the coordinator and each CRP; that is, each CRP is expected to respond to the resource price announced by the coordinator.Under this paradigm, each CRP only communicates with the coordinator as depicted in Figure 2, without the interaction among CRPs.
The problem formulation of this case is similar to that in Section 3.1.The local optimization problemfrom the CRR perspective is the same as (3).Similarly, in a certain time slot, under the resource price , the benefit of each CRP by supplying the computing resource   is calculated as Each CRP wants to adjust its supply amount of computing resources so as to pursuit the maximum benefit.Thus the local optimization problem from each CRP perspective is From the system perspective, it is desirable that the satisfaction of the CRR is maximized and the sum of the expense of all CRPs is minimized.We take the utility function minus the sum of all cost functions as the objective with the constraint that the total supply should be at least equal to the demand.Thus the global optimization problem from the system perspective is max Note that the problem is a concave maximization problem, which can be solved by convex optimization techniques in a centralized way; for example, the Lagrangian is defined as where  is the Lagrangian multiplier associated with the constraint in (17).
Similarly, in order to solve problem (17) in a distributed way, we define the dual function as the maximum value of (18) over , s: Furthermore, the Lagrange dual problem is We can solve the dual problem (20) instead of the primal problem (17) [23].
Similarly, in order to preserve everyone's privacy, it is possible to approach the optimal resource price of the dual problem (20) in a distributed way, which is similar to that in Section 3.3 [28][29][30]:  (1) The coordinator begins with any initial resource price   ≥ 0 and announces it to the CRR and all CRPs.
(2) On receiving the resource price   , the CRR updates its demand amount of computing resources   by solving the local optimization problem   = arg max  [() −   ] and feeds it back to the coordinator; similarly, on receiving the resource price   , each CRP also updates its supply amount of computing resources    by solving the local optimization problem    = arg max   [    −  (  )] and feeds it back to the coordinator too.
(3) On receiving the local optimal computing resource demand   and supply s  , the coordinator updates the resource price  +1 for the next iteration using the following gradient projection method: (4) Repeat from (1) to (3) until the resource price remains unchanged.
The interaction among the CRR, each CRP, and coordinator is shown in Figure 3.

With Interaction among CRPs.
Rather than focusing only on how each CRP behaves individually, we propose a framework with interaction among CRPs via message exchanges; for example, each CRP may share the information of its computing resource supply   among others.As depicted in Figure 4, the blue arrows represent the two-way communication between the CRR and each CRP, while the red bidirectional arrows correspond to the interaction among CRPs.
From ( 9) we know that  = ()/ is the local optimal resource price for the CRR.From the above we also know that the global optimum exists at  = ∑  =1   , by means of / = 0 for (18).Therefore, in a certain time slot, if each CRP supplies the computing resource   , then the local optimal resource price for the CRR is calculated as

Game Theory.
Game theory is a study of selfish and rational players and a formal model of interactive decisionmaking situation [31].A game  = {, , {  (⋅)}} consists of the following three components [32].
(1) Players. = {1, 2, . . ., } is a finite set of players, where  is the total number of players in the game.
(2) Strategies. = ×     is the strategy space of the game and each player  chooses a strategy   from its strategy set   .Generally we denote a strategy vector by s = (  , s − ), where s − ≜ [ 1 , . . .,  −1 ,  +1 , . . .,   ] are the strategies chosen by all the other players in the game.
(3) Payoff Functions.{  (⋅)} is a finite set of payoff functions.The payoff   of the player  is determined by the strategy vector s.Each selfish and rational player wishes to choose the optimal strategy   according to the other players' strategies s − to maximize its own payoff   (  , s − ).
Nash equilibrium (NE) is the most important concept of equilibrium condition in game theory.NE is such a static stable strategy vector that no player has any benefit from unilaterally deviating from this strategy.A strategy vector s * = (  [33]: (1) The player set is finite.
(2) The strategy sets are closed, bounded, and convex.
(3) The payoff functions are continuous in strategy space and quasi-concave.
When (23a) is satisfied, the game is said to be supermodular, while when (23b) is satisfied, the game is said to be submodular.We can use best response to converge to NE [33].

Game among CRPs.
A basic modeling assumption in this paper is that each CRP behaves rationally in a selfinterested manner.Each one wants to adjust its strategy to maximize its own payoff.We model the computing resource management in mobile crowdsourcing as a game among CRPs: (1) Players.All CRPs in the mobile crowdsourcing system are the players in the game.
(2) Strategies.The strategy   of the player  is its computing resource supply.
(3) Payoff Functions.Taking ( 22) into (15), we have the payoff function of each CRP: Taking ( 1) and ( 2) into (24), we have, ∀ ∈ , Based on Theorem 1, NE is considered to be the solution of the game.Meanwhile, the game corresponds to the submodular game, and we can use best response to converge to NE. Best response allows that, at each iteration, each player adapts its strategy to the strategies of others to maximize its own payoff.We design the best response algorithm as follows.
(1) Initial condition: each player chooses a random strategy.
(2) Adaption condition: each player chooses an optimal strategy according to the strategies of others to improve its own payoff: Wireless Communications and Mobile Computing 7 Computing resource requestor (CRR) U  (s k ) and U  (s k ) Total demand s k (i) Update supply: Note that, at each iteration, each player updates its strategy while the others keep their strategies fixed.

Distributed Solution.
Note that ( 26) is a concave maximization problem, which can be solved by convex optimization techniques in a centralized way.However, the arising challenge is that each CRP needs to know the exact utility function of the CRR.Since such information is private and the CRR does not want to reveal any, each CRP may not have sufficient information to solve problem (26).In order to preserve the CRR's privacy, it is possible to approach the optimal strategy of the optimization problem (26) in a distributed way [34][35][36]: (1) Each CRP shares the information of its current computing resource supply   among others.
(2) The CRP  begins with any initial computing resource supply    ≥ 0 and aggregates the total supply of all CRPs, that is,   ≜    + ∑  =1, ̸ =   , and sends it to the CRR.
(3) On receiving the total supply, the CRR calculates the value of   (  ) and   (  ) and feeds them back to the CRP .
(4) On receiving the feedback, the CRP  updates its computing resource supply  +1  for the next iteration using the following gradient projection method: (5) Repeat from (2) to (4) until the CRP  does not revise its computing resource supply.
The interaction among the CRR and each CRP is shown in Figure 5.

Results and Discussion
We provide numerical examples to evaluate the proposed distributed approach.

One-CRR and One-CRP Case.
Consider a mobile crowdsourcing system with one CRR and one CRP.The simulation parameters are set as  = 3,  = 0.5,  = 0.1,  = 0.5, and  = 0.That is, we assume that the CRR has the utility function () = 3 − (0.5/2) 2 , while the CRP has the cost function () = 0.1 2 + 0.5.Firstly, in Figure 6, we fix the step size at  = 0.1, while setting the initial price at  1 = 0 and  1 = 3, respectively.It is shown that in both cases the price converges to the global optimum which balances between the supply and demand.The system welfare achieves the best with the convergence of the price, where the locally optimal solution of both the CRR and CRP becomes globally optimal at the converged price.Next, in Figure 7(a),  is fixed while  1 varies from 0 to 3, to study how the initial price impacts the convergence performance.The figure indicates that the price will finally converge to the equilibrium regardless of any initial value, although the convergence rates may be different.Similarly, in Figure 7(b),  1 is fixed while  varies from 0.025 to 0.25, to study the impact of the step size on the price convergence.We find that the smaller the step size, the slower the convergence rate, while the larger the step size, the faster the convergence rate, but the system may only approach within a certain neighborhood of the equilibrium.This is a general characteristic of any gradient based method.In practice, we can first choose a large step size to ensure fast convergence and subsequently reduce the step size once the price starts oscillating around a certain value.

One-CRR and Multi-CRP Case.
Consider a mobile crowdsourcing system with one CRR and three CRPs.The simulation parameters for the CRR are the same as those in Section 5.1, while the cost functions of different CRPs are assumed to be different.The initial price and step size are fixed at  1 = 3 and  = 0.05.

Without Interaction among CRPs.
In Figure 8, we first set  = 0.5 while  varies from 0.1 to 0.3 for different CRPs.It is shown that the larger the value of , the less computing resource the CRP will supply.Then we set  = 0.1 while  varies from 0.4 to 0.6 for different CRPs.The figure indicates that the larger the value of , the less computing resource the CRP will supply.The system welfare achieves the best with the convergence of the price, where the locally optimal solution of the CRR and each CRP becomes globally optimal under the converged price.

With Interaction among CRPs.
In Figure 9, we set  = 0.5 while  varies from 0.1 to 0.3 for different CRPs.It is shown that the larger the value of , the less computing resource the CRP will supply.Initially the supplies of the three CRPs are random, so their payoffs are very low.Then, at each iteration, each CRP chooses the most selfish strategy according to the strategies of others to improve its own payoff.We can see from the figure that the best response algorithm guarantees that the CRPs' strategies and payoffs converge to NE.The convergence rate is considerably fast, which is desirable for the real-time requirement of mobile crowdsourcing.At NE, each CRP achieves the best payoff.Through the CRP game, each CRP can strategically adjust its supply to improve its individual benefit.We also evaluate the distributed approach to (26).The initial supplies of the three CRPs are the same as those in the CRP game and the step size is fixed at  = 0.5.It is shown that the supplies of all CRPs converge to the optimal solution solved by a centralized way.
In Figure 10, we set  = 0.1 while  varies from 0.4 to 0.6 for different CRPs.The figure indicates that the larger the value of , the less computing resource the CRP will supply.We can see from the figure that the best response algorithm guarantees that the CRPs' strategies and payoffs converge to NE.At NE, each CRP achieves the best payoff.We also evaluate the distributed approach to (26).The initial supplies of the three CRPs are the same as those in the CRP game and the step size is fixed at  = 0.5.It is shown that the supplies of all CRPs converge to the optimal solution solved by a centralized way.
In Section 4.1, we solve the computing resource management problem in mobile crowdsourcing while assuming that there is no interaction among CRPs.We refer to it as "solution 1" (without interaction).In Section 4.2, we assume the interaction among CRPs and formulate the CRP game to solve the computing resource management problem in mobile crowdsourcing.We refer to it as "solution 2" (CRP game).In Figure 11, we compare the performance of these two solutions.We first set  = 0.5 while  varies from 0.1 to 0.3 for different CRPs.Then we set  = 0.1 while  varies from 0.4 to 0.6 for different CRPs.It is shown that in both cases each CRP benefit in solution 1 outperforms that in solution 2, while the CRR benefit and system welfare are a little lower than those in solution 2. The reason is that the algorithm in Section 4.1 takes the system welfare into the first consideration, while the CRP game in Section 4.2 guarantees that each CRP is selfish and rational who only wants to maximize its individual benefit, regardless of the CRR benefit and system welfare.

Conclusions
In this paper, we propose an optimal real-time pricing strategy for computing resource management in mobile crowdsourcing, which is based on utility maximization.It can be implemented in a distributed manner such that the realtime interaction among the CRR and CRPs is coordinated through a limited number of message exchanges.We show that there exist real-time prices that can align individual optimality with systematic optimality.We also take account of the interaction among CRPs and formulate the computing resource management as a game with Nash equilibrium achievable via best response.Simulation results demonstrate that, by using our proposed optimization-based real-time
Update price with d k and s k :

3 Figure 6 :
Figure 6: Computing resource management in a mobile crowdsourcing system of the one-CRR and one-CRP case.
*  , s * Theorem 1.A game can be shown to have NE if the following conditions are satisfied