iterative combinatorial auctions

27
Iterative Iterative Combinatorial Combinatorial Auctions Auctions David C. Parkes David C. Parkes Division Engineering and Applied Division Engineering and Applied Sciences Sciences Harvard University Harvard University

Upload: manning

Post on 08-Jan-2016

32 views

Category:

Documents


0 download

DESCRIPTION

Iterative Combinatorial Auctions. David C. Parkes Division Engineering and Applied Sciences Harvard University. Introduction. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Iterative Combinatorial Auctions

Iterative Iterative Combinatorial Combinatorial

AuctionsAuctions

David C. ParkesDavid C. ParkesDivision Engineering and Applied Division Engineering and Applied

SciencesSciences

Harvard UniversityHarvard University

Page 2: Iterative Combinatorial Auctions

IntroductionIntroduction

In this course we have shown the importance of Combinatorial Auctions and have particularly focused on Generalized Vickrey Auctions (GVA). The paper being presented looks at another approach to Combinatorial Auctions (CA) called Iterative Combinatorial Auctions (ICA), which does several CAs over a period of several rounds.Throughout the course it has been proven in many papers that in GVAs the Winner Determination problem is NP-hard. But they also have the desired property of truth revelation, however, it is this very same property that results in the Winner Determination problem becoming NP-hard .

Page 3: Iterative Combinatorial Auctions

Introduction (cont’d)Introduction (cont’d)ICAs therefore attempt to solve winner determination by first resolving Preference Elicitation, which gives the desired truth revelation property .

Definition: Preference Elicitation is the process of discovering bidders’ valuations for items/bundles. This price discovery process is very similar to the process used in the English Auctions. Both are ascending price auctions which elicit bidders’ valuation.

Page 4: Iterative Combinatorial Auctions

VGA vs. ICAVGA vs. ICA

Following is a comparison between VGA and ICA:

1 .Because GVAs are sealed bid auctions they force the bidders to try to compute their valuations over a large group of items for a specific bundles knowing that whatever bid they make here, it is final. This makes for a difficult computational problem for bidders. On the other hand, an ICA has several rounds this allows the bidders to bid for those bundles that they really want with the knowledge that they can always improve their bids, if necessary, this allows for much simpler computations of valuations

for bundles .

Page 5: Iterative Combinatorial Auctions

VGA vs. ICA (cont’d)VGA vs. ICA (cont’d)

2 .Because in VGA bidders may specify large numbers of bundles all with a varied set of items, solving the WD problem becomes NP-hard. In ICA because the bidders will bid for a smaller number of bundles the

computation of WD is less complex .

3 .VGAs are faster than ICAs as an ICA can take several rounds until the auction ends, while a VGA is one single sealed bid auction. Although, there are mechanisms that can be put in place to speed up an ICA this will result in a loss of efficiency of the auction.

Page 6: Iterative Combinatorial Auctions

VGA vs. ICA (cont’d)VGA vs. ICA (cont’d)

4 .GVA is better at truth revelation, ICAs are vulnerable to collusions, and in cases like the Proxy ICA or iBundle can be manipulated by a bidder who can enter the auction under several pseudonyms.

5 .ICAs are also vulnerable to sniping.

6 .ICA is based on the Walrasian equilibrium model which shown by Gul and Stacchetti provides a higher or equivalent payment, to the auctioneer, as that

dispensed by any VCG mechanism .

Page 7: Iterative Combinatorial Auctions

ICA TheoryICA Theory

The payment scheme in ICA is based on Competitive Equilibrium (CE), which extends the concept of Walrasian Equilibrium to CA.Definition: an allocation of xs bundle at price ps is a Walrasian equilibrium if a) the allocation is feasible b) each bidder is choosing optimally. In a Walrasian equilirium if a bidder prefers another bundle to xs then they can not afford it.

Definition: CE can therefore be defined by the following two equations

Πi (S*i, p) = max [vi(S) – pi(S), 0] (bidder’s payoff)

Πi(S*, p) = max Σ pi(Si) (Auctioneer’s Revenue, for feasible allocations)

Page 8: Iterative Combinatorial Auctions

ICA Theory (cont’d)ICA Theory (cont’d)The previous slide showed the equations

Πi (S*i, p) = max [vi(S) – pi(S), 0]Πi (S*, p) = max Σ pi(Si)

S* is the efficient allocation of bundles.

Combinatorial Allocation Problem (CAP) is defined by

maxS=(S1,…Sn)∑i vi(Si) s.t Si are disjoint.

This will result in an efficient allocation of S (S*) and therefore results in the maximization of bidder’s payoff and the auctioneer’s revenue.

Page 9: Iterative Combinatorial Auctions

ICA theory (cont’d)ICA theory (cont’d)Many ICAs are designed to achieve the minimal CE prices. Minimal CE prices is that price that minimizes the auctioneer’s revenue in the CE. This is because, as stated earlier (VGA vs. ICA), minimal CE prices will give VCG payments and allows ICAs that support straightforward bidding to reach an ex post equilibrium.

Definition: Even if the bidders are told the state (winning bids and allocations) of an auction, after they had choose their actions, they will not regret their bids.

Page 10: Iterative Combinatorial Auctions

ICA Theory (cont’d)ICA Theory (cont’d)However, there are some cases where the CE fails to give a VCG payment. This can occur when Buyers are Substitutes (BAS) condition fails.

Definition: The BAS condition gives the VCG payoff for bidder i as the value of the difference between the auctioneer’s revenue for all bidders and revenue for all bidders but i plus bidder i’s payoff.

Πi(vcg) = Πi + Π(G) – Π(G-i) where G is the set of bidders.

Page 11: Iterative Combinatorial Auctions

ICA Theory (cont’d)ICA Theory (cont’d)All is not lost though, Universal Competitive Equilibrium comes to the rescue.

Definition: a price is UCE if 1) it is a CE price and 2) and a CE price for all CAP when each bidder is in turn absent.

pvcg,i = puce,i – [ΠI* - ΠI\i(puce)].

Parkes provides a good example of UCE and CE in the paper, this can be found on page 12.

Page 12: Iterative Combinatorial Auctions

ICA Theory (cont’d)ICA Theory (cont’d)

The point of CE and UCE prices is that they both are important factors in preference elicitation. Any auction wanting to have efficient allocation and VCG payments must be able to determine CE and UCE prices respectively .

Page 13: Iterative Combinatorial Auctions

ICA DesignICA DesignWe will now look at the design features for an ICA. ICAs are more difficult to design and as stated earlier in the VGA vs. ICA section have to overcome several issues .

Timing issue: Iterative auctions can be of two types, continuous or discrete. Continuous ICA will allow for the auction to run quickly, however, the WD problem will have to be solved after each bid is submitted. Discrete auctions are slower but the WD problem is solved after each round, this would prove less expensive a problem for the auctioneer .

Information Feedback: Here the auctioneer can resolve bid manipulation problem. The information given to the bidders include present allocations, and price feedback.

Page 14: Iterative Combinatorial Auctions

ICA Design (cont’d)ICA Design (cont’d)Bidding Rules: These are rules that guide price increments that the auctioneer can place on bundles for each round, and activity rules. Activity rules are a useful deterrent to sniping.Termination Conditions: They can be of two types, either rolling closure or fixed deadline. Fixed deadlines allows for bidders to know when the auction will end, but rolling closure helps prevent sniping.

Bidding Languages: A bidding language in an ICA does not have to be overly expressive. Most ICA bidding languages are designed to allow bidders to bid straightforward .

Page 15: Iterative Combinatorial Auctions

ICA Design (cont’d)ICA Design (cont’d)

Proxy Agents: bidders can give partial information to a proxy agent, bids can be revised as auction goes on. A proxy agent can also allow the auctioneer to restrict the strategy space available to an agent, this allows for a faster auction as well as an easier WD problem.

Page 16: Iterative Combinatorial Auctions

Price-Based ICAPrice-Based ICA

We will look at one type of ICA called Price-Based (there is also a Non Price based which will be looked at later but very briefly).

In a price-based auction the auctioneer announces winning bids and allocations after each round and requests new bids. At the end of each round the winner determination problem is solved, this continues until the auction terminated. The auctioneer has to determine a method in which prices for bundles should be incremented (ask prices) in the next round.

Page 17: Iterative Combinatorial Auctions

Price-Based ICA (cont’d)Price-Based ICA (cont’d)

There are three methods by which ask prices are increased:Greedy update: Prices of bundles are increased arbitrarily.

Minimal Update: prices are increased on either a set of overdemanded bundles or on a set of undersupplied bidders.LP-based: A linear program is used to approximate CE prices and prices are adjusted accordingly.

Page 18: Iterative Combinatorial Auctions

Price-Based ICA (cont’d)Price-Based ICA (cont’d)We will look at a specific example of Price-Based ICA that uses greedy update to increment bundles’ prices. The ICA, called iBundle, uses a primal-dual algorithm for allocations. It has been proven in other papers (Bikhchandani & Ostroy 98) that the primal-dual algorithm satisfies Complementary Slackness, this is a necessary condition for a primal and dual solution of a linear program to be optimal. Another paper (Parkes & Ungar) extends this to iBundle in particular.An allocation satisfies complementary slackness if 1) bidders can receive a bundle iff they bid 2) auctioneer’s revenue is maximized at the given prices.

Page 19: Iterative Combinatorial Auctions

Price-Based ICA (cont’d)Price-Based ICA (cont’d)

Next I will show a primal-dual algorithm as presented by Mishra & Parkes .

Step0: Initialize prices to 0

Step1: Collect demand sets of buyers at current price.

Definition: A demand set is the bundles that give maximum payoff for each bidder .

Di(p) = {S: Πi(S,p) ≥ maxTcSΠi(T,p), Πi(S,p) ≥ 0, S is a subset of all items.

Page 20: Iterative Combinatorial Auctions

Price-Based ICA (cont’d)Price-Based ICA (cont’d)

Step2: if overdemand holds then perform price adjustments

- Idendtify a minimal undersupplied set of bidder

- For every bidder in this set increase pi(S) by unity. That is increase price on bundles that are part of their demand set. Do not change prices

of other bundles .

go back to Step1 .Step3: if overdemand does not hold then auction ends with a VCG outcome and UCE prices.

Page 21: Iterative Combinatorial Auctions

iBundle (Case Study)iBundle (Case Study)

1 .Bidding language used is XOR.

2 .Bidders have to bid in each round, but their bids may not necessarily have to increase in that round i.e. they bid the same price.

3 .A bidder can bid ε below the ask price if he believes that the bundle is overpriced. However, the bidder is not allowed to update his bid in that round.

4 .WD and provisional allocation is solved at the end of each round.

Page 22: Iterative Combinatorial Auctions

iBundle (cont’d)iBundle (cont’d)5 .The WD problem can be solved by an approximate

algorithm, but it must maintain bid-monotonicity.

Definition: Bid-monotonicity is satisfied if a bidder wins a bundle with bid Bi it would also win that bundle if Bi was a bid in the set B* i.e. a bidders other bids does not affect his winning bid.

6 .Ask price on a bundle is increased when a bidder with a loosing bid, bids at or above the ask price for that bundle. The ask price is increased by ε above the highest loosing bid.

Page 23: Iterative Combinatorial Auctions

iBundle (cont’d)iBundle (cont’d)

7 .New ask prices are announced at the beginning of each round for bundles whose bids have been raised. Other bundles are priced as high as the maximum price for any bundle/item it contains.

8 .Price discrimination is used on agents whose bids do not satisfy the safety condition i.e. different ask prices for different agents.Definition: A bid is safe if a bidder is allocated a bundle, or does not bid at or above the ask price on any pair of compatible bundles i.e. the bundles are disjoint.

Page 24: Iterative Combinatorial Auctions

iBundle (cont’d)iBundle (cont’d)

9 .At the beginning of the auction ask prices are initialized to 0.

10 .An auction is terminated when 1) all agents submit the same bids in 2 consecutive rounds 2) all bidders receive a bundle.

Page 25: Iterative Combinatorial Auctions

Non Price-Based ApproachNon Price-Based Approach

This approach does not require bidders to submit bids to ask prices. The paper surveys three types.

Decentralized Approach: The WD problem is moved for the bidders to solve. Bidders also compute allocation. Obviously bidders with powerful agents are at an advantage.Proxy Auction: Proxy agents submit bids on behalf of bidder. Bidder can provide incomplete information about their value. A bidder may have to provide more information to the agent if necessary. Proxy agents don’t have to use all the information given by the bidder, only when that information is needed.

Page 26: Iterative Combinatorial Auctions

Non Price-Based (cont’d)Non Price-Based (cont’d)

Direct Elicitation approach – The auctioneer asks explicit queries of the bidder and the bidder responds according to their strategy. A bidder’s response helps refine queries made to other bidders. The elicitation of information can be 1) price based i.e. query bidders until enough information is gained to obtain a UCE price 2) allocation based i.e. query bidders until enough information is gained for efficient allocation based on VCG payments.

Page 27: Iterative Combinatorial Auctions

Future WorkFuture Work

Testing iBundle in a real auction scenario and measure performance.

Extending ICA to auctions that have multiple bidders and sellers.What if the WD problem can be divided further, such as items that compliment each other be forced into the same bundles, or use of a partitioning algorithm to determine WD for different partitions and continue solving recursively until one WD outcome is determined. Would this WD outcome satisfy CE and UCE prices?