Loading in 5 sec....

Auction Algorithms for Market EquilibriumPowerPoint Presentation

Auction Algorithms for Market Equilibrium

- 51 Views
- Uploaded on
- Presentation posted in: General

Auction Algorithms for Market Equilibrium

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Auction Algorithms for Market Equilibrium

Rahul Garg

IBM India Research

Sanjiv Kapoor

Illionis Institute of Technology

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

- There are n buyers and m sellers
- Each seller has exactly one commodity(seller j has aj amount of commodity j)
- Buyers have only money(buyer i has ei units of money)
- Sellers want only money, buyers want only commodities

- Buyers have utilities on commodity bundlesui: R+m R+The utility function ui 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

- There are n traders and m commodities
- Each trader has initial endowments of commodities aij = amount of commodity j with trader i
- Traders have utilities on commodity bundlesui: R+m R+The utility function ui 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

- Commodities are divisible
- xij: the amount of commodity j with trader i after the trade
- Commodity j is tagged with a price pj
- xij is a solution to the optimization problem
- No excess or deficiency of any commodity

- No incentive for a trade
- No deficiency or surplus of any commodity
- p1, p2, …, pm 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 pj / pm
- Not an optimization problem

- Posed by
- 1891Fisher
- 1894Walras (Walrasian Equilibrium)

- Existence
- 1954Arrow and Debreu

- Computation
- Hydraulic apparatus by Fisher
- Walrasian tatonnement
- Convergence?
- Polynomial time algorithms?

- 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

- Devanur et al. 2002
- Fisher model, separable additive and linear utilities
- Combinatorial algorithm based on max flows
- Complexity: n4/ max-flow computations ~ n7/

- 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: n4 L

- Centralized
- Slow
- Very difficult to define and report utility functions
- Impractical

- Fisher and General Walrasian model
- Additive linear utilities
- Approximation algorithm
- Decentralized and distributed
- Very simple
- Natural auction interpretation
- Complexity: 1/ (n m2 + m n2) log vmax steps

- Linear, additive utilities

- A family of LPs
- pj are market clearing prices iff there is a dual optimal with = 0

Search for p such that optimal dual has = 0

- Fix a bid increment factor (1 + )
- Start with low prices
- A trader with “sufficient” surplus money finds its best commodity
- a commodity that maximizes vij / pj

- 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

Trader i

Item j

Trader k

pj

ykj

Trader i

(1 + ) pj

hij

yij

pj

Trader k

(1 + ) pj

hij

ykj

pj

- Every item may be sold two prices: pj and pj (1 + )
- hij amount sold at pj (1 + )
- yij amount sold at pj
- Price at which item is available pj (1 + )

hij

yij

- Initialize with pj = 1 for all j
- Xij = hij = yij = 0
- Demand set of a trader
- Di = { j: vij / pj = max vik / pk }

- Surplus of a trader
- ri = aij pj - yij pj - hij pj (1 + )

while i such that ri > aij pjpick j Diif j is unassigned thenget j at price 1else iff ykj > 0 for some k thenoutbid k on item jupdate ri and rkelse increase pj by factor (1 + )i: yij = hij; hij = 0;recompute Di’sendifendwhile

ri

rk

(1 + ) pj

(1 + ) pj

hij

hij

pj

yij

pj

yij

hij

yij

(1 + ) pj

(1 + ) pj

pj

hij

yij

pj = (1 + ) pj

- ri = aij pj - yij pj
- - hij(1 + ) pj
- Bidding process:
- Transfers surplus
- Reduces it by (1 + )
- Price raise:
- Increases surplus

- Maintains dual feasibility
- Satisfies complementary slackness
- Successively improves primal feasibility
- Stops when primal infeasibility is sufficiently small

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

- Number of prices raises < O(m/ log (pmax))
- 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 pmax / ( amin)) log pmax)

- Bidder i bidding on item j
- Raises prices: m / log (pmax)
- Knocks out a bidder (say k)
- Can a bidder get the same item again?
- Yes: if j Dk

- Exhausts surplus
- Can surplus come again? How many times?

- A modification
- If i is getting j at pj then it upgrades to (1 + ) pj
- If j Dk then k bids back on item immediately and gets it a price (1 + ) pj

- Define a bipartite graph G
- (i, j) G iff j Di
- (j, i) G iff ykj > 0 and j Di

- G is acyclic
- Three types of assignments
- hij > 0
- yij > 0 and j Di
- yij > 0 and j Di

Bidders

Items

i

j Di

j

k

ykj > 0 and j Di

- Define Y = (j, i) : yij > 0
- Bidding
- raises prices
- atmost m / log (pmax) times
- adds atmost n new edges in Y

- exhausts an edge in Y: n m / log (pmax) times
- reduces surplus to zero
- atmost n2 times for every price rise

- Demand set computation
- atmost m / log (pmax) times
- requires atmost nm steps

- Requires 1/ (n m2 + m n2) log vmax) steps

- raises prices

- 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

- 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