This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

MMS Allocations of Chores with Connectivity Constraints: New Methods and New Results

Mingyu Xiao University of Electronic Science and Technology of China.{myxiao,huangsen47}@gmail.com.    Guoliang Qiu Shanghai Jiao Tong University. [email protected].    Sen Huang11footnotemark: 1
Abstract

We study the problem of allocating indivisible chores to agents under the Maximin share (MMS) fairness notion. The chores are embedded on a graph and each bundle of chores assigned to an agent should be connected. Although there is a simple algorithm for MMS allocations of goods on trees, it remains open whether MMS allocations of chores on trees always exist or not, which is a simple but annoying problem in chores allocation. In this paper, we introduce a new method for chores allocation with connectivity constraints, called the group-satisfied method, that can show the existence of MMS allocations of chores on several subclasses of trees. Even these subcases are non-trivial and our results can be considered as a significant step to the open problem. We also consider MMS allocations of chores on cycles where we get the tight approximation ratio for three agents. Our result was obtained via the linear programming (LP) method, which enables us not only to compute approximate MMS allocations but also to construct tight examples of the nonexistence of MMS allocations without complicated combinatorial analysis. These two proposed methods, the group-satisfied method and the LP method, have the potential to solve more related problems.

1 Introduction

The theory of the fair allocation investigates how to allocate items to a set of agents under some fairness notion, where different agents may have different valuation functions on the items. The spirit of the fair allocation problem is to achieve a desired outcome for individuals and the whole community simultaneously, which motivates several important problems in mathematics and computer science. The goods allocation problem with positive valuation functions has received extensive studies [18, 10, 9, 20]. However, in some scenarios in real life, the items to be allocated may have disutility, i.e., the valuation functions are negative, such as troublesome jobs, household chores, or debt. For this case, the problem is called the chores allocation problem [3]. Seemingly, the problem of chores allocation is similar to the well-studied goods allocation problem as we can reduce the former to the latter by setting all valuation functions as their negative counterparts. However, many properties of the problem may change and not be applicable under this reduction. Thus, most results for goods allocation cannot be trivially extended to chores allocation [3, 4, 14, 2, 23].

There are several fairness notions for allocations, such as envy-free (EF) [18], proportionality (PROP) [22], maximin share (MMS) [10], and so on. In this paper, we consider the MMS fairness notion where the MMS value is the best possible guarantee that an agent can expect when he divides the items into several bundles but picks after all other agents. Moreover, we study MMS allocations of chores on graphs with connectivity constraints in which chores are embedded on a graph and each bundle assigned to an agent is required to be connected [5, 15, 8, 19, 7]. The connectivity requirements for chores capture the scenarios such as the allocation for energy conservation and emission reduction obligations between countries where the feature of geographical adjacency is natural, crop harvesting task allocation problem or clean work arrangement in the street where arranging a task with continuous geographical location is more convenient to set and use tools, and so on. Note that MMS allocation may not always exist. It is also meaningful to study the approximate α\alpha-MMS allocation: whether each agent can always get α\alpha fraction of his MMS guarantee in the allocation.

1.1 Our Contribution

We propose two novel techniques to study MMS allocation of chores with connectivity constraints and demonstrate their applications on trees and cycles. Although the graph classes are restrictive, claiming the existence of the (approximate) MMS allocations of chores with these constraints is already non-trivial and requires sophisticated analysis.

For trees, the simple algorithm for MMS allocation of goods [8] can not be extended to chores and an illustrated example will be presented in our later discussion. Resulted from the subtle difference between the goods and chores settings, it remains unknown whether or not MMS allocation of chores on a tree always exists. We generalize the classical last-diminisher method to a method called the group-satisfied method. Together with a matching technique in graph theory, we show the existence of MMS allocations of chores on some special trees, such as trees with depth at most 3, spiders, and so on.

For cycles, the idea for goods allocation in [19] can be trivially used to obtain a 3/2-MMS allocation of chores on cycles. Here our major contribution is the idea of using linear programming to design algorithms for approximate α\alpha-MMS allocations and construct examples to show the nonexistence of MMS allocations. We take the problem of allocating chores on a cycle to three agents as an example to show the linear programming method. By using the linear programming method, we may be able to avoid some complicated combinatorial analysis. We show a tight result: 7/67/6-MMS allocation of chores on a cycle to three agents always exists and can be found in polynomial time; α\alpha-MMS allocation may not exist for any constant α<7/6\alpha<{7/6}. The linear programming method may be used to solve more allocation problems. A directed extension to MMS allocation of goods on a cycle to three agents, we also get a tight ratio of 5/65/6 for α\alpha.

In the following part of the paper, we first introduce related work on MMS and preliminary background. Second, we discuss the difference between allocating goods and chores on trees and introduce the group-satisfied method. Third, we show how to use the group-satisfied method to find MMS allocations for chores on two kinds of trees: trees with depth 3 and spiders. Fourth, we consider MMS allocations of chores on cycles and introduce a linear programming method to find approximation MMS allocations. Finally, we discuss the feasibility of our new methods for other problems.

1.2 Other Related Works

For goods allocation, the MMS fairness notion was first introduced in [10]. The first instance where MMS allocation does not exist was given in [17]. An instance with a fewer number of goods was identified in [16]. On the other hand, a 2/3-MMS allocation always exists [17]. Later, the ratio was improved to 3/4 [13] and to 3/4+1/(12n)3/4+1/(12n) [12], where nn is the number of agents. For only three agents and four agents, the ratio can be further improved to 7/8 [1] and 4/5 [13] respectively. It is also known that a 39/40-MMS allocation for three agents is impossible [11]. All the above results do not take into account connectivity constraints. For goods allocation on a graph with connectivity constraints, MMS allocation always exists on trees [8] but may not exist on single cycles [19]. For goods on a cycle, it is known that 1/2-MMS allocation always exists and the ratio can be improved to 5/6 if there are only three agents [19].

For the chores setting, MMS allocation may not always exist, but 2-MMS allocation always exists [3]. The result was later improved to 4/34/3 [4] and to 11/911/9 [14]. For chores with connectivity constraints, EF, PROP, and Equitability allocations on paths and stars were studied in [7]. A more relaxed fairness notion was studied on paths in [6]. Nevertheless, the MMS criterion has not been well explored, except for some trivial results extended from goods allocation.

2 Backgrounds

Let A={1,,n}A=\{1,\dots,n\} be a set of nn agents and C={c1,,cm}C=\{c_{1},\dots,c_{m}\} be a set of mm chores. There is an undirected graph G=(C,E)G=(C,E) with vertices being chores in CC. For each agent iAi\in A, there is a disutility function on chores ui:C0u_{i}:C\rightarrow\mathbb{R}_{\leq 0}, where the functions uiu_{i} are additive, i.e., ui(C)=cCui(c)u_{i}(C^{\prime})=\sum_{c\in C^{\prime}}u_{i}(c) holds for any subset of chores CCC^{\prime}\subseteq C. The whole disutility function profile for all agents is denoted by U={u1,,un}U=\{u_{1},\dots,u_{n}\}.

Let kk be a positive integer. Let Pk:[k]2CP^{k}:[k]\to 2^{C} be a kk-partition of CC such that i[k]Pk(i)=C\cup_{i\in[k]}P^{k}(i)=C and Pk(i)Pk(j)=P^{k}(i)\cap P^{k}(j)=\varnothing for any different i,j[k]i,j\in[k], where [k]={1,,k}[k]=\{1,\dots,k\} and the set Pk(i)P^{k}(i) is called the iith bundle in the kk-partition. A kk-partition PkP^{k} is valid if the induced subgraph G[Pk(i)]G[P^{k}(i)] is connected for each i[k]i\in[k]. Let 𝒫k\mathcal{P}^{k} denote the set of all valid kk-partitions. An allocation of CC is defined as a valid nn-partition π:A2C\pi:A\rightarrow 2^{C}.

We mainly consider the Maximin share (MMS) criterion for the allocation of chores. Given a graph GG and a positive integer kk, for each iAi\in A, we define the MMS value of agent ii as follows when the chores in GG are allocated to kk agents

mmsik(G)=maxPk𝒫kminj[k]ui(Pk(j)).mms_{i}^{k}(G)=\max_{P^{k}\in\mathcal{P}^{k}}\min_{j\in[k]}u_{i}(P^{k}(j)).

For simplification, we use mmsikmms_{i}^{k} and mmsimms_{i} to denote mmsik(G)mms_{i}^{k}(G) and mmsinmms_{i}^{n}, respectively.

For any constant α1\alpha\geq 1. An nn-partition PP of GG is called an α\alpha-MMSi split for agent ii if each bundle bPb\in P induces a connected subgraph and ui(b)α×mmsiu_{i}(b)\geq\alpha\times mms_{i}. When α=1\alpha=1, we simply call it an MMSi split. We say a valid allocation π\pi is an α\alpha-MMS allocation if ui(π(i))α×mmsiu_{i}(\pi(i))\geq\alpha\times mms_{i} for each agent iAi\in A. When α=1\alpha=1, we simply call it an MMS allocation.

We focus on the existence of MMS (or α\alpha-MMS) allocations of chores on graphs and algorithms to find them if they exist. Our algorithms may need to use the MMS value for each agent. We show that when the graph is a tree or a cycle, the MMS value for each agent can be easily computed. The algorithms are modified from the algorithms for goods in [8] and the detailed proof can be found in Appendix A.

Lemma 2.1.

For allocating chores on a tree or a cycle, the MMS value mmsimms_{i} for each agent iAi\in A can be computed in polynomial time.

3 Failure of the Last-diminisher Method on Trees for Chores Allocations

As mentioned in the introduction, MMS allocations of goods on trees always exist and can be computed in polynomial time [8]. The algorithm uses the idea of the last-diminisher method for proportionality cuttings of divisible cake [21].

We first review the allocation procedure for goods. First, let one agent take a sub rooted tree as TT (the original tree is rooted by taking an arbitrary vertex as the root); second, each other agent, in order, replaces TT with a sub rooted tree TT^{\prime} of it if he thinks TT is too much and does nothing if he thinks the current subtree TT is not enough or just right; third, the last agent who modifies TT gets the bundle TT. Note that after deleting TT from the original tree GG, the remaining part is still a connected tree. The same procedure is then applied to allocate the remaining tree to the remaining agents. This algorithm is not exactly the algorithm for allocating goods on trees in [8]. Both algorithms use the idea of the last-diminisher method and we just present a simplified version.

For chores, agents do not want to get more burdens. The corresponding last-diminisher method will be different: each agent may want to expand the current bundle if he thinks the current bundle of burdens is too light. At first glance, we can also assign the last expanded bundle to the last agent who expands it. However, the expanding operation will cause trouble on trees. After expanding the current bundle (a subtree) by including some vertices to it, the remaining graph after deleting the new bundle may not be connected (not be a connected tree anymore). This may change the property of the problem. Specifically, we give an example in Figure 1 to show that after expanding a rooted subtree the remaining part may not be connected. The current subtree TT is the subtree rooted as v3v_{3}, which contains three vertices {v3,v6,v7}\{v_{3},v_{6},v_{7}\}. An agent may include two vertices v1v_{1} and v2v_{2} to the subtree TT. However, after adding them, TT is not a rooted subtree and the remaining graph after deleting TT is not connected. For this case, we can not guarantee the existence of allocations to the remaining n1n-1 agents even if the original allocations to the nn agents exist.

Refer to caption
Figure 1: The initial bundle contains v3,v6v_{3},v_{6} and v7v_{7}. After adding v1v_{1} and v2v_{2} in the bundle, the new bundle is not a rooted subtree anymore.

It turns out that chores allocation on trees become much harder. We show that chores allocation on some special trees always exists and can be found in polynomial time. Our algorithms will use a technique, called the group-satisfied method, which can be regarded as an extension of the last-diminisher method. In an allocation procedure of the group-satisfied method, we will assign kk^{\prime} bundles to kk^{\prime} agents together such that the remaining nkn-k^{\prime} agents ‘agree with’ this allocation and the remaining objects still form a connected tree. Here ‘agree’ means that the agent thinks in the new instance his MMS value will not decrease. The group-satisfied method will iteratively apply this allocation procedure until all objects are assigned to agents. If in each allocation procedure only one bundle is assigned to one agent, then the group-satisfied method becomes the last-diminisher method. Before introducing the group-satisfied method in detail, we first define some concepts.

4 Preliminaries for the group-satisfied method

Recall that a partial allocation is valid if each bundle of chores in the allocation induces a connected graph.

Definition 4.1.

Let π\pi^{\prime} be a valid partial allocation of a subset set of chores CCC^{\prime}\subseteq C to a subset of agents AAA^{\prime}\subseteq A. An agent iAi\in A^{\prime} is satisfied with π\pi^{\prime} if the disutility of the bundle assigned to him is not less than his MMS value, i.e., ui(π(i))mmsiu_{i}(\pi^{\prime}(i))\geq mms_{i}; an agent iAAi\in A\setminus A^{\prime} is satisfied with π\pi^{\prime} if in the remaining instance his MMS value is not decreasing, i.e., mmsin|A|(G[CC])mmsin(G)mms_{i}^{n-|A^{\prime}|}(G[C\setminus C^{\prime}])\geq mms_{i}^{n}(G) for each agent iAAi\in A\setminus A^{\prime}.

Definition 4.2.

A valid partial allocation π\pi^{\prime} is group-satisfied if all agents are satisfied with it.

Given a valid partial allocation π:A2C\pi^{\prime}:A^{\prime}\rightarrow 2^{C^{\prime}}. To check whether π\pi^{\prime} is group-satisfied we need to check whether all agents are satisfied with it. For an agent in AA^{\prime}, it is easy to check since we only need to compute the disutility of the bundle assigned to him. For an agent iAAi\in A\setminus A^{\prime}, we use the following sufficient condition to guarantee their requirements,

Lemma 4.3.

Let π:A2C\pi^{\prime}:A^{\prime}\rightarrow 2^{C^{\prime}} be a valid partial allocation. Let ii be an agent in AAA\setminus A^{\prime} and PiP_{i} be an MMSi split of GG. If G[CC]G[C\setminus C^{\prime}] contains chores only from at most n|A|n-|A^{\prime}| bundles of PiP_{i} and the chores from the same bundle induce a connected graph in G[CC]G[C\setminus C^{\prime}], then ii is satisfied with π\pi^{\prime}.

Proof.

For agent iAAi\in A\setminus A^{\prime}, we split G[CC]G[C\setminus C^{\prime}] into at most n|A|n-|A^{\prime}| bundles according to the MMSi split PiP_{i} of GG, i.e., chores in the same bundle of PiP_{i} will still be in the same bundle. We can see that each bundle is also connected. Furthermore, the disutility of each bundle is not less than mmsin(G)mms_{i}^{n}(G). This split is a valid n|A|n-|A^{\prime}|-partition of G[CC]G[C\setminus C^{\prime}]. So we know that mmsin|A|(G[CC])mmsin(G)mms_{i}^{n-|A^{\prime}|}(G[C\setminus C^{\prime}])\geq mms_{i}^{n}(G). ∎

A subclass of trees satisfying a certain property Π\Pi is called Property-Π\Pi graphs. For example, the class of paths is trees having the property: having no vertices of degree 3\geq 3. In this paper, we will consider several Property-Π\Pi graphs, such as paths, trees with only one vertex of degree 3\geq 3, trees with depth 3, and so on. We have the following important lemma that will widely be used in our proofs.

Lemma 4.4.

For any instance of MMS allocation of chores on Property-Π\Pi graphs, if there is always a group-satisfied partial allocation π:A2C\pi^{\prime}:A^{\prime}\rightarrow 2^{C^{\prime}} such that the remaining graph G[CC]G[C\setminus C^{\prime}] is still a Property-Π\Pi graph, then MMS allocations of chores on Property-Π\Pi graphs always exist. Furthermore, if the partial allocation π\pi^{\prime} can be found in polynomial time, then MMS allocations of chores on Property-Π\Pi graphs can be found in polynomial time.

Proof.

We prove this lemma by induction on the number of agents. It trivially holds for one agent: MMS allocations always exist and they can be found in polynomial time. Next, we assume that the lemma holds for any n<nn^{\prime}<n agents and proves that the lemma also holds for nn agents. Let π:A2C\pi^{\prime}:A^{\prime}\rightarrow 2^{C^{\prime}} be a group-satisfied partial allocation and there is an algorithm that can find it in polynomial time. We consider the remaining problem after the allocation π\pi^{\prime}. The remaining set of chores C′′=CCC^{\prime\prime}=C\setminus C^{\prime} also induces a graph G′′G^{\prime\prime} that is a Property-Π\Pi graph since π\pi^{\prime} is group-satisfied. We need to allocation C′′C^{\prime\prime} to the remaining n|A|n-|A^{\prime}| agents in A′′=AAA^{\prime\prime}=A\setminus A^{\prime}. By the induction, we know that there is an MMS allocation π′′:A′′2C′′\pi^{\prime\prime}:A^{\prime\prime}\rightarrow 2^{C^{\prime\prime}} such that ui(π′′(i))mmsi|A′′|(G′′)u_{i}(\pi^{\prime\prime}(i))\geq mms_{i}^{|A^{\prime\prime}|}(G^{\prime\prime}) holds for each iA′′i\in A^{\prime\prime}. By the definition of group-satisfied allocations, we also know that mmsi|A′′|(G′′)mmsin(G)mms_{i}^{|A^{\prime\prime}|}(G^{\prime\prime})\geq mms_{i}^{n}(G) holds for each iA′′i\in A^{\prime\prime}. Therefore, the two allocations π\pi^{\prime} and π′′\pi^{\prime\prime} will form a valid MMS allocation of the original graph GG.

For the running time, by the induction, we know that the allocation π′′\pi^{\prime\prime} can be found in polynomial time. The allocation π\pi^{\prime} can also be executed in polynomial time by the assumption. So an MMS allocation of the whole graph GG can be done in polynomial time. ∎

Next, we show how to use Lemma 4.4 to find feasible allocations. We first consider the simple case of paths.

4.1 Paths

Assume that the graph GG is a path now. We consider the MMSi split of the path GG for each agent ii. In each MMSi split, the bundle containing the most left chore in the path GG is called the first bundle. Since the graph is a path, we know that there is always an agent ii^{*} whose first bundle CC^{*} contains any other agent’s first bundle. The allocation procedure is to allocate bundle CC^{*} to agent ii^{*}. We can see that this allocation is group-satisfied and the remaining chores still form a path. By Lemma 4.4, we know that MMS allocations of chores on paths always exist. For the running time, if we already know the MMS value of each agent, then the algorithm takes only O(nm)O(nm) time because we check from the left to right at each chore whether the sum of the values of all the chores on the left is greater than the MMS value for each agent. Note that, in this allocation procedure, only one bundle of chores is assigned to one agent in each iteration. So it is indeed the last-diminisher method.

Before introducing the algorithms for trees of a more complicated structure, we introduce more notations.

4.2 xx-perfect and xx-super subtrees

Next, we assume the input graph GG is a tree. We will select a vertex rr in GG as the root and consider the tree as a rooted tree. The subtree rooted as a vertex vv is denoted by TvT_{v}. The length of the path from the root rr to a vertex vv in the tree is the depth of the vertex vv. The depth of a rooted tree is the largest depth of all vertices. We will also say an unrooted tree has the depth at most xx if we can select a vertex as the root such that the rooted tree has the depth at most xx. A tree of a single vertex is called a trivial tree and a tree of more than one vertex is called a non-trivial tree.

For each agent iAi\in A, we fix an MMSi split PiP_{i} of the tree. Let vv be a vertex on the tree. We consider the subtree TvT_{v} rooted at vv. Assume that xx bundles in an MMSi split PiP_{i} are contained in the subtree TvT_{v}, and yy bundles in PiP_{i} contain at least one vertex in TvT_{v}. It always holds that xyx+1x\leq y\leq x+1 since there is at most one bundle in PiP_{i}, which contains the vertex vv, that contains some vertices in TvT_{v} but is not contained in TvT_{v}. We say that agent ii yy-splits the subtree TvT_{v} if the MMSi split PiP_{i} makes x=yx=y and y+y^{+}-splits the subtree TvT_{v} if the MMSi split PiP_{i} makes y=x+1y=x+1. See Figure 2 for an illustration of yy-splitting and y+y^{+}-splitting.

Refer to caption
Figure 2: In this instance, there are 7 chores on the tree. One agent’s MMS split partitions the tree into three bundles as shown. We can see that this agent 2+2^{+}-splits the subtree rooted as v2v_{2} and 11-splits the subtree rooted as v3v_{3}.
Definition 4.5.

A rooted subtree TvT_{v} is called xx-perfect if no agent zz-splits it for any z<xz<x, no agent z+z^{+}-splits it for any zxz\leq x, and there is at least one agent xx-splits it. A rooted subtree TvT_{v} is called xx-super if no agent zz-splits it for any z<xz<x, no agent z+z^{+}-splits it for any z<xz<x, and there is at least one agent x+x^{+}-splits it.

Definition 4.6.

For an xx-super tree TvT_{v}, an agent that x+x^{+}-splits it is called a dominator of the tree TvT_{v}, and the set of dominators of TvT_{v} is denoted by D(Tv)D(T_{v}).

Lemma 4.7.

Let TvT_{v} be an xx-perfect rooted subtree, and π\pi^{\prime} be a valid partial allocation that allocates TvT_{v} to xx agents AA^{\prime}. If each agent in AA^{\prime} is satisfied with π\pi^{\prime}, then π\pi^{\prime} is group-satisfied.

Proof.

We only need to show that any agent in AAA\setminus A^{\prime} is also satisfied with π\pi^{\prime}. According to the definition of xx-perfect subtrees, we know that for any agent iAi\in A, the graph GTvG-T_{v} contains chores from at most nxn-x bundles of his MMSi split of GG. Furthermore, the chores from the same bundle form a connected graph in GTvG-T_{v} since TvT_{v} is a rooted subtree of GG. By Lemma 4.3, we know that all agents in AAA\setminus A^{\prime} are satisfied with π\pi^{\prime}. ∎

Lemma 4.8.

Let 𝒯={T1,T2,,Tl}\mathcal{T}=\{T_{1},T_{2},\dots,T_{l}\} be a set of disjoint rooted subtrees of GG, where TiT_{i} is xix_{i}-super (i{1,2,,l})(i\in\{1,2,\dots,l\}). Let π\pi^{\prime} be a valid partial allocation that allocates chores in all subtrees in 𝒯\mathcal{T} to i=1lxi\sum_{i=1}^{l}x_{i} agents AA^{\prime}, where Ai=1lD(Ti)A^{\prime}\supseteq\bigcup_{i=1}^{l}D(T_{i}) contains all dominators of all subtrees in 𝒯\mathcal{T}. If each agent in AA^{\prime} is satisfied with π\pi^{\prime}, then π\pi^{\prime} is group-satisfied.

Proof.

We only need to show that any agent in AAA\setminus A^{\prime} is also satisfied with the allocation π\pi^{\prime}. For any subtree Ti𝒯T_{i}\in\mathcal{T} and any agent jAD(Ti)j\in A\setminus D(T_{i}), by the definition of xx-super subtrees and dominators, we know that the graph GTiG-T_{i} contains only chores from at most nxin-x_{i} bundles of the MMSi split of GG. By iteratively applying this claim, we get that for any agent j0AΠi=1lD(Ti)j_{0}\in A\setminus\Pi_{i=1}^{l}D(T_{i}), the graph Gi=1lTiG-\cup_{i=1}^{l}T_{i} contains only chores from at most ni=1lxin-\sum_{i=1}^{l}x_{i} bundles of his MMSj0{}_{j_{0}} split of GG. Furthermore, the chores from the same bundle form a connected graph in Gi=1lTiG-\cup_{i=1}^{l}T_{i} since each TiT_{i} is a rooted subtree of GG. We have that AD(Tv)A^{\prime}\supseteq D(T_{v}). By Lemma 4.3, we know that all agents in AAA\setminus A^{\prime} are satisfied with π\pi^{\prime}. ∎

Lemmas 4.7 and 4.8 provide some ideas to construct group-satisfied partial allocations based on xx-perfect and xx-super subtrees. Note that Lemma 4.7 only considers one xx-perfect subtree while Lemma 4.8 considers several xix_{i}-super subtrees together. For several xx-perfect subtrees, we can deal with them one by one by using Lemma 4.7. However, for several xix_{i}-super subtrees, we should use the stronger Lemma 4.8.

5 Trees with depth 3

Now we consider trees with depth at most 3 and show how to use the group-satisfied method to solve the allocation problem on these trees. Let rr be the root of the tree GG. If the depth of the tree is 2, then the tree is a star. For this case, we consider the MMSi0{}_{i_{0}} split Pi0P_{i_{0}} of an arbitrary agent i0i_{0} and let agent i0i_{0} take the bundle containing the root. Note that all other n1n-1 bundles in Pi0P_{i_{0}} contain only one chore in one leaf of the tree. We arbitrarily assign the n1n-1 chores to the other n1n-1 agents, since the value of every single chore will not less than the MMS value of each agent. This will be an MMS allocation. Next, we assume that the depth of GG is 3.

In the algorithm, we also first consider the MMSi0{}_{i_{0}} split Pi0P_{i_{0}} of an arbitrary agent i0i_{0} and denote the bundle containing the root by prp_{r}. In the graph G=GprG^{\prime}=G-p_{r} after deleting prp_{r}, each connected component is either a star or a single vertex. Let C={c1,c2,,cp}C=\{c_{1},c_{2},\dots,c_{p}\} be the set of stars in GG^{\prime}. Each star in CC is a rooted subtree of GG. We will show that we can always find a group-satisfied allocation.

Case 1: There is a star cqCc_{q}\in C that is xx-perfect for some integer xx. Assume that agent ii xx-splits star cqc_{q}. We consider the xx-partition of cqc_{q} by agent ii and assign the bundle containing the center vertex of cqc_{q} to agent ii and assign the left x1x-1 chores to arbitrary x1x-1 agents. All the xx agents are satisfied with this allocation. By Lemma 4.7, we know that this allocation of cqc_{q} to the xx agents is group-satisfied.

Case 2: All stars in CC are xx-super for different integers xx. Assume that cic_{i} is xix_{i}-super for 1ip1\leq i\leq p. In this case, we will use a matching technique to show that there is either a group-satisfied allocation to allocate some stars in CC or a group-satisfied allocation to allocate the whole graph GG.

We construct an auxiliary bipartite graph H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}). The vertex set V1V_{1} contains |C|+1|C|+1 vertices. Each star in CC is corresponding to a vertex in V1V_{1} and the last vertex in V1V_{1} is corresponding to the bundle prp_{r} in Pi0P_{i_{0}}, i.e., V1=C{pr}V_{1}=C\cup\{p_{r}\}. The vertex set V2V_{2} is corresponding to the agent set AA, i.e., V2=AV_{2}=A. A vertex in cjCc_{j}\in C is adjacent to a vertex iV2i\in V_{2} if and only if the corresponding agent ii is a dominator of the subtree cjc_{j}, i.e., iD(cj)i\in D(c_{j}). The vertex prV1p_{r}\in V_{1} is only adjacent to vertex i0V2i_{0}\in V_{2}. See Figure 3 for an illustration of the construction of the auxiliary graph HH.

Refer to caption
Figure 3: The graph GG, where D(C1)={1,3},D(C2)={1,2}D(C_{1})=\{1,3\},D(C_{2})=\{1,2\} and D(C3)={3,i0}D(C_{3})=\{3,i_{0}\}, and the auxiliary graph HH.

We use a standard matching algorithm to find a maximum matching MHM_{H} between V1V_{1} and V2V_{2} in HH.

Case 2.1: All vertices in V1V_{1} are matched in MHM_{H}. For this case, we will show that we can find a group-satisfied allocation to allocate the whole graph GG according to the matching MHM_{H}. First of all, the vertex prV1p_{r}\in V_{1} can only be matched with i0V2i_{0}\in V_{2} since prp_{r} is only adjacent to i0i_{0} in HH. So we assign the bundle prp_{r} to agent i0i_{0}. Next, we consider other edges in the matching MHM_{H}. Assume that cjCc_{j}\in C is matched with ijV2i_{j}\in V_{2}. Then agent iji_{j} is a dominator of the subtree cjc_{j}. We consider an xjx_{j}-partition of cjc_{j} by agent iji_{j} and assign the bundle containing the center vertex to agent iji_{j}. All other bundles left are bundles of a single chore. For each vertex in cjCc_{j}\in C, we do the above allocation. Then we can allocate |MH|=|C|+1|M_{H}|=|C|+1 bundles to |MH||M_{H}| different agents since MHM_{H} is a matching. After this, the remaining chores will form an independent set. We assign each remaining chore to a remaining agent. This is the algorithm.

Lemma 5.1.

The allocation in Case 2.1 is group-satisfied.

Proof.

First, we show that the allocation is a valid allocation to allocate all chores to agents. The MMSi0{}_{i_{0}} split Pi0P_{i_{0}} of agent i0i_{0} splits the graph into nn bundles. For a star ciCc_{i}\in C, which is xix_{i}-super, if it contains exact xx^{\prime} bundles in Pi0P_{i_{0}}, then according to Definition 3 we know that xixx_{i}\leq x^{\prime}. This relation holds for all stars in CC. In our allocation, we will split each star ciCc_{i}\in C into xixx_{i}\leq x^{\prime} bundles. So our allocation will split the whole graph into nnn^{\prime}\leq n bundles. In our allocation, the first |C|+1|C|+1 bundles are assigned according to the matching. So no two bundles are assigned to the same agent. For the remaining bundles, each of them contains a single chore and the number of bundles is not greater than the number of remaining agents by nnn^{\prime}\leq n. So all chores can be assigned to agents. This is a valid allocation to allocate all chores to agents.

Second, we show that all agents are satisfied with the allocation. First, agent i0i_{0} is satisfied with the bundle prp_{r} because prp_{r} is a bundle in his MMSi0{}_{i_{0}} split Pi0P_{i_{0}}. For each ciCc_{i}\in C, we will assign a bundle containing the center vertex of cic_{i} to agent iji_{j}. Agent iji_{j} is satisfied with this bundle because the star cic_{i} was split by agent iji_{j}. All other bundles left are bundles of a single chore. Each agent is satisfied with a single chore. So all agents are satisfied with the allocation. ∎

Case 2.2: Some vertices in V1V_{1} are not in the matching MHM_{H}. In this case, we will show that we can find a group-satisfied allocation to allocate a subset of stars at CC. Our algorithm will use the following concept crown.

Definition 5.2.

Let H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}) be a bipartite graph. A pair of nonempty vertex sets (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) is called a crown of HH, if the following conditions hold:

  1. 1.

    V1V1V^{\prime}_{1}\subseteq V_{1} and V2V2V^{\prime}_{2}\subseteq V_{2}.

  2. 2.

    any vertex in V1V^{\prime}_{1} is only adjacent to vertices in V2V^{\prime}_{2}.

  3. 3.

    there is a matching MHM^{\prime}_{H} of size |V2||V^{\prime}_{2}| between V1V^{\prime}_{1} and V2V^{\prime}_{2}. The matching MHM^{\prime}_{H} is called a witness matching of the crown.

The following lemma gives a condition for the existence of the crown structure.

Lemma 5.3.

Let H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}) be a bipartite graph and MHM_{H} be a maximum matching between V1V_{1} and V2V_{2}. If |MH|<|V1||M_{H}|<|V_{1}|, then there is a crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) of HH, which can be found in linear time.

Proof.

A vertex in HH is called MHM_{H}-saturated if it is an endpoint of an edge in MHM_{H} and MHM_{H}-unsaturated otherwise. A path PP in HH that alternates between edges not in MHM_{H} and edges in MHM_{H} is called an MHM_{H}-alternating path. Since |MH|<|V1||M_{H}|<|V_{1}|, we know that there are some MHM_{H}-unsaturated vertices in V1V_{1}. Let V1V1V^{\prime}_{1}\subseteq V_{1} be the set of vertices in V1V_{1} that are reachable from an MHM_{H}-unsaturated vertex in V1V_{1} via an MHM_{H}-alternating path, possibly of length zero (which means that all MHM_{H}-unsaturated vertices in V1V_{1} are in V1V^{\prime}_{1}). Let V2V2V^{\prime}_{2}\subseteq V_{2} be the set of vertices in V2V_{2} that are reachable from an MHM_{H}-unsaturated vertex in V1V_{1} via an MHM_{H}-alternating path. Note that V1V^{\prime}_{1} and V2V^{\prime}_{2} can be computed in linear time by a breadth-first search if MHM_{H} is given. We will show that (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) is a crown.

The first condition in the definition of crown is trivial. The second condition holds because any vertex vv adjacent to a vertex uV1u\in V^{\prime}_{1} must be in V2V^{\prime}_{2} because any MHM_{H}-alternating path from an MHM_{H}-unsaturated vertex in V1V_{1} to uu plus the edge uvuv will form an MHM_{H}-alternating path from an MHM_{H}-unsaturated vertex in V1V_{1} to vv, no matter uvuv is in MHM_{H} or not. For the third condition, we show that the subset MHM^{\prime}_{H} of edges in MHM_{H} with two endpoints in V1V2V^{\prime}_{1}\cup V^{\prime}_{2} will form a witness matching. We know that MHM^{\prime}_{H} is a matching since it is a subset of the matching MHM_{H}. We only need to prove that |MH|=|V2||M^{\prime}_{H}|=|V^{\prime}_{2}|. It is sufficient to prove that any vertex in V2V^{\prime}_{2} is contained in an edge in MHM^{\prime}_{H}. For any vV2v^{\prime}\in V^{\prime}_{2}, there is an MHM_{H}-alternating path PP from an MHM_{H}-unsaturated vertex uV1u^{\prime}\in V_{1} to vv^{\prime}. Note that the first edge (containing uu^{\prime}) in PP is not in MHM_{H} since uu^{\prime} is MHM_{H}-unsaturated. If the last edge (containing vv^{\prime}) in PP is not in MHM_{H}, then we could get a bigger matching MHM^{*}_{H} of HH by replacing MHE(P)M_{H}\cap E(P) with E(P)MHE(P)\setminus M_{H} in MHM_{H}, which is a contradiction to the maximality of MHM_{H}. So we know that any vertex in V2V^{\prime}_{2} is contained in an edge in MHM^{\prime}_{H}. All three conditions in the definition of the crown hold. So (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) is a crown. ∎

Lemma 5.4.

Let H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}) be the auxiliary bipartite graph constructed in Case 2 for trees with depth 3. Given a crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) of HH, we can find a group-satisfied allocation in linear time.

Proof.

We will use Lemma 3 to prove this lemma. So we only need to show that we can always find a group-satisfied allocation after executing which the remaining graph is still a connected tree or an empty graph.

If the condition of Step 2 holds, then it becomes Case 1. For this case, we find an xx-perfect subtree. We will assign the xx-perfect subtree to xx agents such that all the xx agents are satisfied with this allocation. By Lemma 4, we know that this allocation is group-satisfied. Otherwise, the algorithm will execute Step 5, and then it becomes Case 2. If the condition of Step 7 holds (Case 2.1), we will get a group-satisfied allocation by Lemma 5.1. If the condition of Step 9 holds (Case 2.2), we will also get a group-satisfied allocation by Lemma 5.4. In any case, we can get a group-satisfied allocation that keeps the remaining graph connected. By Lemma 3, we know that this lemma holds. ∎

For Case 2.2, the size of the matching MHM_{H} is less than the size of V1V_{1}, and then the condition of Lemma 5.3 holds. By Lemma 5.3, we can find a crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) in polynomial time. Then we execute the group-satisfied allocation according to the crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) by Lemma 5.4.

The main steps of our algorithm to compute MMS allocations of chores on trees with depth 3 are described as Algorithm 1.

Input: An instance I=(A,C,U,G)I=(A,C,U,G), where G=(C,E)G=(C,E) is a tree with depth 3.
Output: An MMS allocation of II.
1 Select an arbitrary agent i0i_{0} and let the MMSi0{}_{i_{0}} split be Pi0P_{i_{0}}. Let prPi0p_{r}\in P_{i_{0}} be the bundle containing the root rr. Let C={c1,c2,,cp}C=\{c_{1},c_{2},\dots,c_{p}\} be the set of star components in G=GprG^{\prime}=G-p_{r};
2 if A star cqCc_{q}\in C is xx-perfect for some integer xx, then
3      Assign the star cqc_{q} to xx agents: split cqc_{q} into xx bundles according to an agent ii who xx-partitions it, and assign the bundle containing the center vertex of cqc_{q} to agent ii and assign the left x1x-1 chores to arbitrary x1x-1 agents;
4       and return Depth(I)(I^{\prime}), where II^{\prime} is the remaining instance after assigning cpc_{p} to xx agents;
5else
6      Each star in CC is xx-super for some integer xx; We compute the auxiliary graph H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}) and a maximum matching MHM_{H} in HH;
7       if  |V1|=|MH||V_{1}|=|M_{H}| then
8            Assign the whole graph GG according to MHM_{H};
9      else
10            Compute the crown structure in HH and assign some stars in CC to agents according to the crown;
11             and return Depth(I)(I^{\prime}), where II^{\prime} is the remaining instance after the assignment.
12      
Algorithm 1 Depth(A,C,U,G)(A,C,U,G)
Lemma 5.5.

MMS allocations of chores in trees with depth 3 always exist and can be computed in polynomial time.

Proof.

We will use Lemma 4.4 to prove this lemma. So we only need to show that we can always find a group-satisfied allocation after executing which the remaining graph is still a connected tree or an empty graph.

If the condition of Step 2 holds, then it becomes Case 1. For this case, we find an xx-perfect subtree. We will assign the xx-perfect subtree to xx agents such that all the xx agents are satisfied with this allocation. By Lemma 4.7, we know that this allocation is group-satisfied. Otherwise, the algorithm will execute Step 5, and then it becomes Case 2. If the condition of Step 7 holds (Case 2.1), we will get a group-satisfied allocation by Lemma 5.1. If the condition of Step 9 holds (Case 2.2), we will also get a group-satisfied allocation by Lemma 5.4. In any case, we can get a group-satisfied allocation that keeps the remaining graph connected. By Lemma 4.4, we know that this lemma holds. ∎

6 Spiders

A graph is a spider if it is a tree having only one vertex of degree 3\geq 3. We will also use the group-satisfied method to show the existence of MMS allocations of chores in spiders.

The vertex of degree 3\geq 3 in a spider is called the center. A degree-1 vertex in a spider is called a leaf. The path from a leaf to the center is called a branch of the spider and the number of edges in a branch is the length of the branch.

In this section, we assume that the input graph GG is a spider, and use rr to denote the center and use BiB_{i} to denote the branch between the center and a leaf fif_{i}. We also consider the tree as a rooted tree with the root being the center rr.

Similar to the algorithm for trees with depth 3, the algorithm will also use Lemma 4.7 and Lemma 4.8 to construct group-satisfied partial allocations based on xx-perfect and xx-super subtrees.

Lemma 6.1.

If there is a branch BiB_{i} of GG not completely contained in one bundle in the MMSj split of any agent jAj\in A, then we can find a group-satisfied allocation after which the remaining graph is still a spider.

Proof.

We give an algorithm to prove this lemma. For each agent jj, the bundle in the MMSj split containing a leaf is called an ending bundle. For each agent, the ending bundle containing the leaf fif_{i} is a subpath of the branch BiB_{i} by the condition of the lemma. Assume that agent j0j_{0} has the longest ending bundle containing fif_{i}. We assign this bundle to the agent j0j_{0}. This allocation is group-satisfied because all agents are satisfied with this allocation and the remaining graph is still a spider. This algorithm is like what we do in paths. ∎

The above lemma provides a way to find group-satisfied allocations for a special case. Our algorithm iteratively applies the operation in the proof of Lemma 6.1 until we get a spider such that each branch of it is contained in one bundle in the MMSj split of an agent jj. The following part of the algorithm is similar to the algorithm for trees with depth 3.

We consider the MMSj0{}_{j_{0}} split Pj0P_{j_{0}} of an arbitrary agent j0j_{0} and denote the bundle containing the root by prp_{r}. In graph G=GprG^{\prime}=G-p_{r}, each connected component is a path. Let C={c1,c2,,cp}C=\{c_{1},c_{2},\dots,c_{p}\} be the set of these paths. Each path in CC is 1-super because the whole branch is contained in a bundle in the MMSj split of some agent jj.

We also construct an auxiliary bipartite graph H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}). Set V1V_{1} contains |C|+1|C|+1 vertices, which are corresponding to the |C||C| paths in CC and the bundle prp_{r}. Each vertex in V2V_{2} is corresponding to an agent in AA and we simply denote V2V_{2} by AA. A vertex jV2j\in V_{2} is adjacent to a vertex cCc\in C in HH if and only if the corresponding agent jAj\in A is a dominator of cc. Vertex prV1p_{r}\in V_{1} is only adjacent to j0Aj_{0}\in A. We compute a maximum matching MHM_{H} between V1V_{1} and V2V_{2} in HH.

Case 1: |MH|=|V1||M_{H}|=|V_{1}|. We allocate the whole graph to the nn agents according to the matching MHM_{H}. The bundle cc corresponding to a vertex in V1V_{1} will be assigned to agent ii if they are matched in MHM_{H}. It is easy to see that all chores will be allocated to agents, and all agents are satisfied with the allocation. The allocation is group-satisfied.

Case 2: |MH|<|V1||M_{H}|<|V_{1}|. By Lemma 5.3, we can find a crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) in polynomial time. We allocate the chores to agents according to the algorithm in the proof of the following lemma.

Lemma 6.2.

Let H=(V1,V2,EH)H=(V_{1},V_{2},E_{H}) be the auxiliary bipartite graph constructed in Case 2 for spiders. Given a crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}) of HH, we can find a group-satisfied allocation in linear time.

Proof.

We will give an algorithm to find the group-satisfied allocation. The proof is similar to the proof of Lemma 8.

Let MHM^{\prime}_{H} be the witness matching of the crown (V1,V2)(V^{\prime}_{1},V^{\prime}_{2}). Let V1V1V^{*}_{1}\subseteq V^{\prime}_{1} be the subset of vertices appearing in MHM^{\prime}_{H}. The group-satisfied allocation will assign each path in V1V^{*}_{1} to an agent in V2V^{\prime}_{2}. We assume that cjV1c_{j}\in V^{*}_{1} is matched with ijV2i_{j}\in V^{\prime}_{2} in MHM^{\prime}_{H}. Then agent iji_{j} is a dominator of the subpath cjc_{j} and agent iji_{j} is satisfied with cjc_{j}. We assign cjc_{j} to agent iji_{j}. Then we allocate each subpath in V1V^{*}_{1} to a different agent in V2V^{\prime}_{2} since MHM^{\prime}_{H} is a matching. Furthermore, all agents in V2V^{\prime}_{2} are assigned with a bundle. This is the allocation algorithm. It is easy to see that the algorithm can be executed in linear time.

We show that the allocation satisfies the condition in Lemma 5 to prove that it is group-satisfied. It is easy to see that after deleting all the subpaths in V1V^{*}_{1} from GG, the remaining graph is still a spider. According to the construction of HH and the definition of crown, we know that for any path cjV1c_{j}\in V^{*}_{1}, the set of dominators of it is a subset of V2V^{\prime}_{2}, i.e., D(cj)V2D(c_{j})\subseteq V^{*}_{2} holds for each cjV1c_{j}\in V^{*}_{1}. In our algorithm, all agents in V2V^{\prime}_{2} will be assigned with a bundle. So any agent left unassigned is not a dominator of a path in V1V^{*}_{1}. By Lemma 5, we know that the allocation is group-satisfied. ∎

All the above results imply that

Lemma 6.3.

MMS allocations of chores on spiders always exist and can be computed in polynomial time.

Proof.

Our algorithm to find the 32{\frac{3}{2}}-MMS allocation is that: first, remove an arbitrary edge from the cycle, and then find an MMS allocation for the instance on a path. To prove the correctness, we only need to show that the for each agent the MMS value on the path is not less than 32{\frac{3}{2}} times of his MMS value on the cycle, since we can always find MMS allocations for chores on paths in polynomial time by using the algorithm presented in previous sections.

For each agent ii, we consider the MMSi split PiP_{i} of the cycle GG. After deleting an edge ee from GG, one bundle in PiP_{i} may be split into two pieces x1x_{1} and x2x_{2}. At least one piece, say x1x_{1} has disutility not less than 12mmsi(G){\frac{1}{2}}mms_{i}(G). We adjoin x1x_{1} with its neighbor bundle in PiP_{i} and let x2x_{2} become a single bundle. In this way, we split the path GeG-e into nn bundles, the disutility of each bundle is not less than 32mmsi(G){\frac{3}{2}}mms_{i}(G). Then we know that the mmsi(Ge)32mmsi(G)mms_{i}(G-e)\geq{\frac{3}{2}}mms_{i}(G). ∎

7 Cycles

Next, we consider the case where the chores are on a simple cycle. Different from trees, MMS allocations of chores on cycles may not exist. We will give an example to show the nonexistence of MMS allocations even to only three agents. We will show how we find the example later.

c1c_{1} c2c_{2} c3c_{3} c4c_{4} c5c_{5} c6c_{6} c7c_{7} c8c_{8} c9c_{9}
Agent 1 12-\frac{1}{2} 13-\frac{1}{3} 16-\frac{1}{6} 16-\frac{1}{6} 13-\frac{1}{3} 12-\frac{1}{2} 13-\frac{1}{3} 13-\frac{1}{3} 13-\frac{1}{3}
Agent 2 16-\frac{1}{6} 12-\frac{1}{2} 0\leavevmode\nobreak\ 0 12-\frac{1}{2} 16-\frac{1}{6} 12-\frac{1}{2} 13-\frac{1}{3} 13-\frac{1}{3} 12-\frac{1}{2}
Agent 3 13-\frac{1}{3} 16-\frac{1}{6} 16-\frac{1}{6} 13-\frac{1}{3} 12-\frac{1}{2} 13-\frac{1}{3} 13-\frac{1}{3} 13-\frac{1}{3} 12-\frac{1}{2}
Table 1: An example of nonexistence of α\alpha-MMS allocations of a 9-cycle to three agents for any α<76\alpha<{\frac{7}{6}}

In the example in Table 1, we are going to allocate nine chores on a cycle to three agents. The chores appear on the cycle are in the same order as that in the table. The numbers in the table are the disutilities of the chores for the agents. The MMS value of each agent is 1-1. For any four consecutive chores, the disutility for any agent is at most 76-\frac{7}{6}. If an α\alpha-MMS allocation with α<76\alpha<\frac{7}{6} exists, then it would split the cycle into three bundles of three consecutive chores. There are only three ways to split it. It is easy to check that none of the three partitions yields an α\alpha-MMS allocation with α<76\alpha<\frac{7}{6}. Thus, no α\alpha-MMS allocation with α<76\alpha<\frac{7}{6} exists for this instance.

On the other hand, 32{\frac{3}{2}}-MMS allocations of chores on cycles always exist. The simple observation of the 12{\frac{1}{2}}-MMS allocations of goods on cycles in [19] can get the corresponding result for chores.

Lemma 7.1.

An 32{\frac{3}{2}}-MMS allocation of chores on a cycle always exists and can be found in polynomial time.

Proof.

Our algorithm to find the 32{\frac{3}{2}}-MMS allocation is that: first, remove an arbitrary edge from the cycle, and then find an MMS allocation for the instance on a path. To prove the correctness, we only need to show that the for each agent the MMS value on the path is not less than 32{\frac{3}{2}} times of his MMS value on the cycle, since we can always find MMS allocations for chores on paths in polynomial time by using the algorithm presented in previous sections.

For each agent ii, we consider the MMSi split PiP_{i} of the cycle GG. After deleting an edge ee from GG, one bundle in PiP_{i} may be split into two pieces x1x_{1} and x2x_{2}. At least one piece, say x1x_{1} has disutility not less than 12mmsi(G){\frac{1}{2}}mms_{i}(G). We adjoin x1x_{1} with its neighbor bundle in PiP_{i} and let x2x_{2} become a single bundle. In this way, we split the path GeG-e into nn bundles, the disutility of each bundle is not less than 32mmsi(G){\frac{3}{2}}mms_{i}(G). Then we know that the mmsi(Ge)32mmsi(G)mms_{i}(G-e)\geq{\frac{3}{2}}mms_{i}(G). ∎

7.1 Allocating a cycle to three agents

We use a linear programming method to help us find the (tight) approximation ratio for allocating chores on a cycle to three agents. We will construct a linear programming model for our problem. Let α\alpha be the ratio. Our objective is to find the maximum value of α\alpha such that for any valid allocation of the cycle to nn agents, at least one agent will get a bundle with the disutility less than α\alpha times of his MMS value. So our objective is to find the maximum value of α\alpha such that there is no α\alpha-MMS allocation. However, the constraints in our model are hard to list out directly. The number of constraints may even be exponential to nn and mm. We will first give some properties that will allow us to dramatically decrease the number of constraints if there are only three agents. In the remaining of this subsection, we always assume that the problem is to allocate chores on a cycle to three agents.

Lemma 7.2.

Assume that the instance has three agents and let α1\alpha\geq 1. If there is an α\alpha-MMSi split PiP_{i} of GG for agent ii and an α\alpha-MMSj split PjP_{j} of GG for agent jj such that one bundle in PiP_{i} is a subset of one bundle in PjP_{j}, then α\alpha-MMS allocations for this instance always exist.

Proof.

Let the agent set be {1,2,3}\{1,2,3\} and Pi={Bi1,Bi2,Bi3}P_{i}=\{B_{i1},B_{i2},B_{i3}\} be an α\alpha-MMSi split for agent ii (i{1,2,3}i\in\{1,2,3\}). W.l.o.g, we assume that the bundle B21B_{21} in P2P_{2} is a subset of the bundle B11B_{11} in P1P_{1} and show that there is an α\alpha-MMS allocation. We partition the cycle into three connected bundles B11B_{11}, B22=B22B11B^{\prime}_{22}=B_{22}-B_{11}, and B23=B23B11B^{\prime}_{23}=B_{23}-B_{11}. We will assign the three bundles to different agents according to different cases.

Case 1. u3(B11)mms3u_{3}(B_{11})\leq mms_{3}: Now we have that u3(GB11)2mms3u_{3}(G-B_{11})\geq 2mms_{3}. For any partition of GB11G-B_{11} into two connected bundles, the disutility of at least one bundle is not less than mm3mm_{3} for agent 3. So one of u3(B22)mms3u_{3}(B^{\prime}_{22})\geq mms_{3} and u3(B23)mms3u_{3}(B^{\prime}_{23})\geq mms_{3} always holds. Note that B22B^{\prime}_{22} and B23B^{\prime}_{23} are subsets of B22B_{22} and B23B_{23}. We know that u2(B22)αmms2u_{2}(B^{\prime}_{22})\geq\alpha\cdot mms_{2} and u2(B23)αmms2u_{2}(B^{\prime}_{23})\geq\alpha\cdot mms_{2}. We assign B11B_{11} to agent 1, let agent 3 takes one of the favorite in B22B^{\prime}_{22} and B23B^{\prime}_{23}, and assign the remaining bundle to agent 2. This is an α\alpha-MMS allocation.

Case 2. u3(B11)>mms3u_{3}(B_{11})>mms_{3}: We can see that either B12B22B_{12}\supseteq B^{\prime}_{22} or B13B23B_{13}\supseteq B^{\prime}_{23} holds since B12B13=B22B23B_{12}\cup B_{13}=B^{\prime}_{22}\cup B^{\prime}_{23}. So one of u1(B22)αmms1u_{1}(B^{\prime}_{22})\geq\alpha\cdot mms_{1} and u1(B23)αmms1u_{1}(B^{\prime}_{23})\geq\alpha\cdot mms_{1} always holds. Then we assign B11B_{11} to agent 3, let agent 1 takes one of the favorite in B22B^{\prime}_{22} and B23B^{\prime}_{23}, and assign the remaining bundle to agent 2. This is an α\alpha-MMS allocation. ∎

A partition of the cycle GG into 3 bundles can be represented by a set of three edges in the cycle. We will call it the cut representation of the partition. Next, we give some important properties for instance having no α\alpha-MMS allocation, which will be used to build our linear programming constraints.

Lemma 7.3.

Assume that the instance has three agents. Let P1={e11,e12,e13},P2={e21,e22,e23}P_{1}=\{e_{11},e_{12},e_{13}\},P_{2}=\{e_{21},e_{22},e_{23}\} and P3={e31,e32,e33}P_{3}=\{e_{31},e_{32},e_{33}\} be the cut representations of α\alpha-MMS splits of GG for agents 1, 2 and 3, respectively, which always exist for α1\alpha\geq 1. If the instance has no α\alpha-MMS allocation, then it holds that
(a) all the edges in P1,P2P_{1},P_{2} and P3P_{3} are different;
(b) we can relabel the edges in the three sets P1,P2P_{1},P_{2} and P3P_{3} such that the nine edges appear in the following order on the cycle GG: e11e21e31e12e22e32e13e23e33e_{11}e_{21}e_{31}e_{12}e_{22}e_{32}e_{13}e_{23}e_{33} (See Figure 4).

Proof.

(a) Assume that two of P1P_{1}, P2P_{2} and P3P_{3}, say P1P_{1} and P2P_{2} have a common edge ee. After deleting ee the graph becomes a path. Both of P1P_{1} and P2P_{2} will partition the path into three connected bundles. Let b1b_{1} be the bundle of agent 1 containing the most left chore on the path GeG-e and let b2b_{2} be the bundle of agent 2 containing the most left chore on GeG-e. It is easy to see that either b1b2b_{1}\subseteq b_{2} or b2b1b_{2}\subseteq b_{1}, which implies the condition of Lemma 7.2 holds. We get a contradiction that the instance has an α\alpha-MMS allocation. So the edges in P1,P2P_{1},P_{2} and P3P_{3} are different.

(b) If the nine edges do not appear in the above order, say exchanging the positions of any two edges, we will see that one bundle of one agent is a subset of one bundle of another agent. By Lemma 7.2, we will also get a contradiction. We omit the trivial and tedious case analysis here. ∎

S1S_{1}S2S_{2}S3S_{3}S4S_{4}S5S_{5}S6S_{6}S7S_{7}S8S_{8}S9S_{9}e11e_{11}e21e_{21}e31e_{31}e12e_{12}e22e_{22}e32e_{32}e13e_{13}e23e_{23}e33e_{33}
Figure 4: A cycle, where the set of three black edges P1={e11,e12,e13}P_{1}=\{e_{11},e_{12},e_{13}\} is the cut representation of an MMS1 split for agent 11, the set of three red edges P2={e21,e22,e23}P_{2}=\{e_{21},e_{22},e_{23}\} is the cut representation of an MMS2 split for agent 22, the set of three blue edges P3={e31,e32,e33}P_{3}=\{e_{31},e_{32},e_{33}\} is the cut representation of an MMS3 split for agent 33, and {S1,S2,,S9}\{S_{1},S_{2},\dots,S_{9}\} are the nine segments after deleting P1P2P3P_{1}\cup P_{2}\cup P_{3}.
Corollary 7.4.

MMS allocations of at most eight chores on a cycle to three agents always exist.

Proof.

When there are at most eight chores, the cycle GG has at most eight edges. The cut representations of MMS split of GG for agents 1, 2, and 3 will have at least one common edge. By Lemma 15(a), we know that MMS allocation always exists. ∎

Let P1P_{1}, P2P_{2} and P3P_{3} be the edge representations of an MMS split of GG for agents 1, 2 and 3, respectively. Each connected part in the graph after deleting edges in P1P2P3P_{1}\cup P_{2}\cup P_{3} is called a segment (See Figure 4).

Lemma 7.5.

Assume that the instance has three agents. Fix an MMSi split of GG for each agent ii. Let α1\alpha\geq 1. If the instance has no α\alpha-MMS allocation, the disutility of any four consecutive segments is less than αmmsi\alpha\cdot mms_{i} for any agent ii.

Proof.

Let bb denote four consecutive segments. Assume that ui0(b)αmmsi0u_{i_{0}}(b)\geq\alpha\cdot mms_{i_{0}} holds for an agent i0Ni_{0}\in N. We show that there is always an α\alpha-MMS allocation.

Case 1. bb contains a bundle in the MMSi0{}_{i_{0}} split of GG for agent i0i_{0}: Then there is an α\alpha-MMSi0{}_{i_{0}} split for agent i0i_{0} such that one bundle in it is exactly bb. Note that any four consecutive segments will contain two bundles in the MMS splits of GG for two different agents. Any MMS split is also an α\alpha-MMS split for α1\alpha\geq 1. So the condition of Lemma 7.2 holds and then α\alpha-MMS allocations always exist.

Case 2. bb does not contain a bundle in the MMSi0{}_{i_{0}} split of GG for agent i0i_{0}. For this case, it is easy to see that the remaining path GbG-b consists of two connected paths, each of which is a subset of a bundle in the MMS split of GG for an agent other than i0i_{0}. We assign these two parts to these two agents and assign bb to agent i0i_{0}. This will be an α\alpha-MMS allocation.

In any case, we can find an α\alpha-MMS allocation, a contradiction. So the lemma holds. ∎

Lemma 7.6.

Assume that the instance has three agents. Let α1\alpha\geq 1. If the instance has no α\alpha-MMS allocation, then for any α\alpha-MMSi split PiP_{i} of GG for agent iAi\in A, there is one bundle bb in PiP_{i} such that uj(b)αmmsju_{j}(b)\geq\alpha\cdot mms_{j} holds for any agent jA{i}j\in A\setminus\{i\}, and for all other bundles bb^{\prime} in PiP_{i} it holds that uj(b)<αmmsju_{j}(b^{\prime})<\alpha\cdot mms_{j} for any agent jA{i}j\in A\setminus\{i\}.

Proof.

We say that an agent is satisfied with a bundle if the disutility of this bundle is not less than α\alpha times of his MMS value. We know that agent ii is satisfied with all the three bundles in PiP_{i}. For the other two agents {j1,j2}=A{i}\{j_{1},j_{2}\}=A\setminus\{i\}, each is satisfied with at least one bundle in PiP_{i}. If agent j1j_{1} and agent j2j_{2} are satisfied with two different bundles in PiP_{i}, then we assign these two bundles in PiP_{i} to them and assign the last bundle in PiP_{i} to agent ii. This would be an α\alpha-MMS allocation. So we know that agent j1j_{1} and agent j2j_{2} are satisfied with the same bundle in PiP_{i}. ∎

Now, we are ready to describe our linear programming (LP). Assume that the instance has no α\alpha-MMS allocation. We use Lemmas 7.3 to 7.6 to construct the constraints in LP.

We consider an instance I=(A,C,U,G)I=(A,C,U,G) of allocating chores on a cycle GG to three agents A={1,2,3}A=\{1,2,3\}. Let P1={e11,e12,e13},P2={e21,e22,e23}P_{1}=\{e_{11},e_{12},e_{13}\},P_{2}=\{e_{21},e_{22},e_{23}\} and P3={e31,e32,e33}P_{3}=\{e_{31},e_{32},e_{33}\} be the cut representations of MMS splits of GG for agents 1, 2 and 3, respectively. We assume that II does not have α\alpha-MMS allocation for some constant α>1\alpha>1. By Lemma 7.3, we know that the nine edges in P=P1P2P3P=P_{1}\cup P_{2}\cup P_{3} are different and we can assume without loss of generality that they appear in the following order on the cycle GG: e11e21e31e12e22e32e13e23e33e_{11}e_{21}e_{31}e_{12}e_{22}e_{32}e_{13}e_{23}e_{33}. After deleting the nine edges in PP, the cycle GG will be split into nine segments. We label the nine segments as S1,S2,,S9S_{1},S_{2},\dots,S_{9} in the order as shown in Figure 4. Let the MMS splits of GG for agents 1, 2 and 3 be P1={B11,B12,B13},P2={B21,B22,B23}P_{1}=\{B_{11},B_{12},B_{13}\},P_{2}=\{B_{21},B_{22},B_{23}\} and P3={B31,B32,B33}P_{3}=\{B_{31},B_{32},B_{33}\}, where B11=S1S2S3B_{11}=S_{1}\cup S_{2}\cup S_{3}, B12=S4S5S6B_{12}=S_{4}\cup S_{5}\cup S_{6}, B13=S7S8S9B_{13}=S_{7}\cup S_{8}\cup S_{9}, B21=S2S3S4B_{21}=S_{2}\cup S_{3}\cup S_{4}, B22=S5S6S7B_{22}=S_{5}\cup S_{6}\cup S_{7}, B23=S8S9S1B_{23}=S_{8}\cup S_{9}\cup S_{1}, B31=S3S4S5B_{31}=S_{3}\cup S_{4}\cup S_{5}, B32=S6S7S8B_{32}=S_{6}\cup S_{7}\cup S_{8}, and B33=S9S1S2B_{33}=S_{9}\cup S_{1}\cup S_{2}.

For each segment, it may contain only one chore. So in the next analysis, we will not split a segment anymore and consider each segment as a single big chore. Besides α\alpha, our LP has 3×93\times 9 variables xj,yjx_{j},y_{j} and zjz_{j} (j{1,2,,9}j\in\{1,2,\dots,9\}). The variable xjx_{j} (resp., yjy_{j} and zjz_{j}) is the disutility of segment SjS_{j} of agent 1 (resp., agent 2 and agent 3), i.e., xj=u1(Sj)x_{j}=u_{1}(S_{j}), yj=u2(Sj)y_{j}=u_{2}(S_{j}) and zj=u3(Sj)z_{j}=u_{3}(S_{j}). The first set of constraints in our LP model is to set the domain of these variables.

xj,yj,zj0(j=1,2,,9).\displaystyle x_{j},y_{j},z_{j}\leq 0\leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ (j=1,2,\dots,9). (1)

We normalize the MMS value for each agent by letting mms1=mms2=mms3=1mms_{1}=mms_{2}=mms_{3}=-1. According to the MMS splits of the three agents, we get 3×33\times 3 constraints

x1+i+x2+i+x3+i1\displaystyle x_{1+i}+x_{2+i}+x_{3+i}\geq-1 (i=0,3,6);\displaystyle(i=0,3,6); (2)
y2+i+y3+i+y4+i1\displaystyle y_{2+i}+y_{3+i}+y_{4+i}\geq-1 (i=0,3,6);\displaystyle(i=0,3,6); (3)
z3+i+z4+i+z5+i1\displaystyle z_{3+i}+z_{4+i}+z_{5+i}\geq-1 (i=0,3,6),\displaystyle(i=0,3,6), (4)

where the indices are computed modulo 9. We will always assume this without stating it every time.

By Lemma 7.5, we directly get 3×93\times 9 constraints

x1+i+x2+i+x3+i+x4+i<α\displaystyle x_{1+i}+x_{2+i}+x_{3+i}+x_{4+i}<-\alpha (i=0,1,,8);\displaystyle(i=0,1,\dots,8); (5)
y1+i+y2+i+y3+i+y4+i<α\displaystyle y_{1+i}+y_{2+i}+y_{3+i}+y_{4+i}<-\alpha (i=0,1,,8);\displaystyle(i=0,1,\dots,8); (6)
z1+i+z2+i+z3+i+z4+i<α\displaystyle z_{1+i}+z_{2+i}+z_{3+i}+z_{4+i}<-\alpha (i=0,1,,8).\displaystyle(i=0,1,\dots,8). (7)

Next, we consider the constraints generated by Lemma 7.6. The three bundles in the MMS1 split P1P_{1} for agent 1 are B11,B12B_{11},B_{12} and B13B_{13}. By Lemma 7.6, we know that for agents 2 and 3, at most one bundle is satisfied (the disutility is not less than α\alpha times of his MMS value). W.l.o.g., we assume that agents 2 and 3 are satisfied with B11B_{11}, which means that agents 2 and 3 are not satisfied with the other two bundles. Then we get 4 constraints

ui(B12)<α×mmsi=α\displaystyle u_{i}(B_{12})<\alpha\times mms_{i}=-\alpha (i=2,3);\displaystyle(i=2,3); (8)
ui(B13)<α×mmsi=α\displaystyle u_{i}(B_{13})<\alpha\times mms_{i}=-\alpha (i=2,3).\displaystyle(i=2,3). (9)

We look at the MMS2 split P2={B21,B22,B23}P_{2}=\{B_{21},B_{22},B_{23}\} for agent 2 and the MMS3 split P3={B31,B32,B33}P_{3}=\{B_{31},B_{32},B_{33}\} for agent 3. By Lemma 7.6 again, agent 1 and agent 3 are satisfied with one bundle in P2P_{2}, and agent 1 and agent 2 are satisfied with one bundle in P3P_{3}. By identifying the symmetrical cases (Rotations of the three agents are also considered), we only need to consider three different cases. Case 1: agent 1 and agent 3 are satisfied with B21B_{21}, and agent 1 and agent 2 are satisfied with B31B_{31}; Case 2: agent 1 and agent 3 are satisfied with B21B_{21}, and agent 1 and agent 2 are satisfied with B32B_{32} Case 3: agent 1 and agent 3 are satisfied with B23B_{23}, and agent 1 and agent 2 are satisfied with B32B_{32}. For each case, we generate 4×24\times 2 constraints like (8) and (9). There are three cases. So we will get three LP models. Each LP model has the same number of constraints.

By solving the three LPs, we get that α<87\alpha<{\frac{8}{7}} for two LPs and α<76\alpha<{\frac{7}{6}} for the other one. The bigger one is 76{\frac{7}{6}}. This means for any α76\alpha\geq{\frac{7}{6}}, our LP will have no solution. We get the following result.

Lemma 7.7.

76\frac{7}{6}-MMS allocations of chores on a cycle to 3 agents always exist and can be found in polynomial time.

Proof.

For any instance, we fix an MMS split PiP_{i} for each agent ii (considering them as the cut representations). If they have some common edges, then we can find an MMS allocation directly in polynomial time by Lemma 7.3(a) and the algorithm in Lemma 7.2. Otherwise, we let P1={e11,e12,e13},P2={e21,e22,e23}P_{1}=\{e_{11},e_{12},e_{13}\},P_{2}=\{e_{21},e_{22},e_{23}\} and P3={e31,e32,e33}P_{3}=\{e_{31},e_{32},e_{33}\}. They are nine different edges. We can relabel them in the order as shown in Figure 4, otherwise, we know that one bundle of one agent will be a subset of one bundle of another agent by Lemma 7.3(b) and we can find an MMS allocation in polynomial time by Lemma 7.2.

Next, we can assume that the above LP model is suitable for this instance. The LP does not have any solution for α<76\alpha<{\frac{7}{6}}, which means some constraints in the LP will not hold for α<76\alpha<{\frac{7}{6}}. The constraints (1) to (4) clearly hold. If some constraints in (5) to (7) do not hold, then there is an 76\frac{7}{6}-MMS allocation with one bundle containing four consecutive segments by Lemma 7.5. We can enumerate all these kinds of partitions and find the 76\frac{7}{6}-MMS allocation in polynomial time. Otherwise, one of (8) and (9) and the following constraints will not hold. For this case, one of P1P_{1}, P2P_{2} and P3P_{3} is a 76\frac{7}{6}-MMS allocation by Lemma 7.6 and we can also check it in polynomial time.

In any case, there is a 76\frac{7}{6}-MMS allocation and it can be found in polynomial time. ∎

The LP model can also be used to find instances with possible tight approximation ratio. If we add the equal sign into the constraints (5) to (9) and the following constraints, we will solve one LP with α=76\alpha={\frac{7}{6}} and two LPs with α=87\alpha={\frac{8}{7}}. For the LP with the solution α=76\alpha={\frac{7}{6}}, we get the values of the other variables xj,yjx_{j},y_{j} and zjz_{j} (j{1,2,,9}j\in\{1,2,\dots,9\}) as shown in Table 1. That is the way we got the example of the nonexistence of α\alpha-MMS allocations for α<76\alpha<{\frac{7}{6}} in Table 1.

Lemma 7.8.

For any α<76\alpha<{\frac{7}{6}}, α\alpha-MMS allocations of chores on a cycle to three agents may not exist.

The LP method can also be directly used to solve the problem of allocating goods on a cycle to three agents. The detailed arguments are put in Appendix B. We get the following results which are consistent with the results obtained by using combinatorial analysis in [19].

Lemma 7.9.

α\alpha-MMS allocations of goods on a cycle to three agents always exist and can be found in polynomial time for α56\alpha\leq\frac{5}{6}, and may not exist for α>56\alpha>\frac{5}{6}.

8 Discussion and Conclusion

For MMS allocations of chores on a tree, we propose the group-satisfied method to solve the problem on two subclasses. Whether MMS allocations of chores on general trees always exist or not is still an open problem. We believe that MMS allocations of chores on trees always exist. We also believe that the proposed group-satisfied method can be used to solve more related problems.

Another contribution of this paper is a novel method based on linear programming (LP) to characterize the optimal approximate MMS allocations without complicated combinatorial analysis. This method could potentially solve more general cases by figuring out simple and clean necessary conditions for the non-existence of α\alpha-MMS allocation.

References

  • [1] G. Amanatidis, E. Markakis, A. Nikzad, and A. Saberi. Approximation algorithms for computing maximin share allocations. ACM Trans. Algorithms, 13(4):52:1–52:28, 2017.
  • [2] H. Aziz, B. Li, and X. Wu. Strategyproof and approximately maxmin fair share allocation of chores. In IJCAI, pages 60–66, 2019.
  • [3] H. Aziz, G. Rauchecker, G. Schryen, and T. Walsh. Algorithms for max-min share fair allocation of indivisible chores. In AAAI, pages 335–341, 2017.
  • [4] S. Barman and S. K. Krishnamurthy. Approximation algorithms for maximin fair division. ACM Trans. Economics and Comput., 8(1):5:1–5:28, 2020.
  • [5] V. Bilò, I. Caragiannis, M. Flammini, A. Igarashi, G. Monaco, D. Peters, C. Vinci, and W. S. Zwicker. Almost envy-free allocations with connected bundles. In ITCS, pages 14:1–14:21, 2019.
  • [6] V. Bilò, I. Caragiannis, M. Flammini, A. Igarashi, G. Monaco, D. Peters, C. Vinci, and W. S. Zwicker. Almost envy-free allocations with connected bundles. Games Econ. Behav., 131:197–221, 2022.
  • [7] S. Bouveret, K. Cechlárová, and J. Lesca. Chore division on a graph. Auton. Agents Multi Agent Syst., 33(5):540–563, 2019.
  • [8] S. Bouveret, K. Cechlárová, E. Elkind, A. Igarashi, and D. Peters. Fair division of a graph. In IJCAI, pages 135–141, 2017.
  • [9] S. Bouveret and M. Lemaître. Characterizing conflicts in fair division of indivisible goods using a scale of criteria. Auton. Agents Multi Agent Syst., 30(2):259–290, 2016.
  • [10] E. Budish. The combinatorial assignment problem: approximate competitive equilibrium from equal incomes. In BQGT, page 74:1, 2010.
  • [11] U. Feige, A. Sapir, and L. Tauber. A tight negative example for MMS fair allocations. In WINE, volume 13112 of Lecture Notes in Computer Science, pages 355–372, 2021.
  • [12] J. Garg and S. Taki. An improved approximation algorithm for maximin shares. In EC, pages 379–380, 2020.
  • [13] M. Ghodsi, M.-a. T. Hajiaghayi, M. Seddighin, S. Seddighin, and H. Yami. Fair allocation of indivisible goods: improvements and generalizations. In EC, pages 539–556, 2018.
  • [14] X. Huang and P. Lu. An algorithmic framework for approximating maximin share allocation of chores. In EC, pages 630–631, 2021.
  • [15] A. Igarashi and D. Peters. Pareto-optimal allocation of indivisible goods with connectivity constraints. In AAAI, pages 2045–2052, 2019.
  • [16] D. Kurokawa, A. D. Procaccia, and J. Wang. When can the maximin share guarantee be guaranteed? In AAAI, pages 523–529, 2016.
  • [17] D. Kurokawa, A. D. Procaccia, and J. Wang. Fair enough: Guaranteeing approximate maximin shares. J. ACM, 65(2):8:1–8:27, 2018.
  • [18] R. J. Lipton, E. Markakis, E. Mossel, and A. Saberi. On approximately fair allocations of indivisible goods. In EC, pages 125–131, 2004.
  • [19] Z. Lonc and M. Truszczynski. Maximin share allocations on cycles. In IJCAI, pages 410–416, 2018.
  • [20] E. Markakis. Approximation algorithms and hardness results for fair division with indivisible goods. Trends in Computational Social Choice, pages 231–247, 2017.
  • [21] A. D. Procaccia. Cake cutting algorithms. In Handbook of Computational Social Choice, pages 311–330. Cambridge University Press, 2016.
  • [22] H. Steihaus. The problem of fair division. Econometrica, 16:101–104, 1948.
  • [23] S. Zhou and X. Wu. Approximately EFX allocations for indivisible chores. In IJCAI, pages 783–789, 2022.

Appendix A The proof of Lemma 2.1

In this section, we prove Lemma 2.1 by giving algorithms to compute the MMS value for each agent for allocating chores on trees or cycles. It is not hard to see that the computational task for cycles can be easily reduced to trees by enumerating one of the cutting edges and computing the corresponding MMS value on a path.

Before introducing the algorithm for trees, we first give a subroutine to determine whether there is a valid nn-partition PnP^{n} of the chores CC such that ui(Pn(j))xu_{i}(P^{n}(j))\geq x for each j[n]j\in[n]. The details are listed in Algorithm 2. Recall that for a vertex vv in a rooted tree, we use TvT_{v} to denote the subtree rooted at vertex vv, use 𝒞v\mathcal{C}_{v} to denote the children of vertex vv on a rooted tree, and denote ui|Cu_{i|C^{{}^{\prime}}} as the disutility function restricted on the chores set CC^{{}^{\prime}} for agent ii.

Input: An instance I=(G,ui,n,x)I=(G,u_{i},n,x), where G=(C,E)G=(C,E) is a tree, uiu_{i} is the disutility function of agent ii, nn is the number of bundles and xx is the lower bound of any bundles.
Output: To determine whether there is a valid nn-partition such that the disutility of each bundle is no less than xx.
1 if ui(C)xu_{i}(C)\geq x then
2      return true;
3if n1n\leq 1 then
4      return false;
5Select an arbitrary vertex rr and consider the tree GG as a rooted tree with root rr;
6 Find a vertex cc from top down to bottom such that ui(Tc)<xu_{i}(T_{c})<x and ui(Tcj)xu_{i}(T_{c_{j}})\geq x for each child cj𝒞cc_{j}\in\mathcal{C}_{c} (we allow 𝒞c=\mathcal{C}_{c}=\varnothing );
7 Let cj0:=argmincj𝒞cui(Tcj)c_{j_{0}}:=\arg\min_{c_{j}\in\mathcal{C}_{c}}u_{i}(T_{c_{j}}) and G=GTcj0G^{{}^{\prime}}=G\setminus T_{c_{j_{0}}};
return Check(G,ui|G,n1,xG^{{}^{\prime}},u_{i|G^{{}^{\prime}}},n-1,x)
Algorithm 2 Check(GG, uiu_{i}, nn, xx)
Lemma A.1.

Given an instance I=(G,ui,n,x)I=(G,u_{i},n,x), there exists a valid nn-partition such that the disutility of each bundle is no less than xx for agent ii if and only if Algorithm Check(GG, uiu_{i}, nn, xx) returns true.

Proof.

Firstly, it is easy to see that the decision algorithm presented above can be modified as a constructive algorithm. Thus, if the algorithm returns true, we can find an n-partition of the instance such that ui(Pn(j))xu_{i}(P^{n}(j))\geq x for j[n]j\in[n].

It remains to show that for any instance I=(G,ui,n,x)I=(G,u_{i},n,x) which exists a valid nn-partition such that the disutility of each bundle is no less than xx (we call it a xx-feasible partition), Algorithm 2 returns true. We prove it by induction. For n=1n=1, the correctness is obvious. For n2n\geq 2, we select one of the xx-feasible partition of II as PinP^{n}_{i} and assume that the algorithm on instance II finds the subtree Tcj0T_{c_{j_{0}}}. It’s not hard to observe that one of the following events happens but not both.

Case 1: Tcj0T_{c_{j_{0}}} contains some bundles in PinP^{n}_{i}. In this case, we know that cutting the subtree Tcj0T_{c_{j_{0}}} off the whole GG will make the number of left bundles in PinP^{n}_{i} no greater than n1n-1 and the disutility of all left bundles are not decreased which means that the instance (G,ui|G,n1,x)(G^{{}^{\prime}},u_{i|G^{{}^{\prime}}},n-1,x) exists a feasible valid n1n-1-partition with respect to xx. According to our induction hypothesis, the algorithm returns true.

Case 2: Tcj0T_{c_{j_{0}}} is strictly contained in a bundle of PinP^{n}_{i} called B1B_{1}. We observe that, according to the choice of cc, TcT_{c} has to intersect with at least two bundles PinP^{n}_{i} one of which is B1B_{1}. Due to that fact that Tcj0T_{c_{j_{0}}} is strictly contained in B1B_{1} which means that cB1c\in B_{1}, there exists a bundle B2B_{2} in PinP^{n}_{i} contained in Tcj1T_{c_{j_{1}}} where cj1𝒞cc_{j_{1}}\in\mathcal{C}_{c} and cj1cj0c_{j_{1}}\neq c_{j_{0}}. Because cj0:=argmincj𝒞cui(Tcj)c_{j_{0}}:=\arg\min_{c_{j}\in\mathcal{C}_{c}}u_{i}(T_{c_{j}}), we know that if ui(B1)xu_{i}(B_{1})\geq x, ui(B1Tcj0Tcj1)xu_{i}(B_{1}\setminus T_{c_{j_{0}}}\cup T_{c_{j_{1}}})\geq x. Therefore, we can replace bundle B2B_{2} in the remaining instance as bundle B1Tcj0Tcj1B_{1}\setminus T_{c_{j_{0}}}\cup T_{c_{j_{1}}} which implies that there still exists a feasible valid n1n-1-partition with respect to xx in the instance (G,ui|G,n1,x)(G^{{}^{\prime}},u_{i|G^{{}^{\prime}}},n-1,x). The correctness follows by the induction hypothesis. ∎

We do a binary search and use Algorithm 2 as a subroutine to compute the MMS value for chores on a tree. The algorithm is presented in Algorithm 3.

Input: An instance I=(G,ui,n)I=(G,u_{i},n), where G=(C,E)G=(C,E) is a tree, uiu_{i} is the disutility function of agent ii and nn is the number of bundles.
Output: Compute the MMS value for agent ii in the instance II.
1 xl:=0x_{l}:=0, xu:=ui(C)x_{u}:=u_{i}(C);
2 while  xlxux_{l}\neq x_{u} do
3       x:=xl+xu2x:=\frac{x_{l}+x_{u}}{2};
4       if Check (GG, uiu_{i}, nn, xx)=true then
5            xl:=xx_{l}:=x;
6      else
7            xu:=xx_{u}:=x;
8      
return xx
Algorithm 3 MMS-tree(GG, uiu_{i}, nn)

Now, we are ready to prove Lemma 2.1.

Proof.

The correctness of the Algorithm 3 relies on the correctness of Algorithm 2 and the definition of the MMS value. As for the running time, it is easy to see that there at most log(ui(C))\log(u_{i}(C)) iterations, and in each iteration the Check subroutine runs in polynomial time. So the Algorithm runs in polynomial times.

As for cycle, we can enumerate one of the cutting edge eiEe_{i}\in E, then we run MMS-tree(GeiG-e_{i}, uiu_{i}, nn). The maximum value among all enumerations is the MMS value for agent ii in the cycle. ∎

Appendix B Allocating Goods on a Cycle to Three Agents

In this section, we consider the problem of allocating goods on a cycle to three agents and prove Lemma 7.9. We will extend our linear programming method for chores in Section 7.1 to goods. The extension is intuitive. Almost all statements and arguments only need simple modifications to fit the setting of goods.

Lemma B.1.

Assume that the instance has three agents and let α1\alpha\leq 1. If there is an α\alpha-MMSi split PiP_{i} of GG for agent ii and an α\alpha-MMSj split PjP_{j} of GG for agent jj such that one bundle in PiP_{i} is a subset of one bundle in PjP_{j}, then α\alpha-MMS allocations for this instance always exist.

Proof.

Let the agent set be {1,2,3}\{1,2,3\} and let Pi={Bi1,Bi2,Bi3}P_{i}=\{B_{i1},B_{i2},B_{i3}\} be an α\alpha-MMSi split for agent ii (i{1,2,3}i\in\{1,2,3\}). Without loss of generality, we assume that the bundle B11B_{11} in P1P_{1} is a subset of the bundle B21B_{21} in P2P_{2} and show that there is an α\alpha-MMS allocation.

Case 1. u3(B11)mms3u_{3}(B_{11})\leq mms_{3}: For this case, we have that u3(GB11)2mms3u_{3}(G-B_{11})\geq 2mms_{3}. For any partition of GB11G-B_{11} into two connected bundles, the utility of at least one bundle is not less than mm3mm_{3} for agent 3. The same holds for agent 2. Therefore, we assign B11B_{11} to agent 1. Then in the instance of the remaining good, we find an MMS split for agent 2 and letting agent 3 get the most valuable bundles for him. The remaining goods are allocated to agent 2. It is obviously an α\alpha-MMS allocation.

Case 2. u3(B11)>mms3u_{3}(B_{11})>mms_{3}: We assign B11B_{11} to agent 3. Similar to the discussion in case 1, the MMS value of both agent 1 and agent 2 in the instance of the remaining good does not decrease where MMS allocation for 2 agents always exists.

We use the same cut representation of the partition notion for chores on cycles in the following lemmas for goods.

Lemma B.2.

Assume that the instance has three agents. Let P1={e11,e12,e13},P2={e21,e22,e23}P_{1}=\{e_{11},e_{12},e_{13}\},P_{2}=\{e_{21},e_{22},e_{23}\} and P3={e31,e32,e33}P_{3}=\{e_{31},e_{32},e_{33}\} be the cut representations of α\alpha-MMS splits of GG for agents 1, 2 and 3, respectively, which always exist for α1\alpha\leq 1. If the instance has no α\alpha-MMS allocation, then it holds that
(a) all the edges in P1,P2P_{1},P_{2} and P3P_{3} are different;
(b) we can relabel the edges in the three sets P1,P2P_{1},P_{2} and P3P_{3} such that the nine edges appear in the following order on the cycle     

G:e11e21e31e12e22e32e13e23e33G:e_{11}e_{21}e_{31}e_{12}e_{22}e_{32}e_{13}e_{23}e_{33}

Proof.

Equipped with Lemma B.1, the proof of the lemma is exactly the same as that of Lemma 7.3. ∎

Let P1P_{1}, P2P_{2} and P3P_{3} be the edge representations of an MMS split of GG for agents 1, 2 and 3, respectively. After deleting the edges in P1P2P3P_{1}\cup P_{2}\cup P_{3}, the cycle GG will be split into several connected parts. We call each connected part a segment.

Lemma B.3.

Assume that the instance has three agents. Fix an MMSi split of GG for each agent ii. Let α1\alpha\leq 1. If the instance has no α\alpha-MMS allocation, then for any agent ii, the utility of any two consecutive segments is less than αmmsi\alpha\cdot mms_{i}.

Proof.

Let bb denote two consecutive segments. Assume that ui0(b)αmmsi0u_{i_{0}}(b)\geq\alpha\cdot mms_{i_{0}} holds for an agent i0Ai_{0}\in A. We show that there is always an α\alpha-MMS allocation.

Case 1. bb is contained in a bundle among the MMSi0{}_{i_{0}} split of GG for agent i0i_{0}: W.L.O.G, we assume i0=1i_{0}=1 and bb is {S1,S2}\{S_{1},S_{2}\}. Then there is an α\alpha-MMSi0{}_{i_{0}} split for agent i0i_{0} such that one bundle in it is exactly bb, i.e. {S1,S2},{S3,S4,S5,S6},{S7,S8,S9}\{S_{1},S_{2}\},\{S_{3},S_{4},S_{5},S_{6}\},\{S_{7},S_{8},S_{9}\}. Note that any MMS split is also an α\alpha-MMS split for α1\alpha\leq 1. So the condition of Lemma 7.2 holds and then α\alpha-MMS allocations always exist.

Case 2. bb is not contained in a bundle among the MMSi0{}_{i_{0}} split of GG for agent i0i_{0}. For this case, it is easy to see that the remaining path GbG-b consists of two connected paths, each of which is a supset of a bundle in the MMS split of GG for an agent other than i0i_{0}. We assign these two parts to these two agents and assign bb to agent i0i_{0}. This will be an α\alpha-MMS allocation.

In any case, we can find an α\alpha-MMS allocation, a contradiction. So the lemma holds. ∎

Lemma B.4.

Assume that the instance has three agents. Let α1\alpha\leq 1. If the instance has no α\alpha-MMS allocation, then for any α\alpha-MMSi split PiP_{i} of GG for agent iAi\in A, there is one bundle bb in PiP_{i} such that uj(b)αmmsju_{j}(b)\geq\alpha\cdot mms_{j} holds for any agent jA{i}j\in A\setminus\{i\}, and for all other bundles bb^{\prime} in PiP_{i} it holds that uj(b)<αmmsju_{j}(b^{\prime})<\alpha\cdot mms_{j} for any agent jA{i}j\in A\setminus\{i\}.

Proof.

We say that an agent is satisfied with a bundle if the utility of this bundle is at least α\alpha times of his MMS value. We know that agent ii is satisfied with all the three bundles in PiP_{i}. For the other two agents {j1,j2}=A{i}\{j_{1},j_{2}\}=A\setminus\{i\}, each is satisfied with at least one bundle in PiP_{i}. If agent j1j_{1} and agent j2j_{2} are satisfied with two different bundles in PiP_{i}, then we assign these two bundles in PiP_{i} to them and assign the last bundle in PiP_{i} to agent ii. This would be an α\alpha-MMS allocation. So we know that agent j1j_{1} and agent j2j_{2} are satisfied with the same bundle in PiP_{i}. ∎

We are ready to describe the linear programming model. Here, we continue to use the same variables notations as chores and we declare the new constraints in the goods situations.

The first set of constraints in the LP model is to set the domain of these variables, i.e.

xj,yj,zj0(j=1,2,,9).\displaystyle x_{j},y_{j},z_{j}\geq 0\leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ \leavevmode\nobreak\ (j=1,2,\dots,9). (10)

We normalize the MMS value for each agent by letting mms1=mms2=mms3=1mms_{1}=mms_{2}=mms_{3}=1. According to the MMS splits of the three agents, we get the following 3×33\times 3 constraints.

x1+i+x2+i+x3+i1\displaystyle x_{1+i}+x_{2+i}+x_{3+i}\geq 1 (i=0,3,6);\displaystyle(i=0,3,6); (11)
y2+i+y3+i+y4+i1\displaystyle y_{2+i}+y_{3+i}+y_{4+i}\geq 1 (i=0,3,6);\displaystyle(i=0,3,6); (12)
z3+i+z4+i+z5+i1\displaystyle z_{3+i}+z_{4+i}+z_{5+i}\geq 1 (i=0,3,6),\displaystyle(i=0,3,6), (13)

where the indices are computed modulo 9. We will always assume this without stating it every time.

By Lemma B.3, we directly get the following 3×93\times 9 constraints,

x1+i+x2+i<α\displaystyle x_{1+i}+x_{2+i}<\alpha (i=0,1,,8);\displaystyle(i=0,1,\dots,8); (14)
y1+i+y2+i<α\displaystyle y_{1+i}+y_{2+i}<\alpha (i=0,1,,8);\displaystyle(i=0,1,\dots,8); (15)
z1+i+z2+i<α\displaystyle z_{1+i}+z_{2+i}<\alpha (i=0,1,,8).\displaystyle(i=0,1,\dots,8). (16)

Next, we consider the constraints generated by Lemma B.4 which is similar to chores situation except for the following slightly modification.

ui(B12)<α×mmsi=α\displaystyle u_{i}(B_{12})<\alpha\times mms_{i}=\alpha (i=2,3);\displaystyle(i=2,3); (17)
ui(B13)<α×mmsi=α\displaystyle u_{i}(B_{13})<\alpha\times mms_{i}=\alpha (i=2,3).\displaystyle(i=2,3). (18)

Then, we get five LP models as before. By solving the five LP, we find out that the worst ratio is 56{\frac{5}{6}}. This means for any α56\alpha\leq{\frac{5}{6}}, our LP will have no solution. We get the following result.

Lemma B.5.

56\frac{5}{6}-MMS allocations of goods on a cycle to three agents always exist and can be found in polynomial time.

Proof.

For any instance, we fix an MMS split PiP_{i} for each agent ii (considering them as the cut representations). We let P1={e11,e12,e13}P_{1}=\{e_{11},e_{12},e_{13}\}, P2={e21,e22,e23}P_{2}=\{e_{21},e_{22},e_{23}\} and P3={e31,e32,e33}P_{3}=\{e_{31},e_{32},e_{33}\}. Without loss of generality, we assume that they are nine different edges and we can relabel them in the order e11e21e31e12e22e32e13e23e33e_{11}e_{21}e_{31}e_{12}e_{22}e_{32}e_{13}e_{23}e_{33}. (Otherwise, we have a polynomial time algorithm to find a MMS allocation similar to chores situations.)

According to a fixed MMS split, we instantiate the variables of the LP model with the corresponding value. The LP does not have any solution for α56\alpha\geq{\frac{5}{6}}, which means some constraints in the LP will not hold for α56\alpha\geq{\frac{5}{6}}. The constraints (10) to (13) clearly hold. If some constraints in (14) to (16) do not hold, then there is an 56\frac{5}{6}-MMS allocation with one bundle containing two consecutive segments. Then we can find the 56\frac{5}{6}-MMS allocation in polynomial time by the algorithm stated in the proof of the Lemma B.3. Otherwise, one of (17) and (18) and the following constraints will not hold. For this case, one of P1P_{1}, P2P_{2} and P3P_{3} is a 56\frac{5}{6}-MMS allocation by Lemma B.4 and we can also check it in polynomial time.

In any case, there is a 56\frac{5}{6}-MMS allocation and it can be found in polynomial time. ∎

The tight instance we get by the LP method is shown in Table 2.

c1c_{1} c2c_{2} c3c_{3} c4c_{4} c5c_{5} c6c_{6} c7c_{7} c8c_{8} c9c_{9}
Agent 1 23\frac{2}{3} 0 13\frac{1}{3} 13\frac{1}{3} 0 23\frac{2}{3} 16\frac{1}{6} 23\frac{2}{3} 16\frac{1}{6}
Agent 2 12\frac{1}{2} 13\frac{1}{3} 12\frac{1}{2} 16\frac{1}{6} 16\frac{1}{6} 12\frac{1}{2} 13\frac{1}{3} 12\frac{1}{2} 0
Agent 3 23\frac{2}{3} 16\frac{1}{6} 23\frac{2}{3} 0 13\frac{1}{3} 13\frac{1}{3} 0 23\frac{2}{3} 16\frac{1}{6}
Table 2: An example of nonexistence of α\alpha-MMS allocations of a 9-cycle to three agents for any α>56\alpha>{\frac{5}{6}}