Primal-Dual Algorithms for Rational Convex Programs I Algorithmic Game Theoryand Internet Computing Vijay V. Vazirani Georgia Tech
Rational convex program • A nonlinear convex program that always has a rational solution, using polynomially many bits, if all parameters are rational.
Rational convex program • A nonlinear convex program that always has a rational solution, using polynomially many bits, if all parameters are rational. • i.e., it “behaves” like an LP!
Central Tenet withinMathematical Economics • Markets should operate at equilibrium i.e., prices s.t. Parity between supply and demand
Easy if only one good! Domarketsevenadmitequilibriumprices?
What if there are multiple goods and multiple buyers with diverse desires and different buying power? Domarketsevenadmitequilibriumprices?
Irving Fisher, 1891 • Defined a fundamental market model • Special case of Walras’ model
amount ofj Concave utility function (for good j) utility
Several buyers with different utility functions and moneys.Equilibrium prices
Several buyers with different utility functions and moneys.Find equilibrium prices!
Linear utility function utility of i amount ofj
Linear Fisher Market • Assume: • Buyer i’s total utility, • mi: money of buyer i. • One unit of each good j. • n buyers and g goods. • Findequilibrium prices!
Eisenberg-Gale Program, 1959 prices pj
Why remarkable? • Equilibrium simultaneously optimizes for all agents. • How is this done via a single objective function?
Eisenberg-Gale Program Theorem: Optimal soln. gives equilibrium allocations, dual gives prices. Equilibrium utilities and prices are unique. Show: Each buyer spends all her money & buys an optimal bundle of goods. All goods fully sold.
Proof of rationality • Guess positive allocation variables (say k). • Substitute 1/pjby a new variable, say qj • LP: with (k + g) unknowns. Constraints: • Inequalities: KKT Conds. (3) & non-negativity. • Equations: KKT Conds. (2) & (4).
Combinatorial Algorithm for Linear Case of Fisher’s Model • Devanur, Papadimitriou, Saberi & V., 2002 By extending the primal-dual paradigm to the setting of convex programs & KKT conditions
Combinatorial algorithms Yield deep structural insights. Preferable for applications.
Auction for Google’s TV ads N. Nisan et. al, 2009: • Used market equilibrium based approach. • Combinatorial algorithms for linear case provided “inspiration”.
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!
Bang-per-buck • At prices p, buyer i’s most desirable goods, Si = • Any goods from Siworth m(i) constitute i’s optimal bundle
For each buyer, most desirable goods, i.e. m(1) p(1) m(2) p(2) m(3) p(3) m(4) p(4)
Network N(p) p(1) m(1) p(2) m(2) t s p(3) m(3) m(4) p(4) infinite capacities
Max flow in N(p) p(1) m(1) p(2) m(2) p(3) m(3) m(4) p(4) p: equilibrium prices iff both cuts saturated
Idea of algorithm • “primal” variables: allocations • “dual” variables: prices of goods • Approach equilibrium prices from below: • start with very low prices; buyers have surplus money • iteratively keep raising prices and decreasing surplus
An important consideration • The price of a good never exceeds its equilibrium price • Invariant: s is a min-cut
Invariant: s is a min-cut in N(p) p(1) m(1) p(2) m(2) s p(3) m(3) m(4) p(4) p: low prices
AllocationsPrices Idea of algorithm • Iterations: execute primal & dual improvements
Fundamental difference betweenLP’s and convex programs • Complementary slackness conditions: involve primal or dual variables, not both. • KKT conditions: involve primal and dual variables simultaneously.
Primal-dual algorithms so far(i.e., LP-based) • 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 max 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 max weight matching. • Otherwise primal objects go tight and loose. Difficult to account for these reversals -- in the running time.
Our algorithm • Dual variables (prices) are raised greedily • Yet, primal objects go tight and loose • Because of enhanced KKT conditions