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

Structural Iterative Rounding for Generalized kk-Median Problems

Anupam Gupta Benjamin Moseley  and  Rudy Zhou
Abstract.

This paper considers approximation algorithms for generalized kk-median problems. This class of problems can be informally described as kk-median with a constant number of extra constraints, and includes kk-median with outliers, and knapsack median. Our first contribution is a pseudo-approximation algorithm for generalized kk-median that outputs a 6.3876.387-approximate solution, with a constant number of fractional variables. The algorithm builds on the iterative rounding framework introduced by Krishnaswamy, Li, and Sandeep for kk-median with outliers. The main technical innovation is allowing richer constraint sets in the iterative rounding and taking advantage of the structure of the resulting extreme points.

Using our pseudo-approximation algorithm, we give improved approximation algorithms for kk-median with outliers and knapsack median. This involves combining our pseudo-approximation with pre- and post-processing steps to round a constant number of fractional variables at a small increase in cost. Our algorithms achieve approximation ratios 6.994+ϵ6.994+\epsilon and 6.387+ϵ6.387+\epsilon for kk-median with outliers and knapsack median, respectively. These improve on the best-known approximation ratio 7.081+ϵ7.081+\epsilon for both problems [KLS18].

Computer Science Department, Carnegie Mellon University, Pittsburgh, PA 15213. Research supported in part by NSF awards CCF-1907820, CCF1955785, and CCF-2006953.
Tepper School of Business, Carnegie Mellon University, Pittsburgh, PA 15213. Moseley and Zhou were supported in part by a Google Research Award, an Infor Research Award, a Carnegie Bosch Junior Faculty Chair and NSF grants CCF-1824303, CCF-1845146, CCF-1733873 and CMMI-1938909

1. Introduction

Clustering is a fundamental problem in combinatorial optimization, where we wish to partition a set of data points into clusters such that points within the same cluster are more similar than points across different clusters. In this paper, we focus on generalizations of the kk-median problem. Recall that in this problem, we are given a set FF of facilities, a set CC of clients, a metric dd on FCF\cup C, and a parameter kk\in\mathbb{N}. The goal is to choose a set SFS\subset F of kk facilities to open to minimize the sum of connection costs of each client to its closest open facility. That is, to minimize the objective jCd(j,S)\sum_{j\in C}d(j,S), where we define d(j,S)=miniSd(i,j)d(j,S)=\min_{i\in S}d(i,j).

The kk-median problem is well-studied from the perspective of approximation algorithms, and many new algorithmic techniques have been discovered while studying it. Examples include linear program rounding [BPR+17, LS16], primal-dual algorithms [JV01], local search [AGK+04], and large data techniques [LG18, MKC+15, GLZ17, GMM+03, IQM+20]. Currently, the best approximation ratio for kk-median is 2.675+ϵ2.675+\epsilon [BPR+17], and there is a lower bound of 1+2/e1+2/e assuming PNPP\neq NP [JMS02].

Recently, there has been significant interest in generalizations of the kk-median problem [CKMN01, KKN+15]. One such generalization is the knapsack median problem. In knapsack median, each facility has a non-negative weight, and we are given budget B0B\geq 0. The goal is to choose a set of open facilities of total weight at most BB (instead of having cardinality at most kk) to minimize the same objective function. That is, the open facilities must satisfy a knapsack constraint. Another commonly-studied generalization is kk-median with outliers, also known as robust kk-median. Here we open kk facilities SS, as in basic kk-median, but we no longer have to serve all the clients; now, we are only required to serve at least mm clients CCC^{\prime}\subset C of our choice. Formally, the objective function is now jCd(j,S)\sum_{j\in C^{\prime}}d(j,S).

Both knapsack median and kk-median with outliers have proven to be much more difficult than the standard kk-median problem. Algorithmic techniques that have been successful in approximating kk-median often lead to only a pseudo-approximation for these generalizations—that is, they violate the knapsack constraint or serve fewer than mm clients [BPR+18, CKMN01, FKRS19, IQM+20]. Obtaining “true” approximation algorithms requires new ideas beyond those of kk-median. Currently the best approximation ratio for both problems is 7.081+ϵ7.081+\epsilon due to the beautiful iterative rounding framework of Krishnaswamy, Li, and Sandeep [KLS18]. The first and only other true approximation for kk-median with outliers is a local search algorithm due to Ke Chen [Che08].

1.1. Generalized kk-median

Observe that both knapsack median and kk-median with outliers maintain the salient features of kk-median; that is, the goal is to open facilities to minimize the connection costs of served clients. These variants differ in the way we put constraints on the open facilities and served clients. In particular, in standard kk-median, we have a cardinality constraint on the open facilities, whereas for knapsack median the open facilities are subject to a knapsack constraint; in both cases we must serve all clients. For kk-median with outliers, we are constrained to open at most kk facilities, and serve at least mm clients.

In this paper, we consider a further generalization of kk-median that we call generalized kk-median (GKM). As in kk-median, our goal is to open facilities to minimize the connection costs of served clients. In GKM, the open facilities must satisfy r1r_{1} given knapsack constraints, and the served clients must satisfy r2r_{2} given coverage constraints. We define r=r1+r2r=r_{1}+r_{2}.

1.2. Our Results

The main contribution of this paper is a refined iterative rounding algorithm for GKM. Specifically, we show how to round the natural linear program (LP) relaxation of GKM to ensure all except O(r)O(r) of the variables are integral, and the objective function is increased by at most a 6.3876.387-factor. It is not difficult to show that the iterative rounding framework in [KLS18] can be extended to show a similar result. Indeed, a 7.0817.081-approximation for GKM with at most O(r)O(r) fractional facilities is implicit in their work. The improvement in this work is the smaller loss in the objective value.

Our improvement relies on analyzing the extreme points of certain set-cover-like LPs. These extreme points arise at the intermediate steps of our iterative rounding, and by leveraging their structural properties, we obtain our improved pseudo-approximation for GKM. This work reveals some of the structure of such extreme points, and it shows how this structure can lead to improvements.

Our second contribution is improved “true” approximation algorithms for two special cases of GKM: knapsack median and kk-median with outliers. For both problems, applying the pseudo-approximation algorithm for GKM gives a solution with O(1)O(1) fractional facilities. Thus, the remaining work is to round a constant number of fractional facilities to obtain an integral solution. To achieve this goal, we apply known sparsification techniques [KLS18] to pre-process the instance, and then develop new post-processing algorithms to round the final O(1)O(1) fractional facilities.

We show how to round these remaining variables for knapsack median at arbitrarily small loss, giving a 6.387+ϵ6.387+\epsilon-approximation, improving on the best 7.081+ϵ7.081+\epsilon-approximation. For kk-median with outliers, a more sophisticated post-processing is needed to round the O(1)O(1) fractional facilities. This procedure loses more in the approximation ratio. In the end, we obtain a 6.994+ϵ6.994+\epsilon-approximation, modestly improving on the best known 7.081+ϵ7.081+\epsilon-approximation.

1.3. Overview of Techniques

To illustrate our techniques, we first introduce a natural LP relaxations for GKM. The problem admits an integer program formulation, with variables {xij}iF,jC\{x_{ij}\}_{i\in F,j\in C} and {yi}iF\{y_{i}\}_{i\in F}, where xijx_{ij} indicates that client jj connects to facility ii and yiy_{i} indicates that facility ii is open. Relaxing the integrality constraints gives the linear program relaxation LP1LP_{1}.

(LP1)minx,yiFjCd(i,j)xij(LP2):minyiFjC:iFjd(i,j)yiiFxij1jCy(Fj)1jCxijyiiF,jCWybWybjCaj(iFxij)cjCajy(Fj)cxij,yi[0,1]iF,jCyi[0,1]iF\begin{array}[]{lll|lll}(LP_{1})\min_{x,y}&{}{}&\sum_{i\in F}\sum_{j\in C}d(i,j)\,x_{ij}&\qquad(LP_{2}):&\min_{y}&\sum_{i\in F}\sum_{j\in C:i\in F_{j}}d(i,j)\,y_{i}\\ &&\sum_{i\in F}x_{ij}\leq 1\qquad\forall j\in C&&&y(F_{j})\leq 1\qquad\forall j\in C\\ &&x_{ij}\leq y_{i}\qquad\forall i\in F,j\in C&&&\\ &&Wy\leq b&&&Wy\leq b\\ &&\sum_{j\in C}a_{j}(\sum_{i\in F}x_{ij})\geq c&&&\sum_{j\in C}a_{j}y(F_{j})\geq c\\ &&x_{ij},y_{i}\in[0,1]\qquad\forall i\in F,j\in C&&&y_{i}\in[0,1]\qquad\forall i\in F\end{array}

We focus on LP1LP_{1} for now. The linear program LP1LP_{1} is the standard kk-median LP with the extra side constraints. Note that iFxij1\sum_{i\in F}x_{ij}\leq 1 may seem opposite to the intuition that we want clients to get “enough” coverage from the facilities, but that will be guaranteed by the coverage constraints below.

The constraint WybWy\leq b corresponds to the r1r_{1} knapsack constraints on the facilities yy, where W+r1×FW\in\mathbb{R}_{+}^{r_{1}\times F} and b+r1b\in\mathbb{R}_{+}^{r_{1}}. These r1r_{1} packing constraints can be thought of as a multidimensional knapsack constraint over the facilities, and ensure that “few” facilities are opened. Next, jCaj(ixij)c\sum_{j\in C}a_{j}(\sum_{i}x_{ij})\geq c corresponds to the r2r_{2} coverage constraints on the clients, where aj+r2a_{j}\in\mathbb{R}_{+}^{r_{2}} for all jCj\in C and c+r2c\in\mathbb{R}_{+}^{r_{2}}. These coverage constraints ensure that “enough” clients are served. E.g., having one packing constraint iFyik\sum_{i\in F}y_{i}\leq k and one covering constraint jCiFxijm\sum_{j\in C}\sum_{i\in F}x_{ij}\geq m ensures that at least mm clients are covered by at most kk facilities; this is the kk-median with outliers problem.

Reducing the variables in the LP: We get LP2LP_{2} by eliminating the xx variables from LP1LP_{1}, thereby reducing the number of constraints. The idea from [KLS18] is to prescribe a set FjFF_{j}\subseteq F of permissible facilities for each client jj such that xijx_{ij} is implicitly set to yi𝟏(iFj)y_{i}\mathbf{1}(i\in F_{j}). The details of this reduction and the procedure for creating FjF_{j} are given in 2.1. Using this procedure, LP2LP_{2} is also a relaxation for GKM. Note that in LP2LP_{2}, we use the notation y(F)=iFyiy(F^{\prime})=\sum_{i\in F^{\prime}}y_{i} for FFF^{\prime}\subset F.

Now consider solving LP2LP_{2} to obtain an optimal extreme point y¯\bar{y}. There must be |F||F| linearly independent tight constraints at y¯\bar{y}, and we call these constraints the basis for y¯\bar{y}. The tight constraints of interest are the y(Fj)1y(F_{j})\leq 1 constraints; in general, there are at most |C|\lvert C\rvert such tight constraints, and we have little structural understanding of the FjF_{j}-sets.

Prior Iterative Rounding Framework: Consider the family of FjF_{j} sets corresponding to tight constraints, so ={FjjC,y¯(Fj)=1}\mathcal{F}=\{F_{j}\mid j\in C,\,\bar{y}(F_{j})=1\}. If \mathcal{F} is a family of disjoint sets , then the tight constraints of LP2LP_{2} form a face of a partition matroid polytope intersected with at most rr side constraints (the knapsack and coverage constraints). Using ideas from, e.g., [KLS18, GRSZ14], we can show that y¯\bar{y} has at most O(r)O(r) fractional variables.

Indeed, the goal of the iterative rounding framework in [KLS18] is to control the set family \mathcal{F} to obtain an optimal extreme point where \mathcal{F} is a disjoint family. To achieve this goal, they iteratively round an auxiliary LP based on LP2LP_{2}, where they have the constraint y(Fj)=1y(F_{j})=1 for all clients jj in a special set CCC^{*}\subset C. Roughly, they regulate what clients are added to CC^{*} and delete constraints y(Fj)1y(F_{j})\leq 1 for some clients. The idea is that a client jj whose constraint is deleted must be close to some client jj^{\prime} in CC^{*}. Since y(Fj)=1y(F_{j^{\prime}})=1 we can serve jj with the facility for jj^{\prime}, and the cost is small if jj^{\prime}’s facility is close to jj.

To get intuition, assume each client jj can pay the farthest distance to a facility in FjF_{j}, and call this the radius of FjF_{j}. (Precisely, clients may not be able to afford this distance, but we use this assumption to highlight the ideas behind our algorithmic decisions.) For simplicity, assume all radii are powers of two. Over time, this radius shrinks if some yy variables in FjF_{j} are set to zero. Consider applying the following iterative steps until none are applicable, in which case CC^{*} corresponds to the tight constraints: (1) delete a constraint for jCj\notin C^{*} if the radius of FjF_{j} is at least that of some FjF_{j^{\prime}} for jCj^{\prime}\in C^{*} and FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset. (2) add jCj\notin C^{*} to CC^{*} if y(Fj)=1y(F_{j})=1 and for every jCj^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset it is the case that FjF_{j^{\prime}} has a radius strictly larger than FjF_{j}. If added then remove all jj^{\prime} from CC^{*} where jj’s radius is half or less of the radius of jj^{\prime} and FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset.

The approximation ratio is bounded by how much a client jj with a deleted constraint pays to get to a facility serving a client in CC^{*}. After removing jj’s constraint, the case to worry about is if jj’s closest client jCj^{\prime}\in C^{*} is later removed from CC^{*}. This happens only if j′′j^{\prime\prime} is added to CC^{*}, with Fj′′F_{j^{\prime\prime}} having half the radius of FjF_{j^{\prime}}. Thus every time we remove jj’s closest client in CC^{*}, we guarantee that jj’s cost only increases geometrically. The approximation ratio is proportional to the total distance that jj must travel and can be directly related to the distance of “ball-chasing” though these FjF_{j} sets. See Figure 1.

Refer to caption
Figure 1. Half and quarter ball chasing

New Framework via Structured Extreme Points: The target of our framework is to ensure that the radii decreases in the ball-chasing using a smaller factor, in particular one-quarter. This will give closer facilities for clients whose constraints are deleted and a better approximation ratio. See Figure 1. To achieve this ”quarter ball-chasing,” we can simply change half to one-quarter in step (2) above.

Making this change immediately decreases the approximation ratio; however, the challenge is that \mathcal{F} is no longer disjoint. Indeed, it can be the case that j,jCj,j^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset if their radii differ by only a one half factor. Instead, our quarter ball-chasing algorithm maintains that \mathcal{F} is not disjoint, but has a bipartite intersection graph.

The main technical challenge now is obtaining an extreme point with O(r)O(r) fractional variables, which is no longer guaranteed as when \mathcal{F} was disjoint. Indeed, if \mathcal{F} has bipartite intersection graph, then the tight constraints form a face of the intersection of two partition matroid polytopes intersected with at most rr side constraints. In general, we cannot upper bound the number of fractional variables arising in the extreme points of such polytopes. However, such extreme points have a nice combinatorial structure: the intersection graph can be decomposed into O(r)O(r) disjoint paths. We exploit this “chain decomposition” of extreme points arising in our iterative rounding to discover clients jj that can be removed from CC^{*} even if there is not a jCj^{\prime}\in C^{*} where FjF_{j^{\prime}} has one quarter of the radius of FjF_{j}. We continue this procedure until we are left with only O(r)O(r) fractional variables.

The main technical contribution of this work is showing how the problem can be reduced to structural characterization of extreme points corresponding to bipartite matching. This illustrates some of the structural properties of polytopes defined by kk-median-type problems. We hope that this helps lead to other structural characterizations of these polytopes and ultimately improved algorithms.

1.4. Organization

In §2, we introduce the auxiliary LP for GKM that our iterative rounding algorithm operates on. We note that this is the same LP used in the algorithm of [KLS18]. Then §35 give the pseudo-approximation for GKM. In particular, §3 describes the basic iterative rounding phase, where we iteratively update the auxiliary LP such that ={FjjC}\mathcal{F}^{*}=\{F_{j}\mid j\in C^{*}\} has a bipartite intersection graph. In §4, we characterize the structure of the resulting extreme points and use it to define a new iterative operation, which allows us to reduce the number of fractional variables to O(r)O(r). Finally, in §5, we combine the algorithms from §3 and §4 to obtain our pseduo-approximation algorithm for GKM.

We then obtain true approximations for knapsack median and kk-median with outliers: in §6, we describe our framework to turn pseudo-approximation algorithms into true approximations for both problems, and apply it to knapsack median. Then in §7, we give a more involved application of the same framework to kk-median with outliers.

2. Auxiliary LP for Iterative Rounding

In this section, we construct the auxiliary LP, LPiterLP_{iter}, that our algorithm will use. We note that we use the same relaxation used in [KLS18]. Recall the two goals of iterative rounding, outlined in §1.3; we want to maintain a set of clients CCC^{*}\subset C such that {FjjC}\{F_{j}\mid j\in C^{*}\} has bipartite intersection graph, and CC^{*} should provide a good set of open facilities for the clients that are not in CC^{*}. Thus, we want to define LPiterLP_{iter} to accommodate moving clients in and out of CC^{*}, while having the LP faithfully capture how much we think the clients outside of CC^{*} should pay in connection costs. For all missing proofs in this section, see §A.

2.1. Defining FF-balls

Our starting point is LP2LP_{2}, so we assume that we have sets FjFF_{j}\subset F for all jCj\in C. The next proposition states that such sets can be found efficiently so that LP2LP_{2} is a relaxation of GKM.

Proposition 2.1.

There exists a polynomial time algorithm that given GKM instance \mathcal{I}, duplicates facilities and outputs sets FjFF_{j}\subseteq F for jCj\in C such that Opt(LP2)Opt()Opt(LP_{2})\leq Opt(\mathcal{I}).

In §1.3, we assumed the radii of the FjF_{j} sets were powers of two. To formalize this idea, we discretize the distances to powers of τ>1\tau>1 (up to some random offset.) The choice of τ\tau is to optimize the final approximation ratio. The main ideas of the algorithm remain the same if we discretize to powers of, say 22, with no random offset. Our discretization procedure is the following:

Fix some τ>1\tau>1 and sample the random offset α[1,τ)\alpha\in[1,\tau) such that logeα\log_{e}\alpha is uniformly distributed in [0,logeτ)[0,\log_{e}\tau). Without loss of generality, we may assume that the smallest non-zero inter-point distance is 11. Then we define the possible discretized distances, L(2)=1,L(1)=0,,L()=ατL(-2)=-1,L(-1)=0,\dots,L(\ell)=\alpha\tau^{\ell} for all \ell\in\mathbb{N}.

For each p,qFCp,q\in F\cup C, we round d(p,q)d(p,q) up to the next largest discretized distance. Let d(p,q)d^{\prime}(p,q) denote the rounded distances. Observe that d(p,q)d(p,q)d(p,q)\leq d^{\prime}(p,q) for all p,qFCp,q\in F\cup C. See §A for proof of the following proposition, which we use to bound the cost of discretization.

Proposition 2.2.

For all p,qFCp,q\in F\cup C, we have 𝔼[d(p,q)]=τ1logeτd(p,q)\mathbb{E}[d^{\prime}(p,q)]=\frac{\tau-1}{\log_{e}\tau}d(p,q)

Now using the discretized distances, we can define the radius level of FjF_{j} for all jCj\in C by:

j=min1{d(j,i)L()iFj}.\ell_{j}=\min\limits_{\ell\geq-1}\{\ell\mid d^{\prime}(j,i)\leq L(\ell)\quad\forall i\in F_{j}\}.

One should imagine that FjF_{j} is a ball of radius L(j)L(\ell_{j}) in terms of the dd^{\prime}-distances. Thus, we will often refer to FjF_{j} as the FF-ball of client jj. Further, to accommodate “shrinking” the FjF_{j} sets, we define the inner ball of FjF_{j} by:

Bj={iFjd(j,i)L(j1)}.B_{j}=\{i\in F_{j}\mid d^{\prime}(j,i)\leq L(\ell_{j}-1)\}.

Note that we defined L(2)=1L(-2)=-1 so that if j=1\ell_{j}=-1, then Bj=B_{j}=\emptyset.

2.2. Constructing LPiterLP_{iter}

Our auxiliary LP will maintain three sets of clients: Cpart,CfullC_{part},C_{full}, and CC^{*}. CpartC_{part} consists of all clients, whom we have not yet decided whether we should serve them or not. Then for all clients in CfullC_{full} and CC^{*}, we decide to serve them fully. The difference between the clients in CfullC_{full} and CC^{*} is that for the former, we remove the constraint y(Fj)=1y(F_{j})=1 from the LP, while for the latter we still require y(Fj)=1y(F_{j})=1. Thus although we commit to serving CfullC_{full}, such clients rely on CC^{*} to find an open facility to connect to. Using the discretized distances, radius levels, inner balls, and these three sets of clients, we are ready to define LPiterLP_{iter}:

(LPiterLP_{iter}) miny\displaystyle\min\limits_{y}~{}~{} jCpartiFjd(i,j)yi+jCfullC(iBjd(i,j)yi+(1y(Bj))L(j))\displaystyle\sum\limits_{j\in C_{part}}\sum\limits_{i\in F_{j}}d^{\prime}(i,j)y_{i}+\sum\limits_{j\in C_{full\cup C^{*}}}(\sum\limits_{i\in B_{j}}d^{\prime}(i,j)y_{i}+(1-y(B_{j}))L(\ell_{j}))
s.t. y(Fj)1jCpart\displaystyle y(F_{j})\leq 1\quad\forall j\in C_{part}
y(Bj)1jCfull\displaystyle y(B_{j})\leq 1\quad\forall j\in C_{full}
y(Fj)=1jC\displaystyle y(F_{j})=1\quad\forall j\in C^{*}
Wyb\displaystyle Wy\leq b
jCpartajy(Fj)cjCfullCaj\displaystyle\sum\limits_{j\in C_{part}}a_{j}y(F_{j})\geq c-\sum\limits_{j\in C_{full}\cup C^{*}}a_{j}
0y1\displaystyle 0\leq y\leq 1

Note that we use the rounded distances in the definition of LPiterLP_{iter} rather than the original distances. Keeping this in mind, if Cpart=CC_{part}=C and Cfull,C=C_{full},C^{*}=\emptyset, then LPiterLP_{iter} is the same as LP2LP_{2} up to the discretized distances, so the following proposition is immediate.

Proposition 2.3.

Suppose Cpart=CC_{part}=C and Cfull,C=C_{full},C^{*}=\emptyset. Then 𝔼[Opt(LPiter)]τ1logeτOpt(LP2)\mathbb{E}[Opt(LP_{iter})]\leq\frac{\tau-1}{\log_{e}\tau}Opt(LP_{2}).

We now take some time to parse the definition of LPiterLP_{iter}. Initially, all clients are in CpartC_{part}. For clients in CpartC_{part}, we are not sure yet whether we should serve them or not. Thus for these clients, we simply require y(Fj)1y(F_{j})\leq 1, so they can be served any amount, and in the objective, the contribution of a client from CpartC_{part} is exactly its connection cost (up to discretization) to FjF_{j}.

The clients in CfullC_{full} correspond to the “deleted” constraints in §1.3. Importantly, for jCfullj\in C_{full}, we do not require that y(Fj)=1y(F_{j})=1; rather, we relax this condition to y(Bj)1y(B_{j})\leq 1. Recall that we made the assumption that every client can pay the radius of its FjF_{j} set in §1.3. To realize this idea, we require that each jCfullj\in C_{full} pays its connection costs to BjB_{j} in the objective. Then, to serve jj fully, jj must find (1y(Bj))(1-y(B_{j})) units of open facility to connect to beyond BjB_{j}. Now jj truly pays its radius, L(j)L(\ell_{j}), for this (1y(Bj))(1-y(B_{j})) units of connections in LPiterLP_{iter}, so we can do “ball-chasing” to CC^{*} to find these facilities. In this case, we say that we re-route the client jj to some destination.

For clients in CC^{*}, we require y(Fj)=1y(F_{j})=1. Note that the contribution of a jCj\in C^{*} to the objective of LPiterLP_{iter} is exactly its connection cost to FjF_{j}. The purpose of CC^{*} is to provide destinations for CfullC_{full}.

Finally, because we have decided to fully serve all clients in CfullC_{full} and CC^{*}, regardless of how much they are actually served in their FF-balls, we imagine that they every jCfullCj\in C_{full}\cup C^{*} contributes aja_{j} to the coverage constraints, which is reflected in LPiterLP_{iter}.

2.3. Properties of LPiterLP_{iter}

Throughout our algorithm, we will modify the data of LPiterLP_{iter} - we will move clients between Cpart,CfullC_{part},C_{full}, and CC^{*} and modify the FF-balls and radius levels. However, we still want the data of LPiterLP_{iter} to satisfy some consistent properties, which we call our Basic Invariants.

Definition 2.4 (Basic Invariants).

We call the following properties our Basic Invariants:

  1. (1)

    CpartCfullCC_{part}\cup C_{full}\cup C^{*} partitions CC.

  2. (2)

    For all jCj\in C, we have d(j,i)Ljd^{\prime}(j,i)\leq L_{\ell_{j}} for all iFji\in F_{j}.

  3. (3)

    For all jCj\in C, we have Bj={iFjd(j,i)Lj1}B_{j}=\{i\in F_{j}\mid d^{\prime}(j,i)\leq L_{\ell_{j}-1}\}.

  4. (4)

    For all jCj\in C, we have j1\ell_{j}\geq-1.

  5. (5)

    (Distinct Neighbors) For all j1,j2Cj_{1},j_{2}\in C^{*}, if Fj1Fj2F_{j_{1}}\cap F_{j_{2}}\neq\emptyset, then |j1j2|=1\lvert\ell_{j_{1}}-\ell_{j_{2}}\rvert=1. In words, if the FF-balls of two clients in CC^{*} intersect, then they differ by exactly one radius level.

We want to emphasize Basic Invariant 2.4(5), which we call the Distinct Neighbors Property. It is not difficult to see that the Distinct Neighbors Property implies that {FjjC}\{F_{j}\mid j\in C^{*}\} has bipartite intersection graph.

Definition 2.5 (Intersection Graph).

Let ={FjjC}\mathcal{F}=\{F_{j}\mid j\in C^{*}\} be a set family indexed by CC^{*}. The intersection graph of \mathcal{F} is the undirected graph with vertex set CC^{*} such that two vertices jj and jj^{\prime} are connected by an edge if any only if FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset.

Proposition 2.6.

Suppose LPiterLP_{iter} satisfies the Distinct Neighbors Property. Then the intersection graph of ={FjjC}\mathcal{F}=\{F_{j}\mid j\in C^{*}\} is bipartite.

The following proposition will also be useful.

Proposition 2.7.

Suppose LPiterLP_{iter} satisfies the Distinct Neighbors Property. Then each facility is in at most two FF-balls for clients in CC^{*}.

We summarize the relevant properties of LPiterLP_{iter} in the following lemma. The algorithm described by the lemma is exactly the steps we took in this section.

Lemma 2.8.

There exists a polynomial time algorithm that takes as input a GKM instance \mathcal{I} and outputs LPiterLP_{iter} such that 𝔼[Opt(LPiter)]τ1logeτOpt(I)\mathbb{E}[Opt(LP_{iter})]\leq\frac{\tau-1}{\log_{e}\tau}Opt(I) and LPiterLP_{iter} satisfies all Basic Invariants.

2.4. Notations

Throughout this paper, we will always index facilities using ii and clients using jj.

For any client jCj\in C, we say that jj is supported on facility iFi\in F if iFji\in F_{j}. Then for any CCC^{\prime}\subset C, we let F(C)FF(C^{\prime})\subset F be the set of all facilities supported on at least one client in CC^{\prime}.

Given a setting of the yy-variables of LPiterLP_{iter}, we say a facility ii is fractional (with respect to the given yy-variables) if yi<1y_{i}<1. Otherwise, facility ii is integral. Similarly, we say a client jj is fractional if FjF_{j} contains only fractional facilities, and jj is integral otherwise. Using these definitions, for any FFF^{\prime}\subset F, we can partition FF^{\prime} into F<1F=1F^{\prime}_{<1}\cup F^{\prime}_{=1}, where F<1F^{\prime}_{<1} is the subset of fractional facilities and F=1F^{\prime}_{=1} is the subset of integral facilities. An analogous partition holds for a subset of clients CCC^{\prime}\subset C, so we have C=C<1C=1C^{\prime}=C^{\prime}_{<1}\cup C^{\prime}_{=1}.

3. Basic Iterative Rounding Phase

In this section, we describe the iterative rounding phase of our algorithm. This phase has two main goals: (a) to simplify the constraint set of LPiterLP_{iter}, and (b) to decide which clients to serve and how to serve them. To make these two decisions, we repeatedly solve LPiterLP_{iter} to obtain an optimal extreme point, and then use the structure of tight constraints to update LPiterLP_{iter}, and reroute clients accordingly.

3.1. The Algorithm

Our algorithm repeatedly solves LPiterLP_{iter} to obtain an optimal extreme point y¯\bar{y}, and then performs one of the following three possible updates, based on the tight constraints:

  1. (1)

    If some facility ii is set to zero in y¯\bar{y}, we delete it from the instance.

  2. (2)

    If constraint y¯(Fj)1\bar{y}(F_{j})\leq 1 is tight for some jCpartj\in C_{part}, then we decide to fully serve client jj by moving jj to either CfullC_{full} or CC^{*}. Initially, we add jj to CfullC_{full} then run Algorithm 2 to decide if jj should be in CC^{*} instead.

  3. (3)

    If constraint y¯(Bj)1\bar{y}(B_{j})\leq 1 is tight for some jCfullj\in C_{full}, we shrink FjF_{j} by one radius level (so jj’s new FF-ball is exactly BjB_{j}.) Then we possibly move jj to CC^{*} by running Algorithm 2 for jj.

These steps are made formal in Algorithms 1 (IterativeRound) and 2 (ReRoute). IterativeRound relies on the subroutine ReRoute, which gives our criterion for moving a client to CC^{*}. This criterion for adding clients to CC^{*} is the key way in which our algorithm differs from that of [KLS18]. In [KLS18], the criterion used ensures that {FjjC}\{F_{j}\mid j\in C^{*}\} is a family of disjoint sets. In contrast, we allow FF-balls for clients in CC^{*} to intersect, as long as they satisfy the Distinct Neighbors Property from Definition 2.4(5). Thus, our algorithm allows for rich structures in the set system {FjjC}\{F_{j}\mid j\in C^{*}\}.

Input: LPiterLP_{iter} satisfying all Basic Invariants
Result: Modifies LPiterLP_{iter} and outputs an optimal extreme point of LPiterLP_{iter}
1
2repeat
3       Solve LPiterLP_{iter} to obtain optimal extreme point y¯\bar{y}.
4       if there exists a facility iFi\in F such that y¯i0\bar{y}_{i}\geq 0 is tight then
5             Delete ii from FF.
6            
7      else if there exists a client jCpartj\in C_{part} such that y(Fj)1y(F_{j})\leq 1 is tight then
8             Move jj from CpartC_{part} to CfullC_{full}.
9             ReRoute(j)\textsc{ReRoute}(j)
10            
11      else if there exists a client jCfullj\in C_{full} such that y¯(Bj)1\bar{y}(B_{j})\leq 1 is tight then
12             Update FjBjF_{j}\leftarrow B_{j} and decrement j\ell_{j} by 11.
13             Update Bj{iFjd(j,i)L(j1)}B_{j}\leftarrow\{i\in F_{j}\mid d^{\prime}(j,i)\leq L(\ell_{j}-1)\}.
14             ReRoute(j)\textsc{ReRoute}(j)
15            
16      else
17            Output y¯\bar{y} and Terminate.
18until termination
Algorithm 1 IterativeRound
Input: Client jCfullj\in C_{full}
Result: Decide whether to move jj to CC^{*} or not
1
2if jj1\ell_{j}\leq\ell_{j^{\prime}}-1 for all jCj^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset then
3       Move jj from CfullC_{full} to CC^{*}.
4       For all jCj^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset and jj+2\ell_{j^{\prime}}\geq\ell_{j}+2, move jj^{\prime} from CC^{*} to CfullC_{full}.
5      
Algorithm 2 ReRoute

The modifications made by IterativeRound do not increase Opt(LPiter)Opt(LP_{iter}), so upon termination of our algorithm, we have an optimal extreme point y¯\bar{y} to LPiterLP_{iter} such that LPiterLP_{iter} is still a relaxation of GKM and no non-negativity constraint, CpartC_{part}-constraint, or CfullC_{full}-constraint is tight for y¯\bar{y}. This is formalized in the following theorem, whose proof is similar to [KLS18], and is deferred to Appendix B.1.

Theorem 3.1.

IterativeRound  is a polynomial time algorithm that maintains all Basic Invariants, weakly decreases Opt(LPiter)Opt(LP_{iter}), and outputs an optimal extreme point to LPiterLP_{iter} such that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight.

Recall the goals from the beginning of the section: procedure IterativeRound achieves goal (a) of making {FjjC}\{F_{j}\mid j\in C^{*}\} simpler while maintaining the Distinct Neighbors Property. Since we moved facilities between CC^{*} and CfullC_{full}, achieving goal (b) means deciding which facilities to open, and guaranteeing that each client has a “close-by” open facility. (Recall from §2 that CC^{*} is the set of clients such that their FjF_{j}-balls are guaranteed to contain an open facility, and CfullC_{full} are the clients which are guaranteed to be served but using facilities opened in CC^{*}.)

Here’s the high-level idea of how we achieve goal (b). Suppose we move jj from CfullC_{full} to CC^{*} and some jj^{\prime} from CC^{*} to CfullC_{full}; we want to find a good destination for jj^{\prime}. We claim jj’s facility is a good destination for jj^{\prime}. Indeed, since jj is now in CC^{*}, we can use the constraint y(Fj)=1y(F_{j})=1 to bound the distance of jj^{\prime} to this unit of facility by L(j)+2L(j)(1+2τ2)L(j)L(\ell_{j^{\prime}})+2L(\ell_{j})\leq(1+\frac{2}{\tau^{2}})L(\ell_{j^{\prime}}), using the facts that jj+2\ell_{j^{\prime}}\geq\ell_{j}+2 and FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset, which are guaranteed by ReRoute. Of course, if jj is removed from CC^{*} later, we re-route it to some client that is at least two radius levels smaller, and can send jj^{\prime} to that client. This corresponds to the “quarter ball-chasing” of §1.3. Indeed every further re-routing step for jj^{\prime} has geometrically decreasing cost, which give a cost of O(1)L(j)O(1)L(\ell_{j^{\prime}}). We defer the formal analysis to 5.3, after we combine IterativeRound  with another (new) iterative operation, which we present in the next section.

4. Iterative Operation for Structured Extreme Points

In this section, we achieve two goals: (a) we show that the structure of the extreme points of LPiterLP_{iter} obtained from 3.1 are highly structured, and admit a chain decomposition. Then, (b) we exploit this chain decomposition to define a new iterative operation that is applicable whenever y¯\bar{y} has “many” (i.e., more than O(r)O(r)) fractional variables. We emphasize that this characterization of the extreme points is what enables the new iterative rounding algorithm.

4.1. Chain Decomposition

A chain is a sequence of clients in CC^{*} where the FF-ball of each client jj contains exactly two facilities—one shared with the previous ball and other with the next.

Definition 4.1 (Chain).

A chain is a sequence of clients (j1,,jp)C(j_{1},\dots,j_{p})\subseteq C^{*} satisfying:

  • |Fjq|=2\lvert F_{j_{q}}\rvert=2 for all q[p]q\in[p], and

  • FjqFjq+1F_{j_{q}}\cap F_{j_{q+1}}\neq\emptyset for all q[p1]q\in[p-1].

Our chain decomposition is a partition of the fractional CC^{*}-clients given in the next theorem, which is our main structural characterization of the extreme points of LPiterLP_{iter}. (Recall that a client jj is fractional if all facilities in FjF_{j} are fractional; we denote the fractional clients in CC^{*} by C<1C^{*}_{<1}.)

Theorem 4.2 (Chain Decomposition).

Suppose LPiterLP_{iter} satisfies all Basic Invariants. Let y¯\bar{y} be an extreme point of LPiterLP_{iter} such that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight. Then there exists a partition of C<1C^{*}_{<1} into at most 3r3r chains, along with a set of at most 2r2r violating clients (clients that are not in any chain.)

The proof relies on analyzing the extreme points of a set-cover-like polytope with rr side constraints; we defer it to §8 and proceed instead to define the new iterative operation.

4.2. Iterative Operation for Chain Decompositions

Composing 3.1 and 4.2, consider an optimal extreme point y¯\bar{y} of LPiterLP_{iter}, and a chain decomposition. We show that if the number of fractional variables in y¯\bar{y} is sufficiently large, there exists a useful structure in the chain decomposition, which we call a candidate configuration.

Definition 4.3 (Candidate Configuration).

Let y¯\bar{y} be an optimal extreme point of LPiterLP_{iter}. A candidate configuration is a pair of two clients (j,j)C<1(j,j^{\prime})\subset C^{*}_{<1} such that:

  1. (1)

    FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset

  2. (2)

    jj1\ell_{j^{\prime}}\leq\ell_{j}-1

  3. (3)

    Every facility in FjF_{j} and FjF_{j^{\prime}} is in at exactly two FF-balls for clients in CC^{*}

  4. (4)

    |Fj|=2\lvert F_{j}\rvert=2 and |Fj|=2\lvert F_{j^{\prime}}\rvert=2

Lemma 4.4.

Suppose LPiterLP_{iter} satisfies all Basic Invariants, and let y¯\bar{y} be an optimal extreme point of LPiterLP_{iter} such that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight. If |F<1|15r\lvert F_{<1}\rvert\geq 15r, then there exist a candidate configuration in C<1C^{*}_{<1}.

Our new iterative operation is easy to state: Find a candidate configuration (j,j)(j,j^{\prime}) and move jj from CC^{*} to CfullC_{full}.

Input: An optimal extreme point y¯\bar{y} to LPiterLP_{iter} s.t. there exists an candidate configuration
Result: Modify LPiterLP_{iter}
1
2Let (j,j)C<1(j,j^{\prime})\subset C^{*}_{<1} be any candidate configuration.
3 Move jj from CC^{*} to CfullC_{full}.
Algorithm 3 ConfigReRoute

The first two properties of candidate configurations are used to re-route jj to jj^{\prime}. Observe a key difference between ReRoute  and ConfigReRoute: In the former, if a client jj^{\prime} is moved from CC^{*} to CfullC_{full}, there exists a client jCj\in C^{*} such that FjFjF_{j^{\prime}}\cap F_{j}\neq\emptyset and jj2\ell_{j}\leq\ell_{j^{\prime}}-2. Thus we re-route jj^{\prime} to a client at least two radius levels smaller. This corresponds to “quarter ball-chasing.” On the other hand, in ConfigReRoute, we only guarantee a client of at least one radius level smaller, which corresponds to “half ball-chasing.” This raises the worry that if all re-routings are due to ConfigReRoute, any potential gains by ReRoute are not realized in the worst case. However we show that, roughly speaking, the last two properties of candidate configurations guarantee that the more expensive re-routings of ConfigReRoute  happen at most half the time. The main properties of ConfigReRoute  appear in the next theorem (whose proof is in Appendix B.2).

Theorem 4.5.

ConfigReRoute  is a polynomial-time algorithm that maintains all Basic Invariants and weakly decreases Opt(LPiter)Opt(LP_{iter}).

Again, we defer the analysis of the re-routing cost of ConfigReRoute to §5.3, where we analyze the interactions between ConfigReRoute  and ReRoute, and present our final pseudo-approximation algorithm next.

5. Pseudo-Approximation Algorithm for GKM

The pseudo-approximation algorithm for GKM combine the iterative rounding algorithm IterativeRound  from §3 with the re-routing operation ConfigReRoute  from §4 to construct a solution to LPiterLP_{iter}.

Theorem 5.1 (Pseudo-Approximation Algorithm for GKM).

There exists an polynomial time randomized algorithm PseudoApproximation that takes as input an instance \mathcal{I} of GKM and outputs a feasible solution to LP1LP_{1} with at most O(r)O(r) fractional facilities and expected cost at most 6.387Opt()6.387\cdot Opt(\mathcal{I}).

Input: LPiterLP_{iter} satisfying all Basic Invariants
Result: Modifies LPiterLP_{iter} and outputs an optimal extreme point of LPiterLP_{iter}
1 repeat
2       Run IterativeRound  to obtain an optimal extreme point y¯\bar{y} of LPiterLP_{iter}
3       if there exists a candidate configuration  then
4             Run ConfigReRoute
5      else
6             Output y¯\bar{y} and Terminate
7until Termination
Algorithm 4 PseudoApproximation

There are two main components to analyzing PseudoApproximation. First, we show that the output extreme point has O(r)O(r) fractional variables. Second, we bound the re-routing cost. The first part follows directly by combining the analogous theorems for IterativeRound  and ConfigReRoute. We defer its proof to Appendix B.

Theorem 5.2.

PseudoApproximation  is a polynomial time algorithm that maintains all Basic Invariants, weakly decreases Opt(LPiter)Opt(LP_{iter}), and outputs an optimal extreme point of LPiterLP_{iter} with at most 15r15r fractional variables.

5.1. Analysis of Re-Routing Cost

We now bound the re-routing cost by analyzing how CC^{*} evolves throughout PseudoApproximation. This is one of the main technical contributions of our paper, and it is where our richer CC^{*}-set and relaxed re-routing rules are used. [KLS18] prove an analogous result about the re-routing cost of their algorithm. In the language of the following theorem statement, they show that α=τ+1τ1\alpha=\frac{\tau+1}{\tau-1} for the case β=1\beta=1. We improve on this factor by analyzing the interactions between ReRoute  and ConfigReRoute. Interestingly, analyzing each of ReRoute  and ConfigReRoute  separately would not yield any improvement over [KLS18] in the worst case, even with our richer set CC^{*}. It is only by using the properties of candidate configurations and analyzing sequences of calls to ReRoute  and ConfigReRoute that we get an improvement.

Theorem 5.3 (Re-Routing Cost).

Upon termination of PseudoApproximation, let SFS\subset F be a set of open facilities and β1\beta\geq 1 such that d(j,S)βL(j)d(j,S)\leq\beta L(\ell_{j}) for all jCj\in C^{*}. Then for all jCfullCj\in C_{full}\cup C^{*}, d(j,S)(2+α)L(j)d(j,S)\leq(2+\alpha)L(\ell_{j}), where α=max(β,1+1+βτ,τ3+2τ2+1τ31)\alpha=\max(\beta,1+\frac{1+\beta}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}).

We will need the following discretized version of the triangle inequality.

Proposition 5.4.

Let j,jCj,j^{\prime}\in C such that FjF_{j} and FjF_{j^{\prime}} intersect. Then d(j,j)L(j)+L(j)d(j,j^{\prime})\leq L(\ell_{j})+L(\ell_{j^{\prime}}).

Proof.

Let iFjFji\in F_{j}\cap F_{j^{\prime}}. Then using the triangle inequality we can bound:

d(j,j)d(j,i)+d(i,j)d(j,i)+d(i,j)L(j)+L(j).\displaystyle d(j,j^{\prime})\leq d(j,i)+d(i,j^{\prime})\leq d^{\prime}(j,i)+d^{\prime}(i,j^{\prime})\leq L(\ell_{j})+L(\ell_{j^{\prime}}).\qed
Refer to caption
Figure 2. A chain of balls in CC^{*}, where squares indicate facilities. First jj is removed from CC^{*} as part of candidate configuration (j,j)(j,j^{\prime}), so jj^{\prime} has strictly smaller radius than jj. Then j′′j^{\prime\prime} is added to CC^{*}, which has strictly smaller radius than jj^{\prime}. This gives jj a destination that is at least two radius levels smaller.

The next lemma analyzes the life-cycle of a client that enters CC^{*} at some point in PseudoApproximation. Our improvement over [KLS18] comes from this lemma.

Lemma 5.5.

Upon termination of PseudoApproximation, let SFS\subset F be a set of open facilities and β1\beta\geq 1 such that d(j,S)βL(j)d(j,S)\leq\beta L(\ell_{j}) for all jCj\in C^{*}. Suppose client jj is added to CC^{*} at radius level \ell during PseudoApproximation  (it may be removed later.) Then upon termination of PseudoApproximation, we have d(j,S)αL()d(j,S)\leq\alpha L(\ell), where α=max(β,1+1+βτ,τ3+2τ2+1τ31)\alpha=\max(\beta,1+\frac{1+\beta}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}).

Proof.

Consider a client jj added to CC^{*} with radius level \ell. If jj remains in CC^{*} until termination, the lemma holds for jj because αβ\alpha\geq\beta. Thus, consider the case where jj is later removed from CC^{*} in PseudoApproximation. Note that the only two operations that can possibly cause this removal are ReRoute  and ConfigReRoute. We prove the lemma by induction on =1,0,\ell=-1,0,\dots. If =1\ell=-1, then jj remains in CC^{*} until termination because it has the smallest possible radius level and both ReRoute  and ConfigReRoute  remove a client from CC^{*} only if there exists another client with strictly smaller radius level.

Similarly, if =0\ell=0, we note that ReRoute  removes a client from CC^{*} only if there exists another client with radius level at least two smaller, which is not possible for jj. Thus, if jj does not remain in CC^{*} until termination, there must exist some jj^{\prime} that is later added to CC^{*} with radius level at most 1=1\ell-1=-1 such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset. We know that jj^{\prime} remains in CC^{*} until termination since it is of the lowest radius level. Thus:

d(j,S)d(j,j)+d(j,S)L(0)+L(1)+βL(1)=L(0).d(j,S)\leq d(j,j^{\prime})+d(j^{\prime},S)\leq L(0)+L(-1)+\beta L(-1)=L(0).

Now consider >0\ell>0 where jj can possibly be removed from CC^{*} by either ReRoute  or ConfigReRoute. In the first case, jj is removed by ReRoute, so there exists jj^{\prime} that is added to CC^{*} such that j2\ell_{j^{\prime}}\leq\ell-2 and FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset. Applying the inductive hypothesis to jj^{\prime}, we can bound:

d(j,S)d(j,j)+d(j,S)L()+L(2)+αL(2)(1+1+ατ2)L().d(j,S)\leq d(j,j^{\prime})+d(j^{\prime},S)\leq L(\ell)+L(\ell-2)+\alpha L(\ell-2)\leq(1+\frac{1+\alpha}{\tau^{2}})L(\ell).

It is easy to verify by routine calculations that 1+1+ατ2α1+\frac{1+\alpha}{\tau^{2}}\leq\alpha given that ατ3+2τ2+1τ31\alpha\geq\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}.

For our final case, suppose jj is removed by ConfigReRoute. Then there exists jCj^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset and j1\ell_{j^{\prime}}\leq\ell-1. Further, |Fj|=2\lvert F_{j^{\prime}}\rvert=2. If jj^{\prime} remains in CC^{*} until termination, then:

d(j,S)d(j,j)L()+L(1)+βL(1)(1+1+βτ)L().d(j,S)\leq d(j,j^{\prime})\leq L(\ell)+L(\ell-1)+\beta L(\ell-1)\leq(1+\frac{1+\beta}{\tau})L(\ell).

Otherwise, jj^{\prime} is removed by ReRoute  at an even later time because some j′′j^{\prime\prime} is added to CC^{*} such that j′′j2\ell_{j^{\prime\prime}}\leq\ell_{j^{\prime}}-2 and FjFj′′F_{j^{\prime}}\cap F_{j^{\prime\prime}}\neq\emptyset. Applying the inductive hypothesis to j′′j^{\prime\prime}, we can bound:

d(j,S)d(j,j)+d(j,j′′)+d(j′′,S)(1+2τ+1+ατ3)L().d(j,S)\leq d(j,j^{\prime})+d(j^{\prime},j^{\prime\prime})+d(j^{\prime\prime},S)\leq(1+\frac{2}{\tau}+\frac{1+\alpha}{\tau^{3}})L(\ell).

where ατ3+2τ2+1τ31\alpha\geq\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1} implies 1+2τ+1+ατ3α1+\frac{2}{\tau}+\frac{1+\alpha}{\tau^{3}}\leq\alpha.

Now, we consider the case where jj^{\prime} is later removed by ConfigReRoute. To analyze this case, consider when jj was removed by ConfigReRoute. At this time, we have |Fj|=2\lvert F_{j^{\prime}}\rvert=2 by definition of Candidate Configuration. Because FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset, consider any facility iFjFji\in F_{j}\cap F_{j^{\prime}}. When jj is removed from CC^{*} by ConfigReRoute, we have that ii is in exactly two FF-balls for clients in CC^{*}, exactly FjF_{j} and FjF_{j^{\prime}}. However, after removing jj from CC^{*}, ii is only in one FF-ball for clients in CC^{*} - namely FjF_{j^{\prime}}.

Later, at the time jj^{\prime} is removed by ConfigReRoute, it must be the case that |Fj|=2\lvert F_{j^{\prime}}\rvert=2 still, so FjF_{j^{\prime}} is unchanged between the time that jj is removed and the time that jj^{\prime} is removed. Thus the facility ii that was previously in FjFjF_{j}\cap F_{j^{\prime}} must still be present in FjF_{j^{\prime}}. Then this facility must be in exactly two FF-balls for clients in CC^{*}, one of which is jj^{\prime}. It must be the case that the other FF-ball containing ii, say Fj′′F_{j^{\prime\prime}}, was added to CC^{*} between the removal of jj and jj^{\prime}.

Note that the only operation that adds clients to CC^{*} is ReRoute, so we consider the time between the removal of jj and jj^{\prime} when j′′j^{\prime\prime} is added to CC^{*}. Refer to Figure 2. At this time, we have jCj^{\prime}\in C^{*}, and FjFj′′F_{j^{\prime}}\cap F_{j^{\prime\prime}}\neq\emptyset because of the facility ii. Then it must be the case that j′′j^{\prime\prime} has strictly smaller radius level than jj^{\prime}, so j′′j12\ell_{j^{\prime\prime}}\leq\ell_{j^{\prime}}-1\leq\ell-2. To conclude the proof, we note that FjFj′′F_{j}\cap F_{j^{\prime\prime}}\neq\emptyset due to the facility ii, and apply the inductive hypothesis to j′′j^{\prime\prime}:

d(j,S)d(j,j′′)+d(j′′,S)(1+1+ατ2)L(,)d(j,S)\leq d(j,j^{\prime\prime})+d(j^{\prime\prime},S)\leq(1+\frac{1+\alpha}{\tau^{2}})L(\ell,)

which is at most αL()\alpha L(\ell). ∎

Now using the above lemma, we can prove Theorem 5.3.

Proof of Theorem 5.3.

Consider any client jj that is in CfullCC_{full}\cup C^{*} upon termination of PseudoApproximation. It must be the case that ReRoute(j)\textsc{ReRoute}(j) was called at least once during PseudoApproximation. Consider the time of the last such call to ReRoute(j)\textsc{ReRoute}(j). If jj is added to CC^{*} at this time, note that its radius level from now until termination remains unchanged, so applying Lemma 5.5 gives that d(j,S)αL(j)d(j,S)\leq\alpha L(\ell_{j}), as required. Otherwise, if jj is not added to CC^{*} at this time, then there must exist some jCj^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset and jj\ell_{j^{\prime}}\leq\ell_{j}. Then applying Lemma 5.5 to jj^{\prime}, we have:

d(j,S)d(j,j)+d(j,S)L(j)+L(j)+αL(j)(2+α)L(j).\displaystyle d(j,S)\leq d(j,j^{\prime})+d(j^{\prime},S)\leq L(\ell_{j})+L(\ell_{j^{\prime}})+\alpha L(\ell_{j^{\prime}})\leq(2+\alpha)L(\ell_{j}).\qed

5.2. Putting it all Together: Pseudo-Approximation for GKM

In this section, we prove Theorem 5.1. In particular, we use the output of PseudoApproximation  to construct a setting of the xx-variables with the desired properties.

Proof of Theorem 5.1.

Given as input an instance \mathcal{I} of GKM, our algorithm is first to run the algorithm guaranteed by Lemma 2.8 to construct LPiterLP_{iter} from LP1LP_{1} such that 𝔼[Opt(LPiter)]τ1logeτOpt()\mathbb{E}[Opt(LP_{iter})]\leq\frac{\tau-1}{\log_{e}\tau}Opt(\mathcal{I}) and LPiterLP_{iter} satisfies all Basic Invariants. Note that we will choose τ>1\tau>1 later to optimize our final approximation ratio. Then we run PseudoApproximation  on LPiterLP_{iter}, which satisfies all Basic Invariants, so by Theorem 5.2, PseudoApproximation  outputs in polynomial time LPiterLP_{iter} along with an optimal solution y¯\bar{y} with O(r)O(r) fractional variables.

Given y¯\bar{y}, we define a setting x¯\bar{x} for the xx-variables: for all jCpartj\in C_{part}, connect jj to all facilities in FjF_{j} by setting x¯ij=y¯i\bar{x}_{ij}=\bar{y}_{i} for all iFji\in F_{j}. For all jCj\in C^{*}, we have y¯(Fj)=1\bar{y}(F_{j})=1, so connect jj to all facilities in FjF_{j}. Finally, to connect every jCfullj\in C_{full} to one unit of open facilities, we use the following modification of Theorem 5.3:

Proposition 5.6.

When PseudoApproximation terminates, for all jCfullCj\in C_{full}\cup C^{*}, there exists one unit of open facilities with respect to y¯\bar{y} within distance (2+α)L(j)(2+\alpha)L(\ell_{j}) of jj, where α=max(1,1+2τ,τ3+2τ2+1τ31)\alpha=\max(1,1+\frac{2}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}).

The proof of the above proposition is analogous to that of Theorem 5.3 in the case β=1\beta=1, so we omit it. To see this, note that for all jCj\in C^{*}, we have y¯(Fj)=1\bar{y}(F_{j})=1. This implies that each jCj\in C^{*} has one unit of fractional facility within distance L(j)L(\ell_{j}). Following an analogous inductive argument as in Lemma 5.5 gives the desired result.

By routine calculations, it is easy to see that α=τ3+2τ2+1τ31\alpha=\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1} for all τ>1\tau>1. Now, for all jCfullj\in C_{full}, we connect jj to all facilities in BjB_{j}. We want to connect jj to one unit of open facilities, so to find the remaining 1y¯(Bj)1-\bar{y}(B_{j}) units, we connect jj to an arbitrary 1y¯(Bj)1-\bar{y}(B_{j}) units of open facilities within distance (2+α)L(j)(2+\alpha)L(\ell_{j}) of jj, whose existence is guaranteed by Proposition 5.6. This completes the description of x¯\bar{x}.

It is easy to verify that (x¯,y¯)(\bar{x},\bar{y}) is feasible for LP1LP_{1}, because y¯\bar{y} satisfies all knapsack constraints, and every client’s contribution to the coverage constraints in LP1LP_{1} is exactly its contribution in LPiterLP_{iter}. Thus it remains to bound the cost of this solution. We claim that LP1(x¯,y¯)(2+α)Opt(LPiter)LP_{1}(\bar{x},\bar{y})\leq(2+\alpha)Opt(LP_{iter}), because each client in CpartC_{part} and CC^{*} contributes the same amount to LP1LP_{1} and LPiterLP_{iter} (up to discretization), and each client jCfullj\in C_{full} has connection cost at most 2+α2+\alpha times its contribution to LPiterLP_{iter}.

In conclusion, the expect cost of the solution (x¯,y¯)(\bar{x},\bar{y}) to LP1LP_{1} is at most:

(2+α)𝔼[Opt(LPiter)]τ1logeτ(2+τ3+2τ2+1τ31)Opt().(2+\alpha)\,\mathbb{E}[Opt(LP_{iter})]\leq\frac{\tau-1}{\log_{e}\tau}\left(2+\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}\right)\;Opt(\mathcal{I}).

Choosing τ>1\tau>1 to minimize τ1logeτ(2+τ3+2τ2+1τ31)\frac{\tau-1}{\log_{e}\tau}(2+\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}) gives τ=2.046\tau=2.046 and τ1logeτ(2+τ3+2τ2+1τ31)=6.387\frac{\tau-1}{\log_{e}\tau}(2+\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1})=6.387. ∎

6. From Pseudo-Approximation to Approximation

In this section, we leverage the pseudo-approximation algorithm for GKM defined in Section 5 to construct improved approximation algorithms for two special cases of GKM: knapsack median and kk-median with outliers.

Recall that knapsack median is an instance of GKM with a single arbitrary knapsack constraint and a single coverage constraint that states we must serve every client in CC. Similarly, kk-median with outiers is an instance of GKM with a single knapsack constraint, stating that we can open at most kk facilities, and a single coverage constraint, stating that we must serve at least mm clients. Note that both special cases have r=2r=2.

Our main results for these two problems are given by the following theorems:

Theorem 6.1 (Approximation Algorithm for Knapsack Median).

There exists a polynomial time randomized algorithm that takes as input an instance \mathcal{I} of knapsack median and parameter ϵ(0,1/2)\epsilon\in(0,1/2) and in time nO(1/ϵ)n^{O(1/\epsilon)}, outputs a feasible solution to \mathcal{I} of expected cost at most (6.387+ϵ)Opt()(6.387+\epsilon)Opt(\mathcal{I}).

Theorem 6.2 (Approximation Algorithm for kk-Median with Outliers).

There exists a polynomial time randomized algorithm that takes as input an instance \mathcal{I} of kk-median with outliers and parameter ϵ(0,1/2)\epsilon\in(0,1/2) and in time nO(1/ϵ)n^{O(1/\epsilon)}, outputs a feasible solution to \mathcal{I} of expected cost at most (6.994+ϵ)Opt()(6.994+\epsilon)Opt(\mathcal{I}).

6.1. Overview

The centerpiece for both of our approximation algorithms is the pseudo-approximation algorithm PseudoApproximation  for GKM. For both of these special cases, we can obtain via PseudoApproximation  a solution to LPiterLP_{iter} with only O(1)O(1) fractional facilities and bounded re-routing cost. Now our remaining task is to turn this solution with O(1)O(1) fractional facilities into an integral one.

Unfortunately, the basic LP relaxations for knapsack median and kk-median with outliers have an unbounded integrality gap. To overcome this bad integrality gap, we use known sparsification tools to pre-process the given instance. Our main technical contribution in this section is a post-processing algorithm that rounds the final O(1)O(1) fractional variables at a small cost increase for the special cases of knapsack median and kk-median with outliers.

Thus our approximation algorithms for knapsack median and kk-median with outliers consist of a known pre-processing algorithm [KLS18], our new pseudo-approximation algorithm, and our new post-processing algorithm.

6.2. Approximation Algorithm for Knapsack Median

To illustrate our approach, we give the pre- and post-processing algorithms for knapsack median, which is the simpler of the two variants. Our pre-processing instance modifies the data of the input instance, so the next definition is useful to specify the input instance and pre-processed instance.

Definition 6.3 (Instance of Knapsack Median).

An instance of knapsack median is of the form =(F,C,d,w,B)\mathcal{I}=(F,C,d,w,B), where FF is a set of facilities, CC is a set of clients, dd is a metric on FCF\cup C, w+Fw\in\mathbb{R}_{+}^{F} is the weights of the facilities, and B0B\geq 0 is the budget.

Note that for knapsack median, the two side constraints in LPiterLP_{iter} are the knapsack constraint, iFwiyiB\sum\limits_{i\in F}w_{i}y_{i}\leq B, and the coverage constraint, jCparty(Fj)|C||CfullC|\sum\limits_{j\in C_{part}}y(F_{j})\geq\lvert C\rvert-\lvert C_{full}\cup C^{*}\rvert.

We utilize the same pre-processing as in [KLS18]. Roughly speaking, given a knapsack median instance \mathcal{I}, we first handle the expensive parts of the optimal solution using enumeration. Once we pre-open the facilities and decide what clients should be assigned there for this expensive part of the instance, we are left with a sub-instance, say \mathcal{I}^{\prime}. In \mathcal{I}^{\prime}, our goal is to open some more facilities to serve the remaining clients.

Roughly speaking, \mathcal{I}^{\prime} is the “cheap” part of the input instance. Thus, when we construct LPiterLP_{iter} for this sub-instance, we initialize additional invariants which we call our Extra Invariants.

To state our Extra Invariants, we need to define the PP-ball centered at pp with radius rr for any PFCP\subset F\cup C, pFCp\in F\cup C, and r0r\geq 0, which is the set:

BP(p,r)={qPd(p,q)r}.B_{P}(p,r)=\{q\in P\mid d(p,q)\leq r\}.
Definition 6.4 (Extra Invariants for Knapsack Median).

Let ρ,δ(0,1/2)\rho,\delta\in(0,1/2), U0U\geq 0, S0FS_{0}\subset F, and R+CR\in\mathbb{R}_{+}^{C} be given. Then we call the following properties our Extra Invariants:

  1. (1)

    For all iS0i\in S_{0}, there exists a dummy client j(i)Cj(i)\in C^{*} such that Fj(i)={iFi collocated with i}F_{j(i)}=\{i^{\prime}\in F\mid i^{\prime}\text{ collocated with $i$}\} with radius level j(i)=1\ell_{j(i)}=-1. We let C0CC_{0}\subset C be the collection of these dummy clients.

  2. (2)

    For all iFi\in F that is not collocated with some iS0i^{\prime}\in S_{0}, we have jiFjd(i,j)2ρU\sum\limits_{j\mid i\in F_{j}}d(i,j)\leq 2\rho U

  3. (3)

    For all jCj\in C, we have L(j)τRjL(\ell_{j})\leq\tau R_{j}

  4. (4)

    For all jCj\in C and rRjr\leq R_{j}, we have: |BC(j,δr)|rρU.\lvert B_{C}(j,\delta r)\rvert r\leq\rho U.

Extra Invariant 6.4(1) guarantees that we open the set of guessed facilities S0S_{0} in our final solution. Then for all non-guessed facilities, so the set FS0F\setminus S_{0}, Extra Invariant 6.4(2) captures the idea that these facilities are “cheap.” Taken together, Extra Invariants 6.4(3) and 6.4(4) capture the idea that all remaining clients are “cheap.”

The next theorem describes our pre-processing algorithm for knapsack median, which is a convenient re-packaging of the pre-processing used in [KLS18]. The theorem essentially states that given ρ,δ\rho,\delta, and UU, we can efficiently guess a set CCC\setminus C^{\prime} of clients and S0S_{0} of facilities that capture the expensive part of the input instance \mathcal{I}. Then when we construct LPiterLP_{iter} for the cheap sub-instance, we can obtain the Extra Invariants, and the cost of extending a solution of the sub-instance to the whole instance is bounded with respect to UU, which one should imagine is Opt()Opt(\mathcal{I}).

Theorem 6.5 (Pre-Processing for Knapsack Median).

Let =(F,C,d,w,B)\mathcal{I}=(F,C,d,w,B) be an instance of knapsack median. Then, given as input instance \mathcal{I}, parameters ρ,δ(0,1/2)\rho,\delta\in(0,1/2), and an upper bound UU on Opt()Opt(\mathcal{I}), there exists an algorithm that runs in time nO(1/ρ)n^{O(1/\rho)} and outputs nO(1/ρ)n^{O(1/\rho)}-many sub-instances of the form =(F,CC,d,w,B)\mathcal{I}^{\prime}=(F,C^{\prime}\subset C,d,w,B) along with the data for LPiterLP_{iter} on \mathcal{I}^{\prime}, a set of facilities S0FS_{0}\subset F, and a vector R+CR\in\mathbb{R}_{+}^{C^{\prime}} such that:

  1. (1)

    LPiterLP_{iter} satisfies all Basic and Extra Invariants

  2. (2)

    logeττ1𝔼[Opt(LPiter)]+1δ1+δjCCd(j,S0)U\frac{\log_{e}\tau}{\tau-1}\mathbb{E}[Opt(LP_{iter})]+\frac{1-\delta}{1+\delta}\sum\limits_{j\in C\setminus C^{\prime}}d(j,S_{0})\leq U

The proof is implicit in [KLS18]. For completeness, we prove the analogous theorem for kk-median with outliers, 6.13, in §F.

We will show that if LPiterLP_{iter} satisfies the Extra Invariants for knapsack median, then we can give a post-processing algorithm with bounded cost. It is not difficult to see that PseudoApproximation  maintains the Extra Invariants as well, so we use the Extra Invariants in our post-processing.

Proposition 6.6.

PseudoApproximation  maintains all Extra Invariants for knapsack median.

Now we move on to describing our post-processing algorithm. Suppose we run the pre-processing algorithm guaranteed by Theorem 6.5 to obtain LPiterLP_{iter} satisfying all Basic- and Extra Invariants. Then we can run PseudoApproximation  to obtain an optimal extreme point of LPiterLP_{iter} with O(1)O(1) fractional facilities, and LPiterLP_{iter} still satisfies all Basic- and Extra Invariants.

It turns out, to round these O(1)O(1) fractional facilities, it suffices to open one facility in each FF-ball for clients in CC^{*}. Then we can apply Theorem 5.3 to bound the re-routing cost. The main difficulty in this approach is that we must also round some fractional facilities down to zero to maintain the knapsack constraint.

Note that closing a facility can incur an unbounded multiplicative cost in the objective. To see this, consider a fractional facility ii that is almost open, so y¯i1\bar{y}_{i}\sim 1. Then suppose there exists jCfullj\in C_{full} such that iBji\in B_{j} and d(j,i)L(j)d(j,i)\ll L(\ell_{j}). Then jj’s contribution to the objective of LPiterLP_{iter} is d(j,i)\sim d(j,i). However, if we close ii, then jj’s contribution increases to L(j)d(j,i)L(\ell_{j})\gg d(j,i).

To bound the cost of closing facilities, we use the Extra Invariants. In particular, we use the next technical lemma, which states that if we want to close down a facility ii, and every client jj that connects to ii has a back-up facility to go to within distance O(1)L(j)O(1)L(\ell_{j}), then closing ii incurs only a small increase in cost. For proof, see §C.

Lemma 6.7.

Suppose LPiterLP_{iter} satisfies all Basic and Extra Invariants for knapsack median, and let SFS\subset F and α1\alpha\geq 1. Further, consider a facility iSS0i\notin S\cup S_{0} and set of clients CCC^{\prime}\subset C such that for all jCj\in C^{\prime}, we have iFji\in F_{j} and there exists some facility in SS within distance αL(j)\alpha L(\ell_{j}) of jj. Then jCd(j,S)=O(ρδ)U\sum\limits_{j\in C^{\prime}}d(j,S)=O(\frac{\rho}{\delta})U.

By the next proposition, rounding a facility up to one does not incur any cost increase, because every client must be fully connected.

Proposition 6.8.

Upon termination of PseudoApproximation  on a knapsack median instance, we have Cpart=C_{part}=\emptyset.

Proof.

We observe that the single coverage constraint in LPiterLP_{iter} for a knapsack median instance is of the form:

jCparty(Fj)|C||CfullC|=|Cpart|\sum\limits_{j\in C_{part}}y(F_{j})\geq\lvert C\rvert-\lvert C_{full}\cup C^{*}\rvert=\lvert C_{part}\rvert

, where we use the fact that CpartC_{part}, CfullC_{full}, and CC^{*} partition CC due to Basic Invariant 2.4(1). Combining this with the constraint y(Fj)1y(F_{j})\leq 1 for all jCpartj\in C_{part} gives that y(Fj)=1y(F_{j})=1 for all jCpartj\in C_{part} for any feasible solution to LPiterLP_{iter}. By assumption, no CpartC_{part}-constraint is tight upon termination of PseudoApproximation, so the proposition follows. ∎

To summarize, the goal of our post-processing algorithm is to find an integral setting of the O(1)O(1) fractional facilities in the output of PseudoApproximation  such that the knapsack constraint is satisfied and there is an open facility in each FF-ball for clients in CC^{*}.

Lemma 6.9.

Upon termination of PseudoApproximation  on a knapsack median instance, let y¯\bar{y} be the outputted extreme point of LPiterLP_{iter}, and suppose LPiterLP_{iter} satisfies all Basic- and Extra Invariants. Then there exists an integral setting of the fractional facilities such that the knapsack constraint is satisfied, there is an open facility in each FF-ball for clients in CC^{*}, and every facility in S0S_{0} is open.

Proof.

Consider the following LP:

𝒫=miny{iFwiyiy(Fj)=1jC,yi=1iF=1,y[0,1]F}\mathcal{LP}=\min\limits_{y}\{\sum\limits_{i\in F}w_{i}y_{i}\mid y(F_{j})=1\quad\forall j\in C^{*},\,y_{i}=1\quad\forall i\in F_{=1},\,y\in[0,1]^{F}\}

The first constraint states that we want one open facility in each FF-ball for clients in CC^{*}, and the second states that our solution should agree on the integral facilities in y¯\bar{y}.

Because LPiterLP_{iter} satisfies all Basic Invariants, the intersection graph of {FjjC}\{F_{j}\mid j\in C^{*}\} is bipartite by Proposition 2.6. Then the feasible region of 𝒫\mathcal{LP} is a face of the intersection of two partition matroids (each side of the biparitition of {FjjC}\{F_{j}\mid j\in C^{*}\} defines one parititon matroid), and thus 𝒫\mathcal{LP} is integral.

To conclude the proof, we observe that y¯\bar{y} is feasible for 𝒫\mathcal{LP}, so Opt(𝒫)iFwiy¯iBOpt(\mathcal{LP})\leq\sum\limits_{i\in F}w_{i}\bar{y}_{i}\leq B. Thus there exists an integral setting of facilities that opens one facility in each FF-bal for all clients in CC^{*}, agrees with all of y¯\bar{y}’s integral facilities, and has total weight at most BB. Finally, by Extra Invariant 6.4(1), C0CC_{0}\subset C^{*}, so we open every facility in S0S_{0}. ∎

Thus, in light of Lemma 6.9, our post-processing algorithm is to enumerate over all integral settings of the fractional variables to find one that satisfies the knapsack constraint, opens one facility in each FF-ball for clients in CC^{*}, and opens S0S_{0}. Combining our post-processing algorithm with PseudoApproximation  gives the following theorem.

Theorem 6.10.

There exists a polynomial time algorithm that takes as input LPiterLP_{iter} for knapsack median instance \mathcal{I} satisfying all Basic- and Extra Invariants and outputs a feasible solution to \mathcal{I} such that the solution opens all facilities in S0S_{0} and has cost at most (2+α)Opt(LPiter)+O(ρ/δ)U(2+\alpha)Opt(LP_{iter})+O(\rho/\delta)U, where α=τ3+2τ2+1τ31\alpha=\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}.

Proof.

Our algorithm is to run PseudoApproximation  on LPiterLP_{iter} and then run our post-processing algorithm, which is to enumerate over all integral settings of the fractional variables, and then output the feasible solution that opens S0S_{0} of lowest cost (if such a solution exists.)

Let y¯\bar{y} be the optimal extreme point of LPiterLP_{iter} output by PseudoApproximation, which has O(1)O(1) fractional variables by 5.2. Because y¯\bar{y} has O(1)O(1) fractional variables, our post-processing algorithm is clearly efficient, which establishes the runtime of our overall algorithm.

Note that upon termination, LPiterLP_{iter} still satisfies all Basic- and Extra Invariants. Then by Lemma 6.9, there exists an integral setting of the fractional variables that is feasible, opens S0S_{0}, and opens a facility in each FF-ball for clients in CC^{*}. It suffices to bound the cost of this solution. Let SFS\subset F denote the facilities opened by this integral solution, so d(j,S)L(j)d(j,S)\leq L(\ell_{j}) for all jCj\in C^{*}. Applying Lemma 5.3 with β=1\beta=1, we obtain that d(j,S)(2+α)L(j)d(j,S)\leq(2+\alpha)L(\ell_{j}) for all jCfullCj\in C_{full}\cup C^{*}, where α=max(1,1+2τ,τ3+2τ2+1τ31)\alpha=\max(1,1+\frac{2}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}). It is easy to check that α=τ3+2τ2+1τ31\alpha=\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1} for all τ>1\tau>1.

To bound the cost of the solution SS relative to Opt(LPiter)Opt(LP_{iter}), we must bound the cost of closing the O(1)O(1)-many facilities in F<1SF_{<1}\setminus S. We recall that by Proposition 6.8, we have C=CfullCC=C_{full}\cup C^{*}, so all clients must be fully connected in LPiterLP_{iter}.

First we consider any client jCj\in C that is not supported on any facility in F<1SF_{<1}\setminus S. Such a client is not affected by closing F<1SF_{<1}\setminus S, so if FjF_{j} is empty, then d(j,S)(2+α)L(j)d(j,S)\leq(2+\alpha)L(\ell_{j}), which is at most (2+α)(2+\alpha) times jj’s contribution to LPiterLP_{iter}. Otherwise, FjF_{j} contains an integral facility in SS to connect to, so d(j,S)d(j,S) is at most jj’s contribution to LPiterLP_{iter}.

It remains to consider the clients whose FF-balls contain a facility in F<1SF_{<1}\setminus S. Because there are only O(1)O(1)-many facilities in F<1SF_{<1}\setminus S, it suffices to show that for each iF<1Si\in F_{<1}\setminus S, the additive cost of connecting all clients supported on ii is at most O(ρ/δ)UO(\rho/\delta)U. Here we apply Lemma 6.7 to the set of clients C={jCiFj}C^{\prime}=\{j\in C\mid i\in F_{j}\} to obtain jCd(j,S)=O(ρ/δ)U\sum\limits_{j\in C^{\prime}}d(j,S)=O(\rho/\delta)U.

To summarize, the cost of connecting the clients not supported on F<1SF_{<1}\setminus S is at most (2+α)Opt(LPiter)(2+\alpha)Opt(LP_{iter}), and the cost of the remaining clients is O(ρ/δ)UO(\rho/\delta)U, as required. ∎

Now our complete approximation for knapsack median follows from combining the pre-processing with the above theorem and tuning parameters.

Proof of Theorem 6.1.

Let ϵ>0\epsilon^{\prime}>0. We will later choose ϵ\epsilon^{\prime} with respect to the given ϵ\epsilon to obtain the desired approximation ratio and runtime. First, we choose parameters ρ,δ(0,1/2)\rho,\delta\in(0,1/2) and U0U\geq 0 for our pre-processing algorithm guaranteed by Theorem 6.5. We take ρ=ϵ2\rho={\epsilon^{\prime}}^{2} and δ=ϵ\delta=\epsilon^{\prime}. We require that UU is an upper bound on Opt()Opt(\mathcal{I}). Using a standard binary search idea, we can guess Opt()Opt(\mathcal{I}) up to a multiplicative (1+ϵ)(1+\epsilon^{\prime})-factor in time nO(1/ϵ)n^{O(1/\epsilon^{\prime})}, so we guess UU such that Opt()U(1+ϵ)Opt()Opt(\mathcal{I})\leq U\leq(1+\epsilon^{\prime})Opt(\mathcal{I}).

With these choices of parameters, we run the algorithm guaranteed by Theorem 6.5 to obtain nO(1/ϵ)n^{O(1/\epsilon^{\prime})} many sub-instances such that one such sub-instance is of the form =(F,CC,d,w,B)\mathcal{I}^{\prime}=(F,C^{\prime}\subset C,d,w,B), where LPiterLP_{iter} for \mathcal{I}^{\prime} satisfies all Basic- and Extra Invariants, and we have:

(1) logeττ1𝔼[Opt(LPiter)]+1ϵ1+ϵjCCd(j,S0)U\frac{\log_{e}\tau}{\tau-1}\mathbb{E}[Opt(LP_{iter})]+\frac{1-\epsilon^{\prime}}{1+\epsilon^{\prime}}\sum\limits_{j\in C\setminus C^{\prime}}d(j,S_{0})\leq U

Then for each sub-instance output by the pre-processing, we run the algorithm guaranteed by Theorem 6.10 to obtain a solution to each sub-instance. Finally, out of these solutions, we output the one that is feasible for the whole instance with smallest cost. This completes the description of our approximation algorithm for knapsack median. The runtime is nO(1/ϵ)n^{O(1/\epsilon^{\prime})}, so it remains to bound the cost of the output solution and to choose the parameters ϵ\epsilon^{\prime} and τ\tau.

To bound the cost, it suffices to consider the solution output on the instance \mathcal{I}^{\prime} where LPiterLP_{iter} satisfies all Basic- and Extra Invariants and Equation 1. By running the algorithm guaranteed by Theorem 6.10 on this LPiterLP_{iter}, we obtain a feasible solution SFS\subset F to \mathcal{I}^{\prime} such that S0SS_{0}\subset S, and the cost of connecting CC^{\prime} to SS is at most (2+α)Opt(LPiter)+O(ϵ)U(2+\alpha)Opt(LP_{iter})+O(\epsilon^{\prime})U, where α=τ3+2τ2+1τ31\alpha=\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}. To extend this solution on the sub-instance to a solution on the whole instance \mathcal{I}, we must connect CCC\setminus C^{\prime} to SS. Because S0SS_{0}\subset S, applying Equation 1 allows us to upper bound the expected cost of connecting CC to SS by:

(2+α)𝔼[Opt(LPiter)]+O(ϵ)U+jCCd(j,S0)(2+α)τ1logeτ1+ϵ1ϵU+O(ϵ)U.(2+\alpha)\mathbb{E}[Opt(LP_{iter})]+O(\epsilon^{\prime})U+\sum\limits_{j\in C\setminus C^{\prime}}d(j,S_{0})\leq(2+\alpha)\frac{\tau-1}{\log_{e}\tau}\frac{1+\epsilon^{\prime}}{1-\epsilon^{\prime}}U+O(\epsilon^{\prime})U.

Now choosing τ>1\tau>1 to minimize (2+τ3+2τ2+1τ31)τ1logeτ(2+\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1})\frac{\tau-1}{\log_{e}\tau} gives τ=2.046\tau=2.046 and τ1logeτ(2+τ3+2τ2+1τ31)=6.387\frac{\tau-1}{\log_{e}\tau}(2+\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1})=6.387. Thus the expected cost of this solution is at most 6.3871+ϵ1ϵU+O(ϵ)U6.387\frac{1+\epsilon^{\prime}}{1-\epsilon^{\prime}}U+O(\epsilon^{\prime})U, where U(1+ϵ)Opt()U\leq(1+\epsilon^{\prime})Opt(\mathcal{I}). Finally, by routine calculations, we can choose ϵ=θ(ϵ)\epsilon^{\prime}=\theta(\epsilon) so that expected cost is at most (6.387+ϵ)Opt()(6.387+\epsilon)Opt(\mathcal{I}), as required. Note that the runtime of our algorithm is nO(1/ϵ)=nO(1/ϵ)n^{O(1/\epsilon^{\prime})}=n^{O(1/\epsilon)}. ∎

6.3. Approximation Algorithm for kk-Median with Outliers

Our approximation algorithm for kk-median with outliers follows the same general steps as our algorithm for knapsack median. We state the analogous Extra Invariants for kk-median with outliers and pre-processing algorithm here. The only differences between the Extra Invariants for knapsack median and kk-median with outliers is in the final Extra Invariant.

Definition 6.11 (Instance of kk-Median with Outliers).

An instance of kk-median with outliers is of the form =(F,C,d,k,m)\mathcal{I}=(F,C,d,k,m), where FF is a set of facilities, CC is a set of clients, dd is a metric on FCF\cup C, kk is the number of facilities to open, and mm is the number of clients to serve.

Note that for kk-median with outliers, the two side constraints in LPiterLP_{iter} are the knapsack constraint, y(F)ky(F)\leq k, and the coverage constraint, jCparty(Fj)m|CfullC|\sum\limits_{j\in C_{part}}y(F_{j})\geq m-\lvert C_{full}\cup C^{*}\rvert.

Definition 6.12 (Extra Invariants for kk-Median with Outliers).

Let ρ,δ(0,1/2)\rho,\delta\in(0,1/2), U0U\geq 0, S0FS_{0}\subset F, and R+CR\in\mathbb{R}_{+}^{C} be given. Then we call the following properties our Extra Invariants:

  1. (1)

    For all iS0i\in S_{0}, there exists a dummy client j(i)Cj(i)\in C^{*} such that Fj(i)={iFi colocated with i}F_{j(i)}=\{i^{\prime}\in F\mid i^{\prime}\text{ colocated with $i$}\} with radius level j(i)=1\ell_{j(i)}=-1. We let C0CC_{0}\subset C be the collection of these dummy clients.

  2. (2)

    For all iFi\in F that is not collocated with some iS0i^{\prime}\in S_{0}, we have jiFjd(i,j)ρ(1+δ)U\sum\limits_{j\mid i\in F_{j}}d(i,j)\leq\rho(1+\delta)U

  3. (3)

    For all jCj\in C, we have L(j)τRjL(\ell_{j})\leq\tau R_{j}

  4. (4)

    For every t>0t>0 and pFCp\in F\cup C, we have:

    |{jBC(p,δt4+3δ)Rjt}|ρ(1+3δ/4)1δ/4Ut.\lvert\{j\in B_{C}(p,\frac{\delta t}{4+3\delta})\mid R_{j}\geq t\}\rvert\leq\frac{\rho(1+3\delta/4)}{1-\delta/4}\frac{U}{t}.

Again, the pre-processing of [KLS18] gives the next theorem. For proof, see §F.

Theorem 6.13 (Pre-Processing for kk-Median with Outliers).

Let =(F,C,d,k,m)\mathcal{I}=(F,C,d,k,m) be an instance of kk-median with outliers with optimal solution (S,C)(S^{*},C^{*}). Then, given as input instance \mathcal{I}, parameters ρ,δ(0,1/2)\rho,\delta\in(0,1/2), and an upper bound UU on Opt()Opt(\mathcal{I}), there exists an algorithm that runs in time nO(1/ρ)n^{O(1/\rho)} and outputs nO(1/ρ)n^{O(1/\rho)}-many sub-instances of the form =(F,CC,d,k,m=m|CC|)\mathcal{I}^{\prime}=(F,C^{\prime}\subset C,d,k,m^{\prime}=m-\lvert C^{*}\setminus C^{\prime}\rvert) along with the data for LPiterLP_{iter} on \mathcal{I}^{\prime}, a set of facilities S0FS_{0}\subset F, and a vector R+CR\in\mathbb{R}_{+}^{C^{\prime}} such that:

  1. (1)

    LPiterLP_{iter}^{\prime} satisfies all Basic and Extra Invariants

  2. (2)

    logeτ(τ1)(1+δ/2)𝔼[Opt(LPiter)]+1δ1+δjCCd(j,S0)U\frac{\log_{e}\tau}{(\tau-1)(1+\delta/2)}\mathbb{E}[Opt(LP_{iter})]+\frac{1-\delta}{1+\delta}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})\leq U

It is easy to check that PseudoApproximation  maintains all Extra Invariants for kk-median with outliers as well, and we have an analogous technical lemma to bound the cost of closing facilities. For proof of the lemma, see §C.

Proposition 6.14.

PseudoApproximation  maintains all Extra Invariants for kk-median with outliers.

Lemma 6.15.

Suppose LPiterLP_{iter} satisfies all Basic and Extra Invariants for kk-median with outliers, and let SFS\subset F and α1\alpha\geq 1. Further, consider a facility iSS0i\notin S\cup S_{0} and set of clients CCC^{\prime}\subset C such that for all jCj\in C^{\prime}, we have iFji\in F_{j} and there exists some facility in SS within distance αL(j)\alpha L(\ell_{j}) of jj. Then jCd(j,S)=O(ρδ)U\sum\limits_{j\in C^{\prime}}d(j,S)=O(\frac{\rho}{\delta})U.

Now we focus on the main difference between the two algorithms: the post-processing. In particular, the coverage constraint of kk-median with outliers introduces two difficulties in rounding the final O(1)O(1) fractional facilities: (a) we are no longer guaranteed that Cpart=C_{part}=\emptyset, and (b) we must satisfy the coverage constraint.

The difficulty with (a) is that now rounding a facility up to one can also incur an unbounded multiplicative cost in the objective. To see this, consider a fractional facility ii that is almost closed, so y¯i0\bar{y}_{i}\sim 0. Consider rounding this facility up to one. Then for a client jCpartj\in C_{part} that fractionally connects to ii in the solution y¯\bar{y}, if we fully connect jj to ii, this costs d(j,i)d(j,i)y¯id(j,i)\gg d(j,i)\bar{y}_{i}. The solution here is to use Extra Invariant 6.12(2) to bound the additive cost of opening facilities.

The more troublesome issue is (b). Note that the same approach that we used to prove that there exists a good integral setting of the O(1)O(1) fractional variables in 6.9 does not work here because putting the coverage constraint in the objective of the LP could result in a solution covering the same client multiple times. Our solution to (b) is a more sophisticated post-processing algorithm that first re-routes clients in CpartC_{part}. After re-routing, we carefully pick facilities to open that do not double-cover any remaining CpartC_{part}-clients. We defer the details of our post-processing algorithm for §7. For now, we present the guarantees of our pseudo-approximation combined with post-processing:

Theorem 6.16.

There exists a polynomial time algorithm that takes as input LPiterLP_{iter} for kk-median with outliers instance \mathcal{I} satisfying all Basic- and Extra Invariants and outputs a feasible set of facilities SS0S\supset S_{0} such that the cost of connecting mm clients to SS is at most (2+α)Opt(LPiter)+O(ρ/δ)U(2+\alpha)Opt(LP_{iter})+O(\rho/\delta)U, where α=max(3+2τc,1+4+2τcτ,τ3+2τ2+1τ31)\alpha=\max(3+2\tau^{-c},1+\frac{4+2\tau^{-c}}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}) for any constant cc\in\mathbb{N}.

Combining the pre-processing of 6.13 with 6.16 and tuning parameters gives our final approximation algorithm for kk-median with outliers. The proof of 6.2 is analogous to 6.1, so we defer it to §C.

7. Post-Processing for kk-Median with Outliers

In this section we develop the post-processing algorithm for kk-median with outliers that is guaranteed by 6.16. The structure of our algorithm is recursive. First, we give a procedure to round at least one fractional facility or serve at least one client. Then we recurse on the remaining instance until we obtain an integral solution.

7.1. Computing Partial Solutions

In this section, we show how to round at least one fractional facility or serve at least one client. We interpret this algorithm as computing a partial solution to the given kk-median with outliers instance.

The main idea of this algorithm is to re-route clients in CpartC_{part}. In particular, we maintain a subset C¯C\bar{C}\subset C^{*} such that for every client in C¯\bar{C}, we guarantee to open an integral facility in their FF-ball. We also maintain a subset CcoveredCpartC_{covered}\subset C_{part} of CpartC_{part}-clients that we re-route; that is, we guarantee to serve them even if no open facility is in their FF-balls. Crucially, every client in CpartCcoveredC_{part}\setminus C_{covered} is supported on at most one FF-ball for clients in C¯\bar{C}. Thus, we do not have to worry about double-covering those clients when we round the facilities in F(C¯)F(\bar{C}).

The partial solution we output consists of one open facility for each client in C¯\bar{C} (along with the facilities that happen to be integral already), and we serve the clients in CfullC_{full}, CC^{*}, CcoveredC_{covered}, and the CpartC_{part}-clients supported on our open facilities. See Algorithm 5 (ComputePartial) for the formal algorithm to compute partial solutions. Note that cc\in\mathbb{N} is a parameter of ComputePartial.

Input: LPiterLP_{iter} and y¯\bar{y} output by PseudoApproximation  on a kk-median with outliers instance such that C<1C0C^{*}_{<1}\not\subset C_{0}
Output: Output a partial solution SFS\subset F and modify LPiterLP_{iter}
1 Initialize Ccovered=C_{covered}=\emptyset and C¯={jC<1FjS0=}\bar{C}=\{j\in C^{*}_{<1}\mid F_{j}\cap S_{0}=\emptyset\}
2 for all clients j¯C¯\bar{j}\in\bar{C} in increasing order of j¯\ell_{\bar{j}} do
3       For all jC¯j\in\bar{C} such that jj¯j\neq\bar{j} and FjFj¯F_{j}\cap F_{\bar{j}}\neq\emptyset, remove jj from C¯\bar{C}
4       while there exists a client jCpartCcoveredj^{\prime}\in C_{part}\setminus C_{covered} such that FjF_{j^{\prime}} intersects Fj¯F_{\bar{j}} and FjF_{j} for some other jC¯j\in\bar{C} do
5             if jj¯c\ell_{j^{\prime}}\leq\ell_{\bar{j}}-c then
6                   Remove jj from C¯\bar{C}
7                  
8            else
9                   Add jj^{\prime} to CcoveredC_{covered}
10                  
11For all iFi\in F, we define wi=|{jCpartCcoverediFj}|w_{i}=\lvert\{j\in C_{part}\setminus C_{covered}\mid i\in F_{j}\}\rvert
12 Construct the set S¯F(C¯)\bar{S}\subset F(\bar{C}) by greedily picking the facility iFji\in F_{j} with largest wiw_{i} for each jC¯j\in\bar{C}
13 Define the set Cpart(S¯)={jCpartFjS¯}C_{part}(\bar{S})=\{j\in C_{part}\mid F_{j}\cap\bar{S}\neq\emptyset\}
14 Define the partial set of facilities by S=(S¯F=1)S0S=(\bar{S}\cup F_{=1})\setminus S_{0} and the partial set of clients by C=Cpart(S¯)CcoveredCfull(CC0)C^{\prime}=C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup(C^{*}\setminus C_{0})
15 Update LPiterLP_{iter} by deleting SS and F(C¯)F(\bar{C}) from FF, deleting all clients in CC^{\prime} from CC, decrementing kk by |S|\lvert S\rvert, and decrementing mm by |C|\lvert C^{\prime}\rvert
16 Output the partial solution SS
Algorithm 5 ComputePartial

We note that to define a solution for kk-median with outliers, it suffices to specify the set of open facilities SS, because we can choose the clients to serve as the mm closest clients to SS. Thus when we output a partial solution, we only output the set of open facilities.

We summarize the performance of ComputePartial  with the next theorem, which we prove in §7.4. In the next section, we use 7.1 to define our recursive post-processing algorithm.

Theorem 7.1.

Let LPiterLP_{iter} and y¯\bar{y} be the input to ComputePartial. Then let SS be the partial solution output by ComputePartial  and LPiter1LP_{iter}^{1} be the modified LP. Then LPiter1LP_{iter}^{1} satisfies all Basic- and Extra Invariants and we have:

Opt(LPiter1)+12+αjCd(j,SS0)Opt(LPiter)+O(ρδ)U,Opt(LP_{iter}^{1})+\frac{1}{2+\alpha}\sum\limits_{j\in C^{\prime}}d(j,S\cup S_{0})\leq Opt(LP_{iter})+O(\frac{\rho}{\delta})U,

where α=max(3+2τc,1+4+2τcτ,τ3+2τ2+1τ31)\alpha=\max(3+2\tau^{-c},1+\frac{4+2\tau^{-c}}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}).

We want LPiter1LP_{iter}^{1} to satisfy all Basic- and Extra Invariants so we can continue recursing on LPiter1LP_{iter}^{1}. The second property of 7.1 allows us to extend a solution computed on LPiter1LP_{iter}^{1} with the partial solution SS.

7.2. Recursive Post-Processing Algorithm

To complete our post-processing algorithm, we recursively apply ComputePartial  until we have an integral solution.

The main idea is that we run PseudoApproximation  to obtain an optimal extreme point with O(1)O(1) fractional variables. Then using this setting of the yy-variables, we construct a partial solution consisting of some open facilities along with the clients that they serve. However, if there are still fractional facilities remaining, we recurse on LPiterLP_{iter} (after the modifications by ComputePartial.) Our final solution consists of the union of all recursively computed partial solutions. See Algorithm 6 (OutliersPostProcess.)

Input: LPiterLP_{iter} for a kk-median with outliers instance satisfying all Basic- and Extra Invariants
Output: Solution SFS\subset F
1 Run PseudoApproximation  to obtain extreme point y¯\bar{y} to LPiterLP_{iter}
2 if y¯\bar{y} is integral then
3       Output the solution F=1F_{=1}
4      
5else if C<1C0C^{*}_{<1}\subset C_{0} then
6       By 7.2, y¯\bar{y} has at most two fractional variables, say a,bFa,b\in F.
7       Without loss of generality, we may assume |{jCpartaFj}||{jCpartbFj}|\lvert\{j\in C_{part}\mid a\in F_{j}\}\rvert\geq\lvert\{j\in C_{part}\mid b\in F_{j}\}\rvert
8       Output the solution F=1{a}F_{=1}\cup\{a\}
9      
10else
11       Run ComputePartial  to obtain partial solution SS^{\prime} and update LPiterLP_{iter}
12       Run ComputePartial  on updated LPiterLP_{iter} to obtain partial solution S′′S^{\prime\prime}
13       Output solution SS′′S^{\prime}\cup S^{\prime\prime}
14      
Algorithm 6 OutliersPostProcess

For proof of the next lemma, see §D.

Lemma 7.2.

If C<1C0C^{*}_{<1}\subset C_{0}, then y¯\bar{y} has at most two fractional variables.

7.3. Analysis of OutliersPostProcess

In this section, we show that OutliersPostProcess  satisfies the guarantees of 6.16. All missing proofs can be found in §D. We let y¯\bar{y} be the output of PseudoApproximation  in the first line of OutliersPostProcess  and α=max(3+2τc,1+4+2τcτ,τ3+2τ2+1τ31)\alpha=\max(3+2\tau^{-c},1+\frac{4+2\tau^{-c}}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}). First, we handle the base cases of OutliersPostProcess.

The easiest base is when y¯\bar{y} is integral. Here, we do not need the Extra Invariants - all we need is that every client jCfullCj\in C_{full}\cup C^{*} has an open facility within distance (2+α)L(j)(2+\alpha)L(\ell_{j}).

Lemma 7.3.

If y¯\bar{y} is integral, then the output solution F=1F_{=1} is feasible, contains S0S_{0}, and connecting mm clients costs at most (2+α)Opt(LPiter)(2+\alpha)Opt(LP_{iter}).

Now, in the other base case, y¯\bar{y} is not integral, but we know that C<1C0C^{*}_{<1}\subset C_{0}. By 7.2, we may assume without loss of generality y¯\bar{y} has exactly two fractional facilities, say a,bF<1a,b\in F_{<1}. Further, we may assume that the kk-constraint is tight, because opening more facilities can only improve the objective value. It follows that y¯a+y¯b=1\bar{y}_{a}+\bar{y}_{b}=1. For the sake of analysis, we define the sets Cpart(a)={jCpartaFj}C_{part}(a)=\{j\in C_{part}\mid a\in F_{j}\} and Cpart(b)={jCpartbFj}C_{part}(b)=\{j\in C_{part}\mid b\in F_{j}\} where we may assume |Cpart(a)||Cpart(b)|\lvert C_{part}(a)\rvert\geq\lvert C_{part}(b)\rvert.

It remains to bound the cost of the solution F=1{a}F_{=1}\cup\{a\}. One should imagine that we obtain this solution from y¯\bar{y} by closing down the facility bb and opening up aa. First we handle the degenerate case where aS0a\in S_{0}. In this case, aa and bb must both be co-located copies of a facility in S0S_{0}, so opening one or the other does not change the cost. Thus, we may assume without loss of generality that aS0a\notin S_{0}. Here, we need to Extra Invariants to bound the cost of opening aa and closing bb

Lemma 7.4.

Suppose aS0a\notin S_{0}. Then the output solution F=1{a}F_{=1}\cup\{a\} is feasible, contains S0S_{0}, and connecting mm clients costs at most (2+α)Opt(LPiter)+O(ρδ)U.(2+\alpha)Opt(LP_{iter})+O(\frac{\rho}{\delta})U.

This completes the analysis of the base cases. To handle the recursive step, we apply 7.1.

Proof of Theorem 6.16.

First, we show that OutliersPostProcess  terminates in polynomial time. It suffices to show that the number of recursive calls to ComputePartial  is polynomial. To see this, note that for each recursive call, it must be the case that C<1C0C^{*}_{<1}\not\subset C_{0}. In particular, there exists some non-dummy client in CC0C^{*}\setminus C_{0}. Thus, we are guaranteed to remove at least once client from CC in each recursive call.

Now it remains to show that the output solution is feasible, contains S0S_{0}, and connecting mm clients costs at most (2+α)Opt(LPiter)+O(ρδ)U(2+\alpha)Opt(LP_{iter})+O(\frac{\rho}{\delta})U. Let y¯\bar{y} be the extreme point computed by PseudoApproximation  in the first line of OutliersPostProcess. If y¯\bar{y} is integral or C<1C0C^{*}_{<1}\subset C_{0}, then we are done by the above lemmas.

Then it remains to consider the case where C<1C0C^{*}_{<1}\not\subset C_{0}. Let LPiterLP_{iter} denote the input to OutliersPostProcess  and LPiter1LP_{iter}^{1} the updated LPiterLP_{iter} at the end of ComputePartial  as in the statement of Theorem 7.1. We note that Theorem 7.1 implies that LPiter1LP_{iter}^{1} satisfies all Basic and Extra Invariants, so LPiter1LP_{iter}^{1} is a valid input to OutliersPostProcess. Then we may assume inductively that the recursive call to OutliersPostProcess  on LPiter1LP_{iter}^{1} outputs a feasible solution S′′S^{\prime\prime} to LPiter1LP_{iter}^{1} such that S0S′′S_{0}\subset S^{\prime\prime} and the cost of connecting m1m^{1} clients from C1C^{1} to S′′S^{\prime\prime} is at most (2+α)Opt(LPiter1)+O(ρδ)U(2+\alpha)Opt(LP_{iter}^{1})+O(\frac{\rho}{\delta})U.

Further, let SS^{\prime} be the partial solution output by ComputePartial  on LPiterLP_{iter}. Now we combine the solutions SS^{\prime} and S′′S^{\prime\prime} to obtain the solution output by OutliersPostProcess. First, we check that SS′′S^{\prime}\cup S^{\prime\prime} is is feasible. This follows, because |S′′|k1k|S|\lvert S^{\prime\prime}\rvert\leq k^{1}\leq k-\lvert S^{\prime}\rvert by definition of ComputePartial. Also, S0S′′S_{0}\subset S^{\prime\prime} by the inductive hypothesis.

It remains to bound the cost of connecting mm clients to SS′′S^{\prime}\cup S^{\prime\prime}. Consider serving the m1m^{1} closest clients in C1C^{1} with S′′S^{\prime\prime} and CC^{\prime} with SS0S^{\prime}\cup S_{0}. Because m1=m|C|m_{1}=m-\lvert C^{\prime}\rvert, this is enough clients. Connecting the m1m^{1} closest clients in C1C^{1} to S′′S^{\prime\prime} costs at most (2+α)Opt(LPiter1)+O(ρδ)U(2+\alpha)Opt(LP_{iter}^{1})+O(\frac{\rho}{\delta})U by the inductive hypothesis. Now we use the guarantee of 7.1, which we recall is:

Opt(LPiter1)+12+αjCd(j,SS0)Opt(LPiter)+O(ρδ)U.Opt(LP_{iter}^{1})+\frac{1}{2+\alpha}\sum\limits_{j\in C^{\prime}}d(j,S^{\prime}\cup S_{0})\leq Opt(LP_{iter})+O(\frac{\rho}{\delta})U.

Thus, the total connection cost is at most:

(2+α)Opt(LPiter1)+O(ρδ)U+jCd(j,SS0)(2+α)Opt(LPiter)+O(ρδ)U.(2+\alpha)Opt(LP_{iter}^{1})+O(\frac{\rho}{\delta})U+\sum\limits_{j\in C^{\prime}}d(j,S^{\prime}\cup S_{0})\leq(2+\alpha)Opt(LP_{iter})+O(\frac{\rho}{\delta})U.

Note that the additive O(ρδ)UO(\frac{\rho}{\delta})U terms which we accrue in each recursive call are still O(ρδ)UO(\frac{\rho}{\delta})U overall. This is because we keep recursing on a subset of the remaining fractional facilities – which is always O(1)O(1) – and we open/close each fractional facility at most once over all recursive calls. Thus, we can bound the additive cost of each opening/closing by O(ρδ)UO(\frac{\rho}{\delta})U. ∎

7.4. Proof of 7.1

For all missing proofs in this section, see §D. We let LPiterLP_{iter} and y¯\bar{y} denote the input to ComputePartial  and LPiter1LP_{iter}^{1} the updated LP that is output at the end ComputePartial. We begin with three properties of ComputePartial  that will be useful throughout our analysis.

The first is immediate by definition of ComputePartial.

Proposition 7.5.

Upon termination of ComputePartial, the set family {FjjC¯}\{F_{j}\mid j\in\bar{C}\} is disjoint, and every client jCpartCcoveredj\in C_{part}\setminus C_{covered}, FjF_{j} intersects at most one FF-ball for clients in C¯\bar{C}.

Proposition 7.6.

ComputePartial  initializes and maintains the invariants that CcoveredCpartC_{covered}\subset C_{part} and C¯{jC<1FjS0=}\bar{C}\subset\{j\in C^{*}_{<1}\mid F_{j}\cap S_{0}=\emptyset\}

Proof.

We initialize Ccovered=C_{covered}=\emptyset and only add clients from CpartC_{part} to CcoveredC_{covered}. Similarly, we initialize C¯={jC<1FjS0=}\bar{C}=\{j\in C^{*}_{<1}\mid F_{j}\cap S_{0}=\emptyset\} and only remove clients from C¯\bar{C}. ∎

Lemma 7.7.

Every j¯C¯\bar{j}\in\bar{C} that is reached by the For loop remains in C¯\bar{C} until termination.

Now we are ready to prove both properties of 7.1. It is not difficult to see that LPiter1LP_{iter}^{1} satisfies all Basic- and Extra Invariants by construction.

Lemma 7.8.

LPiter1LP_{iter}^{1} satisfies all Basic- and Extra Invariants.

Now it remains to show Opt(LPiter1)+12+αjCd(j,SS0)Opt(LPiter)+O(ρδ)UOpt(LP_{iter}^{1})+\frac{1}{2+\alpha}\sum\limits_{j\in C^{\prime}}d(j,S\cup S_{0})\leq Opt(LP_{iter})+O(\frac{\rho}{\delta})U. To do this, we partition CC into C1C^{1} and C=Cpart(S¯)CcoveredCfull(CC0)C^{\prime}=C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup(C^{*}\setminus C_{0}). For each client in C1C^{1}, we show that its contribution to the objective of LPiter1LP_{iter}^{1} is at most its contribution to LPiterLP_{iter}. Then for each client jCj\in C^{\prime}, either d(j,SS0)d(j,S\cup S_{0}) is at most 2+α2+\alpha times jj’s contribution to Opt(LPiter)Opt(LP_{iter}) or we can charge jj’s connection cost to an additive O(ρδ)UO(\frac{\rho}{\delta})U term.

First, we focus on C1C^{1}. For these clients, it suffices to show that y¯\bar{y} (restricted to F1F^{1}) is feasible for LPiter1LP_{iter}^{1}. This is because for all jC1j\in C^{1}, either jCpart1Cpartj\in C_{part}^{1}\subset C_{part} or jC0j\in C_{0}. The clients in C0C_{0} contribute zero to the cost of LPiter1LP_{iter}^{1} and LPiterLP_{iter}. This is because both LPiterLP_{iter} and LPiter1LP_{iter}^{1} satisfy Extra Invariant 6.12(1), so every dummy client j(i)C0j(i)\in C_{0} is co-located with one unit of open facility corresponding to iS0i\in S_{0}.

Thus it remains to consider the clients jCpart1j\in C_{part}^{1}. We recall that Cpart1CpartC_{part}^{1}\subset C_{part} and Fj1FjF_{j}^{1}\subset F_{j} for all jC1j\in C^{1}, so each jCpart1j\in C_{part}^{1} costs less in LPiter1LP_{iter}^{1} than in LPiterLP_{iter}.

To complete the cost analysis of C1C^{1}, we go back to prove feasibility. The main difficulty is showing that the coverage constraint is still satisfied. Recall that we construct S¯\bar{S} by greedily opening the facility in each FF-ball for clients in C¯\bar{C} that covers the most CpartCcoveredC_{part}\setminus C_{covered}-clients. 7.5 ensures that this greedy choice is well-defined (because {FjjC¯}\{F_{j}\mid j\in\bar{C}\} is disjoint), and that we do not double-cover any CpartCcoveredC_{part}\setminus C_{covered}-clients.

Then by definition of greedy, we show that our partial solution covers more clients than the fractional facilities we delete. This proposition is the key to showing that the coverage constraint is still satisfied.

Proposition 7.9.

Upon termination of ComputePartial, we have |Cpart(S¯)|jC¯iFjwiy¯i\lvert C_{part}(\bar{S})\rvert\geq\sum\limits_{j\in\bar{C}}\sum\limits_{i\in F_{j}}w_{i}\bar{y}_{i}.

Proof.

For each jC¯j\in\bar{C}, let i(j)S¯i(j)\in\bar{S} be the unique open facility in FjF_{j}. By definition of Cpart(S¯)C_{part}(\bar{S}), for all jCpart(S¯)j\in C_{part}(\bar{S}) we have FjS¯F_{j}\cap\bar{S}\neq\emptyset. Further, by Proposition 7.5, FjF_{j} intersects exactly one FF-ball among clients in C¯\bar{C}, so each i(j)i(j) for jC¯j\in\bar{C} covers a unique set of clients. This implies the equality:

|Cpart(S¯)|=jC¯wi(j).\lvert C_{part}(\bar{S})\rvert=\sum\limits_{j\in\bar{C}}w_{i(j)}.

Combining this equality with the facts that for all jC¯j\in\bar{C}, we have y¯(Fj)=1\bar{y}(F_{j})=1 and wi(j)wiw_{i(j)}\geq w_{i} for all iFji\in F_{j} gives the desired inequality:

|Cpart(S¯)|=jC¯wi(j)jC¯wi(j)y¯(Fj)jC¯iFjwiy¯i.\lvert C_{part}(\bar{S})\rvert=\sum\limits_{j\in\bar{C}}w_{i(j)}\geq\sum\limits_{j\in\bar{C}}w_{i(j)}\bar{y}(F_{j})\geq\sum\limits_{j\in\bar{C}}\sum\limits_{i\in F_{j}}w_{i}\bar{y}_{i}.

Finally, we can complete the analysis of C1C^{1}. It is easy to check that constraints except for the coverage constraint are satisfied. To handle the coverage constraint, we use 7.9.

Lemma 7.10.

y¯\bar{y} restricted to F1F^{1} is feasible for LPiter1LP_{iter}^{1}.

For the final property, we must upper bound the connection cost of C=Cpart(S¯)CcoveredCfull(CC0)C^{\prime}=C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup(C^{*}\setminus C_{0}) to SS0S\cup S_{0}. We bound the connection cost in a few steps. First, we bound the re-routing cost of CfullCC_{full}\cup C^{*}. Second, we show that every jCcoveredj\in C_{covered} has a ”back-up” facility within O(1)L(j)O(1)L(\ell_{j}). This is used to bound the additive cost of connecting CcoveredC_{covered}. Finally, for the clients in Cpart(S¯)C_{part}(\bar{S}), we guarantee to open a facility in their FF-balls, so we also bound their additive cost.

The next lemma and corollary allow us to bound the cost of CfullCC_{full}\cup C^{*}.

Lemma 7.11.

Upon termination of ComputePartial, for all jCj\in C^{*}, we have d(j,SS0)(3+2τc)L(j)d(j,S\cup S_{0})\leq(3+\frac{2}{\tau^{c}})L(\ell_{j}).

Proof.

There are a few cases to consider. First, if jC=1j\in C^{*}_{=1}, then the lemma is trivial because by definition there exists an integral facility in FjF_{j}. Otherwise, if jC<1j\in C^{*}_{<1}, but FjS0F_{j}\cap S_{0}\neq\emptyset, then again the lemma is trivial.

Thus it remains to consider clients j{jC<1FjS0=}j\in\{j\in C^{*}_{<1}\mid F_{j}\cap S_{0}=\emptyset\}. We note that such a client jj is initially in C¯\bar{C}. If jj remains in C¯\bar{C} until termination, then we are done, because we are guaranteed to open a facility in FjF_{j} for all jC¯j\in\bar{C} (this is exactly the set S¯\bar{S} of facilities.)

For the final case, we suppose client jj is removed from C¯\bar{C} in the iteration where we consider j¯C¯\bar{j}\in\bar{C}. Then either FjFj¯F_{j}\cap F_{\bar{j}}\neq\emptyset or there exists jCpartCcoveredj^{\prime}\in C_{part}\setminus C_{covered} such that FjF_{j^{\prime}} intersects both FjF_{j} and Fj¯F_{\bar{j}} and jj¯c\ell_{j^{\prime}}\leq\ell_{\bar{j}}-c. Note that because the For loop considers clients in increasing order of radius level, we have jj¯\ell_{j}\geq\ell_{\bar{j}}

In the former case, by the Distinct Neighbors Property, we have jj¯+1\ell_{j}\geq\ell_{\bar{j}}+1. Further, by 7.7, we know that j¯\bar{j} remains in C¯\bar{C} until termination, so d(j¯,S)L(j¯)d(\bar{j},S)\leq L(\ell_{\bar{j}}). Then we can upper bound:

d(j,S)d(j,j¯)+d(j¯,S)L(j)+L(j¯)+L(j¯)(1+2τ)L(j)<3L(j)d(j,S)\leq d(j,\bar{j})+d(\bar{j},S)\leq L(\ell_{j})+L(\ell_{\bar{j}})+L(\ell_{\bar{j}})\leq(1+\frac{2}{\tau})L(\ell_{j})<3L(\ell_{j})

, where in the final inequality, we use the fact that τ>1\tau>1.

In the latter case, we again have d(j¯,S)L(j¯)d(\bar{j},S)\leq L(\ell_{\bar{j}}). Then we can bound the distance from jj to SS by first going from jj to jj^{\prime}, then from jj^{\prime} to j¯\bar{j}, and finally from j¯\bar{j} to SS, where jj¯c\ell_{j^{\prime}}\leq\ell_{\bar{j}}-c and j¯j\ell_{\bar{j}}\leq\ell_{j}:

d(j,S)d(j,j)+d(j,j¯)+d(j¯,S)L(j)+L(j)+L(j)+L(j¯)+L(j¯)(3+2τc)L(j).d(j,S)\leq d(j,j^{\prime})+d(j^{\prime},\bar{j})+d(\bar{j},S)\leq L(\ell_{j})+L(\ell_{j^{\prime}})+L(\ell_{j^{\prime}})+L(\ell_{\bar{j}})+L(\ell_{\bar{j}})\leq(3+\frac{2}{\tau^{c}})L(\ell_{j}).

Corollary 7.12.

Upon termination of ComputePartial, for all jCfullCj\in C_{full}\cup C^{*}, we have d(j,SS0)(2+α)L(j)d(j,S\cup S_{0})\leq(2+\alpha)L(\ell_{j}), where α=max(3+2τc,1+4+2τcτ,τ3+2τ2+1τ31)\alpha=\max(3+2\tau^{-c},1+\frac{4+2\tau^{-c}}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1})

Proof.

Apply 5.3 with β=3+2τc\beta=3+2\tau^{-c}. ∎

Similarly, the next lemma ensures that CcoveredC_{covered} can also be re-routed.

Lemma 7.13.

Upon termination of ComputePartial, for all jCcoveredj\in C_{covered}, we have d(j,S¯)(1+2τc)L(j)d(j,\bar{S})\leq(1+2\tau^{c})L(\ell_{j}).

Proof.

Because jCcoveredj\in C_{covered}, it must be the case that we put jj in CcoveredC_{covered} in some iteration of the For loop where we consider client j¯C¯\bar{j}\in\bar{C}. Thus we have jj¯c+1\ell_{j}\geq\ell_{\bar{j}}-c+1 and FjFj¯F_{j}\cap F_{\bar{j}}\neq\emptyset. Also, by Lemma 7.7, j¯\bar{j} remains in C¯\bar{C} until termination, so d(j¯,S¯)L(j¯)d(\bar{j},\bar{S})\leq L(\ell_{\bar{j}}). Using these facts, we can bound:

d(j,S)d(j,j¯)+d(j¯,S)L(j)+L(j¯)+L(j¯)(1+2τc1)L(j).d(j,S)\leq d(j,\bar{j})+d(\bar{j},S)\leq L(\ell_{j})+L(\ell_{\bar{j}})+L(\ell_{\bar{j}})\leq(1+2\tau^{c-1})L(\ell_{j}).

Using the above lemmas, we are ready to bound the connection cost of our partial solution. Note that we bound the cost of serving CC^{\prime} not with SS, which is the partial solution we output, but rather with SS0S\cup S_{0}. Thus, we are implicitly assuming that S0S_{0} will be opened by the later recursive calls.

We recall that C=Cpart(S¯)CcoveredCfull(CC0)C^{\prime}=C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup(C^{*}\setminus C_{0}) and SS0=F=1S¯S0S\cup S_{0}=F_{=1}\cup\bar{S}\cup S_{0}.

To begin, we bound the cost of connecting Cpart(S¯)C_{part}(\bar{S}) to S¯\bar{S}. By definition, every client jCpart(S¯)j\in C_{part}(\bar{S}) has some facility from S¯\bar{S} in its FF-ball. Further, S¯F(C¯)\bar{S}\subset F(\bar{C}) by definition, and F(C¯)S0=F(\bar{C})\cap S_{0}=\emptyset using Proposition 7.5. Thus we can apply Extra Invariant 6.12(2) to each facility in S¯\bar{S}. Further, we know that |S¯|=O(1)\lvert\bar{S}\rvert=O(1), because there are only O(1)O(1) fractional facilities, and every facility in S¯\bar{S} is fractional by definition. Then we can bound:

jCpart(S¯)d(j,S¯)iS¯jCpart(S¯)iFjd(j,i)O(ρ)U\sum\limits_{j\in C_{part}(\bar{S})}d(j,\bar{S})\leq\sum\limits_{i\in\bar{S}}\sum\limits_{j\in C_{part}(\bar{S})\mid i\in F_{j}}d(j,i)\leq O(\rho)U

, where we apply Extra Invariant 6.12(2) for each iS¯i\in\bar{S}. Thus, we have shown that the connection cost of Cpart(S¯)C_{part}(\bar{S}) is at most an additive O(ρ)UO(\rho)U.

Now we move on to the rest of CC^{\prime}, that is - the clients in CcoveredC_{covered}, CfullC_{full} and CC0C^{*}\setminus C_{0}. For the clients in CcoveredC_{covered}, we know by Lemma 7.13 that every client jCcoveredj\in C_{covered} has an open facility in S¯\bar{S} at distance at most (1+2τc)L(j)(1+2\tau^{c})L(\ell_{j}). Further, by definition of CcoveredC_{covered}, each jCcoveredj\in C_{covered} is supported on a fractional facility not in S0S_{0}. To see this, note that for all jCcoveredj\in C_{covered}, there exists j¯C¯\bar{j}\in\bar{C} such that FjFj¯F_{j}\cap F_{\bar{j}}\neq\emptyset, and Fj¯S0=F_{\bar{j}}\cap S_{0}=\emptyset.

Then we can use Lemma 6.15 for each fractional facility iS0i\notin S_{0} to bound the cost of connecting all CcoveredC_{covered}-clients supported on ii to S¯\bar{S}. For each such fractional facility iS0i\notin S_{0}, the connection cost of these clients is at most O(ρδ)UO(\frac{\rho}{\delta})U. By summing over all O(1)O(1)-many fractional iS0i\notin S_{0}, we connect all of CcoveredC_{covered} at additive cost at most O(ρδ)UO(\frac{\rho}{\delta})U.

Finally, we handle the clients in Cfull(CC0)C_{full}\cup(C^{*}\setminus C_{0}). For convenience, we denote this set of clients by C^\hat{C}. Using Lemma 7.11, every jC^j\in\hat{C} has a facility in SS0S\cup S_{0} at distance at most (2+α)L(j)(2+\alpha)L(\ell_{j}). There are a few cases to consider. For the first case, we consider the clients {jC^Fj(S0F=1)}\{j\in\hat{C}\mid F_{j}\setminus(S_{0}\cup F_{=1})\neq\emptyset\}, that is the set of C^\hat{C}-clients whose FF-balls contain some cheap, fractional facility. By an analogous argument as for CcoveredC_{covered}, we can apply Lemma 6.15 to each fractional iS0i\notin S_{0} to bound the cost of connecting {jC^Fj(S0F=1)}\{j\in\hat{C}\mid F_{j}\setminus(S_{0}\cup F_{=1})\neq\emptyset\} to SS0S\cup S_{0} by O(ρδ)UO(\frac{\rho}{\delta})U.

Then it remains to consider the clients jC^j\in\hat{C} such that FjF=1S0F_{j}\subset F_{=1}\cup S_{0}. For such a client jj, if Fj=F_{j}=\emptyset, then jj’s contribution to the objective of LPiterLP_{iter} is exactly L(j)L(\ell_{j}), so connecting jj to SS0S\cup S_{0} costs at most (2+α)(2+\alpha) times jj’s contribution to the objective of LPiterLP_{iter}.

Similarly, if FjF_{j} happens to contain a facility in F=1S0F_{=1}\cup S_{0}, then we can simply connect jj to the closest such facility in FjF_{j}. Note that F=1S0SS0F_{=1}\cup S_{0}\subset S\cup S_{0}, so jj’s connection cost in this case it as most its contribution to the objective in LPiterLP_{iter}. In conclusion, the connection cost of {jC¯FjF=1S0}\{j\in\bar{C}\mid F_{j}\subset F_{=1}\cup S_{0}\} is at most (2+α)Opt(LPiter)(2+\alpha)Opt(LP_{iter}). Summing the costs of these different groups of clients completes the proof.

8. Chain Decompositions of Extreme Points

In this section, we prove a more general version of Theorem 4.2 that applies to set-cover-like polytopes with rr side constraints. In particular, we consider polytopes of the form:

𝒫={yFy(Fj)=1jC, 0y1,Ayb}\mathcal{P}=\{y\in\mathbb{R}^{F}\mid y(F_{j})=1\quad\forall j\in C^{*},\,0\leq y\leq 1,\,Ay\leq b\}

, where FF, CC^{*}, and the FF-balls are defined as in LPiterLP_{iter}, and AybAy\leq b is an arbitrary system of rr linear inequalities. We note that other than the CpartC_{part}-, and CfullC_{full}-constraints, 𝒫\mathcal{P} generalizes the feasible region of LPiterLP_{iter} by taking the system AybAy\leq b to be the r1r_{1} knapsack constraints and r2r_{2} coverage constraints.

Although we phrase 𝒫\mathcal{P} in terms of facilities and clients, one can interpret 𝒫\mathcal{P} as a set cover polytope with side constraints as saying that we must choose elements in FF to cover each set in the family ={FjjC}\mathcal{F}=\{F_{j}\mid j\in C^{*}\} subject to the constraints AybAy\leq b. The main result of this section is that if \mathcal{F} has bipartite intersection graph, there exists a chain decomposition of the extreme points of 𝒫\mathcal{P}.

Note that 𝒫\mathcal{P} can also also be interpreted as the intersection of two partition matroid polytopes or as a bipartite matching polytope both with rr side constraints. Our chain decomposition theorem shares some parallels with the work of Grandoni, Ravi, Singh, and Zenklusen, who studied the structure of bipartite matching polytopes with rr side constraints [GRSZ14].

Theorem 8.1 (General Chain Decomposition).

Suppose we have a polytope:

𝒫={yFy(Fj)=1jC, 0y1,Ayb},\mathcal{P}=\{y\in\mathbb{R}^{F}\mid y(F_{j})=1\quad\forall j\in C^{*},\,0\leq y\leq 1,\,Ay\leq b\},

such that FF is a finite ground set of elements (facilities), {FjFjC}\{F_{j}\subset F\mid j\in C^{*}\} is a set family indexed by CC^{*} (clients), and AybAy\leq b is a system of rr linear inequalities. Further, let y¯\bar{y} be an extreme point for 𝒫\mathcal{P} such that no non-negativity constraint is tight. If \mathcal{F} has bipartite intersection graph, then C<1C^{*}_{<1} admits a partition into 3r3r chains along with at most 2r2r violating clients (clients that are not in any chain.)

We will use the following geometric fact about extreme points of polyhedra:

Fact 8.2.

Let 𝒫\mathcal{P} be a polyhedron in n\mathbb{R}^{n}. Then xnx\in\mathbb{R}^{n} is an extreme point of 𝒫\mathcal{P} if and only if there exist nn linearly independent constraints of 𝒫\mathcal{P} that are tight at xx. We call such a set of constraints a basis for xx.

Theorem 4.2 follows almost immediately from Theorem 8.1.

Proof of Theorem 4.2.

Let y¯\bar{y} be an extreme point of LPiterLP_{iter} such that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight, and suppose LPiterLP_{iter} satisfies the Distinct Neighbors Now consider the polytope:

𝒫={yFy(Fj)=1jC, 0y1,Ayb},\mathcal{P}=\{y\in\mathbb{R}^{F}\mid y(F_{j})=1\quad\forall j\in C^{*},\,0\leq y\leq 1,\,Ay\leq b\},

, where AybAy\leq b consists of the r1r_{1} knapsack constraints and r2r_{2} coverage constraints of LPiterLP_{iter}. We claim that y¯\bar{y} is an extreme point of 𝒫\mathcal{P}. To see this, note that y¯\bar{y} is an extreme point of LPiterLP_{iter}, so fix any basis for y¯\bar{y} using tight constraints of LPiterLP_{iter}. By assumption, this basis uses no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint. In particular, it only uses constraints of LPiterLP_{iter} that are also present in 𝒫\mathcal{P}, so this basis certifies that y¯\bar{y} is an extreme point of 𝒫\mathcal{P}.

Further, by Proposition 2.6, the set family {FjjC}\{F_{j}\mid j\in C^{*}\} has bipartite intersection graph. Then we can apply Theorem 8.1 to y¯\bar{y} and polytope 𝒫\mathcal{P}, which gives the desired result. ∎

8.1. Proof of Theorem 8.1

Now we go back to prove the more general chain decomposition theorem: Theorem 8.1. For all missing proofs, see §E. Throughout this section, let

𝒫={yFy(Fj)=1jC, 0y1,Ayb}\mathcal{P}=\{y\in\mathbb{R}^{F}\mid y(F_{j})=1\quad\forall j\in C^{*},\,0\leq y\leq 1,\,Ay\leq b\}

be a polytope satisfying the properties of Theorem 8.1. In particular, the intersection graph of ={FjjC}\mathcal{F}=\{F_{j}\mid j\in C^{*}\} is bipartite. Further, let y¯\bar{y} be an extreme point of 𝒫\mathcal{P} such that no non-negativity constraint is tight for y¯\bar{y}.

The crux of our proof is the next lemma, which allows us to bound the complexity of the intersection graph with respect to the number of side constraints rr. We prove the lemma by constructing an appropriate basis for y¯\bar{y}. The next definition is useful for constructing a basis.

Definition 8.3.

For any subset CCC^{\prime}\subset C^{*}, let dim(C)dim(C^{\prime}) denote the maximum number of linearly independent CC^{\prime}-constraints, so the constraint set {y(Fj)=1jC}\{y(F_{j})=1\mid j\in C^{\prime}\}.

Lemma 8.4.

Let y¯\bar{y} be an extreme point of 𝒫\mathcal{P} such that no non-negativity constraint is tight. Then the number of fractional facilities in y¯\bar{y} satisfies |F<1|dim(C<1)+r\lvert F_{<1}\rvert\leq dim(C^{*}_{<1})+r (recall that rr is the number of constraints of AybAy\leq b.)

Now, to find a chain decomposition of C<1C^{*}_{<1}, first we find the violating clients. We note that every FF-ball contains at least two facilities. The violating clients will be those clients whose FF-balls contain strictly more than two facilities, so we let V={jC<1|Fj|>2}V=\{j\in C^{*}_{<1}\mid\lvert F_{j}\rvert>2\} be the set of violating clients. It remains to bound the size of VV, which follows from a standard counting argument.

Proposition 8.5.

|V|2r\lvert V\rvert\leq 2r

Now that we have decided on the violating clients, it remains to partition C<1VC^{*}_{<1}\setminus V into the desired chains. Importantly, for all jC<1Vj\in C^{*}_{<1}\setminus V, we have |Fj|=2\lvert F_{j}\rvert=2. To find our chains, we consider the intersection graph of C<1C^{*}_{<1}, so the intersection graph of the set family {FjjC<1}\{F_{j}\mid j\in C^{*}_{<1}\}. We let GG denote this graph. Note that GG is a subgraph of the standard intersection graph, so it is also bipartite by assumption.

We consider deleting the vertices VV from GG, which breaks GG into some connected components, say H1,,HH_{1},\dots,H_{\ell}. Let VkV_{k} denote the vertex set of HkH_{k}, so we have that VkVkV_{k}\cup\dots\cup V_{k} partitions C<1VC^{*}_{<1}\setminus V. Further, for all k[]k\in[\ell], every FF-ball for clients in VkV_{k} contains exactly two facilities, and every facility is in at most two FF-balls. Translating these statements into properties of the intersection graph, we can see that every vertex of HkH_{k} has degree at most two, and HkH_{k} is connected, so we can conclude that each HkH_{k} is a path or even cycle (we eliminate the odd cycle case because the intersection graph is bipartite.)

Proposition 8.6.

Each VkV_{k} is a chain.

To complete the proof, it remains to upper bound the number of chains. To do this, we first split the inequality given by Lemma 8.4 into the contribution by each HkH_{k}. Importantly, we observe that the F(Vk)F(V_{k})’s are disjoint for all kk because the VkV_{k}’s correspond to distinct connected components. Then we can write:

k[]|F(Vk)||F<1|dim(C<1)+rk[]dim(Vk)+dim(V)+rk[]dim(Vk)+3r.\sum\limits_{k\in[\ell]}\lvert F(V_{k})\rvert\leq\lvert F_{<1}\rvert\leq dim(C^{*}_{<1})+r\leq\sum\limits_{k\in[\ell]}dim(V_{k})+dim(V)+r\leq\sum\limits_{k\in[\ell]}dim(V_{k})+3r.

The way to interpret this inequality is that each chain, VkV_{k}, has a budget of dim(Vk)dim(V_{k}) fractional facilities to use in its chain, but we have an extra 3r3r facilities to pay for any facilities beyond each VkV_{k}’s allocated budget. We will show that each chain uses at least one extra facility from this 3r3r surplus, which allows us to upper bound \ell by 3r3r.

For the path components, we use the fact that every path has one more vertex than edge.

Proposition 8.7.

If HkH_{k} is a path, then |F(Vk)|>dim(Vk)\lvert F(V_{k})\rvert>dim(V_{k}).

For the even cycle components, we show that the corresponding CC^{*}-constraints are not linearly independent.

Proposition 8.8.

If HkH_{k} is an even cycle, then |F(Vk)|>dim(Vk)\lvert F(V_{k})\rvert>dim(V_{k}).

Applying the above two propositions, we complete the proof by bounding \ell:

k[]dim(Vk)+3rk[]|F(Vk)|k[]dim(Vk)+3r\sum\limits_{k\in[\ell]}dim(V_{k})+3r\geq\sum\limits_{k\in[\ell]}\lvert F(V_{k})\rvert\geq\sum\limits_{k\in[\ell]}dim(V_{k})+\ell\Rightarrow 3r\geq\ell

References

  • [AGK+04] Vijay Arya, Naveen Garg, Rohit Khandekar, Adam Meyerson, Kamesh Munagala, and Vinayaka Pandit. Local search heuristics for k-median and facility location problems. SIAM J. Comput., 33(3):544–562, 2004.
  • [BPR+17] Jaroslaw Byrka, Thomas W. Pensyl, Bartosz Rybicki, Aravind Srinivasan, and Khoa Trinh. An improved approximation for k-median and positive correlation in budgeted optimization. ACM Trans. Algorithms, 13(2):23:1–23:31, 2017.
  • [BPR+18] Jaroslaw Byrka, Thomas W. Pensyl, Bartosz Rybicki, Joachim Spoerhase, Aravind Srinivasan, and Khoa Trinh. An improved approximation algorithm for knapsack median using sparsification. Algorithmica, 80(4):1093–1114, 2018.
  • [Che08] Ke Chen. A constant factor approximation algorithm for kk-median clustering with outliers. In SODA, pages 826–835, 2008.
  • [CKMN01] Moses Charikar, Samir Khuller, David M. Mount, and Giri Narasimhan. Algorithms for facility location problems with outliers. In S. Rao Kosaraju, editor, Proceedings of the Twelfth Annual Symposium on Discrete Algorithms, January 7-9, 2001, Washington, DC, USA, pages 642–651. ACM/SIAM, 2001.
  • [FKRS19] Zachary Friggstad, Kamyar Khodamoradi, Mohsen Rezapour, and Mohammad R. Salavatipour. Approximation schemes for clustering with outliers. ACM Trans. Algorithms, 15(2):26:1–26:26, 2019.
  • [GLZ17] Sudipto Guha, Yi Li, and Qin Zhang. Distributed partial clustering. In Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures, pages 143–152. ACM, 2017.
  • [GMM+03] Sudipto Guha, Adam Meyerson, Nina Mishra, Rajeev Motwani, and Liadan O’Callaghan. Clustering data streams: Theory and practice. TKDE, 15(3):515–528, 2003.
  • [GRSZ14] Fabrizio Grandoni, R. Ravi, Mohit Singh, and Rico Zenklusen. New approaches to multi-objective optimization. Math. Program., 146(1-2):525–554, 2014.
  • [IQM+20] Sungjin Im, Mahshid Montazer Qaem, Benjamin Moseley, Xiaorui Sun, and Rudy Zhou. Fast noise removal for k-means clustering. In The 23rd International Conference on Artificial Intelligence and Statistics, AISTATS 2020, 26-28 August 2020, Online [Palermo, Sicily, Italy], pages 456–466, 2020.
  • [JMS02] Kamal Jain, Mohammad Mahdian, and Amin Saberi. A new greedy approach for facility location problems. In Proceedings of the Thiry-fourth Annual ACM Symposium on Theory of Computing, STOC ’02, pages 731–740, New York, NY, USA, 2002. ACM.
  • [JV01] Kamal Jain and Vijay V. Vazirani. Approximation algorithms for metric facility location and k-median problems using the primal-dual schema and lagrangian relaxation. J. ACM, 48(2):274–296, 2001.
  • [KKN+15] Ravishankar Krishnaswamy, Amit Kumar, Viswanath Nagarajan, Yogish Sabharwal, and Barna Saha. Facility location with matroid or knapsack constraints. Math. Oper. Res., 40(2):446–459, 2015.
  • [KLS18] Ravishankar Krishnaswamy, Shi Li, and Sai Sandeep. Constant approximation for k-median and k-means with outliers via iterative rounding. In Ilias Diakonikolas, David Kempe, and Monika Henzinger, editors, Proceedings of the 50th Annual ACM SIGACT Symposium on Theory of Computing, STOC 2018, Los Angeles, CA, USA, June 25-29, 2018, pages 646–659. ACM, 2018.
  • [LG18] Shi Li and Xiangyu Guo. Distributed kk-clustering for data with heavy noise. In Advances in Neural Information Processing Systems, pages 7838–7846, 2018.
  • [LS16] Shi Li and Ola Svensson. Approximating k-median via pseudo-approximation. SIAM J. Comput., 45(2):530–547, 2016.
  • [MKC+15] Gustavo Malkomes, Matt Kusner, Wenlin Chen, Kilian Weinberger, and Benjamin Moseley. Fast distributed kk-center clustering with outliers on massive data. In NIPS, pages 1063–1071, 2015.

Appendix A Missing Proofs from §2: Construction of LPiterLP_{iter}

Proof of Proposition 2.1.

Let \mathcal{I} be the given instance of GKM and (x,y)(x^{*},y^{*}) be an optimal solution to LP1LP_{1}.

Observe that if xij{0,yi}x^{*}_{ij}\in\{0,y^{*}_{i}\} for all iF,jCi\in F,j\in C, then we can define Fj={iFxij>0}F_{j}=\{i\in F\mid x^{*}_{ij}>0\} for all jCj\in C. It is easy to verify in this case that yy^{*} is feasible for LP2LP_{2} and achieves the same objective value in LP2LP_{2} as (x,y)(x^{*},y^{*}) achieves in LP1LP_{1}, which completes the proof.

Thus our goal is to duplicate facilities in FF and re-allocate the xx- and yy-values appropriately until xij{0,yi}x^{*}_{ij}\in\{0,y^{*}_{i}\} for all iF,jCi\in F,j\in C. To prevent confusion, let FF denote the original set of facilities, and let FF^{\prime} denote the modified set of facilities, where make n=|C|n=\lvert C\rvert copies of each facility in FF, so for each iFi\in F, we have copies i1,,inFi_{1},\dots,i_{n}\in F^{\prime}.

Now we define x[0,1]F×Cx^{\prime}\in[0,1]^{F^{\prime}\times C} and y[0,1]Fy^{\prime}\in[0,1]^{F^{\prime}} with the desired properties. For each iFi\in F, we assume without loss of generality that 0xi1xi2xinyi0\leq x_{i1}\leq x_{i2}\leq\dots\leq x_{in}\leq y_{i}. We define xi11,,xinnx^{\prime}_{i_{1}1},\dots,x^{\prime}_{i_{n}n} and yi1,,yiny^{\prime}_{i_{1}},\dots,y^{\prime}_{i_{n}} recursively:

Let yi1=xi1y^{\prime}_{i_{1}}=x_{i1} and xi1j=xijx^{\prime}_{i_{1}j}=x_{ij} for all j[n]j\in[n].

Now for k>1k>1, let yik=xikxi(k1)y^{\prime}_{i_{k}}=x_{ik}-x_{i(k-1)} and xikj={0,j<kyik,jkx^{\prime}_{i_{k}j}=\begin{cases}0&,j<k\\ y^{\prime}_{i_{k}}&,j\geq k\end{cases} for all j[n]j\in[n].

It is easy to verify that (x,y)(x^{\prime},y^{\prime}) is feasible for LP1LP_{1} (after duplicating facilities) and xij{0,yi}x^{\prime}_{ij}\in\{0,y^{\prime}_{i}\} for all iF,jCi\in F^{\prime},j\in C, as required. Further, it is clear that this algorithm is polynomial time. ∎

Proof of Proposition 2.2.

If d(p,q)=0d(p,q)=0, then the claim is trivial. Suppose d(p,q)1d(p,q)\geq 1. We can rewrite d(p,q)=τ+fd(p,q)=\tau^{\ell+f} for some ,f[0,1)\ell\in\mathbb{N},f\in[0,1). Also, for convenience we define β=logτα\beta=\log_{\tau}\alpha. Because logeα\log_{e}\alpha is uniformly distributed in [0,logeτ)[0,\log_{e}\tau), it follows that β\beta is uniformly distributed in [0,1)[0,1).

It follows, d(p,q)d(p,q) is rounded to ατ=τ+β\alpha\tau^{\ell}=\tau^{\ell+\beta} exactly when βf\beta\geq f, and otherwise d(p,q)d(p,q) is rounded to τ+β+1\tau^{\ell+\beta+1} when β<f\beta<f. Thus we compute:

𝔼[d(p,q)]\displaystyle\mathbb{E}[d^{\prime}(p,q)] =β=0fτ+β+1𝑑β+β=f1τ+β𝑑β\displaystyle=\int_{\beta=0}^{f}\tau^{\ell+\beta+1}~{}d\beta+\int_{\beta=f}^{1}\tau^{\ell+\beta}~{}d\beta
=1logeτ(τ+β+1|β=0f+τ+β|β=f1)\displaystyle=\frac{1}{\log_{e}\tau}(\tau^{\ell+\beta+1}\rvert_{\beta=0}^{f}+\tau^{\ell+\beta}\rvert_{\beta=f}^{1})
=1logeτ(τ+f+1τ+1+τ+1τ+f)\displaystyle=\frac{1}{\log_{e}\tau}(\tau^{\ell+f+1}-\tau^{\ell+1}+\tau^{\ell+1}-\tau^{\ell+f})
=1logeτ(τ+f+1τ+f)\displaystyle=\frac{1}{\log_{e}\tau}(\tau^{\ell+f+1}-\tau^{\ell+f})
=τ1logeτd(p,q).\displaystyle=\frac{\tau-1}{\log_{e}\tau}d(p,q).

Proof of Proposition 2.6.

Assume for contradiction that the intersection graph of \mathcal{F} is not bipartite, so there exists an odd cycle, say j1jj1j_{1}\rightarrow\dots\rightarrow j_{\ell}\rightarrow j_{1} such that each vertex j1,,jCj_{1},\dots,j_{\ell}\in C^{*}. Further, along each edge jkjk+1j_{k}\rightarrow j_{k+1}, we have FjkFjk+1F_{j_{k}}\cap F_{j_{k+1}}\neq\emptyset, so jk\ell_{j_{k}} and jk+1\ell_{j_{k+1}} differ by exactly one. In particular, the radius level can either increase by one or decrease by one along each edge.

Consider traversing the cycle starting from j1j_{1} all the way to jj_{\ell} and then back to j1j_{1}, and count the number of increases and decreases along the way. The number of increases and decreases must be equal when we return to j1j_{1}, but this cycle has an odd number of edges, so the number of increases and decreases cannot be the same. This is a contradiction. ∎

Proof of Proposition 2.7.

Assume for contradiction that there exists a facility ii such that iFj1Fj2Fj3i\in F_{j_{1}}\cap F_{j_{2}}\cap F_{j_{3}} for distinct clients j1,j2,j3Cj_{1},j_{2},j_{3}\in C^{*}. Then the intersection graph of CC^{*} contains an odd cycle j1j2j3j1j_{1}\rightarrow j_{2}\rightarrow j_{3}\rightarrow j_{1}. This contradicts the fact that the intersection graph is bipartite. ∎

Proof of Lemma 2.8.

Our algorithm is to first run the algorithm guaranteed by Lemma 2.1 to obtain LP2LP_{2} and the FF-balls such that Opt(LP2)Opt()Opt(LP_{2})\leq Opt(\mathcal{I}). Then we follow the construction in §2- that is, we randomly discretize the distances to obtain dd^{\prime}, define the FF- and BB- balls and radius levels, and initialize Cpart=CC_{part}=C, Cfull=C_{full}=\emptyset and C=C^{*}=\emptyset. This completes the description of LPiterLP_{iter}.

By Proposition 2.3, we have 𝔼[Opt(LPiter)]τ1logeτOpt(LP2)τ1logeτOpt()\mathbb{E}[Opt(LP_{iter})]\leq\frac{\tau-1}{\log_{e}\tau}Opt(LP_{2})\leq\frac{\tau-1}{\log_{e}\tau}Opt(\mathcal{I}), as required. Finally, it is easy to check that LPiterLP_{iter} satisfies all Basic Invariants. ∎

Appendix B Missing Proofs from §3 - 5: Analysis of PseudoApproximation

In this section, we present all missing proofs from the analyses of PseudoApproximation  and its sub-routines IterativeRound  and ConfigReRoute.

B.1. Analysis of IterativeRound

The goal of this section is to prove Theorem 3.1. First we show that IterativeRound  maintains all Basic Invariants. It is easy to see that the first three Basic Invariants are maintained by IterativeRound, so we only prove the last two.

Lemma B.1 (Basic Invariant 2.4(4)).

IterativeRound  maintains the invariant that j1\ell_{j}\geq-1 for all jCj\in C.

Proof.

Consider any jCj\in C. Suppose the invariant holds at the beginning of IterativeRound, so initially we have j1\ell_{j}\geq-1. Note that a necessary condition for decreasing j\ell_{j} is that y¯(Bj)1\bar{y}(B_{j})\leq 1 is tight at some iteration of IterativeRound, and in this case we decrease j\ell_{j} by one.

Suppose j=1\ell_{j}=-1. Then L(j1)=1L(\ell_{j}-1)=-1, so Bj=B_{j}=\emptyset. Thus it cannot be the case that y¯(Bj)1\bar{y}(B_{j})\leq 1 is tight. We conclude that for all jCj\in C, we never decrease j\ell_{j} beyond negative one. ∎

Lemma B.2 (Basic Invariant 2.4(5): Distinct Neighbors Property).

IterativeRound  maintains the Distinct Neighbors Property.

Proof.

It suffices to show that ReRoute  maintains the Distinct Neighbors Property, because in IterativeRound, the only time CC^{*} is modified is when ReRoute  is called. Thus we consider an arbitrary call to ReRoute(j)\textsc{ReRoute}(j). To prevent confusion, let CC^{*} denote the status of CC^{*} before the call to ReRoute. If we do not move jj from CfullC_{full} to CC^{*}, then the invariant is clearly maintained, so we may assume that we move jj from CfullC_{full} to CC^{*}.

Then for all jCj^{\prime}\in C^{*} such that FjFjF_{j}\cap F_{j^{\prime}}\neq\emptyset, we have jj+1\ell_{j^{\prime}}\geq\ell_{j}+1. Finally, after adding jj to CC^{*}, we remove all such jj^{\prime} with jj+2\ell_{j^{\prime}}\geq\ell_{j}+2, so for all remaining clients in CC^{*} whose FF-balls intersect jj’s, their radius level is exactly one larger than jj’s. ∎

To show that IterativeRound  weakly decreases Opt(LPiter)Opt(LP_{iter}), it suffices to show that each iteration weakly decreases Opt(LPiter)Opt(LP_{iter}). We show that in any iteration of IterativeRound, the y¯\bar{y} computed at the beginning of the iteration is still feasible after we update LPiterLP_{iter} in that iteration. Then, we show that y¯\bar{y} achieves the same objective value before and after the updates.

Lemma B.3.

Each iteration of IterativeRound  weakly decreases Opt(LPiter)Opt(LP_{iter}).

Proof.

Consider any iteration of IterativeRound. Let y¯\bar{y} be the optimal solution to LPiterLP_{iter} computed at the beginning of the iteration. There are three possible modifications we can make to LPiterLP_{iter} in this iteration: remove a facility from FF, move a client from CpartC_{part} to CfullC_{full}, or shrink a FF-ball for a client in CfullC_{full}. For each operation, we show that y¯\bar{y} is still feasible and achieves the same objective value afterwards.

For the first operation, if we remove a facility ii from FF, then it must be the case that y¯i=0\bar{y}_{i}=0. Thus it is immediate that y¯\bar{y} (restricted to F{i}F\setminus\{i\}) is feasible after deleting ii, and achieves the same objective value.

Otherwise, suppose there exists jCpartj\in C_{part} such that y¯(Fj)=1\bar{y}(F_{j})=1, and we move jj from CpartC_{part} to CfullC_{full} and then ReRoute(j)\textsc{ReRoute}(j). Thus jj ends up it either CfullC_{full} or CC^{*} at the end of this iteration. In either case, we have y¯(Bj)y¯(Fj)=1\bar{y}(B_{j})\leq\bar{y}(F_{j})=1, so y¯\bar{y} satisfies the corresponding constraint after updating LPiterLP_{iter}. Further, because y¯(Fj)=1\bar{y}(F_{j})=1, we have:

iFjd(j,i)y¯i=iBjd(j,i)y¯i+(1y¯(Bj))L(j),\sum\limits_{i\in F_{j}}d^{\prime}(j,i)\bar{y}_{i}=\sum\limits_{i\in B_{j}}d^{\prime}(j,i)\bar{y}_{i}+(1-\bar{y}(B_{j}))L(\ell_{j}),

so contribution of jj to the objective before is the same as its contribution after.

In the final case, suppose there exists jCfullj\in C_{full} such that y¯(Bj)=1\bar{y}(B_{j})=1, so we shrink FjF_{j} and then ReRoute(j)\textsc{ReRoute}(j). Let LPiterLP_{iter}^{\prime} index the data at the end of the iteration, so Fj=BjF_{j}^{\prime}=B_{j}. Then we have y¯(Bj)y¯(Fj)=1\bar{y}(B_{j}^{\prime})\leq\bar{y}(F_{j}^{\prime})=1, so y¯\bar{y} satisfies the corresponding constraint for jj whether jj is in CfullC_{full} or CC^{*}. To compare the contribution of jj to the objective in LPiterLP_{iter} and LPiterLP_{iter}^{\prime}, we compute:

iBjd(i,j)y¯i+(1y¯(Bj))Lj\displaystyle\sum\limits_{i\in B_{j}}d^{\prime}(i,j)\bar{y}_{i}+(1-\bar{y}(B_{j}))L_{\ell_{j}} =iBjd(i,j)y¯i+0\displaystyle=\sum\limits_{i\in B_{j}}d^{\prime}(i,j)\bar{y}_{i}+0
=iBjd(i,j)y¯i+iFjBjd(i,j)y¯i\displaystyle=\sum\limits_{i\in B_{j}^{\prime}}d^{\prime}(i,j)\bar{y}_{i}+\sum\limits_{i\in F_{j}^{\prime}\setminus B_{j}^{\prime}}d^{\prime}(i,j)\bar{y}_{i}
=iBjd(i,j)y¯i+(1y¯(Bj))L(j).\displaystyle=\sum\limits_{i\in B_{j}^{\prime}}d^{\prime}(i,j)\bar{y}_{i}+(1-\bar{y}(B_{j}^{\prime}))L(\ell_{j}^{\prime}).

Finally, we note that if IterativeRound  terminates, then it is clear that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight for y¯\bar{y} by definition of our iterative operations. Thus it suffices to show that IterativeRound  terminates in polynomial time.

Lemma B.4.

IterativeRound  terminates in polynomial time.

Proof.

It suffices to show that the number of iterations of IterativeRound  is polynomial. In each iteration, we make one of three actions. We either delete a facility from FF, move a client from CpartC_{part} to CfullC_{full} or shrink a FF-ball by one radius level for a client in jCfullj\in C_{full}.

We can delete each facility from FF at most once, so we make at most |F|\lvert F\rvert deletions. Each client can move from CpartC_{part} to CfullC_{full} at most once, because we never move clients back from CfullC_{full} to CpartC_{part}, so we do this operations at most |C|\lvert C\rvert times.

Finally, observe that j1\ell_{j}\geq-1 for all jCj\in C over all iterations by Basic Invariant 2.4(4). We conclude that we can shrink each FF-ball only polynomially many times. ∎

B.2. Analysis of ConfigReRoute

To prove Lemma 4.4, which bounds the number of fractional facilities needed to have a candidate configuration, we first prove a bound on the number of factional clients needed. The bound on the number of facilities will follow.

Lemma B.5.

Suppose LPiterLP_{iter} satisfies all Basic Invariants, and let y¯\bar{y} be an optimal extreme point of LPiterLP_{iter} such that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight. If |C<1|14r\lvert C^{*}_{<1}\rvert\geq 14r, then there exist a candidate configuration in C<1C^{*}_{<1}.

Proof.

We claim that in order for C<1C^{*}_{<1} to have a candidate configuration, it suffices to have a chain of length at least four in C<1C^{*}_{<1}. To see this, let (j1,j2,j3,j4,)C<1(j_{1},j_{2},j_{3},j_{4},\dots)\subset C^{*}_{<1} be a chain of length at least four. Then Fj2Fj3F_{j_{2}}\cap F_{j_{3}}\neq\emptyset, and by the Distinct Neighbors Property, either j3=j21\ell_{j_{3}}=\ell_{j_{2}}-1 or j2=j31\ell_{j_{2}}=\ell_{j_{3}}-1.

We only consider the former case, because both cases are analogous. Thus, if j3=j21\ell_{j_{3}}=\ell_{j_{2}}-1, then we claim that (j2,j3)(j_{2},j_{3}) forms a candidate configuration. We already have the first two properties of a candidate configuration. Now we verify the last two. Because j2j_{2} and j3j_{3} are part of a chain, we have |Fj2|=2\lvert F_{j_{2}}\rvert=2 and |Fj3|=2\lvert F_{j_{3}}\rvert=2. Further, j2j_{2} has neighbors j1j_{1} and j3j_{3} along the chain. By Proposition 2.7, each facility in Fj2F_{j_{2}} is in at most two FF-balls for clients in CC^{*}. In particular, one of the facilities in Fj2F_{j_{2}} is shared by Fj1F_{j_{1}} and Fj2F_{j_{2}}, and the other must be shared by Fj2F_{j_{2}} and Fj3F_{j_{3}}. Thus, each facility in Fj2F_{j_{2}} is in exactly two FF-balls for clients in CC^{*}. An analogous argument holds for Fj3F_{j_{3}}, so (j2,j3)(j_{2},j_{3}) satisfies all properties of a candidate configuration, as required.

Now suppose |C<1|14r\lvert C^{*}_{<1}\rvert\geq 14r. By Theorem 4.2, C<1C^{*}_{<1} admits a chain decomposition into at most 3r3r chains and a set of at most 2r2r violating clients. Then at least 12r12r of the clients in C<1C^{*}_{<1} belong to the 3r3r chains. By averaging, there must exist a chain with size at least 12r3r=4\frac{12r}{3r}=4, as required. ∎

Lemma 4.4 is a corollary of the above lemma.

Proof of Lemma 4.4.

By the previous lemma, it suffices to show that |F<1|15r\lvert F_{<1}\rvert\geq 15r implies that |C<1|14r\lvert C^{*}_{<1}\rvert\geq 14r. Applying Lemma 8.4, we have:

|F<1|dim(C<1)+r|C<1|+r\lvert F_{<1}\rvert\leq dim(C^{*}_{<1})+r\leq\lvert C^{*}_{<1}\rvert+r

, which combined with |F<1|15r\lvert F_{<1}\rvert\geq 15r gives the desired result. ∎

Proof of Theorem 4.5.

It is clear that ConfigReRoute  can be implemented to run in polynomial time and maintains all Basic Invariants, because ConfigReRoute  only moves clients from CC^{*} to CfullC_{full}. Thus it remains to show that ConfigReRoute  weakly decreases Opt(LPiter)Opt(LP_{iter}).

Using the same strategy as in B.3, we let LPiterLP_{iter} denote the LP at the beginning of ConfigReRoute  and y¯\bar{y} the optimal extreme point of LPiterLP_{iter}. Then we show that y¯\bar{y} is feasible after the operation and achieves the same objective value.

In this call to ConfigReRoute, we move some client jj from CC^{*} to CfullC_{full}. We have y¯(Bj)y¯(Fj)=1\bar{y}(B_{j})\leq\bar{y}(F_{j})=1, so y¯\bar{y} is feasible after ConfigReRoute. Finally, moving jj from CC^{*} to CfullC_{full} does not affect its contribution to the objective. ∎

B.3. Analysis of PseudoApproximation

Proof of Theorem 5.2.

It is immediate that PseudoApproximation  maintains all Basic Invariants by Theorems 3.1 and 4.5. Further, both of these sub-routines are polynomial time, so to show that PseudoApproximation  runs in polynomial time, it suffices to show that the number of calls to IterativeRound  and ConfigReRoute  is polynomial.

In every iteration of PseudoApproximation, either we terminate or we are guaranteed to move a client from CC^{*} to CfullC_{full} in ConfigReRoute. Each client can be removed from CC^{*} only polynomially many times, because each time a client is removed, in order to be re-added to CC^{*}, it must be the case that we shrunk the FF-ball of that client. However, by Basic Invariant 2.4(4), we can shrink each FF-ball only polynomially many times.

Finally, upon termination of PseudoApproximation, there is no candidate configuration, so Lemma 4.4 implies that y¯\bar{y} has at most 15r15r fractional variables. ∎

Appendix C Missing Proofs from §6

Proof of Lemma 6.7.

We let iSi^{*}\in S be the closest facility to ii in SS. We show that the cost of connecting CC^{\prime} to ii^{*} is at most O(ρδ)UO(\frac{\rho}{\delta})U. To do so, we partition CC^{\prime} into two sets of clients: those that are far from ii relative to d(i,i)d(i,i^{*}), and those that are close to ii. In particular, let γ>0\gamma>0 be a constant that we choose later. Then we partition CC^{\prime} into CfarC^{\prime}_{far} and CcloseC^{\prime}_{close}, where:

Cfar={jCd(j,i)γd(i,i)},C^{\prime}_{far}=\{j\in C^{\prime}\mid d(j,i)\geq\gamma d(i,i^{*})\},

and

Cclose={jCd(j,i)>γd(i,i)}.C^{\prime}_{close}=\{j\in C^{\prime}\mid d(j,i)>\gamma d(i,i^{*})\}.

First we bound the connection cost of CfarC^{\prime}_{far} to ii^{*} using the fact that iS0i\notin S_{0}, so Extra Invariant 6.4(2) says that jiFjd(i,j)2ρU\sum\limits_{j\mid i\in F_{j}}d(i,j)\leq 2\rho U. Thus we compute:

jCfard(j,i)(1+1γ)jCiFjd(j,i)(1+1γ)O(ρ)U\sum\limits_{j\in C^{\prime}_{far}}d(j,i^{*})\leq(1+\frac{1}{\gamma})\sum\limits_{j\in C\mid i\in F_{j}}d(j,i)\leq(1+\frac{1}{\gamma})O(\rho)U

Now suppose CcloseC^{\prime}_{close}\neq\emptyset. Fix any jCclosej^{*}\in C^{\prime}_{close}. Then for all jCclosej\in C^{\prime}_{close}, we have d(j,j)d(j,i)+d(j,i)2γd(i,i)d(j,j^{*})\leq d(j,i)+d(j^{*},i)\leq 2\gamma d(i,i^{*}). It follows that CcloseBC(j,2γd(i,i))C^{\prime}_{close}\subset B_{C}(j^{*},2\gamma d(i,i^{*})). Our strategy is to use Extra Invariant 6.4(4):

|BC(j,δr)|rρU,\lvert B_{C}(j^{*},\delta r)\rvert r\leq\rho U,

for all rRjr\leq R_{j^{*}}. Thus we want 2γd(i,i)δRj2\gamma d(i,i^{*})\leq\delta R_{j^{*}}. To lower bound RjR_{j^{*}} with respect to d(i,i)d(i,i^{*}), we use our assumption that there exists some i¯S\bar{i}\in S such that d(j,i¯)αL(j)d(j^{*},\bar{i})\leq\alpha L(\ell_{j^{*}}), where L(j)τRjL(\ell_{j^{*}})\leq\tau R_{j^{*}} by Extra Invariant 6.4(4). Thus we have:

d(j,i¯)ατRj.d(j^{*},\bar{i})\leq\alpha\tau R_{j^{*}}.

Further, using the triangle inequality and the fact that ii^{*} is the closest facility to ii in SS, we have:

d(j,i¯)d(i,i¯)d(i,j)d(i,i)d(i,j)(1γ)d(i,i).d(j^{*},\bar{i})\geq d(i,\bar{i})-d(i,j^{*})\geq d(i,i^{*})-d(i,j^{*})\geq(1-\gamma)d(i,i^{*}).

Combining these two inequalities gives the lower bound Rj1γατd(i,i)R_{j^{*}}\geq\frac{1-\gamma}{\alpha\tau}d(i,i^{*}).

Now we are ready to choose γ\gamma. Recall that we want 2γd(i,i)δRj2\gamma d(i,i^{*})\leq\delta R_{j^{*}}, so it suffices to choose γ\gamma such that:

2γd(i,i)δ1γατd(i,i)2\gamma d(i,i^{*})\leq\delta\frac{1-\gamma}{\alpha\tau}d(i,i^{*})

Routine calculations show that we can take γ=Θ(δ)\gamma=\Theta(\delta) to satisfy this inequality. Now with this choice of γ\gamma, we can bound:

jCclosed(j,i)\displaystyle\sum\limits_{j\in C^{\prime}_{close}}d(j,i^{*}) (1+γ)|Cclose|d(i,i)\displaystyle\leq(1+\gamma)\lvert C^{\prime}_{close}\rvert d(i,i^{*})
(1+γ)|BC(j,δRj)|d(i,i)\displaystyle\leq(1+\gamma)\lvert B_{C}(j^{*},\delta R_{j^{*}})\rvert d(i,i^{*})
(1+γ)ρURjd(i,i)\displaystyle\leq(1+\gamma)\frac{\rho U}{R_{j^{*}}}d(i,i^{*})
ρURjO(1)Rj=O(ρ)U\displaystyle\leq\frac{\rho U}{R_{j^{*}}}O(1)R_{j^{*}}=O(\rho)U

To conclude the proof, the connection cost of CfarC^{\prime}_{far} is at most (1+1γ)O(ρ)U=O(ρδ)U(1+\frac{1}{\gamma})O(\rho)U=O(\frac{\rho}{\delta})U and the connection cost of CcloseC^{\prime}_{close} is at most O(ρ)UO(\rho)U. Summing these costs gives the desired result. ∎

Proof of Lemma 6.15.

We let iSi^{*}\in S be the closest facility to ii in SS. We show that the cost of connecting CC^{\prime} to ii^{*} is at most O(ρδ)UO(\frac{\rho}{\delta})U. To do so, we partition CC^{\prime} into two sets of clients: those that are far from ii relative to d(i,i)d(i,i^{*}), and those that are close to ii. In particular, let γ>0\gamma>0 be a constant that we choose later. Then we partition CC^{\prime} into CfarC^{\prime}_{far} and CcloseC^{\prime}_{close}, where:

Cfar={jCd(j,i)γd(i,i)}C^{\prime}_{far}=\{j\in C^{\prime}\mid d(j,i)\geq\gamma d(i,i^{*})\}

, and

Cclose={jCd(j,i)>γd(i,i)}C^{\prime}_{close}=\{j\in C^{\prime}\mid d(j,i)>\gamma d(i,i^{*})\}

First we bound the connection cost of CfarC^{\prime}_{far} to ii^{*} using the fact that iS0i\notin S_{0}, so Extra Invariant 6.12(2) says that ii is cheap. Thus we compute:

jCfard(j,i)(1+1γ)jCiFjd(j,i)(1+1γ)O(ρ)U\sum\limits_{j\in C^{\prime}_{far}}d(j,i^{*})\leq(1+\frac{1}{\gamma})\sum\limits_{j\in C\mid i\in F_{j}}d(j,i)\leq(1+\frac{1}{\gamma})O(\rho)U

Now suppose CcloseC^{\prime}_{close}\neq\emptyset. Importantly, all of these clients are within distance γd(i,i)\gamma d(i,i^{*}) of ii, so we have CcloseBC(i,γd(i,i))C^{\prime}_{close}\subset B_{C}(i,\gamma d(i,i^{*})). Our strategy to bound the connection cost of CcloseC^{\prime}_{close} is to leverage Extra Invariant 6.12(4), so in particular we want to use the fact:

|{jBC(i,δt4+3δ)Rjt}|ρ(1+3δ/4)1δ/4Ut\lvert\{j\in B_{C}(i,\frac{\delta t}{4+3\delta})\mid R_{j}\geq t\}\rvert\leq\frac{\rho(1+3\delta/4)}{1-\delta/4}\frac{U}{t}

for any t>0t>0. We want to choose γ,t>0\gamma,t>0 such that γd(i,i)δt4+3+δ\gamma d(i,i^{*})\leq\frac{\delta t}{4+3+\delta} and RjtR_{j}\geq t for all jCclosej\in C^{\prime}_{close}. To see why this is useful, for such γ\gamma and tt, we have Cclose{jBC(i,δt4+3δ)Rjt}C^{\prime}_{close}\subset\{j\in B_{C}(i,\frac{\delta t}{4+3\delta})\mid R_{j}\geq t\}. Then we can bound:

jCclosed(j,i)\displaystyle\sum\limits_{j\in C^{\prime}_{close}}d(j,i^{*}) jCclose(1+γ)d(i,i)\displaystyle\leq\sum\limits_{j\in C^{\prime}_{close}}(1+\gamma)d(i,i^{*})
=(1+γ)|Cclose|d(i,i)\displaystyle=(1+\gamma)\lvert C^{\prime}_{close}\rvert d(i,i^{*})
(1+γ)|{jBC(i,δt4+3δ)Rjt}|d(i,i)\displaystyle\leq(1+\gamma)\lvert\{j\in B_{C}(i,\frac{\delta t}{4+3\delta})\mid R_{j}\geq t\}\rvert d(i,i^{*})
(1+γ)(ρ(1+3δ/4)1δ/4Ut)d(i,i)\displaystyle\leq(1+\gamma)(\frac{\rho(1+3\delta/4)}{1-\delta/4}\frac{U}{t})d(i,i^{*})

Now we go back and specify our choice of γ\gamma and tt, which will allow us to complete the bound of the connection costs. First we lower bound RjR_{j} in terms of d(i,i)d(i,i^{*}) for any jCclosej\in C^{\prime}_{close}. We recall that by assumption there exists some i¯S\bar{i}\in S such that d(j,i¯)αL(j)d(j,\bar{i})\leq\alpha L(\ell_{j}), where L(j)τRjL(\ell_{j})\leq\tau R_{j} by Extra Invariant 6.12(4). Thus we have:

d(j,i¯)ατRjd(j,\bar{i})\leq\alpha\tau R_{j}

Further, using the triangle inequality and the fact that ii^{*} is the closest facility to ii in SS, we have:

d(j,i¯)d(i,i¯)d(i,j)d(i,i)d(i,j)(1γ)d(i,i)d(j,\bar{i})\geq d(i,\bar{i})-d(i,j)\geq d(i,i^{*})-d(i,j)\geq(1-\gamma)d(i,i^{*})

Combining this inequality with the upper bound on d(j,i¯)d(j,\bar{i}) gives that Rj1γατd(i,i)R_{j}\geq\frac{1-\gamma}{\alpha\tau}d(i,i^{*}) for all jCclosej\in C^{\prime}_{close}. Then we define t=1γατd(i,i)t=\frac{1-\gamma}{\alpha\tau}d(i,i^{*}). This gives us RjtR_{j}\geq t for all jCclosej\in C^{\prime}_{close}. Now we can choose γ>0\gamma>0 satisfying:

γd(i,i)δt4+3δγδ4+3δ1γατ\gamma d(i,i^{*})\leq\frac{\delta t}{4+3\delta}\Rightarrow\gamma\leq\frac{\delta}{4+3\delta}\frac{1-\gamma}{\alpha\tau}

Taking γ=δ12ατ=Θ(δ)\gamma=\frac{\delta}{12\alpha\tau}=\Theta(\delta) suffices.

Using these choices of γ\gamma and tt, we can bound:

jCfard(j,i)=O(ρδ)U\sum\limits_{j\in C^{\prime}_{far}}d(j,i^{*})=O(\frac{\rho}{\delta})U

, and

jCclosed(j,i)(1+γ)(ρ(1+3δ/4)1δ/4U)(ατ1γ)=O(ρ)U\sum\limits_{j\in C^{\prime}_{close}}d(j,i^{*})\leq(1+\gamma)(\frac{\rho(1+3\delta/4)}{1-\delta/4}U)(\frac{\alpha\tau}{1-\gamma})=O(\rho)U

Summing these two costs gives the desired result. ∎

Proof of Theorem 6.2.

Let ϵ>0\epsilon^{\prime}>0. We will later choose ϵ\epsilon^{\prime} with respect to the given ϵ\epsilon to obtain the desired approximation ratio and runtime. First, we choose parameters ρ,δ(0,1/2)\rho,\delta\in(0,1/2) and U0U\geq 0 for our pre-processing algorithm guaranteed by Theorem 6.5. We take ρ=ϵ2\rho={\epsilon^{\prime}}^{2} and δ=ϵ\delta=\epsilon^{\prime}. We require that UU is an upper bound on Opt()Opt(\mathcal{I}). Using a standard binary search idea, we can guess Opt()Opt(\mathcal{I}) up to a multiplicative (1+ϵ)(1+\epsilon^{\prime})-factor in time nO(1/ϵ)n^{O(1/\epsilon^{\prime})}, so we guess UU such that Opt()U(1+ϵ)Opt()Opt(\mathcal{I})\leq U\leq(1+\epsilon^{\prime})Opt(\mathcal{I}).

With these choices of parameters, we run the algorithm guaranteed by Theorem 6.13 to obtain nO(1/ϵ)n^{O(1/\epsilon^{\prime})} many sub-instances such that one such sub-instance is of the form =(F,CC,d,k,m=m|CC|)\mathcal{I}^{\prime}=(F,C^{\prime}\subset C,d,k,m^{\prime}=m-\lvert C^{*}\setminus C^{\prime}\rvert), where LPiterLP_{iter} for \mathcal{I}^{\prime} satisfies all Basic- and Extra Invariants, and we have:

(2) logeτ(τ1)(1+ϵ/2)𝔼[Opt(LPiter)]+1ϵ1+ϵjCCd(j,S0)U\frac{\log_{e}\tau}{(\tau-1)(1+\epsilon^{\prime}/2)}\mathbb{E}[Opt(LP_{iter})]+\frac{1-\epsilon^{\prime}}{1+\epsilon^{\prime}}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})\leq U

Then for each sub-instance output by the pre-processing, we run the algorithm guaranteed by Theorem 6.16 to obtain a solution to each sub-instance. Finally, out of these solutions, we output the one that is feasible for the whole instance with smallest cost. This completes the description of our approximation algorithm for kk-median with outliers. The runtime is nO(1/ϵ)n^{O(1/\epsilon^{\prime})}, so it remains to bound the cost of the output solution and to choose the parameters ϵ\epsilon^{\prime} and τ\tau and cc.

To bound the cost, it suffices to consider the solution output on the instance \mathcal{I}^{\prime} where LPiterLP_{iter} satisfies all Basic- and Extra Invariants and Equation 2. By running the algorithm guaranteed by Theorem 6.16 on this LPiterLP_{iter}, we obtain a feasible solution SFS\subset F to \mathcal{I}^{\prime} such that S0SS_{0}\subset S, and the cost of connecting mm^{\prime} clients from CC^{\prime} to SS is at most (2+α)Opt(LPiter)+O(ϵ)U(2+\alpha)Opt(LP_{iter})+O(\epsilon^{\prime})U, where α=max(3+2τc,1+4+2τcτ,τ3+2τ2+1τ31)\alpha=\max(3+2\tau^{-c},1+\frac{4+2\tau^{-c}}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}). To extend this solution on the sub-instance to a solution on the whole instance \mathcal{I}, we must connect mm=|CC|m-m^{\prime}=\lvert C^{*}\setminus C^{\prime}\rvert clients from CCC\setminus C^{\prime} to SS. Because S0SS_{0}\subset S, applying Equation 1 allows us to upper bound the expected cost of connecting mm clients to SS by:

(2+α)𝔼[Opt(LPiter)]+O(ϵ)U+jCCd(j,S0)(2+α)τ1logeτ(1+ϵ)21ϵU+O(ϵ)U(2+\alpha)\mathbb{E}[Opt(LP_{iter})]+O(\epsilon^{\prime})U+\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})\leq(2+\alpha)\frac{\tau-1}{\log_{e}\tau}\frac{(1+\epsilon^{\prime})^{2}}{1-\epsilon^{\prime}}U+O(\epsilon^{\prime})U

Now choosing τ>1\tau>1 to minimize α=(2+max(3,1+4τ,τ3+2τ2+1τ31))τ1logeτ\alpha^{\prime}=(2+\max(3,1+\frac{4}{\tau},\frac{\tau^{3}+2\tau^{2}+1}{\tau^{3}-1}))\frac{\tau-1}{\log_{e}\tau} (note that we ignore the 2τc2\tau^{-c} terms), we obtain τ=1.2074\tau=1.2074 and α=6.947\alpha^{\prime}=6.947. We can choose c1c\geq 1 sufficiently large with respect to τ\tau such that 2τc2\tau^{-c} is sufficiently small to guarantee (2+α)τ1logeτ6.947+ϵ(2+\alpha)\frac{\tau-1}{\log_{e}\tau}\leq 6.947+\epsilon^{\prime}

Thus the expected cost of this solution is at most (6.947+ϵ)(1+ϵ)21ϵU+O(ϵ)U(6.947+\epsilon^{\prime})\frac{(1+\epsilon^{\prime})^{2}}{1-\epsilon^{\prime}}U+O(\epsilon^{\prime})U, where U(1+ϵ)Opt()U\leq(1+\epsilon^{\prime})Opt(\mathcal{I}). Finally, by routine calculations, we can choose ϵ=θ(ϵ)\epsilon^{\prime}=\theta(\epsilon) so that expected cost is at most (6.947+ϵ)Opt()(6.947+\epsilon)Opt(\mathcal{I}), as required. Note that the runtime of our algorithm is nO(1/ϵ)=nO(1/ϵ)n^{O(1/\epsilon^{\prime})}=n^{O(1/\epsilon)}. ∎

Appendix D Missing Proofs from §7: Analysis of OutliersPostProcess

In this section we present all missing proofs from the analysis of OutliersPostProcess  and its subroutine ComputePartial.

D.1. Missing Proofs from Analysis of OutliersPostProcess

Proof of Lemma 7.2.

Without loss of generality, we may assume that no facilities in S0S_{0} are co-located with each other, so {FjjC0}\{F_{j}\mid j\in C_{0}\} is a disjoint family. This implies that {FjjC<1}\{F_{j}\mid j\in C^{*}_{<1}\} is also a disjoint family. Now we construct a basis for y¯\bar{y}. For every integral facility iF=1i\in F_{=1}, we add the constraint yi1y_{i}\leq 1 to our basis. To complete the basis, we need to add |F<1|\lvert F_{<1}\rvert further linearly independent tight constraints.

We recall that upon termination of PseudoApproximation, no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight for y¯\bar{y}, so the only constraints we can choose are the CC^{*}-constraints, the kk-constraint, or the coverage constraint. We claim that we cannot add any C=1C^{*}_{=1}-constraint to our basis, because such a constraint is supported only on integral facilities, whose constraints we already added to the basis. However, we can add every C<1C^{*}_{<1}-constraint to our basis, because their supports are disjoint and they contain no integral facilities. Thus, our partial basis consists of all tight integrality constraints and all C<1C^{*}_{<1}-constraints.

Now we consider adding the kk-constraint to our basis. Importantly, the kk-constraint is linearly independent with the current partial basis only if there exists at least one fractional facility not supported on any FF-ball for clients in C<1C^{*}_{<1}. Further, we may assume the kk-constraint is tight (otherwise we cannot add it anyways), so there must be at least two fractional facilities not supported on any FF-ball for clients in C<1C^{*}_{<1}

However, we note that each FF-ball for clients in C<1C^{*}_{<1} contains at least two fractional facilities. Because these FF-balls are disjoint, we have |F<1|2|C<1|\lvert F_{<1}\rvert\geq 2\lvert C^{*}_{<1}\rvert. If we cannot add the kk-constraint to our basis, then we are done. This is because the coverage constraint is the only further constraint we can add the the basis, so we can bound |F<1||C<1|+1\lvert F_{<1}\rvert\leq\lvert C^{*}_{<1}\rvert+1. This implies implies |F<1|12|F<1|+1|F<1|2\lvert F_{<1}\rvert\leq\frac{1}{2}\lvert F_{<1}\rvert+1\Rightarrow\lvert F_{<1}\rvert\leq 2 using the previous inequality.

Otherwise, we add the kk-constraint to our basis, which implies |F<1|2|C<1|+2\lvert F_{<1}\rvert\geq 2\lvert C^{*}_{<1}\rvert+2 because of the two fractional facilities outside F(C<1)F(C^{*}_{<1}) and |F<1||C<1|+2\lvert F_{<1}\rvert\leq\lvert C^{*}_{<1}\rvert+2 because the kk-constraint and coverage constraint contribute are the only further constraints we can add. Again combining these two inequalities gives |F<1|2\lvert F_{<1}\rvert\leq 2. ∎

Proof of Lemma 7.3.

Let S=F=1S=F_{=1} be the set of open facilities. It is immediate that |S|k\lvert S\rvert\leq k. Further, LPiterLP_{iter} satisfies all Extra Invariants, so C0CC_{0}\subset C^{*}. Because y¯\bar{y} is integral, it is clear that we open S0S_{0}. Thus it remains to show that the connecting mm clients to SS has cost at most (2+α)Opt(LPiter)(2+\alpha)Opt(LP_{iter}).

It suffices to show that connecting CfullC_{full} and CC^{*} to SS is enough clients and achieves the desired cost. Because y¯\bar{y} is integral and by definition of PseudoApproximation, we have that no CpartC_{part}-, CfullC_{full}-, or non-negativity constraint is tight for y¯\bar{y}. It follows, Fj=F_{j}=\emptyset for all jCpartj\in C_{part} and Bj=B_{j}=\emptyset for all jCfullj\in C_{full}.

Then the coverage constraint of LPiterLP_{iter} implies:

jCparty¯(Fj)m|CfullC||CfullC|m\sum\limits_{j\in C_{part}}\bar{y}(F_{j})\geq m-\lvert C_{full}\cup C^{*}\rvert\ \Rightarrow\lvert C_{full}\cup C^{*}\rvert\geq m

, so this solution connects enough clients.

To bound the cost, we compare the connection cost of each client with its contribution to the objective of LPiterLP_{iter}. For all jCj\in C^{*} we have y¯(Fj)=1\bar{y}(F_{j})=1, so d(j,S)iFjd(j,i)y¯id(j,S)\leq\sum\limits_{i\in F_{j}}d^{\prime}(j,i)\bar{y}_{i}, which is exactly jj’s contribution to LPiterLP_{iter}.

For all jCfullj\in C_{full}, we note that y¯(Bj)=0\bar{y}(B_{j})=0, so jj’s contribution to LPiterLP_{iter} is exactly L(j)L(\ell_{j}). We can apply 5.3 with β=1\beta=1 and set of facilities SS to show that d(j,S)(2+α)L(j)d(j,S)\leq(2+\alpha)L(\ell_{j}) for all jCfullj\in C_{full}. To conclude, the connection cost of each client is at most (2+α)(2+\alpha) times its contribution to LPiterLP_{iter}, a required. ∎

Proof of Lemma 7.4.

Let S=F=1{a}S=F_{=1}\cup\{a\} be the output solution. First, note that |S|k\lvert S\rvert\leq k because y¯a+y¯b=1\bar{y}_{a}+\bar{y}_{b}=1, and those are the only two fractional variables. Second, because aS0a\notin S_{0}, it must be the case that bS0b\notin S_{0}, because a,ba,b are the only fractional facilities, and by Extra Invariant 6.12 (1), there is one unit of open facility co-located at each iS0i\in S_{0}. Note that this implies that S0F=1SS_{0}\subset F_{=1}\subset S.

Now there are two cases, either a,bFja,b\in F_{j} for some jCj\in C^{*}, or a,bF(C)a,b\notin F(C^{*}). Note that in either case, we close bb and open aa, so we still maintain the property that y¯(Fj)=1\bar{y}(F_{j})=1 for all jCj\in C^{*}. Thus, can apply 5.3 with β=1\beta=1 and set of facilities SS to show that d(j,S)(2+α)L(j)d(j,S)\leq(2+\alpha)L(\ell_{j}) for all jCfullCj\in C_{full}\cup C^{*}.

We consider connecting the clients Cpart(a)CfullCC_{part}(a)\cup C_{full}\cup C^{*} to SS. First, we show that this is at least mm clients. We observe that aa and bb are the only fractional facilities in y¯\bar{y}, and no CpartC_{part}-constraint is tight. It follows that for all jCpartj\in C_{part}, we have Fj={a}F_{j}=\{a\}, {b}\{b\}, or \emptyset, so we can rewrite the coverage constraint as:

|Cpart(a)|y¯a+|Cpart(b)|y¯bm|CfullC|\lvert C_{part}(a)\rvert\bar{y}_{a}+\lvert C_{part}(b)\rvert\bar{y}_{b}\geq m-\lvert C_{full}\cup C^{*}\rvert

Then because y¯a+y¯b=1\bar{y}_{a}+\bar{y}_{b}=1 and |Cpart(a)||Cpart(b)|\lvert C_{part}(a)\rvert\geq\lvert C_{part}(b)\rvert by assumption, we conclude that |Cpart(a)|m|CfullC|\lvert C_{part}(a)\rvert\geq m-\lvert C_{full}\cup C^{*}\rvert, as required.

Now it remains to show that the cost of connecting Cpart(a)C_{part}(a) to aa plus the cost of connecting CfullCC_{full}\cup C^{*} to SS is at most αOpt(LPiter)+O(ρδ)U\alpha Opt(LP_{iter})+O(\frac{\rho}{\delta})U. First we handle Cpart(a)C_{part}(a). By assumption, aS0a\notin S_{0}, so by Extra Invariant 6.12(2), we can bound:

jCpart(a)d(j,a)jCaFjd(j,a)=O(ρ)U\sum\limits_{j\in C_{part}(a)}d(j,a)\leq\sum\limits_{j\in C\mid a\in F_{j}}d(j,a)=O(\rho)U

For the clients in CfullCC_{full}\cup C^{*} that are not supported on bb, closing bb does not affect their connection cost; in particular, each such client either has an integral facility in its FF-ball to connect to (because we open aa and all other facilities are integral), or its FF-ball is empty, and there exists an integral facility within (2+α)L(j)(2+\alpha)L(\ell_{j}) to connect to. In both cases, each client’s connection cost is at most (2+α)(2+\alpha) times its contribution to the objective of LPiterLP_{iter}.

The only remaining cost to bound is the clients in CfullCC_{full}\cup C^{*} that are supported on bb. Let C={jCfullCbFj}C^{\prime}=\{j\in C_{full}\cup C^{*}\mid b\in F_{j}\} be these clients. We show that the cost of connecting all of CC^{\prime} to SS is at most O(ρδ)UO(\frac{\rho}{\delta})U using Lemma 6.15. Because every client in jCfullCj\in C_{full}\cup C^{*} has an open facility in SS within distance (2+α)L(j)(2+\alpha)L(\ell_{j}), Lemma 6.15 is applicable to CC^{\prime} with set of facilities SS and i=bSS0i=b\notin S\cup S_{0}.

To summarize, the connection costs of Cpart(a)C_{part}(a) and CC^{\prime} are at most O(ρδ)UO(\frac{\rho}{\delta})U, and the connection cost of all remaining clients in CfullCC_{full}\cup C^{*} that are not supported on bb is at most (2+α)Opt(LPiter)(2+\alpha)Opt(LP_{iter}), so the total connection cost, which is the sum of these terms, it at most the desired bound. ∎

D.2. Missing Proofs from Analysis of ComputePartial

Proof of 7.7.

Assume for contradiction that there exists j¯\bar{j} that is reached by the For loop, but j¯\bar{j} does not remain in C¯\bar{C} until termination. Note that j¯\bar{j} cannot be removed from C¯\bar{C} in the iteration that it is considered in the For loop. Thus there must exist a later iteration for client, say jj in which j¯\bar{j} is removed from C¯\bar{C}. In the iteration for client jj, there are only two possible ways that j¯\bar{j} is removed from C¯\bar{C}. Either FjFj¯F_{j}\cap F_{\bar{j}}\neq\emptyset or there exists a client jCpartCcoveredj^{\prime}\in C_{part}\setminus C_{covered} such that FjF_{j^{\prime}} intersects both FjF_{j} and Fj¯F_{\bar{j}} and jjc\ell_{j^{\prime}}\leq\ell_{j}-c.

In the former case, because we consider j¯\bar{j} before jj, it must be the case that we removed jj from C¯\bar{C} in j¯\bar{j}’s iteration. This is a contradiction. Similarly, in the second case if such a jj^{\prime} exists, then in j¯\bar{j}’s iteration, we either remove jj from C¯\bar{C} or add jj^{\prime} to CcoveredC_{covered}. In either case, this is a contradiction. ∎

Proof of 7.8.

By assumption, the input to ComputePartial, LPiterLP_{iter}, satisfies all Basic and Extra Invariants. To obtain LPiter1LP_{iter}^{1} from LPiterLP_{iter}, we delete some clients and facilities. Thus the only change to the FF- and BB-balls for clients in C1C^{1} is that we possibly remove some facilities from their FF- and BB-balls; importantly, the radius levels, j\ell_{j} for all clients jj, remain the same. Thus, it is easy to see that LPiter1LP_{iter}^{1} satisfies all Basic Invariants.

Similarly, for all remaining clients jj, we have not changed j\ell_{j} or RjR_{j}, so the only Extra Invariant that requires some care to verify is Extra Invariant 6.12(1). However, we recall that to obtain C1{C^{*}}^{1}, we delete all clients in CC0C^{*}\setminus C_{0} from the instance, so C1=C0{C^{*}}^{1}=C_{0}. This is because C0CC_{0}\subset C^{*} by the assumption that LPiterLP_{iter} satisfies all Extra Invariants. ∎

Proof of 7.10.

We note that C1=C(Cpart(S¯)CcoveredCfull(CC0))C^{1}=C\setminus(C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup(C^{*}\setminus C_{0})) and F1=F(F=1F(C¯)S0)F^{1}=F\setminus(F_{=1}\cup F(\bar{C})\setminus S_{0}). Then we have Cpart1=Cpart(Cpart(S¯)Ccovered)C_{part}^{1}=C_{part}\setminus(C_{part}(\bar{S})\cup C_{covered}), Cfull1=C_{full}^{1}=\emptyset, and C1=C0{C^{*}}^{1}=C_{0}.

It suffices to show that all Cpart1C_{part}^{1}-constraints, C1{C^{*}}^{1}-constraint, the kk-constraint, and the coverage constraint are satisfied by y¯\bar{y} restricted to F1F^{1}.

Consider any jCpart1j\in C_{part}^{1}. We observe that the Fj1FjF_{j}^{1}\subset F_{j} for all jCpart1j\in C_{part}^{1} and Cpart1CpartC_{part}^{1}\subset C_{part}.Then y¯(Fj1)y¯(Fj)1\bar{y}(F_{j}^{1})\leq\bar{y}(F_{j})\leq 1 for all jCpart1j\in C_{part}^{1}.

Now for any jC1=C0j\in{C^{*}}^{1}=C_{0}, it suffices to show that we do not delete any copies of iS0i\in S_{0} when going from from FF to F1F^{1}, but this is immediate because S0FS_{0}\subset F, and we do not delete any facility from S0S_{0} to obtain F1F^{1}. Thus, every C1{C^{*}}^{1}-constraint is satisfied.

For the kk-constraint, we have y¯(F)k\bar{y}(F)\leq k. We want to show y¯(F1)k|S|\bar{y}(F^{1})\leq k-\lvert S\rvert. By definition |S¯|=jC¯y¯(Fj)=y¯(F(C¯))\lvert\bar{S}\rvert=\sum\limits_{j\in\bar{C}}\bar{y}(F_{j})=\bar{y}(F(\bar{C})), where the final equality follows because {FjjC¯}\{F_{j}\mid j\in\bar{C}\} is a disjoint collection by Proposition 7.5. Then we compute:

y¯(F1)=y¯(F)y¯(F(C¯))|F=1S0|k|S¯||F=1S0|=k|S|\bar{y}(F^{1})=\bar{y}(F)-\bar{y}(F(\bar{C}))-\lvert F_{=1}\setminus S_{0}\rvert\leq k-\lvert\bar{S}\rvert-\lvert F_{=1}\setminus S_{0}\rvert=k-\lvert S\rvert

, as required.

Finally, for the coverage constraint, we want to show:

jCpart1y¯(Fj1)m1|Cfull1C1|,\sum\limits_{j\in C_{part}^{1}}\bar{y}(F_{j}^{1})\geq m^{1}-\lvert C_{full}^{1}\cup{C^{*}}^{1}\rvert,

where Cpart1=Cpart(Cpart(S¯)Ccovered)C_{part}^{1}=C_{part}\setminus(C_{part}(\bar{S})\cup C_{covered}), m1=m|Cpart(S¯)CcoveredCfull(CC0)|m^{1}=m-\lvert C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup(C^{*}\setminus C_{0})\rvert, and Cfull1=C_{full}^{1}=\emptyset and C1=C0{C^{*}}^{1}=C_{0}, so |Cfull1C1|=|C0|\lvert C_{full}^{1}\cup{C^{*}}^{1}\rvert=\lvert C_{0}\rvert. Thus we can re-write the coverage constraint as:

jCpart1y¯(Fj1)m|Cpart(S¯)CcoveredCfullC|.\sum\limits_{j\in C_{part}^{1}}\bar{y}(F_{j}^{1})\geq m-\lvert C_{part}(\bar{S})\cup C_{covered}\cup C_{full}\cup{C^{*}}\rvert.

Recall that the coverage constraint of LPiterLP_{iter} implies:

jCparty¯(Fj)m|CfullC|.\sum\limits_{j\in C_{part}}\bar{y}(F_{j})\geq m-\lvert C_{full}\cup C^{*}\rvert.

By splitting this inequality into the contribution by Cpart1C_{part}^{1} and CpartCpart1=Cpart(S¯)CcoveredC_{part}\setminus C_{part}^{1}=C_{part}(\bar{S})\cup C_{covered}, we obtain:

jCparty¯(Fj)\displaystyle\sum\limits_{j\in C_{part}}\bar{y}(F_{j}) m|CfullC|\displaystyle\geq m-\lvert C_{full}\cup C^{*}\rvert
jCpart1y¯(Fj)+jCpart(S¯)Ccoveredy¯(Fj)\displaystyle\sum\limits_{j\in C_{part}^{1}}\bar{y}(F_{j})+\sum\limits_{j\in C_{part}(\bar{S})\cup C_{covered}}\bar{y}(F_{j}) m|CfullC|\displaystyle\geq m-\lvert C_{full}\cup C^{*}\rvert
jCpart1y¯(Fj)+jCpart(S¯)y¯(Fj)\displaystyle\sum\limits_{j\in C_{part}^{1}}\bar{y}(F_{j})+\sum\limits_{j\in C_{part}(\bar{S})}\bar{y}(F_{j}) m|CcoveredCfullC|\displaystyle\geq m-\lvert C_{covered}C_{full}\cup C^{*}\rvert

, where in the final inequality we use the fact that y¯(Fj)1\bar{y}(F_{j})\leq 1 for all jCcoveredCpartj\in C_{covered}\subset C_{part}. Now, we recall that Fj1=FjF(C¯)F_{j}^{1}=F_{j}\setminus F(\bar{C}) for all jCpart1j\in C_{part}^{1}, because Cpart1CpartC_{part}^{1}\subset C_{part}. We can re-write:

jCpart1y¯(Fj)=jCpart1(y¯(Fj1)+y¯(FjF(C¯)).\sum\limits_{j\in C_{part}^{1}}\bar{y}(F_{j})=\sum\limits_{j\in C_{part}^{1}}(\bar{y}(F_{j}^{1})+\bar{y}(F_{j}\cap F(\bar{C})).

To show that the coverage constraint is satisfied, it suffices to show:

jCpart1y¯(FjF(C¯))+jCpart(S¯)y¯(Fj)|Cpart(S¯)|.\sum\limits_{j\in C_{part^{1}}}\bar{y}(F_{j}\cap F(\bar{C}))+\sum\limits_{j\in C_{part}(\bar{S})}\bar{y}(F_{j})\leq\lvert C_{part}(\bar{S})\rvert.

To see this, observe that the first sum is over all clients in CpartCcoveredC_{part}\setminus C_{covered} supported on some facility in F(C¯)S¯F(\bar{C})\setminus\bar{S} but none in S¯\bar{S} (otherwise these clients would be in Cpart(S¯)C_{part}(\bar{S}).) The second sum is over all clients in CpartCcoveredC_{part}\setminus C_{covered} supported on some facility in S¯\bar{S}. Thus, recalling that wi=|{jCpartCcoverediFj}|w_{i}=\lvert\{j\in C_{part}\setminus C_{covered}\mid i\in F_{j}\}\rvert, we have:

jCpart1y¯(FjF(C¯))+jCpart(S¯)y¯(Fj)=jC¯iFjwiy¯i|Cpart(S¯)|,\sum\limits_{j\in C_{part^{1}}}\bar{y}(F_{j}\cap F(\bar{C}))+\sum\limits_{j\in C_{part}(\bar{S})}\bar{y}(F_{j})=\sum\limits_{j\in\bar{C}}\sum\limits_{i\in F_{j}}w_{i}\bar{y}_{i}\leq\lvert C_{part}(\bar{S})\rvert,

where in the final inequality we apply 7.9. ∎

Appendix E Missing Proofs from §8: Chain Decomposition

Proof of 8.4.

We construct a basis y¯\bar{y}. First, for each integral facility iF=1i\in F_{=1}, we add the integrality constraint y¯i1\bar{y}_{i}\leq 1 to our basis. Thus we currently have |F=1|\lvert F_{=1}\rvert constraints in our basis.

It remains to choose |F<1|\lvert F_{<1}\rvert further linearly independent constraints to add to our basis. Note that we have already added all tight integrality constraints to our basis, and no non-negativity constraint is tight. Then the only remaining constraints we can add are the CC^{*}-constraints and the rr constraints of AybAy\leq b.

We claim that we cannot add any C=1C^{*}_{=1}-constraints, because every C=1C^{*}_{=1}-constraint is of the form y(Fj)=yij=1y(F_{j})=y_{i_{j}}=1 for the unique integral facility ijF1i_{j}\in F_{1}. Note that here we used the fact that there is no facility that is set to zero. Thus every C=1C^{*}_{=1}-constraint is linearly dependent with the tight integrality constraints, which we already chose.

It follows, the only possible constraints we can choose are the C<1C^{*}_{<1}-constraints and the rr constraints of AybAy\leq b so:

|F<1|dim(C<1)+r.\lvert F_{<1}\rvert\leq dim(C^{*}_{<1})+r.

Proof of 8.5.

It suffices to upper bound the quantity jC<1(|Fj|2)\sum\limits_{j\in C^{*}_{<1}}(\lvert F_{j}\rvert-2) by 2r2r, because each client in VV contributes at least one to this sum, and every term of this sum is non-negative (because every FF-ball contains at least two facilities.)

Using Proposition 2.7, we can bound jC<1|Fj|2|F(C<1)|2|F<1|\sum\limits_{j\in C^{*}_{<1}}\lvert F_{j}\rvert\leq 2\lvert F(C^{*}_{<1})\rvert\leq 2\lvert F_{<1}\rvert, where in the final inequality, we use the fact that every FF-ball for clients in C<1C^{*}_{<1} is supported on only fractional facilities. To upper bound our desired quantity, we use this inequality combined with Lemma 8.4 to obtain:

jC<1(|Fj|2)2|F<1|2|C<1|2(dim(C<1)+r)2|C<1|2r.\sum\limits_{j\in C^{*}_{<1}}(\lvert F_{j}\rvert-2)\leq 2\lvert F_{<1}\rvert-2\lvert C^{*}_{<1}\rvert\leq 2(dim(C^{*}_{<1})+r)-2\lvert C^{*}_{<1}\rvert\leq 2r.

Proof of 8.6.

Consider any VkV_{k}, which is the vertex set of HkH_{k}. We already established that HkH_{k} is either a path or even cycle. In both cases, we can order Vk={j1,,jp}V_{k}=\{j_{1},\dots,j_{p}\} such that j1j2jpj_{1}\rightarrow j_{2}\rightarrow\dots\rightarrow j_{p} is a path in the intersection graph. We verify that VkV_{k} satisfies both properties of a chain.

Because VkC<1VV_{k}\subset C^{*}_{<1}\setminus V, we have |Fjq|=2\lvert F_{j_{q}}\rvert=2 for all q[p]q\in[p], and because jqjq+1j_{q}\rightarrow j_{q+1} is an edge in the intersection graph for all q[p1]q\in[p-1], we have FjqFjq+1F_{j_{q}}\cap F_{j_{q+1}}\neq\emptyset for all q[p1]q\in[p-1]. ∎

Proof of 8.7.

Because HkH_{k} is a path, suppose Vk={j1,,jp}V_{k}=\{j_{1},\dots,j_{p}\} such that j1jpj_{1}\rightarrow\dots\rightarrow j_{p}. There are two cases to consider.

We first handle the degenerate case where there exists q[p1]q\in[p-1] such that |FjqFjq+1|=2\lvert F_{j_{q}}\cap F_{j_{q+1}}\rvert=2. Note that each FF-ball for clients in VkV_{k} has size exactly two, so we have Fjq=Fjq+1F_{j_{q}}=F_{j_{q+1}}. Then both facilities in FjqF_{j_{q}} are already in exactly two FF-balls, so jqj_{q} and jq+1j_{q+1} can have no other neighbors in the intersection graph. This implies that HkH_{k} is path of length two, so j1j2j_{1}\rightarrow j_{2}, such that Fj1=Fj2F_{j_{1}}=F_{j_{2}}. To finish this case, we note that |F(Vk)|=2\lvert F(V_{k})\rvert=2, but dim(Vk)=1dim(V_{k})=1, because both constraints y(Fj1)=1y(F_{j_{1}})=1 and y(Fj2)=1y(F_{j_{2}})=1 are the same.

In the second case, for all q[p1]q\in[p-1], we have |FjqFjq+1|=1\lvert F_{j_{q}}\cap F_{j_{q+1}}\rvert=1. Using the fact that each facility is in at most two FF-balls (Proposition 2.7), we have that each non-leaf client on the path has two facilities in its FF-ball - one that it shares with the previous client on the path and one that it shares with the next. For the leaf clients, they share one facility with their single neighbor in the path, and they have one facility that is not shared with any other client in VkV_{k}. With these observations, we can bound:

dim(Vk)|Vk|=12jVk|Fj|=12(2|F(Vk)|2)=|F(Vk)|1.dim(V_{k})\leq\lvert V_{k}\rvert=\frac{1}{2}\sum\limits_{j\in V_{k}}\lvert F_{j}\rvert=\frac{1}{2}(2\lvert F(V_{k})\rvert-2)=\lvert F(V_{k})\rvert-1.

Proof of 8.8.

Each FF-ball for clients along this cycle contains exactly two facilities. Using Proposition 2.7, each client along this cycle shares one of its facilities with the previous client in the cycle and one with the next client. This implies that each facility in F(Vk)F(V_{k}) is in exactly two FF-balls. Combining these two observations gives:

|Vk|=12jVk|Fj|=12(2|F(Vk)|)=|F(Vk)|.\lvert V_{k}\rvert=\frac{1}{2}\sum\limits_{j\in V_{k}}\lvert F_{j}\rvert=\frac{1}{2}(2\lvert F(V_{k})\rvert)=\lvert F(V_{k})\rvert.

Thus, to prove |F(Vk)|>dim(Vk)\lvert F(V_{k})\rvert>dim(V_{k}), it suffices to show that dim(Vk)<|Vk|dim(V_{k})<\lvert V_{k}\rvert. We do this by showing that the constraints {y(Fj)=1jVk}\{y(F_{j})=1\mid j\in V_{k}\} are not linearly independent. By assumption, HkH_{k} is bipartite with bipartition, say LR=VkL\cup R=V_{k}. Consider the linear combination of the constraints {y(Fj)=1jVk}\{y(F_{j})=1\mid j\in V_{k}\}, where every constraint indexed by LL has coefficient 11 and every constraint indexed by RR has coefficient 1-1. Then for every facility in F(Vk)F(V_{k}), it is in exactly two FF-balls, and these two FF-balls must be on opposite sides of the bipartition, so each facility in F(Vk)F(V_{k}) has coefficient 0 in this linear combination. In conclusion, we have constructed a non-trivial linear combination of the constraints {y(Fj)jVk}\{y(F_{j})\mid j\in V_{k}\} whose left hand side is the zero vector, so dim(Vk)|Vk|dim(V_{k})\leq\lvert V_{k}\rvert. ∎

Appendix F Proof of Theorem 6.13: kk-Median with Outliers Pre-Processing

The goal of this section is to prove Theorem 6.13 using the relevant theorems from [KLS18]. Note that we follow exactly the same pre-processing steps; the only difference is that we summarize the results of their pre-processing in a single theorem.

The proof of the knapsack pre-processing, 6.5, follows analogously from the pre-processing steps in [KLS18] as well.

F.1. Preliminaries

We define the notions of extended instances and sparse extended instances for kk-median with outliers. These definitions are useful to capture the properties of our pre-processing.

Extended instances are used to handle the fact that in our pre-processing, we will guess some facilities to pre-open. Then S0S_{0} is the set of guessed facilities.

Definition F.1 (Extended Instance for kk-Median with Outliers).

An extended instance for kk-median with outliers is of the form =(F,C,d,k,m,S0)\mathcal{I}=(F,C,d,k,m,S_{0}), where FF, CC, dd, kk, and mm are defined as in a standard kk-median with outliers instance (see Definition 6.11), and S0FS_{0}\subset F.

As in kk-median with outliers, the goal is to choose a set of at most kk open facilities SFS\subset F and at least mm clients CCC^{\prime}\subset C to serve to minimize the connection costs of the served clients to the open facilities, so jCd(j,S)\sum\limits_{j\in C^{\prime}}d(j,S). However, we add the additional constraint that the set of open facilities must include S0S_{0}.

Further, sparse extended instances give our properties for what it means for the facilities and clients to be “cheap” (see the second and third properties in the next definition, respectively.)

Definition F.2 (Sparse Extended Instance for kk-Median with Outliers).

Let =(F,C,d,k,m,S0)\mathcal{I}^{\prime}=(F,C^{\prime},d,k,m^{\prime},S_{0}) be an extended kk-median with outliers instance and ρ,δ(0,12)\rho,\delta\in(0,\frac{1}{2}), U0U\geq 0 be parameters. We say that \mathcal{I}^{\prime} is (ρ,δ,U)(\rho,\delta,U)-sparse with respect to solution (S,C)(S^{*},{C^{*}}^{\prime}) if the following three properties hold:

  1. (1)

    the cost of the solution (S,C)(S^{*},{C^{*}}^{\prime}) to \mathcal{I}^{\prime} is at most UU

  2. (2)

    for all iSS0i\in S^{*}\setminus S_{0}, we have jCd(j,S)=d(j,i)d(j,i)ρU\sum\limits_{j\in{C^{*}}^{\prime}\mid d(j,S^{*})=d(j,i)}d(j,i)\leq\rho U

  3. (3)

    for all pFCp\in F\cup C^{\prime}, we have |BC(p,δd(p,S))|d(p,S)ρU\lvert B_{C^{\prime}}(p,\delta d(p,S^{*}))\rvert d(p,S^{*})\leq\rho U

F.2. Sparsification

In this section, we pass from the input kk-median with outliers instance to a sparse extended sub-instance by guessing the expensive parts of the input instance. Then on this sparse extended sub-instance, we can strengthen LP1LP_{1}. The following theorems are directly from [KLS18], so we omit the proofs in this paper. The first theorem states that we can efficiently compute a sparse extended sub-instance at the cost of a small increase in approximation ratio.

Theorem F.3.

Let =(F,C,d,m,k)\mathcal{I}=(F,C,d,m,k) be an instance of kk-median with outliers with optimal solution (S,C)(S^{*},C^{*}) and ρ,δ(0,1/2)\rho,\delta\in(0,1/2) be parameters. Then there exists a nO(1/ρ)n^{O(1/\rho)}-time algorithm that given \mathcal{I}, ρ\rho, δ\delta, and an upper bound UU on the cost of the optimal solution (S,C)(S^{*},C^{*})111Note that we are given UU, but not the solution (S,C)(S^{*},C^{*}), outputs nO(1/ρ)n^{O(1/\rho)}-many extended kk-median with outliers instances of the form =(F,C,d,m,k,S0)\mathcal{I}^{\prime}=(F,C^{\prime},d,m^{\prime},k,S_{0}) such that CCC^{\prime}\subset C, m=|CC|m^{\prime}=\lvert C^{*}\cap C^{\prime}\rvert, and S0SS_{0}\subset S. Further, one such instance \mathcal{I}^{\prime} is (ρ,δ,U)(\rho,\delta,U)-sparse with respect to the solution (S,CC)(S^{*},C^{*}\cap C^{\prime}) and satisfies:

(3) 1δ1+δjCCd(j,S0)+jCCd(j,S)U\frac{1-\delta}{1+\delta}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})+\sum\limits_{j\in C^{*}\cap C^{\prime}}d(j,S^{*})\leq U

Once we have our sparse extended sub-instance, say \mathcal{I}^{\prime}, we use these sparsity properties to compute the RR-vector, which is needed for our Extra Invariants.

Theorem F.4.

Let =(F,C,d,m,k,S0)\mathcal{I}^{\prime}=(F,C^{\prime},d,m^{\prime},k,S_{0}) be an extended kk-median with outliers instance and ρ,δ(0,1/2)\rho,\delta\in(0,1/2) and U0U\geq 0. Suppose \mathcal{I}^{\prime} is (ρ,δ,U)(\rho,\delta,U)-sparse instance with respect to solution (S,C)(S^{*},{C^{*}}^{\prime}) to \mathcal{I}^{\prime} such that (S,C)(S^{*},{C^{*}}^{\prime}) has cost UU^{\prime} on \mathcal{I}^{\prime}. Then there exists a polynomial time algorithm that takes as input \mathcal{I}^{\prime}, ρ\rho, δ\delta, and UU and outputs R+CR\in\mathbb{R}_{+}^{C^{\prime}} satisfying:

  1. (1)

    For every t>0t>0 and pFCp\in F\cup C^{\prime}, we have:

    |{jBC(p,δt4+3δ)Rjt}|ρ(1+3δ/4)1δ/4Ut\lvert\{j\in B_{C^{\prime}}(p,\frac{\delta t}{4+3\delta})\mid R_{j}\geq t\}\rvert\leq\frac{\rho(1+3\delta/4)}{1-\delta/4}\frac{U}{t}
  2. (2)

    There exists a solution to \mathcal{I}^{\prime} of cost at most (1+δ/2)U(1+\delta/2)U^{\prime} such that if client jj is connected to facility ii, then d(j,i)Rjd(j,i)\leq R_{j} and for any facility iS0i\notin S_{0}, the total cost of clients connected to ii in this solution is at most ρ(1+δ/2)U\rho(1+\delta/2)U

F.3. Putting it all Together: Proving Theorem 6.13

Combining the algorithms guaranteed by these above two theorems, we show how to construct LPiterLP_{iter} with the desired properties.

Suppose we are given a kk-median with outliers instance =(F,C,d,m,k)\mathcal{I}=(F,C,d,m,k), parameters ρ,δ(0,12)\rho,\delta\in(0,\frac{1}{2}), and an upper bound UU of Opt()Opt(\mathcal{I}). First we run the algorithm guaranteed by Theorem F.3 to obtain nO(1/ρ)n^{O(1/\rho)}-many extended kk-median with outliers instances. Then for each instance, we run the algorithm guaranteed by Theorem F.4 to obtain a vector RR for each such instance.

By Theorem F.3, let =(F,CC,d,m=m|CC|,k,S0)\mathcal{I}^{\prime}=(F,C^{\prime}\subset C,d,m^{\prime}=m-\lvert C^{*}\setminus C^{\prime}\rvert,k,S_{0}) be the instance output by the first algorithm such that \mathcal{I}^{\prime} is (ρ,δ,U)(\rho,\delta,U)-sparse with respect to the solution (S,CC)(S^{*},C^{*}\cap C^{\prime}) and satisfies Equation 3. This sub-instance will be the one that is guaranteed by Theorem 6.13, so from here we need to compute the RR-vector, and construct LPiterLP_{iter} with the desired properties.

Note that the cost of solution (S,CC)(S^{*},C^{*}\cap C^{\prime}) to \mathcal{I}^{\prime} is exactly U=jCCd(j,S)U^{\prime}=\sum\limits_{j\in C^{*}\cap C^{\prime}}d(j,S^{*}). It follows, on this instance \mathcal{I}^{\prime}, the algorithm guaranteed by Theorem F.4 outputs a vector R+CR\in\mathbb{R}_{+}^{C^{\prime}} such that for every t>0t>0 and pFCp\in F\cup C^{\prime}, we have:

|{jBC(p,δt4+3δ)Rjt}|ρ(1+3δ/4)1δ/4Ut\lvert\{j\in B_{C^{\prime}}(p,\frac{\delta t}{4+3\delta})\mid R_{j}\geq t\}\rvert\leq\frac{\rho(1+3\delta/4)}{1-\delta/4}\frac{U}{t}

, and there exists a solution, say (S¯,C¯)(\bar{S},\bar{C}) to \mathcal{I}^{\prime} of cost at most (1+δ/2)U(1+\delta/2)U^{\prime} such that if jj is connected to facility ii, then d(j,i)Rjd(j,i)\leq R_{j} and for any facility iS¯S0i\in\bar{S}\setminus S_{0}, the total cost of clients connected to ii in this solution is at most ρ(1+δ/2)U\rho(1+\delta/2)U.

It remains to construct LPiterLP_{iter}. To do so, first we construct a strengthened LP for the instance \mathcal{I}^{\prime} such that (S¯,C¯)(\bar{S},\bar{C}) is feasible for the strengthened LP, which we call LP1LP_{1}^{\prime}:

(LP1LP_{1}^{\prime}) minx,y\displaystyle\min\limits_{x,y}~{}~{} iF,jCd(i,j)xij\displaystyle\sum\limits_{i\in F,j\in C^{\prime}}d(i,j)x_{ij}
s.t. xijyiiF,jC\displaystyle x_{ij}\leq y_{i}\quad\forall i\in F,j\in C^{\prime} yi=1iS0\displaystyle y_{i}=1\quad\forall i\in S_{0}
iFxij1jC\displaystyle\sum\limits_{i\in F}x_{ij}\leq 1\quad\forall j\in C^{\prime} xij=0iF,jC s.t. d(i,j)>Rj\displaystyle x_{ij}=0\quad\forall i\in F,j\in C^{\prime}\text{ s.t. }d(i,j)>R_{j}
iFyik\displaystyle\sum\limits_{i\in F}y_{i}\leq k jCd(i,j)xijρ(1+δ/2)UyiiS0\displaystyle\sum\limits_{j\in C^{\prime}}d(i,j)x_{ij}\leq\rho(1+\delta/2)Uy_{i}\quad\forall i\notin S_{0}
jC,iFxijm\displaystyle\sum\limits_{j\in C^{\prime},i\in F}x_{ij}\geq m xij=0iS0,jC s.t. d(i,j)>ρ(1+δ/2)U\displaystyle x_{ij}=0\quad\forall i\notin S_{0},j\in C^{\prime}\text{ s.t. }d(i,j)>\rho(1+\delta/2)U
0x,y1\displaystyle 0\leq x,y\leq 1

The left column of constraints are the same as LP1LP_{1} and the right column of constraints are extra constraints that are valid for the solution (S¯,C¯)(\bar{S},\bar{C}) to our sub-instance \mathcal{I}^{\prime}. Because these constraints are valid for the solution (S¯,C¯)(\bar{S},\bar{C}), the following proposition is immediate.

Proposition F.5.

Opt(LP1)(1+δ/2)UOpt(LP_{1}^{\prime})\leq(1+\delta/2)U^{\prime}.

From here, we want to carry out a similar construction as in §2, where we construct LPiterLP_{iter} satisfying all Basic Invariants from LP1LP_{1}. We note that the main difference in our procedure here when compared to §2 is how we eliminate the xx-variables. To compute the FF-balls for LP1LP_{1}^{\prime}, we must carefully duplicate facilities to capture the constraints: jCd(i,j)xijρ(1+δ/2)UyiiS0\sum\limits_{j\in C^{\prime}}d(i,j)x_{ij}\leq\rho(1+\delta/2)Uy_{i}\quad\forall i\notin S_{0}. We pass from LP1LP_{1}^{\prime} to LP2LP_{2} with the next lemma.

Lemma F.6.

There exists a polynomial time algorithm that takes as input LP1LP_{1}^{\prime}, duplicates facilities in FF, and outputs a vector y¯[0,1]F\bar{y}\in[0,1]^{F} and sets FjBF(j,Rj)F_{j}\subset B_{F}(j,R_{j}) for all jCj\in C^{\prime} such that:

  1. (1)

    y¯(Fj)1\bar{y}(F_{j})\leq 1 for all jCj\in C^{\prime}

  2. (2)

    y¯(F)k\bar{y}(F)\leq k

  3. (3)

    jCy¯(Fj)m\sum\limits_{j\in C^{\prime}}\bar{y}(F_{j})\geq m

  4. (4)

    jCiFjd(i,j)y¯iOpt(LP1)\sum\limits_{j\in C}\sum\limits_{i\in F_{j}}d(i,j)\bar{y}_{i}\leq Opt(LP_{1}^{\prime})

  5. (5)

    For all iS0i\in S_{0}, there is one unit of open facility co-located with ii in y¯\bar{y}

  6. (6)

    For every facility ii not co-located with a facility in S0S_{0}, we have jCiFjd(i,j)2ρ(1+δ/2)U\sum\limits_{j\in C^{\prime}\mid i\in F_{j}}d(i,j)\leq 2\rho(1+\delta/2)U

Applying the algorithm guaranteed by the above lemma to LP1LP_{1}^{\prime}, we can obtain the FjF_{j}-sets. Using these FF-balls, we proceed similarly as in §2. Thus, next we randomly discretize the distances to powers of τ>1\tau>1 (up to a random offset) to obtain d(p,q)d^{\prime}(p,q) for all p,qFCp,q\in F\cup C. Again, the possible discretized distances are L(2)=1,L(1)=0,,L()=ατL(-2)=-1,L(-1)=0,\dots,L(\ell)=\alpha\tau^{\ell} for all \ell\in\mathbb{N}, and dd^{\prime} satisfies Lemma 2.2.

Then we define the radius levels and inner balls in the exact same way, so:

j=min1{d(j,i)L()iFj}\ell_{j}=\min\limits_{\ell\geq-1}\{\ell\mid d^{\prime}(j,i)\leq L(\ell)\quad\forall i\in F_{j}\}
Bj={iFjd(j,i)L(j1)}B_{j}=\{i\in F_{j}\mid d^{\prime}(j,i)\leq L(\ell_{j}-1)\}

To complete the data of LPiterLP_{iter} for \mathcal{I}^{\prime}, we need to define the sets CpartC_{part}, CfullC_{full}, and CC^{*}. Here we must slightly modify the construction of §2 to accommodate the set of pre-opened facilities, S0S_{0}. To satisfy Extra Invariant 6.12(1), we create a set C0C_{0} of dummy clients such that for each iS0i\in S_{0}, there exists a dummy client j(i)C0j(i)\in C_{0} that is co-located with ii such that Fj(i)F_{j(i)} has radius level 1-1 and consists of all co-located copies of ii. Thus, we define Cpart=CC_{part}=C^{\prime}, Cfull=C_{full}=\emptyset, and C=C0C^{*}=C^{0}.

This completes the description of LPiterLP_{iter} for sub-instance \mathcal{I}^{\prime}. To complete our algorithm, we output each \mathcal{I}^{\prime} along with LPiterLP_{iter}, S0S_{0}, and RR.

To summarize, our algorithm is to first run the algorithm guaranteed by Theorem F.3 to obtain nO(1/ρ)n^{O(1/\rho)}-many sub-instances. For each sub-instance, we compute RR using Theorem F.4, construct LP1LP_{1}^{\prime}, construct the FF-balls using Lemma F.6, and define the rest of the data of LPiterLP_{iter} as in §2. The runtime of our algorithm is immediate, so it suffices to show that one of the outputs has the desired properties.

In particular, we consider the sub-instance =(F,CC,d,m=m|CC|,k,S0)\mathcal{I}^{\prime}=(F,C^{\prime}\subset C,d,m^{\prime}=m-\lvert C^{*}\setminus C^{\prime}\rvert,k,S_{0}) output by the algorithm guaranteed by Theorem F.3 such that \mathcal{I}^{\prime} is (ρ,δ,U)(\rho,\delta,U)-sparse with respect to the solution (S,CC)(S^{*},C^{*}\cap C^{\prime}) and satisfies Equation 3. For the remainder of this section, we consider the LPiterLP_{iter} constructed for this specific sub-instance. To complete the proof, we verify that LPiterLP_{iter} satisfies the two desired properties.

Proposition F.7.

LPiterLP_{iter} satisfies all Basic and Extra Invariants.

Proof.

It is easy to verify that LPiterLP_{iter} satisfies all Basic Invariants by construction. For the Extra Invariants, we handle them one-by-one.

Extra Invariant 6.12(1) holds by construction of LPiterLP_{iter}. To show Extra Invariant 6.12(2), we again apply Lemma F.6, which states that the FF-balls have the desired property.

To show Extra Invariant 6.12(3), we note that in Lemma F.6, the FF-balls are constructed such that FjBF(j,Rj)F_{j}\subset B_{F}(j,R_{j}), for all jCj\in C^{\prime}. Thus, for all jCj\in C^{\prime} and iFji\in F_{j}, we have d(i,j)Rjd(i,j)\leq R_{j}. Then by definition of the radius levels, we have L(j)τRjL(\ell_{j})\leq\tau R_{j}, as required. Finally, Extra Invariant 6.12(4) follows from the guarantee of Theorem F.4. ∎

Proposition F.8.

logeτ(τ1)(1+δ/2)𝔼[Opt(LPiter)]+1δ1+δjCCd(j,S0)U\frac{\log_{e}\tau}{(\tau-1)(1+\delta/2)}\mathbb{E}[Opt(LP_{iter})]+\frac{1-\delta}{1+\delta}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})\leq U

Proof.

We first show that 𝔼[Opt(LPiter)]τ1logeτOpt(LP1)\mathbb{E}[Opt(LP_{iter})]\leq\frac{\tau-1}{\log_{e}\tau}Opt(LP_{1}^{\prime}). We have Cpart=CC_{part}=C^{\prime}, Cfull=C_{full}=\emptyset, and C=C0C^{*}=C_{0}. Note that the dummy clients in CC^{*} contribute zero to the objective of LPiterLP_{iter}, because they are co-located with one unit of open facility in their FF-balls. Thus Lemma F.6 implies that there exists a feasible solution y¯\bar{y} to LPiterLP_{iter} of cost at most Opt(LP1)Opt(LP_{1}^{\prime}) up to the discretization of the distances. The cost of discretization is bounded by Lemma 2.2, and immediately gives the extra τ1logeτ\frac{\tau-1}{\log_{e}\tau}-factor. The factor of τ1logeτ\frac{\tau-1}{\log_{e}\tau} is due to the cost of discretization, which is bounded by Lemma 2.2.

Now we relate Opt(LP1)Opt(LP_{1}^{\prime}) to U=jCCd(j,S)U^{\prime}=\sum\limits_{j\in C^{*}\cap C^{\prime}}d(j,S^{*}), which satisfies Equation 3 by the guarantees of Theorem F.3. Combining Equation 3 with Proposition F.5, we can obtain our final bound:

logeτ(τ1)(1+δ/2)𝔼[Opt(LPiter)]+1δ1+δjCCd(j,S0)\displaystyle\frac{\log_{e}\tau}{(\tau-1)(1+\delta/2)}\mathbb{E}[Opt(LP_{iter})]+\frac{1-\delta}{1+\delta}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0}) 11+δ/2Opt(LP1)+1δ1+δjCCd(j,S0)\displaystyle\leq\frac{1}{1+\delta/2}Opt(LP_{1}^{\prime})+\frac{1-\delta}{1+\delta}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})
jCCd(j,S)+1δ1+δjCCd(j,S0)\displaystyle\leq\sum\limits_{j\in C^{*}\cap C^{\prime}}d(j,S^{*})+\frac{1-\delta}{1+\delta}\sum\limits_{j\in C^{*}\setminus C^{\prime}}d(j,S_{0})
U\displaystyle\leq U