Fsher Markets and Convex Programs Nkhl R. Devanur 1 Introducton Convex programmng dualty s usually stated n ts most general form, wth convex objectve functons and convex constrants. (The book by Boyd and Vandenberghe s an excellent reference [2].) At ths level of generalty the process of constructng a dual of a convex program s not so smple, n contrast to LP dualty where there s a smple set of rules one can use for the same purpose. In ths artcle, we consder a specal class of convex programs: wth convex objectve functons and lnear constrants, and derve a smple set of rules to construct the dual, analogous to LPs. We also show applcatons of ths: the man applcaton n ths artcle wll be to derve convex programs for Fsher markets. 2 Convex programmng dualty Conjugate We now defne the conjugate of a functon, and note some of the propertes. Ths wll be the key new ngredent to extend the smple set of rules for LP dualty to convex programs. Suppose that f : R n R s a functon. The conjugate of f s f : R n R and s defned as follows: f (µ) := sup{µ T x f(x)}. x Although the conjugate s defned for any functon f, for the rest of the artcle, we wll assume that f s strctly convex and dfferentable, snce ths s the case that s most nterestng to the applcatons we dscuss. Propertes of f : f s strctly convex and dfferentable. Mcrosoft Research, Redmond (Ths property holds even f f s not strctly convex and dfferentable.) f = f. (Here we use the assumpton that f s strctly convex and dfferentable.) If f s separable, that s f(x) = f (x ) then f (µ) = f (µ ). If g(x) = cf(x) for some constant c, then g (µ) = cf (µ/c). If g(x) = f(cx) for some constant c, then g (µ) = f (µ/c). If g(x) = f(x + a) for some constant a, then g (µ) = f (µ) µ T a. If µ and x are such that f(x) + f (µ) = µ T x then f(x) = µ and f (µ) = x. Vce versa, f f(x) = µ then f (µ) = x and f(x) + f (µ) = µ T x. We say that (x, µ) form a complementary par wrt f f they satsfy one of the last two condtons stated above. We now calculate the conjugates of some smple strctly convex and dfferentable functons. These wll be useful later. If f(x) = 1 2 x2, then f(x) = x. Thus f (µ) s obtaned by lettng µ = x n µ T x f(x), whch s then equal to 1 2 µ2. If f(x) = log(x), then f(x) = 1/x. Set µ = 1/x to get f (µ) = 1 + log(x) = 1 log( µ). Suppose f(x) = x log x. Then f(x) = log x + 1 = µ. So x = e µ 1. f (µ) = µx f(x) = x(log x + 1) x log x = x = e µ 1. That s, f (µ) = e µ 1. 1
Convex programs wth lnear constrants Consder the followng (prmal) optmzaton problem. max c x f(x) s.t. a j x b j. We wll derve a mnmzaton problem that s the dual of ths, usng Lagrangan dualty. Ths s usually a long calculaton. The goal of ths exercse s to dentfy a shortcut for the same. Defne the Lagrangan functon L(x, λ) := c x f(x) + j λ j (b j a j x ). We say that x s feasble f t satsfes all the constrants of the prmal problem. Note that for all λ 0 and x feasble, L(x, λ) c x f(x). Defne the dual functon g(λ) = max L(x, λ). x So for all λ, x, g(λ) L(x, λ). Thus mn λ 0 g(λ) the optmum value for the prmal program. The dual program s essentally mn λ 0 g(λ). We further smplfy t as follows. Rewrtng the expresson for L, L = µ x f(x) + j where µ = c j a j λ j. b j λ j Now note that g(λ) = max x L(x, λ) = max x { µ x f(x)}+ j b jλ j = f (µ)+ j b jλ j. Thus we get the dual optmzaton problem: wth the constant term. Fnally the dual objectve has f (µ) n addton to the lnear terms. In other words, we relax the constrant correspondng to x by allowng a slack of µ, and charge f (µ) to the objectve functon. Smlarly, suppose we start wth the prmal problem max c x f(x) s.t. Then the dual problem s j, a j x b j,, x 0. b j λ j + f (µ) s.t. a j λ j c µ, j, λ j 0. As we saw, the optmum for the prmal program s lower than the optmum for the dual program (weak dualty). In fact, f the prmal constrants are strctly feasble, that s there exst x such that for all j a jx j < b j, then the two optma are the same (strong dualty) and the followng generalzed complementary slackness condtons characterze them: x > 0 j a jλ j = c µ, λ j > 0 a jx = b and x and µ form a complementary par wrt f, that s, µ = f(x), x = f (µ) and f(x) + f (µ) = µ T x. Smlarly suppose we start from a mnmzaton problem of the form mn c x + f(x) s.t. b j λ j + f (µ) s.t. a j x b j, a j λ j = c µ, j, λ j 0. Note the smlarty to LP dualty. The dfferences are as follows. Suppose the concave part of the prmal objectve s f(x). There s an extra varable µ for every varable x that occurs n f. In the constrant correspondng to x, µ appears on the RHS along, x 0. Then the dual of ths s max b j λ j f (µ) s.t. j, a j λ j c + µ, j j, λ j 0. 2
Infeasblty and Unboundedness When an LP s nfeasble, the dual becomes unbounded. The same happens wth these convex programs as well. We now gve the proof for some specal cases. Suppose frst that the set of lnear constrants s tself nfeasble, that s, there s no soluton to the set of nequaltes a j x b j. (1) Then by Farkas lemma, we know that there exsts numbers λ j 0 for all j such that a j λ j = 0, and j λ j b j < 0. Now g(λ) = f (c) + j λ jb j, and by multplyng all the λ j by a large postve number, g can be made arbtrarly small. Now suppose that the feasble regon defned by the nequaltes (1) and the doman of f defned as dom(f) = {x : f(x) < } are dsjont. Further assume for now that f (c) < and that there s a strct separaton between the two, meanng that for all x feasble and y dom(f), d(x, y) > ɛ for some ɛ > 0. Then once agan by Farkas lemma we have that there exst λ j 0 for all j and δ > 0 such that y dom(f),,j a j λ j y > j λ j b j (1 + δ). Ths mples that g(λ) < f (c) δ j λ jb j, and as before, by multplyng all the λ j by a large postve number, g can be made arbtrarly small. 3 Convex programs for Fsher markets In a Fsher market, there are n buyers and m goods. The goods are dvsble, and there s a gven supply for each of them. Buyer has a budget of B and a utlty functon U. Gven prces for the goods, he wants to buy a bundle of goods that maxmzes hs utlty, subject to the constran that he does not spend more than hs budget. The market s at an equlbrum, f each buyer s allocated a utlty maxmzng bundle of goods and the market clears, that s all the goods are allocated. An nterestng specal class of markets s when the buyers utltes are lnear,.e., U = j u jx j, where x j s the amount of good j allocated to hm. The followng s the classc Esenberg-Gale convex program for Fsher markets wth lnear utltes. An optmum soluton to ths program captures equlbrum allocaton for the correspondng market. max, u j B log u s.t. u j x j, x j 1, x j 0. We now use the technology we developed n the prevous secton to construct the dual of ths convex program. We let the dual varable correspondng to the constrant u j u jx j be β and the dual varable correspondng to the constrant x j 1 be p j (these wll correspond to the equlbrum prces, hence the choce of notaton). We also need a varable µ that corresponds to the varable u n the prmal program snce t appears n the objectve n the form of a concave functon, B log u. We now calculate the conjugate of ths functon. Recall that f f(x) = log x then f (µ) = 1 log( µ), and f g(x) = cf(x) then g (µ) = cf (µ/c). Therefore f g(x) = c log x then g (µ) = c c log( µ/c) = c log c c c log( µ). In the dual objectve, we can gnore the constant terms, c log c c. We are now ready to wrte down the dual program whch s as follows. B log( µ ) s.t, j, p j u j β,, β = µ. We can easly elmnate µ from the above to get the followng program., j, p j u j β. B log(β ) s.t (2) The varables p j s actually correspond to equlbrum prces. In fact, we can even elmnate the 3
β s by observng that n an optmum soluton, β = mn j {p j /u j }. Ths gves a convex (but not strctly convex) functon of the p j s that s mnmzed at equlbrum. Note that ths s an unconstraned 1 mnmzaton. The functon s as follows B log(mn j {p j /u j }). It would be nterestng to gve an ntutve explanaton for why ths functon s mnmzed at equlbrum. Another nterestng property of ths functon s that the (sub)gradent of ths functon at any prce vector corresponds to the (set of) excess supply of the market wth the gven prce vector. Ths mples that a tattonement style prce update, where the prce s ncreased f the excess supply s negatve and s decreased f t s postve, s actually equvalent to gradent descent. Note: A convex program that s very smlar to (2) was also dscovered ndependently by Garg [4]. However t s not clear how they arrved at t, or f they realse that ths s the dual of the Esenberg- Gale convex program. Gong back to Convex Program (2), we wrte an equvalent program by takng the logs n each of the constrants. µ log µ µ. The dual varable correspondng to the constrant γ + q j log u j s b j and the dual varable correspondng to e qj s p j (by abuse of notaton, but t turns out that these once agan correspond to equlbrum prces). Thus we get the followng convex program. max,j b j log u j j (p j log p j p j ) s.t. b j = p j, b j = B, b j 0, j. A smple observaton shows that j p j = B s a constant and and hence can be dropped from the objectve functon. Thus we fnally get the followng convex program, whch was ntroduced by Brnbaum, Devanur and Xao [1]. max,j b j log u j j b j = p j, p j log p j s.t. (4) B log(β ) s.t b j = B,, j, log p j log u j + log β. We now thnk of q j = log p j and γ = log β as the varables, and get the followng convex program. e qj +, j, γ + q j log u j. B γ s.t (3) We now take the dual of ths program. Agan, we need to calculate the conjugate of the convex functon that appears n the objectve, namely e x. We could calculate t from scratch, or derve t from the ones we have already calculated. Recall that f f(x) = e x 1, then f (µ) = µ log µ, and f g(x) = f(x + a) then g (µ) = f (µ) µ T a. Thus f g(x) = e x = f(x + 1) then g (µ) = f (µ) µ = b j 0, j. 3.1 Extensons to other markets The Esenberg-Gale convex program can be generalzed to capture the equlbrum of many other markets, such as markets wth Leontef utltes, or network flow markets. In fact, Jan and Vazran [5] dentfy a whole class of such markets whose equlbrum s captured by convex programs smlar to that of Esenberg and Gale (called EG markets). We can take the dual of all such programs to get correspondng generalzatons for the convex program (2). For nstance, a Leontef utlty s of the form U = mn j {x j /φ j } for some gven values φ j. The Esenberg-Gale-type convex program for Fsher markets wth Leontef utltes s as follows. 1 Although wth some analyss, one can derve that the optmum soluton satsfes that p j 0, and j p j = B, the program tself has no constrants. max B log u s.t. 4
, j, u x j /φ j,, u j u j x j + v, x j 1, x j 0. The dual of the above (after some smplfcaton as before) s as follows. B log(β ) s.t j, x j 1, x j, v 0. Although ths s a small modfcaton of the Esenberg-Gale convex program, t s not clear how one would arrve at ths drectly wthout gong through the dual. φ j p j = β. In general for an EG-type convex program, the dual has the objectve functon j B log(β ) where β s the mnmum cost buyer has to pay n order to get one unt of utlty. For nstance, for the network flow market, where the goods are edge capactes n a network and the buyers are source-snk pars lookng to maxmze the flow routed through the network, then β s the cost of the cheapest path between the source and the snk gven the prces on the edges. However, for some markets, t s not clear how to generalze the Esenberg-Gale convex program, but the dual generalzes easly. In each of the cases, the optmalty condtons can be easly seen to be equvalent to equlbrum condtons. We now show some examples of ths. Quas-lnear utltes Suppose the utlty of buyer s j (u j p j )x j. In partcular, f all the prces are such that p j > u j, then the buyer prefers to not be allocated any good and go back wth hs budget unspent. It s easy to see that the followng convex program captures the equlbrum prces for such utltes., j, p j u j β,, β 1. B log(β ) s.t (5) In fact, gven ths convex program, one could take ts dual to get an EG-type convex program as well. max B log u v s.t. Transacton costs Suppose that we are gven, for every par, buyer and good j, a transacton cost c j that the buyer has to pay per unt of the good n addton to the prce of the good. Thus the total money spent by buyer s j (p j +c j )x j. Chakraborty, Devanur and Karande [3] show that the followng convex program captures the equlbrum prces for such markets. Nash Barganng, j, p j + c j u j β,, β 1. B log(β ) s.t (6) Vazran [6] consders a convex programmng that captures the Nash Barganng soluton. The program s as follows. (c s are all constants.) max B log(u c ) s.t., u j u j x j, j, x j 1, x j 0. The dual of ths program s as follows c β, j, p j u j β. B log(β ) s.t (7) One could follow the change of varables and try to get a convex program smlar to (4) for the same. However the change of varables q j = log p j and γ = log β makes the program non-convex, snce now the objectve functon has the term c e γ. 5
Spendng constrant utltes [1] also gve an extenson of Convex program (4) to what s called as the spendng constrant model. We refer the reader to [1] for detals. 4 Conclusons We presented a general framework of convex programmng dualty for a specal class of convex programs, namely programs wth convex objectves and lnear functons. We hope that the smplfed form of ths dualty would lead to a greater adopton of these technques among the communty. We show how these technques can be used to obtan new and nterestng convex programs for several of the Fsher markets. References [1] Ben Brnbaum, Nkhl R. Devanur, and Ln Xao. New convex programs and dstrbuted algorthms for fsher markets wth lnear and spendng constrant utltes. Manuscrpt avalable from http://research.mcrosoft.com/enus/um/people/nkdev., 2009. [2] S. Boyd and L. Vandenberghe. Convex Optmzaton. Cambrdge Unversty Press, 2004. [3] Sourav Chakraborty, Nkhl R. Devanur, and Chnmay Karande. Market equlbrum wth transacton costs. CoRR, abs/1001.0393, 2010. [4] Jugal Garg. Algorthms for Market Equlbrum. PhD thess, Dept. of Computer Scence and Engneerng, IIT Bombay, 2008. [5] Kamal Jan and Vjay V. Vazran. Esenberggale markets: algorthms and structural propertes. In STOC, pages 364 373, 2007. [6] Vjay V. Vazran. Nash barganng va flexble budget markets. Manuscrpt avalable from the author s homepage., 2009. 6