1.07k likes | 1.21k Vues
Algorithms for the Linear Case, and Beyond …. Algorithmic Game Theory and Internet Computing. Vijay V. Vazirani Georgia Tech. Irving Fisher, 1891. Defined a fundamental market model Special case of Walras’ model.
E N D
Algorithms for the Linear Case, and Beyond … Algorithmic Game Theoryand Internet Computing Vijay V. Vazirani Georgia Tech
Irving Fisher, 1891 • Defined a fundamental market model • Special case of Walras’ model
Several buyers with different utility functions and moneys.Find equilibrium prices!!
Linear Fisher Market • Assume: • Buyer i’s total utility, • mi: money of buyer i. • One unit of each good j. • Findmarket clearing prices!
Eisenberg-Gale Program, 1959 prices pj
Convex programs thatcapture market equilibria • Underly all “efficient” markets (so far). • Rational convex programs for many markets! • Algorithms: • combinatorial, for rational (primal-dual) • continuous (ellipsoid/interior point)
Combinatorial algorithms for rational convex programs Natural extension of field of combinatorial optimization!
Combinatorial algorithms for rational convex programs Natural extension of field of combinatorial optimization! Central aspect of C.O. – efficient algorithms for solving integral LP’s, e.g. matching, flow.
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”.
Primal-Dual Paradigm • Highly successful algorithm design technique from exact and approximation algorithms
Exact Algorithms for Cornerstone Problems in P: • Matching (general graph) • Network flow • Shortest paths • Minimum spanning tree • Minimum branching
Approximation Algorithms set cover facility location Steiner tree k-median Steiner network multicut k-MST feedback vertex set scheduling . . .
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
Our algorithm • Dual variables (prices) are raised greedily • Yet, primal objects go tight and loose • Because of enhanced KKT conditions • New algorithmic ideas needed!
Key Algorithmic Idea • Dual variables (prices) are raised greedily • Yet, primal objects go tight and loose • Because of enhanced KKT conditions • Balanced Flows: For limiting no. of such events
Max-flow in N p m s t i W.r.t. a max-flow f, surplus(i) = m(i) – f(i,t)
Max-flow in N p m i surplus vector = vector of surpluses w.r.t. f
Obvious potential function • Total surplus money = l1 norm of surplus vector • Reduce l1 norm of surplus vector by inverse polynomial fraction in each iteration
Balanced flow • A max-flow that minimizes l2 norm of surplus vector. • Makes surpluses as equal as possible.
Balanced flow • A max-flow that minimizes l2 norm of surplus vector. • Makes surpluses as equal as possible. • All balanced flows have same surplus vector.
Our algorithm • Reduces l2 norm of surplus vector by inverse polynomial fraction in each iteration.
Property 1 • f: max-flow in N. • R: residual graph w.r.t. f. • If surplus (i) < surplus(j) then there is no pathfrom i to j in R.
Property 1 R: i j surplus(i) < surplus(j)
Property 1 R: i j surplus(i) < surplus(j)
Property 1 R: i j Circulation gives a more balanced flow.
Property 1 • Theorem: A max-flow is balanced iff it satisfies Property 1.