1 Introduction
A market can be thought as an algorithm or mechanism that implements a social choice of redistribution of various goods between agents (as buyers and sellers for goods) via pricing. In mathematical economics, exchange market models were first proposed by Walras in 1874 and later by Arrow and Debreu in 1954 along with the concept of market equilibrium [3]. These exchange market models are used to capture the essence of complicated realworld markets.
In the ArrowDebreu market model, each agent has an initial endowment of divisible goods and a utility function for purchasing a bundle of goods that maximizes one’s utility when every agent uses the revenue from selling one’s initial endowment. The Fisher market model [4] can be seen as some sort of special case of the ArrowDebreu model where each buyer is subject to her budget constraint instead of the revenue from selling her initial endowment. There is a market equilibrium^{1}^{1}1Note that the concept of market equilibria is not the concept of Nash equilibria. A market equilibrium does not allow buyers to strategically report their interests in different goods in order to maximize their own utilities. if two conditions are satisfied:

buyer optimality states that every agent uses the revenue from selling her initial endowment for purchasing a bundle of goods to maximizes her own utility;

market clearance states that the total demand for every good equals the total supply.
The celebrated theorem by Arrow and Debreu [3] proved the existence of a market equilibrium under some mild necessary conditions on the utility functions. The most common types of utility functions from this class, which will be introduced in the section of preliminaries in more details, are linear, Leontief, and CobbDouglas, and belong to the important class of Constant Elasticity of Substitution (CES) functions [17, 2].
Motivated by the convergence of (distributed) generalized gradientdescent algorithms (i.e., mirrordescent) to market equilibria in Fisher and CCVF markets [4, 10], one natural direction is to design dynamics (specifically, iterative algorithms) for agents to arrive at market equilibria in ArrowDebreu markets.^{2}^{2}2We can even require the dynamics to be of the noregret property if possible to provide incentives for the agents like in [16, 6, 7, 8]. In this paper, instead of just using generic algorithms for solving a convex program, we simply design iterative algorithms for solving the following convex program for bijective markets where everyone is a seller of only one good and also a buyer for a bundle of goods:^{3}^{3}3Jain [14] reduced equilibrium computation in linear ArrowDebreu markets to that in bijective markets. This formulation is given here first for the ease of discussion. Our algorithm for computing linear ArrowDebreu market equilibrium is based on solving the rational convex program that captures buyer optimality and market clearance, formulated by Devanur et al. in [11]. We will elaborate on such formulation more in the section of preliminaries.
where is paid by agent to agent for good , “acts like” the endowed budget of agent in the Fisher model (yet there is actually no budget but only the initial endowment of goods for agent ), and is the inverse “best” bangperbucks of agent .
Fisher Markets. Recall that when designing (distributed) algorithms via mirror descent for Fisher markets [4], each is endogenously set to in their convex program (no concept of variable so there is no need for updating ’s). The convex program is then
The objective becomes function
and the feasible space
where . The components of the gradient of are thus
The projection (back to the feasible space) is applied on vector
after the update such that for a learning rate and is the feasible point after projection. The choice of the regularization function and thereby the corresponding Bregman divergence decide the actual distance measure for projection. The Proportional Response (PR) dynamics are actually the multiplicative updates that result from the Bregman divergence being the KLdivergence and :where is chosen such that . The update of does not need to depend on the information of any other agent (given that any price is publicly known) so it can be done in a distributed way.^{4}^{4}4For choosing the Bregman divergence to be half the Euclidean distance, the algorithm becomes gradient descents. The projection can be applied on the whole vector as in [4], or one can apply mirror descents with respect to separately on the objective and show that jointly the objective still converges to minimum (like what has been done for congestion games [6, 7, 8]).
In the above formulation, other than ’s there is one more set of variables that we need to consider, i.e., ’s, for ArrowDebreu markets. If we separate the updates of ’s and ’s, we can still update ’s and ’s alternatingly. Fixing one set of variables temporarily, we can update the other set of variables in a way to decrease the objective value, and this can be done repeatedly. One natural attempt is to update ’s using mirrordescent types of approaches and ’s optimizing the objective value. Careless updates of ’s would defeat the purpose of optimizing the objective over ’s (by mirrordescent type updates while temporarily fixing values of ’s). This is where the difficulty comes from.
Observe that for all and the objective is nonincreasing with (since the derivative with respect to is ) so we know that is the best possible value if we fix values of ’s. Note that mirror descents and its convergence analysis ([4, 6]) do not work directly since we will modify ’s before each modification of ’s. Nevertheless, we can show that gradient descents along with another more flexible convergence analysis will do the job. Thus, our approach in this paper is to alternate between

a gradientdescent step of updating (with the previously chosen ) and

an optimization step (instead of gradientdescent step) of updating (with determined by the previously chosen in Step (1)).
Specifically, step (2) is done by each agent computing (his inverse best bangperbucks given the previously fixed in Step (1)), which can be done in a distributed way.
To prove the convergence, we have to ague that:

Step (2) does not increase the objective value (given the previously chosen ’s in Step (1)).
Note that we indeed need such new analysis: now the convex function for which we do gradientdescent step keeps changing as it is the original convex function with ’s fixed to those chosen in previous iteration.
1.1 Related Work
For Fisher market equilibria, the EisenbergGale convex program [13] can capture the equilibrium allocation for buyers with utility functions from the same class in the CES family. The problem of equilibrium computation was introduced to the theoretical computer science community by Devanur et al. [12]. The proportional response dynamics is equivalent to a generalized gradient descent algorithm with Bregman divergences on a convex program that captures the equilibria of Fisher markets with linear utilities [19, 4]. Tatonnement is a simple and natural rule for updating prices in markets. Cheung et al. [10] established that tatonnement is like a generalized gradient descent using the Bregman divergence for the class of Convex Conservative Vector Field (CCVF) markets.
Jain [14] reduced equilibrium computation in linear ArrowDebreu markets to that in bijective markets. Chen et al. [9] showed that the problem of computing an ArrowDebreu market equilibrium with additively separable utilities is PPADcomplete. Devanur et al. [11] formulated a rational convex program for the linear ArrowDebreu model to characterize a market equilibrium.
In almost all the market models that we discussed previously, every buyer is able to shop goods from every seller. This implies that the agents (buyers/sellers) reside in an underlying network that is a complete graph. In reality, trading may only happen between two immediate neighbors in a graph that is not necessarily complete. Kakade et al. [15] considered ArrowDebreu markets with such generality and designed algorithms that compute approximate equilibria.
If buyers are allowed to strategically report their interests in different goods in order to maximize their own utilities, the market becomes a market game [1, 5] where Nash equilibrium can be used as the equilibrium concept. The Fisher market game was first studied by Adsul et al. [1] for buyers with linear utility functions. They showed the existence of pure Nash equilibria under mild assumptions and provided necessary conditions for the existence of a pure Nash equilibrium. Brânzei et al. [5] showed that a Fisher market game for buyers with linear, Leontief, and CobbDouglas utility functions always have a pure Nash equilibrium. They also bounded the price of anarchy in Fisher market games.
2 Preliminaries
An ArrowDebreu market consists of a set of agents that trade a set of divisible goods among themselves. Each unit of good can be bought by an agent at price . The vector of prices is (). Each agent purchases a consumption plan . Each agent has an initial endowment of the goods, where is the amount of good initially held by . These initial goods can be sold to other agents and thus provide agent with revenue, which can in turn be used to purchase other goods. Every agent has a utility function : , where describes how much utility agent receives from consuming the plan . An ArrowDebreu market can then be described as .
We introduce the utility functions. The general Constant Elasticity of Substitution (CES) utility function family has the most widely used classes.
(1) 
where , . The Leontief, CobbDouglas, and linear utility functions are respectively given when approaches , approaches , and equals .
(2) 
(3) 
(4) 
The Leontief function captures utility of items that are perfect complements. The Linear function captures utility of items that are perfect substitutes. The CobbDouglas function represents a perfect balance between complements and substitutes.
The setting corresponds to a special case of a bijective market when , i.e., if and otherwise. The utility of agent for the good of agent is . The directed graph has an arc for every pair with . Jain [14] reduced ArrowDebreu markets to bijective markets: if a good is included in the initial endowment of multiple agents, we give a different name for each good; if an agent has goods in the endowment, we split the agent into copies that have same utility function and each own one of the goods. So, we can actually focus on addressing problems for bijective markets since solutions would also work for ArrowDebreu markets.
In a market equilibrium, we mean a set of prices and allocations satisfying the following conditions [11]. First, a agent uses an optimal plan at price if every agent is allocated a utility maximizing bundle subject to its budget constraint. That reduces to

For every , if , then is the maximal value over .

for every .
The market clears if ^{5}^{5}5W.l.o.g., we assume that for every since only and for in bijective markets. for every , i.e., every good is fully sold, and for every , i.e., the money spent by agent equals ’s income .
2.1 Convex Program for Linear Bijective Markets
Our algorithm for computing linear ArrowDebreu market equilibrium is based on solving the rational convex program formulated by Devanur et al. in [11]. There, they presented such rational convex program (for linear ArrowDebreu model), which guarantees the existence of an equilibrium, and answered the open questions of Vazirani [18]. We need to formally introduce the convex program before giving the alternating algorithm in the next section.
(5)  
Note that is the utility of agent for the item of agent . Variable is the money paid by agent to agent . Variable represents the inverse best bangperbucks of agent . Let , , and . Since the money spent by agent equals ’s income (revenue from selling her initial endowment) at market equilibrium, i.e., , we can derive that . Therefore, we can focus on . The objective function is
The space of feasible solutions is
The space of feasible ’s fixing the values of is
From [11], the following condition is necessary for the existence of an equilibrium.
The argument is in the appendix.
(*) For every strongly connected component of the digraph ,
if , then there is a loop incident to the node in .
The result from [11] shows the feasibility of such convex program.
Theorem 2.1 (Thm 1.1 of [11])
Consider an instance of the linear ArrowDebreu market given by the graph and the utilities . The convex program (5) is feasible if and only if (*) holds, and, in this case, the optimum value is 0, and the prices in an optimal solution give a market equilibrium with allocations . Further, if all utilities are rational numbers, then there exists a market equilibrium with all prices and allocations also rational, of bitsize polynomially bounded in the input size.
Instead of just using generic algorithms for solving a convex program, we aim at designing other algorithms to solve this rational convex program.
3 Alternating Algorithm
Let be the convex feasible space with diameter , and the objective is a convex function satisfying the property that there exist positive such that for any , , and .
In our case, define , which is the objective function fixing a value of ; is consisting of the feasible solutions
fixing the values of . One can check that at each , and satisfy the diameter assumption and property with appropriate settings of , and . We have the following proposition whose proof is in Appendix 1.
Proposition 1
For and , with .
We can obtain the gradient with respect to by taking the derivative of for each , i.e.,
(6) 
Let , , and , for a positive . The idea is to keep the current values of but update using the gradient with respect to . We denote component of at as and component of at as . Thus,
This is like, (1) first moving from point to point and (2) then moving from point to point . Repeat these two steps, and we will show that this alternating algorithm converges. We derive a market equilibrium for linear ArrowDebreu market.
We have to show that Step (2) does not increase the objective value given ’s, and each gradient step decreases the current objective value by some amount, using a new analysis for gradient descents with a convex objective.
3.1 Convergence
We first introduce the following lemma that is a convergence result of standard gradientdescent dynamics. Using this technical lemma whose proof will be shown in the next subsection, we then obtain the convergence for our alternating algorithm.
Lemma 1
Let , , and , for a positive . Whenever for ,
(7) 
With Lemma 1, we now show our main result of convergence for the alternating algorithm. Intuitively, it means that when the current value of the objective function is far away from the optimum given a fixed value of , gradient descents guarantee that the update of decreases the objective value by certain amount, and the update of only speeds up the convergence process.
Theorem 3.1
The alternating algorithm converges.
Proof
By Taylor’s expansion at point and the property of in terms of ,
The last term in the above inequality is at most, by and the definition of projection,
Therefore,
We obtain that
(8) 
which is exactly
(9) 
Finally, the guarantee for Step (2) is not hard to see: for each , we know that the best possible value if we fix values of ’s to ’s so never gives a larger objective value than .
We conclude that the value of the objective function converges to the set of ’s that give values within from the minimum.
Convergence rate. The value of the objective function is at most . Since the objective value decreases by at least until the value of the objective function reaches the set of ’s that give values within from the minimum, one can upper bound the convergence time.
3.2 Proof of Lemma 1
By Taylor’s expansion and the property of in terms of ,
(10) 
To bound the second term in (10), note that by the convexity of ,
which implies that
Let , and we know from above that . Now we are ready to show that when ,
(11) 
Note that implies that . By , we have , and thus , which satisfies the condition for Inequality (11).
Consider the triangle formed by . Let denote the angles that correspond to the points , respectively. Since and , we know that and thus . (When , we use the convention that .) As , we have that
which is at most 0 since . Moreover, because , we have that
Thus, we derive that
What is left to be shown is lower bounds for and .
Consider the triangle formed by , and let denote the angle at point . Then, we need the following two claims whose proofs will be in given in the following two subsections.
Lemma 2
If , .
Lemma 3
If , .
3.2.1 Proof of Lemma 2
Consider the triangle formed by
.
Let be the point on plane such that the triangles and are identical. ( if the triangles and are on the same plane.)
Clearly, angle equals angle , which is .
Thus, we can consider triangle instead of .
Assume for the sake of contradiction that . Note that since ,
This implies that line must intersect the line at some point with . However, since and is convex, we know that , we know that and thus by the definition of . This is a contradiction as . We can conclude that .
3.2.2 Proof of Lemma 3
Since and , must lie inside triangle which implies that the line passing through and must intersect line segment at some point . Let denote angles , , and , respectively.
We first claim that . To see that, we compare it with angle , denoted as , which is at least . Since triangles and are identical, angle (denoted as ) is the same as angle (denoted as ), which implies that angle is at most angle since lies on the same plane as . Since , if we rotate triangles and along line to make them lie on the same plane, must lie inside of triangle . As , we must have that .
Next, note that and . So, as and . Moreover,
As a result, we have that .
4 Future Work
An agent may strategically report their interests in different services in order to maximize their own utilities in markets. When we allow this and treat market equilibrium computation as a mapping from a given report, we are considering market games. As far as we know, it is still an open question if Nash equilibria exist in “ArrowDebreu market games” (as in Fisher market games [5]). It is also interesting to consider different classes of underlying social networks describing crowd structures [15].
There are some priceofanarchy results in Fisher market games [5]. Another interesting direction may be better bounding the price of anarchy in Fisher/ArrowDebreu market games.
References

[1]
B. Adsul, C. S. Babu, J. Garg, R. Mehta, and M. Sohoni.
A simplexlike algorithm for fisher markets.
In
Proc. of Algorithmic Game Theory
, 2010.  [2] K. J. Arrow, H. B. Chenery, B. S. Minhas, and R. M. Solow. Capitallabor substitution and economic efficiency. The Review of Economics and Statistics, 1961.
 [3] K. J. Arrow and G. Debreu. Existence of an equilibrium for a competitive economy. Econometrica: Journal of the Econometric Society, 1954.
 [4] B. Birnbaum, N. R. Devanur, and L. Xiao. Distributed algorithms via gradient descent for fisher markets. In Proceedings of the 12th ACM conference on Electronic commerce, 2011.

[5]
S. Brânzei, Y. Chen, X. Deng, A. FilosRatsikas, S. K. S. Frederiksen, and
J. Zhang.
The fisher market game: Equilibrium and welfare.
In
Proc. of 28th Conference on Artificial Intelligence
, 2014.  [6] P.A. Chen and C.J. Lu. Generalized mirror descents in congestion games with splittable flows. In Proc. 13th International Conference on Autonomous Agents and Multiagent Systems, 2014.
 [7] P.A. Chen and C.J. Lu. Playing congestion games with bandit feedbacks (extended abstract). In Proc. 14th International Conference on Autonomous Agents and Multiagent Systems, 2015.
 [8] P.A. Chen and C.J. Lu. Generalized mirror descents in congestion games. Artificial Intelligence, 241, 2016.
 [9] X. Chen, D. Dai, Y. Du, and S.H. Teng. Settling the complexity of arrowdebreu equilibria in markets with additively separable utilities. arXiv preprint arXiv:0904.0644, 2009.

[10]
Y. K. Cheung, R. Cole, and N. Devanur.
Tatonnement beyond gross substitutes?: gradient descent to the
rescue.
In
Proceedings of the fortyfifth annual ACM symposium on Theory of computing
, 2013.  [11] N. R. Devanur, J. Garg, and L. A. Végh. A rational convex program for linear arrowdebreu markets. ACM Trans. Econ. Comput., 5(1), October 2016.
 [12] N. R. Devanur, C. H. Papadimitriou, A. Saberi, and V. V. Vazirani. Market equilibrium via a primaldual algorithm for a convex program. Journal of the ACM (JACM), 55(5), 2008.

[13]
E. Eisenberg and D. Gale.
Consensus of subjective probabilities: The parimutuel method.
The Annals of Mathematical Statistics, 1959.  [14] K. Jain. A polynomial time algorithm for computing an arrowdebreu market equilibrium for linear utilities. SIAM Journal on Computing, 37(1), 2007.
 [15] S. M. Kakade, M. Kearns, and L. E. Ortiz. Graphical economics. In Proc. of Conference on Learning Theory, pages 17–32, 2004.
 [16] R. Kleinberg, G. Piliouras, and E. Tardos. Load balancing without regret in the bulletin board model. Distributed Computing, 24, 2011.
 [17] R. M. Solow. A contribution to the theory of economic growth. The quarterly journal of economics, 1956.
 [18] V. V. Vazirani. The notion of a rational convex program, and an algorithm for the arrowdebreu nash bargaining game. Journal of the ACM (JACM), 59(2), 2012.
 [19] L. Zhang. Proportional response dynamics in the fisher market. In Proc. of Automata, Languages and Programming. 2009.
Appendix 0.A Argument of Condition (*) for Theorem 2.1
We restate the argument of [11] here. Assume that is a singleton strongly connected component without a loop. Let denote the set of nodes different from that can be reached on a directed path in from . In an equilibrium allocation, the agents in spend all their money on the goods of the agents in , which implies that , contrary to our assumption that for every .
Appendix 0.B Proof of Proposition 1
Let . Consider any , . First, we have
Let . Thus, we have
Next, note that except for , we have
and if , we have
This means that each entry of the Hessian matrix is at most . Then for any , we have
The first inequality is by . The third inequality is by CauchySchwarz inequality. This implies that with .