Dichotomies in Equilibrium Computation: Algorithmic Game Theory Market Provide a Surprise and Internet Computing Vijay V. Vazirani Joint work with Jugal Garg & Ruta Mehta Equilibrium computation Has its own character, quite distinct from computability of optimization problems Natural equilibrium computation problems exhibit striking Dichotomies 2-Nash Nature of solution Rational k-Nash, k>2 Algebraic; Irrational eg: Nash, 1950 Complexity PPAD-complete FIXP-complete Practical algorithm Lemke-Howson ?? Arrow-Debreu Model n agents and g divisible goods. Agent i: has initial endowment of goods Î R g + and a concave utility function (models satiation!) ui : R ® R+ g + Arrow-Debreu Model n agents and g divisible goods. Agent i: has initial endowment of goods Î R g + and a concave utility function (piecewise-linear, concave) ui : R ® R+ g + Agent i comes with an initial endowment At given prices, agent i sells initial endowment p1 p2 p3 … and buys optimal bundle of goods, i.e, max ui (bundle) p1 p2 p3 Several agents with own endowments and utility functions. Currently, no goods in the market. Agents sell endowments at current prices. p1 p2 p3 Each agent wants an optimal bundle. p1 p2 p3 Equilibrium Prices p s.t. market clears, i.e., there is no deficiency or surplus of any good. Arrow-Debreu Theorem, 1954 Celebrated theorem in Mathematical Economics Established existence of market equilibrium under very general conditions using a deep theorem from topology - Kakutani fixed point theorem. Kenneth Arrow Nobel Prize, 1972 Gerard Debreu Nobel Prize, 1983 Arrow-Debreu Theorem, 1954 Celebrated theorem in Mathematical Economics Established existence of market equilibrium under very general conditions using a theorem from topology - Kakutani fixed point theorem. Highly non-constructive! Computability of equilibria Walras, 1874: Tanonnement process Scarf, Debreu-Mantel-Sonnenschein, 1960s: Won’t converge! Scarf, Smale, … , 1970s: Many approaches Open problem (2002) Separable, piecewise-linear, concave (SPLC) utility functions Separable utility function For a single buyer : Utility from good j, f j : + ® + Total utility from bundle, u(x) = å f j (x j ) j f j : piecewise-linear, concave utility amount of j f j : piecewise-linear, concave utility SPLC utility: Additively separable over goods amount of j Markets with separable, piecewise-linear, concave utilities Chen, Dai, Du, Teng, 2009: PPAD-hardness Chen & Teng, 2009: PPAD-hardness for Arrow-Debreu model for Fisher’s model V. & Yannakakis, 2009: PPAD-hardness for Fisher’s model Markets with separable, piecewise-linear, concave utilities V. & Yannakakis, 2009: Membership in PPAD for both models. Markets with separable, piecewise-linear, concave utilities V. & Yannakakis, 2009: Membership in PPAD for both models. Indirect proof, using the class FIXP of Etessami & Yannakakis, 2008. Open The definition of PPAD was designed to capture problems that allow for path-following algorithms, in the style of Lemke-Howson and Scarf … It will be interesting to obtain a natural, direct algorithm for this task (hence leading to a more direct proof of membership in PPAD), which may be useful for computing equilibria in practice. Complementary Pivot Algorithms (path-following) Lemke-Howson, 1964: 2-Nash Equilibrium Eaves, 1974: Equilibrium for linear Arrow-Debreu markets (using Lemke’s algorithm) Eaves, 1975 Technical Report: Also under study are extensions of the overall method to include piecewise-linear utilities, production, etc., if successful, this avenue could prove important in real economic modeling. Eaves, 1976 Journal Paper: ... Now suppose each trader has a piecewise-linear, concave utility function. Does there exist a rational equilibrium? Andreu Mas-Colell generated a negative example, using Leontief utilities. Consequently, one can conclude that Lemke’s algorithm cannot be used to solve this class of exchange problems. Leontief utility (complementary goods) Utility = min{#bread, 2 #butter} Piecewise-linear, concave: max u s.t. u £ # bread u £ 2 # butter Equilibrium may be irrational! Leontief utility: is non-separable PLC Utility = min{#bread, 2 #butter} max u s.t. u £ # bread u £ 2 # butter Only bread or only butter gives 0 utility Rationality for SPLC Utilities Devanur & Kannan, 2007, V. & Yannakakis, 2007: Equilibrium is rational for Fisher and Arrow-Debreu models under SPLC utilities. Using flow-based structure from DPSV. Theorem (Garg, Mehta, Sohoni & V., 2012): Complementary pivot (path-following) algorithm for Arrow-Debreu markets under SPLC utilities. Membership in PPAD, using Todd, 1976. Algorithm is simple, no stability issues, & is practical. Experimental Results Inputs are drawn uniformly at random. |A|x|G|x#Seg #Instances Min Iters Avg Iters Max Iters 10 x 5 x 2 1000 55 69.5 91 10 x 5 x 5 1000 130 154.3 197 10 x 10 x 5 100 254 321.9 401 10 x 10 x 10 50 473 515.8 569 15 x 15 x 10 40 775 890.5 986 15 x 15 x 15 5 1203 1261.3 1382 20 x 20 x 5 10 719 764 853 20 x 20 x 10 5 1093 1143.8 1233 log(no. of iterations) log(total no. of segments) SPLC Utilities Nature of solution Rational Rest Algebraic; Irrational e.g.: Mas-Colell, 1976 Complexity PPAD-complete Practical algorithm GMSV, 2012 (Lemke-based) In FIXP FIXP-hardness ? ?? Eaves, 1975 Technical Report: Also under study are extensions of the overall method to include piecewise-linear utilities, production, etc., if successful, this avenue could prove important in real economic modeling. Main general class of markets still unresolved. Eaves, 1975 Technical Report: Also under study are extensions of the overall method to include piecewise-linear utilities, production, etc., if successful, this avenue could prove important in real economic modeling. Main general class of markets still unresolved. So far, no works exploring rationality … Garg & V., 2013: SPLC Production: 1 finished good from 1 raw good, e.g., bread from wheat or corn. Total is additive. LCP and complementary pivot algorithm PPAD-complete Rationality Non-separable PLC Production: From 2 or more raw goods: irrational! SPLC Production Nature of solution Rational Rest Algebraic; Irrational e.g.: GV, 2013 Complexity PPAD-complete In FIXP FIXP-hardness ? Practical algorithm GV, 2013 (Lemke-based) ?? Separable vs non-separable This dichotomy arises in several places, e.g., concave flows. Leontief-Free Utilities and Production!! utility amount of crème brulee utility amount of chocolate cake Utilities of Crème Brulee and Chocolate Cake are not additively separable -- both satiate desire for dessert! Joint utility should be sub-additive Capture via non-separable utilities! This non-separability is very different from that of Leontief utilities. Leontief: goods are complements Here: goods are substitutes Garg, Mehta & V, 2013: Leontief-free utility functions Both are subclasses of PLC utilities, with no known generalization to differentiable, concave utilities. Leontief utility æ x1 x2 xn ö u ( x ) = min ç , , ... , ÷ an ø è a1 a2 Every bit of utility comes from all goods in appropriate proportions. Leontief-free utility Every bit of utility comes from exactly one good. A specified set of goods competes for it, via mechanism of segments. Segment An upper bound on utility allowed. A set of goods, with rate (utility/unit) for each good. SPLC utilities are Leontief-free fj utility amount of j Segments of an SPLC utility function fj Segment = a piece of some Set of goods = { j } Upper bound on utility = upper bound of piece Rate = slope of piece Bundle = (2.4 CrBr + 3.2 ChCake) max u s.t. u = u1 + u2 + ... + u + u + ... | 1 Segments for CrBr: ìu1 = 10 ×CrBr1 í î u1 £ 12 ìu2 = 8 ×CrBr2 í î u2 £ 14 ü ý þ ü ý þ --Segments for ChCake: --- | 2 Segments of a Leontief-free utility fn. Segment 1: u1 = 10#CrBr + 8#ChCake u1 £ 10 Segment 2: u2 = 8#CrBr + 4#ChCake u2 £ 12 --Total = u1 + u2 ... Bundle = (2.4 CrBr + 3.2 ChCake) max u s.t. u = u1 + u2 ... Segment 1: u1 = 10 ×CrBr1 + 8 ×ChCake1 u1 £ 10 Segment 2: u2 = 8 ×CrBr2 + 4 ×ChCake 2 u2 £ 12 --- Leontief-free utility function f: g + ® + is Leontief-free if $ LP (of right form) s.t. "x : f (x) = LP(x) Leontief-Free SPLC Utilities Nature of solution Rational GMV, 2013 Rest Algebraic; Irrational e.g.: Mas-Colell, 1976 Complexity PPAD-complete GMV 2013 In FIXP FIXP-hardness ? Practical algorithm GMV, 2013 (Lemke-based) ?? Practical applications In pricing a new good, need to compare to substitutes. Adding one Leontief-type constraint … … can lead to irrationality! Utility = min{#bread, 2 #butter} max u s.t. u £ # bread u £ 2 # butter Leontief-free production Garg, Mehta & Vazirani, 2013: full-fat milk + 2% milk yogurt + ice cream Leontief-Free SPLC Production Nature of solution Rational GMV, 2013 Complexity PPAD-complete GMV, 2013 Practical algorithm GMV, 2013 (Modified Lemke) Rest Algebraic; Irrational e.g.: GMV, 2013 In FIXP FIXP-hardness ? ?? SPLC Leontief-free In other contexts, e.g., algorithms for concave flows. Are Leontief-free utilities sound from the viewpoint of economics? Satiation (extreme cases) Intra-good: No satiation: Max fj satiation: is linear f j is 1-piece PLC fj amount of good j Satiation (extreme cases) Intra-good: No satiation: Max satiation: f j is linear f j is 1-piece PLC Inter-good: What does joint utility “look like” in extreme cases? Consistent function f: g + ® + f1, f2 , ... fg : is consistent with PLC functions + ® + (one for each good) if 1). f is Leontief-free 2). "j "x j : f (0,..., 0, x j ,0,..., 0) = f j (x j ) Case 1: Goods are not substitutes For PLC functions f1 , f2 , ... fg define fmax : g + ® + as fmax (x) = å f j (x j ), i.e., it is SPLC j Clearly, f (x)} { f : consistent "x : fmax (x) = max Case 2: Goods are perfect substitutes For PLC functions f1, f2 , ... fg define fmin : g + ® + as f (x)} { f : consistent "x : fmin (x) = min What does fmin "look like"? What should fmin "do"? 3 easy situations 1). If f1, f2 , ... fg are all linear, fmin (x) = ? The best substitute for Crème Brulee is … 1). If f1, f2 , ... fg are all linear, "x : fmin (x) = å f j (x j ) j = fmax (x) 2). fmin (h, h) = ? b a crème brulee chocolate cake 2). fmin (h, h) ³ max{a, b} b a crème brulee chocolate cake 2). fmin (h, h) = max{a, b} b a crème brulee chocolate cake 3). For a fixed bundle x with > 1 good fj utility xj amount of good j 3). For a fixed bundle fj utility x fmax (x) is unchanged What about fmin (x)? xj amount of good j 3). For a fixed bundle fj utility x fmin (x) ¯ xj amount of good j Claim: fmin is "doing the right thing"! Fix PLC functions f1, f2 , f3 t ³ 0 is feasible for (x1, x2 , x3 ) if t 0 Fix PLC functions f1, f2 , f3 t ³ 0 is feasible for (x1, x2 , x3 ) if t 0 f2 t 0 amount of good f2 t Total amount of good corres. to partitions £ x2 0 If this holds for all goods, then t is feasible for x. Theorem (Garg, Mehta & V): 1). "x : fmin (x) = max {t } t:feasible 2). fmin is Leontief-free. 3). fmin can be constructed in polyn time. Theorem (Garg, Mehta & V): "x : fmin (x) = max {t } t:feasible ³ max-flow min-cut theorem = via a construction Hicks, 1932: Constant elasticity of substitution (CES) Utility functions and production sets. Hicks, 1932: Constant elasticity of substitution (CES) Utility functions and production sets. Differences: Highly specialized Constant returns to scale Differentiable Complements vs Substitutes Why found so late? Why in TCS? Linear Complementarity Problem & Complementary Pivot Algorithms