Restricted Max-Min Allocation: Approximation and Integrality Gap
Siu-Wing Cheng, Yuchen Mao

TL;DR
This paper advances the approximation algorithms for the restricted max-min allocation problem, reducing the ratio to nearly 4 and tightening the integrality gap bounds, thus bringing us closer to optimal solutions.
Contribution
It introduces a $(4+ ext{delta})$-approximation algorithm and improves the integrality gap upper bound for the configuration LP.
Findings
Approximation ratio improved to $(4+ ext{delta})$
Integrality gap upper bound refined to approximately 3.808
Algorithm runs in polynomial time with respect to input size
Abstract
Asadpour, Feige, and Saberi proved that the integrality gap of the configuration LP for the restricted max-min allocation problem is at most . However, their proof does not give a polynomial-time approximation algorithm. A lot of efforts have been devoted to designing an efficient algorithm whose approximation ratio can match this upper bound for the integrality gap. In ICALP 2018, we present a -approximation algorithm where can be any positive constant, and there is still a gap of roughly . In this paper, we narrow the gap significantly by proposing a -approximation algorithm where can be any positive constant. The approximation ratio is with respect to the optimal value of the configuration LP, and the running time is where is the number of players and is the number…
| o X[1cb]X[5lp] Fact 1 | For every , edges in are mutually compatible. | |
|---|---|---|
| For every with , . | ||
| Fact 2 | Edges in are mutually compatible, and they are also compatible with edges in . For every , | |
| Fact 3 | are disjoint subsets of . Note that does not share any resource with for . | |
| o X[1cb]X[5lp] Invariant 1 | . | |
|---|---|---|
| Invariant 2 | For every , . | |
| Invariant 3 | For every , . | |
| Invariant 4 | For every , . | |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Department of Computer Science and Engineering, HKUST, Hong [email protected]://orcid.org/0000-0002-3557-9935Department of Computer Science and Engineering, HKUST, Hong [email protected]://orcid.org/000-0002-1075-344X \CopyrightSiu-Wing Cheng and Yuchen Mao\ccsdesc[100]Theory of computation Scheduling algorithms\supplement
Acknowledgements.
Restricted Max-Min Allocation: Approximation and Integrality Gap
Siu-Wing Cheng
Yuchen Mao
Abstract
Asadpour, Feige, and Saberi proved that the integrality gap of the configuration LP for the restricted max-min allocation problem is at most . However, their proof does not give a polynomial-time approximation algorithm. A lot of efforts have been devoted to designing an efficient algorithm whose approximation ratio can match this upper bound for the integrality gap. In ICALP 2018, we present a -approximation algorithm where can be any positive constant, and there is still a gap of roughly . In this paper, we narrow the gap significantly by proposing a -approximation algorithm where can be any positive constant. The approximation ratio is with respect to the optimal value of the configuration LP, and the running time is where is the number of players and is the number of resources. We also improve the upper bound for the integrality gap of the configuration LP to .
keywords:
Fair allocation, configuration LP, approximation, integrality gap
category:
1 Introduction
Background
In the max-min fair allocation problem, we are given a set of players, a set of indivisible resources, and a set of non-negative values . For each and each , resource is worth a value of to player . An allocation is a partition of into disjoint subsets so that each player is assigned the resources in . The goal is to find an allocation that maximizes the welfare of the least lucky player, that is, we want to maximize . Unfortunately, unless , no polynomial-time algorithm can achieve an approximation ratio smaller than 2 [6].
Bezáková and Dani [6] tried to solve the problem using the assignment LP – a technique for the classic scheduling problem of makespan minimization [16]. However, they showed that the integrality gap of the assignment LP is unbounded, so rounding the assignment LP gives no guarantee on the approximation ratio. Later, Bansal and Sviridenko [4] proposed a stronger LP relaxation, the configuration LP, for the max-min allocation problem. Asadpour and Saberi [3] developed a polynomial-time rounding scheme for the configuration LP that gives an approximation ratio of . Saha and Srinivasan [18] improved it to . These approximation ratios almost match the lower bound of for the integrality gap of the configuration LP proved by Bansal and Svirodenko [4]. Bateni et al. [5] and Chakrabarty et al. [7] established a trade-off between the approximation ratio and the running time. For any , they can achieve an approximation ratio of with running time.
In this paper, we study the restricted max-min allocation problem. In the restricted case, we have . That is, each resource has an intrinsic value , and it is worth value to those players who desire it and value [math] to those who do not. Assuming , the restricted case has a lower bound of for the approximation ratio. The integrality gap of configuration LP for the restricted case also has a lower bound of . Bansal and Sviridenko [4] proposed an O\bigl{(}\frac{\log\log n}{\log\log\log n}\bigr{)}-approximation algorithm by rounding the configuration LP. Feige [11] proved that the integrality gap of the configuration LP is bounded by a constant, albeit large and unspecified. His proof was later made constructive by Haeupler et al. [12], and hence a constant approximation can be found in polynomial time. Asadpour et al. [2] viewed the restricted max-min allocation problem as a bipartite hyper-graph matching problem. Let be the optimal value of the configuration LP. By adapting Haxell’s [13] alternating tree technique for bipartite hyper-graph matchings, they proposed a local search algorithm that returns an allocation where every player receives at least worth of resources, and hence proved that the integrality gap of the configuration LP is at most . However, their algorithm is not known to run in polynomial time. A lot of efforts have been devoted to making their algorithm run in polynomial time. Polacek and Svensson [17] showed that the local search can be done in quasi-polynomial time by building the alternating tree in a more careful way. Annamalai, Kalaitzis and Svensson [1] carried out the local search in a more structured way. Together with two new greedy and lazy update strategies, they can find in polynomial time an allocation in which every player receives a value of at least . Recently, we proposed a more flexible, aggressive greedy strategy that improves the approximation ratio to [9]. Davies et al. [10] claimed a -approximation algorithm for the restricted max-min allocation problem by reducing it to the fractional matroid max-min allocation problem.
Our Contribution
We adapt the framework in [1] by introducing two new strategies: layer-level node-disjoint paths and limited blocking. The performance of our framework is determined by three parameters, and a trade-off between the running time and the quality of solution can be achieved by tuning these parameters. On one extreme, our framework acts exactly the same as the original local search in [2], which achieves a ratio of but not necessarily run in polynomial time. On the other extreme, it becomes something like the algorithm in [1], which achieves a polynomial running time but a much worse ratio. We show that, in order to achieve a polynomial running time, one doesn’t have to go from one extreme to the other — a marginal movement is sufficient. As a result, a ratio slightly worse than can be achieved in polynomial time.
Theorem 1.1**.**
For any constant , there is a -approximation algorithm for the restricted max-min allocation problem that runs in time.
Although the algorithm we present takes the optimal value of the configuration LP as its input, one can avoid solving the configuration LP by combining our algorithm with binary search to zoom into the optimal value of configuration LP. The binary search technique is similar to that in [1, 9].
We also show that the integrality gap of the configuration LP is at most by giving a better analysis of the AFS algorithm. This improves the bound of recently obtained in [8, 15].
Theorem 1.2**.**
The integrality gap of the configuration LP for the restricted max-min allocation problem is at most .
We focus on only the proof of Theorem 1.1 in the main text and defer the proof of Theorem 1.2 to Appendix C.
2 Preliminaries
2.1 The configuration LP
Suppose that we hope to find an allocation where every player receives at least worth of resources. A configuration for a player is a subset of the resources desired by such that . Let denote the set of all configurations for .
The configuration LP is given on the left of Figure 1. Given a target , the configuration LP, denoted as , associates a variable with each player and each configuration in . Its first constraint ensures that each player receives at least unit of configurations, and the second constraint guarantees that every resource is used in at most 1 unit of configurations. The optimal value of the configuration LP is the largest for which is feasible. We denote this optimal value by . Without loss of generality, we assume that for the rest of the paper. Although the configuration LP may have an exponential number of variables, it can be solved within any constant relative error in polynomial time [4]. Viewing the objective function of the configuration LP as a minimization of a constant, one can get the dual LP on the right of the Figure 1.
2.2 Fat and thin edges
Our goal is to find an allocation in which every player receives at least worth of resources for some . In particular, our approximation algorithm sets where is a positive constant. For each resource , we call fat if , and thin otherwise. To find the target allocation, it suffices to assign each player either a fat resource desired by or a subset of the thin resources desired by with .
For every and every fat resource desired by , we call a fat edge. For every and every subset of the thin resources desired by , we call a thin edge if . Two edges are compatible if they share no common resource. We say that a fat edge covers and . Similarly, a thin edge covers and the resources in . A player or a resource is covered by a set of edges if it is covered by some edge in the set. For any , a thin edge is -minimal if and for any . For a -minimal thin edge , it is not hard to see that .
Given the above definitions of fat and thin edges, finding the target allocation is equivalent to finding a set of mutually compatible edges that covers all the players.
2.3 A local search idea
The following local search idea is initially proposed by Asadpour et al. [2], and is also used in [1, 9].
Let be the bipartite graph formed by the players, the fat resources, and the fat edges. We maintain a set of fat edges and a set of thin edges such that: (i) is a maximum matching of , (ii) edges in are -minimal and are mutually compatible, and (iii) each player is covered by at most one edge in . We call such and a partial allocation. Initially, is an arbitrary maximum matching of , and is empty. The set is updated and grown iteratively so that one more player is covered in each iteration. The final set covers all the players and induces our target allocation.
Let be a player not yet covered by . We need to update to cover without losing any player that are already covered. The simplest case is that we can find a player such that is covered by a thin edge compatible with and there is an alternating path [14] with respect to from to . Let be this alternating path. We first update by taking the symmetric difference , i.e., remove the edges in from the matching and add the edges in to the matching. is also a maximum matching of . After the update, becomes matched while becomes unmatched. Then we add to to cover again. Here we slight abuse the notion of alternating paths in the sense that wen allow an alternating path with no edge. The can easily extend to alternating paths with no edge.
It is possible that no edge covering is compatible with . Let be an edge covering . Suppose that is an edge in that is not compatible with . We say blocks . Let be the player covered by . In order to add to , we have to release from . But we cannot lose , so before we release , we need to find another edge to cover . Now has a similar role as .
2.4 Node-disjoint alternating paths
In order to achieve a polynomial running time, our algorithm updates using multiple node-disjoint alternating paths from unmatched players to players . In this section, we define a problem of finding a largest set of node-disjoint paths. We also extend the operation to a set of node-disjoint paths.
For any maximum matching of , we define to be the directed graph obtained from by orienting edges of from to if , and from to if . Let be a subset of the players not matched by . Let be a subset of the players. Finding the largest set of node-disjoint alternating paths from to is equivalent to finding the largest set of node-disjoint paths in from to . Let denote the problem of finding the largest set of node-disjoint paths from to in . Let denotes the maximum number of such paths. Note that when , a path consisting of a single node is allowed. Such path is called a trivial path. Paths with at least one edge is non-trivial. Let be a feasible solution for . The paths in originate from a subset of , which we call the sources and denote as , and terminate in a subset of , which we call the sinks and denote as . We extend the operation to . Viewing as a set of edges, stands for removing the edges in from the matching and adding the edges in to the matching. One can see that is a maximum matching of .
The problem can be solved in polynomial time. Please see the appendix A for more about this problem.
3 An Approximation Algorithm
We discuss below a few techniques used by our algorithm. Some of them are used in [1, 9, 10]. The limited blocking strategy is brand new, and is crucial to achieving an approximation ratio of . In the following discussion, one can interpret addable edges as thin edges that we hope to add to , and blocking edges as edges in that are not compatible with addable edges. The precise definition will be given later.
Layers. As in [1, 9], we maintain a stack of layers, where each layer consists of addable edges and their blocking edges. The key to achieving a polynomial running time is to guarantee a geometric growth in the number of blocking edges from the bottom to the top of the stack.
Layer-level node-disjoint paths. We require that the players covered by the addable edges in a layer can be simultaneously reached via node-disjoint paths in from the players covered by the blocking edges in the lower layers [10]. It has the same effect as the globally node-disjoint path used in [1]: if lots of addable edges in a layer become unblocked, then a significant update can be made. The advantage of our strategy is that it offers more flexibility when building a new layer.
Lazy update. When having an unblocked addable edge, one may be tempted to update and immediately. However, as in [1], in order to achieve a polynomial running time, we should wait until there are lots of unblocked addable edges, and then a significant update can be made in one step. We will define a constant to control the laziness.
Greedy and Limited Blocking. Recall that the key to achieving a polynomial running time is to guarantee a geometric growth in the number of blocking edges from the bottom to the top of the stack. In [2], every addable edge is -minimal, and each blocking edge blocks exactly one addable edge. Using this strategy, in worst case, one may get a layer that has one addable edge being blocked by many blocking edges. After some of these blocking edges are released from , we may be left with a layer that has a single addable edge being blocked by a single blocking edge, which breaks the geometric growth in the number of blocking edges. To resolve this issue, Annamalai et al. [1] allow a blocking edge to block as many addable edges as possible. However, it causes a new trouble: one may get a layer that has many addable edges being blocked by one blocking edge. Again, this breaks the geometric growth in the number of blocking edges. As a consequence, they have to introduce another strategy Greedy. They require every addable edge to be -minimal. Such an addable edge contains much more resources than necessary. If such an addable edge is blocked, at least worth of its resources must be occupied by blocking edges. Provided that a blocking edge is -minimal and covers at most worth of resources, the greedy strategy ensures that, in a layer, the number of blocking edges cannot be too small comparing with the number of addable edges. Analysis shows that although the greedy strategy makes the algorithm faster, it deteriorates the approximation ratio. Our strategy is a generalization of those used in [2] and [1]. We allow a blocking edge to block more than one addable edge, but once shares strictly more than worth of resources with the addable edges blocked by it, we stop from blocking more edges. We use greedy too. In our algorithm, addable edges in layers are -minimal for some constant .
If we set to be [math], then our algorithm acts exactly the same as the local search in [2], which achieves a ratio of but may not run in polynomial time. If are set to be some large constant, then our algorithm acts like the algorithm in [1] which achieves a polynomial running time but a much worse ratio. We show that carefully selected tiny and tiny guarantee a polynomial running time but barely hurt the approximation ratio.
3.1 The algorithm
Let be the current partial allocation. Let be a player that is not yet covered by . The algorithm alternates between two phases to update and extend so that the partial allocation covers eventually without losing any covered player. In the building phase, it pushes new layers onto a stack, where each layer stores some addable edges and their blocking edges. In the collapse phase, it uses unblocked addable edges to release some blocking edges in some layer from .
Since we frequently talk about resources covered by thin edges and take sum of values over a set of resources, we define the following notations. Given a thin edge , denotes the set of resources covered by . Given a set of thin edges, denotes the set of thin resources covered by . Given a set of resources, define .
3.1.1 Building phase
The algorithm maintains a stack of layers. The layer index starts with from the bottommost layer in the stack. The -th layer is a tuple , where is a set of addable edges that we want to add to , and is a set of blocking edges that prevent us from doing so. The two numeric values and are maintained for the sake of analysis. The algorithm also maintains a set of addable edges that are compatible with . We will define addable edges and blocking edges later. We use to denote the number of layers in the current stack. The state of the algorithm is specified by .
For each , we use to denote the set of players covered by . Similarly, and denote the set of players covered by and , respectively. For , define , , and .
For simplicity, we define the first layer to be . That is, , , and .
The layers are built inductively. Initially, there is only the layer and . Let be the number of layers in the current stack. Consider the construction of the -th layer.
Definition 3.1**.**
Let be a constant to be specified later. A thin resource is inactive if (i) , or (ii) , or (iii) for some and . If a thin resource is not inactive, then it is active.
We will define addable edges so that they use only active thin resources.
Definition 3.2**.**
A player is addable if .
The activeness of thin resources and the addability of the players depend on and ( and ), so they may be affected as we add edges to and .
Definition 3.3**.**
A thin edge is addable if is addable and is a set of active thin resources desired by with . The blocking edges of an addable edge are \{\textrm{e\in{\cal E}R_{e}\cap D\neq\emptyset }\}. An addable edge is unblocked if .
Recall that, for any , a thin edge is -minimal if and for any . Our algorithm considers two kinds of addable edges. The first kind is unblocked addable edges that are -minimal. It is easy to see that if an unblocked addable edge is -minimal, then it must be compatible with . We use to keep such addable edges. The second kind is blocked addable edges that are -minimal, where is a constant to be specified later. Such edges will be added to . Once a -minimal addable edge becomes unblocked, we can easily extract a -minimal unblocked addable edge with .
Consider condition (iii) in Definition 3.1. Let be a blocking edge in . When and share strictly more than worth of resources, all resources in become inactive. Any addable edge to be added to in the future cannot use these inactive resources, and hence, will not be blocked by . This is how we achieve “limited blocking” mentioned before.
We call Build below to construct the -th layer. Note that after adding an addable edge to , we immediately add its blocking edges to in order to keep the inactive/active status of thin resources up-to-date.
Build
Initialize and . 2. 2.
While there is an unblocked addable edge that is -minimal, add it to . 3. 3.
While there is an addable edge that is -minimal
- 3.1
add to . (Note that must be blocked; otherwise, we could extract from it a -minimal unblocked addable edge, which should be added to in step 2.) 2. 3.2
add to the edges in that block . 4. 4.
Set , , and . 5. 5.
Update
Table 3.1.1 lists a few facts about the layers.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] C. Annamalai, C. Kalaitzis, and O. Svensson. Combinatorial algorithm for restricted max-min fair allocation. ACM Transactions on Algorithms , 13(3):37:1–37:28, 2017.
- 2[2] A. Asadpour, U. Feige, and A. Saberi. Santa Claus meets hypergraph matchings. ACM Transactions on Algorithms , 8(3):24:1–24:9, 2012.
- 3[3] A. Asadpour and A. Saberi. An approximation algorithm for max-min fair allocation of indivisible goods. In Proceedings of the 39th ACM Symposium on Theory of Computing , pages 114–121, 2007.
- 4[4] N. Bansal and M. Sviridenko. The Santa Claus problem. In Proceedings of the 38th ACM Symposium on Theory of Computing , pages 31–40, 2006.
- 5[5] M. Bateni, M. Charikar, and V. Guruswami. Max-min allocation via degree lower-bounded arborescences. In Proceedings of the 41st Annual ACM Symposium on Theory of Computing , pages 543–552, 2009.
- 6[6] I. Bezáková and Varsha Dani. Allocating indivisible goods. SI Gecom Exchanges , 5(3):11–18, 2005.
- 7[7] D. Chakrabarty, J. Chuzhoy, and S. Khanna. On allocating goods to maximize fairness. In Proceedings of the 50th IEEE Symposium on Foundations of Computer Science , pages 107–116, 2009.
- 8[8] S.-W. Cheng and Y. Mao. Integrality gap of the configuration LP for the restricted max-min fair allocation. Co RR , abs/1807.04152, 2018.
