Combinatorial Approximation Algorithms for Convex Programs?!

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 )
jG
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 vS {(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
jG

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!