1 Background and Contribution
We are motivated by the growing interest in the sharing economy (e.g., ), along with allocation mechanisms without money [3, 5] or schemes based on the so-called Barter economy . We therefore assume a market where each agent is willing to provide a quantity of goods equal to the one she receives, hence the term balanced exchange, introduced in . Regarding indivisible goods, this setting generalises kidney exchange  in the currently non-applicable scenario where the exchange is made among hospitals. Regarding divisible ones, our setting formalises the time-banking movement (see  and references therein), in which people exchange services under the “1 hour1 hour” principle. Divisibility in our approach could also be considered appropriate for “debt exchange”, in which organisations or individuals could perform debt reliefs of equal size alongside cycles of debtor-debtee pairs.
That is, the market under our consideration offers the exchange of a single (in)divisible good or multiple goods that are all measured under a common unit. It may therefore be formalised as a directed graph where nodes represent agents and arcs ‘buyer-seller’ pairs. Each such pair could be characterised by a maximum exchange amount, i.e., an arc capacity. In addition, a social planner could assign a weight per pair to signify the, possibly differentiating, importance of the corresponding exchange (these are the “welfare judgments” of ). For example, the social planner could wish to set unitary weights in order to signal that the social optimum is just the maximum total exchange, or set radically varying weights in order to prioritise exchanges involving socially vulnerable agents.
Each agent is indifferent regarding the goods she offers (i.e., her endowment) and also indifferent among goods offered by the same agent but expresses her strict preferences over the agents she finds acceptable to receive goods from. This is quite realistic in the sense that an individual entering a time sharing for the service she may offer has no preference of who is receiving it, as long as she gets a service she likes, and she reasonably distinguishes the most preferred persons offering it. Let us express this also in the classical house-allocation context of Shapley and Scarf : each agent is endowed by property rights in the form of time slots, during which she may live in one or more houses, and has a strict ordering over owners offering houses that she prefers more than hers (among which she is indifferent). In debt terms, this applies in an inverse manner: although one would happily receive any money owned to her, being indifferent on which debtor pays which amount, she must comply to an ordering regarding the debtee to be paid first (e.g., the tax office) if a relevant debt-relief cycle is available.
Contrary to the typical housing market or the settings generalising it (e.g., ), a solution to our problem is not a matching but a set of cycles in the aforementioned directed graph. As the cycles forming a balanced exchange are not necessarily arc-disjoint, we propose a modified TTC mechanism that finds a Pareto optimal balanced exchange; if all arc capacities are one, it resembles the augmented top-trading-cycles (ATTC) procedure in . Pareto optimality is defined in terms of lexicographic preferences, as in ; i.e., an exchange is Pareto optimal if there is no other exchange in which some agent gets slightly more from a more preferable agent but no agent gets something worse.
Let us discuss relevant studies that have appeared recently. A quite similar problem is discussed in , i.e., a market in which each agent is endowed with multiple units of an indivisible and agent-specific good and whose outcome is a circulation defining a balanced exchange of goods. This apparently coincides with the indivisible variant of our setting, studied under a different focus: the work in  claims that, under the thereby-called “general capacity configurations”, there is no circulation rule that satisfies individual rationality, Pareto efficiency, and strategy-proofness (we refer to  for relevant definitions). Another relevant setting is discussed in  , where each agent classifies goods as desirable or not; under this dichotomy restriction, mechanisms accomplishing all three properties are plausible. A model close to the one of
, where each agent classifies goods as desirable or not; under this dichotomy restriction, mechanisms accomplishing all three properties are plausible. A model close to the one of appears in , where the maximum size solution is shown to be also Pareto optimal because each agent ranks her acceptable bundles only according to their size (i.e., the total size of acceptable services or money or housing contracts she receives). Our last link is to , where an agent has a large utility loss if giving away more goods than she gets and any acceptable (i.e., individually rational) exchange (not necessarily balanced) can be viewed as a collection of directed cycles in the agent-goods bipartite graph. Motivated by kidney exchange, the results in  reveal how a bound on the number of these cycles imposes a limit on the approximability of a max-size exchange by any randomised mechanism that also satisfies strategy-proofness.
Let us now discuss our contribution and how our results exploit ideas from the literature. As already mentioned, we draw inspiration from the extensive literature on kidney exchange (see  and references therein) and from the literature generalising the Shapley-Scarf market in “many-to-many” markets of indivisible goods . The former motivates our simple variation of TTC that is specifically tailored to balanced exchanges, discussed in Section 3. The latter motivates our characterisation of Pareto optimal exchanges as maximal, trade-in free and coalition-free, presented in Section 4, thus adding to the problems for which Pareto optimality can be characterised formally. Based on that characterisation, we show in Section 5 how to identify whether a give exchange is Pareto optimal in polynomial time by transforming it to an instance of . Most importantly, the same approach allows us to obtain a Pareto optimal balanced exchange by iteratively improving any balanced exchange.
Perhaps the least obvious literature finding we employ comes from early work on integral dicycle packings . A dicycle packing of a directed graph is a set of arc-disjoint cycles, i.e., in our terms an exchange when all arcs have capacity or, equivalently, when each ‘buyer-seller’ pair may exchange up to one unit. Therefore, we could validly name our setting as dicycle packing with preferences and non-unitary arc capacities. Although the dicycle packing problem problem is known to be -hard in its integral form, its fractional version is not. By generalising some results of , we show how to find a max-weight fractional dicycle packing and thus a max-weight exchange in polynomial time for divisible goods under arbitrary arc capacities. This approach finds a max-weight Pareto optimal exchange if agents are indifferent not only regarding their endowment but also the goods they receive (as in ).
In the presence of preferences, we show why this approach also outputs a max-weight Pareto optimal exchange if arc weights are non-increasing with respect to an agent’s preference list; although we call the weights “preference-concordant” in the terminology of , these are also called “aligned interests” in . Concordance could be considered applicable in the case where every ‘buyer-seller’ pair agrees also on a cardinal utility that must, however, comply with the ordinal preferences of the buyer. The social planner could then wish to maximise social welfare under this valuation of bilateral transfers of goods. Alternatively, the social planner could keep the privilege of defining this valuation but in a way that does not antagonise the preferences submitted by the agents. That could become applicable, for example, in the setting of workers exchanging shifts, as described in . What we show here is that under concordancy there is a welfare-maximizing allocation that is Pareto efficient, in slight contrast to  where (under aligned interests) any welfare-maximizing allocation is Pareto efficient.
All results on max-weight Pareto optimal balanced exchange are presented in Section 6. The technical derivation of all the above requires some notation, discussed in Section 2 and certain definitions and interim results presented in subsequent sections. For ease of presentation, we show our results for divisible goods and simple graphs and then explain in Section 7 that all results up to Section 5 hold also for indivisible goods and graphs with parallel edges. Some open questions are also discussed in that concluding section.
2 Definitions and Notation
A Pareto optimal balanced exchange instance can be defined as a capacitated directed graph where and every agent has a strict preference list that orders the agents such that . Given a set of cycles (i.e., a packing) and an arc , let be the subset of such that is an arc of for every cycle . Let also a function be an exchange function if for every . We denote by the quantity . Then, an exchange in a instance is a pair where is a packing in and is an exchange function.
Observe that an agent in a instance having either or can be removed from because she cannot be part of a cycle. These removals can be done recursively, hence we may assume without loss of generality that , for all
Let be the sum of the capacity of incoming and outgoing edges of respectively. Note that is an implicit upper bound on the quantity exchanged by agent The existence of an explicit upper bound for each (i.e., a node capacity) can be modelled by splitting into nodes and , connecting all arcs incoming to (resp. outgoing from ) to (resp. ) and placing a capacity on the arc . Also, arc is the single arc outgoing from and the single arc incoming to Given this transformation, we can assume hereafter that agents may or not have an upper bound on the quantity they exchange. Also, we can present our results without explicitly considering agent capacity.
As it is customary, denotes that precedes in the preference list of , thus being more preferable. Let be the preference list of an agent and , be two exchanges. We say that prefers more than and denote that by , if there exists some such that for and . We say that dominates to and denote that by if there is no agent such that and there is some agent such that An exchange is Pareto optimal exchange in the usual sense, i.e., if there is no exchange where an agent can be better off without another agent worsening, i.e., there is no such that .
3 Top Trading Cycles
We present a procedure analogous to the one in  that sends the maximum possible “flow” over all cycles showing up in each “top trading” iteration and then reduces residual capacities and removes vertices without any remaining incoming capacity. Let us remind the reader that the graph contains only nodes corresponding to agents.
Algorithm 1 returns a Pareto optimal balanced exchange for a instance.
Let us first show the following.
In an instance of where for every there exists an exchange where for every .
Proof. Let be an arbitrary cycle of and be an edge of minimum capacity. We add to , we reduce the capacity of edges of by and we remove every edge that now has zero capacity. Observe that retains the property for every . We repeat this process until becomes acyclic. Now, if there is an edge that has not been removed, then there is an edge that has capacity and there is no outgoing edge of . It holds for every vertex that . Thus, . This is a contradiction because . Hence, there is no edge of non-zero capacity when becomes acyclic and this concludes the proof.
We can now show the main proof of this section.
Proof of Theorem 1. It is easy to see that the output of Algorithm 1 is an exchange satisfying for every . Moreover, is maximal, as the existence of a cycle after reducing the capacity of the arcs in cycles of would mean that still contained all vertices of
Assume that is not Pareto optimal. Then there is an exchange such that . If for every because of Pareto domination, there exist an arc where . Let where every arc of zero capacity is removed. As both exchanges and are balanced, it holds that for every hence the graph cannot be acyclic. This yields that there is an arc such that .
Let be the value of after round and be the earliest round where for an arc it holds that . If there is a contradiction to . Thus, and there exists an arc where and . Let be a cycle of where belongs to. As and must have already been removed from at round of Algorithm 1; otherwise would not be the most preferred agent for at this round. This implies that there is an arc of where .
Let be the first arc with this property in the directed path i.e., the vertices of the path from to in are among the ones removed in round , including itself; also let be an arc of . Now consider the graph and remove from it all arcs with zero capacity. It holds that for every vertex of and that is an arc of this graph so there is an arc in . As this contradicts the fact that has been removed at round . Hence, is Pareto optimal.
In this section we present a characterization of Pareto optimal balanced exchanges, analogous to the one introduced for Pareto optimal matchings . Let be an exchange in a directed graph We denote as the arcs of the graph over which goods are exchanged in , i.e., Let also denote the graph with residual capacities, i.e., where . Now we can present the definitions of maximal, trade-in-free and coalition-free in .
An exchange is
maximal if is acyclic,
trade-in-free if for every there is no path in and , and
coalition-free if for every there are no paths ,, in such that for every
We can now present the main proof, whose technical details are quite elaborate, thus being followed by an illustrative example.
An exchange is Pareto optimal if and only if it is maximal, trade-in-free and coalition-free.
Proof. It is rather direct to check that a Pareto optimal exchange it is maximal, trade-in-free and coalition-free, as otherwise it could be improved and thus dominated.
Conversely, assume that an exchange is maximal, trade-in-free and coalition-free but not Pareto optimal. Then, there is an exchange such that . Consider now that if there exists an exchange that dominates , then there must be a maximal exchange that dominates ; thus, without loss of generality, is maximal.
Let for every Let also , where and are the vertices that are incident to the arcs of . We denote by and and the out-degree and the in-degree of a vertex respectively in .
Because of maximality of and , and are both acyclic: e.g., if there were a cycle in , then for every , hence would also be a cycle in and would not be maximal. Also note that implies for any , as otherwise , a contradiction to the assumption that .
To complete the proof given these observations, we need to construct another directed graph with the property that, if complies to Definition 3 but is dominated, all vertices in have an outgoing arc and that in turn implies that there exists a cycle in that leads to a Pareto improvement of .
The vertex set is obtained as follows:
if and , is added to ;
if and , is added to ;
if and , two vertices and are added to ; and,
if and , is added to .
The arc set is constructed as follows.
If , then or or or is added to , depending on whether or and or appears in ; we denote these arcs by since they are reversed.
If , , and is the most preferred agent for in , then or or or is added to depending on whether or and or appears in .
If and , or is added to depending on whether or appears in .
Let us explain why, by construction, every vertex in has out-degree at least 1.
If and , then and an arc of type (ii) starting from belongs to .
If and , there exists an arc so that (type (i)).
If and , then so that there exist an arc in (type (ii)); moreover, if then (type (i)).
If and , then an arc of type (iii) starting from belongs to .
The fact that every vertex in has out-degree at least 1 implies that there is a directed cycle in . If has no arcs of , then there exists also a cycle in . Thus, is not maximal and this completes the proof.
Otherwise, let where for By construction of , there are no consecutive arcs of in . Moreover, if is an arc of , then either or and is the most preferred agent for in . Now, in what follows, if a vertex of is of type or , let be the origin vertex of . It holds that for every because is the most preferred agent for and . This implies that if , there exists an arc and a path in where , i.e., is not trade-in-free. If , there exist and paths in and for every But then, is not coalition-free and this completes the proof.
In the graph in Figure 1, let and for every other arc of The preference lists of the agents are as follows:
Consider the exchange that contains the cycles and where . Consider also the exchange that contains the cycles , and where . Observe that . The graph of the proof of Theorem 4 is the path and the graph is the path i.e., both are acyclic.
The graph of the example appears in Figure 2. The existence of the cycle implies that is not Pareto optimal. The coalition replaces the arcs and of by the paths and which is an improvement for .
Theorem 4 allows us to obtain a polynomial-time method that recognizes whether a given balanced exchange in an instance of is Pareto optimal. This method is based on constructing a one-to-many Pareto optimal matching instance in which one can check if an appropriate matching is Pareto optimal .
Given a directed graph with capacities and an exchange , let us remind the reader that is the set of arcs that belong to a cycle of and has . Let also be the number of arcs that belong to a cycle of and whose ending vertex is
We construct a one-to-many matching instance with one-sided preferences , where we denote the respective bipartite graph by ), as follows:
The set of agents is .
The set of objects is .
The quota of an object is and the quota of each agent is
For every agent let be the graph obtained by after removing the arcs where . The preference list of the agent contains, in an arbitrary order, the objects whose respective vertices are reachable from in and in the last position of the list.
(cont.) Consider the exchange where contains the cycles , and has . The instance contains the objects with quota and with quota . The agents and their preference lists may be as follows:
There are two critical aspects regarding our construction, related to maximality and trade-in-freeness. We explain these in detail, although they impose no barrier to our method, as both properties can be checked in polynomial time before constructing the instance of one-to-many matching with one-sided preferences.
First, if an object appears in the preference list of , this implies that ( is not maximal. However, if there is no appearance of an object in the list of an agent this does not exclude the non-maximality of ( such a “weird” situation occurs if there exists a cycle in such that every vertex of the cycle does not belong to any cycle of . Remind that by Definition 3i we can easily answer if is maximal by checking if is acyclic.
Secondly, an object may appear twice in the preference list of i.e., may have parallel edges. In the above example, and appear twice in the preference lists of and respectively. But then, one can observe that is not trade-in-free because the arc can be replaced by the (improving) path and by . The following lemma connects Definition 3ii with the existence of parallel edges in .
is trade-in-free if and only if has no parallel edges.
Proof. By construction of only an edge of the form where could be a parallel edge. Hence, assume that is trade-in-free and let an arc be such an arc of . Then, and is the last entry in the preference list of . As is trade-in-free and there is no path in and i.e., is not reachable by in so is a simple edge of .
Conversely, assume that there are no parallel edges in . Let be an edge of where may be a parallel edge. As is a simple edge, then is not reachable by in . Thus, there is no path in where and this implies that is trade-in-free.
We can recognize polynomially if is maximal and trade-in-free by checking if is maximal and has parallel edges, respectively. Thus we may safely assume that we construct starting with a maximal and trade-in-free exchange. That is, in what follows, the instance is used to check only if is coalition-free.
The definitions of a maximal, trade-in-free and coalition-free bipartite matching are as in . Define which is unique as there are no parallel edges. In , every agent is matched once and every object is matched exactly times. This implies that is trade-in-free and maximal in .
(cont.) Considering exchange a coalition with respect to is . Observe that this coalition regarding corresponds to the coalition regarding that replaces and with and , respectively. Therefore, using the instance we can detect that is not Pareto optimal and, in addition, improve it to obtain the exchange
Let us recall from that a coalition in a bipartite graph with one-sided preferences is related to the cycle . The following theorem completes the recognition of Pareto optimality for a balanced exchange.
Let be a maximal and trade-in-free exchange in an instance of . Then is Pareto optimal if and only if the matching is Pareto optimal in the instance .
Proof. Firstly, assume a matching defined in , which is not a Pareto optimal matching in . As is maximal and trade-in-free, this implies that is not coalition-free (by [7, Theorem 1]). Let be a coalition with respect to . Thus, for every i.e, there exist a path in such that . The coalition is related to the cycle . Recall that the edges of represent an arc or a direct path in . Given these, we construct a directed closed walk by replacing the edges in with the paths of where the arcs of that are represented by edges of the coalition are reversed. Hence, this closed walk has the form:
where because contains at least two pairs. After removing the reversed arcs of , a set of directed paths are obtained i.e., . As for , these paths comprise a coalition in which the arcs of have been replaced by the aforementioned paths. This contradicts the assumption that is not coalition-free and concludes that, if is not a Pareto optimal matching in then is not a Pareto optimal exchange.
Now, assume that is not Pareto optimal. By the hypothesis of the current Theorem and Theorem 4, it can only be that is not coalition-free. Thus, there are such that there exist paths , in and for every In we denote the agent obtained by the arc of . The object (modulo ) belongs in the preference list of because of the path and as then prefers to . Thus, is a coalition with respect to in . This proves that is not a Pareto optimal matching in and completes the proof.
By [7, Corollary 1], the Pareto optimality of a bipartite matching with one-sided preferences can be determined in polynomial time. This, in conjunction with Theorem 6, implies the same in our setting. If a given exchange is not Pareto optimal, the recognition method yields an improvement that leads to an exchange that dominates the initial one. Repeating this, a Pareto optimal exchange is obtained after a number of iterations that is also polynomial because, at each iteration, at least two agents receive goods from a more preferred agent. Overall, we have the following.
Given any maximal and trade-in-free exchange, a Pareto optimal exchange can be obtained in polynomial time.
Observe that Corollary 7 allows for multiple methods - i.e., mechanisms - for obtaining a Pareto optimal exchange, possibly quite different from TTC. This idea is exploited in the next section.
6 Max-weight Pareto Optimal Exchange
As discussed in the introductory section, each arc can be accompanied by a weight that signifies the social importance per unit of the associated exchange. A more general weighted version would be to assume a weight function where is the set of all directed cycles in . Then, the problem of finding a max-weight Pareto optimal balanced exchange is denoted by . Although the complexity of is unknown, we present two cases where can be solved polynomially, both having potential applicability.
If the agent expresses no preference over the goods she receives or the agents she gets something from, we have a version of our problem that is quite close to that of [2, 10]. If, in addition, all cycles have weight is equivalent to the fractional dicycle packing problem which can be solved polynomially, as its linear programming formulation suffices to contain only inequalities associated with cycles of length at most
is equivalent to the fractional dicycle packing problem which can be solved polynomially, as its linear programming formulation suffices to contain only inequalities associated with cycles of length at most[11, Theorem 14].
We prove a similar result in the case where the weight of a cycle is additive, i.e., it is the sum of the weights per arc. That is, let where if and only if is of the form i.e., it has been introduced to accommodate the capacity of agent as discussed in Section 2. Let for every cycle in (if all arc weights are then is the length of the cycle). Assume that is a complete directed graph by adding arcs of zero capacity and weight for every and . can be described as a linear program as follows.