1 Introduction
Fair allocation is a research agenda that has been extensively studied in the recent years. It is a particularly dynamic field in both artificial intelligence (Brandt et al., 2016, Part II) and economics (Moulin, 2018). It investigates the issue of allocating a set of objects to a set of agents while taking into account their preferences. Two distinct settings are usually considered, depending on whether the objects are divisible or not. In this work, we focus on the latter, assuming that every object is indivisible hence can only be allocated entirely and to a single agent. The setting we are interested in is even more restricted as we also assume there is exactly one resource per agent. This setting is usually referred to as house markets (Shapley and Scarf, 1974).
In this basic but very common setting, the celebrated top trading cycle (TTC) algorithm (Shapley and Scarf, 1974) is known to satisfy numerous key desirable properties: Paretoefficiency, strategyproofness and individual rationality (Shapley and Scarf, 1974; Roth, 1982). This procedure is in fact the only one to satisfy these three properties in house markets with strict preference orders, i.e. when agents express strict linear orders over the resources (Ma, 1994).
An interesting way to get around Ma’s result is to consider different preference domains. Aziz and De Keijzer (2012) extended the preference domain of strict linear orders by allowing for indifferences between the items. It is also possible to investigate relevant domain restrictions such as the singlepeaked domain (Black, 1948; Arrow, 1951). In this domain, preferences are decreasing the further you go from the most preferred resource of each agent. This domain restriction is commonly encountered in various realworld problems where some characteristics of the resources inherently define a common axis: political trends of candidates in elections (Bruner and Lackner, 2015), storage capacities for harddisks, sizes for clothes… In politics for instance, preferences usually decrease when considering candidates further away on the political spectrum, from the most preferred candidate. In resource allocation, singlepeaked preferences are also particularly relevant. Take for instance agents who are looking for houses in a street which has a metro station at one of its end, and a bike rental platform at the other end. The agents’ preferences are likely to be singlepeaked depending on their favorite means of transportation. In this paper, we will focus on this natural preference domain.
Recently, Bade (2019) has also considered house markets under singlepeaked preferences and introduced a new allocation procedure called the Crawler that is efficient, strategyproof and individually rational. It is moreover strictly different from TTC, hence weakening Ma’s result under singlepeaked preferences. In addition to satisfy the same properties as TTC, the Crawler is also easier to understand in the sense of obviously dominant strategies (Li, 2017). Bade (2019) proved that the Crawler can be implemented using obviously dominant strategies while TTC can not be, even on the singlepeaked domain.
Nevertheless, both the TTC algorithm and the Crawler suffer from some drawbacks of centralized procedures: they rely on a benevolent central authority to proceed. Depending on the context, either more stringent guarantees in terms of strategyproofness, or more decentralization, may be desirable.
Centralized procedures may be perceived as less fair, in particular their outcomes are less acceptable by the agents (Leventhal, 1980; Thibaut and Walker, 1975; Van den Bos et al., 1997). Moreover these procedures require rather advanced communication and coordination protocols. Indeed both procedures can potentially involve long cycles of resource reallocations between agents. In some real life scenarios such cycles may not be acceptable, for example in the kidney exchange problem they are impossible to implement while taking into account the time constraints (kidney exchange programs usually restrict exchange cycles to sizes two or three (Roth et al., 2005)
). The probability of failure also increases with the size of the cycle. This issue is orthogonal to the question of decentralization: centralized procedures can be designed (and are, in the case of kidney exchanges) so as to restrict the size of cycles involved.
An alternative approach is based on decentralized dynamics based on local exchanges between agents. In this model, long cycles pose real challenges (Rosenschein and Zlotkin, 1994) as they involve distributed coordination among numerous agents in order to exchange the resources. In a related version of this paper, Damamme et al. (2015) presented and analysed the simplest possible local deals: the swapdeals. There, agents randomly meet each other, in a pairwise fashion, and exchange their resources if they both benefit from it. The process iterates until a stable state, an equilibrium, is reached. On the singlepeaked domain, Damamme et al. (2015) showed that the swapdeal procedure is efficient: every allocation stable with respect to swapdeals is Pareto optimal. A similar link between local deals and global properties in house markets was recently made by Kondratev and Nesterov (2019), who established that a matching is popular if and only if no (majority) improving exchanges between 3 agents exist.
1.1 Contribution
This paper focuses on house markets with singlepeaked preferences. In this setting we first discuss the Crawler procedure (Bade, 2019). Inspired by the Crawler we introduce the Diver, a procedure that checks whether an allocation is Paretooptimal or not, which is asymptotically optimal in terms of communication complexity.
Next, we investigate swapdeal procedures. We significantly extend Damamme et al. (2015) results on the swapdeal procedure by showing that the singlepeaked domain is a maximal domain on which the procedure is efficient. Although not all allocations Paretodominating the initial allocation can be reached by swapdeals, it turns out, interestingly, that outcome of the Crawler always can. We then investigate the cost of such decentralized procedure, when the objective is either to maximize the average or minimum rank of the resource obtained by the agents. We show that the bounds found in Damamme et al. (2015) for more general settings are also valid in the singlepeaked domain.
Finally, we explore experimentally the different procedures discussed in this paper. These experiments highlight that the swapdeal procedure performs particularly well for these objectives. We further show that very few number of swapdeals are needed before reaching a stable allocation emphasizing the interest for such procedures.
1.2 Outline of the paper
We first present some related works (Section 2) and we introduce our model and the different criteria used to assess both the allocations and the procedures in Section 3. Section 4 presents the stateofart allocation procedures discussed in this paper. The Diver procedure is explored in Section 5 while the swapdeal procedure is investigated in Sections 6 and 7. Section 8 deals with the price of decentrality. The experimental analysis is presented in Section 9. Finally a discussion over our results and a conclusion are given in Section 10.
2 Related works
The theory of fair division has been introduced by Steinhaus (1948) who defined "the Problem of Fair Division". This seminal work has led to an extensive literature in economics (see Young (1995); Moulin (2004) or Moulin (2018) for complete surveys). Most of these works focus on settings with divisible resources and/or allow for monetary transfers between the agents. Henry (1970) and Shapley and Scarf (1974) are among the first ones to consider indivisible resources. While in the former an additional divisible resource plays the role of money, in the latter all the resources are assumed to be indivisible.
Fair division was introduced later in computer science and artificial intelligence, through the study of the cake cutting problems (Brams and Taylor, 1996): a divisible and heterogeneous resource is to be divided among a finite set of agents. A wide literature has been developed since then, enriching the economists’ approach by mainly focusing on the computational issues (Chevaleyre et al., 2006). Another line of research has paid particular attention to settings involving indivisible resources as it poses more technical issues. We refer the reader to the following surveys on this literature: Nguyen et al. (2013), Bouveret et al. (2016) and Lang and Rothe (2016).
In the present paper we focus on the model defined by Shapley and Scarf (1974), called house market or assignment problem, in which there are exactly as many indivisible resources as agents and no money. Shapley and Scarf (1974) defined the toptrading cycle (TTC) procedure which has been extensively studied (Roth, 1982) and shown to be unique when preferences are strict (Ma, 1994).
Bogomolnaia and Moulin (2001) renewed the interest for the assignment problem in the economic literature by investigating randomized procedures. Subsequent work by Kasajima (2013) introduced singlepeaked preferences in their setting. Hougaard et al. (2014) later considered deterministic and probabilistic solutions under singlepeaked preferences.
Aziz and De Keijzer (2012) defined a set of Paretoefficient procedures generalizing the TTC algorithm when allowing for indifferences, which however include procedures that are not strategyproof. Plaxton (2013) and Saban and Sethuraman (2013) independently proposed general frameworks for efficient and strategyproof generalization of the TTC procedure with indifferences.
Bade (2019) explored another direction by restricting preferences to singlepeaked domains. In this case she presents the Crawler that satisfies the same properties as TTC hence overcoming Ma’s result (Ma, 1994) on the singlepeaked domain.
Following this line of work, we assume singlepeaked preferences in this paper. This domain of preferences has been introduced by Black (1948) and Arrow (1951). It has been more specifically studied in voting theory and now are a very common domain of preferences (Moulin, 1991; Elkind et al., 2017).
Numerous works have used singlepeaked preferences in the context of fair division. Sprumont (1991) studied the fair division problem with singlepeaked preferences and divisible objects. He defines and characterizes the uniform allocation rule, the unique strategyproof, efficient and anonymous allocation rule in this setting. The fairness properties of this rule have been subsequently explored by Ching (1994) and Thomson (1994a, b) who showed that it is envyfree, onesided resource monotonic and consistent.
As already mentioned, Hougaard et al. (2014) extended this research area to indivisible resources and considered the problem of assigning objects to a line under singlepeaked preferences. Subsequently, Aziz et al. (2017) investigated the computational aspects of this assignment problem.
Most of the procedures we talked about, among which the TTC algorithm, are centralized procedures which rely on a benevolent entity to proceed. Of particular interest for us are the decentralized procedures. A growing literature exists on such procedures. Herreiner and Puppe (2002) and Brams et al. (2012) respectively introduced the descending demand procedure and the undercute procedure, two semidecentralized procedures where the agents announce their preferred resources to a referee. These procedures return envyfree and balanced allocations when there are two agents. Another semidecentralized procedure is the picking sequence in which agents come in turn to pick one of the remaining resource (Brams and Taylor, 2000; Bouveret and Lang, 2011).
Following the development of multiagent systems, fully decentralized procedures have been defined through the idea of local exchanges between agents in the idea of PigouDalton deals (Moulin, 1991). Sandholm (1998) considered the problem of reallocating tasks among individually rational agents. Endriss and Maudet (2005) and Aziz et al. (2016) investigated different complexity problems in this setting. Endriss et al. (2006) and Chevaleyre et al. (2010) respectively characterized the class of deals and the class of preferences required to reach socially optimal allocations. Chevaleyre et al. (2007) focused on reaching efficient and envyfree allocations. Similar procedures were also introduced in the area of twosided matching (Roth and Vate, 1990; Ackermann et al., 2011).
The idea of using swap deals was explored for instance by Abbassi et al. (2013), who studied barter exchange networks. Gourvès et al. (2017) and Saffidine and Wilczynski (2018) studied dynamics of swapdeals by considering an underlying social network constraining the possible interactions of the agents, and focusing on complexity issues. These results were recently extended by Bentert et al. (2019).
3 Preliminaries
We start by presenting the basic components of our model and the different fairness and efficiency concepts discussed in this paper.
3.1 The model
Let us consider a set of agents and a set of resources. An allocation
is a vector of
whose components represent the resource allocated to .Agents are assumed to express their preferences over the resources through complete linear orders. Using ordinal preferences is a popular trend in fair division (Brams et al., 2003; Bouveret et al., 2010; Aziz et al., 2015). We denote agent ’s preferences, where means that prefers over .
A preference profile is then a set of linear orders, one for each agent. For a given linear order , we use to denote its topranked item: . Similarly, refers to the second most preferred resource in . With a slight abuse of notation we will write and to refer to and . When it is not clear from the context we will subscript these notations to specify the resource set, for instance is the most preferred resource for agent among resources in . Given resource and an agent , we use to refer to the rank of in , that is for , for and so on^{2}^{2}2The rank would correspond to the Borda score an agent gives to a resource..
An instance is a vector composed of a set of agents , a set of resources , a preference profile and an initial allocation .
In some settings, natural properties of the agents’ preferences can be identified, thus restricting the set of possible preference orderings. The notion of preference domain formalizes these restrictions. For a set of resources , we denote by the set of all linear orders over . Any subset is then called a preference domain.
We say that an instance is defined over a preference domain if i.e. the preferences of the agents are selected inside .
3.2 Singlepeaked preferences
Under singlepeaked preferences, the agents are assumed to share a common axis over the resources and individual rankings are defined with respect to this axis.
Definition 1.
Let be a set of resources and a linear order (i.e. the axis) over . We say that a linear order is singlepeaked with respect to if we have:
In other words, is singlepeaked over if is decreasing on both the left and the right sides of , where left and right are defined by .
For a given linear order , we call the set of all the linear orders singlepeaked with respect to :
A preference domain is called singlepeaked if and only if for a given . An instance is said to be singlepeaked if it is defined over a singlepeaked preference domain.
Ballester and Haeringer (2011) provided a characterization of singlepeaked domains. In particular, they gave a necessary condition for a domain to be singlepeaked: it should be worstrestricted (Sen, 1966).
Definition 2.
An instance is worstrestricted if for any triplet of resources , one of them is never ranked last in the profile restricted to these three resources.
Proposition 1 (Ballester and Haeringer (2011)).
If an instance is singlepeaked then it is worstrestricted.
Let us illustrate the singlepeaked domain with a simple example.
Example 1.
Let us consider the following linear orders defined over 3 resources.
One can check that these orders define a singlepeaked preference profile with respect to defined as: . In fact these orders exactly correspond to . However, let us consider the following preferences.
It can be checked that there is no linear order (i.e. axis) over which these preference are singlepeaked. Indeed, they are not worstrestricted: every resource of the triplet is ranked last at least once, hence the preference domain is not singlepeaked.
3.3 Efficiency and fairness criteria for an allocation
There exists an extensive literature investigating how to define the efficiency of an allocation (see Chevaleyre et al. (2006) and Thomson (2016) for some surveys). The gold standard in terms of efficiency of an allocation is Paretooptimality. We say that an allocation Paretodominates another allocation if all the agents are weakly better off in than in , with at least one agent being strictly better off. An allocation is then called Paretooptimal if and only if there does not exist an allocation that Paretodominates it.
The efficiency of an allocation can also be evaluated by measuring the average rank () of the resources held by the agents defined as:
Maximizing the average rank is equivalent in our case to maximizing the utilitarian social welfare which is a widely used measure of efficiency that dates back to the idea of utilitarianism.
However, maximizing the average rank or searching for Paretoefficient solutions may not be satisfactory as it can lead to particularly unfair allocations. The allocation in which one agent receives all the resources and the others nothing is Paretooptimal but is unarguably unfair. For this reason, many fairness criteria have been introduced.
In this paper, we will focus on maximizing the minimum rank () of the resources held by the agents defined as:
When using the rank as cardinal utility function, the minimum rank is equivalent to the egalitarian welfare. Maximizing the minimum rank follows Rawls’ principle of maximizing the welfare of the worstoff (Rawls, 1971). It has been introduced by Pazner and Schmeidler (1978) and is now a very common rule in fair division (Thomson, 1983; Sprumont, 1996; Nguyen et al., 2014).
3.4 Properties of the procedures
We say that a procedure returning Paretoefficient allocations is Paretoefficient. Moreover, when dealing with procedures that take an initial allocation as an input, a very common efficiency criteria is that of individual rationality. A procedure is said to be individually rational if, in the final allocation, no agent is assigned an object less preferred than the one she held in the initial allocation. Let us illustrate it on an example.
Example 2.
Let us consider the following instance with 5 agents and 5 resources. The preferences are presented below, they are singlepeaked with respect to . The initial allocation is defined by the underlined resources.
The allocation is not Paretooptimal as it is Paretodominated by the squared allocation . We have and . Note that the allocation would yield and but violates individual rationality for agent .
Another desirable property is strategyproofness. An allocation procedure is strategyproof if no agent has an incentive to misreport her preferences, that is, no one can obtain a better outcome by reporting false preferences.
4 Centralized allocation procedures for house market
This section introduces the centralized allocation procedures that will be studied in the rest of the paper. First, we describe local deals that will be the basic component of our procedures. Then, we show how the Top Trading Cycle algorithm can be described accordingly to these deals and finally we present the Crawler algorithm.
4.1 Improving deals
Following the work of (Sandholm, 1998), we consider procedures where, departing from an initial allocation, the agents negotiate deals so as to obtain more preferred resources. Hence, agents make local improving deals (or exchanges) until they reach a stable allocation, that is, an allocation where no improving deal is possible. In our context, the transfer of a resource from one agent to another will be balanced by another resource to compensate the loss of welfare. Another line of research consists in assuming that some monetary transfers can compensate disadvantageous deals (Sandholm, 1998; Endriss et al., 2006; Chevaleyre et al., 2017). In this paper, we assume that such monetary compensation is either not possible or not desirable, for instance because of ethical reasons (Abraham et al., 2007).
A deal consists in an exchange cycle , where . Such deals model exchanges where agent gives her resource to agent for each and agent gives her resource to agent . For the particular case of deals involving only two agents, , we will talk about swapdeals. In our house market model, it has to be noticed that any reallocation (permutation of resources) can be implemented as a collection of disjoint cycledeals (Shapley and Scarf, 1974).
Definition 3.
Let be an allocation, and a deal involving agents. The allocation obtained by applying the deal to is defined by:
A deal is said to be improving if for every agent involved in .
Note that a procedure applying only improving deals trivially satisfies individual rationality.
Given an allocation , we denote by the set of all the improving deals of size at most that can be applied from :
Definition 4.
An allocation is stable with respect to if .
It can be observed that any Paretoefficient allocation is stable with respect to . Indeed, in a Paretoefficient allocation no deal can be improving.
4.2 Gale’s Top Trading Cycle algorithm
When investigating resource allocation in house market, the Top Trading Cycle algorithm (TTC) (Shapley and Scarf, 1974), attributed to David Gale, is well known to satisfy the three main desirable properties of an allocation procedure: Paretooptimality, individual rationality and strategyproofness.
The TTC algorithm takes as input an instance and proceeds as follow. The algorithm maintains a set of available agents and a set of available resources where initially and . At each step of the algorithm, a directed bipartite graph , with , is defined. The nodes of represent agents in and resources in , and the set of edges is such that:

there is a directed edge between and if and only if i.e. agents are linked to their preferred resource in ,

there is a directed edge between and if and only if i.e. resources are linked to their owner in .
Note that there always exists at least one cycle in and cycles correspond to improving cycledeals. The cycledeals constructed can be of size 1 if an agent already owns her top resource in . The TTC algorithm selects one of the cycles in , the agents and resources involved in are then removed from and to obtain a new graph with the new available agents and resources. The process is iterated on the new graph and until reaching an empty graph.
Example 3.
Let us consider the instance defined in Example 2, the first graph constructed during the TTC procedure is depicted in Figure 1. The resource and the agents are represented so that the cycles in appear clearly. The final allocation computed by TTC is , the underlined allocation in Example 2. The cycledeals that can be applied are and . The last one is a specific deal involving only one agent which means that the agent keeps her resource. Once these deals performed, there is no other improving cycledeal between agents and .
At this stage, it is important to recall that TTC makes very few assumptions on the preferences domain. It only assumes that each agent’s preferences are defined as complete strict linear orders.
4.3 The Crawler
Bade (2019) proposed a new mechanism for resource allocation problems in house markets under singlepeaked preferences. This mechanism has the same guarantees as TTC: Paretooptimality, individual rationality and strategyproofness.
The agents are initially ordered along the singlepeaked axis according to the resource they initially hold. The first agent is the one holding the resource on the left side of the axis and the last agent is the one holding the resource on the right side of the axis. is the list of available resources ordered according to the singlepeaked axis. is the list of available agents such as the agent of the list is the one who holds the resource in . The algorithm then screens the agent from left to right^{3}^{3}3Note that the algorithm can equivalently be executed from the right to the left. and check, for each agent , whether the peak of (her top preferred resource among the ones available in ) is on her right:

If the peak of is on her right, the algorithm moves to the next agent on the right.

If holds her peak , it is assigned to , and are then removed from and . The algorithm restarts screening the agents from the left side of the axis.

If the peak of is on her left, she picks . Let be the index of and the index of (we have ). Then, all the agents between and receive the resource held by the agent on their right (the resources “crawl” towards the left). and are then removed from and . The algorithm restarts screening the agents from the left side of the axis.
The algorithm terminates when and are empty.
A formal description of the procedure is given in Algorithm 1. Note that we make use of the subprocedure which simply assigns the specified resource to the specified agent in the allocation , and then removes the agent and the resource from the lists of available agents and resources, and respectively. Since the list of resources is ordered following the singlepeaked axis and the agent in corresponds to the owner of the resource in , the removal of and is in fact equivalent to assigning to agent and crawling the resources from right to left.
As observed by (Bade, 2019), the Crawler always terminates. We also show that the Crawler runs in quadratic time.
Proposition 2.
The Crawler procedure terminates and its complexity is in where is the number of agents.
Proof.
Termination is proved by observing that is strictly decreasing at each step of the main while loop. This loop is applied at most times and each step of the loop requires at most elementary operations. The time complexity is then in . ∎
Let us illustrate the execution of the Crawler on the instance of Example 2.
Example 4.
Let us return once again to Example 2. The execution of the Crawler is presented in Figure 2. First, agent is the first agent whose top is not on her right, she thus receives her top . The second step matches agent to . On the third step, agents and both have their top on the right but the last agent has her top on her left. is then matched to her top . Agent is matched to on the fourth step. Finally is assigned resource .
At each step of the procedure, the improving deal is applied: , , , and .
One can observe that on this example the allocation returned by the Crawler is not the same as the one returned by TTC. Both procedures lead to the same minimum rank but a higher average rank for TTC: 22 against 21 for the Crawler.
5 Checking Paretooptimality: the Diver
If our objective is simply to check Paretooptimality of a given allocation, one question to investigate is whether we can gain advantage from the singlepeaked domain or not. Observe first that the Crawler could be used for that purpose as it would return the initial allocation.
Observation 1.
Let be a Paretooptimal allocation, then the Crawler returns when applied with as the initial allocation.
Proof.
The proof is straightforward since the Crawler is individually rational and Paretooptimal. ∎
However, the procedure would not enjoy better complexity guarantees in that case. This is in contrast with TTC which stops if it fails to find an improving cycle in the first step. Hence, the complexity of the Paretooptimality test based on TTC would be only . The Crawler has thus the same worstcase running time as TTC when used for that purpose. A worstcase instance can be described as follows: suppose that all the agents (ordered from left to right), have the next resource on their right as their top, except for the last one who likes her own resource. In that case, at each step, the Crawler would go through all agents before realizing that the last one wants to keep her resource.
We now present a slight variant of the Crawler, called the Diver, which allows to check Paretooptimality of the initial allocation more efficiently. We first informally present the modified procedure, which proceeds in a single screening of the agents. The key difference with the Crawler is that the procedure does not start a new screening once an agent picks a resource: it only checks whether the last agent who was happy to crawl for this resource now agrees to dive to the next one.
At each step, the central entity asks the agent whether she wishes to:

pick her current resource;

pass (expressing that she is happy to dive to the next resource); or

pick a smaller resource.
Note that, each time an agent picks a resource, the central entity communicates this information to the other remaining agents so that they can update their list of available resources.
In case (1), the agent (and her resource) are removed and we enter a subprotocol where the center asks the previous agents, one by one, whether they still agree to dive to the next resource. This subprotocol stops as soon as one agent says yes, or there are no more agents to consider. All the agents who said ’no’ pick their resources and are themselves removed (with their resource). Note that in case (3), we have the guarantee that there is indeed a better resource available, otherwise the agent would have picked her own resource (case 1). As soon as an agent says she wants a smaller resource, the protocol stops and returns ’not PO’. Alternatively, if the screening goes through all the agents, then (as we shall prove) all the agents left with their own resource, and the protocol returns ’PO’.
The protocol is formally described in Algorithm 2. Note that, unlike with the Crawler, the lists and don’t need to be updated, but instead we record the list of agents who crawl (or dive). The subprocedure simply assigns resource to agent , while does the same, and removes agent from the list of agents who crawl.
Example 5.
Coming back to Example 2, by applying the Diver to the initial allocation , the agents are first sorted as follows:
The Diver screens the agent from left to right and asks each agent her wish:

passes;

passes;

picks her current resource, still agrees to pass;

picks her current resource, still agrees to pass;

wants to pick a smaller resource () the Diver returns ’not PO’.
Now let us consider the allocation leading to the following order:
Again, the Diver screens the agent from left to right and asks each agent her wish:

picks her current resource;

passes;

passes;

picks her current resource, still agrees to pass;

picks her current resource, picks her current resource, picks her current resource all the agents left with their resource and the Diver returns ’PO’.
Theorem 1.
The Diver terminates in and returns whether the initial assignment is Paretooptimal or not.
Proof.
Termination is obvious since the procedure proceeds in a single main screening.
We first show that the procedure is sound.
First observe that when the Diver returns ’PO’, all the agents must have picked their own resource. Indeed, consider the last agent in the order: this agent picked her resource (otherwise the procedure would have returned ’not PO’). But now the previous available agent in backward must also pick her resource next (as there are no more possibility to dive), and so on until there are no agents remaining.
Now, following the argument used in Bade (2019),
consider all the agents who picked their resource during this process, in the order they picked it: they clearly all picked their best available resource.
The obtained matching is thus indeed Paretooptimal.
On the other hand, when the Diver returns ’not PO’, there is indeed an improving cycle, consisting of the agent (say, ) who chose a resource on her left, and all the agents, from the owner of this resource to , who are not matched yet.
In terms of complexity, sorting the agents according to the singlepeaked order can be done in .
Now for the main loop of the procedure: in the reverse loop, note that if agents are screened backwards, then agents are removed for good. Thus through the entire procedure the reverse loop involves steps, and thus the main loop takes as well, which is dominated by the cost of sorting.
∎
The same line of analysis allows us to derive a result regarding the amount of communication induced by the procedure. As we do not consider communication from the center to the agents, the cost of communicating the singlepeaked order to agents is not counted here, and we see that the Diver only requires a linear number of bits (in the number of agents) to be communicated.
Theorem 2.
The Diver requires 4n bits of communication.
Proof.
The key is to observe that subprotocol requires overall bits, as there may only be agents saying ’no’ and agents saying ’yes’ throughout the whole run of the Diver. In the main loop of the protocol, the question requires 2 bits to be answered. This makes overall bits. ∎
Thus, only bits of communication are needed. Intuitively, it seems unlikely that we can improve on this protocol. We now show that this is asymptotically optimal.
More formally, given an instance singlepeaked with respect to , we consider the problem CheckPO whose answer is yes if and only if is Paretooptimal. We assume that is known to the agents. Without loss of generality, we consider that .
To prove the optimality of our bound, we will exhibit a straightforward fooling set (Kushilevitz and Nisan, 1996) to formally establish that the Crawler matches the lower bound for CheckPO. We consider strict preferences for the agents written in a profile , and by a slight abuse of notation we write to say that is the preference of agent in either or . In our context, the fooling set will be a collection of profiles such that:

for any CheckPO’s answer on is yes.

for any , there exists , such that CheckPO’s answer on is no.
By a standard result in communication complexity, it is known that is a lower bound on the communication complexity of the problem (Kushilevitz and Nisan, 1996).
Proposition 3.
In the singlepeaked domain, the communication complexity of CheckPO is .
Proof.
Let us call a consensual profile the profile where for any , i.e. all the agents have the same linear orders over preferences. The consensual linear order will be denoted by . We claim that the set of the (singlepeaked) consensual profiles constitutes a fooling set.
To show this, first observe that in any such profile, the original assignment is indeed Paretooptimal. Indeed, in a consensual profile, no trading cycle is possible. Hence the aforementioned condition 1. of a fooling set is satisfied.
Now to show that we can fool the function, consider any pair of profiles . Because these profiles are different, there must exist at least one pair of resources such that in , while in (it is true for all agents since the profiles are consensual). Now consider the agent (resp. ) holding (resp. ) in . Let us now consider a mixed profile such that:
Observe that now and have opposite preferences for and and would prefer to swap, i.e. CheckPO’s answer on is no. This concludes the proof. ∎
6 Swapdeal procedures
Both TTC and the Crawler require a central entity to run the procedure with the drawbacks that were stated in the introduction. Moreover, they often require long cycles to be implemented. As mentioned previously, such deals may be complicated to implement or may not be desirable. In decentralized settings, a natural approach consists in departing from an initial allocation and letting the agents negotiate improving cycledeals involving at most agents until reaching an allocation stable with respect to . We call such a procedure the procedure.
In general these procedures are not deterministic: from a same initial allocation, many different stable allocations can be reached. Let us see it with a simple example.
Example 6.
Coming back to Example 2, by applying the deal to (the squared allocation) we reach the underlined allocation that is stable with respect to swapdeals and Paretooptimal.
However, applying the improving deals and then yields to the allocation , that is also Paretooptimal, it moreover corresponds to the allocation returned by the Crawler.
This example emphasizes the importance of specifying how improving deals are selected when several ones are available. Most of our results do not rely on any specific selection dynamic, however for the experiments presented in Section 9, such dynamics will be defined.
In this paper, we will more specifically focus on the simplest version of cycledeals: bilateral deals i.e. deals involving exactly two agents (also denoted as ). This type of deals has the advantage of being easy to implement since it does not require many agents to meet each other and to coordinate.
Since TTC and the Crawler both provide desirable guarantees, under singlepeaked preferences, on Paretooptimality, individual rationality and strategyproofness, it is natural to investigate whether the procedure also provides such good properties.
First, observe that the swapdeal procedure is individually rational: throughout the procedure only improving swapdeals are performed, hence an agent can only improve her satisfaction at each step of the procedure. In the "worstcase" an agent will not perform any deal during the procedure and will own the same resource as in the initial allocation. This is true for every procedures.
However, we show here that the swapdeal procedure is not strategyproof.
Proposition 4.
The swapdeal procedure is not strategyproof.
Proof.
Let us consider the following instance singlepeaked with respect to and where the initial allocation is represented by the underlined resources.
In , is an improving swapdeal, it leads to the allocation .
Let us now consider the following preference profile in which misreports her preferences, inverting the order between and ,.
Note that the preference profile is still singlepeaked with respect to .
In this scenario two improving deals are possible from : as before and a new deal . If is performed, can later exchange against with thus owning her real mostpreferred resource.
Let us suppose that will be performed with probability and with probability . Agent will then receive with probability or do not perform any deal with probability . Overall, agent has a strict incentive to lie as long as , for her lie will not affect her outcome.
This proves that the swapdeal procedure is not strategyproof. ∎
The swapdeal procedure does not satisfy the desirable property of strategyproofness while the Crawler and the TTC algorithm do. One can view it as a cost emerging from the decentrality of the swapdeal procedure. This idea of a tradeoff between decentrality and satisfaction of desirable properties has already been observed in the literature (Herreiner and Puppe, 2002; Brams et al., 2012) and is explored in more depth in Section 8.
7 Efficiency of the swapdeal procedures
To complete the picture, we investigate the efficiency of the swapdeal procedure by showing that any allocation stable with respect to swapdeals is Paretooptimal. Then, we show that the singlepeaked domain is maximal for this assertion.
7.1 Paretooptimality of the swapdeal procedure
We show here that any allocation reached by the swapdeal procedure is Paretooptimal.
Theorem 3.
In a singlepeaked domain, every allocation stable with respect to is stable with respect to .
Proof.
Let us consider, toward contradiction, an allocation stable with respect to but not with respect to . As is not stable w.r.t. , there exists an improving deal , with , in . Let us show by induction of the size of , denoted by , that such an improving deal cannot exist.
First, note that as is an improving deal, we have:
(1) 
Then, observe that as , we have:
(2) 
otherwise, based on (1), an improving swapdeal would exist in .
Base case () Let us consider . From (1) and (2), we obtain:
The triplet of resources is thus a witness of the violation of the worstrestrictedness (WR) condition of a profile to be singlepeaked (Proposition 1): all the three resources are ranked last by an agent when we restrict our attention to these resources. The contradiction if thus set.
Induction step Suppose now that is stable with respect to , we show that no improving deal of size exists in . From this induction hypothesis, we get that:
(3) 
Indeed if this condition was not satisfied, then there would exist two agents and that are not next to one another in such that . It would then have been possible to "cut" between those two agents so that receives . The new cycle deal obtained would also have been improving and then an improving deal of size strictly smaller than would exist.
Let us now consider a triplet of resources such that is ranked last by a given agent when restricting preferences to . Then from (1), (2) and (3) we get:
Hence when restricting preferences to , for every resource in , there exists an agent ranking it last among ’s resources. This violates the worstrestrictedness condition of the singlepeaked profile and sets the contradiction. ∎
This Theorem states that the stable hierarchy collapses at the level when preferences are singlepeaked and in a housemarket setting. It is particularly interesting for us as it provides a characterization of Paretooptimality, as observed in Subsection 4.1.
Corollary 1.
In a singlepeaked domain and housemarket, an allocation is Paretooptimal if and only if it is stable with respect to .
Stating this result in terms of stability with respect to and not just Paretooptimality is particularly interesting as it can be shown that the same result holds for more general settings than house markets (Beynier et al., 2019).
As we have proved that the allocation reached by swapdeals is Paretooptimal, a natural question is then whether every allocation that Paretodominates the initial allocation can be reached by swapdeals. This is answered by the negative by Proposition 5.
Proposition 5.
There exists instances for which there is an allocation that Paretodominates and that can not be reached by a sequence of improving swapdeals.
Proof.
Let us consider the following instance where the initial allocation is the one in the underlined boxes.
The allocation , the boxed one, is Paretooptimal. However from only two deals are possible: that reaches allocation , or that leads to . No sequence of improving swapdeals can thus reach . ∎
It is however interesting to note that the allocation returned by the Crawler can always be reached through improving swapdeals.
Proposition 6.
Let be an instance and let be the allocation returned by the Crawler. Then is reachable by swapdeals from .
Proof.
We show that every cycledeal of the Crawler can be implemented as a sequence of improving swapdeals. For clarity reasons and without loss of generality, we assume that each agent currently holds resource . Let us consider a step of the procedure where the agent picks resource currently held by . From the definition of the procedure, is on the left of (with respect to the singlepeaked axis) and has already been considered at this step before considering . In fact, all the agents between (included) and (excluded) on the singlepeaked axis have already been considered at step before reaching . Moreover, all these agents have passed their turn because their peak is on their right. In other words, each agent between (included) and (excluded) prefers the resource held by the agent on her right. So, : .
Let be the deal implemented by the crawler. . In this deal, gives her resource to and all the other agents of the deal give their resource to the next agent in the sequence which is the agent on their left with respect to the singlepeaked axis. The decomposition of into a sequence of swapdeals consists in using agent as a hub for the exchanges of resources. Agent first swaps with then, swaps with and so on until swaps with