Upload
blaise-logan
View
218
Download
0
Embed Size (px)
DESCRIPTION
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
Citation preview
Algorithmic Game Theoryand Internet Computing
Vijay V. Vazirani
3) New Market Models,
Resource Allocation Markets
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
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
Eisenberg-Gale Program, 1959
max ( ) log
. .
:
: 1
: 0
ii
i ij ijj
iji
ij
m i u
s t
i u
j
ij
u xx
x
Via KKT Conditions can establish:
Optimal solution gives equilibrium allocations
Lagrange variables give prices of goods
Equilibrium exists (under mild conditions) Equilibrium utilities and prices are unique
Eisenberg-Gale program helps establish:
Equilibrium exists (under mild conditions) Equilibrium utilities and prices are unique Rational!!
Eisenberg-Gale program helps establish:
Kelly’s resource allocation model, 1997
Mathematical framework for understanding
TCP congestion control
Kelly’s model
Given:
network G = (V,E)
(directed or undirected)
capacities on edges
source-sink pairs (agents)
m(i): money agent i is
willing to pay
)1(m
t1
s2
t2)(ecs1
)2(m
Kelly’s model
Network determines:
f(i): flow of agent i
Assume utility u(i) = m(i) log f(i)
Total utility is additive
t1
s2
t2s1
Convex Program for Kelly’s Model
0:,
)()(:
)(:..
)(log)(max
f
f
p
i
p
p
i
i
pi
eceflowe
ifits
ifim
Kelly’s model
t1
s2
t2)(eps1
Lagrange variables:
p(e): price/unit flow
Kelly’s model
t1
s2
t2)(eps1
Optimum flow and edge prices
are in equilibrium:
1). p(e)>0 only if e is saturated
2) flows go on cheapest paths
3) money of each agent is fully used
Let rate(i) = cost of cheapest path for i
m(i) = f(i) rate(i)
Kelly’s model
t1
s2
t2)(eps1
Optimum flow and edge prices
are in equilibrium:
1). p(e)>0 only if e is saturated
2) flows go on cheapest paths
3) money of each agent is fully used
Let rate(i) = cost of cheapest path for i
f(i)’s and rate(i)’s are unique!
TCP Congestion Control
f(i): source rate prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas)
p(e):
TCP Congestion Control f(i): source rate prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas)
Kelly: Equilibrium flows are proportionally fair: only way of adding 5% flow to someone’s dollar is to decrease 5% flow from someone else’s dollar.
p(e):
TCP Congestion Control
f(i): source rate prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas)
Low, Doyle, Paganini: continuous time algs. for computing equilibria (not poly time).
p(e):
TCP Congestion Control f(i): source rate prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas)
Low, Doyle, Paganini: continuous time algs. for computing equilibria (not poly time).
AIMD + RED converges to equilibrium primal-dual (source-link) alg.
p(e):
TCP Congestion Control f(i): source rate prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas)
Low, Doyle, Paganini: continuous time algs. for computing equilibria (not poly time).
FAST: for high speed networks with large bandwidth
p(e):
Combinatorial Algorithms
Devanur, Papadimitriou, Saberi & V., 2002: for Fisher’s linear utilities case
Kelly & V., 2002: Kelly’s model is a generalization of Fisher’s model.
Find combinatorial poly time algorithms!
Irrational for 2 sources & 3 sinks
s1 t1
1
s2
t2
1
t21 2
$1 $1
$1
Irrational for 2 sources & 3 sinks
s1 t1
1
s2
t2
1
t2
313
3
Equilibrium prices
1 source & multiple sinks 2 source-sink pairs
s
t1
t2
2
2
110$
10$
s
t1
t2
2
2
1 10$
10$
$5
$5
s
t1
t2
2
2
1 10$
10$
120$
s
t1
t2
2
2
1 120$
10$
$10
$40
$30
Jain & V., 2005: strongly poly alg
Primal-dual algorithmUsual: linear programs & LP-dualityThis: convex programs & KKT conditions
Ascending price auctionBuyers: sinks (fixed budgets, maximize flow)Sellers: edges (maximize price)
st1
t2
t3
t4
rate(i): cost of cheapest path ts i
st1
t2
t3
t4
t
st1
t2
t3
t4
t
Capacity of edge =tt i
)()(irate
im
st1
t2
t3
t4
t
min s-t cut
st1
t2
t3
t4
t
p
st1
t2
t3
t4
t
p
st1
t2 t3
t4
t
pp 0
prate0
)2(
st1
t2 t3
t4
t
p0
p prate0
)2(
st1
t2 t3
t4
t
p0
p1
prate0
)2(
ppraterate10
)3()1(
st1
t2 t3
t4
t
p0
p1
p
st1
t2 t3
t4
t
p0
p1 p
2 nested cuts
st1
t2 t3
t4
t
p0
p1 p
2
prate0
)2(
ppraterate10
)3()1(
ppprate210
)4(
Find s-t max flow
Flow and prices will:
Saturate all red cutsUse up sinks’ moneySend flow on cheapest paths
s
t1
t2
2
2
1120$
10$
a
b
s
t1
t2
2
2
1 p120
p10
a
b
t
p
s
t1
t2
2
2
1 10120
11010
a
b
t
10p
s
t1
t2
2
2
1 p10120
1
a
b
t
100p p
s
t1
t2
2
2
1 33010
120
1
a
b
t
100p 30p
s
t1
t2
2
2
1 120$
10$
$10
$40
$30
Rational!!
Max-flow min-cut theorem
Other resource allocation markets
2 source-sink pairs (directed/undirected) Branchings rooted at sources (agents)
Branching market (for broadcasting) Given: Network G = (V, E)
edge capacities sources, money of each source
Find: edge prices and a packing of branchings rooted at sources s.t.
p(e) > 0 => e is saturated each branching is cheapest possible money of each source fully used.
S V
Eisenberg-Gale-type program for branching market
max ( ) log ii Sm i b
s.t. packing of branchings
Other resource allocation markets
2 source-sink pairs (directed/undirected) Branchings rooted at sources (agents) Spanning trees Network coding
Eisenberg-Gale-Type Convex Program
max ( ) log iim i u
s.t. packing constraints
Eisenberg-Gale Market
A market whose equilibrium is captured as an optimal solution to an Eisenberg-Gale-type program
Megiddo, 1974: Let T = set of sinks (agents)
For define v(S) to be the max-flow possible from s to sinks in S.
Then v is a submodular function, i.e., for
TS
)()()()(,
,
AvtAvBvtBvAt
TBA
Simpler convex program for single-source market
0)(:
)()(:
..)(log)(max
ifi
SvifTS
tsifim
Si
i
Submodular Utility Allocation Market
Any market which has simpler program and v is submodular
Submodular Utility Allocation Market
Any market which has simpler program and v is submodular
Theorem: Strongly polynomial algorithm for SUA markets.
Submodular Utility Allocation Market Any market which has simpler program and v is submodular
Theorem: Strongly polynomial algorithm for SUA markets.
Corollary: Rational!!
Theorem: Following markets are SUA:2 source-sink pairs, undirected (Hu, 1963)spanning tree (Nash-William & Tutte, 1961)2 sources branching (Edmonds, 1967 + JV, 2005)
3 sources branching: irrational
Theorem: Following markets are SUA:2 source-sink pairs, undirected (Hu, 1963)spanning tree (Nash-William & Tutte, 1961)2 sources branching (Edmonds, 1967 + JV, 2005)
3 sources branching: irrational
Open (no max-min thoerems):2 source-sink pairs, directed2 sources, network coding
Theorem: Following markets are SUA:2 source-sink pairs, undirected (Hu, 1963)spanning tree (Nash-William & Tutte, 1961)2 sources branching (Edmonds, 1967 + JV)
3 sources branching: irrational
Open (no max-min thoerems):2 source-sink pairs, directed2 sources, network coding
Chakrabarty, Devanur & V., 2006
EG[2]: Eisenberg-Gale markets with 2 agents
Theorem: EG[2] markets are rational.
EG[2]: Eisenberg-Gale markets with 2 agents
Theorem: EG[2] markets are rational.
Combinatorial EG[2] markets: polytope of feasible utilities can be described via combinatorial LP.
Theorem: Strongly poly alg for Comb EG[2]. Using Tardos, 1986.
2 source-sink market in directed graphs
2s
1s 1t
2t
2
1
1s
2t
2s
1t
1s
2t
2s
1t
1f
2fPolytope of feasible flows
1 4f
1 2 5f f
1 22 8f f
LP’s corresponding to facets
1 2max. .
f fs tcapacity
1 1
2 2
min ( )
. .( ) 1( )
ee
c e x
s td s td s t
1 22 8f f
1s
2s
2t
1t
1ex
1 2 5f f
2s
t1
t2
1s
1/ 2ex
1ex
$30
$60
1s 1t
2t
2s
For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say 1 2,p p
$10
$5
For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say
Exponentially many facets! Binary search on
1 2,p p
For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say
Exponentially many facets! Binary search on
Compute duals
1 2,p p
1 2,x x
1s
2s
2t
1t
1ex
2s
t1
t2
1s
1/ 2ex
1ex
For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say
Exponentially many facets! Binary search on
Compute duals
Compute
1 1 2 2( ) ( ) ( )p e p x e p x e
1 2,p p
1 2,x x
1s
2s
2t
1t
$5, each
2s
t1
t2
1s
10/2 = $5, each
$10, each
$30
$60
$5$10
$15
1s
2s
1t
2t
$30
$60
$5$10
$15
1s
2s
2t
1t
$30=$15x2
$60=$20x3
$5$10
$15
1s
2s
2t
1t
EG
Rational
Comb EG[2]
SUA
EG[2]
3-source branching
Fisher
2 s-s undir
2 s-s dir
Single-source
st1
t2
t3
t4
t
Observe: Equilibrium is always an s-t max-flow
Efficiency of Markets ‘‘price of capitalism’’ Agents:
different abilities to control prices idiosyncratic ways of utilizing resources
Q: Overall output of market when forced to operate at equilibrium.
Efficiency
( )( ) minmax ( )I
equilibrium utility Ieff Mutility I
Efficiency
Rich classification!
( )( ) minmax ( )I
equilibrium utility Ieff Mutility I
1/(2 1)k
Market EfficiencySingle-source 1
3-source branching
k source-sink undirected
2 source-sink directed arbitrarily small
1/ 2
. . 1/( 1)l b k
Other properties:
Fairness (max-min + min-max fair) Competition monotonicity
Open issues
Strongly poly algs for approximatingnonlinear convex programsequilibria
Insights into congestion control protocols?
The End