Algorithmic Game Theory and Internet Computing New Market Models and Algorithms Algorithmic Game Theory and Internet Computing Vijay V. Vazirani Georgia Tech
How do we salvage the situation?? Algorithmic ratification of the “invisible hand of the market” How do we salvage the situation??
What is the “right” model??
Linear Fisher Market DPSV, 2002: First polynomial time algorithm Extend to separable, plc utilities??
What makes linear utilities easy? Weak gross substitutability: Increasing price of one good cannot decrease demand of another. Piecewise-linear, concave utilities do not satisfy this.
Piecewise linear, concave utility amount of j
rate = utility/unit amount of j Differentiate rate rate = utility/unit amount of j amount of j
rate = utility/unit amount of j money spent on j
Spending constraint utility function rate = utility/unit amount of j rate $20 $40 $60 money spent on j
Theorem (V., 2002): Spending constraint utilities: 1). Satisfy weak gross substitutability 2). Polynomial time algorithm for computing equilibrium 3). Equilibrium is rational.
An unexpected fallout!! Has applications to Google’s AdWords Market!
Application to Adwords market $20 $40 $60 rate = utility/click rate money spent on keyword j
Is there a convex program for this model? “We believe the answer to this question should be ‘yes’. In our experience, non-trivial polynomial time algorithms for problems are rare and happen for a good reason – a deep mathematical structure intimately connected to the problem.”
Devanur’s program for linear Fisher
C. P. for spending constraint!
EG convex program = Devanur’s program Fisher market with plc utilities Spending constraint market EG convex program = Devanur’s program
Price discrimination markets Business charges different prices from different customers for essentially same goods or services. Goel & V., 2009: Perfect price discrimination market. Business charges each consumer what they are willing and able to pay.
plc utilities
Middleman buys all goods and sells to buyers, charging according to utility accrued. Given p, each buyer picks rate for accruing utility.
Middleman buys all goods and sells to buyers, charging according to utility accrued. Given p, each buyer picks rate for accruing utility. Equilibrium is captured by a rational convex program!
Generalization of EG program works!
V., 2010: Generalize to Continuously differentiable, quasiconcave (non-separable) utilities, satisfying non-satiation.
V., 2010: Generalize to Continuously differentiable, quasiconcave (non-separable) utilities, satisfying non-satiation. Compare with Arrow-Debreu utilities!! continuous, quasiconcave, satisfying non-satiation.
Price discrimination market (plc utilities) Spending constraint market EG convex program = Devanur’s program
EG convex program = Devanur’s program Eisenberg-Gale Markets Jain & V., 2007 (Proportional Fairness) (Kelly, 1997) Price disc. market Spending constraint market Nash Bargaining V., 2008 EG convex program = Devanur’s program
A combinatorial market
A combinatorial market
A combinatorial market
A combinatorial market Given: Network G = (V,E) (directed or undirected) Capacities on edges c(e) Agents: source-sink pairs with money m(1), … m(k) Find: equilibrium flows and edge prices
Equilibrium Flows and edge prices Satisfying: f(i): flow of agent i p(e): price/unit flow of edge e Satisfying: p(e)>0 only if e is saturated flows go on cheapest paths money of each agent is fully spent
Kelly’s resource allocation model, 1997 Mathematical framework for understanding TCP congestion control
Van Jacobson, 1988: AIMD protocol (Additive Increase Multiplicative Decrease)
Van Jacobson, 1988: AIMD protocol (Additive Increase Multiplicative Decrease) Why does it work so well?
Van Jacobson, 1988: AIMD protocol (Additive Increase Multiplicative Decrease) Why does it work so well? Kelly, 1977: Highly successful theory
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) Low & Lapsley, 1999: AIMD + RED converges to equilibrium in limit 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 is to decrease total of 5% flow from rest. p(e):
Kelly & V., 2002: Kelly’s model is a generalization of Fisher’s model.
Kelly & V., 2002: Kelly’s model is a generalization of Fisher’s model. Find combinatorial poly time algorithms!
Kelly & V., 2002: Kelly’s model is a generalization of Fisher’s model. Find combinatorial poly time algorithms! (May lead to new insights for TCP congestion control protocol)
Jain & V., 2005: Strongly polynomial combinatorial algorithm for single-source multiple-sink market
Single-source multiple-sink market Given: Network G = (V,E), s: source Capacities on edges c(e) Agents: sinks with money Find: equilibrium flows and edge prices
Equilibrium Flows and edge prices Satisfying: f(i): flow of agent i p(e): price/unit flow of edge e Satisfying: p(e)>0 only if e is saturated flows go on cheapest paths money of each agent is fully spent
$5 $5
$30 $10 $40
Jain & V., 2005: Strongly polynomial combinatorial algorithm for single-source multiple-sink market Ascending price auction Buyers: sinks (fixed budgets, maximize flow) Sellers: edges (maximize price)
Auction of k identical goods p = 0; while there are >k buyers: raise p; end; sell to remaining k buyers at price p;
Find equilibrium prices and flows
Find equilibrium prices and flows cap(e)
min-cut separating from all the sinks 60 min-cut separating from all the sinks
60
60
Throughout the algorithm: c(i): cost of cheapest path from to sink demands flow
sink demands flow 60
Auction of edges in cut p = 0; while the cut is over-saturated: raise p; end; assign price p to all edges in the cut;
60 50
60 50
60 50 20
60 50 20
60 50 20
60 50 20 nested cuts
Flow and prices will: Saturate all red cuts Use up sinks’ money Send flow on cheapest paths
Exercise: Find the red cuts efficiently!
Convex Program for Kelly’s Model
JV Algorithm primal-dual alg. for nonlinear convex program “primal” variables: flows “dual” variables: prices of edges algorithm: primal & dual improvements Allocations Prices
Rational!!
Other resource allocation markets k source-sink pairs (directed/undirected)
Other resource allocation markets k source-sink pairs (directed/undirected) Branchings rooted at sources (agents) Spanning trees Network coding
Branching market (for broadcasting)
Branching market (for broadcasting)
Branching market (for broadcasting)
Branching market (for broadcasting)
Branching market (for broadcasting) Given: Network G = (V, E), directed 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.
Eisenberg-Gale-type program for branching market s.t. packing of branchings
Eisenberg-Gale-Type Convex Program s.t. packing constraints
Eisenberg-Gale Market A market whose equilibrium is captured as an optimal solution to an Eisenberg-Gale-type program
Other resource allocation markets k source-sink pairs (directed/undirected) Branchings rooted at sources (agents) Spanning trees Network coding
Irrational for 2 sources & 3 sinks $1 $1 $1
Irrational for 2 sources & 3 sinks Equilibrium prices
Max-flow min-cut theorem!
Theorem: Strongly polynomial algs for following markets : 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: Strongly polynomial algs for following markets : 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 theorems): 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.
Chakrabarty, Devanur & V., 2006: 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].
2 source-sink market in directed graphs
2 1
Polytope of feasible flows
LP’s corresponding to facets
$30 $60
Polytope of feasible flows (1, 2) 2 1 (0, 1)
Find the two (one) facets Exponentially many facets! Binary search on
$5 $10
Find relative ‘‘prices’’ of two facets, say Compute duals
Find relative ‘‘prices’’ of two facets, say Compute duals Compute
$5, each
10/2 = $5, each $10, each
$10 $5 $30 $15 $60
$10 $5 $30 $15 $60
$10 $5 $30=$15x2 $15 $60=$20x3
SUA Comb EG[2] Rational EG[2] EG 3-source branching Single-source 2 s-s undir Comb EG[2] 2 s-s dir Rational Fisher EG[2] EG