+ All Categories
Home > Documents > [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for...

[Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for...

Date post: 09-Dec-2016
Category:
Upload: shi
View: 213 times
Download: 0 times
Share this document with a friend
12
Truthful Auction for CPU Time Slots Qiang Zhang and Minming Li Department of Computer Science, City University of Hong Kong, Tat Chee Avenue, Kowloon, Hong Kong [email protected], [email protected] Abstract. We consider the task of designing a truthful auction mecha- nism for CPU time scheduling problem. There are m commodities (time slots) T = {t1,t2,...,tm} for n buyers I = {1, 2,...,n}. Each buyer requires a number of time slots si for its task. The valuation function of buyer i for a bundle of time slots Ti is vi (Ti )= wi (m t), where t is the last time slot in Ti and |Ti | = si . The utility ui of buyer i is vi (Ti ) p(Ti). It is well-known that Vickrey-Clarke-Groves (VCG) mechanism gives the incentive to bid truthfully. Although optimal social welfare is computa- tionally feasible in CPU time scheduling problem, VCG mechanism may produce low revenue. We design an auction which also maintains the in- centives for bidders to bid truthfully. In addition, we perform simulations and observe that our truthful mechanism produces more revenue than VCG on average. Keywords: Mechanism Design, Truthful Mechanism, Auctions, Scheduling. 1 Introduction Internet market has become an important part of today’s economy, which pro- duces large amounts of revenue. Information or digital goods in the Internet mar- ket differ from the traditional market in some key aspects, for example, digital goods can be re-created at a marginal cost and the supply is unlimited. The pric- ing mechanism for digital goods also differs from that of classic economics since supply exceeds demand in the Internet market while supply is sold out in classic economics. This new economy system demands many theoretical analyses from which we can develop tools that help us determine the pricing mechanism and resource allocation. [5] gives an offline competitive auction for selling multiple digital goods where each bidder has a different private value for each digital good and bidders are willing to submit their true private values as bids. In mechanism design, such auction is called truthful auction, or incentive-compatible auction. [1] extends this concept to an online auction in which bidders are willing to bid their true valuations for each digital good. In this work, we study the auction for CPU processing time as a digital good in the Internet market. CPU time is a crucial resource and has been extensively This work was fully supported by a grant from the Research Grants Council of the Hong Kong Special Administrative Region, China [Project No. CityU 117408]. D.T. Lee, D.Z. Chen, and S. Ying (Eds.): FAW 2010, LNCS 6213, pp. 23–34, 2010. c Springer-Verlag Berlin Heidelberg 2010
Transcript
Page 1: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

Truthful Auction for CPU Time Slots�

Qiang Zhang and Minming Li

Department of Computer Science, City University of Hong Kong,Tat Chee Avenue, Kowloon, Hong Kong

[email protected], [email protected]

Abstract. We consider the task of designing a truthful auction mecha-nism for CPU time scheduling problem. There are m commodities (timeslots) T = {t1, t2, . . . , tm} for n buyers I = {1, 2, . . . , n}. Each buyerrequires a number of time slots si for its task. The valuation function ofbuyer i for a bundle of time slots Ti is vi(Ti) = wi(m− t), where t is thelast time slot in Ti and |Ti| = si. The utility ui of buyer i is vi(Ti)−p(Ti).It is well-known that Vickrey-Clarke-Groves (VCG) mechanism gives theincentive to bid truthfully. Although optimal social welfare is computa-tionally feasible in CPU time scheduling problem, VCG mechanism mayproduce low revenue. We design an auction which also maintains the in-centives for bidders to bid truthfully. In addition, we perform simulationsand observe that our truthful mechanism produces more revenue thanVCG on average.

Keywords: Mechanism Design, Truthful Mechanism, Auctions,Scheduling.

1 Introduction

Internet market has become an important part of today’s economy, which pro-duces large amounts of revenue. Information or digital goods in the Internet mar-ket differ from the traditional market in some key aspects, for example, digitalgoods can be re-created at a marginal cost and the supply is unlimited. The pric-ing mechanism for digital goods also differs from that of classic economics sincesupply exceeds demand in the Internet market while supply is sold out in classiceconomics. This new economy system demands many theoretical analyses fromwhich we can develop tools that help us determine the pricing mechanism andresource allocation. [5] gives an offline competitive auction for selling multipledigital goods where each bidder has a different private value for each digital goodand bidders are willing to submit their true private values as bids. In mechanismdesign, such auction is called truthful auction, or incentive-compatible auction.[1] extends this concept to an online auction in which bidders are willing to bidtheir true valuations for each digital good.

In this work, we study the auction for CPU processing time as a digital goodin the Internet market. CPU time is a crucial resource and has been extensively� This work was fully supported by a grant from the Research Grants Council of the

Hong Kong Special Administrative Region, China [Project No. CityU 117408].

D.T. Lee, D.Z. Chen, and S. Ying (Eds.): FAW 2010, LNCS 6213, pp. 23–34, 2010.c© Springer-Verlag Berlin Heidelberg 2010

Page 2: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

24 Q. Zhang and M. Li

studied in grid computing. Market-oriented methods have been proposed for ef-ficient allocation of computational resources in [2,9,7]. In most of CPU time al-location models, CPU time is considered as the same goods that can reduce thecomputational complexity. However, in practice bidders in the same market mighthave different valuations for different time slots. Furthermore, we assume all bid-ders are task-oriented, which means the valuations of time slot allocations for bid-ders depend on the finish time of their jobs. We adopt the model from [4] whichconsiders each CPU time slot as a different unit. [4] focuses on the Walrasianequilibrium price and the complexity of computing such price. In this work,we are interested in incentive-compatible mechanisms for selling CPU time inthe Internet market. Truth-telling is a desirable feature which ensures behav-ior is predictable in auction. Information about others’ bids is irrelevant in atruthful auction so that bidders will not be motivated to spend resource on ob-taining such information. It is well known that Vickrey-Clarke-Groves (VCG)mechanism [3,6,8] is a truthful auction mechanism which maximizes the socialwelfare. Nevertheless, VCG mechanism has many notable weaknesses, for ex-ample, VCG is computationally infeasible in many problems and the paymentof VCG mechanism could be very low. We first develop a truthful auction fortime slots on single CPU, in which the CPU time slots allocation mechanismis a greedy function that depends on the valuation from each bidder. We alsodiscuss the revenue from our auction mechanism and compare it with the rev-enue of VCG. Finally, we extend the mechanism to selling processing time onmultiple CPUs with an assumption that bidders are only allowed to submit theirvaluation parameters untruthfully. We proved that the proposed auction modelis also incentive-compatible in multiple CPU setting. The paper is organized asfollows. The CPU time scheduling problem is described in Section 2. In Section3, we propose a new auction for selling CPU time on a single CPU. We describethe pricing and allocation mechanism. In Section 4, we prove that the auctionis incentive-compatible. In Section 5, we analyze the revenue generated from ourauction mechanism. We also perform simulations and compare the revenue be-tween our mechanism and VCG. In Section 6, we extend our mechanism anddevelop an incentive-compatible auction for multiple CPUs. At last, we concludeour work with discussion on the results and possible future work in Section 7.

2 The CPU Time Scheduling Problem

In the CPU time scheduling problem, there is a CPU time provider and manybidders in the market. CPU time provider sells CPU time slots to bidders andeach bidder would like to buy different number of CPU time slots that dependson the requirement of its job. The valuation of each bidder depends on thetime slots it obtains. The CPU time scheduling problem can be formulated asfollows. Assume there are n jobs announced at the time t = 1, the jth job needstime sj > 0 to complete its task and has weight wj > 0. From these environmentsettings, We form an exchange economy: an auctioneer sells m commodities (timeslots) T = {t1, t2, . . . , tm} to n buyers (jobs) I = {1, 2, . . . , n}. The valuation

Page 3: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

Truthful Auction for CPU Time Slots 25

function of buyer i for a bundle of time slots Ti is vi(Ti) = wi(m − t), wheret is the largest time-slot item in Ti and |Ti| = si. The utility ui of buyer i isvi(Ti)− p(Ti).

3 A Truthful Auction for Time Slots on Single CPU

In this section, we present a truthful auction mechanism for pricing time slotson single CPU with a linear valuation function for each job. As mentioned inthe last section, the valuation function of buyer i for a bundle of time slots Ti isvi(Ti) = wi(m− t), where t is the largest time-slot item in Ti and |Ti| = si. Theutility ui of buyer i is vi(Ti)− p(Ti). The goal of the truthful auction is to giveeach buyer an incentive to submit its true value of w and s.

The truthful auction we propose is as follows:

Rank buyers according to their submitted weight w. Without loss of generality,assume that w1 ≥ w2 . . . ≥ wn. Assign time slots to buyers according to theirranks, i.e. buyer 1 takes the first s1 time slots, followed by s2 time slots assignedto buyer 2 and so on. We denote the time slots allocation as A, Kj(A) = i if andonly if time slot tj is assigned to buyer i, and Bj(A) = {j + 1, j + 2, . . . , m}

If the bundle of time slots assigned to buyer i is

Ti(A) = {tγ , tγ+1, . . . , tη=γ+si−1} (1)

where γi and ηi are the start and finish time of buyer i, respectively. In this case,the price of the bundle of time slots is

p(Ti(A)) =∑

j∈Bηi(A)

wKj(A) (2)

As an example, consider four buyers bidding for 6 time slots t1, t2, . . . , t6. Thetime span and weight are {2, 3, 1} and {9, 6, 4}. The time slots s1 and s2 will beassigned to buyer 1. By Equation 2, the price of the bundle of time slots t1 and t2is p(T1) = w2s2 + w3s3 = 6 ∗ 3 + 4 ∗ 1 = 22. Applying the same method to buyer2, the price of the bundle of time slots t3, t4, t5 is p(T2) = w3s3 = 4. Because thereare no more buyers, buyer 3 is charged at price 0 for its time slots t6.

4 Truthfulness of the Auction

In this section, we prove the pricing and allocation mechanism proposed in Sec-tion 3 is incentive-compatible. From the proof, we show that there is no otherbidding strategies rather than bidding truthfully which could gain more utility.

Definition 1. A mechanism (f, p1, . . . , pn) is called incentive compatible or truth-ful if for every buyer i, every w1 ∈ W1, . . . , wn ∈ Wn, every s1 ∈ S1, . . . , sn ∈Sn, and every w

′i ∈ Wi, s

′i ∈ Si, if we denote a = f(wi, si, w−i, s−i) and a

′=

f(w′i, s

′i, w−i, s−i), then vi(a)− pi(wi, si, w−i, s−i) ≥ vi(a

′)− pi(w

′i, s

′i, w−i, s−i),

where Wi, Si is the set of all possible values of wi, si for buyer i, and w−i, s−i isthe bid vector except buyer i.

Page 4: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

26 Q. Zhang and M. Li

Algorithm 1. Auction mechanism for time slots on single CPUInput: A set of jobs I = {1, 2, . . . , n} with weight w and timespan s

ordered by wOutput: A set of prices for each job

begincount timeslot = 1 ;for i = 1 to n do

start timei = count timeslot;finish timei = count timeslot + si − 1;count timeslot = count timeslot + si;for j ← i + 1 to n do

p(Ti) = p(Ti) + wjsj

end

Theorem 1. The auction mechanism in Algorithm 1 is incentive-compatible.

Proof. Fix i, the valuation function vi = wi(m − t), w−i and s−i, we need toshow that the utility when buyer i declares wi and si is not less than the utilitywhen he declares a fake w

′i and s

′i.

If buyer i submits a w′i > wi, it will possibly improve the ranking of buyer

i. Suppose the original ranking of buyer i when declaring wi is k, then the newranking is k

′< k by submitting wi

′. Let Q = {ρ, . . . , σ} where the rankings ofusers ρ, . . . , σ are from k

′+1 to k when buyer i submits w

′i. Therefore, for buyer

i, its completion time improves by∑

j∈Q sj but it need to pay∑

j∈Q wjsj more.Its utility improves by:

vi(a′)− pi(w

′i, s

′i, w−i, s−i)− (vi(a)− pi(wi, si, w−i, s−i))

=(vi(a′)− vi(a))− (pi(w

′i, s

′i, w−i, s−i)− pi(wi, si, w−i, s−i))

=wi

j∈Q

sj −∑

j∈Q

wjsj

(3)

Because all buyers in Q has an equal or higher w than buyer i, Equation 3 willproduce a non-positive result, which means the utility of buyer i will not increaseif it submits a w

′i > wi.

In the same way, if buyer i submits a w′i < wi, then the new ranking is

k′′

> k. Let Q′= {ρ′

, . . . , σ′} where the rankings of users ρ

′, . . . , σ

′are from k

to k′′ − 1 when buyer i submits w

′i. Therefore, for buyer i, its completion time

delays∑

j∈Q′ sj but it can pay∑

j∈Q′ wjsj less. Its utility improves by:

vi(a′)− pi(w

′i, s

′i, w−i, s−i)− (vi(a)− pi(wi, si, w−i, s−i))

=(vi(a′)− vi(a))− (pi(w

′i, s

′i, w−i, s−i)− pi(wi, si, w−i, s−i))

=− wi

j∈Q′sj +

j∈Q′wjsj

(4)

Page 5: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

Truthful Auction for CPU Time Slots 27

Because all buyers in Q′

has a less or equal value of w than buyer i, Equation4 will produce a non positive result, which means the utility of buyer i will notincrease if it submits a w

′i < wi.

It is noted that buyer i cannot improve its utility by submitting a fake s′i

whatever buyer i submits a w′i ≥ wi or w

′i ≤ wi. For a fixed wi, if buyer i

submits s′i < si, it cannot complete its task because it only obtains s

′i slots. If

buyer i submits s′i > si, buyer i gets more time slots but pays the same price.

However, the utility ui does not increase because buyer i cannot finish its taskearlier.

Theorem 2. Bidding job weight and time span truthfully always gains non-negative utility.

Proof. Assume that if buyer i submits wi, si, the valuation of buyer i is

vi = wi(m− β) (5)

According to Equation 2, the price that buyer i pays is only dependent on thebuyers having lower weights.

p(Ti) =∑

j∈Bβ(A)

wKj(A) (6)

Because wi ≥ wKj(A), where j ∈ Bβ(A), the utility ui of buyer i is:

ui = vi − p(Ti) = wi(m− β)−∑

j∈Bβ(A)

wKj(A) ≥ 0 (7)

5 Revenue Study

After designing a truthful mechanism for pricing time slots on single CPU, it isworth evaluating how much the revenue seller may earn by our mechanism. Thissection presents a comparison on revenue between our mechanism and VCG, awell-known truthful mechanism.

5.1 Experimental Results

From the formula presented in Section 3, we cannot tell which mechanism canachieve higher revenue. In order to further investigate the revenue by our truth-ful mechanism, we perform simulations at different number of bidders when theparameters (e.g. weight and time span) are normally distributed in a certainrange. First, we choose both weight and time span parameters randomly from1 to 100. We perform simulation 100 times at each number of bidders whenthe number of bidders increases from 2 to 100. In each simulation, we calculate

Page 6: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

28 Q. Zhang and M. Li

Fig. 1. Comparison of number of wins and revenue ratio between our truthful mecha-nism and VCG when both job weight and time span range from 1 to 100

Fig. 2. Comparison of number of wins and revenue ratio between our truthful mecha-nism and VCG when job weight ranges from 1 to 100 and time span ranges from 1 to50

Page 7: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

Truthful Auction for CPU Time Slots 29

the revenues from our mechanism and VCG and compare them. We count thenumber of times our mechanism generating more revenue than VCG. We alsocompute the average revenues of our mechanism and VCG when the numberof bidders are fixed. Figure 1 shows the comparison result and the averagerevenue ratio on our mechanism and VCG. Second, we use the same methodto compare our mechanism and VCG when weights are randomly chosen from1 to 100 and time span ranges from 1 to 50. Figure 2 shows the compari-son result and the average revenue ratio on our mechanism and VCG in thissetting.

5.2 More Analyses

From the previous section, we find that our mechanism can generate more rev-enue than VCG when the parameters(e.g. w and s) are normally distributed. Inthis subsection we analyze the revenue generated on two special cases. One isthat the valuation wi of each buyer (job) grows with the time-span si it requires,the other is the valuations of buyers is inversely related to the time-span, i.e. thevaluation wi grows while the required time-span si decreases.

Case 1 {a) w1 ≤ w2 ≤ w3 ≤ . . . ≤ wn−1 ≤ wn

b) s1 ≤ s2 ≤ s3 ≤ . . . ≤ sn−1 ≤ sn

This scenario often happens when the valuation of job only depends on the times-pan it needs. In practice, those jobs that need large amount of processing timemost likely produce more value compared to other jobs. In this circumstance,our mechanism gives time slots according to the bidders’ submitted weight w,e.g. bidder n gets the first sn slots. Each bidder is charged by Equation 2, andthe total revenue is:

(n− 1)w1s1 + (n− 2)w2s2 + . . . + wn−1sn−1 (8)

While VCG mechanism allocates time slots in a socially optimal manner, e.g.bidder n with largest w/s obtains the first tn slots. VCG mechanism charges eachindividual bidder the harm it causes to other bidders, e.g. bidder n is chargedat price sn(w1 + w2 + . . . + wn−1). There are different subcases in this scenariofor the VCG mechanism. We study two special subcases.

The first subcase is w1/s1 ≤ w2/s2 ≤ w3/s3 ≤ . . . ≤ wn−1/sn−1 ≤ wn/sn. Inthis subcase, the total revenue VCG mechanism generates is:

sn(w1 + w2 + . . . + wn−1) + sn−1(w1 + w2 + . . . + wn−2) + . . . + s2w1 (9)

We can show that the revenue from VCG mechanism is equal to or greaterthan our truthful mechanism. It can be proved from Equation 8 - Equation9:

Page 8: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

30 Q. Zhang and M. Li

(n− 1)w1s1 + (n− 2)w2s2 + . . . + wn−1sn−1

− (s2 + s3 + . . . + sn)w1 − (s3 + . . . + sn)w2 − . . .− sn−1wn

=((n− 1)s1 − s2 − s3 − . . .− sn)w1 + ((n− 2)s2 − s3 − . . .− sn)w2+. . . + (sn−1 − sn)wn−1

≤0

Another subcase is that w1/s1 ≥ w2/s2 ≥ w3/s3 ≥ . . . ≥ wn−1/sn−1 ≥ wn/sn.In this subcase, the total revenue VCG mechanism generates is:

s1(w2 + w3 + . . . + wn) + s2(w3 + w4 + . . . + wn) + . . . + sn−1wn (10)

The revenue comparison result is the same as subcase 1. It is because:

(n− 1)w1s1 + (n− 2)w2s2 + . . . + wn−1sn−1

− (w2 + w3 + . . . + wn)s1 − (w3 + w4 + . . . + wn)s2 − . . .− sn−1wn

=((n− 1)w1 − w2 − w3 − . . .− wn)s1 + ((n− 2)w2 − w3 − . . .− wn)s2+. . . + (wn−1 − wn)sn−1

≤0

Case 2 {a) w1 ≤ w2 ≤ w3 ≤ . . . ≤ wn−1 ≤ wn

b) s1 ≥ s2 ≥ s3 ≥ . . . ≥ sn−1 ≥ sn

This scenario often happens in the market when urgent jobs with high valuesand short timespans come into the market, while a number of jobs are beingscheduled. For example, there are a lot of services that need a large amount ofCPU time to process, but some customer-oriented services need to be attendedpromptly. This situation creates a problem of how to schedule this urgent joband how much it pays. In this case, we analyze the revenue when jobs in themarket follow this pattern. Both our truthful mechanism and VCG mechanismproduce the same time slots allocation and revenue formula as the first subcasein Case 1. However, the revenue from our truthful mechanism is equal to orgreater than that from VCG mechanism. It is because time-span relationshipdiffers from that in Case 1. The proof is as follows:

(n− 1)w1s1 + (n− 2)w2s2 + . . . + wn−1sn−1

− (w1 + w2 + . . . + wn−1)sn − (w1 + w2 + . . . + wn−2)sn−1 − . . .− w1s2

=(n− 1)w1s1 + (n− 2)w2s2 + . . . + wn−1sn−1

− w1(s2+s3 + . . .+sn−1+sn)−w2(s3 + s4 + . . . + sn−1 + sn)− . . .− wn−1sn

=((n− 1)s1 − s2 − s3 − . . .− sn)w1 + ((n− 2)s2 − s3 − . . .− sn)w2+. . . + (sn−1 − sn)wn−1

≥0

Page 9: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

Truthful Auction for CPU Time Slots 31

6 A Truthful Auction for Time Slots on Multiple CPUs

In this section, we extend our previous result to multiple CPUs setting. Wepropose a mechanism for pricing time slots on multiple CPUs, and prove thatthe mechanism is also incentive compatible when bidders are only allowed tosubmit a fake weight. The problem is formulated as follows: There are k CPUs,and an auctioneer sells m commodities (time slots) T = {t1, t2, . . . , tm} on eachCPU to n buyers (jobs) I = {1, 2, . . . , n}. Therefore, the total number of timeslots is km. Let Tpq be the pth time slot on CPU q. Each buyer i needs time si

to complete its task and has weight wi > 0. The valuation function of buyer ifor a bundle of time slots Ti is vi(Ti) = wi(m− t), where t is the latest time-slotitem in Ti. The utility ui of buyer i is vi(Ti)− p(Ti). The goal of the mechanismis to give buyers an incentive to report its true value of w and s as a bid.

The solution to this problem is inherited from the idea on single CPU. Thebuyers are ordered by their submitted weights w. Without loss of generality, as-sume that w1 ≥ w2 . . . ≥ wn. Assign time slots on different CPUs to buyers ac-cording to the rank of their weights. We denote the time slot allocation as A andthe bundle of time slots assigned to buyer i as Ti(A) = {tpq, tp(q+1), ...tpk, ...tp′k′ }where |Ti(A)| = si, and p, p

′are the start and finish time of buyer i. Let Bi(A)

be the time slots after the finish time of buyer i, i.e. Bi(A) = {p′+ 1, . . . , m}.

We also define Mi(A) as the job index with maximum weight assigned to the ith

time slots among all CPUs. The price of the bundle of time slots Ti(A) is

p(Ti(A)) =∑

j∈Bi(A)

wMj(A) (11)

If the context is clear, we will omit A in equations. Suppose that there are 3CPUs and 4 buyers, the time spans and weights are {2, 4, 5, 1} and {9, 6, 4, 5}.In this example, buyer 1 is assigned to the first time slot of CPU 1 and 2; buyer2 is assigned to the first time slot of CPU 3 and the second time slot of CPU1, 2 and 3; buyer 3 is assigned to the third time slot of CPU 1, 2 and 3 andthe fourth time slot of CPU 1 and 2; finally, buyer 4 is assigned to the fourthtime slot of CPU 3. The intuition behind Equation 11 is that the price of thebundle of time slots for each buyer is dependent on the maximum weight buyeron every time slot among all CPUs after its finish time. In this example, buyer1 pays p(T1) =

∑j∈Bi

wMj = w2 + w3 + w3 = 14. Applying the same method,the payments of buyer 2, 3 and 4 are 8, 0 and 0.

Theorem 3. The auction mechanism in Algorithm 2 is incentive-compatible.

Proof. Fix a buyer i, the valuation function vi = wi(m − t), w−i and s−i, weshow that the utility ui when buyer i declares wi is not less than the utility u

′i

when buyer i declares a fake w′i. In this proof, we do not take buyers declaring

a fake s′into consideration. It is because that buyer i cannot complete its task

if s′i < si. If buyer i submits s

′i > si, in practice, the auctioneer is able to check

Page 10: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

32 Q. Zhang and M. Li

whether each bidder submit its s truthfully or not from the process state or logfile of the CPU. Therefore, the auctioneer can inflict penalty on buyer i in thatcase.

Algorithm 2. Auction mechanism for time-slot on multiple CPUsInput: A set of jobs I = {1, 2, . . . , n} with weight w and timespan s ordered by

w, A set of time slots T = {t11, t12, . . . , t1k, t21, . . . , tpk} on k CPUsOutput: A set of allocation T and a set of prices P

begintimeslot = 1 ;cpu = 1 ;for k← 1 to n do

for j ← 1 to sk doTk ← Tk ∪ ttimeslot,cpu;finish timek = timeslot;if cpu = 1 then

Mtimeslot = k ;

cpu← cpu + 1;if cpu > k then

cpu = 1 ;timeslot = timeslot + 1 ;

for k← 1 to n dofor j ← finish timek + 1 to p do

p(Tk) = p(Tk) + wMj ;

end

If buyer i bids w′i > wi, it will increase the ranking of buyer i. Because of the

multiple CPUs, the increase on the ranking might not advance the finish time ofbuyer i. It is because buyer i might finish its job on different CPUs at the sametime as when it bids the true value. In this case, the price and valuation of buyeri remain unchanged. Otherwise, even buyer i will finish its job earlier, it will notimprove the utility of buyer i. Suppose that the finish time is β when buyer ibids truthfully and β

′if buyer submits w

′i. The valuation of buyer i improves

wi(β−β′). Nonetheless, buyer i need to pay

∑j∈{β′+1,...,β} wMj more. Hence,its

utility improves by:

vi(T′i )− pi(w

′i, s

′i, w−i, s−i)− (vi(Ti)− pi(wi, si, w−i, s−i))

=vi(T′i )− vi(Ti)− (pi(w

′i, s

′i, w−i, s−i)− pi(wi, si, w−i, s−i))

=wi(β − β′)−

j∈{β′+1,...,β}wMj

(12)

Because all buyers are scheduled by their submitted w, when buyer i reports afake w

′i > wi, all jobs scheduled between β

′+1 and β have a w ≥ wi. Therefore,

Equation 12 always produces a non-positive result.

Page 11: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

Truthful Auction for CPU Time Slots 33

On the other hand, if buyer i reports w′i < wi, it will lower the ranking of

buyer i. The loss of ranking might not postpone the finish time of buyer i. Inthis case, the price and valuation of buyer i remain the same. If buyer i couldaccomplish its job at a time β

′> β and pays less, it still will not improve

the utility of buyer i. Reporting w′i instead of wi, the valuation of buyer i drops

wi(β′−β) and buyer i pays

∑j∈{β+1,...,β′} wMj less. However, its utility improves

by:

vi(T′i )− pi(w

′i, s

′i, w−i, s−i)− (vi(Ti)− pi(wi, si, w−i, s−i))

=vi(T′i )− vi(Ti)− (pi(w

′i, s

′i, w−i, s−i)− pi(wi, si, w−i, s−i))

=− wi(β′ − β) +

j∈{β+1,...,β′}wMj

(13)

Because all buyers scheduled in time slots {β + 1, . . . , β′} have weight w ≤ wi,

Equation 13 will have a non-positive result, which means bidding a fake valuew

′will not improve buyer i’s utility.

7 Conclusion and Discussion

In this paper, we present an incentive-compatible auction for selling processingtime slots on single CPU. With the similar technique, we propose an auction forselling processing time slots on multiple CPUs where bidders are also willing tosubmit their true private values as bids. We believe our auction mechanism cangenerate more profit than the VCG mechanism on average. This study helps usto explore the possible truthful auction design when the CPU processing timeslots is the commodity in the market. As cloud computing becomes a trendof future Internet computing, sharing or allocation of resource and computingpower will be an important issue. The resource or computing power providerwill not be exclusive in that market since each participant will play both rolesof provider and buyer. The complexity of that market increases which leavesa question that how to design an incentive-compatible mechanism. We believethat it is a possible extension of our current work.

References

1. Bar-Yossef, Z., Hildrum, K., Wu, F.: Incentive-compatible online auctions for digitalgoods. In: Proceedings of the thirteenth annual ACM-SIAM symposium on Discretealgorithms, p. 970 (2002)

2. Buyya, R., Stockinger, H., Giddy, J., Abramson, D.: Economic models for man-agement of resources in grid computing. In: Technical Track on Commercial Appli-cations for High-Performance Computing, SPIE International Symposium on TheConvergence of Information Technologies and Communications, ITCom 2001 (2001)

3. Clarke, E.: Multipart pricing of public goods. Public choice 11(1), 17–33 (1971)4. Deng, X., Huang, L., Li, M.: On walrasian price of cpu time. Algorithmica 48(2),

159–172 (2007)

Page 12: [Lecture Notes in Computer Science] Frontiers in Algorithmics Volume 6213 || Truthful Auction for CPU Time Slots

34 Q. Zhang and M. Li

5. Goldberg, A., Hartline, J., Wright, A.: Competitive auctions for multiple digitalgoods. In: Meyer auf der Heide, F. (ed.) ESA 2001. LNCS, vol. 2161, pp. 416–427.Springer, Heidelberg (2001)

6. Groves, T.: Incentives in teams. Econometrica: Journal of the Econometric Society,617–631 (1973)

7. Huberman, B., Hogg, T.: Distributed computation as an economic system. TheJournal of Economic Perspectives, 141–152 (1995)

8. Vickrey, W.: Counterspeculation, auctions, and competitive sealed tenders. TheJournal of Finance 16(1), 8–37 (1961)

9. Walsh, W., Wellman, M., Wurman, P., MacKie-Mason, J.: Some economics ofmarket-based distributed scheduling. In: Eighteenth International Conference onDistributed Computing Systems (1998)


Recommended