1 Introduction
Residential segregation is a broad phenomenon affecting most metropolitan areas, and is known to be caused due to racial or socioeconomic differences. The severity of its implications to society (Bayer et al., 2001) is the main reason for the vast research attention it has received, with many different models being proposed over the years that aim to conceptualize it (e.g., see Tiebout (1956)). The most prominent of those models is that of Schelling (1969, 1971), which studies how motives at an individual level can lead to macroscopic behavior and, ultimately, to segregation. In particular, the individuals are modelled as agents of two different types (usually referred to using colors, such as red and blue), and the environment is abstracted by a topology (such as a grid graph), representing a city. The agents occupy nodes of the topology, and prefer neighborhoods in which the presence of their own type exceeds a specified tolerance threshold. If an agent is unhappy with her current location, then she either jumps to a randomly selected empty node of the topology, or swaps positions with another random unhappy agent. Schelling’s crucial observation was that such dynamics might lead to largely segregated placements, even when the agents are relatively tolerant of mixed neighborhoods.
A recent series of papers (discussed in Section 1.2) have generalized Schelling’s model to include more than two types, and have taken a gametheoretic approach, according to which the agents behave strategically rather than randomly, aiming to maximize their individual utility. There are many ways to define the utility of an agent of type . For instance, Elkind et al. (2019) defined it as the ratio of the number of agents of type in ’s neighborhood over the total number of agents therein. Echzell et al. (2019) proposed a similar definition, which however does not take into account all the agents of different type in the denominator, but only those of the majority type. The first definition essentially assumes that the agents view all the agents of different type as enemies. On the other hand, the second definition assumes that the agents view only the majority type as hostile. An alternative way of thinking about these particular utility functions is as if the agents have binary tolerance towards other agents in the sense that agents are either friends or enemies; in the case of Elkind et al. all the neighbors of an agent are taken into account when computing her utility, whereas in the case of Echzell et al. some of her neighbors are ignored.
These functions are natural generalizations of the quantity that determines the happiness of agents in Schelling’s original model for two types. However, they fail to capture realistic scenarios in which the agents do not have a singledimensional view of the other agents, but rather have different preferences over the different types of agents. As an example, consider people looking to buy houses, who may be of four possible types: young single, in a couple, in a family with children, or retired. Such individuals might have preferences over the types, and these preferences are likely to be consistent with the specific given ordering of the types. That is, a young single person would rather live around other single people, or even young couples as they are more likely to establish social relationships, less so with families and even less so with elderly. Similarly, a family with children would be happy to be around other families, but would not mind (young or retired) couples as they are likely to prefer a safe and quiet neighborhood, where their children can grow up and make friends.
1.1 Our contribution
To capture scenarios like the example above, we propose a clean model that naturally extends Schelling’s original model by incorporating different levels of tolerance among agent types, and study the induced strategic games in terms of the existence and quality of their equilibria; in Section 5, we discuss potential generalizations of our model.
To be more specific, our model consists of a set of agents who are partitioned into types, a graph topology, and an ordering of the different agent types which determines the relative tolerance among agents of different types. Naturally, we assume that there is higher tolerance between agents whose types are closer according to the ordering. The exact degree of tolerance between the different types is specified by a
tolerance vector
, which consists of weights representing the tolerance between the different types depending on their distance in the given ordering. For example, agents of the same type are in distance and are fully tolerant towards each other, which is captured by a weight of . The utility of an agent can then be computed as a weighted average of the tolerance that she has towards her neighbors, and every agent aims to occupy a node of the topology to maximize her utility; agents are allowed to unilaterally jump to empty nodes to increase their utility.We study the dynamics of such tolerance Schelling games. We first focus on questions related to equilibrium existence. For general games, we show that equilibria are not guaranteed to exist if agents are not fully tolerant towards agents in typedistance . We complement this impossibility by showing many positive results for important subclasses of games, in which the topology is a structured graph (such as a grid or a tree) and the tolerance vector satisfies certain properties. We then turn our attention to the quality of equilibria measured by the social welfare objective, defined as the total utility of the agents, and prove (asymptotically tight) bounds on the price of anarchy (Koutsoupias and Papadimitriou, 1999) and price of stability (Anshelevich et al., 2008).
1.2 Related work
Residential segregation, and Schelling’s original randomized model in particular, has been the basis of a continuous stream of multidisciplinary research in Sociology (Clark and Fossett, 2008), Economics (Pancs and Vriend, 2007; Zhang, 2004), Physics (Vinković and Kirman, 2006), and Computer Science (Barmpalias et al., 2014; Bhakta et al., 2014; Bläsius et al., 2021; Brandt et al., 2012; Immorlica et al., 2017).
Most related to our work is a quite recent series of papers in the TCS and AI communities, which deviated from the premise of random behavior, and instead studied the strategic games induced when the agents act as utilitymaximizers. Chauhan et al. (2018) studied questions related to dynamics convergence in games with two types of agents who can either jump to empty nodes of a topology (as in our case) or swap locations with other agents to minimize a cost function; their model was generalized to multiple types of agents by Echzell et al. (2019). In this paper we extend the utility model of Elkind et al. (2019), who initially refined the model of Chauhan et al. (2018). They introduced a simpler utility function which the agents aim to maximize, and studied the existence, complexity and quality of equilibria in jump games with multiple types of agents and general topologies. They also proposed many interesting variants, such as enemy aversion and social Schelling games, which have been partially studied by Kanellopoulos et al. (2020) and Chan et al. (2020), respectively. Agarwal et al. (2020) studied similar questions for swap games, and Bilò et al. (2020) considered a constrained setting, in which the agents can only view a small part of the topology near their current location. Finally, Bullinger et al. (2021) studied the complexity of computing assignments with good welfare guarantees, such as Pareto optimality and variants of it.
2 Preliminaries
A type tolerance Schelling game consists of:

A set of agents, partitioned into disjoint sets representing types, such that .

A simple connected undirected graph called topology, such that .

A tolerance vector consisting of parameters, such that represents the tolerance that agents of type have towards agents of type in Manhattan distance according to a given ordering of the types (say, ). We assume that agents are more tolerant towards agents of types that are closer to their own according to , and we thus have that . We also assume that ; otherwise, all agents are completely tolerant towards all others and the game is trivial. Let be the sum of all tolerance parameters.
Clearly, the class of type tolerance Schelling games includes as a special case the classic Schelling games studied in the related literature (e.g., see (Elkind et al., 2019)), for which and for every . Because of this particular tolerance vector, we will use the term type zerotolerance games to refer to the classic Schelling games.
In this paper we consider balanced games, in which the agents are partitioned in types of equal size, such that for every ; thus, is a multiple of . This assumption makes the analysis more interesting as it helps bypass straightforward negative results. We use the abbreviation TS to refer to such a balanced type tolerance Schelling game game . For convenience, we will also use the abbreviation ZTS to refer to a balanced type zerotolerance game .
Let be an assignment specifying the node of that each agent occupies, such that for . For every node , we denote by the number of agents of type that occupy nodes in the neighborhood of according to the assignment , and also let . Given an assignment , the utility of agent of type is computed as
if , and otherwise (in which case we say that the agent is isolated). The agents are strategic and aim to maximize their utility by jumping to empty nodes of the topology if they can increase their utility by doing so. We say that an assignment is an equilibrium if no agent of any type has incentive to jump to any empty node of the topology, that is, , where is the assignment resulting from this jump. Let be the set of equilibrium assignments of a given TS game .
The social welfare of an assignment is defined as the total utility of the agents, that is,
Let be the maximum social welfare among all possible assignments in the TS game . For a given subclass of TS games, the price of anarchy is defined as the worstcase ratio, over all possible games such that , between and the minimum social welfare among all equilibria:
Similarly, the price of stability takes into account the ratio between and the maximum social welfare among all equilibria:
3 Equilibrium existence
In this section, we show several positive and negative results about the existence of equilibrium assignments, for interesting subclasses of tolerance Schelling games. We start with the relation of equilibrium assignments in ZTS games and general TS games.
Theorem 1.
Consider a ZTS game and a TS game . For , and consists of assignments with isolated agents. For , and are incomparable.
Proof.
We start with ; for convenience, we will refer to the two types as red and blue. Let be an equilibrium of . Clearly, for and to be different, it must be the case that . Consequently, there are no isolated agents in as they would have incentive to deviate to nodes that are adjacent to agents of the other type and increase their utility from to . We will show that is an equilibrium of as well. Without loss of generality, consider a red agent who occupies a node that is adjacent to red and blue agents. Since agent is not isolated, it holds that . If , then agent has maximum utility in both and . Hence, we can assume that . Since is an equilibrium of , agent has no incentive to unilaterally jump to any empty node of the topology. That is,
where and are the number of red and blue agents that are adjacent to after agent jumps to ; observe that , as otherwise agent would obtain maximum utility of by jumping to , contradicting that is an equilibrium of . Since , we equivalently have that
Therefore, agent has no incentive to jump to the empty node in , and is an equilibrium of as well. Using similar arguments, we can show that any equilibrium of such that there is no isolated agent is also an equilibrium of .
For , to show that is incomparable to , consider the tolerance vector and the following two partial assignments and :

In , an agent of type occupies a node which is adjacent to two nodes, one occupied by an agent of type and one occupied by an agent of type . There is also an empty node which is adjacent to two nodes, one occupied by an agent of type and one occupied by an agent of type . In , agent has no incentive to jump from to as both nodes give her utility . On the other hand, in , agent has utility and has incentive to jump to to increase her utility to . Hence, can be an equilibrium of , but not of .

In , an agent of type occupies a node which is adjacent to three nodes, one occupied by an agent of type , one occupied by an agent of type and one occupied by an agent of type . There is also an empty node which is adjacent to two nodes, one occupied by an agent of type and one occupied by an agent of type . In , agent has incentive to jump from to in order to increase her utility from to . However, in , agent has no incentive to jump as she has utility by occupying node , which is exactly the utility she would also obtain by jumping to . Consequently, can be an equilibrium of , but not of .
This completes the proof. ∎
Since there exist simple ZTS games that do not admit any equilibria (Elkind et al., 2019), the first part of Theorem 1 implies that equilibria are not guaranteed to exist for general TS games as well. In fact, by carefully inspecting the proof of Elkind et al. (2019) that ZTS games played on trees do not always admit equilibria for every , we can show the following stronger impossibility result.
Theorem 2.
For every and every tolerance vector such that , there exists a TS game in which is a tree and does not admit any equilibrium.
Proof.
We will show how the proof of Elkind et al. (2019) that ZTS games do not always admit equilibria can be directly extended to capture the class of TS games with appropriate tolerance vectors. Consider a TS game where is a set of agents partitioned into types such that there are agents per type, and is a tolerance vector with . The topology is a tree consisting of nodes, distributed to four levels. There is a root node with one child node , which in turn has a set of children. Every node has a set of children nodes, which are leaves of the tree; let . Adapting the arguments of Elkind et al. (2019), we will now show that this game does not admit any equilibrium. Assume otherwise, that there exists an equilibrium assignment . We distinguish between cases by enumerating the single node that is left empty:

. Suppose that the agent who occupies node is of type . Since and , there must be an agent of type with a neighbor of type . Hence, agent has utility strictly less than , and has incentive to deviate to to obtain maximum utility .

. Suppose that the agent who occupies node is of type . Since she is isolated, her utility is . Since is assumed to be an equilibrium, agent would still have utility by deviating to ; note that this is impossible if all tolerance parameters are positive. As a result, all the nodes in must be occupied by agents of types such that . But then, this means that all agents of type , who must occupy nodes of , also have utility and incentive to deviate to , connect to agent , and obtain positive utility.

. Since is empty, all the agents occupying nodes of have utility . Observe that if there exist two agents of the same type or , then some agent occupying a node of would deviate to to increase her utility from to positive. Hence, all such agents must be of different type and . But then, one of these agents has again incentive to deviate to to connect to the agent that occupies node .

. Suppose that the agent who occupies the parent of is of type . For such an assignment to be an equilibrium, it must be the case that all other agents of type have utility , as otherwise they would have incentive to deviate to . Since , this would mean that all other agents of type have only neighbors of type ; it is easy to see that this is impossible.
This completes the proof. ∎
Since Theorem 2 implies that it is impossible to hope for general positive existence results, in the remainder of this section we focus on games with structured topologies and tolerance vectors. In particular, we consider the class of binary TS games with in which the tolerance vector is such that
Clearly, the class of binary TS games coincides with that of ZTS.
We next show that when the topology is a grid^{1}^{1}1We focus on grids where internal nodes have neighbors. or a tree, there exist values of for which binary TS games played on such a topology always admit at least one equilibrium. Our first result for grids is the following.
Theorem 3.
Every ZTS game in which is a grid admits at least one equilibrium.
Proof.
Consider an arbitrary ZTS game in which the topology is an grid ( rows and columns), such that . Also, let be the number of agents per type, such that . Clearly, since it holds . To simplify our discussion, we will refer to the two types as red and blue.
We construct an equilibrium by assigning the agents to the nodes of the grid columnwise from top to bottom and left to right as follows: We first assign all the red agents. We then leave a number of nodes empty, and finish by assigning all the blue agents. Let be the assignment computed.
Clearly, if , is guaranteed to be an equilibrium since all agents have maximum utility . Otherwise, when and since , it cannot be that there are agents per type. So, in the following we focus on the case where and .
Let be an empty node, and consider any red agent that occupies node according to . We will argue that has no incentive to jump to ; the argument for blue agents is symmetric. Observe that agent has utility at least , since she is connected to at least one red agent and at most one blue agent by construction. We will focus on the case where agent has exactly one blue neighbor, as otherwise she clearly has no incentive to jump to . By the construction of and the fact that , we also have that the left neighbor of is occupied by a red agent, and the right neighbor of is occupied by a blue agent. Moreover, the top neighbor of , call it , can either be empty or occupied by a red agent, and the bottom neighbor of , call it , can either be empty or occupied by a blue agent. We distinguish between the following cases:

Case I: , are both empty, or is empty and is occupied by a blue agent, or is occupied by a red agent and is occupied by a blue agent. Agent has no incentive to deviate to since by doing so she would only be able to get utility at most .

Case II: is occupied by a red agent and is empty. If agent occupies she has no incentive to deviate to , as she would be able to get utility exactly , while right now she has utility at least . As a result, we have that agent is not adjacent to any empty node, and by deviating to agent would obtain utility . The only case in which agent would have incentive to deviate to is if her utility is exactly , which would mean that she has exactly one red neighbor and one blue neighbor. This is possible only if is the last node of the first column of the grid and . However, this contradicts the fact that , since there is a column with two empty nodes ( and ), one node () occupied by a red agent, and one node (the right neighbor of ) occupied by a blue agent.
This completes the proof. ∎
The proof of Theorem 3 is constructive and such that in the computed equilibrium no agent is isolated. Consequently, in combination with Theorem 1, it further implies the following:
Corollary 4.
Every TS game in which is a grid admits at least one equilibrium.
Unfortunately, showing a result similar to Theorem 3 for every is a very challenging task. Instead, we show the following result for binary games.
Theorem 5.
Every binary TS game in which is a grid admits at least one equilibrium.
Proof.
Consider a binary TS game with agents played on an grid ( rows and columns) such that . Let be the number of agents per type and be the number of empty nodes.
We compute an equilibrium assignment using Algorithm 1, which in turn relies on the Tile procedure described in Algorithm 2. In particular, Algorithm 2 takes as input the set of yet unassigned agents, an subgrid and an integer , and outputs an assignment of agents to the nodes in the subgrid so that the leftmost nodes in the top row are empty, while all other nodes host an agent if the number of unassigned agents is large enough. Algorithm 2 considers the yet unassigned agents in increasing type according to the ordering and assigns them in these rows one after the other, from row to row along the columns, from left to right, skipping the empty nodes.
Algorithm 1 terminates immediately (at any step) when all agents have been assigned. We now argue that the resulting allocation computed by Algorithm 1 is an equilibrium. Observe that all agents assigned at Lines 2 and 6 get utility , as each agent of type has neighbors of types in . Clearly, if the algorithm terminates at these lines (i.e., all agents are placed), is an equilibrium.
Note that the algorithm cannot terminate at Lines 9–10 since , while each agent of type placed during this step has utility at least ; indeed, has at least one neighbor of type , at least one neighbor of a type in , and at most one neighbor of type at distance at least .
In Line 12, agents placed at the last rows have utility , while an agent of type on the row with the empty nodes has utility at least when , since she has at least one neighbor of type and at most one neighbor of type at distance at least , and at least otherwise, since she has at least one neighbor of type , at least one neighbor of a type in , and at most one neighbor of type at distance at least .
In Line 14, agents assigned have utility at least except (perhaps) the first or the last agent on the row that has utility at least , since . All agents placed in Lines 15 and 17 have utility at least with a similar reasoning as above. In Line 18, an agent of type has utility at least when , since she has at least one neighbor of type and at most one neighbor of type at distance at least , and at least otherwise, since she has at least two neighbors of a type in and at most one neighbor of type at distance at least .
Observe that, in any case, an agent gets utility at most by jumping to an empty node, since either the top or the bottom neighbor will have a large type distance and there is no left neighbor. As in almost all cases, agents in have utility at least , it remains to argue about the nodes that have utility less than that. The agent in Line 12 with utility obtains utility at most by jumping, the agents in Line 14 with utility at least obtain utility at most by jumping and, finally, the agent in Line 18 with utility obtains utility at most by jumping. We conclude that is an equilibrium and the theorem follows. ∎
Note that Algorithm 1 may fail to return an equilibrium for lexicographically larger tolerance vectors. Indeed, consider a grid and types of two agents each. Algorithm 1 puts agents of types to in each of the first two rows, skips nodes, puts agents of types and in the third row, and places agents of types , , and in the last row; see also Figure 1. Under tolerance vector the assignment is an equilibrium (by Theorem 5), while under tolerance vector , the agent of type in the second row has utility , but can obtain utility by jumping to the rightmost empty node.
So, a different proof is needed for computing equilibria in binary games with . While we have not been able to show this result for every , we do show it for . In particular, the equilibrium constructed in the proof of the next theorem guarantees a utility of to all agents, and thus it is also an equilibrium for games with lexicographically larger tolerance vectors, not necessarily binary ones.
Theorem 6.
For , every binary TS game in which is a grid admits at least one equilibrium.
Proof.
Consider a binary TS game in which the topology is an grid ( rows and columns) such that . Observe that if an agent is assigned to a node such that all her neighbors are of types in distance strictly less than according to the ordering , then agent has maximum utility , and no incentive to deviate from . This is the property we will exploit to construct an equilibrium assignment. We distinguish between the following two cases:

. We construct an equilibrium assignment by considering the agents in increasing type according to the ordering , and assign them one after the other along the columns, from top to bottom and from left to right. Since there are at most rows and , each column of the grid can fit at most all the agents of different types. This means that, by the construction of , every agent of type has neighbors of types such that , where the last inequality follows by the fact that . Hence, agent has utility and no incentive to deviate.

. Consider the subgrid containing only the nodes in the first rows. Since , all agents can be assigned to these nodes, and we thus can repeat the process of the previous case by limiting our attention to the subgrid. This again guarantees that every agent has utility and the resulting assignment is an equilibrium.
This completes the proof. ∎
Next we turn our attention to games in which the topology is a tree. We show the following result for binary games when .
Theorem 7.
Every binary TS game and every binary TS game where for , in which is a tree, admit at least one equilibrium.
Proof.
To construct an equilibrium, we exploit the following known property of trees: Every tree with nodes contains a centroid node, whose removal splits the tree into at least two subtrees with at most nodes each. We root the tree from such a centroid node, and leave the root empty. This leads to a partition of the topology in subtrees, which we order in nonincreasing size and denote by .
To assign the agents we use Algorithm 3, which in turn uses the BottomUp allocation procedure (described in Algorithm 4). The procedure BottomUp() assigns the unassigned agents of types to the nodes of the subtree from bottom to top (higher to lower depth), so that all the agents of are covered by either agents of the same type or agents of type , and the assignment for the remaining agents is connected.
We first claim that at the end of Step 3 of Algorithm 3, every agent either gets utility or gets utility if she is isolated. Indeed, it holds that agents of type can only be adjacent to agents of type and . Similarly, the agents of type can only be adjacent to agents of type and . In addition, by design, the maximum type distance among all the other agents assigned in Steps 1 and 2 is . By this discussion, all agents have utility when and the game is binary. Below, we assume that .
To see the claim is true for agents assigned in Step 3, observe that if Step 2 is applied on a subtree of at least nodes, then since we visit subtrees in nonincreasing order of their size, Step 1 is also applied on a subtree of at least nodes. Hence, at most agents remain to be allocated. Otherwise, if no subtree on which Step 2 is applied has at least nodes, then, again due to the order we visit subtrees, any subtree to which we perform Step 3 has less than nodes. In any case, at most agents will be allocated at Step 3 at any given subtree. These agents belong to at most different types and, due to Steps 2 and 3 in Algorithm 4, we are guaranteed that no agent allocated in Step 3 will have a neighbor of typedistance . Since , such agents either get utility , or if they are isolated, as required.
It remains to argue that after a possible execution of Step 4, no agent has a profitable deviation. We distinguish between the following two cases when Step 4 is performed:

Case I: There are at least two isolated agents in the last subtree among those considered in the first three steps. First observe that, since the subtrees are considered in nonincreasing order by size and the last subtree contains at least two agents, there is no subtree with a single isolated agent. Now, by the definition of the bottomuplike allocation algorithm, all these agents must be of the last type , since if agents of two or more types are assigned in the same subtree, the resulting assignment therein is by construction connected. Therefore, by rearranging the agents of type in the last subtree so that all of them have at least one neighbor, each of them gets utility and the assignment is an equilibrium.

Case II: There is a single isolated agent in the last subtree of the last type considered, who is moved to the root of the tree. Since Step 4 is performed, all the subtrees that have been considered in the first three steps are full, with the exception of the last subtree which has been left empty after moving agent . Thus, the empty nodes of the topology are only adjacent to other empty nodes or the root. As a result, an agent of some type would be able to get utility by jumping to an empty node that is adjacent to the root, and utility by jumping to any other empty node. However, every agent already has utility at least . In particular, agent has utility if she is not adjacent to the root, utility at least if she is adjacent to the root but not isolated before moving to the root, and utility exactly if she is adjacent to the root and was isolated before moving to the root.
This completes the proof. ∎
4 Quality of equilibria
In this section, we consider the quality of equilibria measured in terms of social welfare, and bound the price of anarchy and price of stability. Recall that these notions compare the social welfare achieved in the worst and best equilibrium to the maximum possible social welfare achieved in any assignment. We start with a general upper bound on the price of anarchy, whose proof follows by bounding the social welfare at equilibrium by the total utility the agents would be able to obtain by jumping to an arbitrary empty node. Recall that .
Theorem 8.
The price of anarchy of TS games with tolerance vector is at most
Proof.
Consider a TS game with . Let be an equilibrium, and denote by an empty node. The utility that an agent of type , would obtain by unilaterally jumping to is

if she is not adjacent to ;

otherwise.
Also observe that for every type , there are exactly agents that are not adjacent to , and agents that are adjacent to . Since is an equilibrium, every agent of type is guaranteed to have at least as much utility as if she were to deviate to , and therefore the social welfare is
The second inequality is due to increasing the denominator of the second fraction. The first equality follows by aggregating the factors of for every . Finally, the second equality follows by factorizing . Now observe that because the tolerance vector is nonincreasing, we have that . Combining this together with the fact that , we obtain
The bound on the price of anarchy follows by the fact that the optimal welfare is at most (the maximum utility of any agent is ). ∎
For each , let be the total tolerance of agents of type towards any subset containing one agent of every type. We can show the following general lower bound on the price of anarchy, as a function of these parameters.
Theorem 9.
The price of anarchy of TS games with tolerance vector is at least
Proof.
Consider a TS game , where for some integer . The topology contains nodes as follows. There exists a central node and large cliques , with , where each contains nodes. There also exist small cliques , with and , each of size , as well as another small clique of size . Apart from the edges within the cliques, we add the following edges so that any node of a small clique is connected to a single node outside its clique. First, we connect the central node to a single node of cliques and , for . Then, for each , with , we connect each node that is not a neighbor of to a single distinct node in . Similarly, for each , with and , we connect any node without a neighbor in to a single distinct node in . Finally, for each , with , we connect the only node with no neighbors in to a single distinct node in ; this completes the description of .
In the optimal assignment, for , all agents of type are at the large clique and . There exists an equilibrium assignment where all agents are placed in the small cliques as follows: each small clique contains a single agent of each type, the agents neighboring the (empty) central node are all of distinct types, and, finally, for each pair of neighboring agents across different small cliques, both agents are of the same type. It is always possible to obtain such an assignment; see Figure 2 for an example with and .
Observe that, for , each agent of type that is not a neighbor of the central node has utility and will obtain the same utility if she jumps to the central node. Similarly, each agent of type who is a neighbor of has utility and will get the same utility by jumping to the central node. Clearly, any agent will get utility by jumping to another empty node. Hence, is an equilibrium with
Since , we obtain the following lower bound on the price of anarchy:
Furthermore, since for every and , it holds that . Hence, we have a lower bound of
as desired. ∎
Corollary 10.
The price of anarchy in TS games is .
Theorem 9 allows us to provide concrete bounds for subclasses of TS games. In particular, for ZTS games, since for every , we have , and thus the lefthandside of the inequality in Theorem 9 yields the following tight bound.
Corollary 11.
The price of anarchy of ZTS games is .
We now define the following two natural classes of TS games in which the tolerance parameters are specific functions of the distance between the types.

Proportional TS games: for every . We have

Inversely proportional TS games: for every . We have where is the th harmonic number.
By Theorems 8, 9 and the above definitions, we obtain the following corollaries.
Corollary 12.
For every , the price of anarchy of proportional TS games is at most and at least .
Corollary 13.
For every , the price of anarchy of inversely proportional TS games is at most and at least .
We conclude our technical contribution with a lower bound on the price of stability for the case of two types of agents. For ZTS games, the following lower bound improves upon the bound of of Elkind et al. (2019), and is also tight when the number of agents tends to infinity because of the upper bound implied by Theorem 8; recall that for ZTS games.
Theorem 14.
The price of stability of TS games is at least , for any .
Proof.
We consider a particular TS game and we will show that it admits a unique (up to symmetry) equilibrium . Furthermore, we will show that has no isolated agents. By Theorem 1, the TS game also admits as its unique equilibrium. It will then suffice to argue about the social welfare in . Clearly, if then and the theorem holds trivially.
Let be an arbitrarily large even positive integer that is not a multiple of and set and . In our proof we exploit that ^{2}^{2}2Recall that is even and note that . The claim follows since the greatest common divisor of two integers equals their smallest positive linear combination..
Let and consider the following topology with nodes; see also Figure 3. The set of nodes comprises six sets , , , , , and . Set contains nodes, set contains nodes, while is a clique of nodes. Set is a collection of subsets , , , where each subset has nodes, while set is a collection of subsets , , where each subset contains nodes. Finally, set contains a single node .
Apart from the edges in the clique , the following edges also exist. To begin with, each node in is connected to a unique distinct node in . Each node in is also connected to all nodes in , while each node in is also connected to all nodes in , for . Finally, node is connected to all nodes in .
Consider the following assignment . All nodes in host red agents, all nodes in host blue agents, while all remaining blue agents are in . We claim that is an equilibrium. To see why, observe that all agents in have utility and, hence, no incentive to jump to the empty node. Each (blue) agent in has utility and would obtain the same utility by jumping. Finally, each (red) agent in has utility at least and would obtain utility at most by jumping; since , is indeed an equilibrium.
Next, we show that is the unique equilibrium assignment. This will be accomplished through a series of claims regarding the structure of any equilibrium assignment and the location of the unique empty node. In the following, let and denote the number of red and blue agents in , and the number of red and blue agents in for , and, similarly, and the number of red and blue agents in where . Finally, let and be the total number of red and blue agents in .
Claim 15.
In any equilibrium, there are at least two red and at least two blue agents with utility less than .
Proof.
Observe that if contains at least two red and two blue agents, then the claim trivially holds. So, without loss of generality, let contain at most one red agent. Then, must contain at least two red agents as the nodes in cannot host all remaining red agents. The claim follows by considering these red agents in and their blue neighbors in . ∎
Claim 16.
In any equilibrium, the empty node cannot be in .
Proof.
Assume otherwise. Then, any agent having the same type as the unique neighbor of the empty node would obtain utility by jumping. Claim 15 guarantees that at least one such agent, other than the unique neighbor, exists. ∎
Claim 17.
In any equilibrium, each agent in has utility .
Proof.
Assume otherwise and let be an agent with utility ; without loss of generality let us assume that is red. Since has no incentive to jump, it must be that all agents neighboring the empty node, except possibly for , are blue. If is not a neighbor of the empty node, by Claim 15, there exists at least one blue agent that has incentive to jump to the empty node and obtain utility . So, we assume that is the empty node. In that case, all agents in have utility and it is not hard to see that such an assignment cannot be an equilibrium, since contains either at least two red agents or at least two blue agents. ∎
This implies the following.
Claim 18.
In any equilibrium, cannot be empty and all agents in are of the same type.
Claim 19.
In any equilibrium, each agent in has utility .
Proof.
Assume otherwise and let be an agent with utility ; without loss of generality let us assume that is red. As in the proof of Claim 17, since has no incentive to jump, it must be that all agents neighboring the empty node, except possibly for , are blue. If is not a neighbor of the empty node, by Claim 15, there exists at least one blue agent that has incentive to jump to the empty node and obtain utility . Otherwise, if the empty node is in , then all agents in are blue. Furthermore, any other agent in except for is blue, as otherwise the agent would jump to the empty node and improve her utility from to strictly positive. We conclude that contains blue agents, while the last two blue agents must be in , by Claim 18. The claim follows since each of these two blue agents has utility and would obtain utility by jumping; note that . ∎
By Claim 18, we assume, without loss of generality, that all agents in