Combinatorial Approximation
Algorithmic Game Theory
Algorithms
for Convex
Programs?!
and Internet
Computing
Vijay V. Vazirani
Georgia Tech
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
Concave utility function
(for good j)
utility
amount of j
total utility
ui fij (xij )
jG
For given prices,
find optimal bundle of goods
p1
p2
p3
Several buyers with
different utility functions and moneys.
Several buyers with
different utility functions and moneys.
Find equilibrium prices.
p1
p2
p3
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 mi log vi
i
s.t.
i : vi j u ij x ij
x 1
ij : x 0
j :
ij
i
ij
Eisenberg-Gale Program, 1959
max mi log vi
i
s.t.
i : vi j u ij x ij
x 1
ij : x 0
j :
ij
i
ij
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 insights
Have
led to progress on related problems
Better 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”.
Piecewise linear, concave
utility
Additively separable
over goods
amount of j
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?
Generalize EG program to
piecewise-linear, concave utilities?
utility/unit of j
utility
u
ijk
l
ijk
amount of j
Generalization of EG program
max mi log vi
i
s.t.
i :
j :
ijk :
ijk :
vi j ,k u ijk x ijk
x 1
x l
x 0
i ,k
ijk
ijk
ij
ijk
Generalization of EG program
max mi log vi
i
s.t.
i :
j :
ijk :
ijk :
vi j ,k u ijk x ijk
x 1
x l
x 0
i ,k
ijk
ijk
ij
ijk
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, Teng
Chen, Teng
V., Yannakakis
Piecewise linear, concave
utility
Additively separable
over goods
amount of j
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.
Differentiate
rate = utility/unit amount of j
rate
amount of j
rate = utility/unit amount of j
rate
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.
An unexpected fallout!!
Has applications to
Google’s AdWords Market!
Application to Adwords market
rate = utility/click
rate
$20
$40
$60
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
max bij log
uij
i, j
pj
s.t.
j :
i :
ij :
pj
b
b
m
ij
i
j
bij 0
i ij
C. P. for spending constraint!
max
b
ijk
log
uijk
ijk
pj
s.t.
j :
i :
pj
jk
bijk mi
ijk :
bijk lijk
ijk :
bijk 0
b
ik ijk
Spending constraint
market
Fisher market
with plc utilities
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, 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!
Generalization of EG program works!
max mi log vi
i
s.t.
i :
j :
ijk :
ijk :
vi j ,k u ijk x ijk
x 1
x l
x 0
i ,k
ijk
ijk
ij
ijk
Price discrimination market
(plc utilities)
Spending constraint
market
EG convex program
Devanur’s program
=
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
v2
S : convex + compact
feasible set
v1
Disagreement point = status quo utilities
v2
S
c2
c1
Disagreement point = (c1 , c2 )
v1
Nash bargaining problem = (S, c)
v2
S
c2
c1
Disagreement point = (c1 , c2 )
v1
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
N ( S , c) max ( v1 ,v2 )S {(v1 c1 )(v2 c2 )}
v2
S
c2
c1
v1
Generalizes to n-players
Theorem:
Unique solution
N (S , c) max vS {(v1 c1 ) ... (vn cn )}
Nash bargaining solution is
optimal solution to convex program:
max log(vi ci )
i
s.t. v S
Nash bargaining solution is
optimal solution to convex program:
max log(vi ci )
i
s.t. v S
Polynomial time separation oracle
Q: Compute solution combinatorially
in polynomial time?
How should they exchange
their goods?
State as a Nash bargaining game
u f : (.,.,.) R
ub : (.,.,.) R
um : (.,.,.) R
c f u f (1, 0, 0)
cb ub (0, 1, 0)
cm um (0, 0,1)
S = utility vectors obtained by distributing
goods among players
Special case: linear utility functions
u f : (.,.,.) R
ub : (.,.,.) R
um : (.,.,.) R
c f u f (1, 0, 0)
cb ub (0, 1, 0)
cm um (0, 0,1)
S = utility vectors obtained by distributing
goods among players
ADNB
B: n players with disagreement points, ci
G: g goods, unit amount each
vi uij xij
jG
xij 0
S = utility vectors obtained by distributing
goods among players
Convex program for ADNB
max log(vi ci )
i
s.t.
i : vi j u ij x ij
j :
ij :
x 1
x 0
i
ij
ij
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.
Price disc.
market
Spending constraint
market
ADNB
EG convex program
=
Devanur’s program
Kelly, 1997:
proportional fairness
Jain & V., 2007: Eisenberg-Gale markets
Price disc.
market
Spending constraint
market
ADNB
EG convex program
=
Devanur’s program
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, FIXP
Study
complexity of total problems
A new algorithmic direction
Combinatorial
algorithms for convex programs
Open
Nonlinear programs
with rational solutions!
Open
Nonlinear programs
with rational solutions!
Solvable combinatorially!!
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 m(i ) log ui
i
s.t.
i : ui j u ij x ij
j : i x ij 1
ij : x ij 0
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. j :
pj 0
2. j :
pj 0
3. i, j :
uij
4. i, j :
x
i
ij
1
ui
pj
m(i )
xij 0
uij
pj
u
x
ij
ij
j
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 loose
Because
of enhanced KKT conditions
Our algorithms
Dual variables (prices) are raised greedily
Yet, primal objects go tight and loose
Because
of enhanced KKT conditions
New algorithmic ideas are needed!
© Copyright 2026 Paperzz