Primal-Dual Algorithms for
Rational Convex Programs II:
Algorithmic Game Theory
Dealing with Infeasibility
and Internet Computing
Vijay V. Vazirani
Georgia Tech
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.
Complete information game.
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:
Paretto optimality
Invariance under affine transforms
Symmetry
Independence of irrelevant alternatives
v N ( S , c),
T S & v T v N (T , c)
v2
S
v
c2
c1
v1
v N ( S , c),
T S & v T v N (T , c)
v2
S
T
v
c2
c1
v1
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 )}
Linear Nash Bargaining
Feasible set is a polytope defined by
linear packing constraints
Nash bargaining solution is
optimal solution to convex program:
max log(vi ci )
i
s.t.
linear constraints
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
Generalize further: assume ci 's
are arbitrary, i.e., not status quo utilities.
Given game is feasible iff
vS s.t. i : vi ci
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)
This
convex program is rational.
Combinatorial
polynomial time algorithm
for determining feasibility,
and if feasible, for solving it.
Game plan
Use KKT conditions to
transform ADNB to determining feasibility &
computing the equilibrium in a certain market.
Design algorithm using primal-dual paradigm.
Several buyers with
different utility functions and moneys.
Find equilibrium prices!
p1
p2
p3
Linear Fisher Market
Assume:
Buyer
i’s total utility,
vi uij xij
jG
mi : money of buyer i.
One unit of each good j.
n buyers and g goods.
Find equilibrium prices!
Flexible budget market,
only difference:
Buyers don’t spend a fixed amount of money.
Instead, they have a strict lower bound on
the utility they desire.
Flexible budget market,
only difference:
Buyers don’t spend a fixed amount of money.
Instead, they have a strict lower bound on
the utility they desire.
Money spent = f (utility desired, prices of goods)
Most cost-effective goods
At prices p, for buyer i:
Define
p j
Si arg min j
uij
p j
cost (i ) min j
uij
Flexible budget market
Agent i wants utility ci
At prices p, must spend ci . cost (i ) to get utility
ci
Flexible budget market
Agent i wants utility ci
At prices p, must spend ci . cost (i ) to get utility
Define
Find market clearing prices.
mi 1 ci . cost (i)
ci
Flexible budget market
Agent i wants utility ci
At prices p, must spend ci . cost (i ) to get utility
Define
Find market clearing prices -- may not exist!!
mi 1 ci . cost (i)
ci
Flexible budget market
Agent i wants utility ci
At prices p, must spend ci . cost (i ) to get utility
Define
Find market clearing prices -- may not exist!!
mi 1 ci . cost (i)
feasible/infeasible
ci
Theorem:
ADNB
reduces to
Equilibrium for flexible budget markets
Theorem:
ADNB
reduces to
Equilibrium for flexible budget markets
(S(u), c) M(u, c)
(S, c) is feasible iff M is feasible.
If feasible, x is Nash bargaining solution
iff x is equilibrium allocation.
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
prices pj
An easier question
Given prices p, are they equilibrium prices?
If so, find equilibrium allocations.
An easier question
Given prices p, are they equilibrium prices?
If so, find equilibrium allocations.
Equilibrium prices are unique!
Max flow in N(p)
p(1)
m(1)
m(2)
p(2)
p(3)
m(3)
m(4)
p(4)
p: equilibrium prices iff both cuts saturated
Weak Domination
p
q if
j : p j q j 0
q(1)
m(1)
m(2)
t
m(3)
m(4)
q(2)
q(3)
q(4)
Lemma: If M is feasible, p equilibrium prices
and s is a min-cut in N(q) then p
q
s
Small prices: q s.t. s is a min-cut in N(q)
q(1)
m(1)
m(2)
t
m(3)
m(4)
q(2)
q(3)
q(4)
s
Invariant
Throughout algorithm: s is a min-cut in N(p)
i.e., algorithm works with small prices.
Feasible Prices
p: feasible if small and i : surplus(i) 1
Lemma: p feasible i : vi ci
Exists iff M is feasible.
Feasible Prices
p: feasible if small and i : surplus(i) 1
Lemma: p feasible i : vi ci
Exists iff M is feasible.
Observe: Notion defined via balanced flow!
1-surplus
i surplus(i) - 1
Because of Invariant, surplus(i) 0
Hence, i 1
p is feasible iff p is small and i : i 0
M is feasible iff
maxv S mini vi ci 0
Write this as an LP
M is feasible iff t > 0
max t
s.t.
i :
u x
jG
j :
x
iB
i, j :
ij ij
ij
ci t
1
xij 0
Proof of infeasibility: dual soln. 0
max t
s.t.
i :
u x
jG
j :
x
iB
i, j :
ij ij
ij
ci t
1
xij 0
Proof of infeasibility
Lemma: If
i
i
0 and
p
j
j
then M is infeasible.
0
Proof of infeasibility
Lemma: If
i
i
0 and
p
j
0
j
then M is infeasible.
Observe:
If p 0, then i : surplus(i) = 0, hence i 0
Initialization
i : mi 1
Find equilibrium prices, p, for this linear
Fisher market.
i : mi 1 ci . cost(i)
Invariant holds.
Search
Allocations
Prices (Money)
Infeasible
Feasible
?
Decision
Allocations
Prices (Money)
Feasible:
i : i 0
Infeasible:
i
i
0 and
p
j
j
0
Network N(p)
N’(I, J)
i 0
i 0
J
I
N - N’
Network N(p)
N’(I, J)
i 0
i 0
J
I
N - N’
Network N(p)
N’(I, J)
i 0
i 0
J
I
N - N’
Best viewed as a tug-of-war
between 2 teams of buyers!
GOOD:
i s.t. i 0
NOT GOOD:
i s.t. i 0
GOOD
NOT GOOD
i min
rest i 0
i 0
I
J
i min
rest i 0
i 0
I
J
i min
rest i 0
i 0
I
J
i min
rest i 0
i 0
I
J
Decision takes polynomial time
Use balanced flow!
i2
i ( B1 B2 )
1
Decreases by
fraction in each iteration.
2
n
Search
Allocations
Prices (Money)
Infeasible
Feasible
?
Decision
Allocations
Prices (Money)
Network N(p)
N - N’
I
N’(I, J)
J
p implies mi
mi 1 ci . cost(i)
What about surplus(i)?
p implies mi
mi 1 ci . cost(i)
What about surplus(i)?
surplus(i) decreases iff
i 0
equilibrium
init
feasible
equilibrium
?
init
feasible
Feasibility for LP’s is easy!
Non-total problems just as easy as total ones.
e.g., max. wt. perfect matching
vs
max. wt. matching.
Theorem: Algorithm runs in polynomial time.
Theorem: Algorithm runs in polynomial time.
Q: Find strongly polynomial algorithm!
Open
Can rational convex programs be solved
in polynomial time using an LP-solver?
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
Exact Algorithms for Cornerstone
Problems in P
Matching (general graph)
Network flow
Shortest paths
Minimum spanning tree
Minimum branching
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
Approximation Algorithms
set cover
Steiner tree
Steiner network
k-MST
scheduling . . .
facility location
k-median
multicut
feedback vertex set
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 & Economics:
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 & Economics:
Rational solutions to nonlinear convex programs
Approximation algorithms for convex programs?!
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
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
Common generalization
max wi log(vi ci )
i
s.t.
i : vi j u ij x ij
j :
ij :
x 1
x 0
i
ij
ij
Common generalization
Is it meaningful?
Can it be solved via a combinatorial,
polynomial time algorithm?
Common generalization
Is it meaningful?
Kalai, 1975: Nonsymmetric bargaining games
wi : clout of player i.
Nonsymmetric ADNB
Common generalization
Is it meaningful?
Kalai, 1975: Nonsymmetric bargaining games
wi : clout of player i.
Algorithm
Nonsymmetric ADNB
© Copyright 2026 Paperzz