Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

87
Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani

Transcript of Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Page 1: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Combinatorial Algorithms for Market Equilibria

Vijay V. Vazirani

Page 2: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Theorem: Equilibria exist.

Page 3: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Theorem: Equilibria exist.

Do markets operate at equilibria?

Page 4: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Theorem: Equilibria exist.

Do markets operate at equilibria?

Can equilibria be computed efficiently?

Page 5: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu is highly non-constructive

Page 6: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu is highly non-constructive

“Invisible hand” of the market: Adam Smith

Scarf, 1973: approximate fixed point algs.

Convex programs: Fisher: Eisenberg & Gale, 1957Arrow-Debreu: Newman and Primak, 1992

Page 7: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Used for deciding tax policies, price of new

products etc.

New markets on the Internet

Page 8: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Algorithmic Game Theory

Use powerful techniques from modern algorithmic theory and notions from game theory to address issues raised by Internet.

Combinatorial algorithms for finding market equilibria.

Page 9: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Two Fundamental Models

Fisher’s model

Arrow-Debreu model,

also known as exchange model

Page 10: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Combinatorial Algorithms

Primal-dual schema based algorithms Devanur, Papadimitriou, Saberi & V., 2002

Combinatorial algorithm for Fisher’s model

Auction-based algorithmsGarg & Kapoor, 2004

Approximation algorithms.

Page 11: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Approximation

Find prices s.t. all goods clear

Each buyer get goods providing

at least optimal utility.(1 )

Page 12: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Primal-Dual Schema

Highly successful algorithm design

technique from exact and

approximation algorithms

Page 13: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Exact Algorithms for Cornerstone Problems in P:

Matching (general graph) Network flow Shortest paths Minimum spanning tree Minimum branching

Page 14: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Approximation Algorithms

set cover facility location

Steiner tree k-median

Steiner network multicut

k-MST feedback vertex set

scheduling . . .

Page 15: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Main new idea

Previous: problems captured via

linear programs

DPSV algorithm: problem captured via a

nonlinear convex program

Page 16: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Fisher’s Model n buyers, with specified money, m(i) for buyer i k goods (unit amount of each good) Linear utilities: is utility derived by i

on obtaining one unit of j Total utility of i,

i ij ijj

U u xiju

]1,0[

x

xuuij

ijj iji

Page 17: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Fisher’s Model n buyers, with specified money, m(i) k goods (each unit amount, w.l.o.g.) Linear utilities: is utility derived by i

on obtaining one unit of j Total utility of i,

Find prices s.t. market clears

i ij ijj

U u xiju

xuu ijj iji

Page 18: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Eisenberg-Gale Program, 1959

0:

1:

)(:

..

)(log)(max

xx

xu

ij

i ij

ijj ij

i

ij

j

iui

ts

iuim

Page 19: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

DPSV Algorithm

“primal” variables: allocations of goods

“dual” variables: prices

algorithm: primal & dual improvements

Allocations Prices

Page 20: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Buyer i’s optimization program:

Global Constraint:

Market Equilibrium

Page 21: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

People Goods

$100

$60

$20

$140

Page 22: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Prices and utilities

$100

$60

$20

$140

$20

$40

$10

$60

10

20

4

2

utilities

Page 23: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Bang per buck

$100

$60

$20

$140

$20

$40

$10

$60

10

20

4

2

10/20

20/40

4/10

2/60

Page 24: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Bang per buck

Utility of $1 worth of goods

Buyers will only buy goods providing

maximum bang per buck

Page 25: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Equality subgraph

$100

$60

$20

$140

$20

$40

$10

$60

10

20

4

2

10/20

20/40

4/10

2/60

Page 26: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Equality subgraph

$100

$60

$20

$140

$20

$40

$10

$60

Most desirable goods for each buyer

Page 27: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Any goods sold in equality subgraph make agents happiest

How do we maximize sales in equality subgraph?

Page 28: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Any goods sold in equality subgraph make agents happiest

How do we maximize sales in equality subgraph?

Use max-flow!

Page 29: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Max flow

100

60

20

140

20

40

10

60

infinite capacities

Page 30: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Idea of Algorithm

Invariant: source edges form min-cut

(agents have surplus)

Iterations: gradually raise prices,

decrease surplus

Terminate: when surplus = 0, i.e.,

sink edges also form a min-cut

Page 31: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Ensuring Invariant initially

Set each price to 1/n

Assume buyers’ money integral

Page 32: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

How to raise prices? Ensure equality edges retained

i

j

l

ij il

j l

u u

p p

Page 33: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

How to raise prices? Ensure equality edges retained

i

j

l

ij il

j l

u u

p p

• Raise prices proportionatelyj ij

l il

p u

p u

ij il

j l

u u

p p

Page 34: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

20x

40x

10x

60x

initialize: x = 1

x

Page 35: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

20x

40x

10x

60x

x = 2: another min-cut

x>2: Invariant violated

Page 36: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

40x

80x

20

120

active

frozenreinitialize: x = 1

Page 37: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

50

100

20

120

active

frozen x = 1.25

Page 38: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

50

100

20

120

Page 39: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

50

100

20

120

unfreeze

Page 40: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

50x

100x

20x

120x

x = 1, x

Page 41: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

m

buyers goods

Page 42: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

m p

buyers goods

ensure Invariant

Page 43: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

m p

buyers goodsequality

subgraph ensure Invariant

Page 44: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

m px

x = 1, x

Page 45: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

}{ S( )S

( ) ( ( ))x p S m S

Page 46: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

}{ S( )S

( ) ( ( ))x p S m S freeze S

tight set

Page 47: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

}{ S( )S

prices in S are market clearing

Page 48: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

x = 1, x

S( )S

active

frozen

px

Page 49: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

x = 1, x

S( )S

active

frozen

px

Page 50: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

x = 1, x

S( )S

active

frozen

px

Page 51: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

new edge enters equality subgraph

S( )S

active

frozen

Page 52: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

unfreeze component

active

frozen

Page 53: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

• All goods frozen => terminate

(market clears)

Page 54: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

• All goods frozen => terminate

(market clears)

• When does a new set go tight?

•Solve as parametric cut problem

Page 55: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Termination Prices in S* have denominators

Terminates in max-flows.

,nnU

max { }ij ijU u

2 2Mn

Page 56: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Polynomial time? Problem: very little price increase

between freezings

Page 57: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Polynomial time? Problem: very little price increase

between freezings

Solution: work with buyers having

large surplus

Page 58: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Max flow

100

60

20

140

20

40

10

60

Page 59: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

100

60

20

140

20

40

10

60

20

0

10

60

40

0

Max flow

Page 60: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

surplus(i) = m(i) – f(i)

100

60

20

140

20

40

10

60

20

0

10

60

40

0

40

60

20

70

Page 61: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

surplus(i) = m(i) – f(i)

100

60

20

140

20

40

10

60

20

0

10

60

40

0

40

60

20

70

Surplus vector = (40, 60, 20, 70)

Page 62: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Balanced flow

A max-flow that minimizes l2 norm of

surplus vector

tries to make surpluses as equal as possible

Page 63: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Algorithm

Compute balanced flow

Page 64: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

Active subgraph: Buyers with maximum surplus

Page 65: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

x = 1, x

px

Page 66: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

new edge enters equality subgraph

Page 67: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

Unfreeze buyers having residual path to

active subgraph

Page 68: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

Unfreeze buyers having residual path to

active subgraph

Do they have large surplus?

Page 69: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

f: balanced flow

R(f): residual graph

Theorem: If R(f) has a path from i to j then

surplus(i) > surplus(j)

Page 70: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

New set tight

Page 71: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

active

frozen

New set tight: freeze

Page 72: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Theorem: After each freezing, l2 norm of

surplus vector drops by (1 - 1/n2 ) factor.

Two reasons: total surplus decreasesflow becomes more balanced

Page 73: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Idea of Algorithm

algorithm: primal & dual improvements

measure of progress: l2-norm of surplus vector

Allocations Prices

Page 74: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Polynomial time

2 2( ( log log ))O n n U MnTheorem:

max-flow computations suffice.

Page 75: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Weak gross substitutability

Increasing price of one good cannot decrease

demand for another good.

Page 76: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Weak gross substitutability

Increasing price of one good cannot decrease

demand for another good.

=> never need to decrease

prices (dual variables).

Page 77: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Weak gross substitutability

Increasing price of one good cannot decrease

demand for another good.

=> never need to decrease

prices (dual variables).

Almost all primal-dual algs work this way.

Page 78: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Model

Approximate equilibrium algorithms:

Jain, Mahdian & Saberi, 2003:

Use DPSV as black box.

Devanur & V., 2003: More efficient, by

opening DPSV.

Page 79: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Garg & Kapoor, 2004Auction-based algorithm

Start with very low prices

Keep increasing price of good that is in demand

B has excess money. Favorite good: g Currently at price p and owned by B’

B outbids B’

Page 80: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

(1 )p

p

B 'B

p(1 )p

Outbid

Page 81: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Auction-based algorithm Go in rounds:

In each round, total surplus decreases by factor

Hence iterations suffice, M= total moneytotal money

1 2, ,... nB B B

(1 )

(1 )log M

Page 82: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Model

Start with all prices 1 Allocate money to agents (initial endowment) Perform outbid and update agents’ money

Page 83: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Model

Start with all prices 1 Allocate money to agents (initial endowment) Perform outbid and update agents’ money

Any good with price >1 is fully sold

Page 84: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Arrow-Debreu Model

Start with all prices 1 Allocate money to agents (initial endowment) Perform outbid and update agents’ money

Any good with price >1 is fully sold

Eventually every good will have price >1

maxmax

min minij

ij

uprice

price u

Page 85: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Garg, Kapoor & V., 2004:

Auction-based algorithms for

additively separable concave utilities

satisfying weak gross substitutability

Page 86: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Kapoor, Mehta & V., 2005:

Auction-based algorithm for

a (restricted) production model

Page 87: Combinatorial Algorithms for Market Equilibria Vijay V. Vazirani.

Q: Distributed algorithm for equilibria?

Appropriate model?

Primal-dual schema operates via

local improvements