ifaamas \acmConference[AAMAS ’25]Proc. of the 24th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2025)May 19 – 23, 2025 Detroit, Michigan, USAA. El Fallah Seghrouchni, Y. Vorobeychik, S. Das, A. Nowe (eds.) \copyrightyear2025 \acmYear2025 \acmDOI \acmPrice \acmISBN \affiliation \institutionKey Laboratory of Intelligent Perception and Human-Machine Collaboration, ShanghaiTech University \cityShanghai \countryChina \affiliation \institutionKey Laboratory of Intelligent Perception and Human-Machine Collaboration, ShanghaiTech University \cityShanghai \countryChina \affiliation \institutionKey Laboratory of Intelligent Perception and Human-Machine Collaboration, ShanghaiTech University \cityShanghai \countryChina
Housing Market on Networks
Abstract.
Incentivizing the existing participants to invite new participants to join an auction, matching or cooperative game have been extensively studied recently. One common challenge to design such incentive in these games is that the invitees and inviters are competitors. To have such an incentive, we normally have to sacrifice some of the traditional properties. Especially, in a housing market (one kind of one-sided matching), we cannot maintain the traditional stability and optimality. The previous studies proposed some new matching mechanisms to have the invitation incentive (part of the incentive compatibility), but did not have any guarantee on stability and optimality.
In this paper, we propose new notions of stability and optimality which are achievable with incentive compatibility. We weaken stability and optimality on a special structure (complete components) on networks. We first prove that the weakened notions are the best we can achieve with incentive compatibility. Then, we propose three mechanisms (Swap With Neighbors, Leave and Share, and Connected Trading Cycles) to satisfy the desirable properties. Connected Trading Cycles is the first mechanism to satisfy the best stability and optimality compatible with incentive compatibility.
Key words and phrases:
Mechanism Design, Housing Market, Incentive Compatible1. Introduction
Housing market on networks studies an endowment exchange problem with special consideration of the participants’ social connections Kawasaki et al. (2021). In this model, participants’ social connections are private information and only a small group initiates the matching. Those who are already in the game can decide whether or not to invite their neighbors. Expanding the market via invitation can be beneficial because more participants will provide more matching options, which opens the possibility of a more satisfactory matching. Several real-world applications, like online housing markets111https://www.homeexchange.com and second-hand goods exchange platforms222https://www.freecycle.org, have utilized social networks to promote their markets. On these platforms, existing participants are encouraged to share the matching information on their social media and invite their friends to form larger markets. But sometimes participants may hesitate to invite because their friends will compete with them and take away their favorite items in the matching game. For this reason, the main obstacle is ensuring that the inviters’ match is not getting worse after inviting others.
To solve the above problem, one way is to constrain participants’ selection space to remove potential competition caused by invitation. For example, Kawasaki et al. (2021) restricted the social network between agents as trees and proposed Modified TTC which only allows participants to choose from their parents and descendants. In this paper, we aim to design mechanisms for general social networks structures and design mechanisms to incentivize invitations. Our first mechanism, Swap With Neighbors (SWN) restricts participants to choosing from their neighbors’ items. Under this restriction, invitations can only bring matching opportunities not competitions, thus naturally satisfying IC. The drawback of SWN is that there is a very low probability that a participant can benefit from the enlarged market, which contradicts the purpose of enlarging the market for better matching. To improve the matching, we observed that if a group of participants trade and leave the market, they do not care about what happens next in the matching. Inspired by this observation, our second mechanism, called Leave and Share (LS), uses SWN as a base protocol but dynamically connects the remaining participants when some participants are leaving the market (the sharing process). Due to the sharing process, LS gives a more satisfying outcome.
All the above-mentioned mechanisms focused on the IC property, but to properly evaluate a matching mechanism, optimality and stability are the two key properties. The former characterizes how efficient a matching is, i.e., whether participants can improve their matching without making others’ matching worse, and the latter depicts the robustness of a matching, i.e., whether participants have incentives to deviate from the matching and exchange within a smaller group. The Top Trading Cycles (TTC) presented by Shapley and Scarf (1974) is the only Pareto optimal and stable mechanism for housing market problem Ma (1994). However, Kumar et al. (2022) show that more than half of the participants prefer their matching given by TTC in a smaller market than in a large integrated market. Hence, in the network setting where participants can control the market size through strategic invitations, TTC fails to be incentive compatible (IC). Due to the uniqueness of TTC, stability and Pareto optimality are not compatible with IC in housing market on networks.
To maintain invitation incentives, we weaken stability and optimality notions with complete components (cc), called stable-cc and optimal-cc, respectively. Stable-cc weakens stability in the sense that only participants in a complete component can deviate from the matching and exchange within the component. Optimal-cc weakens optimality in the sense that a matching can only be improved if all the participants whose allocation is improved have to form a complete component. We then prove that both stable-cc and optimal-cc are the tightest notions compatible with IC. Besides IC, individual rationality (IR) is also a commonly considered property that ensures participating in the game is not harmful, serving as a base incentive for people to join the game. Finally, combining all the properties together, we construct the theoretical boundaries for housing market on networks.
The best properties we can achieve together for our setting are stable-cc, optimal-cc, IC, and IR. The previously mentioned SWN and LS detect all the cycles formed by neighbors, so they naturally satisfy stable-cc. However, they both add restrictions to the selection space and fail to satisfy optimal-cc. Hence, we further propose the third mechanism, called Connected Trading Cycles (CTC), which does not add restrictions on the participant’s selection space to satisfy all the properties. Similar to TTC, CTC detects the top trading cycles (to ensure optimality). The key difference is that CTC makes sure the trading cycles have to satisfy certain connectedness on networks (to ensure invitation incentives). Intuitively, the connectedness guarantees that a group of participants can stay together regardless of the others’ strategic invitations. Thus, in the network setting, the trading cycles should build on a group of connected participants.
To sum up, our contributions are threefold:
-
•
We define the stability and optimality notions compatible with IC for housing market on networks.
-
•
We prove the best achievable stability and optimality in the network setting.
-
•
We propose three mechanisms: Swap With Neighbors, Leave and Share, and Connected Trading Cycles to meet the desirable properties (Table 1 gives a quick overview of the theoretical performance of each mechanism).
2. Related Work
Li et al. (2017) initiate the line of research on mechanism design on social networks. They utilize social networks to incentivize participants to invite their friends to form a larger market so that participants can receive better outcomes Zhao (2021). However, the participants are competitors and may not want to invite all their friends without proper incentives. Many classic solutions fail to provide such incentives, so we cannot directly apply them for this purpose. To combat this, in auctions, we can pay the harmed inviters some rewards Li et al. (2022). In cooperative games, we can let the inviters share their invitees’ contributions Zhang and Zhao (2022). However, in matching, we face a greater challenge since the mechanism cannot compensate participants for the loss caused by invitation through payments.
Existing solutions for matching on networks restricts participants’ selection space and the social network structures. Kawasaki et al. (2021) and You et al. (2022) model the social network as a directed graph where neighborhood relationships can be asymmetric (i.e., A is B’s neighbor does not necessarily mean B is A’s neighbor). They focus on trees and modify the classic mechanisms to incentivize invitations for housing market as well as its variant Abdulkadiroğlu and Sönmez (1999). Specifically, they add limits on the selection space of the participants in a tree to prevent an invitee competing with her inviters. For two-sided matching, Cho et al. (2022) model the school choice problem into the network setting and design invitation incentives for the student side only. Another thread of work also takes into account the social network and its influence, but they differ from our setting Gourvès et al. (2017); Hoefer (2013). In their setting, the social network is priorly known and it constrains possible allocations.
Optimality and stability are two an well-concerned property for matching mechanisms Abdulkadiroglu and Sönmez (2013). The celebrated TTC is the only Pareto optimal and stable solution in the traditional housing market problem Ma (1994). Abraham et al. (2005) study various ways to evaluate the optimality of a house allocation mechanism and illustrate why TTC gives the Pareto optimal allocation. Fleischer and Wang (2008) point out the transitions between different optimal allocations in the house allocation problem. Brandt and Wilczynski (2019) analyze whether different types of dynamic pairwise swaps converge to Pareto optimal allocations for matching markets. In the network setting, no previous work has investigated the theoretical boundaries. We propose tight stability and optimality notions for this new setting and design mechanisms to reach them.
3. The Model
We consider a housing market problem on a social network denoted by an undirected graph , which contains agents . Each agent is endowed with an indivisible item , usually referred to as a house. Let be the set of all agents’ items. Considering the nature of the exchange economy, we formulate agents’ social relationships as symmetric in this model, i.e., has connections with in the social network indicates has connections with . We define agent as ’s neighbor if there is an edge between agent and , let be ’s neighbor set.
Despite social relationship, each agent has a strict preference over . means prefers to and we use to represent the weak preference. Thus, we denote agent ’s private type as and as the type profile of all agents. Let be the type profile of all agents except for agent , then can be written as . Let be the type profile space of all agents. Similarly, we have .
In the housing market problem, the goal is to construct a matching following the principle that each agent will exchange their endowments to get better allocations. Assume there is a trusted center to enforce the execution of a matching mechanism, each agent is required to report her type (reporting neighbor set is treated as inviting neighbors in practice). We denote agent ’s reported type as , where is the reported preference and is the reported neighbor set. Let be the reported type profile of all agents.
Definition \thetheorem.
In a housing market problem, a matching mechanism is defined by an allocation policy , where satisfies for all , , and .
In the networked setting, we assume only a subset of the agents are initially in the game and the matching mechanism can incentivize agents to diffuse the information thus enlarging the matching. Without loss of generality, suppose an agent set contains the initial participants in the market. The others need the existing participants’ invitation to join the game. Since the invitation is modeled as reporting neighbors, we define the qualified participants by their reported types.
For a given reported type profile , we generate a directed graph , where edge if and only if . Under , we say agent is qualified if and only if there is a path from any agent in to in . That is, can connect to the agent set by an invitation chain. Let be the set of all qualified agents under . In the networked housing market problem, diffusion matching mechanisms can only use .
Definition \thetheorem.
In a networked housing market problem, a diffusion matching mechanism is a matching mechanism , such that for all reported type profile , it satisfies:
-
(1)
for all unqualified agents , .
-
(2)
for all qualified agents , is independent of the reports of all unqualified agents.
The difference between a diffusion matching and the matching defined in Definition 3.1 is that the participants can affect the qualification of other participants. If a participant changes her reported neighbor set, the qualified agent set may change. This is the challenge of this setting.
Next, we define two desirable properties for diffusion matching mechanisms: individual rationality and incentive compatibility. Intuitively, individual rationality requires that for each agent, reporting her type truthfully guarantees that she gets an item no worse than her own. For incentive compatibility, it means reporting type truthfully is a dominant strategy for each agent.
Definition \thetheorem (Individual Rationality (IR)).
A mechanism is individually rational if for all , all , and all , we have .
Definition \thetheorem (Incentive Compatibility (IC)).
A mechanism is incentive compatible if for all , all and all , we have .
To evaluate the performance of a matching mechanism, an important metric is called Pareto optimality. A matching is Pareto optimal if no agent can improve her matching without others’ allocation getting worse.
Definition \thetheorem (Pareto Optimality (PO)).
A mechanism is Pareto optimal if for all type profile , there is no other allocation such that for each qualified agent , , and there exists at least one qualified agent , .
Another metric is stability. It requires no group of agents can deviate from the matching and match among themselves to make no one in the group worse off and at least one better off.
Definition \thetheorem (Stability).
A mechanism is stable if for all type profile , there is no other allocation such that there exists a group that satisfies , and with at least one .
In summary, our model is a practical variant of the networked housing market model proposed in Kawasaki et al. (2021). In their paper, the authors designed matching on an asymmetric social network and proved the impossibility results of the compatibility of IC, PO and stability. In the next section, we will prove the impossibilities in our model and further construct the theoretical boundaries.
4. The Boundaries
In this section, we first prove that a diffusion matching mechanism cannot achieve Pareto optimality or stability together with IC. Next, we define the best optimality and stability notion compatible with IC and then construct the theoretical boundaries.
IR | IC | Stability | Optimality |
---|---|---|---|
IR | IC | Stable | PO |
Stable-wcc | Optimal-wcc | ||
Stable-cc | Optimal-cc |
4.1. Impossibility Results
[Impossibility for PO, IC and IR] No diffusion matching mechanism is PO, IC and IR.
Proof.
In the example shown in Figure 1, suppose , the Pareto optimal and IR allocations are and . If a mechanism allocates , agent 2 can misreport her neighbor set as . Under agent 2’s misreport, agent 3 cannot join the game and the only PO and IR allocation will be , and 2 gets a better allocation compared to that in . However, if the mechanism allocates , agent 1 can misreport her preference as . In this way, the only PO and IR allocation is , and agent 1 reaches a better allocation. Hence, no diffusion matching mechanism is PO, IC and IR. ∎
Example for Theorem 4.1 and Theorem 4.2.
[Impossibility for stability and IC] No diffusion matching mechanism is stable and IC.
Proof.
Consider the example in Figure 1, suppose , the only stable allocations is . However, agent 2 can misreport her neighbor set as , so agent 3 cannot join the game. In this way, the only stable allocation is . This means agent 2 can misreport to improve her matching result, so stability is incompatible with IC. ∎
To seek achievable optimality and stability notions for IC diffusion matching mechanisms, we focus on a special graph structure: complete components, i.e., the agents are neighbors of each other. For Pareto optimality, we restrict that only fully connected agents can improve their matching. For stability, we constrain the agents who can deviate from the matching and swap among themselves to be fully connected.
Definition \thetheorem (Complete Component).
A connected directed graph is a complete component if for any two nodes , we have .
The idea of the limitation comes from the reality that only a group of people who know each other have a higher possibility to communicate and negotiate for a better matching/trade. Besides, in the traditional housing market problem, since there are no constraints on social connections, agents can be viewed as fully connected. Then, any group of agents is a fully connected component.
Following this idea, we define optimality and stability under complete components: optimal-cc and stable-cc.
Definition \thetheorem (Optimality under Complete Components (Optimal-cc)).
A diffusion matching mechanism is optimal under complete components if for all type profiles and the allocation , there is no other allocation such that and and agents forms a complete component in .
Definition \thetheorem (Stability under Complete Components (Stable-cc)).
A diffusion matching mechanism is stable under complete components if for all type profiles and the allocation , there is no agent set (with item set ) that forms a complete component in , and another allocation with such that and .
4.2. Stable-cc and Optimal-cc are the Boundaries
Stable-cc and optimal-cc pose strict constraints on the agents who can improve by exchanging internally. Hence, it is worth investigating whether we can relax this limitation to get stronger notions. For instance, can we allow any connected group (no need to be a complete component) to improve their matching? Following this idea, we define stronger notions based on weakly complete components, but they are not compatible with IC.
Definition \thetheorem (Weakly Complete Component).
A connected directed graph is a weakly complete component if there exists at most one pair of nodes such that .
Definition \thetheorem (Optimality under Weakly Complete Components (Optimal-wcc)).
A diffusion matching mechanism is optimal under weakly complete components if for all type profiles and the allocation , there is no other such that and and agents forms a weakly complete component in .
Next, we prove that no IC and IR diffusion mechanisms can be optimal-wcc.
Example | Optimal-wcc Allocation |
---|---|
(a) | , |
(b) | |
(c) |
A counterexample for the coexistence of optimal-wcc, IR, and IC.
No IC and IR diffusion one-sided matching mechanism is optimal-wcc.
Proof.
Let’s consider the example given in Figure 2. In figure (a), IR and optimal-wcc solutions are . If we choose , agent 2 cannot get . So, agent 2 has the incentive to misreport and not invite agent 4. In this way, figure (a) transforms to figure (b) where the only IR and optimal-wcc solution is . Then, agent 2 can get her favorite item . To ensure IC, we should allocate to agent 2 when she truthfully reports (i.e., allocate in figure (a)). Next, we consider agent 1’s incentive to misreport when we choose in figure (a). If agent 1 does not invite agent 3, figure (a) transforms to figure (c) where the only IR and optimal-wcc solution is . Here, agent 1 can get her favorite item . To ensure IC in figure (a), we should allocate to agent 1 when she truthfully reports (i.e., allocate in figure (a)). This is a contradiction, so optimal-wcc is not compatible with IC. Hence, the tightest optimality notion compatible with IC is optimal-cc. ∎
Similarly, for stability, we define a stronger notion called stable-wcc and prove that stable-wcc is not compatible with IC and IR.
Definition \thetheorem (Stability under Complete Components (Stable-wcc)).
A diffusion matching mechanism is stable under weakly complete components if for all type profiles and the allocation , there is no agent set (with item set ) that forms a weakly complete component in , and another allocation with such that and .
No IC and IR diffusion one-sided matching mechanism is stable-wcc.
Proof.
Consider the example in Figure 1, suppose , the only stable-wcc allocations is . However, agent 2 can misreport her neighbor set as , so that agent 3 cannot join the game. In this way, the only stable-wcc allocation is . This means agent 2 can misreport to improve her matching result, so it can be concluded that stable-wcc is incompatible with IC. ∎
4.3. Implications between Properties
In this section, we study the relationships between different stability and optimality notions. By definition, Pareto optimality implies optimal-wcc and further implies optimal-cc. Stability implies stable-wcc and further implies stable-cc. In the traditional setting, a stable matching mechanism naturally satisfies Pareto optimal.
A mechanism is stable implies that is PO.
Proof.
For all type profiles , if a stable mechanism is not Pareto optimal, there exists a such that , and , . In this case, we can construct a group of agents starting from and consecutively add other agents so that , . So, can deviate from the matching together which violates stability. Thus, is stable implies that is Pareto optimal. ∎
Thus, when designing mechanisms, we can only focus on stability, and the optimality condition will be satisfied at the same time. However, in the networked setting, a similar implication relationship does not exist between the redefined notions.
A mechanism is stable-cc does not imply that is optimal-cc.
Proof.
See the example in Figure 3, allocation is stable under complete components. However, there exists another allocation where is a strictly better off group. Thus, is stable-cc does not imply that is optimal-cc.∎
Example for stable-cc cannot imply optimal-cc.
This vanish of implication also poses a greater challenge in designing a mechanism that reaches the new boundaries.
5. The Mechanisms
In this section, we introduce three IC mechanisms, Swap With Neighbors (SWN), Leave and Share (LS) and Connected Trading Cycles (CTC). By different techniques, they all eliminate competitions caused by invitation. That is to say, they guarantee that inviting more agents to join in only potentially improves one’s matching. Formal proofs and complexity analysis are in Appendix B.
A figure that shows the properties of our three mechanisms.
5.1. Swap With Neighbors
First, we present SWN which is an intuitive extension of Top Trading Cycles. SWN only allows agents to choose favorite items from neighbors to achieve invitation incentives.
Definition \thetheorem (Swap With Neighbors).
For a given , construct a directed graph by letting each agent point to her favorite item among herself and her neighbors remaining in the matching. There is at least one cycle. For each cycle, allocate the item to the agent who points to it and remove the cycle. Repeat the process until there is no agent left.
In SWN, agents’ allocation is determined by trading cycles, which makes it strategy-proof for the preference report. Also, each agent can only get allocated a house from her neighbors, which means misreporting on one’s neighbor set is not beneficial, so SWN satisfies IC. Besides, a trading cycle within neighbors can always be allocated by SWN, so SWN satisfies stable-cc.
However, SWN achieves IC and stable-cc at the cost of efficiency, as it limits the matching options for agents. To improve the matching, we should provide more matching opportunities. But this also brings agents’ strategic report aiming for a better match. Thus, we need a strategy-proof order to help with the mechanism design and ensure that truthfully reporting one’s type is a dominant strategy for every agent. Our order is based on the shortest path length from the initial agent set to each agent. The reason is that non-initial agents require other agents’ permission to join the matching, the layer structure of the social network should be kept properly for incentive compatibility. This order is applied in both LS and CTC.
Definition \thetheorem.
An ordering of agents is a one-to-one function , where agent is the agent in the ordering. For simplicity, we denote agent ’s order as . Agents in are sorted in ascending order by the length of the shortest path from agent set to them. Especially, for any agent , its shortest path length from agent set is . When multiple agents have the same length of the shortest path, we use a random tie-breaking.
5.2. Leave and Share
Leave and Share uses SWN as a base and adds a natural sharing process to enlarge agents’ selection space, trying to provide a better allocation. The mechanism consists of two steps: first, agents are matched and left by rounds in a protocol that resembles SWN under a strategy-proof order. This guarantees that inviters are not worse off. Second, we share the neighbors of the left agents in this round by connecting their neighbors to each other, thus their neighbors can have new neighbors in the next round. This dynamic neighbor set update comes naturally because a matched cycle does not care how the remaining neighbors will be matched. Also, their remaining neighbors and other agents cannot prevent this sharing.
Driving example that shows the value of Leave and Share.
To see the value of our mechanism, consider the example given in Figure 5, where only agents 2 and 3 can exchange with each other in SWN. The rest of the agents will end up with their own items. However, agents 2 and 3 will not block the exchange for agents 1 and 4 once they get their preferred items. After agents 2 and 3 are matched and Leave, we Share their remaining neighbors then agents 1 and 4 can swap. The process of Leave and Share is the name and core of our mechanism.
Before formalizing our mechanism, we introduce two notations to simplify our description.
Definition \thetheorem.
Given a set , we say is ’s favorite agent in if for any agent .
Leave and Share (LS)
-
(1)
Initialize and an empty stack . Define the top and bottom of as and respectively, and let .
-
(2)
While :
-
(a)
Find the minimum such that . Push into .
-
(b)
While is not empty:
-
(i)
While , push into .
-
(ii)
Pop off all agents from to , who already formed a trading cycle following their favorite agents. Allocate each agent the item . Add to .
-
(iii)
Update the neighbor set of ’s remaining neighbors by removing , i.e., for all , set .
-
(i)
-
(c)
Add to . Let all remaining neighbors of connect with each other, i.e., they become neighbors of each other. That is, let and for all , set .
-
(a)
In LS, we first define an order which depends on each agent’s shortest distance to the initial agent set. Under this order, the first while loop (step ) guarantees that the agent pushed into the stack is the remaining agent with the smallest order, and all agents are matched (including self-match) in the end. A new round begins each time the stack empties.
In the Leave stage, each agent that is pushed into the stack pushes her (current) favorite neighbor into the stack (step (a)). If her favorite is already in the stack, we pop all the agents between herself and her favorite to form a trading cycle. Specially, we allow agents to choose the agent at the bottom of the stack as favorite, which leads to popping off all the agents in the stack (step (b)).
Once the stack is empty, the mechanism enters the Share stage and updates the neighbor set of the remaining agents (step (c)). All neighbors of the left agents become new neighbors to each other. In the next Leave stage, they can choose in a larger neighbor set.
5.3. Connected Trading Cycles
In this section, we present our mechanism called Connected Trading Cycles (CTC) which takes both the trading cycles and agents’ connections into consideration. CTC is IR, IC, optimal-cc, and stable-cc, which is the best we can get in the network setting. To begin with, we give a few definitions to serve the description of our mechanism.
Definition \thetheorem.
Given a reported type profile , we generate a directed graph , in which each qualified agent has exactly one outgoing edge pointing to a qualified agent in . An edge in means agent likes agent ’s item the most among all the qualified agents’ items ( can be the same agent). We name as the favorite pointing graph for .
There is at least one cycle in , and we formalize the definition of a cycle as below.
Definition \thetheorem.
A cycle in is an agent sequence such that , points to , and points to in the favorite pointing graph .
Since the optimality and stability boundaries are constructed on complete components, it is natural to let cycles build on complete components to trade. However, if we only allow cycles formed by complete components to get traded, the performance is not better than SWN or LS (it meets stable-cc, but far from optimal-cc). Thus, we also consider cycles formed by connected components. Given that optimal-c is not compatible with IC, it is clear that not all such cycles can get traded. Therefore, we should further distinguish these cycles and identify the ones compatible with IC. This detection also makes our CTC description complex.
A motivated example for connected cycles.
Here comes a motivated example. The social network is shown in Figure 6 and agent 1 is the initial agent. If agent 1 does not invite agent 2, the connected component will form the blue cycle (). On the other hand, if agent 3 does not invite agent 5, the connected component will form the red cycle (). If both cycles are allowed, IC cannot hold since both agent 1 and agent 3 have the incentive to not invite a neighbor and form the cycle in favor of herself. Thus, an IC mechanism can only allow at most one of these two cycles to get traded. To distinguish the two cycles, we pay attention to each agent’s pointing. In the blue cycle, each agent has an exclusive path to reach her pointing: . However, in the red cycle, and have a shared edge . Similarly, and have a shared edge . Recall that in the cycle formed by a complete component (which is always allowed to get traded), each agent has an exclusive path to her pointing. Intuitively, the exclusive path can be regarded as an insurance for invitation incentives (no agent wants to influence other’s pointing by not inviting a neighbor). Following this idea, we design an algorithm to detect cycles in which each agent has an exclusive path to her pointing.
We also needs a strategy-proof order of the agents to determine who can be matched first.
Path Detection
Input: a cycle , a reported type profile , a favorite pointing graph and social network .
-
a.
Find a minimum connected component in where and , let be ’s pointing in , we have . Note that if the cycle form a connected component in , then . If there is no such let .
-
b.
Construct a subgraph with the reported type profile of all agents in .
-
c.
If agent points to herself in , add a mark on all the outgoing edges of in .
-
d.
Construct a shortest path set in , where is the shortest path from agent to her pointing in . While , execute the following,
-
i.
Sort by the ascending order of path length. If and have the same length, sort them by the agents ascending order and .
-
ii.
Remove the first in . Add a mark on every edge on path in . If contains marks other than , and has another path to her pointing, add the next shortest path for to .
-
i.
Output: an agent set and the marked subgraph .
A mini-example for Path Detection process.
We use a brief example to show how path detection works. As shown in Figure 7, agents’ social connections (edges in ) are denoted by double arrows, and the red arrows represent edges in the favorite pointing graph . Take cycle as an example, the minimum connected component for is . Agent 4 is involved to help agent 1 and 5 connect to each other, and since , agent 2 should also be involved in (as in Path Detection step a). Then we detect the shortest path set for subgraph , the sorted path set is shown in Figure 7(c). Finally, follow the instruction in Path Detection step d.ii, we mark the subgraph to represents which directed edge by which agent.
In cycles like or , not all agents have an exclusive path to their pointing, so some have to switch their pointing in to a less preferred one. We define a next favorite function to adjust based on agents’ preferences.
Definition \thetheorem.
Given a reported type profile , the qualified agent set is . Suppose agent points to agent in the favorite pointing graph , we have if owns ’s favorite item in .
Now we are ready to introduce our mechanism.
Connected Trading Cycles (CTC)
Given a reported type profile , construct the reported social network and favorite pointing graph . Initiate a settled agent set . Execute the following steps until .
-
a.
Find the agent with the minimum order . Start from agent , detect a node sequence in such that , points to , and is a cycle .
-
b.
Run Path Detection algorithm with input , , and . Get an agent set and marked subgraph as output.
-
c.
Find every agent such that no path in from to her pointing is exclusively marked by , and ’s outgoing edges are marked only by . Denote the set of such agents as .
-
i.
If , find the last agent on who cannot connect to her pointing in , let switch her pointing to .
-
ii.
If and , add all agents in into the settled agent set . While an agent points to an agent in , let point to .
-
iii.
If and , find the agent with minimum order . Start from agent ’s pointing, find the last agent such that ’s path to its pointing passes at least one agent in . If no such , start from agent ’s pointing, find the last agent such that ’s path to its pointing passes at least one agent in . Let point to .
-
iv.
If , find the agent with minimum order . Let point to .
-
v.
If , find the agent with the minimum order such that ’s path to its pointing covers another agent’s path to her pointing. If no such , find agent with the minimum order . Let point to .
-
i.
Our mechanism first detects cycles in the favorite pointing graph because these cycles can ensure optimality. Thus, agents will not misreport their preferences to get a better allocation (also why TTC is IC in the traditional setting). However, in the network setting, trading cycles formed by agents who cannot connect to each other are fragile. The reason is that others can misreport neighbor set to break the cycle (for instance, disqualify some agents on the cycle). Hence, we construct a minimum connected component for each cycle where they can stay connected.
Recall the example in Figure 6, we can see that if every agent on the cycle has an exclusive path to her pointing (e.g. 1-3-5), the cycle can get traded. For cycles that do not meet this condition, we identify a special agent set . each agent in does not have an exclusive path to her pointing, and her outgoing edges are only marked by herself. These agents cannot misreport to avoid path overlap because the overlap lies outside their outgoing edges (which is irrelevant to their report). Hence, we let agents in switch their pointing to a less preferred one.
For cases where , if consists of only agents on the cycle, they can get traded (CTC step c-ii). Otherwise, we start from an agent who is not on the cycle and find the last agent on the cycle who does not have a path to her pointing only by connections on the cycle (CTC step c-iii). This is because every agent in now has an exclusive path to her pointing, and the cycle has to rely on agents not on the cycle to stay connected. Thus, agents on the cycle have to switch preferences first, and we start from the last agent to maintain the completeness of the cycle to the greatest extent.
For cases where , if contains an agent not on the cycle, let her switch pointing to a less preferred one first (CTC step c-iv). This is because such agents do not provide any connection for the cycle and agents on the cycle have incentives to disqualify them to eliminate path overlaps. If consists only of agents on the cycle, we find the agent whose path covers another agent ’s path to her pointing and let switch her preference (CTC step c-v). This is because, to ensure everyone has an exclusive path to her pointing, and can never hold their pointing together. Agent should switch preference first because her path contains ’s outgoing edges (’s report has impacts on ).
A mini-example for Connected Trading Cycles, see the full version in Appendix A.
We present an example to illustrate the execution of CTC in Figure 8. In (a), everyone points to her favorite item. Since agent 1 has the minimum order, we start from agent 1 and detect cycle . Then, we construct the minimum connected component in (b). By the Path Detection algorithm, we can see that both agent 2 and agent 5 do not have an exclusive path to their pointing, so . By CTC step c-iv, we let agent 2 switch her pointing to a less favorite one. In (c), we also start from agent 1 and detect the same cycle , and the same . Now, only agent 5 does not have an exclusive path to her pointing, so . By CTC step c-v, we let agent 5 switch her pointing. In (d), we detect cycle and construct . Everyone has an exclusive path to reach her pointing, so . By CTC step c-iii, we start from agent 2’s pointing and find that agent 5 is the last agent whose path to her pointing passes at least one agent in . So, we let agent 5 switch her pointing. Finally in (e), is a connected cycle and . By CTC step c-ii, can get traded and agent 3 will switch her pointing to her next favorite one as shown in (f). We leave the detailed execution in Appendix A.
To our best knowledge, the Connected Trading Cycles is the first mechanism that satisfies optimal-cc.
For any order , CTC is optimal-cc.
Proof.
For any given type profile , if the allocation given by CTC violates optimal-cc, there exists another allocation such that every agent in a complete component in is strictly better, while others receive the same allocation. Let be two agents in , and . Because is a complete component in , can reach by her outgoing edge, which means is an exclusive path for . Since is given by CTC, has an exclusive path to agent , the owner of her allocation (as in CTC step c.ii). Combining the two paths together, agent can reach , the owner of , by . Hence, if points to , CTC will not make agent switch her pointing to a less preferred agents. Therefore, there exists an exclusive path for every agent to reach the owner of , and CTC will allocate . This means , which contradicts our assumption. ∎
6. Conclusion
In this paper, we redefine optimality and stability notions in social networks and show their tightness by proving impossibilities. We propose two novel matching protocols called Swap With Neighbors and Leave and Share respectively that satisfy IC, IR and stable-cc. We also prove the theoretical boundaries and propose a mechanism called Connected Trading Cycles to reach them. One future work is to study network settings with practical limits to find better optimality and stability notions. Another direction is to design the distributed execution for centralized matching mechanisms to make them more applicable.
We thanks the reviewers for their valuable comments on the original submission. This work was supported in part by Science and Technology Commission of Shanghai Municipality (No.22ZR1442200 and No.23010503000), and Shanghai Frontiers Science Center of Human-centered Artificial Intelligence (ShangHAI).
References
- (1)
- Abdulkadiroğlu and Sönmez (1999) Atila Abdulkadiroğlu and Tayfun Sönmez. 1999. House allocation with existing tenants. Journal of Economic Theory 88, 2 (1999), 233–260.
- Abdulkadiroglu and Sönmez (2013) Atila Abdulkadiroglu and Tayfun Sönmez. 2013. Matching markets: Theory and practice. Advances in Economics and Econometrics 1 (2013), 3–47.
- Abraham et al. (2005) David J. Abraham, Katarína Cechlárová, David F. Manlove, and Kurt Mehlhorn. 2005. Pareto Optimality in House Allocation Problems. In Algorithms and Computation, Rudolf Fleischer and Gerhard Trippen (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 3–15.
- Brandt and Wilczynski (2019) Felix Brandt and Anaëlle Wilczynski. 2019. On the Convergence of Swap Dynamics to Pareto-Optimal Matchings. In Web and Internet Economics, Ioannis Caragiannis, Vahab Mirrokni, and Evdokia Nikolova (Eds.). Springer International Publishing, Cham, 100–113.
- Cho et al. (2022) Sung-Ho Cho, Taiki Todo, and Makoto Yokoo. 2022. Two-Sided Matching over Social Networks. In Proceedings of the Thirty-First International Joint Conference on Artificial Intelligence, IJCAI-22, Lud De Raedt (Ed.). International Joint Conferences on Artificial Intelligence Organization, 186–193. https://doi.org/10.24963/ijcai.2022/27 Main Track.
- Fleischer and Wang (2008) Rudolf Fleischer and Yihui Wang. 2008. Dynamic Pareto Optimal Matching. In Proceedings of the 2008 International Symposium on Information Science and Engieering - Volume 02 (ISISE ’08). IEEE Computer Society, USA, 797–802. https://doi.org/10.1109/ISISE.2008.237
- Gourvès et al. (2017) Laurent Gourvès, Julien Lesca, and Anaëlle Wilczynski. 2017. Object Allocation via Swaps along a Social Network. In Proceedings of the 26th International Joint Conference on Artificial Intelligence (Melbourne, Australia) (IJCAI’17). AAAI Press, 213–219.
- Hoefer (2013) Martin Hoefer. 2013. Local matching dynamics in social networks. Information and Computation 222 (2013), 20–35. https://doi.org/10.1016/j.ic.2012.10.005 38th International Colloquium on Automata, Languages and Programming (ICALP 2011).
- Kawasaki et al. (2021) Takehiro Kawasaki, Ryoji Wada, Taiki Todo, and Makoto Yokoo. 2021. Mechanism Design for Housing Markets over Social Networks. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems (Virtual Event, United Kingdom) (AAMAS ’21). International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC, 692–700.
- Kumar et al. (2022) Rajnish Kumar, Kriti Manocha, and Josué Ortega. 2022. On the integration of Shapley–Scarf markets. Journal of Mathematical Economics 100 (2022), 102637.
- Li et al. (2022) Bin Li, Dong Hao, Hui Gao, and Dengji Zhao. 2022. Diffusion auction design. Artificial Intelligence 303 (2022), 103631.
- Li et al. (2017) Bin Li, Dong Hao, Dengji Zhao, and Tao Zhou. 2017. Mechanism Design in Social Networks. In Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence (San Francisco, California, USA) (AAAI’17). AAAI Press, 586–592.
- Ma (1994) Jinpeng Ma. 1994. Strategy-proofness and the strict core in a market with indivisibilities. International Journal of Game Theory 23, 1 (1994), 75–83.
- Shapley and Scarf (1974) Lloyd Shapley and Herbert Scarf. 1974. On cores and indivisibility. Journal of mathematical economics 1, 1 (1974), 23–37.
- You et al. (2022) Bo You, Ludwig Dierks, Taiki Todo, Minming Li, and Makoto Yokoo. 2022. Strategy-Proof House Allocation with Existing Tenants over Social Networks. In Proceedings of the 21st International Conference on Autonomous Agents and Multiagent Systems (Virtual Event, New Zealand) (AAMAS ’22). International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC, 1446–1454.
- Zhang and Zhao (2022) Yao Zhang and Dengji Zhao. 2022. Incentives to Invite Others to Form Larger Coalitions. In Proceedings of the 21st International Conference on Autonomous Agents and Multiagent Systems (Virtual Event, New Zealand) (AAMAS ’22). International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC, 1509–1517.
- Zhao (2021) Dengji Zhao. 2021. Mechanism Design Powered by Social Interactions. In Proceedings of the 20th International Conference on Autonomous Agents and MultiAgent Systems (Virtual Event, United Kingdom) (AAMAS ’21). International Foundation for Autonomous Agents and Multiagent Systems, Richland, SC, 63–67.
Appendix A A Detailed Example for CTC
i | |||
---|---|---|---|
1 | 2,3,4 | ||
2 | 1 | ||
3 | 1 | ||
4 | 1,3,5,6 | ||
5 | 4 | ||
6 | 4 |
A detailed example for Connected Trading Cycles, graph and profile table.
Execution of Connected Trading Cycles on Figure 9.
In this section, We run a detailed example to illustrate our mechanism. The initial agent set is . The order is . The social network, type profiles, and allocation are presented in Figure 9. The following steps match the sub-figures in Figure 10. Since edges in both and are directed, which may cause ambiguity, we adopt to represent the directed edge in and use for directed edge between in . For simplicity, we denote a path in as .
-
(a)
In the beginning, agent 1 has the minimum order in . We detect . In the path detection process, the minimum connected component that contains is . We then compute the shortest path set . Both agent 2 and agent 5 do not have a path to their pointing only marked by themselves, and their outgoing edges are not marked by others, so . Since , and agent 2 has the minimum order in , we change to (CTC step c-iv).
-
(b)
Agent 1 has the minimum order in . We detect . In the path detection process, the minimum connected component that contains is . The shortest path set is . Agent 5 is the only agent who does not have a path to her pointing only marked by herself, and her outgoing edge is not marked by others, so . Since and , we change to (CTC step c-v).
-
(c)
Agent 1 has the minimum order in . We detect . In the path detection process, the minimum connected component that contains is . The shortest path set . All agents in have a path to their pointing only marked by themselves, so and . Agent 2 has the minimum order in , we start from agent 2’s pointing, and agent 5 is the last agent on whose path to her pointing contains at least one agent (i.e., agent 4) in . We change to (CTC step c-iii).
-
(d)
Agent 1 has the minimum order in . We detect . In the path detection process, the minimum connected component that contains is . We then compute the shortest path set . All agents in have a path to their pointing only marked by themselves, so and . We add to . Since agent 3 belongs to but she points to agent 1 who is added to , we change to (CTC step c-ii).
-
(e)
Agent 3 has the minimum order in . We detect . In the path detection process, we cannot find a connected component that contains . Agent 6 is the last agent on who cannot connect to her pointing, we change to (CTC step c-i).
-
(f)
Agent 3 has the minimum order in . We detect and . In the path detection process, the minimum connected component that contains is . The shortest path set . Agent 6 is the only agent in , and she has a path to herself that is not marked by others. We have . So, we add to (CTC step c-ii). Since agent 3 belongs to but she points to agent 6 who is added to , we change to (CTC step c-ii).
-
(g)
Agent 3 has the minimum order in . We detect . The shortest path set . Agent 3 is the only agent in , and she has a path to herself that is not marked by others. We have . So, we add to (CTC step c-ii).
-
(h)
Now , the algorithm terminates. The allocation given by CTC is .
Appendix B Formal Proofs for Mechanisms
B.1. Swap With Neighbors
In this section, we prove that SWN is IR, IC and stable-cc.
SWN is IR.
Proof.
In SWN, agent can always choose herself as her favorite agent, and then SWN will allocate to . Thus, SWN is IR. ∎
SWN is IC.
Proof.
Since each agent ’s type consists of two parts, her preference and her neighbor set , we will prove misreporting neither nor can improve her allocation.
Misreport on : For agent , we fix her reported neighbor set as . Her real preference is and her reported preference is . Suppose her allocation .
In SWN, when truthfully reports her preference, agent is allocated instead of , we know that is in a trading cycle without . Let the cycle containing be . When we fix the others preference and misreports as , since the trading cycle is only determined by agents’ preference in , which excludes agent , still forms. By SWN, agent cannot be allocated , which contradicts our assumption.
Misreport on : For agent , we fix her reported preference as . Her real neighbor set is and her reported neighbor set is . Now we suppose her allocation .
In SWN, each agent can only be allocated the item from her reported neighbor set . Therefore, we have , and . Since with true neighbor set , agent is allocated instead of , we know that is in a trading cycle without . Let the cycle containing be . According to SWN, each agent in is pointing to her neighbor, which means their neighbor set is irrelevant to as well as any . Therefore, the trading cycle still remains and excludes agent when agent misreports . By SWN, agent cannot be allocated , which contradicts our assumption.
Put the above two steps together, we prove that SWN is IC. ∎
SWN is stable-cc.
Proof.
For every and their item set . Let the allocation given by SWN be . If there exists a blocking coalition , where is the node set of a complete component in .
Since is the node set of a complete component, we have . A blocking coalition suggests there exists a such that for all , , with at least one we have . Therefore, for all , the blocking coalition guarantees the owner of and are neighbors. Based on SWN, means can always point to and get allocated instead of . Thus, the trading cycle which contains the owner of and can trade by the cycle (i.e., = ). This contradicts the assumption of existing at least one . Hence, SWN is stable-cc. ∎
B.2. Leave and Share
In this section, we prove that LS is IR, IC and stable-cc.
For any order , LS is IR.
Proof.
In LS, agent leaves only when she gets an item . Agent can always choose herself as her favorite agent, and then LS will allocate to . Thus, LS is IR. ∎
For any order , LS is IC.
Proof.
Since each agent ’s type consists of two parts, her preference and her neighbor set , we will prove misreporting neither nor can improve her allocation.
Misreport on : For agent , we fix her reported neighbor set as . Her real preference is and her reported preference is . Now we compare her allocation with .
Since is based on the minimum distance, which is irrelevant to agents’ preferences, we only need to prove that for all agents for a given order.
Before is pushed into the stack, all trading cycles are irrelevant to ( has not been preferred by the agents in the stack before, so is not used at all). Thus we only consider the situation when agent is pushed into the stack and then can decide which agent after is pushed into the stack.
When is on the top of the stack, the next pushed agent is determined by . Agent can be allocated with only when there is a trading cycle with . Assume that , i.e., misreporting gives a better item. We will show this leads to a contradiction. If reported truthfully, then would first choose before ( is pushed into the stack first), since did not get , which means formed a cycle without . If reporting , is matched with , then it must be the case that there exists another trading cycle which breaks the cycle . Otherwise, whenever points to , will form the original cycle as it is independent of ’s preference. The only possibility for to achieve this is by pointing her favorite agent under the false preference . By doing so, can force other agents to leave earlier with different cycles including . Next, we will show that it is impossible for to break .
If can actually break , there must be an overlap between and . Assume that is the node where joins and is the node where leaves ( and can be the same node). For node , her match in and cannot be the same (the model assumes strict preference), and no matter when is pushed into the stack, both items in and are still there. Assuming the matching in is her favorite, then cycle will never be formed. This contradicts to , so reporting truthfully is a dominant strategy.
Misreport on : As the above showed for any reported neighbor set , reporting truthfully is a dominant strategy. Next, we further show that under truthful preference reports, reporting is a dominant strategy. That is, for the allocation and , we will show .
Firstly, we show that the tradings before being pushed into the stack are irrelevant to ’s neighbor set report . For all the agents ranked before in , their shortest distance is smaller than or equal to ’s shortest distance to agent , which means that their shortest paths do not contain and therefore cannot change them. Thus, cannot change the order of all agents ordered before in . In addition, agent could be a cut point to disconnect certain agents from agent , so can impact ’s distances and qualification. However, can only be involved in the matching after is in the stack, as others cannot reach without . Hence, before is pushed into the stack, the tradings only depend on those ordered before and the agents excluding , which are independent of . In fact, the order of the agents pushed into the stack before is the same no matter what is. That is, when is pushed into the stack, the agents, except for , remaining in the game are independent of .
Then when misreports , she will only reduce her own options in the favorite agent selection. Whether disconnects or not, reporting here is equivalent to modifying by disliking neighbors in . As we have shown, this is not beneficial for the agent. Therefore, reporting truthfully is a dominant strategy, i.e., .
Put the above two steps together, we have proved that , i.e., LS is IC. ∎
For any order , LS is stable-cc.
Proof.
For every and their item set . Let the allocation given by LS be . If there exists a blocking coalition , where is the node set of a complete component in , we have . A blocking coalition suggests there exists a such that for all , , with at least one we have . Therefore, for all , the blocking coalition guarantees the owner of and are in one trading cycle. This indicates if a trading cycle contains any agent in the coalition, all the agents in the trading cycle are in the coalition. Based on LS, means the owner of will be pushed into the stack before the owner of . Thus, the trading cycle which contains the owner of and can trade by the cycle (i.e., = ). This contradicts the assumption of existing . Hence, LS is stable-cc. ∎
B.3. Connected Trading Cycles
In this section, we prove that CTC is IR, IC, and stable-cc. The proof for optimal-cc is in Section 5, Theorem 5.7.
For any order , CTC is IR.
Proof.
In CTC, every agent can point to her endowment , and always has an exclusive path to herself so she does not have to switch her preference. Eventually, CTC will assign to . Thus, CTC is IR. ∎
For any order , CTC is IC.
Proof.
In CTC, the path detection and preference switching process (in CTC step c) ensures each agent choose from her best possible choice (based on the next favorite function), and only switch pointing if all paths from herself to her pointing fail to be connected by an exclusive path. In path detection, while agent ’s path to her pointing overlaps with others, we constantly find all possible paths from to with ascending order in length. This means, cannot misreport neighbor set () to add new paths to . Further, has no incentive to misreport neighbor set to exclude her competitor (i.e., can misreport so that who also points to is unqualified.) because in this case, all paths from to pass through . So, if and are competing for the same item , overlaps with , so will switch to a less preferred agents before does.
Suppose CTC is not IC, there must exist an agent , when truthfully report her type, we have , and can misreport to improve her matching, .
We denote the cycle involving as , suppose and . According to CTC step c.ii, we know that cycle is a connected cycle and each agent in has an exclusive path to her pointing.
Similarly, we denote the cycle formed under ’s misreport as , involving . Suppose we have and . According to CTC step c.ii, we know that cycle is also a connected cycle and each agent in has an exclusive path to her pointing.
Since other agents type profiles are fixed as , in cycle and in cycle form irrelevant of agent ’s reported type profile. Thus, following truthful type , agent will point to first (), so will form and get traded in CTC.
This contradicts our assumption which means CTC is IC. ∎
For any order , CTC is stable-cc.
Proof.
For any given type profile , if the allocation given by CTC violates stable-cc, there exists a group of agents that forms a complete component in , they deviate together and swap among themselves can result in a better allocation . Since group is a complete component, each agent can point to the owner of her allocation through her outgoing edge (i.e., , agent points to ).
We next demonstrate that when agent points to , will not switch her pointing to a less preferred agent in CTC. Suppose during CTC’s execution, an agent points to , let the connected component involving be . Since is ’s outgoing edge, whether is exclusively marked by or not, is not in (refer to CTC step c). If (CTC step c.i), CTC will not let switch her pointing because can always connect to her pointing by her outgoing edge. If and (CTC step c.ii), CTC will let trade, so still does not switch points. If and (CTC step c.iii), since ’s pointing path passes no other agents, does not have to switch points. Finally, if (CTC step c.iv and c.v), since , CTC will not let switch her pointing.
That is to say, any agent can hold her pointing to , and CTC will allocate . This means , which contradicts our assumption. ∎
B.4. Complexity Analysis
Proposition \thetheorem
The computation complexity of SWN is .
Proof.
In SWN, each agent points to the neighbor with her favorite item, and then we detect cycles in the constructed directed pointing graph with the computation cost of . In the worst-case scenario, all agents are self-looped, the above process will be conducted times, so the computation complexity is . ∎
Proposition \thetheorem
The computation complexity of LS is .
Proof.
In LS, we first compute the shortest path length from each agent to the initial agent set to determine the order . The corresponding computation complexity is . Next, following the order, at each turn, we start from the agent with the smallest order to form a cycle with a computation complexity of . A stack is used to record the pointed agents, if a sequence of agents forms a cycle, they will be popped out of the stack (as in LS step b). Once the stack is empty, LS merges the remaining neighbors of the matched agents with a computation complexity of (as in LS step c). In the worst-case scenario, all agents are self-looped, so the above process will be conducted times, and the total computation complexity is . ∎
Proposition \thetheorem
The computation complexity of CTC is .
Proof.
In CTC, we first compute the order for each agent with a computation complexity of . Then, starting from the agent with the smallest order, CTC finds a cycle sequence in the favorite pointing graph with computation complexity of (as in CTC step a). During the path detection process, the construction of minimum connected component requires a combination of all agents in and a check on the connectedness for each combination attempt with computation complexity of , resulting in a computation cost of (as in Path Detection step a). Next, CTC applies a marking process to determine whether each agent in has an exclusive path to her pointing to further distinguish the connectedness of (as in Path Detection step c,d). This process involves determining the shortest paths for all agents in , sorting the paths, and marking on a subgraph . Together, the computation cost for the marking process is . Finally, with the marked , CTC determines which agent should switch her pointing to the next favorite or let the cycle get traded in as in CTC step c. Hence, the computation complexity of CTC is . ∎