Algorithmic Game Theoryand Internet Computing
Vijay V. Vazirani
Georgia Tech
Combinatorial Approximation
Algorithms for Convex Programs?!
Rational convex program
Always has a rational solution,
using polynomially many bits,
if all parameters are rational.
Some important problems in mathematical
economics and game theory are captured by
rational (nonlinear) convex programs.
A recent development
Combinatorial exact algorithms for
these problems and hence for optimally
solving their convex programs.
General equilibrium theory
A central tenet
Prices are such that demand equals supply, i.e.,
equilibrium prices.
Easy if only one good
Supply-demand curves
Irving Fisher, 1891
Defined a fundamental
market model
utility
Concave utility function
(for good j)
amount of j
( )i ij ijj G
u f x
total utility
For given prices,find optimal bundle of goods
1p 2p3p
Several buyers with different utility functions and moneys.
Several buyers with different utility functions and moneys.
Find equilibrium prices.
1p 2p3p
Combinatorial Algorithm for Linear Case of Fisher’s Model
Devanur, Papadimitriou, Saberi & V., 2002
Using primal-dual paradigm
Combinatorial Algorithm for Linear Case of Fisher’s Model
Devanur, Papadimitriou, Saberi & V., 2002
Using primal-dual paradigm
Solves Eisenberg-Gale convex program
Eisenberg-Gale Program, 1959
max log
. .
:
: 1
: 0
i ii
i ij ijj
iji
ij
m v
s t
i v
j
ij
u xx
x
Eisenberg-Gale Program, 1959
max log
. .
:
: 1
: 0
i ii
i ij ijj
iji
ij
m v
s t
i v
j
ij
u xx
x
prices pj
Why remarkable?
Equilibrium simultaneously optimizes
for all agents.
How is this done via a single objective function?
Why seek combinatorial algorithms?
Why seek combinatorial algorithms?
Structural insightsHave led to progress on related problemsBetter understanding of solution concept
Useful in applications
Auction for Google’s TV ads
N. Nisan et. al, 2009:
Used market equilibrium based approach.
Combinatorial algorithms for linear case
provided “inspiration”.
utility
Piecewise linear, concave
amount of j
Additively separable over goods
Long-standing open problem
Complexity of finding an equilibrium for
Fisher and Arrow-Debreu models under
separable, plc utilities?
How do we build on solution to linear case?
utility
amount of j
Generalize EG program to piecewise-linear, concave utilities?
ijkl
ijkuutility/unit of j
,
,
max log
. .
:
: 1
:
: 0
i ii
i ijk ijkj k
iji k
ijk ijk
ijk
m v
s t
i v
j
ijk
ijk
u xx
x l
x
Generalization of EG program
,
,
max log
. .
:
: 1
:
: 0
i ii
i ijk ijkj k
iji k
ijk ijk
ijk
m v
s t
i v
j
ijk
ijk
u xx
x l
x
Generalization of EG program
Long-standing open problem
Complexity of finding an equilibrium for Fisher and Arrow-Debreu models under separable, plc utilities?
2009: Both PPAD-complete (using combinatorial insights from [DPSV])
Chen, Dai, Du, TengChen, TengV., Yannakakis
utility
Piecewise linear, concave
amount of j
Additively separable over goods
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.
rate
rate = utility/unit amount of j
amount of j
Differentiate
rate
amount of j
rate = utility/unit amount of j
money spent on j
rate
rate = utility/unit amount of j
money spent on j
Spending constraint utility function
$20 $40 $60
Theorem (V., 2002): Spending constraint utilities: 1). Satisfy weak gross substitutability
2). Polynomial time algorithm for computing equilibrium.
An unexpected fallout!!
Has applications to
Google’s AdWords Market!
rate
rate = utility/click
money spent on keyword j
Application to Adwords market
$20 $40 $60
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.”
,
max log
. .
:
:
: 0
ijij
i j j
j iji
ij ij
ij
ub
p
s t
j p b
i b m
ij b
Devanur’s program for linear Fisher
max log
. .
:
:
:
: 0
ijkijk
ijk j
j ijkik
ijk ijk
ijk ijk
ijk
ub
p
s t
j p b
i b m
ijk b l
ijk b
C. P. for spending constraint!
EG convex program = Devanur’s program
Fisher marketwith plc utilities
Spending constraint market
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, there is a well defined rate for each buyer.
Middleman buys all goods and sells to buyers,
charging according to utility accrued.Given p, there is a well defined rate for each buyer.
Equilibrium is captured by a convex program Efficient algorithm for equilibrium
Middleman buys all goods and sells to buyers,
charging according to utility accrued.Given p, there is a well defined rate for each buyer.
Equilibrium is captured by a convex program Efficient algorithm for equilibrium
Market satisfies both welfare theorems!
,
,
max log
. .
:
: 1
:
: 0
i ii
i ijk ijkj k
iji k
ijk ijk
ijk
m v
s t
i v
j
ijk
ijk
u xx
x l
x
Generalization of EG program works!
EG convex program = Devanur’s program
Price discrimination market(plc utilities)
Spending constraint market
Nash bargaining game, 1950
Captures the main idea that both players
gain if they agree on a solution.
Else, they go back to status quo.
Example
Two players, 1 and 2, have vacation homes:
1: in the mountains
2: on the beach
Consider all possible ways of sharing.
Utilities derived jointly
1v
2v
S : convex + compact
feasible set
Disagreement point = status quo utilities
1v
2v
1c
2c
S
Disagreement point = 1 2( , )c c
Nash bargaining problem = (S, c)
1v
2v
1c
2c
S
Disagreement point = 1 2( , )c c
Nash bargaining
Q: Which solution is the “right” one?
Solution must satisfy 4 axioms:
Pareto optimality
Invariance under affine transforms
Symmetry
Independence of irrelevant alternatives
Thm: Unique solution satisfying 4 axioms
1 2( , ) 1 1 2 2( , ) max {( )( )}v v SN S c v c v c
1v
2v
1c
2c
S
Generalizes to n-players
Theorem: Unique solution
1 1( , ) max {( ) ... ( )}v S n nN S c v c v c
Nash bargaining solution is
optimal solution to convex program:
max log( )
. .
i ii
v c
s t v S
Nash bargaining solution is
optimal solution to convex program:
Polynomial time separation oracle
max log( )
. .
i ii
v c
s t v S
Q: Compute solution combinatoriallyin polynomial time?
How should they exchange their goods?
State as a Nash bargaining game
: (.,.,.)
: (.,.,.)
: (.,.,.)
f
b
m
u R
u R
u R
(1, 0,0)
(0, 1,0)
(0, 0,1)
f f
b b
m m
c u
c u
c u
S = utility vectors obtained by distributing goods among players
Special case: linear utility functions
: (.,.,.)
: (.,.,.)
: (.,.,.)
f
b
m
u R
u R
u R
(1, 0,0)
(0, 1,0)
(0, 0,1)
f f
b b
m m
c u
c u
c u
S = utility vectors obtained by distributing goods among players
ADNB
B: n players with disagreement points, ci
G: g goods, unit amount each
S = utility vectors obtained by distributing
goods among players
0i ij ij ijj G
v u x x
Convex program for ADNB
max log( )
. .
:
: 1
: 0
i ii
i ij ijj
iji
ij
v c
s t
i v
j
ij
u xx
x
Theorem (V., 2008)
Nash bargaining program is rational.
Theorem (V., 2008)
Nash bargaining solution is rational.
Combinatorial polynomial time algorithm
for finding it.
Game-theoretic properties of NB games -- “stress tests”
Chakrabarty, Goel, V. , Wang & Yu, 2008:
Efficiency (Price of bargaining)Fairness Full competitiveness
An application (Lucent)
“fair” throughput problem on a
wireless channel.
EG convex program = Devanur’s program
Price disc. market
Spending constraint market
ADNB
EG convex program = Devanur’s program
Price disc. market
Spending constraint market
Kelly, 1997: proportional fairness Jain & V., 2007: Eisenberg-Gale markets
ADNB
A new development
Orlin, 2009: Strongly polynomial algorithm
for Fisher’s linear case.
Open: For rest.
AGT’s gift to theory of algorithms!
New complexity classes: PPAD, FIXPStudy complexity of total problems
A new algorithmic directionCombinatorial algorithms for convex programs
Nonlinear programs with rational solutions!
Open
Nonlinear programs with rational solutions!
Solvable combinatorially!!
Open
Primal-Dual Paradigm
Combinatorial Optimization (1960’s & 70’s):
Integral optimal solutions to LP’s
Primal-Dual Paradigm
Combinatorial Optimization (1960’s & 70’s):
Integral optimal solutions to LP’s
Approximation Algorithms (1990’s):
Near-optimal integral solutions to LP’s
Primal-Dual Paradigm
Combinatorial Optimization (1960’s & 70’s):
Integral optimal solutions to LP’s
Approximation Algorithms (1990’s):
Near-optimal integral solutions to LP’s
Algorithmic Game Theory (New Millennium):
Rational solutions to nonlinear convex programs
Primal-Dual Paradigm
Combinatorial Optimization (1960’s & 70’s):
Integral optimal solutions to LP’s
Approximation Algorithms (1990’s):
Near-optimal integral solutions to LP’s
Algorithmic Game Theory (New Millennium):
Rational solutions to nonlinear convex programs
Approximation algorithms for convex programs?!
Extending primal-dual paradigm to framework of
convex programs and KKT conditions
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
Main point of departure
Complementary slackness conditions:
involve primal or dual variables, not both.
KKT conditions: involve primal and dual
variables simultaneously.
KKT conditions
1. : 0
2. : 0 1
3. , :( )
4. , : 0( )
j
j iji
ij i
j
ij ijij jij
j
j p
j p x
u ui j
p m i
u xui j x
p m i
Primal-dual algorithms so far
Raise dual variables greedily. (Lot of effort spent
on designing more sophisticated dual processes.)
Primal-dual algorithms so far
Raise dual variables greedily. (Lot of effort spent
on designing more sophisticated dual processes.)
Only exception: Edmonds, 1965: algorithm
for weight matching.
Primal-dual algorithms so far
Raise dual variables greedily. (Lot of effort spent
on designing more sophisticated dual processes.)
Only exception: Edmonds, 1965: algorithm
for weight matching.
Otherwise primal objects go tight and loose.
Difficult to account for these reversals
in the running time.
Our algorithms
Dual variables (prices) are raised greedily
Our algorithms
Dual variables (prices) are raised greedily
Yet, primal objects go tight and looseBecause of enhanced KKT conditions
Our algorithms
Dual variables (prices) are raised greedily
Yet, primal objects go tight and looseBecause of enhanced KKT conditions
New algorithmic ideas are needed!