Download presentation
Presentation is loading. Please wait.
Published byClarissa McBride Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.