Presentation is loading. Please wait.

Presentation is loading. Please wait.

Auction Algorithms for Market Equilibrium Rahul Garg IBM India Research Sanjiv Kapoor Illionis Institute of Technology.

Similar presentations


Presentation on theme: "Auction Algorithms for Market Equilibrium Rahul Garg IBM India Research Sanjiv Kapoor Illionis Institute of Technology."— Presentation transcript:

1 Auction Algorithms for Market Equilibrium Rahul Garg IBM India Research Sanjiv Kapoor Illionis Institute of Technology

2 Overview The market equilibrium problem History and recent developments A parameterized linear programming formulation The auction algorithm Analysis and proof outline Conclusions and future work

3 A (Fisher) Market There are n buyers and m sellers Each seller has exactly one commodity (seller j has a j amount of commodity j) Buyers have only money (buyer i has e i units of money) Sellers want only money, buyers want only commodities

4 A (Fisher) Market  Buyers have utilities on commodity bundles u i : R + m  R + The utility function u i of buyer i maps an endowment of commodities to a “happiness” index  The buyers and sellers come to the market and exchange commodities to maximize happiness  Each buyer and seller acts independently to maximize its own happiness

5  There are n traders and m commodities  Each trader has initial endowments of commodities a ij = amount of commodity j with trader i  Traders have utilities on commodity bundles u i : R + m  R + The utility function u i of trader i maps an endowment of commodities to a “happiness” index  The traders come to the market and exchange commodities to maximize happiness  Each trader acts independently and acts to maximize its own happiness The General Market Model (Walras)

6 Market Equilibrium Commodities are divisible x ij : the amount of commodity j with trader i after the trade Commodity j is tagged with a price p j x ij is a solution to the optimization problem No excess or deficiency of any commodity

7 Market Equilibrium No incentive for a trade No deficiency or surplus of any commodity p 1, p 2, …, p m are equilibrium prices Prices are in terms of an abstract currency Prices invariant to scaling Real money is a commodity (say m) Real price of commodity j is p j / p m Not an optimization problem

8 Market Equilibrium History Posed by  1891Fisher  1894Walras (Walrasian Equilibrium) Existence  1954Arrow and Debreu Computation  Hydraulic apparatus by Fisher  Walrasian tatonnement  Convergence?  Polynomial time algorithms?

9 Computation of Market Equilibrium Arrow et al. 1959  Stability of a local greedy price adjustment method for “Gross Substitute” utility functions Eisenberg and Gale, 1959  Fisher model, additive linear utilities  Optimization problem Eaves, 1976  Linear complementarity problem  Lemke’s algorithm Newman and Primak, 1992  Ellipsoid method – provably polynomial-time method

10 Computation of Market Equilibrium Devanur et al. 2002  Fisher model, separable additive and linear utilities  Combinatorial algorithm based on max flows  Complexity: n 4 /  max-flow computations ~ n 7 /  Jain et al 2003, Devanur and Vazirani 2003  Approximation algorithm for Walrasian model, linear utilities Jain, 2004  General Walrasian model, additive linear utilities  Ellipsoid method (similar to Eisenberg and Gale) Ye 2004  Fisher and Walrasian model, linear utilities  Complexity: n 4 L

11 Algorithms for Market Equilibrium Centralized Slow Very difficult to define and report utility functions Impractical

12 Auction Algorithms for Market Equilibrium  Fisher and General Walrasian model  Additive linear utilities  Approximation algorithm  Decentralized and distributed  Very simple  Natural auction interpretation  Complexity: 1/  (n m 2 + m n 2 ) log v max steps

13 The Market Equilibrium Problem Linear, additive utilities

14 A Parameterized LP Formulation A family of LPs p j are market clearing prices iff there is a dual optimal with  = 0 Search for p such that optimal dual has  = 0

15 The Auction Algorithm Fix a bid increment factor (1 +  ) Start with low prices A trader with “sufficient” surplus money finds its best commodity  a commodity that maximizes v ij / p j Acquires a best item by outbidding the current winning trader Raises the price of the acquired commodity by (1 +  ) Stop when all the traders have small surplus

16 Outbidding y ij h ij pjpj (1 +  ) p j h ij pjpj (1 +  ) p j Trader i Item j y kj Trader k Trader i Trader k pjpj y kj

17 Divisible Items Every item may be sold two prices: p j and p j (1 +  ) h ij amount sold at p j (1 +  ) y ij amount sold at p j Price at which item is available p j (1 +  ) y ij h ij

18 Some Details Initialize with p j = 1 for all j X ij = h ij = y ij = 0 Demand set of a trader  D i = { j: v ij / p j = max v ik / p k } Surplus of a trader  r i =  a ij p j -  y ij p j -  h ij p j (1 +  )

19 The Auction Algorithm while  i such that r i >   a ij p j pick j  D i if j is unassigned then get j at price 1 else iff y kj > 0 for some k then outbid k on item j update r i and r k else increase p j by factor (1 +  )  i: y ij = h ij ; h ij = 0; recompute D i ’ s endif endwhile

20 riri rkrk y ij h ij pjpj (1 +  ) p j y ij h ij pjpj (1 +  ) p j h ij y ij pjpj (1 +  ) p j h ij p j = (1 +  ) p j y ij (1 +  ) p j r i =  a ij p j -  y ij p j -  h ij (1 +  ) p j Bidding process: Transfers surplus Reduces it by (1 +  ) Price raise: Increases surplus

21 A Primal-Dual Interpretation Maintains dual feasibility Satisfies complementary slackness Successively improves primal feasibility Stops when primal infeasibility is sufficiently small

22 Analysis Terminates and achieves approximate market clearing If order of bidding is fixed, then time complexity is good

23 Analysis Number of prices raises < O(m/  log (p max )) Bidding in rounds  every bidders bids once in a round  either a price is raised  or r reduces by factor (1 +  )  Gives a bound of O(1 /  2 nm log (a p max / (  a min )) log p max )

24 Aggressive Bidders Bidder i bidding on item j  Raises prices: m /  log (p max )  Knocks out a bidder (say k) Can a bidder get the same item again? Yes: if j  D k  Exhausts surplus Can surplus come again? How many times? A modification  If i is getting j at p j then it upgrades to (1 +  ) p j  If j  D k then k bids back on item immediately and gets it a price (1 +  ) p j

25 Analysis Define a bipartite graph G  (i, j)  G iff j  D i  (j, i)  G iff y kj > 0 and j  D i G is acyclic Three types of assignments  h ij > 0  y ij > 0 and j  D i  y ij > 0 and j  D i BiddersItems i j k j  D i y kj > 0 and j  D i

26 Amortization Define Y = (j, i) : y ij > 0 Bidding  raises prices atmost m /  log (p max ) times adds atmost n new edges in Y  exhausts an edge in Y: n m /  log (p max ) times  reduces surplus to zero atmost n 2 times for every price rise  Demand set computation atmost m /  log (p max ) times requires atmost nm steps  Requires 1/  (n m 2 + m n 2 ) log v max ) steps

27 Conclusions Fast polynomial time algorithm for approximate market equilibrium – linear additive utilities Decentralized auction algorithm No need to reveal private information Natural and practical Conceivable implementation in grid economies using software agents

28 Future Work Fast algorithm for exact market equilibrium (linear utilities) Strongly polynomial time exact equilibrium algorithms Greedy monotone price mechanisms  Separable additive gross substitute utilities  General gross substitute utilities General (concave) utilities


Download ppt "Auction Algorithms for Market Equilibrium Rahul Garg IBM India Research Sanjiv Kapoor Illionis Institute of Technology."

Similar presentations


Ads by Google