Algorithmic Game Theory 3) New Market Models, and Internet Computing Resource Allocation Markets Vijay V. Vazirani Fisher’s Model n buyers, with specified money, m(i) for buyer i k goods (unit amount of each good) U u x Linear utilities: uij is utility derived by i on obtaining one unit of j Total utility of i, i u u x x [0,1] i ij j ij ij j ij ij Fisher’s Model n buyers, with specified money, m(i) k goods (each unit amount, w.l.o.g.) U u x Linear utilities: uij is utility derived by i on obtaining one unit of j Total utility of i, i u u x i j ij ij Find prices s.t. market clears j ij ij Eisenberg-Gale Program, 1959 max m(i ) log ui i s.t. i : ui j u ij x ij j : i x ij 1 ij : x ij 0 Via KKT Conditions can establish: Optimal solution gives equilibrium allocations Lagrange variables give prices of goods Eisenberg-Gale program helps establish: 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!! Kelly’s resource allocation model, 1997 Mathematical framework for understanding TCP congestion control Kelly’s model m(1) s1 c (e) t Given: 2 network G = (V,E) (directed or undirected) capacities on edges t 1 source-sink pairs (agents) m(i): s 2 m ( 2) money agent i is willing to pay Kelly’s model s 1 t Network determines: 2 f(i): flow of agent i Assume utility u(i) = m(i) log f(i) t s 2 1 Total utility is additive Convex Program for Kelly’s Model max m(i ) log f (i ) i s.t. i : f (i ) p f p i e : flow(e) c(e) i, p : f p i 0 Kelly’s model s 1 p(e) t 2 Lagrange variables: p(e): price/unit flow t s 2 1 Kelly’s model s 1 Optimum flow and edge prices are in equilibrium: p(e) t 2 1). p(e)>0 only if e is saturated 2) flows go on cheapest paths 3) money of each agent is fully used t 1 Let rate(i) = cost of cheapest path for i s 2 m(i) = f(i) rate(i) Kelly’s model s 1 Optimum flow and edge prices are in equilibrium: p(e) t 2 1). p(e)>0 only if e is saturated 2) flows go on cheapest paths 3) money of each agent is fully used t 1 Let rate(i) = cost of cheapest path for i s 2 f(i)’s and rate(i)’s are unique! TCP Congestion Control f(i): source rate p(e): prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas) TCP Congestion Control f(i): source rate prob. of packet loss (in TCP Reno) p(e): 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. TCP Congestion Control f(i): source rate p(e): prob. of packet loss (in TCP Reno) queueing delay (in TCP Vegas) Low, Doyle, Paganini: continuous time algs. for computing equilibria (not poly time). TCP Congestion Control f(i): source rate prob. of packet loss (in TCP Reno) p(e): 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. TCP Congestion Control f(i): source rate p(e): 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 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 $1 $1 s 2 1 1 t s 1 2 t t 1 1 2 2 $1 Irrational for 2 sources & 3 sinks s 1 3 1 t s 1 3 1 3 2 Equilibrium prices 2 t t 1 2 1 source & multiple sinks 2 source-sink pairs 1 t 1 $10 2 s 2 t 2 $10 1 $5 t 1 $10 t $10 2 s 2 $5 2 1 t 1 $120 10 2 s 2 t 2 $10 $30 1 $10 t 1 $120 2 s 2 $40 t 2 $10 Jain & V., 2005: strongly poly alg Primal-dual algorithm Usual: linear programs & LP-duality This: convex programs & KKT conditions Ascending price auction Buyers: sinks (fixed budgets, maximize flow) Sellers: edges (maximize price) t s 1 t rate(i): cost of cheapest 2 t 3 s t t i 4 path t t s 1 t 2 t 3 t 4 t t s Capacity of 1 t 2 t 3 t i t edge = t 4 m(i) rate(i ) t t 1 t s min s-t cut 2 t 3 t 4 t t 1 t s p 2 t 3 t 4 t t 1 t s p 2 t 3 t 4 t t s t p p 2 1 t 3 t 4 rate(2) 0 p 0 t t s t p 0 1 t 2 p 3 t 4 rate(2) p 0 t t s t 1 t 2 3 t 4 rate(2) p 0 p 1 p rate(1) rate(3) p p 0 0 1 t t s t p 0 1 t 2 p 1 3 t p 4 t t s t p 0 1 t 2 p 1 3 t p 4 nested cuts 2 t t s t 1 t 2 3 t 4 rate(2) rate(1) rate(3) p 0 p 1 p 2 rate(4) p 0 p p 0 1 p pp 0 1 2 Find s-t max flow Flow and prices will: Saturate all red cuts Use up sinks’ money Send flow on cheapest paths a 1 t 1 $120 t $10 2 s 2 b 2 t a 1 120 1 p t 2 s 10 2 p b t 2 p t a 1 120 1 2 10 t s t 10 10 1 2 2 b p 10 t a 120 10 p 1 1 2 t s t 1 2 2 b p 0 10 p t a 1 120 3 10 30 1 2 t s t 1 2 2 b p 0 10 p 30 $30 1 $10 t 1 $120 2 s 2 $40 t 2 $10 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 S V 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. Eisenberg-Gale-type program for branching market max iS m(i) log bi 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 i m(i) log ui 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 S T define v(S) to be the max-flow possible from s to sinks in S. Then v is a submodular function, i.e., for A B T, t A, v( B t ) v( B) v( A t ) v( A) Simpler convex program for single-source market max m(i ) log f (i ) s.t. i S T : iS f (i ) v( S ) i : f (i ) 0 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, directed 2 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, directed 2 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 s2 2 1 s1 t1 t2 s2 s1 t1 t2 s2 s1 t1 t2 f2 Polytope of feasible flows f1 2 f 2 8 f1 f 2 5 f1 4 f1 LP’s corresponding to facets max f1 f 2 min c(e) xe s.t. s.t. capacity d ( s1 t1 ) 1 e d ( s2 t 2 ) f1 2 f 2 8 s2 xe 1 t1 s1 t2 f1 f 2 5 s2 xe 1/ 2 xe 1 s1 t t 2 1 s2 t1 s1 t2 $60 $30 For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say p1 , p2 $5 $10 For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say p1 , p2 Exponentially many facets! Binary search on For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say p1 , p2 Exponentially many facets! Binary search on Compute duals x1 , x2 s2 xe 1 t1 s1 t2 s2 xe 1/ 2 xe 1 s1 t t 2 1 For any m(1), m(2), need to ‘‘price’’ at most two facets, with prices say p1 , p2 Exponentially many facets! Binary search on Compute duals Compute x1 , x2 p(e) p1 x1 (e) p2 x2 (e) s2 $5, each t1 s1 t2 s2 10/2 = $5, each $10, each s1 t t 2 1 s2 $10 $5 s1 t1 $15 t2 $60 $30 s2 $10 $5 s1 t1 $15 t2 $60 $30 s2 $10 $5 s1 t1 $30=$15x2 $15 t2 $60=$20x3 3-source branching Single-source 2 s-s undir SUA Comb EG[2] 2 s-s dir Rational Fisher EG[2] EG t t s 1 t 2 t 3 t 4 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 equilibrium utility ( I ) eff ( M ) min I max utility ( I ) Efficiency equilibrium utility ( I ) eff ( M ) min I max utility ( I ) Rich classification! Market Efficiency Single-source 1 3-source branching 1/ 2 k source-sink undirected 1/(2k 1) l.b. 1/(k 1) 2 source-sink directed arbitrarily small Other properties: Fairness (max-min + min-max fair) Competition monotonicity Open issues Strongly poly algs for approximating nonlinear convex programs equilibria Insights into congestion control protocols? The End
© Copyright 2026 Paperzz