14
2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 1 A New Service Mechanism for Profit Optimizations of a Cloud Provider and Its Users Chubo Liu, Kenli Li, Senior Member, IEEE, Keqin Li, Fellow, IEEE, and Rajkumar Buyya, Fellow, IEEE Abstract—In this paper, we try to design a service mechanism for profit optimizations of both a cloud provider and its multiple users. We consider the problem from a game theoretic perspective and characterize the relationship between the cloud provider and its multiple users as a Stackelberg game, in which the strategies of all users are subject to that of the cloud provider. The cloud provider tries to select and provision appropriate servers and configure a proper request allocation strategy to reduce energy cost while satisfying its cloud users at the same time. We approximate its servers selection space by adding a controlling parameter and configure an optimal request allocation strategy. For each user, we design a utility function which combines the net profit with time efficiency and try to maximize its value under the strategy of the cloud provider. We formulate the competitions among all users as a generalized Nash equilibrium problem (GNEP). We solve the problem by employing variational inequality (VI) theory and prove that there exists a generalized Nash equilibrium solution set for the formulated GNEP. Finally, we propose an iterative algorithm (IA), which characterizes the whole process of our proposed service mechanism. We conduct some numerical calculations to verify our theoretical analyses. The experimental results show that our IA algorithm can benefit both of a cloud provider and its multiple users by configuring proper strategies. Index Terms—Cloud computing, Generalized Nash equilibrium, Non-cooperative game theory, Profit optimization, Resource allocation, Variational inequality theory. 1 I NTRODUCTION C Loud computing is an increasingly popular paradig- m of offering subscription-oriented services to en- terprises and consumers [1]. Usually, the provided ser- vices refer to Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS), which are all made available to the general public in a pay-as-you-go manner [2], [3]. To support various services, more and more cloud centers are equipped with thousands of computing nodes, which results in tremendous energy cost [4]. It is reported that about 50% management budget of Amazon s data center is used for powering and colling the physical servers [5]. There are also researchers who have studied the cost of data centers and concluded that around 40% of the amortized cost of a data center falls into power related categories [6]. Hence, it is important to reduce energy cost for improving the profit of a cloud provider. However, it can often be seen that there are many under-utilized servers in cloud centers, or on the contrary, cloud providers provide less processing capacity and thus dissatisfy their users for poor service quality. Therefore, it is important for a cloud provider to select appropriate servers to Chubo Liu, Kenli Li, and Keqin Li are with the College of Information Sci- ence and Engineering, Hunan University, and National Supercomputing Center in Changsha, Hunan, China, 410082. E-mail: [email protected], [email protected], [email protected]. Keqin Li is also with the Department of Computer Science, State Univer- sity of New York, New Paltz, New York 12561, USA. Rajkumar Buyya is with the Department of Computing and Information Systems, The University of Melbourne, Parkville, VIC 3053, Australia. Email: [email protected]. provide services, such that it reduces cost as much as possible while satisfying its users at the same time. For a cloud provider, the income (i.e., the revenue) is the service charge to the aggregated requests from all cloud users [7]. When the per request charge is determined, servers selection and request allocation s- trategy are two significant factors that should be taken into account. The reason behind lies in that both of them are not just for the profit of a cloud provider, but for the appeals to more cloud users in the market to use cloud service and thus also impact the profit. Specifically, if the provided computing capacity is large enough (i.e., many servers are under-utilized), this will result in tremendous amount of energy waste with huge cost and thus reduces the profit of the cloud provider. On the other hand, if the cloud provider provides less computing capacity or improperly configures the request allocation strategy, this will lead to low service quality (e.g, long task response time) and thus dissatisfies its cloud users or potential cloud users in the market. A rational user will choose a strategy to use the service that maximizes his/her own net reward, i.e., the utility obtained by choosing the cloud service minus the payment [8]. In addition, the utility of a user is not only determined by the net profit of his/her requests (i.e., how much benefit the user can receive by finishing the configured tasks), but also closely related to the urgency of the tasks (i.e., how quickly they can be finished). The same amount of tasks are able to generate more utility for a cloud user if they can be completed within a shorter period of time in the cloud center [8]. However, considering from energy saving and economic reasons, it is irrational for a cloud provider to provide enough

A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

Embed Size (px)

Citation preview

Page 1: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

1

A New Service Mechanism for ProfitOptimizations of a Cloud Provider and Its UsersChubo Liu, Kenli Li, Senior Member, IEEE, Keqin Li, Fellow, IEEE, and Rajkumar Buyya, Fellow, IEEE

Abstract—In this paper, we try to design a service mechanism for profit optimizations of both a cloud provider and its multiple users. Weconsider the problem from a game theoretic perspective and characterize the relationship between the cloud provider and its multipleusers as a Stackelberg game, in which the strategies of all users are subject to that of the cloud provider. The cloud provider triesto select and provision appropriate servers and configure a proper request allocation strategy to reduce energy cost while satisfyingits cloud users at the same time. We approximate its servers selection space by adding a controlling parameter and configure anoptimal request allocation strategy. For each user, we design a utility function which combines the net profit with time efficiency andtry to maximize its value under the strategy of the cloud provider. We formulate the competitions among all users as a generalizedNash equilibrium problem (GNEP). We solve the problem by employing variational inequality (VI) theory and prove that there exists ageneralized Nash equilibrium solution set for the formulated GNEP. Finally, we propose an iterative algorithm (IA), which characterizesthe whole process of our proposed service mechanism. We conduct some numerical calculations to verify our theoretical analyses.The experimental results show that our IA algorithm can benefit both of a cloud provider and its multiple users by configuring properstrategies.

Index Terms—Cloud computing, Generalized Nash equilibrium, Non-cooperative game theory, Profit optimization, Resource allocation,Variational inequality theory.

F

1 INTRODUCTION

C Loud computing is an increasingly popular paradig-m of offering subscription-oriented services to en-

terprises and consumers [1]. Usually, the provided ser-vices refer to Infrastructure as a Service (IaaS), Platformas a Service (PaaS), and Software as a Service (SaaS),which are all made available to the general public ina pay-as-you-go manner [2], [3]. To support variousservices, more and more cloud centers are equippedwith thousands of computing nodes, which results intremendous energy cost [4]. It is reported that about 50%management budget of Amazon′s data center is usedfor powering and colling the physical servers [5]. Thereare also researchers who have studied the cost of datacenters and concluded that around 40% of the amortizedcost of a data center falls into power related categories[6]. Hence, it is important to reduce energy cost forimproving the profit of a cloud provider. However, it canoften be seen that there are many under-utilized serversin cloud centers, or on the contrary, cloud providersprovide less processing capacity and thus dissatisfy theirusers for poor service quality. Therefore, it is importantfor a cloud provider to select appropriate servers to

• Chubo Liu, Kenli Li, and Keqin Li are with the College of Information Sci-ence and Engineering, Hunan University, and National SupercomputingCenter in Changsha, Hunan, China, 410082.E-mail: [email protected], [email protected], [email protected].

• Keqin Li is also with the Department of Computer Science, State Univer-sity of New York, New Paltz, New York 12561, USA.

• Rajkumar Buyya is with the Department of Computing and InformationSystems, The University of Melbourne, Parkville, VIC 3053, Australia.Email: [email protected].

provide services, such that it reduces cost as much aspossible while satisfying its users at the same time.

For a cloud provider, the income (i.e., the revenue)is the service charge to the aggregated requests fromall cloud users [7]. When the per request charge isdetermined, servers selection and request allocation s-trategy are two significant factors that should be takeninto account. The reason behind lies in that both ofthem are not just for the profit of a cloud provider,but for the appeals to more cloud users in the marketto use cloud service and thus also impact the profit.Specifically, if the provided computing capacity is largeenough (i.e., many servers are under-utilized), this willresult in tremendous amount of energy waste with hugecost and thus reduces the profit of the cloud provider.On the other hand, if the cloud provider provides lesscomputing capacity or improperly configures the requestallocation strategy, this will lead to low service quality(e.g, long task response time) and thus dissatisfies itscloud users or potential cloud users in the market.

A rational user will choose a strategy to use theservice that maximizes his/her own net reward, i.e., theutility obtained by choosing the cloud service minus thepayment [8]. In addition, the utility of a user is not onlydetermined by the net profit of his/her requests (i.e.,how much benefit the user can receive by finishing theconfigured tasks), but also closely related to the urgencyof the tasks (i.e., how quickly they can be finished).The same amount of tasks are able to generate moreutility for a cloud user if they can be completed within ashorter period of time in the cloud center [8]. However,considering from energy saving and economic reasons,it is irrational for a cloud provider to provide enough

Page 2: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

2

computing resources to complete all requests in a shortperiod of time. Therefore, multiple cloud users have toconfigure the amount of requests in different time slots.Since the requests from users are submitted randomly,in our paper, we approximately characterize the requestarrivals as a Poisson process [9]. Since the payment andtime efficiency of each of the cloud users are affectedby the decisions of others, it is natural to analyze thebehaviors of these users as strategic games [10].

In this paper, we try to design a new service mechanis-m for profit optimizations of both a cloud provider andits multiple users. We consider the problem from a gametheoretic perspective and characterize the relationshipbetween the cloud provider and its users as a Stackelberggame, in which the strategies of all users are subject tothat of the cloud provider. In our mechanism, the cloudprovider tries to select appropriate servers and configurea proper request allocation strategy to reduce energy costwhile satisfying its users at the same time.

The main contributions of this paper are listed asfollows.

• We characterize the relationship between the cloudprovider and its users as a Stackelberg game, andtry to optimize the profits of both a cloud providerand its users at the same time.

• We formulate the competitions among all users as ageneralized Nash equilibrium problem (GNEP), andprove that there exists a generalized Nash equilib-rium solution set for the formulated GNEP.

• We solve the GNEP by employing varational in-equality (VI) theory and propose an iterative algo-rithm (IA) to characterize the whole process of ourproposed service mechanism.

Experimental results show that our IA algorithm canbenefit both of the cloud provider and its multiple usersby configuring proper strategies.

The rest of the paper is organized as follows. Section 2presents the related works. Section 3 describes the mod-els of the system and presents the problem to be solved.Section 4 formulates the problem into a Stackelberggame, which consists of a leader and a set of followers.We analyze the strategies for both of the leader and thefollowers. Many analyses and several subalgorithms arepresented in this section. Section 5 is developed to verifyour theoretical analysis and show the effectiveness of ourproposed algorithm. We conclude the paper with futurework in Section 6.

2 RELATED WORK

Some works have been done for profit optimizations ofcloud centers in the literature [7], [12], [11], [13]. Themethods are presented in Table 1. In [12], Lampe et al.proposed a heuristic method to tackle profit maximiza-tion for a cloud provider. They focus on auction profitmaximization in the context of multiple virtual ma-chines (VMs). In [13], Goudarzi and Pedram developeda heuristic to deal with profit maximization in cloud

computing system with service level agreements. Theytry to reduce cost by powering off appropriate servers,i.e., selecting appropriate servers to provide services.More recently, Cao et al. [7] proposed an optimal methodfor energy saving under continuous dynamic voltagefrequency scaling (DVFS) environment. Specifically, theytry to configure appropriate speed for each server tosave energy. However, as shown in Table 1, all thesemethods mainly consider from the perspective of thecloud provider.

To our knowledge, hardly any previous works inves-tigate multiple users′ profit optimizations, let alone opti-mizing the profits of a cloud provider and its users at thesame time. In this work, we first try to optimize multipleusers′ profits. Since multiple cloud users compete forusing the resources of a cloud provider, and the utilityof each user is affected by the decisions (service requeststrategies) of other users, it is natural to analyze thebehaviors of such systems as strategic games [14].

Game theory provides a framework to explain and ad-dress the interactive decision situations where the goalsand preferences of the participating users are in conflict[15], [16]. It is a formal study of conflicts and cooperationamong multiple users [17] and a powerful tool for thedesign and control of multiagent systems [18]. Due toits advantages, there has been a growing interest inadopting cooperative and non-cooperative game theoret-ic approaches to various areas such as scheduling [19],communications [20], and evolution of cooperation [21].A more general framework suitable for investigating andsolving various equilibrium models, even when gametheory may fail, is the variational inequality (VI) theorywhich is applicable to a very general class of problems innonlinear analysis [22]. For more works on game theory,the reader is referred to [23], [24], [25].

As presented in Section 1, energy cost is one of themost important factors that should be taken into accountfor a cloud provider to increase its profit. Many workshave also been done on energy saving in the literature[26], [27], [28], [29]. In [28], Mei et al. proposed anenergy-aware scheduling algorithm for sporadic tasks.The authors try to reduce energy consumption by usingdynamic voltage frequency scaling (DVFS) technique. In[29], based on DVFS technique and the concept of slacksharing among processors, the authors also proposedtwo novel energy-aware scheduling algorithms. Similarworks can also be found in [26], [27].

However, according to [30], even an energy efficientserver still consumes about half of its full power whendoing no work. Therefore, powering off idle serverswhen possible is regarded as an effective way to reduceenergy cost, especially during off-peak traffic hours fora relative long period of time [31]. In this work, we tryto power off some idle servers (i.e., select appropriateservers to provide services) to reduce energy cost for thecloud provider. In addition, we configure server selectionstrategy for multiple time slots, i.e., for a relative longperiod of time.

Page 3: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

3

TABLE 1: Comparison between IA and the state-of-the-art schemes

Schemes Perspective(s) Energy saving technique Characteristic[7] Cloud provider Continuous DVFS Optimal[11] Cloud provider Powering off servers Heuristic[12] Cloud provider VM consolidation Heuristic[13] Cloud provider Powering off servers HeuristicIA Cloud provider and users Powering off servers Heuristic

3 SYSTEM MODEL AND PROBLEM FORMULA-TION

In this section, we first present our system models andthen formulate the profit optimization problem. We con-sider the context of a cloud provider with multiple cloudusers. The cloud provider is assumed to be equippedwith m heterogeneous multicore servers. We denote theset of servers as M = 1, 2, . . . ,m. Each server j(j ∈ M) consists of cj cores and similar to [9], it ismodeled by an M/M/c queueing system. We denote theset of cloud users as N = 1, 2, . . . , n. The requests fromeach of the cloud users are assumed to follow a Poissonprocess.

We summarize all the notations used in this sectionin the notation table (see Section 1 of the supplementarymaterial).

3.1 Architecture ModelIn this subsection, we model the architecture of our pro-posed service mechanism, in which the cloud providercan select an appropriate servers subset S from M (i.e.,S ⊆ M) to provide services for the H future time slots,and configure a proper strategy pS =

(p1S , . . . ,p

HS)

withphS =

(phj)j∈S (h ∈ H) to allocate the aggregated requests

to the selected servers, such that the average responsetime over all cloud users (see Eq. (14)) is minimized,while its multiple users can make an appropriate requestdecision according to the selected servers and allocationstrategy. As shown in Fig. 1, each user i (i ∈ N ) isequipped with a utility function (Ui) and a requestconfiguration strategy (λi), i.e., the request strategy overH future time slots. All requests enter a queue to beprocessed by the cloud center. Let λΣ be the aggregatedrequest vector, then we have λΣ =

∑i∈N λi. The cloud

provider tries to select an appropriate servers subsetS, configure an appropriate allocation strategy pS , andpublishes some information (e.g., per request charger, server subset S, and the corresponding allocationstrategy pS , current aggregated requests λΣ) on theinformation exchange model. When multiple users tryto configure appropriate request strategies, they first getinformation from the exchange module, then computeproper request strategies such that their own utilities aremaximized and send the newly strategies to the cloudprovider.

The computation and communication process can beautomatically done by a software. If a user wants to

have a look at the aggregated requests λΣ in the process,he/she just needs to press a button of the software to askfor the cloud provider to send the newly updated valueof λΣ. Take one day as an example, i.e., H = 24 (from20:00 to 20:00 of the next day), with one hour a timeslot. The cloud provider sets 20:00 to ensure the userswho use its service and compute their correspondingstrategies over the next 24 hours. That is to say, eachuser has two steps to make cloud service reservation.Firstly, before 20:00, the users who want to use thecloud service register their informations. Secondly, thecloud provider collects the informations of its registeredusers and ensures the agreements at 20:00. If a userregisters after 20:00, then he/she tries to make the nextnegotiation, i.e., waits for the next round.

μ1

μ3

μm

Server

selection

Request

allocation

μ2

Scheduler

Cloud Provider

Information

Exchange

λ∑

Net Profit: π

Server Subset: S

Cloud User 1

Utility: U1

Reservation Value: v1

λ1

Cloud User 2

Utility: U2

Reservation Value: v2

λ2

Cloud User n

Utility: Un

Reservation Value: vn

λnAllocation Probability: pS

p1

p3

Fig. 1: Architecture model

3.2 Energy Cost Model

We consider energy consumption model in the contextof our proposed heterogeneous multicore server system.Energy consumption and circuit delay in complementarymetal-oxide semiconductor (CMOS) can be accuratelymodeled by simple equations, even for complex mi-croprocessor circuits [9]. The energy consumption of aCMOS-based processor is defined as the summation ofcapacitive, short-circuit, and leakage energy [32]. How-ever, the dominant component in a well-designed circuitis capacitive energy E, which is approximately definedas

E = dCV 2f, (1)

where d is the number of switches per clock cycle, C isthe total capacitance load, V is the supply voltage, and fis the frequency. The processing capacity of a processorµ is usually linearly proportional to the clock frequency,

Page 4: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

4

i.e., µ ∝ f . With reference to [9], [33], we also obtainf ∝ V ϕ with 0 < ϕ ≤ 1, which implies that V ∝ f1/ϕ.Therefore, we know that the energy consumption is E ∝fa and E ∝ µa, where a = 1+2/ϕ ≥ 3. In this paper, weassume that

E = ξµa, (2)

where ξ is a corresponding factor. Denote χ as the cost ofone unit of energy and let Ej be the energy consumptionof server j (j ∈ M) in a unit of time. According toequation (2), we obtain

Ej = χcjξjµaj

j , (3)

where µj is the processing rate of one core of serverj, ξj and aj are the corresponding energy consumptionfactors.

3.3 Request Profile ModelWe consider a user request model similar to [34], [35],where the user i′s (i ∈ N ) request profile over the Hfuture time slots is formulated as

λi =(λ1i , . . . , λ

Hi

), (4)

where λhi (h ∈ H) is the arrival rate of requests from user

i in the hth time slot and it is subject to the constraint 0 ≤λhi ≤ Λi, where Λi denotes user i′s maximal requests in a

time slot. The requests from each of the users in differenttime slots are assumed to follow a Poisson process. Theindividual strategy set of user i can be expressed as

Qi =λi|0 ≤ λh

i ≤ Λi, ∀h ∈ H, (5)

where H = 1, . . . , H is the set of all H future timeslots.

3.4 Cloud Service ModelThe cloud provider is equipped with a request schedulerand m heterogeneous multicore servers. Each server j(j ∈ M) consists of cj cores and similar to [9], it ismodeled by an M/M/c queuing system. We assume thatall of the servers differ in their processing capacities andenergy consumptions. The processing capacity of onecore of server j (j ∈ M) is presented by its servicerate µj . Energy consumption factors ξj and aj are alsodifferent among different servers. The cloud provideronly selects a servers subset S (S ⊆ M) to provideservices.

Let phj be the probability that each of the requests isassigned to server j (j ∈ S) in time slot h (h ∈ H)and ρhj be the corresponding service utilization. Thenwe have ρhj = phj λ

/(cjµj), where λh

Σ denotes theaggregated requests from all cloud users in time sloth, i.e., λh

Σ =∑n

i=1 λhi . Let πh

k,j be the probability thatthere are k service requests (waiting or being proceed)at server j in time slot h. With reference to [9], we have

πhk,j =

πh0,j

(cjρhj )

k

k! , k < cj ;

πh0,j

ccjj (ρh

j )k

cj !, k ≥ cj ,

(6)

where

πh0,j =

(cj−1∑l=0

(cjρ

hj

)ll!

+

(cjρ

hj

)cjcj !

· 1

1− ρhj

)−1

. (7)

The probability of queuing (i.e., the probability that anewly submitted request must wait due to all cores ofserver j are busy) is

Phq,j =

∞∑k=cj

πhk,j =

πhcj ,j

1− ρhj. (8)

The average number of service requests in time slot h(in waiting or in execution) at server j is

Nhj =

∞∑k=0

kπhk,j = cjρ

hj +

ρhj1− ρhj

Phq,j . (9)

Applying Little′s result, we obtain the average responsetime at server j as

Thj =

Nhj

phj λhΣ

=1

phj λhΣ

(cjρ

hj +

ρhj1− ρhj

Phq,j

), (10)

where Phq,j represents the probability that the incoming

requests at server j need to wait in queue in time slot h.In this paper, we assume that all of the selected serverswill likely keep busy, because if not so, some serverscould be removed to reduce mechanical wear and energycost. Therefore, Ph

q,j (∀j ∈ S) is assumed to be 1, and wehave

Thj =

1

phj λΣ

(cjρ

hj +

ρhj1− ρhj

)=

1

µj+

1

cjµj − phj λhΣ

.

(11)

With a request rate of λhi (i ∈ N ) in time slot h (h ∈ H),

the average response time of user i on server j (j ∈ S)is given by

Thij =

phj λhi

µj+

phj λhi

cjµj − phj λhΣ

. (12)

We derive the mean response time of user i (i ∈ N ) overall servers as

Thi =

∑j∈S

phj Thij =

∑j∈S

((phj)2

λhi

µj+

(phj)2

λhi

cjµj − phj λhΣ

), (13)

and the average response time over all users as

Th =∑i∈N

(λhi

λhΣ

Thi

)=∑i∈N

λhi

λhΣ

∑j∈S

phj Thij

=∑i∈N

(λhi

)2λhΣ

∑j∈S

((phj)2

µj+

(phj)2

cjµj − phj λhΣ

). (14)

Page 5: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

5

3.5 Problem FormulationNow, let us consider user i′s (i ∈ N ) utility in timeslot h. A rational cloud user will seek a strategy tomaximize its expected net reward by finishing the tasks,i.e., the benefit obtained by choosing the cloud serviceminus its total payment. We denote user i′ net rewardin time slot h by Rh

i , where Rhi = (b− r)λh

i with b and rdenoting the benefit factor (the reward obtained by onetask request) and the charge factor (the cost by finishingone task request in cloud computing), respectively. Onthe other hand, since a user will be more satisfied withmuch faster service, we also take the response time ofthe user into account. Note that service time utility willbe deteriorated with the delay of time slots. Hence, inthis paper, we assume that the deteriorating rate of timeutility is δ (δ > 1). Denote the Th

i as the time utility ofuser i in time slot h. Then we have Th

i = δhThi . More

formally, the utility of user i (i ∈ N ) in time slot h isdefined as

Uhi

(λhi ,λ

h−i

)= wiR

hi − Th

i

= wi (b− r)λhi − δhTh

i , (15)

where λh−i =

(λh1 , . . . , λ

hi−1, λ

hi , . . . , λ

hn

)denotes the vec-

tor of all users′ request profile in time slot h except thatof user i, and wi (wi > 0) is a weight factor, which reflectsthe importance of net benefit compared with time utility.Note that, when the average response time is low, theusers may submit more requests and thus impact theaggregated requests in cloud center.

We obtain the total utility obtained by user i (i ∈ N )over all H future time slots as

Ui (λi,λ−i) =∑h∈H

Uhi

(λhi ,λ

h−i

)=∑h∈H

(wi (b− r)λh

i − δhThi

), (16)

where λ−i = (λ1, . . . ,λi−1,λi+1, . . . ,λn) denotes the(n− 1) H × 1 vectors of all users′ request profile exceptthat of user i. In this paper, we assume that each useri (i ∈ N ) has a reservation value vi. That is to say,cloud user i will prefer to use the cloud service ifUi (λi,λ−i) ≥ vi and refuse to use the cloud serviceotherwise.

For the cloud provider, its objective is trying to selectan appropriate servers subset S from M and configurea proper request allocation strategy pS , such that its netreward, i.e., the charge to all cloud users minus its energycost, is maximized. We denote π as the net profit, thenthe cloud provider′s problem is to maximize the valueπ. That is,

maximize π (S,pS) = r∑i∈N

∑h∈H

λhi −H

∑j∈S

Ej , S ⊆M,

s.t. Ui (λi,λ−i) ≥ vi, λi ∈ Qi, ∀i ∈ N ,

phj λhΣ < cjµj , ∀j ∈ S, ∀h ∈ H,∑j∈S

phj = 1, ∀h ∈ H. (17)

4 GAME FORMULATION AND ANALYSES

Since the multiple users have to compete for using thecomputing resources, and their strategies are subject tothat of the cloud provider, we formulate the relationshipbetween the cloud provider and its multiple users intoa Stackelberg game. For the cloud provider, we tryto approximate its server selection solution space byusing a control parameter and configure an appropriaterequest allocation strategy to the selected servers. Forthe multiple users, we characterize their competitionsas a non-cooperative game and formulate them intoa generalized Nash equilibrium problem (GNEP). Byemploying variational inequality (VI) theory, we analyzethe the formulated GNEP. Then, we propose an iterativealgorithm (IA) to compute appropriate strategies forboth the cloud provider and its multiple users.

4.1 Game Formulation

Game theory studies the problems in which multipleplayers try to maximize their utilities or minimize theirdisutilities. In this subsection, we characterize the opti-mization problem presented in Section 3.5 as a Stackel-berg game, which is a sequential game played betweena Leader and a set of Followers [36]. All of them try tomaximize their own utilities.

In our work, the cloud provider plays the role of theleader, who tries to select an appropriate servers subsetS from M and configure a proper request allocationstrategy pS to the selected servers, such that it canappeal user requests as many as possible while its costis relatively low. We denote QL as the servers selectionspace, then QL can be expressed as

QL = S|S ⊆ M . (18)

Each cloud user is regarded as a follower, i.e., the set offollowers is the n cloud users. Notice that when givenS and pS , the workload of each server j (j ∈ S) in timeslot h (h ∈ H) never exceeds its processing capacity, i.e.,phj λ

hΣ < cjµj (∀j ∈ S). We denote σ as a relative small

constant and add the constraint λhΣ ≤ (1− σ)λh

up, whereλhup = minj∈S

cjµj

/phj

. Then the request strategy setof user i (i ∈ N ) can be expressed as

Qi (λ−i) = Qi ∩

λi|

n∑i=1

λhi ≤ (1− σ)λh

up, ∀h ∈ H

.

(19)Then, the joint strategy set of all followers is given byQF = Q1 × · · · × Qn.

A Stackelberg game assumes certain decision powerfor both the leader and followers, with the leader pro-cessing a higher priority. The followers have to maketheir decisions subject to the leader’s strategy [37] andtry to maximize their own utilities. Therefore, the profitmaximization problem of the cloud provider can be

Page 6: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

6

formulated as the following optimization problem (OPT):

maximize π (S,pS) = r∑i∈N

∑h∈H

λhi −H

∑j∈S

Ej , S ∈ QL,

s.t. λi ∈ argmaxλ

′i∈Qi(λ−i)

Ui

i,λ−i

), ∀i ∈ N . (20)

Theorem 4.1. Above OPT problem is NP-hard.

Proof: A complete proof of the theorem is given inthe supplementary material.

4.2 Leader’s Strategy AnalysisWe now consider the problem from the perspective ofthe cloud provider. We try to reduce the servers selectionspace by using an approximated one. We also configurean optimal request allocation strategy for the aggregatedrequests.

4.2.1 Solution Space ApproximationTo reduce the solution space (QL), we use a parameterε to categorize all the elements in QL and reduce someserver subsets, which provide similar processing capac-ities.

We notice that a server j (j ∈ M) gains net profitat most Pj in each time slot for the cloud provider,where Pj = rcjµj − Ej . Therefore, we use Pj to char-acterize the server j (j ∈ M) during our approxima-tion process. In this paper, the value Pj (∀j ∈ M)is assumed to be greater than zero. We denote PT (S)as the largest possible profit gained by all servers inS. Then we have PT (S) =

∑j∈S Pj . Arrange all of

the server subsets S(1),S(2), . . . ,S(|QL|) in QL, such thatPT

(S(1)

)≤ PT

(S(2)

)≤ · · · ≤ PT

(S(|QL|)). We try to

reduce some elements inQL to an approximated solutionspace Q(ε)

L , such that for each server subset S in QL,there exists an element S(ε) (S(ε) ∈ Q(ε)

L ) satisfyingPT (S) ≤ (1 + ε)PT

(S(ε)

). The idea is formalized in

Algorithm 1.Given ε, r,µ,E, and M, where µ = (µj)j∈M and

E = (Ej)j∈M, the algorithm Calcualte Q(ε)L finds an

approximated solution space Q(ε)L for QL. The key idea is

trying to reduce solution space by selecting some serversubset representatives and removing similar ones (Steps7-11). At the beginning, we set Q(ε)

L as ∅, which onlycontains an empty subset (Step 1). Then, for a serverj (j ∈ M), we merge it into each of the subsets inQ(ε)

L (Steps 3-5) and resort the subsets according to theirlargest possible gained profits (Step 6). After resorting,we try to remove some later elements S(l) (S(l) ∈ QL)if there exists a previous one S(p) (S(p) ∈ QL) satisfyingPT

(S(l)

)≤ (1 + ε)PT

(S(p)

)(Steps 7-11). This process is

terminated when all the servers in M are considered.

Theorem 4.2. The time complexity of Algorithm 1 isΘ(mL(ε) logL(ε)

), where

L(ε) =(1 + ε) lnPT (M)

ε, (21)

Algorithm 1 Calculate Q(ε)L (ε, r,µ,E,M)

Input: ε, r,µ,E,M.Output: Q(ε)

L .1: Initialization: For each server j (j ∈M), calculate Pj .

Set Q(ε)L = ∅.

2: for (each server j ∈M) do3: for (each element S ∈ Q(ε)

L ) do4: Merge server j into set S, i.e., set S ← S ∪ j.5: end for6: Sort the elements in Q(ε)

L such that PT

(S(1)

)≤

PT

(S(2)

)≤ . . . ≤ PT

(S(|Q

(ε)L |))

.

7: for (i from 1 to∣∣∣Q(ε)

L

∣∣∣− 1) do8: if (PT

(S(i+1)

)≤ (1 + ε)PT

(S(i)

)) then

9: Remove S(i+1) from Q(ε)L , i.e., set Q(ε)

L ←Q(ε)

L −S(i+1)

.

10: end if11: end for12: end for13: return Q(ε)

L .

with PT (M) =∑

j∈M (rcjµj − Ej).

Proof: We first derive an upper bound of the lengthof set Q(ε)

L . As can be seen from Algorithm 1, aftersteps 7-11, two continuous elements S and S ′

(S,S ′ ∈Q(ε)

L ) satisfy the condition PT

(S ′)/

PT (S) > 1 + ε.

That is to say, for any two elements S,S ′ ∈ Q(ε)L ,

PT

(S ′)/

PT (S) > 1 + ε. Therefore, Q(ε)L contains ele-

ment ∅ and may contain at most other⌈log1+εPT (M)

⌉elements. Thus, the number of elements in set Q(ε)

L is atmost

log(1+ε)PT (M) + 1 =lnPT (M)

ln (1 + ε)+ 1

≤ (1 + ε) lnPT (M)

ε+ 1.

In Algorithm 1, we note that the for loop (Steps 3-5)requires Θ

(L(ε)

)to complete as well as the other for loop

(Steps 7-11). In step 6, it takes at most Θ(L(ε) logL(ε)

)to

sort the elements in set Q(ε)L . Therefore, the outer for loop

(Steps 2-12) takes time Θ(m(2L(ε) + L(ε) logL(ε)

))=

Θ(mL(ε) logL(ε)

). Thus, the time complexity of Algo-

rithm 1 is Θ(m+mL(ε) logL(ε)

)= Θ

(mL(ε) logL(ε)

).

This completes the proof and the result follows.

4.2.2 Request Distribution AnalysisAfter a servers subset is determined, the cloud providerhas to consider an appropriate request allocation s-trategy, such that the average response time over allusers (see Eq. (14)) is minimized and thus satisfies andappeals more cloud users. Before address the requestallocation strategy, we first show two properties whichare presented in Theorem 4.3 and Corollary 4.4.

Theorem 4.3. Consider a two server system such that µj <µk (j, k ∈ M), it is optimal to assign a certain amount of

Page 7: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

7

requests λ (λ < λΣ and λ < µj + µk) to both of the servers.Namely, the minimum Tk (xpc) + Tj ((1− x) pc) occurs at0 < x < 1, where

Tl (xpc) =

(1

λΣ

∑i∈N

λ2i

)((xpc)

2

µl+

(xpc)2

clµl − xpcλΣ

),

(22)l = j, k, and pc = λ/λΣ.

Proof: From (22), we can observe that Tk (xpc)and Tj ((1− x) pc) are convex and thus Tk (xpc) +Tj ((1− x) pc) is a convex function. We try to obtainthe minimum of Tk (xpc) + Tj ((1− x) pc) by analyzingits derivative for all 0 ≤ x ≤ 1. After some algebraiccalculation, we obtain

d

dx

(Tk (xpc)

)=

(1

λΣ

∑i∈N

λ2i

)2xp2cµk

+(1

λΣ

∑i∈N

λ2i

)2xp2cckµk − (x)

2p3cλΣ

(ckµk − xpcλΣ)2 ,

and

d

dx

(Tj ((1− x) pc)

)= −

(1

λΣ

∑i∈N

λ2i

)2 (1− x) p2c

µj−(

1

λΣ

∑i∈N

λ2i

)2 (1− x) p2ccjµj − (1− x)

2p3cλΣ

(cjµj − (1− x) pcλΣ)2 .

Obviously, ddx

(Tk (xpc) + Tj ((1− x) pc)

)< 0 at x = 0,

and ddx

(Tk (xpc) + Tj ((1− x) pc)

)> 0 at x = 1. Besides,

we can further obtain

d2

dx2

(Tk (xpc) + Tj ((1− x) pc)

)=

(1

λΣ

∑i∈N

λ2i

)(2p2cµk

+2p2cc

2kµ

2k

(ckµk − xpcλΣ)3

)+(

1

λΣ

∑i∈N

λ2i

)(2p2cµj

+2p2cc

2jµ

2j

(cjµj − (1− x) pcλΣ)3

)> 0.

Therefore, ddx

(Tk (xpc) + Tj ((1− x) pc)

)is strictly in-

creasing over 0 ≤ x ≤ 1 so long as xλ < µk and(1− x)λ < µj , that is, for all feasible assignments.

Thus, the minimum Tk (xpc)+ Tj ((1− x) pc) occurs at0 < x < 1 and the result follows.

Corollary 4.4. Given a server set S, it is optimal for a cloudprovider to assign jobs to all servers in S.

Proof: We denote TR (pR) as the average responsetime of all users when the server set isR (R ⊂ S) and therequest distribution strategy is pR, where pR = (pj)j∈R.Denote p∗R as an optimal assignment. Let

Tj (pj) =

(1

λΣ

∑i∈N

λ2i

)(p2jµj

+p2j

cjµj − xpjλΣ

),

for all j ∈ R. Then we have

TR (pR) =∑j∈R

Tj (pj).

Assuming that there exist a server k (k ∈ R) and aserver l (l ∈ R), where R denotes the supplementary setof R. Based on Theorem 4.3, we can find that there existsan x (0 < x < 1) such that

Tk (xp∗k) + Tl ((1− x) p∗k) < Tk (p

∗k) .

Namely,∑j∈R,j =k

Tj

(p∗j)+ Tk (xp

∗k) + Tl ((1− x) p∗k) <

∑j∈R

Tj

(p∗j).

Therefore, there exists a probability vector p′

R∪l forserver set R ∪ l with p

k = xp∗k, p′

l = (1− x) p∗k, andp

j = p∗j (j ∈ R and j = k), such that

TR∪l

(p

R∪l

)< TR (p∗R) .

This process can be terminated when the server set R isempty. Thus, it is optimal for a cloud provider to assignrequests to all servers for set S, and the result follows.

Next, we focus on the probability distribution for theminimization of system response time in time slot h(h ∈ H) (see Eq. (14)). We denote P as the constraintof probability, i.e.,

P =∑j∈S

phj = 1, (23)

and try to minimize Th by using the method of Lagrangemultiplier, namely,

∂Th

∂phj= ϕ

∂P

∂phj= ϕ, (24)

where ϕ is a Lagrange multiplier. That is,

∂Th

∂phj=

(∑i∈N

(λhi

)2λhΣ

)(2phjµj

+2phj cjµj −

(phj)2λhΣ(

cjµj − phj λhΣ

)2)

= ϕ,

(25)

for all j ∈ S , and∑

j∈S phj = 1.Since the second order of Th

(phj)

is

∂2Th

∂(phj)2 =

(∑i∈N

(λhi

)2λhΣ

)(2

µj+

2c2jµ2j(

cjµj − phj λhΣ

)3)

> 0,

(26)

we can conclude that ∂Th

∂phj

is an increasing positive

function on phj . Based on above derivations, we proposean algorithm to calculate pS , which is motivated by [9].

Given ϵ,µ, λhΣ, and S, our optimal request allocation

algorithm to find pS is given in Algorithm 2. The algo-rithm uses another subalgorithm Calculate phj , which,given µj , λ

hΣ, and ϕ, finds phj satisfies (25). The key ob-

servation is that the left-hand side of (25) is an increasing

Page 8: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

8

function on phj (see (26)). Therefore, given ϕ, we can findphj by using the binary search method in certain interval[lb, ub] (Steps 2-9 in Algorithm 3). We set lb simply as0. For ub, we may note that the allocated load neverexceed its processing capacity. Therefore, we set ub asmin

1, cjµj

/λhΣ

. The value of ϕ can also be found by

using the binary search method (Steps 2-8 in Algorithm2). The search interval [lb, ub] for ϕ is determined asfollows. We set lb simply as 0. As for ub, we set anincrement variable inc, which is initialized as a relativesmall positive constant and repeatedly doubled (Step(7)). The value of inc is added to ϕ to increase ϕ untilthe sum of phj (j ∈ S) found by Calculate phj is at least 1(Steps 2-8). Once [lb, ub] is decided, ϕ can be searched byusing binary search (Steps 10-20). After ϕ is determined(Step 21), phj can be computed (Steps 22-24).

Algorithm 2 Calculate phS(ϵ,µ, λhΣ,S)

Input: ϵ,µ, λhΣ,S

Output: phS .1: Initialization: Let inc be a relative small positive

constant. Set phS ← 0, and ϕ← 0.2: while (

∑j∈S

phj < 1) do

3: Set mid← ϕ+ inc, and ϕ← mid.4: for (each server j ∈ S) do5: phj ← Calculate phj (ϵ, µj , λ

hΣ, ϕ).

6: end for7: Set inc← 2× inc.8: end while9: Set lb← 0 and ub← ϕ.

10: while (ub− lb > ϵ) do11: Set mid← (ub+ lb)/2, and ϕ← mid.12: for (each server j ∈ S) do13: phj ← Calculate phj (ϵ, µj , λ

hΣ, ϕ).

14: if (∑j∈S

phj < 1) then

15: Set lb← mid.16: else17: Set ub← mid.18: end if19: end for20: end while21: Set ϕ← (ub+ lb)/2.22: for (each server j ∈ S) do23: phj ← Calculate phj (ϵ, µj , λ

hΣ, ϕ).

24: end for25: return phS .

By Algorithm 3, we note that the while loop (Steps 2-9) is a binary search process, which is very efficient andrequires time Θ

(log(

1ϵ min

1,

µj

λhΣ

))= Θ

(log(1ϵ

)),

where ϵ is the error tolerance (e.g., 0.1, 0.01, in our work,ϵ is set as 0.01). As for Algorithm 2, its main idea is thetwice uses of binary search method. Specifically, the firstwhile loop (Steps 2-8) is the first use of binary searchmethod, which is designed to determine an upper bound(ub) of ϕ. The second use of binary search method is thesecond while loop (Steps 10-20), which is designed tosearch the exact ϕ such that

∑j∈S phj = 1. Therefore, the

number of loops of the first while loop is Θ(log ub) andthat of the second while loop is Θ

(log(ubϵ

)). To analyze

the time complexity of Algorithm 2, we have to find an

Algorithm 3 Calculate phj (ϵ, µj , λhΣ, ϕ)

Input: ϵ, µj , λhΣ, ϕ.

Output: phj .

1: Initialization: Set ub← min1,

µj

λhΣ

, and lb← 0.

2: while (ub− lb > ϵ) do3: Set mid← (ub+ lb)/2, and phj ← mid.4: if ( ∂

∂phj

Th(phj ) < ϕ) then5: Set lb← mid.6: else7: Set ub← mid.8: end if9: end while

10: Set phj ← (ub+ lb)/2.11: return pj .

upper bound of ϕ, i.e., ub. From (25) of our paper, weknow that

ϕ =∂Th

∂phj=

(∑i∈N

(λhi

)2λhΣ

)(2phjµj

+2phj cjµj −

(phj)2λhΣ(

cjµj − phj λhΣ

)2)

(∑i∈N

λhi

)(2phjµj

+2phj cjµj −

(phj)2λhΣ(

cjµj − phj λhΣ

)2)

=2phj λ

µj+

2cjµj

(phj λ

)−(phj λ

)2(cjµj − phj λ

)2< 2cj +

2cjµj

(phj λ

)(cjµj − phj λ

)2≤ 2cj +

2 (1− σ) (cjµj)2

σ2(cjµj)2

≤ 2cmax +2 (1− σ)

σ2, (27)

where cmax denotes the maximal number of cores of aserver, i.e., cmax = maxj∈M (cj), and σ is a relative smallpositive constant (to maintain the convexity of the indi-vidual strategy set of a user, phj λ

hΣ ≤ (1− σ) cjµj (∀j ∈

M) is added to the optimization problem of the cloudprovider as a constraint, i.e., we try to maximize the prof-its under the constraint phj λ

hΣ ≤ (1− σ) cjµj (∀j ∈ M).

In our work, σ is also set as 0.01). Therefore, an upperbound of ϕ, i.e., ub, in Algorithm 2 is

(2cmax +

2(1−σ)σ2

).

We can conclude that the number of loops of the firstwhile loop (Steps 2-8) is Θ

(log(cmax +

(1−σ)σ2

)), and the

number of loops of the second while loop (Steps 10-20)is Θ

(log(

cmax

ϵ + (1−σ)ϵσ2

)). Since at each iteration (loop)

of these two while loops, the main operation is the |S|times call for Algorithm 3, and the possible maximalvalue of |S| is m, these two while loops require timeΘ(mlog

(1ϵ

)log(cmax +

(1−σ)σ2

))to complete. In addi-

tion, the time complexity of the for loop (Steps 22-24)requires time Θ

(m log

(1ϵ

)). Therefore, the time complex-

ity of Algorithm 2 is Θ(m log

(1ϵ

)log(

cmax

ϵ + (1−σ)ϵσ2

)).

Page 9: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

9

4.3 Followers’ Decisions AnalysisWe formulate the competitions among multiple usersas a generalized Nash equilibrium problem (GNEP). Byemploying variational inequality (VI) theory, we analyzethe existence of a generalized Nash equilibrium solutionset. And then we propose an algorithm to compute ageneralized Nash equilibrium (GNE).

4.3.1 GNEP FormulationWe formulate the profit optimization problem of all thecloud users as a generalized Nash equilibrium problem(GNEP), in which each user selfishly optimizes his/herown profit within his strategy set that also depends onthe strategies of the other users [38].

As mentioned earlier, all users are considered to beselfish and each user i (i ∈ N ) tries to maximize his/herutility or minimize his/her disutility, while ignoringthose of others and satisfying the global constraint. Inview of (20), we can observe that user i′s (i ∈ N )optimization problem is equivalent to

minimize fi (λi,λ−i) =∑h∈H

(δhTh

i − wi (r − c)λhi

),

s.t. (λi,λ−i) ∈ QF . (28)

The above formulation GNEP can be formally defined bythe tuple G =

⟨QF ,f

⟩, where f = (f1, . . . , fn). The aim

of user i (i ∈ N ), given the other users′ strategies λ−i,is to choose an λi ∈ Qi (λ−i) such that his/her disutilityfunction fi (λi,λ−i) is minimized.

Definition 4.1. A generalized Nash equilibrium (GNE) ofthe game G =

⟨QF ,f

⟩is a strategy profile λ∗ such that for

each user i (i ∈ N ):

λ∗i ∈ argmin

λi∈Qi(λ∗−i)

fi(λi,λ

∗−i

),λ∗ ∈ QF . (29)

At the generalized Nash equilibrium, each user cannotfurther decrease its disutility by choosing a differentstrategy while the strategies of other users are fixed.The equilibrium strategy profile can be found when eachuser′s strategy is the best response to the strategies ofother users.

4.3.2 GNE Existence AnalysisWe try to analyze the existence of generalized Nashequilibrium for the formulated GNEP by employingvariational inequality (VI) theory. When passing from theGNEP (see Eq. (28)) to the associated VI, the solutionsof the GNEP that are also solutions of VI are termedas variational solutions [39], and enjoy some remarkableproperties that make them particularly appealing inmany applications. Before address the problem, we showtwo properties which are presented in Theorem 4.5 andTheorem 4.6.

Theorem 4.5. For each cloud user i (i ∈ N ), the set Qi isclosed and convex, and each disutility function fi (λi,λ−i)

is continuously differentiable in λi. For each fixed tuple λ−i,the disutility function fi (λi,λ−i) is convex in λi over theset Ωi.

Proof: A complete proof of the theorem is given inthe supplementary material.

Theorem 4.6. Every solution of the variational inequality(VI) problem, denoted by VI

(QF ,F

), is a solution of the

GNEP G =⟨QF ,f

⟩, where

F (λ) = (Fi (λi,λ−i))ni=1 , (30)

withFi (λi,λ−i) = ∇λifi (λi,λ−i) . (31)

Proof: A complete proof of the theorem is given inthe supplementary material.

Theorem 4.7. If λhΣ ≤ minj∈S

(n+ 1) cjµj

/(2nphj

)(h ∈

H), there exists a generalized Nash equilibrium solution setfor the formulated GNEP G =

⟨QF ,f

⟩.

Proof: A complete proof of the theorem is given inthe supplementary material.

4.3.3 GNE Computation

With the establishment of the generalized Nash equilib-rium (GNE) of the GNEP G, we now aim at obtaining asuitable algorithm to compute the GNE.

Note that we can further rewrite the optimizationproblem (28) as follows:

minimize fi (λi,λΣ) =∑h∈H

(δhTh

i − wi (r − c)λhi

),

s.t. λi ∈ Qi. (32)

with

Thi

(λhi , λ

)=∑j∈S

((phj)2

λhi

µj+

(phj)2

λhi

cjµj − phj λhΣ

), (33)

where λΣ denotes the aggregated request profile of allusers over the H future time slots, i.e., λΣ =

∑ni=1 λi.

From the above equation, we can see that the calculationof the disutility function of each individual user onlyrequires the knowledge of the aggregated request profileof all users (λΣ) rather than the specific individual re-quest profile of all other users (λ−i), which can bring twoadvantages. On the one hand, it can reduce communica-tion traffic between users and the cloud provider. On theother hand, it can also keep privacy for each individualuser to certain extent, which is seriously considered bymany cloud users.

We can compute the variational solutions of the GNEP(20) by solving the following Nash equilbirium (NEP).This can be done by using the framework in [39], which

Page 10: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

10

Algorithm 4 Calculate λ(ϵ,S,pS , τ )

Input: ϵ,S,pS , τ .Output: λ.

1: Initialization: Randomly choose a feasible strategyvector z(0) =

(λ(0),η(0)

)(z(0) ∈ QF,η). Set λ ← 0,

η ← 0, and k ← 0.2: while (

∥∥z(k) − z(k−1)∥∥ > ϵ) do

3: for (each cloud user i ∈ N ) do4: Receive λ(k)

Σ from the cloud provider and com-pute λ(k+1)

i as follows:

λ(k+1)i ∈

argminλi∈Qi

fi

(λi,λ

(k)Σ

)+ ηT (k)

ψ(λi,λ

(k)Σ

)+ τ

2

∥∥λi − λi

∥∥2.

5: Send the updated strategy to the cloud provider.6: end for7: The cloud provider computes η(k+1) as

η(k+1) ∈ argminη≥0

−ηTψ (λ) +

τ

2∥η − η∥2

.

8: if (Nash equilibrium is reached) then9: The n + 1 cloud users updates their centroids:(

λ, η)←(λ(k+1),η(k+1)

)10: end if11: Set k ← k + 1.12: end while13: return λ(k).

leads to an algorithm Calculate λ. Specifically, the n+1users try to solve the following optimization problem:

minimize fi (λi,λΣ) + ηTψ (λi,λΣ) ,

s.t. λi ∈ Qi, ∀i ∈ N ,

minimize − ηTψ (λ) ,

s.t. η ≥ 0. (34)

where η = (ηh)Hh=1, and

ψ (λ) =

(n∑

i=1

λhi − Γh

)H

h=1

, (35)

with

Γh = minj∈S

(n+ 1) cjµj

/(2nphj

), h ∈ H. (36)

That is to say, when given the aggregated requests, wemust find a strategy vector z∗ = (λ∗,η∗) ∈ QF,η , whereQF,η = QF × R(H)

+ , such that

λ∗i ∈ argmin

λi∈Qi

fi (λi,λ

∗Σ) + η

Tψ (λi,λ∗Σ) +

τ

2

∥∥λi − λi

∥∥2 ,

(37)for each user i (i ∈ N ), and

η∗ ∈ argminη≥0

−ηTψ (λ∗) +

τ

2∥η − η∥2

. (38)

where τ (τ > 0) is a regularization parameter and canguarantee the convergence of the algorithm Calculate λif its value is large enough [39]. The idea is formalizedin Algorithm 4.

4.4 An Iterative Algorithm

In this section, we describe the whole process of ourproposed service mechanism, which is formalized inAlgorithm 5.

We describe operational process of the proposed it-erative algorithm. At the beginning, the cloud providerapproximates its sever selection space (QL) and obtainsthe approximated one (Q(ε)

L ). For each servers subset(S) in (Q(ε)

L ), it initializes the allocation strategy (pS ) indifferent time slot h (h ∈ H). Under this servers subsetand allocation strategy, all of the users calculate the prop-er request strategies. The cloud provider reconfiguresthe allocation strategy such that the average responsetime over all users is minimized. Each of the user inthe current set (Sc) calculates its utility, if the value isless than its reserved value (vi), then he/she refuses touse the cloud service. This process is terminated whenall of the users who choose the cloud service and theircorresponding request strategies are kept unchanged.The algorithm terminates until it selects the optimalservers subset from the approximated subset solutionspace (Q(ε)

L ).

Algorithm 5 Iterative Algorithm (IA)

Input: ε,µ, a, b, r, τ,MOutput: S,pS .

1: Initialization: The cloud provider approx-imates its solution space, i.e., Q(ε)

L ←Calculate Q(ε)

L (ε, c,µ,E,M). Set πS ← 0.2: for (each server subset S ∈ Q(ε)

L ) do3: Set Sc ← N , and Sl ← ∅.4: for (each time slot h ∈ H) do5: for (each server j ∈ S) do6: Set phj = µj/

(∑j∈S µj

).

7: end for8: end for9: while (Sc = Sl) do

10: Set Sl ← Sc, and λ← Calculate λ (ε,S,pS , τ).11: for (each time slot h ∈ H) do12: Set phS ← Calculate pS

h(ε,µ, λh

Σ,S).

13: end for14: for (each user i ∈ Sc) do15: if (Ui

(λ(k)i ,λ

(k)Σ

)< vi) then

16: Set λi ← 0, and Sc ← Sc − i.17: end if18: end for19: end while20: Set πS ← c

∑i∈N

∑h∈H λh

i − ET

(S)

.21: if (πS > πS ) then22: Set πS ← πS , S ← S, and pS ← pS .23: end if24: end for25: return S, pS .

5 PERFORMANCE EVALUATION

In this section, we provide some numerical results tovalidate our theoretical analyses and illustrate the per-formance of our proposed IA algorithm.

Page 11: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

11

TABLE 2: System parameters

System parameters (Fixed)–[Varied range] (increment)

Servers set control parameter (ε) (0.2)–[0.2, 1.0] (0.2)Number of cloud users (n) (50)–[5, 50] (5)Energy parameters (ξj , aj) [0.01, 2.5], 3Weight value (wi) [1, 10]User total requests (Λi) 35Reservation value (vi) 0Other parameters (b,m, µM, r, c, δ) (0.02, 50, 800, 100, 60, 1.1)

In the following simulation results, we assume that thenumber of cloud users is at most 50 over future H timeslots, which is not a very long period of time. Specifically,each time slot is set as one hour of a day and H is setas 24. As shown in Table 2, the server set controllingparameter (ε) is varied from 0.2 to 1.0 with increment0.2. The number of cloud users (n) is varied from 5 to50 with increment 5. For each server j (j ∈ M), theenergy consumption parameter ξj is randomly chosenfrom 0.01 to 2.5 and aj is set as a constant 3. Each clouduser i (i ∈ N ) chooses a weight value from 1 to 10 tobalance his/her net profit and time utility. For simplicity,the reservation value vi and total requests Λi for eachuser i (i ∈ N ) are set as 0 and 35, respectively. Marketbenefit factor r is set to 100, per request charge by thecloud provider c is equal to 60, and δ is set as 1.1. Thecost of one unit of energy is set as 0.02. In our simulation,the number of servers (m) in the cloud provider is set as50 and its total processing capacity (µM) is equal to 800.

5.1 Results of One Instance

0 50 100 1500

2000

4000

6000

8000

10000

Iterations

User

utili

ty

User1, w1=5.4082

User4, w4=6.2122

User5, w5=4.2493

User8, w8=9.0897

User10, w10

=5.2183

Fig. 2: Convergence process

Fig. 2 presents the utility results for five differentcloud users versus the number of iterations of our pro-posed Calculate λ algorithm (Algorithm 4) in a certaininstance. Specifically, it presents the utility results of 5randomly selected cloud users (users 1, 4, 5, 8, and 10).We can observe that the utilities of all users seem tolinearly increase and finally reach a relatively stable statewith the increase of iteration number. The reason behindlies in that the request strategies of all users are keptunchanged, i.e., reach a generalized Nash equilibrium

solution after some iterations. In addition, the utilitywith a larger weight value reaches a relatively stablestate more faster. This trend also reflects the convergenceprocess of our proposed IA algorithm at each iteration.It can be seen that the utility of each user has alreadyachieved a relatively stable state after about 80 iterations,which reflects the high efficiency of the developed algo-rithm.

In Fig. 3, we plot the request profile of some cloudusers for a scenario of 50 users. Specifically, it presentsthe requests shape of some users over future 24 timeslots. We randomly select 3 users (users 25, 38, and 42).It can be seen that the requests of all users tend todecrease with the delay of time slot. The reason behindlies in the fact that in our proposed model, we take intoaverage response time into account and the deterioratingfactor grows exponentially, which also demonstrates thedownward trend of the aggregated requests shown inFig. 4, i.e., the aggregated requests slightly decrease withthe delay of time slot.

0 5 10 15 20 251

1.05

1.1

1.15

1.2

1.25

1.3

1.35

1.4

1.45

1.5

Time slots

Use

r req

uest

s

User38User42User25

Fig. 3: Specific user requests

0 5 10 15 20 2562

63

64

65

66

67

68

69

Time slots

User

requ

ests

Aggregation

Fig. 4: Aggregated load

In Fig. 5, we present the impacts of different serverssubset. Table 3 shows an instance of servers subset whenε is 0.2. In that table, we show the first 8 server subsetobtained by our Calculate Q(ε)

L algorithm (Algorithm1). Fig. 5 shows the corresponding results. Specifically,it shows the total charge CT from all users, whereCT = c

∑i∈N

∑h∈H λh

i , total energy cost ET , whereET = H

∑j∈S Ej , and net profit π = CT−ET over future

H time slots. As can be seen from Fig. 5, at first, the netprofit of the cloud provider increases with the increase of

Page 12: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

12

TABLE 3: System parameters

No. of subset Servers to provide service

1 502 49, 503 48, 49, 504 47, 48, 49, 505 44, 45, 46, 47, 48, 49, 506 41, 42, 43, 44, 45, 46, 47, 48, 49, 507 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,

44, 45, 46, 47, 48, 49, 508 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,

40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50

total processing capacity of provided servers. However,it decreases after the number of subset exceeds 4. Thereason behind lies in the fact that at the beginning, theaggregated requests from all users can not exceed thetotal processing capacity provided by the cloud provider(i.e., λh

Σ < µS ,∀h ∈ H), while the provided processingcapacity is large enough, the aggregated requests cannot rise more due to their individual limits (i.e., λh

i <Λi, ∀i ∈ N ). This is also the reason that the total charge(CT ) increases at first and reaches a relatively stable statewhen the processing capacity is large enough, as well asthe trend of energy cost and thus reflects the results ofnet profit (see Fig. 5).

1 2 3 4 5 6 7 80

0.5

1

1.5

2

2.5

3

3.5

4

x 104

Number of servers set

Prof

it of

clo

ud p

rovid

er

CT

ET

π

Fig. 5: Impact of servers

5.2 Results of Various Configuration Instances

To simulate the heterogeneous system and the differentpreferences of multiple cloud users, i.e., the differentpreferences over payments and time efficiencies, werandomly generate the server parameter (ξj) for eachserver and the weight value (wi) for each user accordingto Table 2. For the simulated results, we perform 300runs, of which the average value is computed.

Fig. 6 and Fig. 7 show the impacts of the number ofcloud users and the value of ε. In Fig. 6, we comparethe net profit (π) obtained by our IA algorithm withthat of using all 50 servers (πT ). The number of cloudusers increases from 5 to 50 with increment 5. As men-tioned above, we perform 300 runs and compute theaverage value. As shown in Fig. 6, we also present themaximal and minimal profit values over the 300 runs.

0 10 20 30 40 50 60−2

0

2

4

6

8

10

12

14x 10

4

Number of users

Profi

t of c

loud p

rovid

er

π π

T

Fig. 6: Impact of users

Obviously, the average net profit value obtained by ourIA algorithm increases with the increase of the numberof cloud users. We can also observe that the net profitby using all servers is negative at the beginning. Thereason behind lies in that the aggregated requests fromall users are not enough while the total energy cost of allservers is large. However, our results are always betterthan those of by using all servers. This shows that ourIA algorithm can select appropriate servers to provideservices. Fig. 7 shows the impact of ε. It can be seen thatthe average net profit value obtained by IA algorithm isthe largest when ε is set to 0.2. The reason behind lies inthe fact that the smaller the value of ε is, it takes moreprobability for our algorithm to select an appropriateservers subset equalling to the optimal one, that is, ittakes more probability that the optimal servers subset isincluded in our approximated solution space.

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.17.8

8

8.2

8.4

8.6

8.8

9

9.2

9.4

9.6x 10

4

Value of ε

Profi

t of c

loud p

rovid

er

π π

T

Fig. 7: Impact of ε

6 CONCLUSIONS AND FUTURE WORK

With the popularization of cloud computing and itsmany advantages such as cost-effectiveness, elasticity,and scalability, more and more applications are movedfrom local computing environment to cloud center. Inthis work, we try to design a new service mechanismfor profit optimizations of both a cloud provider and itsmultiple users.

We consider the problem from a game theoretic per-spective and characterize the relationship between thecloud provider and its multiple users as a Stackelberg

Page 13: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

13

game, in which the strategies of all users are subjectto that of the cloud provider. The cloud provider triesto select appropriate servers and configure a properrequest allocation strategy to reduce energy cost whilesatisfying its cloud users at the same time. We approx-imate its server selection space by adding a controllingparameter and configure an optimal request allocationstrategy. For each user, we design a utility functionwhich combines the net profit with time efficiency andtry to maximize its value under the strategy of the cloudprovider. We formulate the competitions among all usersas a generalized Nash equilibrium problem (GNEP). Wesolve the problem by employing varational inequality(VI) theory and prove that there exists a generalizedNash equilibrium solution set for the formulated GNEP.Finally, we propose an iterative algorithm (IA), whichcharacterizes the whole process of our proposed servicemechanism. We conduct some numerical calculations toverify our theoretical analyses. The experimental resultsshow that our IA algorithm can reduce energy cost andimprove users utilities to certain extent by configuringproper strategies.

As part of future work, we will study the cloudcenter choice among multiple different cloud providersor determine a proper mixed choice strategy. Another di-rection is the opposite, we consider problem from cloudproviders and study the competitions among multiplecloud providers, which may incorporate charge price,service quality, and so on.

ACKNOWLEDGMENTS

We are very grateful to the associate editor and anony-mous reviewers for their comments and suggestionswhich have significantly improved the quality of themanuscript. The research was partially funded by theKey Program of National Natural Science Foundationof China (Grant No. 61432005), the National Outstand-ing Youth Science Program of National Natural Sci-ence Foundation of China (Grant No. 61625202), theInternational (Regional) Cooperation and Exchange Pro-gram of National Natural Science Foundation of China(Grant No. 61661146006), the National Natural ScienceFoundation of China (Grant Nos. 61370095, 61472124,61602170), the International Science & Technology Coop-eration Program of China (Grant Nos. 2015DFA11240),the National Key R&D Program of China (Grant No.2016YFB0201402), and the Chinese Postdoctoral ScienceFoundation (Grant Nos. 2016M602409, 2016M602410).

REFERENCES[1] A. Prasad and S. Rao, “A mechanism design approach to resource

procurement in cloud computing,” Computers, IEEE Transactionson, vol. 63, no. 1, pp. 17–30, Jan 2014.

[2] R. Pal and P. Hui, “Economic models for cloud service markets:Pricing and capacity planning,” Theoretical Computer Science, vol.496, no. 0, pp. 113 – 124, 2013.

[3] P. D. Kaur and I. Chana, “A resource elasticity framework forqos-aware execution of cloud applications,” Future GenerationComputer Systems, vol. 37, no. 0, pp. 14 – 25, 2014.

[4] L. Duan, D. Zhan, and J. Hohnerlein, “Optimizing cloud datacenter energy efficiency via dynamic prediction of cpu idle inter-vals,” in 2015 IEEE 8th International Conference on Cloud Computing.IEEE, 2015, pp. 985–988.

[5] Z. Li, J. Ge, H. Hu, W. Song, H. Hu, and B. Luo, “Cost and energyaware scheduling algorithm for scientific workflows with dead-line constraint in clouds,” IEEE Transactions on Services Computing,2015, doi: 10.1109/TSC.2015.2466545.

[6] A. Greenberg, J. Hamilton, D. A. Maltz, and P. Patel, “The costof a cloud: research problems in data center networks,” ACMSIGCOMM computer communication review, vol. 39, no. 1, pp. 68–73, 2008.

[7] J. Cao, K. Hwang, K. Li, and A. Zomaya, “Optimal multiserverconfiguration for profit maximization in cloud computing,” Par-allel and Distributed Systems, IEEE Transactions on, vol. 24, no. 6,pp. 1087–1096, June 2013.

[8] Y. Feng, B. Li, and B. Li, “Price competition in an oligopoly marketwith multiple iaas cloud providers,” Computers, IEEE Transactionson, vol. 63, no. 1, pp. 59–73, Jan 2014.

[9] J. Cao, K. Li, and I. Stojmenovic, “Optimal power allocationand load distribution for multiple heterogeneous multicore serv-er processors across clouds and data centers,” Computers, IEEETransactions on, vol. 63, no. 1, pp. 45–58, Jan 2014.

[10] S. Jrgensen and G. Zaccour, “A survey of game-theoretic modelsof cooperative advertising,” European Journal of Operational Re-search, vol. 237, no. 1, pp. 1 – 14, 2014.

[11] S. Liu, S. Ren, G. Quan, M. Zhao, and S. Ren, “Profit aware loadbalancing for distributed cloud data centers,” in Parallel Distribut-ed Processing (IPDPS), 2013 IEEE 27th International Symposium on,May 2013, pp. 611–622.

[12] U. Lampe, M. Siebenhaar, A. Papageorgiou, D. Schuller, andR. Steinmetz, “Maximizing cloud provider profit from equilibri-um price auctions,” in Cloud Computing (CLOUD), 2012 IEEE 5thInternational Conference on, June 2012, pp. 83–90.

[13] H. Goudarzi and M. Pedram, “Maximizing profit in cloud com-puting system via resource allocation,” in Proceedings of the2011 31st International Conference on Distributed Computing SystemsWorkshops, ser. ICDCSW ’11. IEEE Computer Society, 2011, pp.1–6.

[14] E. Korpeoglu, A. Sen, and K. Guler, “Non-cooperative joint re-plenishment under asymmetric information,” European Journal ofOperational Research, vol. 227, no. 3, pp. 434–443, 2013.

[15] C. Liu, K. Li, C. Xu, and K. Li, “Strategy configurations of multipleusers competition for cloud service reservation,” IEEE Transactionson Parallel and Distributed Systems, vol. 27, no. 2, pp. 508–520, 2016.

[16] M. J. Osborne and A. Rubinstein, “A course in game theory,” MITpress, 1994.

[17] S. S. Aote and M. U. Kharat, “A game-theoretic model for dy-namic load balancing in distributed systems,” in Proceedings of theInternational Conference on Advances in Computing, Communicationand Control, ser. ICAC3 ’09. ACM, 2009, pp. 235–238.

[18] N. Li and J. Marden, “Designing games for distributed optimiza-tion,” Selected Topics in Signal Processing, IEEE Journal of, vol. 7,no. 2, pp. 230–242, April 2013.

[19] S. Penmatsa and A. T. Chronopoulos, “Game-theoretic staticload balancing for distributed systems,” Journal of Parallel andDistributed Computing, vol. 71, no. 4, pp. 537 – 555, 2011.

[20] G. Scutari and J.-S. Pang, “Joint sensing and power allocation innonconvex cognitive radio games: Nash equilibria and distributedalgorithms,” Information Theory, IEEE Transactions on, vol. 59, no. 7,pp. 4626–4661, July 2013.

[21] Z. Wang, A. Szolnoki, and M. Perc, “Rewarding evolutionaryfitness with links between populations promotes cooperation,”Journal of Theoretical Biology, vol. 349, no. 0, pp. 50 – 56, 2014.

[22] G. Scutari, D. Palomar, F. Facchinei, and J.-S. Pang, “Convexoptimization, game theory, and variational inequality theory,”Signal Processing Magazine, IEEE, vol. 27, no. 3, pp. 35–49, May2010.

[23] K. Li, C. Liu, and K. Li, “An approximation algorithm basedon game theory for scheduling simple linear deteriorating jobs,”Theoretical Computer Science, vol. 543, no. 0, pp. 46 – 51, 2014.

[24] C. A. Ioannou and J. Romero, “A generalized approach to belieflearning in repeated games,” Games and Economic Behavior, vol. 87,no. 0, pp. 178 – 203, 2014.

[25] K. Li, C. Liu, K. Li, and A. Y. Zomaya, “A framework of pricebidding configurations for resource usage in cloud computing,”

Page 14: A New Service Mechanism for Profit Optimizations of a Cloud ... · Citation information: DOI 10.1109/TCC.2017.2701793, IEEE Transactions on Cloud Computing 2 computing resources

2168-7161 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TCC.2017.2701793, IEEETransactions on Cloud Computing

14

IEEE Transactions on Parallel and Distributed Systems, vol. 27, no. 8,pp. 2168–2181, 2016.

[26] P. Wang, Y. Qi, and X. Liu, “Power-aware optimization for het-erogeneous multi-tier clusters,” Journal of Parallel and DistributedComputing, vol. 74, no. 1, pp. 2005 – 2015, 2014.

[27] Y. Gao, H. Guan, Z. Qi, T. Song, F. Huan, and L. Liu, “Servicelevel agreement based energy-efficient resource management incloud data centers,” Computers & Electrical Engineering, vol. 40,no. 5, pp. 1621 – 1633, 2014.

[28] J. Mei, K. Li, J. Hu, S. Yin, and E. H.-M. Sha, “Energy-awarepreemptive scheduling algorithm for sporadic tasks on DVSplatform,” Microprocessors and Microsystems, vol. 37, no. 1, pp. 99– 112, 2013.

[29] D. Zhu, R. Melhem, and B. Childers, “Scheduling with dynamicvoltage/speed adjustment using slack reclamation in multipro-cessor real-time systems,” Parallel and Distributed Systems, IEEETransactions on, vol. 14, no. 7, pp. 686–700, July 2003.

[30] A. Beloglazov, J. Abawajy, and R. Buyya, “Energy-aware resourceallocation heuristics for efficient management of data centers forcloud computing,” Future Generation Computer Systems, vol. 28,no. 5, pp. 755 – 768, 2012, special Section: Energy efficiency inlarge-scale distributed systems.

[31] R. N. Calheiros, A. N. Toosi, C. Vecchiola, and R. Buyya, “A co-ordinator for scaling elastic applications across multiple clouds,”Future Generation Computer Systems, vol. 28, no. 8, pp. 1350 – 1362,2012, including Special sections SS: Trusting Software Behaviorand SS: Economics of Computing Services.

[32] M. Mezmaz, N. Melab, Y. Kessaci, Y. Lee, E.-G. Talbi, A. Zomaya,and D. Tuyttens, “A parallel bi-objective hybrid metaheuristic forenergy-aware scheduling for cloud computing systems,” Journalof Parallel and Distributed Computing, vol. 71, no. 11, pp. 1497 –1508, 2011.

[33] B. Zhai, D. Blaauw, D. Sylvester, and K. Flautner, “Theoretical andpractical limits of dynamic voltage scaling,” Design AutomationConference, vol. 0, pp. 868–873, 2004.

[34] I. Atzeni, L. Ordonez, G. Scutari, D. Palomar, and J. Fonollosa,“Noncooperative day-ahead bidding strategies for demand-sideexpected cost minimization with real-time adjustments: A gnepapproach,” Signal Processing, IEEE Transactions on, vol. 62, no. 9,pp. 2397–2412, 2014.

[35] H. Chen, Y. Li, R. Louie, and B. Vucetic, “Autonomous demandside management based on energy consumption scheduling andinstantaneous load billing: An aggregative game approach,” SmartGrid, IEEE Transactions on, vol. 5, no. 4, pp. 1744–1754, 2014.

[36] H. Soliman and A. Leon-Garcia, “Game-theoretic demand-sidemanagement with storage devices for the future smart grid,”Smart Grid, IEEE Transactions on, vol. 5, no. 3, pp. 1475–1485, 2014.

[37] G. Du, R. J. Jiao, and M. Chen, “Joint optimization of productfamily configuration and scaling design by stackelberg game,”European Journal of Operational Research, vol. 232, no. 2, pp. 330 –341, 2014.

[38] J. Wang, M. Peng, S. Jin, and C. Zhao, “A generalized nashequilibrium approach for robust cognitive radio networks via gen-eralized variational inequalities,” Wireless Communications, IEEETransactions on, vol. 13, no. 7, pp. 3701–3714, 2014.

[39] G. Scutari, D. Palomar, F. Facchinei, and J.-S. Pang, “Monotonegames for cognitive radio systems,” in Distributed Decision Mak-ing and Control, ser. Lecture Notes in Control and InformationSciences. Springer London, 2012, vol. 417, pp. 83–112.

Chubo Liu received the BS and PhD degreesin computer science and technology from Hu-nan University, China, in 2011 and 2016, re-spectively. His research interests include mainlyin modeling and scheduling of distributed com-puting systems, approximation and randomizedalgorithms, game theory, grid, and cloud com-puting. He has published several papers in jour-nals such as the IEEE Transactions on Paralleland Distributed Systems, the Future GenerationComputer Systems, and the Theoretical Com-

puter Science.

Kenli Li received the PhD degree in comput-er science from Huazhong University of Sci-ence and Technology, China, in 2003. He wasa visiting scholar with the University of Illinoisat Urbana-Champaign from 2004 to 2005. Heis currently the dean and a full professor ofcomputer science and technology with HunanUniversity and deputy director of National Su-percomputing Center in Changsha. His majorresearch areas include parallel computing, high-performance computing, grid, and cloud comput-

ing. He has published more than 150 research papers in internationalconferences and journals such as the IEEE Transactions on Computers,the IEEE Transactions on Parallel and Distributed Systems, the IEEETransactions on Signal Processing, the Journal of Parallel and Distribut-ed Computing, ICPP, and CCGrid. He serves on the editorial board ofthe IEEE Transactions on Computers. He is an outstanding member ofthe CCF. He is a senior member of the IEEE.

Keqin Li is a SUNY Distinguished Professorof computer science. His current research in-terests include parallel computing and high-performance computing, distributed computing,energy-efficient computing and communication,heterogeneous computing systems, cloud com-puting, big data computing, CPU-GPU hybridand cooperative computing, multicore comput-ing, storage and file systems, wireless com-munication networks, sensor networks, peer-to-peer file sharing systems, mobile computing,

service computing, Internet of things and cyber-physical systems. Hehas published over 480 journal articles, book chapters, and refereedconference papers, and has received several best paper awards. Heis currently or has served on the editorial boards of IEEE Transactionson Parallel and Distributed Systems, IEEE Transactions on Computers,IEEE Transactions on Cloud Computing, IEEE Transactions on ServicesComputing, IEEE Transactions on Sustainable Computing. He is anIEEE Fellow.

Rajkumar Buyya is a Professor of ComputerScience and Software Engineering; Future Fel-low of the Australian Research Council; andDirector of the Cloud Computing and DistributedSystems (CLOUDS) Laboratory at the Universityof Melbourne, Australia. He is also serving asthe founding CEO of Manjrasoft Pty Ltd., a spin-off company of the University, commercialisingits innovations in Grid and Cloud Computing.He received B.E and M.E in Computer Scienceand Engineering from Mysore and Bangalore

Universities in 1992 and 1995 respectively; and a Doctor of Philosophy(PhD) in Computer Science and Software Engineering from MonashUniversity, Melbourne, Australia in 2002. He was the founding Editor-in-Chief (EiC) of IEEE Transactions on Cloud Computing (TCC). He hasauthored over 500 publications and five text books including ”MasteringCloud Computing” published by McGraw Hill, Morgan Kaufmann, andChina Machine Press for Indian, International, and Chinese marketsrespectively.