A ball with center and radius , in a metric space , is the set of points at a distance at most from , i.e, . In this paper, we introduce a generic covering problem, which we refer to as lower- and upper-bounded covering (LUC). In LUC, we are given a set of points and a collection of balls, in a metric space. We are also given lower and upper bound parameters and , respectively, such that . The goal is to find a minimum-sized subset and an assignment of the points in to , such that each point is assigned to a ball that contains and for each ball , at least and at most points are assigned to . We note that LUC is a generalization of the well-studied metric capacitated covering (MCC) problem [4, 5] where . Note that if a ball is selected in a solution of LUC, then at least one point must be assigned to it. Thus, if is equal to , we do not really have a lower bound constraint. Similar to MCC, one can think of natural applications of LUC in wireless networks and facility location. We also study a restricted version of LUC, which we refer to as metric lower-bounded covering (MLC). In MLC, is equal to . Note that at most points can be assigned to any ball in a solution of LUC, and thus in case of MLC, we do not really have an upper bound constraint.
Over the years, MCC has received a sufficient amount of attention. An -approximation follows for this problem from a classical greedy algorithm due to Wolsey . This approximation is indeed tight, as one can find a reduction from set cover. Consider the following simple construction of a graph. In this graph, each element of the set cover instance is a vertex and also each set is a vertex. If an element is contained in a set, add an edge of distance 1 between them. Now, is the set of element vertices, is the set of radius-1 balls centered at the set vertices, , and the metric is the shortest path metric in this graph. Then, it is not hard to see that there is a set cover of size if and only if there is a solution of MCC of size . Note that as is set to , the reduction works even when we do not have any upper bound constraint. Thus, even MLC is as hard as set cover. However, to the best of our knowledge, no -approximation is known for MLC.
As there is no hope for a constant-approximation for MCC, researchers have focused on studying bicriteria approximation.  shows that it is possible to obtain a solution whose size is at most a constant times the optimal solution size if we are allowed to expand the balls in the solution by 6.47 factor. Note that as we are allowed to expand the balls in our solution, we have an added advantage over the optimal solution which does not expand the balls. One can show that, in the above reduction, if an element is not contained in a set, then the distance between the element and the set must be at least 3. Thus, in this construction, if a (radius-1) ball is expanded by a factor of , it does not contain any extra point than before. It follows that with any expansion factor, one cannot achieve any -approximation for MCC. In a recent work based on ,  improved the expansion factor for constant-approximation from 6.47 to 4.24. Closing the gap between 3 and 4.24 still remains an open question.
We note that covering problems have a close connection with facility location problems [3, 19, 11]. Indeed, they can be seen as variants of facility location where each point of is a client and the center of each ball is a facility with the ball itself being the coverage area of the facility. Moreover, we have an additional constraint that an opened facility can serve a client if the client is within its coverage area. Covering problems are often considered to be much harder compared to facility location problems due to this additional constraint and as the literature proves, relaxation of this constraint leads to better guarantees. Note that true constant-approximations are known for capacitated facility location and lower-bounded facility location [15, 18, 19]. The problem corresponding to the LUC problem, in the facility location literature, is the lower- and upper-bounded facility location (LUFL) problem where each opened facility must be assigned with at least and at most clients. Friggstad et al.  showed that it is possible to obtain a solution for LUFL whose cost is at most a constant times the optimal cost, such that each opened facility in the solution is assigned at least and at most clients for some constants . In fact, their result holds even for a more general version where each facility has an individual lower bound instead of the uniform lower bound.
1.1 Our Results and Techniques
Our first result is the following theorem. There is a polynomial-time approximation algorithm for MLC that returns a solution with the following properties.
The cost of the solution is at most the optimal cost.
Each ball in the solution is assigned at least points.
Each ball is expanded by at most a factor of 5.83.
Our result should be compared with the existing results for MCC. Indeed, Theorem 1.1 shows that one can obtain an exact solution if the balls can be expanded by 5.83 factor. Note that even a constant-approximation is not possible with any expansion factor. Our algorithm is much simpler than the algorithms used to obtain the results for MCC. As we argue later, the existing algorithms for MCC violate the lower bound constraint, and hence cannot be used to obtain a result such as Theorem 1.1.
For the more general LUC problem, we obtain the following result. There is a polynomial-time approximation algorithm for LUC that returns a solution with the following properties.
The cost of the solution is at most 15 times the optimal cost.
Each ball in the solution is assigned at least and at most points.
Each ball is expanded by at most a factor of 6.47.
We note that this result is different from the result when we have only lower (or upper) bound constraint, as in the latter case we do not have any lower (or upper) bound violation. However, as mentioned before, even for achieving the corresponding facility location result, constant factor violation of the lower and upper bounds is needed. Note that our violation factors are reasonably small. Our algorithm is built on the LP rounding algorithm in  for MCC. But, our analysis is vastly different, as we need to satisfy the lower and upper bounds simultaneously. Moreover, through a more careful analysis, we improve our approximation factor to 15 from their 21 factor. This also improves the best-known approximation factor for MCC from 21 to 15.
We also prove NP-hardness of LUC even in the special case of for any constant . This result essentially follows from the hardness of partitioning a graph into stars.
1.2 Related Work
Euclidean MCC is also a well-studied problem where and the metric is the Euclidean distance. is usually considered to be a constant. Researchers have studied two versions of this problem: (i) continuous: one can use any ball in for the purpose of covering, and (ii) discrete: a predefined set of balls is given from which we need to select the balls. The continuous version appears in the Sloan Digital Sky Survey project , and Ghasemi and Razzazi  gave a PTAS for this version. There is a constant bicriteria approximation for the discrete version that uses only expansion of the balls .
The covering problem without lower and upper bounds has been studied in the literature. It follows that even this problem is as hard as set cover. The Euclidean version of this problem received a huge amount of attention. In a seminal work, Brnnimann and Goodrich  obtained an -approximation for this problem in the plane. Mustafa and Ray  obtained a local-search based PTAS for this planar version. However, no better than -approximation is known in dimension more than . Har-Peled and Lee  obtained a -approximation for this version using expansion of the balls.
Facility location is another well-studied optimization problem that is closely related to covering problems. Constant-approximations are known for capacitated facility location using rounding of LP  and local search [1, 6, 9, 15, 18]. Lower-bounded facility location is also another well-studied problem for which constant-approximations are known [19, 2].
Recall that in LUC, we are given a set of points and a set of balls. For a ball , let and be its center and radius, respectively. First, we describe the ILP of LUC. In this ILP, there are two types of variables and . For each ball , there is a 1/0 variable that denotes whether is selected in the solution or not. For each ball and point , there is a 1/0 variable that denotes whether is assigned to or not. The LP relaxation of this ILP is shown in the following. The objective function is simply the sum of all values. Constraint 1 ensures that if a point is assigned to a ball, then the ball must be selected. Constraints 2 and 3 are to ensure that the total number of points assigned to is at most and at least . Constraints 4 and 5 ensure that each point is assigned to a ball that contains the point. The remaining constraints specify the domain of the variables.
We denote a solution of LUC-LP by a tuple . Note that for any solution with integral values of , the objective function correctly denotes the number of balls in the solution. We refer to such a solution with integral values of as a semi-integral solution, where can be fractional. We denote the cost of a solution by cost.
Now, consider any LP solution . For a point and a ball , is said to receive flow from . If , is said to serve . Similarly, for a set , we say receives amount of flow from . For a ball , the quantity is called its flow. Next, we define the reroute operation. Consider any two balls and . For a point , rerouting of flow of amount from to means is increased by and is decreased by . Rerouting of flow from to means for each point served by , amount of flow is rerouted from to . Thus, the flow of becomes after this operation. Next, consider a set of balls and a ball . Rerouting of flow from to means, rerouting of flow from each to . For a point , rerouting of amount of flow from the balls in to means is increased by and is decreased by for each such that .
A solution of LUC is said to violate the lower bound by at most a factor of , if for each ball in , the number of points assigned to is at least . Similarly, a solution is said to violate the upper bound by at most a factor of , if for each ball in , the number of points assigned to is at most .
3 The Algorithm for LUC
In this section, we assume that . Note that if , then the problem becomes a bipartite matching problem between and , which can be solved in polynomial time. Let OPT be the optimal cost. Fix . Let be an optimal fractional LP solution of LUC-LP. Note that cost OPT. A ball is called heavy w.r.t. if . A ball is called light w.r.t. if . Let and be the set of heavy and light balls w.r.t. , respectively. Similarly, one can define sets of heavy and light balls w.r.t. any such LP solution. For simplicity, we do not use in the notations and – the reference will be resolved from the context. Our algorithm is based on LP rounding. We start with the fractional solution and round it to a semi-integral solution. It is sufficient to obtain such a solution, as one can make it fully integral by solving a minimum cost network flow problem. The existence of a feasible fractional flow follows by the semi-integral solution. Due to integrality of flow and integer lower and upper bounds, we obtain a feasible integral solution having the same cost. This is a standard approach used in many previous works [10, 5, 11]. Similar to the algorithm in , our algorithm has three stages: Preprocessing, Cluster Formation, and Selection of Balls. Our algorithm is roughly similar to the one in . We will mention the changes needed as we proceed. Next, we describe the three stages.
In the first stage of our algorithm, we apply a preprocessing scheme on to obtain a new fractional solution which we also denote by for simplicity. The goal of Preprocessing stage is to ensure that each point receives at least amount of flow from . This is a crucial property needed in later stages. In this stage, our algorithm is same as the algorithm in , except we need to account for lower bound violation of the balls in the preprocessed solution. The algorithm is as follows.
While there is a point that receives more than flow from , do the following.
Let be the set of balls that serve and such that . Also, let be the largest ball in . Set to 1 and the -value of all other balls in to 0. Note that now is a heavy ball. Reroute the total amount of flow from to .
Lastly, for all ball with , set to 1.
We note that, in the above, the subset can be found by a linear scan on , as receives more than flow from and -values of all balls in are at most . Next, we have the following lemma that states the guarantees achieved by the above algorithm.
When the above algorithm terminates, the following are true.
For any ball with , is either heavy or light.
For each point , receives at least amount of flow from .
For each heavy ball , .
For each light ball , .
For each heavy ball and a point that it serves, .
For each light ball and a point that it serves, .
First, we show that Constraints 1, 2 and 4 are satisfied. Note that the only times values are changed are when flow is rerouted to a ball . Constraint 1 is satisfied, as whenever we reroute flow from a ball to , we set to 1.
Note that once is set to 1, it becomes a heavy ball from a light ball. Constraint 2 is satisfied, as after flow rerouting the total flow of is
The second inequality follows, as . The last inequality follows, as . Constraint 4 is satisfied as we only reroute flow and in this process no flow gets lost. It is easy to see that Constraint 6 and 7 are also satisfied. This completes the proof of Item 1.
Item 2 follows from the last step of the algorithm. Item 3 follows due to the termination condition of the while loop and the last step.
Note that the total flow assigned to is at least
Also, in the last step when a ball is made heavy, its flow must be more than , as its value was more than . Hence, Item 4 follows.
Item 5 follows, as the flow of the light balls that are in the final solution do not change from the initial solution. For the same reason, Item 7 follows.
Item 6 follows, as we reroute flow from other balls in to the largest ball and all balls in contains a common point.
Note that whenever we set to 1, we also set -value of all other balls in to 0. Moreover, . Thus, we can charge the cost of 1 against the -values of the balls in in the optimal LP solution. Similarly, in the last step, for each ball whose value is set to 1, we can charge amount in the optimal LP solution. Hence, Item 8 follows. ∎
3.2 Cluster Formation
The input to this step is the preprocessed solution, which we rename to . Note that contains only heavy and light balls. Let and be the sets of heavy and light balls. We expand each heavy ball by a factor of 3, to ensure that all the points it serves are in the expanded ball. The -value of heavy balls are already 1. Thus, we need to decide which light balls to select in the solution. We will apply an iterative greedy rounding algorithm to make this decision. If a light ball is selected, we will reroute flow from heavy balls to this ball to utilize its capacity. This, in turn, will make more capacity of heavy balls available, and they can potentially absorb flow from other light balls that are not yet selected. Note that if the flow of a light ball is absorbed by a heavy ball, we can simply remove it from consideration.
During this stage, we maintain a solution which is initialized to . Let be the subset of that the algorithm decides to select, which is initialized to . For each , initialize the cluster of , cluster to . Each ball in is eventually added to either
or to the cluster of a heavy ball. If it is added to a cluster, then its total flow is assigned to the heavy ball. At any moment in the algorithm, letbe the set of balls that are not yet added to or to the cluster of a heavy ball. During the course of the algorithm, we maintain the invariant that if a point is served by a ball in , then it gets at least flow from . The invariant follows from Lemma 3.1 in the beginning, as initially . For each , define the available capacity of , AC. For each , AC. Note that the available capacities might change throughout the algorithm, as the -values might get updated.
While there is a ball in , apply the following steps.
While there is a ball in and a ball in such that and the flow of is at most AC, reroute total flow of to . Add to cluster. If becomes empty after this step, terminate the algorithm.
For each ball , let be the number of points in . Define . Let be a ball in having the maximum value over all .
Add to . Next, we assign more flow to to utilize its capacity. There are two cases.
. In this case, for each point in , we reroute its total flow from to . Note that after this rerouting, does not get served by a ball in , and thus the invariant is maintained.
. Note that the flow of is at most , as is a light ball. Thus, AC. We consider a subset of points in of size . For each point in this subset, we reroute the total flow from to . Note that none of the points in this subset is now being served by the balls in , and thus the invariant is maintained.
When the outermost while loop terminates, is empty. For each ball , set and cluster.
We note that in contrast to our different definitions of available capacity for heavy and light balls,  has only one definition. Indeed, they define it in the same way as we define w.r.t. the light balls. Due to our definition, a ball in can absorb as large as amount of flow from balls in . Thus, in contrast to , we allow violation of upper bounds in this stage. We need this to ensure, when flow is rerouted from a heavy ball to a selected light ball, the flow of the heavy ball does not become too small. Also, for rerouting of flow to , they have three cases (a separate case for ), as they allowed upper bound to be non-uniform up to certain extent. We show that we can manage with only two cases. Additionally, in Case (b), we slightly modify their flow rerouting scheme to ensure the desired lower bound violation.
3.3 Selection of Balls
The algorithm in this stage is same as the one in . In this stage, we decide which balls to actually select in our solution. For each cluster, we select exactly one ball. If the cluster contains a single ball, we readily select that ball. Otherwise, the cluster must be the cluster of a heavy ball. In this case, we have to be careful to guarantee the desired expansion factor. Let be the heavy ball and be the largest ball of that has been added to this cluster. Note that might already be expanded by 3 factor. There are two cases.
In this case, we select and set its radius to .
In this case, we select and set its radius to .
If from a cluster is not selected, we reroute flow from to .
It is not hard to see that any selected ball contains all the points it serves. Let be the set of balls selected in this stage. Note that .
3.4 The Analysis
Here we analyze our three stage algorithm. Although, our algorithm is similar to the one in , the analysis is significantly different. For example,  does not have any upper bound violation. But, we need to prove that the violations are bounded by small constant factors in our case. Whenever possible we will try to use their findings. Otherwise, we will derive our own observations. As mentioned before, we also improve their approximation factor.
Let be the total number of iterations in Cluster Formation and be the ball selected in iteration for . By abusing notation, we denote the number of points in by , and let . Due to our choice of in -th iteration, . First, we analyze the upper and lower bound violations for the selected balls.
violates the upper bound by at most factor.
First, note that the balls in the preprocessed solution do not violate the upper bound. Now, consider a ball . There can be two cases. In iteration when is added to , either (i) or (ii) . In the first case, we assign flow to . In the second case, the flow assigned to is
Here, is the flow received by from in the -th iteration before rerouting of flow. Thus, such a ball does not violate the upper bound. Now consider any ball in . In the Cluster Selection stage, we set the available capacity AC to . Note that the only step when flow is assigned to is the first step in Cluster Selection. Moreover, we reroute flow from a ball in to if the flow of is at most AC. Thus when the algorithm terminates, the total flow assigned to is at most . Now, in the Selection of Balls stage, all balls in are selected, and for each , one ball from cluster is selected. If is not selected, a largest ball in cluster is selected, and the flow of , which is of amount at most , is rerouted to . As the upper bounds are same for all balls, violates the upper bound by at most factor. Hence, no selected ball violates the upper bound by more than factor. ∎
violates the lower bound by at most factor.
Note that in the preprocessed solution , no balls in violate the lower bound. Also, a ball in may violate the lower bound by at most factor in . Now, during the Cluster Formation stage, balls in are added to . Consider any such ball . Again, there are two cases: (i) and (ii) . In the first case, for each of the points in , flow is rerouted from to . By the invariant maintained, each of the points in was getting a flow of at least from . Thus at least flow is assigned to . In the second case, the amount of flow assigned to is at least
is again the flow received by from in the -th iteration before rerouting of flow. Now, if , . Thus, the total flow assigned to is at least
Otherwise, and the total flow assigned to is at least
The second last inequality follows, as by our assumption . Next, we consider a ball . Before the start of Cluster Formation, may violate the lower bound by at most factor. Now, if no flow is rerouted from to balls added to during Cluster Formation, then we are done. Otherwise, let be the largest iteration number of this stage such that in -th iteration non-zero amount of flow is rerouted from to , which decreases the flow of . It follows that . Let and be the respective flow of and before the rerouting. Also, let AC at that moment. Note that in the worst case, at most flow is rerouted to . Thus, after rerouting, the flow of must be at least . Now, as did not join the cluster of even though , it must be the case that the flow of was more than the available capacity of , i.e, . But, , as . It follows that, . Thus the flow of was at least and after rerouting, it becomes at least . Now, itself might not be selected. But, the ball selected from cluster must be assigned with the flow of . As the lower bound is same for all balls, the selected ball violates the lower bound by at most factor.
Now the maximum violation factor is , as . Hence, the lemma follows. ∎
Next, we move on towards the analysis of the approximation factor. Note that the total number of balls selected in the solution is . Now, is at most , as the cost of the preprocessed solution, cost and cost. Thus it is sufficient to give a bound on . To do this we are going to introduce a quantity called -accumulation of heavy balls. Roughly, we show that in each iteration , contributes a constant amount to this quantity. Thus, -accumulation is . To show this we use the argument that in each iteration sufficient amount of flow is rerouted to and the heavy balls total available capacities get increased by this amount. However, we show that only a bounded amount of -accumulation is possible at each heavy ball, as otherwise it can use the -accumulation to absorb flow of balls in . Thus, -accumulation is . It follows that, is at most a constant factor of , and thus a constant approximation follows.
To start with, we define some notations regarding flow rerouting in iteration . For a heavy ball , let be the flow rerouted from to . Also, let be the total flow rerouted from to . Our first observation is the following, which is similar to Lemma 3.2 in . However, we obtain stronger bound due to more careful analysis.
For and , .
Again consider the two cases considered in Cluster Formation. In the first case . In this case, for points, we reroute flow from to . By the invariant maintained, each of the points in was getting a flow of at least from . Thus, .
In the second case, we reroute flow from to for points. Note that the flow of is at most , as . Thus, AC. Again, by the invariant, . The last inequality follows, as and . ∎
Next, we define -accumulation of a heavy ball. First, for each ball , define its -credit in iteration , . The -accumulation of at any moment during Cluster Formation, .
Intuitively, whenever flow is rerouted from to , gains some normalized credit, and whenever it absorbs flow from a ball in , its credit gets used up. To bound the size of , we obtain a lower and upper bound on the sum of -accumulation of all balls in .
Suppose . At the end of Cluster Formation, .
We need the following lemma from  for giving the upper bound on -accumulation of heavy balls. The lemma continues to hold even though we define AC in a different way.
[Lemma 3.4, ] At any point, for any ball , .
To see this bound, suppose the -accumulation of is at least . Note that initially -accumulation is 0, and whenever flow is rerouted from , this quantity gets increased. Thus, when the first time it exceeds the bound of , it must be due to selection of a ball . However, the maximum credit it can get from is at most 1. Thus, it already had a credit of which it could have used to absorb the flow from , as the -value of is at most . Hence, we obtain a contradiction and the bound follows. We note that we need the fact that for proving this lemma. The next lemma shows the desired bound on approximation factor.
The number of balls selected by the algorithm, .
The expansion factor again follows from , as our algorithm for Selection of Balls is same as the one in . With , from Lemmas 3.4, 3.4, and 3.4, Theorem 1.1 follows. We note that one can use a similar analysis for MCC to achieve the same approximation that does not violate the capacity constraint. Hence, we have the following lemma.
There is a 15-approximation for MCC that expands the balls by 6.47 factor.
4 The Algorithm for MLC
In this section, we consider the metric lower-bounded covering (MLC) problem. Recall that in MLC, the goal is to find a minimum-sized subset and an assignment of the points in to , such that each point is assigned to a ball that contains and for each ball , at least points are assigned to . We assume that each ball contains at least points, as otherwise it is not possible to satisfy its lower bound.
We design a simple LP rounding based exact algorithm for MLC that expands the balls by at most 5.83 factor. It is interesting to note that such a simple algorithm is not known for metric capacitated covering.
Naturally, the ILP formulation of MLC is the same as that of LUC, except here Constraint 2 is absent. We compute an optimal fractional solution of the LP relaxation of this ILP. Similar to, in the case of LUC, here also we round this fractional solution to a semi-integral solution. One can obtain a fully integral solution by solving a similar minimum cost network flow problem. In the following, we describe our rounding algorithm.
Again, let OPT be the optimal cost. We say a ball is in the 1-neighborhood of another ball if . We say a ball is in the 2-neighborhood of another ball if there is a ball such that is in the 1-neighborhood of both and .
Note that here we consider open neighborhoods, i.e, is not in its 1- and 2-neighborhoods. Also, it is not hard to see that the 1-neighborhood of a ball is a subset of its 2-neighborhood. Our algorithm has two steps. The first step is the coloring step where we color each ball by either red or green. The set of green balls will determine our solution. In the second step, we assign points to these green balls. Now, we describe the details of the two steps.
Let be a set which is initialized to the set of all balls with non-zero value in . Also, let and be the set of red and green balls, respectively, both of which are initially empty. While is not empty, do the following.
Remove the largest ball from and add it to . Remove all the balls from that are in the 2-neighborhood of and add them to .
Set the value of a ball to 1 if it is in and to 0 if it is in .
For each ball , consider any subset of points in and fully assign them to (set the values to 1). Let be the set of points assigned to the balls in in this process. Now, for each ball , do the following.
Let be the ball in because of which was forced to join . For each point , reroute its flow from to .
Clearly, we obtain a semi-integral solution. Let us denote it by . Next, we analyze our algorithm. We have the following lemma.
satisfies all the LP constraints except Constraint 5. Moreover, it has the following properties: (i) cost OPT, and (ii) If a ball serves a point such that , then is contained in a ball in the 2-neighborhood of , such that .
Note that only the balls in serve the points in . As value of each such ball is 1 and values can be at most 1, Constraint 1 is satisfied.
In the second step, the algorithm selects a set of points in each ball and assigns them to . As the balls in are pairwise disjoint, these sets of points are also pairwise disjoint. Thus, for each ball in the solution, Constraint 3 is satisfied.
For points in , Constraint 4 is trivially satisfied. For points in , as we only reroute flow from balls in to the balls in , Constraint 4 is satisfied. It is trivial to verify that the domain constraints are also satisfied.
Now, we prove the moreover part. Note that for each ball , there is a point in that is fully assigned to . Let be the set of balls in the fractional solution that serve . Note that . Now, consider two balls and the corresponding sets of balls and . We claim that . Otherwise, there is a ball . It follows that and , and thus is in the 2-neighborhood of , and vice versa. But, this is not possible by the definition of . Hence, must be empty. Now,
The first inequality follows, as . The second inequality follows, as the sets in are pairwise disjoint.
Finally, consider a ball that serves a point such that . Note that if , then . Thus, . It follows that in the second step of the algorithm, flow was rerouted for from a ball in to . But, then it must be the case that is the ball in because of which was forced to join . It follows that is a ball in the 2-neighborhood of , and was present in when was added to . Now, at that moment, was the largest ball in . Hence, . This completes the proof of our claim, and hence this lemma follows. ∎
Note that if a ball serves a point in , can still be very large and thus the expansion factor of this solution might not be bounded. In the next lemma, we show how to modify this solution to obtain a new solution with bounded expansion factor.
Given the solution , it is possible to find another LP solution that satisfies all the constraints except Constraint 5 and has the following additional properties: (i) cost OPT, and (ii) If a ball serves a point in , then .
In the beginning, set to be . We will modify so that it has the desired properties. For each ball , consider the largest ball in the 1-neighborhood of . If , reroute flow from to , and set to 0 and to 1.
As we just take one ball in the solution for every ball in and each ball has the same lower bound , it is not hard to see that satisfies all the LP constraints satisfied by . Also, cost OPT.
Next, we argue about the distance between a point and the center of a ball that serves . Consider any ball . From Lemma 4, we know that if serves a point in and , then must be contained in a ball in the 2-neighborhood of , such that . Now, there can be two cases. In the first case, , and thus is chosen in the solution . Hence, in the worst case, . In the second case, and is chosen in the solution. Thus, in the worst case, . ∎
5 NP-hardness of a Restricted Version of LUC
We consider a special case of LUC when , where is a constant and show that even this version is NP-hard. We reduce the Star Partition problem to this special case.
Input: A graph with vertices and a positive integer such that is a multiple of .
Question: Does there exist a partition of into such that and contains as a subgraph for ?
Note that in the special case of , Star Partition boils down to computation of a perfect matching, which can be solved in polynomial time. However, the problem is NP-hard for any [8, 14]. Next, we describe our reduction.
Given an unweighted graph , we define a metric where is the shortest path distance function on . For every vertex , we define a metric ball of radius centered at , thus contains every vertex in the closed neighborhood of . We refer to the set of these balls as . Finally, we set and . For our convenience, we will use the terms vertex and point interchangeably.
We claim that there exists a partition of into such that iff there exists a feasible solution of LUC on the constructed instance with balls. Consider the forward direction. Suppose there is such a partition of . For each , consider the set . As , there are at least vertices in for . Additionally, as is a multiple of , contains exactly vertices. Select the unit ball centered at the center of the star in , in the solution. Assign the vertices of to . By the definition of the metric, contains all the points in . Thus we obtain a feasible solution of LUC with exactly balls.
The other direction is very similar. Suppose we are given a feasible solution of LUC with balls . Note that contains exactly points for and the balls in the solution contain all the points in . Thus, these balls define a partition of into parts each containing exactly vertices. By the definition of the metric, every vertex in is in the closed neighborhood of the center of in . Hence, there exists a in induced over the vertices corresponding to the points in .
In the light of the above discussion, we obtain the following theorem.
The LUC problem is NP-hard even if .
6 Conclusions and Open Questions
In this paper, we obtained constant bicriteria-approximations for LUC and MLC by expanding the balls by small constant factors. Several questions remain open. One interesting question is to find a constant-approximation for LUC that does not violate any lower and upper bound constraints and expands the balls by a constant factor. Also, one can try to close the gap of 3 and 5.83 for MLC, and 3 and 4.24 for MCC. It would also be interesting to see if MLC admits a true -approximation. The non-uniform version of covering problems are not well-studied. One can try to find constant bicriteria-approximations for this version.
-  Ankit Aggarwal, Anand Louis, Manisha Bansal, Naveen Garg, Neelima Gupta, Shubham Gupta, and Surabhi Jain. A 3-approximation algorithm for the facility location problem with uniform capacities. Math. Program., 141(1-2):527–547, 2013.
-  Sara Ahmadian and Chaitanya Swamy. Improved approximation guarantees for lower-bounded facility location. In Thomas Erlebach and Giuseppe Persiano, editors, Approximation and Online Algorithms - 10th International Workshop, WAOA 2012, Ljubljana, Slovenia, September 13-14, 2012, Revised Selected Papers, volume 7846 of Lecture Notes in Computer Science, pages 257–271. Springer, 2012.
-  Hyung-Chan An, Mohit Singh, and Ola Svensson. Lp-based algorithms for capacitated facility location. SIAM J. Comput., 46(1):272–306, 2017.
-  Sayan Bandyapadhyay. Improved bounds for metric capacitated covering problems. CoRR, abs/2006.12454, 2020.
-  Sayan Bandyapadhyay, Santanu Bhowmick, Tanmay Inamdar, and Kasturi Varadarajan. Capacitated covering problems in geometric spaces. Discrete & Computational Geometry, pages 1–31, 2019.
-  Manisha Bansal, Naveen Garg, and Neelima Gupta. A 5-approximation for capacitated facility location. In Leah Epstein and Paolo Ferragina, editors, Algorithms - ESA 2012 - 20th Annual European Symposium, Ljubljana, Slovenia, September 10-12, 2012. Proceedings, volume 7501 of Lecture Notes in Computer Science, pages 133–144. Springer, 2012.
-  Hervé Brönnimann and Michael T. Goodrich. Almost optimal set covers in finite vc-dimension. Discrete & Computational Geometry, 14(4):463–479, 1995.
-  Jérémie Chalopin and Daniël Paulusma. Packing bipartite graphs with covers of complete bipartite graphs. In International Conference on Algorithms and Complexity, pages 276–287. Springer, 2010.
-  Fabián A. Chudak and David P. Williamson. Improved approximation algorithms for capacitated facility location problems. Math. Program., 102(2):207–222, 2005.
-  Julia Chuzhoy and Joseph Naor. Covering problems with hard capacities. SIAM J. Comput., 36(2):498–515, 2006.
-  Zachary Friggstad, Mohsen Rezapour, and Mohammad R. Salavatipour. Approximating connected facility location with lower and upper bounds via LP rounding. In 15th Scandinavian Symposium and Workshops on Algorithm Theory, SWAT 2016, June 22-24, 2016, Reykjavik, Iceland, pages 1:1–1:14, 2016.
-  Taha Ghasemi and Mohammadreza Razzazi. A PTAS for the cardinality constrained covering with unit balls. Theor. Comput. Sci., 527:50–60, 2014.
-  Sariel Har-Peled and Mira Lee. Weighted geometric set cover problems revisited. JoCG, 3(1):65–85, 2012.
-  David G. Kirkpatrick and Pavol Hell. On the complexity of general graph factor problems. SIAM Journal on Computing, 12(3):601–609, 1983.
Madhukar R. Korupolu, C. Greg Plaxton, and Rajmohan Rajaraman.
Analysis of a local search heuristic for facility location problems.J. Algorithms, 37(1):146–188, 2000.
-  Robert Lupton, F. Miller Maley, and Neal E. Young. Data collection for the sloan digital sky survey - A network-flow heuristic. J. Algorithms, 27(2):339–356, 1998.
-  Nabil H. Mustafa and Saurabh Ray. Improved results on geometric hitting set problems. Discrete & Computational Geometry, 44(4):883–895, 2010.
-  Martin Pál, Éva Tardos, and Tom Wexler. Facility location with nonuniform hard capacities. In 42nd Annual Symposium on Foundations of Computer Science, FOCS 2001, 14-17 October 2001, Las Vegas, Nevada, USA, pages 329–338. IEEE Computer Society, 2001.
-  Zoya Svitkina. Lower-bounded facility location. ACM Transactions on Algorithms (TALG), 6(4):1–16, 2010.
-  Laurence A. Wolsey. An analysis of the greedy algorithm for the submodular set covering problem. Combinatorica, 2(4):385–393, 1982.