Introduction
Clustering with capacities models settings in which a center can handle only a bounded amount of work: a server hosts a limited number of jobs, a facility serves a limited number of customers, and an electoral district contains a bounded number of voters [31 , 36 ] . In the uniform capacitated ( k , z ) (k,z) ( k , z ) -clustering problem, we are given a multiset P P P of n n n clients in a metric space, a set F F F of locations where centers may be opened, and positive integers k k k and U U U . A solution opens at most k k k centers and assigns every client to an open center so that no center serves more than U U U clients. Its cost is the sum, over all clients, of the distance to the assigned center raised to a fixed power z ≥ 1 z \ge1 z ≥ 1 . The cases z = 1 z = 1 z = 1 and z = 2 z = 2 z = 2 are capacitated k k k -median and capacitated k k k -means.
Without capacities, these problems are well understood in low-dimensional spaces: for every fixed z z z , they admit polynomial-time approximation schemes in fixed-dimensional Euclidean spaces and in metrics of bounded doubling dimension [14 , 71 , 35 , 57 , 32 ] . All these algorithms rely on locality. In an optimal solution, every client is served by a closest open center, so a region of the space interacts with the rest of the instance only through a few points near its boundary, and a local change of the solution affects only nearby clients. Capacities destroy this property. A client may have to travel to a far-away center because the nearby centers are full, and an algorithm must keep track of how many clients cross every boundary. As a result, much less is known. Arora, Raghavan and Rao [14 ] gave a quasi-polynomial-time approximation scheme for capacitated k k k -median in the plane that violates the capacities by a factor of 1 + ε 1 + \varepsilon 1 + ε . Cohen-Addad [31 ] gave approximation schemes that respect uniform capacities, in quasi-polynomial time for k k k -median and k k k -means in doubling metrics and in polynomial time for k k k -median in the plane. Other approximation schemes for capacitated clustering in Euclidean and doubling metrics run in time exponential in k k k [CAL19, DX15, BJK18, BFS24, BGI25].
In general metrics, no constant-factor approximation is known even for capacitated k k k -median, and the natural LP relaxation has an unbounded integrality gap even if ( 2 − c ) k (2-c)k ( 2 − c ) k centers may be opened for a constant c > 0 c > 0 c > 0 [74 ] . A long line of work therefore violates the capacities by a factor of 1 + ε 1 + \varepsilon 1 + ε or opens ( 1 + ε ) k (1 + \varepsilon)k ( 1 + ε ) k centers (§ 3 ). With ( 1 + ε ) k (1 + \varepsilon)k ( 1 + ε ) k centers, the best previous ratio for uniform capacitated k k k -median was O ( ε − 2 log ( 1 / ε ) ) O(\varepsilon^{-2}\log(1/\varepsilon)) O ( ε − 2 log ( 1/ ε )) [74 , 75 ] . Lower bounds are known only for the uncapacitated problems [31 ] : k k k -median cannot be approximated better than 1 + 2 / e 1 + 2/e 1 + 2/ e in general metrics [68 ] , k k k -means is APX-hard in high-dimensional Euclidean space [6 ] , under the unique games conjecture both are hard to approximate within some constant factor in high dimensions even with ( 1 + c ) k (1+c)k ( 1 + c ) k centers for some c > 0 c > 0 c > 0 [23 ] , and both are NP-hard in the plane [85 , 83 ] .
We study uniform capacitated ( k , z ) (k,z) ( k , z ) -clustering when the algorithm may open
K : = k + ⌊ ε k ⌋ K := k + \lfloor\varepsilon k \rfloor K := k + ⌊ ε k ⌋
centers for a fixed ε ∈ ( 0 , 1 ] \varepsilon\in(0,1] ε ∈ ( 0 , 1 ] , while the capacities must be respected exactly. In low dimensions, with 2 k 2k 2 k centers, the problem is easy for soft capacities and in Euclidean space: splitting every cluster of a near-optimal uncapacitated solution into blocks of at most U U U clients gives fewer than 2 k 2k 2 k centers and a nearly optimal cost (§ 2.1 ). The question is how fast the ratio grows as the number of extra centers decreases. In low dimensions, we give deterministic polynomial-time algorithms whose ratios stay bounded as ε → 0 \varepsilon\to0 ε → 0 . Except for k k k -median in the plane, where a polynomial-time approximation scheme with k k k centers is known [31 ] , these are the first polynomial-time algorithms with ( 1 + ε ) k (1 + \varepsilon)k ( 1 + ε ) k centers whose ratio is bounded independently of ε \varepsilon ε ; before, ratios independent of ε \varepsilon ε in polynomial time needed a constant factor more centers [16 , 65 ] or a constant factor larger capacities [44 BFRS15] . For soft capacities, our ratio is 3 z − ( 3 z − 1 ) ε 3^z - (3^z - 1)\varepsilon 3 z − ( 3 z − 1 ) ε , and in Euclidean space, 3 z 3^z 3 z improves to a smaller constant, such as 5 5 5 for k k k -means. So the ratio decreases linearly in ε \varepsilon ε . to the trivial ratio 1 at ε = 1 \varepsilon= 1 ε = 1 , with twice the slope of the bound for rescuing one block per extra center (§ 2.3 ). For hard capacities, we convert these solutions. In general metrics, deleting centers greedily gives ratio 3 + 2 ln ( 1 / ε ) 3 + 2\ln(1/\varepsilon) 3 + 2 ln ( 1/ ε ) for k k k -median with soft capacities and ( 2 + o ( 1 ) ) z ln z ( 1 / ε ) (2 + o(1))^{z}\ln^{z}(1/\varepsilon) ( 2 + o ( 1 ) ) z ln z ( 1/ ε ) as ε → 0 \varepsilon\to0 ε → 0 for every z z z ; in low dimensions, it also improves our ratios for hard capacities when ε \varepsilon ε is not small.
Our results
Our first result concerns Euclidean space, where centers may be placed anywhere. The dimension d d d may be part of the input; only the clients need to have bounded doubling dimension, which holds for every set of clients in fixed dimension.
Theorem 1.1 (Euclidean space). For all fixed κ ≥ 1 \kappa\ge1 κ ≥ 1 , z ≥ 1 z \ge1 z ≥ 1 , ε ∈ ( 0 , 1 ] \varepsilon\in(0,1] ε ∈ ( 0 , 1 ] and δ > 0 \delta> 0 δ > 0 , there is a deterministic algorithm that, given n n n clients in R d \mathbb{R}^{d} R d of doubling dimension at most κ \kappa κ and integers k k k and U U U , outputs at most K K K centers in R d \mathbb{R}^{d} R d , which are distinct if O P T > 0 \mathrm{OPT} > 0 OPT > 0 , and an assignment in which every center serves at most U U U clients, with cost at most
( B z − ( B z − 1 ) ε + δ ) ⋅ O P T , where B z = min { u + 2 z v : ∣ 1 + t ∣ z ≤ u + g t + v ∣ t ∣ z for all t ∈ R } , \left(B_{z} - (B_{z} - 1)\varepsilon+ \delta\right)\cdot\mathrm{OPT}, \qquad\text{where } B_{z} = \min\{u + 2^{z}v : |1+t|^{z} \le u + gt + v|t|^{z}\text{ for all }t \in\mathbb{R}\}, ( B z − ( B z − 1 ) ε + δ ) ⋅ OPT , where B z = min { u + 2 z v : ∣1 + t ∣ z ≤ u + g t + v ∣ t ∣ z for all t ∈ R } , the minimum is over ( u , g , v ) ∈ R 3 (u,g,v) \in\mathbb{R}^{3} ( u , g , v ) ∈ R 3 , and O P T \mathrm{OPT} OPT is the optimal cost with k k k centers. The running time is polynomial in the input size, with a degree that depends on κ \kappa κ , z z z , ε \varepsilon ε and δ \delta δ , but not on d d d .
For k k k -median and k k k -means, B 1 = 3 B_{1} = 3 B 1 = 3 and B 2 = 5 B_{2} = 5 B 2 = 5 , so the ratio is 3 − 2 ε + δ 3 - 2\varepsilon+ \delta 3 − 2 ε + δ and 5 − 4 ε + δ 5 - 4\varepsilon+ \delta 5 − 4 ε + δ . In § 2.8 , we show that B z < 3 z B_{z} < 3^{z} B z < 3 z for z > 1 z > 1 z > 1 (Figure 1 (d)), that B z B_{z} B z is the value of a one-dimensional moment problem, and that it is the best constant for movability with optimal representatives (Theorem 2.7).
Figure 1. Our ratios without the additive δ \delta δ . (a) Soft capacities and R d \mathbb{R}^d R d with centers anywhere. (b) Hard capacities in low dimensions: k k k -means in doubling metrics and in R d \mathbb{R}^d R d with a finite set F F F , and k k k -median. Each curve is the smaller of the bound of Theorem 1.3 and the greedy bound of Theorem 1.4 with ρ = 1 \rho=1 ρ = 1 ; the dots mark where the greedy bound becomes smaller. (c) General metrics (Theorem 1.4 ): 3 + 2 ln ( 1 / ε ) 3+2\ln(1/\varepsilon) 3 + 2 ln ( 1/ ε ) and 7 + 2 ln ( 1 / ε ) 7+2\ln(1/\varepsilon) 7 + 2 ln ( 1/ ε ) for k k k -median, and L 2 ( 9 , ε ) L_2(9,\varepsilon) L 2 ( 9 , ε ) and L 2 ( 49 , ε ) L_2(49,\varepsilon) L 2 ( 49 , ε ) for k k k -means. (d) The ratios as ε → 0 \varepsilon\to0 ε → 0 for soft capacities and in R d \mathbb{R}^d R d , 3 z 3^z 3 z in doubling metrics and B z B_z B z in R d \mathbb{R}^d R d ; the values of B z B_z B z were computed numerically, the dots mark B 1 = 3 B_1=3 B 1 = 3 , B 2 = 5 B_2=5 B 2 = 5 , B 3 ≈ 16.83 B_3\approx16.83 B 3 ≈ 16.83 and B 4 ≈ 53.41 B_4\approx53.41 B 4 ≈ 53.41 . Panels (b) to (d) use a logarithmic scale.
Our other results concern a metric space in which the set F F F of locations is finite. With soft capacities, several centers may be opened at the same location; with hard capacities, every location hosts at most one center. In the theorems below, O P T \mathrm{OPT} OPT is the optimal cost with k k k centers under the same type of capacities.
Theorem 1.2 (Soft capacities). For all fixed κ ≥ 1 \kappa\ge1 κ ≥ 1 , z ≥ 1 z \ge1 z ≥ 1 , ε ∈ ( 0 , 1 ] \varepsilon\in(0,1] ε ∈ ( 0 , 1 ] and δ > 0 \delta> 0 δ > 0 , there is a deterministic polynomial-time algorithm that, given an instance in which P P P or F F F has doubling dimension at most κ \kappa κ , outputs at most K K K centers at locations in F F F , each serving at most U U U clients, with cost at most ( 3 z − ( 3 z − 1 ) ε + δ ) ⋅ O P T (3^{z} - (3^{z} - 1)\varepsilon+ \delta)\cdot\mathrm{OPT} ( 3 z − ( 3 z − 1 ) ε + δ ) ⋅ OPT .
Theorem 1.3 (Hard capacities). For all fixed κ ≥ 1 \kappa\ge1 κ ≥ 1 , z ≥ 1 z \ge1 z ≥ 1 , ε ∈ ( 0 , 1 ] \varepsilon\in(0,1] ε ∈ ( 0 , 1 ] and δ > 0 \delta> 0 δ > 0 , there is a deterministic polynomial-time algorithm that, given an instance as in Theorem 1.2 , outputs at most K K K centers at distinct locations in F F F , each serving at most U U U clients, with cost at most
( ( 1 + 2 ( 3 z − ( 3 z − 1 ) ε ) 1 / z ) z + δ ) ⋅ O P T . \left((1 + 2(3^{z} - (3^{z} - 1)\varepsilon)^{1/z})^{z} + \delta\right)\cdot\mathrm{OPT}. ( ( 1 + 2 ( 3 z − ( 3 z − 1 ) ε ) 1/ z ) z + δ ) ⋅ OPT . For instances in R d \mathbb{R}^{d} R d with clients of doubling dimension at most κ \kappa κ and a finite set F ⊂ R d F \subset\mathbb{R}^{d} F ⊂ R d of locations, 3 z 3^{z} 3 z can be replaced by B z B_{z} B z , and for k k k -means, the cost is at most ( 11 − 8 ε + 2 5 − 4 ε + δ ) ⋅ O P T (11 - 8\varepsilon+ 2\sqrt{5 - 4\varepsilon} + \delta)\cdot\mathrm{OPT} ( 11 − 8 ε + 2 5 − 4 ε + δ ) ⋅ OPT .
For fixed z z z and δ ≤ 1 / 2 \delta\le1/2 δ ≤ 1/2 , if P ∪ F P \cup F P ∪ F has doubling dimension at most κ \kappa κ , the algorithms of Theorems 1.2 and 1.3 run in time ( n + ∣ F ∣ ) κ / ( ε δ ) O ( κ / δ ) ( log Δ ) O ( 1 ) (n + |F|)^{\kappa/(\varepsilon\delta)^{O(\kappa/\delta)}}(\log\Delta)^{O(1)} ( n + ∣ F ∣ ) κ / ( ε δ ) O ( κ / δ ) ( log Δ ) O ( 1 ) , where Δ \Delta Δ is the aspect ratio of P ∪ F P \cup F P ∪ F ; if only one side has, as in Theorem 1.1 , the exponent becomes ( 1 / ( ε δ ) ) 1 / δ O ( κ ) (1/(\varepsilon\delta))^{1/\delta^{O(\kappa)}} ( 1/ ( ε δ ) ) 1/ δ O ( κ ) (§ 8 ).
Our last result holds in every finite metric space and for every z ≥ 1 z \ge1 z ≥ 1 . For ρ ≥ 1 \rho\ge1 ρ ≥ 1 and ε ∈ ( 0 , 1 ] \varepsilon\in(0,1] ε ∈ ( 0 , 1 ] , let L z ( ρ , ε ) ≥ ρ L_z(\rho,\varepsilon) \ge\rho L z ( ρ , ε ) ≥ ρ be defined by
∫ ρ L z ( ρ , ε ) d y ( y 1 / z + 2 ) z − y = ln 1 ε , \int_{\rho}^{L_z(\rho,\varepsilon)} \frac{dy}{(y^{1/z} + 2)^z - y} = \ln\frac{1}{\varepsilon}, ∫ ρ L z ( ρ , ε ) ( y 1/ z + 2 ) z − y d y = ln ε 1 ,
that is, L z ( ρ , ε ) L_z(\rho,\varepsilon) L z ( ρ , ε ) is the value at time ln ( 1 / ε ) \ln(1/\varepsilon) ln ( 1/ ε ) of the solution of y ′ = ( y 1 / z + 2 ) z − y y'=(y^{1/z}+2)^z-y y ′ = ( y 1/ z + 2 ) z − y with y ( 0 ) = ρ y(0)=\rho y ( 0 ) = ρ . For instance, L 1 ( ρ , ε ) = ρ + 2 ln ( 1 / ε ) L_1(\rho,\varepsilon)=\rho+2\ln(1/\varepsilon) L 1 ( ρ , ε ) = ρ + 2 ln ( 1/ ε ) , and s = L 2 ( ρ , ε ) 1 / 2 s=L_2(\rho,\varepsilon)^{1/2} s = L 2 ( ρ , ε ) 1/2 is the solution of s − ln ( 1 + s ) = ρ − ln ( 1 + ρ ) + 2 ln ( 1 / ε ) s-\ln(1+s)=\sqrt{\rho}-\ln(1+\sqrt{\rho})+2\ln(1/\varepsilon) s − ln ( 1 + s ) = ρ − ln ( 1 + ρ ) + 2 ln ( 1/ ε ) . For fixed z z z and ρ \rho ρ , L z ( ρ , ε ) = ( 2 + o ( 1 ) ) z ln z ( 1 / ε ) L_z(\rho,\varepsilon)=(2+o(1))^z\ln^z(1/\varepsilon) L z ( ρ , ε ) = ( 2 + o ( 1 ) ) z ln z ( 1/ ε ) as ε → 0 \varepsilon\to0 ε → 0 (§ 11.2 ).
Theorem 1.4 (General metrics). Let z ≥ 1 z\ge1 z ≥ 1 and ρ ≥ 1 \rho\ge1 ρ ≥ 1 . For all fixed ε ∈ ( 0 , 1 ] \varepsilon\in(0,1] ε ∈ ( 0 , 1 ] and δ > 0 \delta>0 δ > 0 , there is a deterministic polynomial-time algorithm that, given an instance in a finite metric space and at most k k k centers at locations in F F F such that assigning every client to a closest center costs at most ρ \rho ρ times the minimum cost of such an uncapacitated solution, outputs at most K K K centers at locations in F F F , each serving at most U U U clients, with cost at most ( L z ( ρ , ε ) + δ ) ⋅ O P T (L_z(\rho,\varepsilon)+\delta)\cdot\mathrm{OPT} ( L z ( ρ , ε ) + δ ) ⋅ OPT for soft capacities, and at distinct locations with cost at most ( L z ( ( 1 + 2 ρ 1 / z ) z , ε ) + δ ) ⋅ O P T (L_z((1+2\rho^{1/z})^z,\varepsilon)+\delta)\cdot\mathrm{OPT} ( L z (( 1 + 2 ρ 1/ z ) z , ε ) + δ ) ⋅ OPT for hard capacities.
In every finite metric space, local search gives ρ = 3 + δ \rho=3+\delta ρ = 3 + δ for k k k -median [9 ] , so Theorem 1.4 gives the ratios 3 + 2 ln ( 1 / ε ) + δ 3+2\ln(1/\varepsilon)+\delta 3 + 2 ln ( 1/ ε ) + δ and 7 + 2 ln ( 1 / ε ) + δ 7+2\ln(1/\varepsilon)+\delta 7 + 2 ln ( 1/ ε ) + δ , and the randomized algorithm of [34 ] gives 2 + 2 ln ( 1 / ε ) + δ 2+2\ln(1/\varepsilon)+\delta 2 + 2 ln ( 1/ ε ) + δ and 5 + 2 ln ( 1 / ε ) + δ 5+2\ln(1/\varepsilon)+\delta 5 + 2 ln ( 1/ ε ) + δ with high probability. For k k k -means, ρ = 9 + δ \rho=9+\delta ρ = 9 + δ [13 ] or ρ = 4.9 + δ \rho=4.9+\delta ρ = 4.9 + δ [ACCA+27], and for every fixed z z z , local search gives a constant ρ \rho ρ [62 ] . In the settings of Theorems 1.2 and 1.3 , we can take ρ = 1 + δ \rho=1+\delta ρ = 1 + δ (§ 11.2 ). For hard capacities, this gives the ratio L z ( 3 z , ε ) + δ L_z(3^z,\varepsilon)+\delta L z ( 3 z , ε ) + δ , which is smaller than the ratio of Theorem 1.3 for 0.21 < ε < 1 0.21<\varepsilon<1 0.21 < ε < 1 for k k k -median, and for 0.27 < ε < 1 0.27<\varepsilon<1 0.27 < ε < 1 for k k k -means in doubling metrics.
Table 1 compares our ratios with previous results. Theorem 1.4 improves the ratio O ( ε − 2 log ( 1 / ε ) ) O(\varepsilon^{-2}\log(1/\varepsilon)) O ( ε − 2 log ( 1/ ε )) of Li [74 , 75 ] for k k k -median with ( 1 + ε ) k (1+\varepsilon)k ( 1 + ε ) k centers to 3 + 2 ln ( 1 / ε ) 3+2\ln(1/\varepsilon) 3 + 2 ln ( 1/ ε ) for soft and 7 + 2 ln ( 1 / ε ) 7+2\ln(1/\varepsilon) 7 + 2 ln ( 1/ ε ) for hard capacities, and for k k k -means, we are not aware of a previous polynomial-time algorithm with a constant ratio under these conditions. Figure 1 shows how our ratios depend on ε \varepsilon ε and z z z .
Table 1. Approximation ratios of our algorithms (Theorems 1.1 to 1.4 ), with K = k + ⌊ ε k ⌋ K=k+\lfloor\varepsilon k\rfloor K = k + ⌊ ε k ⌋ centers and exact capacities, and of previous algorithms. Here ε \varepsilon ε measures how much the number of centers or the capacities may be exceeded, δ > 0 \delta>0 δ > 0 is an arbitrarily small constant, which we omit from our ratios, and poly, qpoly and FPT mean time n O ( 1 ) n^{O(1)} n O ( 1 ) , n polylog ( n ) n^{\operatorname{polylog}(n)} n polylog ( n ) and f ( k , δ ) ⋅ n O ( 1 ) f(k,\delta)\cdot n^{O(1)} f ( k , δ ) ⋅ n O ( 1 ) . In R d \mathbb{R}^{d} R d , the clients have bounded doubling dimension, and centers may lie anywhere with soft capacities and at distinct points of a finite set F F F with hard capacities; in doubling metrics, the clients or the locations have bounded doubling dimension. With hard capacities, the second term of each minimum is the bound of Theorem 1.4 with ρ = 1 \rho=1 ρ = 1 . In general metrics, ρ z \rho_{z} ρ z is the ratio of an algorithm for uncapacitated ( k , z ) (k,z) ( k , z ) -clustering, such as ρ 1 = 3 \rho_{1}=3 ρ 1 = 3 [9 ] and ρ 2 = 9 \rho_{2}=9 ρ 2 = 9 [13 ] ; the randomized algorithm of [34 ] gives ρ 1 = 2 \rho_{1}=2 ρ 1 = 2 , and [ACCA+27] gives ρ 2 = 4.9 \rho_{2}=4.9 ρ 2 = 4.9 . For ε = 1 / 2 \varepsilon=1/2 ε = 1/2 , L 2 ( 9 , ε ) ≈ 22.6 L_{2}(9,\varepsilon)\approx22.6 L 2 ( 9 , ε ) ≈ 22.6 and L 2 ( 49 , ε ) ≈ 73.4 L_{2}(49,\varepsilon)\approx73.4 L 2 ( 49 , ε ) ≈ 73.4 .
Our techniques
We split the clusters of a near-optimal uncapacitated solution into at most 2 k − 1 2k-1 2 k − 1 blocks of at most U U U clients each, and compare with an optimal solution, which moves the mass of every block along a transport plan. A block is ( u , v ) (u,v) ( u , v ) -movable if its clients can be assigned to any destinations of its mass at cost at most u u u times its internal cost plus v v v times the cost of moving its mass; if every block follows the optimal solution, the cost is at most β = u + 2 z v \beta=u+2^{z}v β = u + 2 z v times the optimum. With K K K centers, we can rescue blocks: a rescued block gets a private center and does not move, which saves its share of the cost above the internal cost of all blocks. Rescuing blocks one at a time saves only an ε / 2 \varepsilon/2 ε /2 -fraction of this extra cost, since there may be almost 2 k 2k 2 k blocks. Our key observation is that rescuing blocks also empties centers of the optimal solution, which can then be closed: the transport plan can be taken to be a forest, and rescuing all blocks of a component of the forest costs only its excess , the number of its blocks minus the number of its centers. As there are at most 2 k − 1 2k-1 2 k − 1 blocks and at most k k k centers, each extra center then rescues about two blocks. A component may contain almost all blocks, so we first cut the forest into small components by deleting a few vertices. Our rescue lemma (Theorem 2.5) shows that ⌊ ε k ⌋ \lfloor\varepsilon k\rfloor ⌊ ε k ⌋ extra centers save almost an ε \varepsilon ε -fraction of the extra cost, which gives the ratio β − ( β − 1 ) ε \beta-(\beta-1)\varepsilon β − ( β − 1 ) ε .
The extra centers also make polynomial time possible. The algorithm does not know the optimal solution, so it optimizes over all ways of routing the blocks, by a dynamic program over a network built from a hierarchical decomposition. With a constant number of portals per cell, the network is accurate except for pairs of points that the decomposition cuts badly, and a reserved part of the extra centers rescues the few blocks on such pairs, so that the dynamic program runs in polynomial time. In Euclidean space, a random matching between the clients of a block and the destinations of its mass cancels a first-order term, so that movability reduces to the one-dimensional inequality in Theorem 1.1 . Theorems 1.1 and 1.2 are instances of one framework theorem (Theorem 2.6 ) for block partitions in which every block is ( u , v ) (u,v) ( u , v ) -movable: the triangle inequality gives β = 3 z \beta= 3^{z} β = 3 z , and Euclidean geometry gives β = B z \beta= B_{z} β = B z . Theorem 1.3 adds a conversion from soft to hard capacities due to Li [74 ] , which we extend to all z z z (the projection lemma ).
In general metrics, there is no decomposition to optimize over, and Theorem 1.4 is not an instance of the framework theorem. It starts from one center per block, converted to hard capacities by the same lemma if needed, and deletes centers greedily, as the reverse greedy algorithm [46 , 8 ] does starting from all locations. The cost is supermodular in the set of centers, and the projection lemma, applied to an optimal solution, shows that for k k k -median, the cheapest deletion from k + r k+r k + r centers costs at most 2 O P T / r 2\mathrm{OPT}/r 2 OPT / r . So the deletions from fewer than 2 k 2k 2 k down to K K K centers cost about 2 ln ( 1 / ε ) O P T 2\ln(1/\varepsilon)\mathrm{OPT} 2 ln ( 1/ ε ) OPT , instead of the loss of order log n \log n log n when starting from all locations, and for z > 1 z>1 z > 1 , the same argument bounds the ratio by the solution L z L_z L z of a differential equation.
Organization. § 2 explains our approach: blocks and the rescue lemma (§ 2.1 to § 2.3 ), the network and the framework theorem (§ 2.4 to § 2.6 ), and the extensions (§ 2.7 to § 2.9 ). After related work (§ 3 ) and preliminaries (§ 4 ), § 5 to § 8 prove the framework theorem, § 9 to § 11 prove our results, and § 12 lists open questions; the appendices characterize B z B_z B z and treat rational arithmetic.
Our Approach
Setting. An instance consists of a metric space ( V , dist ) (V,\operatorname{dist}) ( V , dist ) , a set F ⊆ V F \subseteq V F ⊆ V of locations , which is finite except in the Euclidean setting below, a multiset P P P of n n n clients at points of V V V , and positive integers k k k and U U U ; the exponent z ≥ 1 z \ge1 z ≥ 1 is fixed. A solution consists of centers, each placed at a location in F F F , and an assignment σ \sigma σ that maps every client to a center so that every center serves at most U U U clients. Its cost is cost ( σ ) = ∑ p ∈ P dist ( p , σ ( p ) ) z \operatorname{cost}(\sigma)=\sum_{p\in P}\operatorname{dist}(p,\sigma(p))^{z} cost ( σ ) = ∑ p ∈ P dist ( p , σ ( p ) ) z , where dist ( p , σ ( p ) ) \operatorname{dist}(p,\sigma(p)) dist ( p , σ ( p )) is the distance from p p p to the location of σ ( p ) \sigma(p) σ ( p ) . With soft capacities, several centers may be placed at the same location; with hard capacities, the centers are at distinct locations. In the Euclidean setting , V = F = R d V=F=\mathbb{R}^{d} V = F = R d with the Euclidean norm ∥ ⋅ ∥ \lVert\cdot\rVert ∥ ⋅ ∥ , and capacities are soft. O P T \mathrm{OPT} OPT denotes the minimum cost of a solution with at most k k k centers, with the type of capacities clear from the context. In the Euclidean setting, O P T \mathrm{OPT} OPT is also the infimum of the cost over solutions with distinct centers, since coinciding centers can be moved apart at an arbitrarily small cost, and our algorithm returns distinct centers if O P T > 0 \mathrm{OPT}>0 OPT > 0 . We assume k < n k<n k < n and that a solution with at most k k k centers exists; for soft capacities and in the Euclidean setting, this means n ≤ k U n\leq kU n ≤ k U . A metric space has doubling dimension at most κ \kappa κ if every ball is covered by 2 κ 2^{\kappa} 2 κ balls of half its radius, and the doubling dimension of a multiset of points is that of the set of its points; § 4 collects this and other standard facts.
This section explains the algorithms and their analysis. We first consider soft capacities in a metric space with a finite set F F F of locations such that P ∪ F P\cup F P ∪ F has doubling dimension at most κ \kappa κ . § 2.7 and § 2.8 describe the changes for one-sided low dimension and for Euclidean space, and § 2.9 treats hard capacities and general metrics. The definitions, lemmas and theorems stated in this section are used in the rest of the paper, while the network, the decompositions and the tools for the extensions are described informally here and defined in § 6 , § 7 and § 9 to § 11 . The accuracy parameter η ∈ ( 0 , 1 / 10 ] \eta\in(0,1/10] η ∈ ( 0 , 1/10 ] is chosen from δ \delta δ , of order δ / 3 \delta/3 δ /3 , and the other parameters, collected in (9) in § 8 , depend on κ \kappa κ , z z z , ε \varepsilon ε and η \eta η . Algorithm 1 summarizes the algorithm. Its analysis compares the output with an unknown reference solution through a transport plan and a set of rescued blocks, which the algorithm does not compute; its dynamic program chooses its own rescued blocks.
Algorithm 1 Soft capacities, P ∪ F P \cup F P ∪ F of bounded doubling dimension. Input: clients P P P , locations F F F , integers k k k and U U U ; fixed κ \kappa κ , z z z , ε \varepsilon ε and η \eta η , and ( u , v ) = ( 3 z − 1 , ( 3 / 2 ) z − 1 ) (u,v) = (3^{z-1},(3/2)^{z-1}) ( u , v ) = ( 3 z − 1 , ( 3/2 ) z − 1 ) (Theorem 2.3).
If k < k 0 k < k_0 k < k 0 , with the constant k 0 = O ( 1 / η 2 ) k_0 = O(1/\eta^2) k 0 = O ( 1/ η 2 ) of (9) , try every multiset of at most k k k locations, compute an optimal assignment to centers at these locations by a minimum-cost flow, and return the best solution found.
Compute an uncapacitated solution with at most k k k centers at locations in F F F and cost at most ( 1 + η ) OPT (1+\eta)\operatorname{OPT} ( 1 + η ) OPT (Theorem 4.3 ), and split its clusters into blocks of at most U U U clients (§ 2.1 ).
For every hierarchical decomposition D \mathcal{D} D in a polynomial-size family H \mathcal{H} H , compute a network solution of minimum cost in the network N D \mathcal{N}_{\mathcal{D}} N D by dynamic programming (§ 2.4 and § 2.5 ).
Turn the cheapest network solution found into a clustering: match the clients of every normal block to the end points of its paths, serve every rescued block by a center at its representative (Theorem 7.5), and return the result.
Blocks and movable blocks
Reassigning every client to a closest center turns a solution with at most k k k centers into an uncapacitated solution that is no more expensive, so Theorem 4.3 gives an uncapacitated solution with at most k k k centers at locations in F F F and cost at most ( 1 + η ) OPT (1+\eta)\operatorname{OPT} ( 1 + η ) OPT . We split every cluster Q Q Q of it arbitrarily into ⌈ ∣ Q ∣ / U ⌉ \lceil|Q|/U\rceil ⌈ ∣ Q ∣/ U ⌉ blocks of at most U U U clients each.
Definition 2.1 (Block partition). A block partition of P P P consists of a partition of P P P into blocks P 1 , … , P m P_1,\ldots,P_m P 1 , … , P m with m ≤ 2 k − 1 m \le2k-1 m ≤ 2 k − 1 and w i : = ∣ P i ∣ ≤ U w_i := |P_i| \le U w i := ∣ P i ∣ ≤ U for all i i i , and a representative a i ∈ F a_i \in F a i ∈ F for every block. The internal cost of block i i i is A i : = ∑ p ∈ P i dist ( p , a i ) z A_i := \sum_{p\in P_i}\operatorname{dist}(p,a_i)^z A i := ∑ p ∈ P i dist ( p , a i ) z , and A : = ∑ i A i A := \sum_i A_i A := ∑ i A i .
If the representative of a block is the center of its cluster, then A A A is the cost of the uncapacitated solution, so A ≤ ( 1 + η ) OPT A \le(1+\eta)\operatorname{OPT} A ≤ ( 1 + η ) OPT , and since n ≤ k U n \le kU n ≤ k U and there are at most k k k clusters,
m = ∑ Q ⌈ ∣ Q ∣ U ⌉ < ∑ Q ( ∣ Q ∣ U + 1 ) ≤ 2 k . (1) m = \sum_Q \left\lceil\frac{|Q|}{U}\right\rceil< \sum_Q \left(\frac{|Q|}{U}+1\right) \le2k. \tag*{(1)} m = Q ∑ ⌈ U ∣ Q ∣ ⌉ < Q ∑ ( U ∣ Q ∣ + 1 ) ≤ 2 k . (1)
So at most 2 k − 1 2k-1 2 k − 1 centers, one at the representative of every block, give a feasible solution of cost A ≤ ( 1 + η ) OPT A \le(1+\eta)\operatorname{OPT} A ≤ ( 1 + η ) OPT . In Euclidean space, we use other representatives (§ 2.8 ). With K K K centers, at least m − K m-K m − K blocks must share centers with other blocks, and their clients must move. We measure this by the cost of moving the mass of a block, that is, w i w_i w i units placed at a i a_i a i .
Definition 2.2 (Movable block). Let u ≥ 1 u \ge1 u ≥ 1 and v ≥ 0 v \ge0 v ≥ 0 . Block i i i is ( u , v ) (u,v) ( u , v ) -movable if for all locations y 1 , … , y w i ∈ F y_1,\ldots,y_{w_i} \in F y 1 , … , y w i ∈ F , some bijection ϕ : P i → { 1 , … , w i } \phi:P_i \to\{1,\ldots,w_i\} ϕ : P i → { 1 , … , w i } satisfies
∑ p ∈ P i dist ( p , y ϕ ( p ) ) z ≤ u ⋅ A i + v ⋅ ∑ r = 1 w i dist ( a i , y r ) z . \sum_{p\in P_i}\operatorname{dist}(p,y_{\phi(p)})^z \le u \cdot A_i + v \cdot\sum_{r=1}^{w_i}\operatorname{dist}(a_i,y_r)^z. p ∈ P i ∑ dist ( p , y ϕ ( p ) ) z ≤ u ⋅ A i + v ⋅ r = 1 ∑ w i dist ( a i , y r ) z .
We think of y 1 , … , y w i y_1,\ldots,y_{w_i} y 1 , … , y w i as slots, units of capacity of centers at these locations; the last sum is the cost of moving the mass of the block to the slots.
Lemma 2.3 (Triangle bound). Every block of every block partition is ( 3 z − 1 , ( 3 / 2 ) z − 1 ) (3^{z-1},(3/2)^{z-1}) ( 3 z − 1 , ( 3/2 ) z − 1 ) -movable.
Proof. For r , s ≥ 0 r,s\ge0 r , s ≥ 0 , convexity gives
( r + s ) z = ( 1 3 ⋅ 3 r + 2 3 ⋅ 3 2 s ) z ≤ 3 z − 1 r z + ( 3 2 ) z − 1 s z . (r+s)^z=\left(\frac{1}{3}\cdot3r+\frac{2}{3}\cdot\frac{3}{2}s\right)^z\le3^{z-1}r^z+\left(\frac{3}{2}\right)^{z-1}s^z. ( r + s ) z = ( 3 1 ⋅ 3 r + 3 2 ⋅ 2 3 s ) z ≤ 3 z − 1 r z + ( 2 3 ) z − 1 s z . Apply this to r = dist ( p , a i ) r=\operatorname{dist}(p,a_i) r = dist ( p , a i ) and s = dist ( a i , y ϕ ( p ) ) s=\operatorname{dist}(a_i,y_{\phi(p)}) s = dist ( a i , y ϕ ( p ) ) for any bijection ϕ \phi ϕ , and sum over p ∈ P i p\in P_i p ∈ P i .
Following a reference solution
The analysis compares the blocks with a reference solution S ∗ S^* S ∗ , which is any soft solution with at most k k k centers at locations in F F F . Let J J J be the set of centers of S ∗ S^* S ∗ that serve clients, so ∣ J ∣ ≤ k |J|\le k ∣ J ∣ ≤ k ; center j ∈ J j\in J j ∈ J is at location c j c_j c j and serves ℓ j ≤ U \ell_j\le U ℓ j ≤ U clients. Let I = { 1 , … , m } I=\{1,\ldots,m\} I = { 1 , … , m } be the set of blocks.
Lemma 2.4 (Transport forest). There is an integral transport plan π ∈ Z ≥ 0 I × J \pi\in\mathbb{Z}_{\ge0}^{I\times J} π ∈ Z ≥ 0 I × J with row sums w i w_i w i (i ∈ I i\in I i ∈ I ) and column sums ℓ j \ell_j ℓ j (j ∈ J j\in J j ∈ J ) whose support, the bipartite graph of its positive entries, is a forest and whose cost T : = ∑ i , j π i j dist ( a i , c j ) z T:=\sum_{i,j}\pi_{ij}\operatorname{dist}(a_i,c_j)^z T := ∑ i , j π ij dist ( a i , c j ) z satisfies
T ≤ ( A 1 / z + cost ( S ∗ ) 1 / z ) z ≤ 2 z − 1 ( A + cost ( S ∗ ) ) . T\le\left(A^{1/z}+\operatorname{cost}(S^*)^{1/z}\right)^z\le2^{z-1}\left(A+\operatorname{cost}(S^*)\right). T ≤ ( A 1/ z + cost ( S ∗ ) 1/ z ) z ≤ 2 z − 1 ( A + cost ( S ∗ ) ) .
Proof. Let π i j 0 \pi^0_{ij} π ij 0 be the number of clients of P i P_i P i that S ∗ S^* S ∗ assigns to center j j j . Applying (6) to the triples ( a i , c j , p ) (a_i,c_j,p) ( a i , c j , p ) , one for every client p p p , where p ∈ P i p\in P_i p ∈ P i is served by j j j , bounds the cost of π 0 \pi^0 π 0 by ( A 1 / z + cost ( S ∗ ) 1 / z ) z \left(A^{1/z}+\operatorname{cost}(S^*)^{1/z}\right)^z ( A 1/ z + cost ( S ∗ ) 1/ z ) z . Theorem 4.2 turns π 0 \pi^0 π 0 into a plan whose support is a forest, without increasing the cost.
We fix such a plan π \pi π . It moves π i j \pi_{ij} π ij units of the mass of block i i i from a i a_i a i to c j c_j c j , and T i : = ∑ j π i j dist ( a i , c j ) z T_i:=\sum_j\pi_{ij}\operatorname{dist}(a_i,c_j)^z T i := ∑ j π ij dist ( a i , c j ) z is the moving cost of block i i i . If every block follows π \pi π , that is, the clients of block i i i take π i j \pi_{ij} π ij slots of center j j j for every j j j , then movability gives a solution with the centers of S ∗ S^* S ∗ and cost at most u A + v T uA+vT u A + v T . With
β : = u + 2 z v , \beta:=u+2^zv, β := u + 2 z v ,
Theorem 2.4 gives, if A ≤ ( 1 + η ) cost ( S ∗ ) A\le(1+\eta)\operatorname{cost}(S^*) A ≤ ( 1 + η ) cost ( S ∗ ) ,
u A + v T ≤ ( u + 2 z − 1 v ) A + 2 z − 1 v cost ( S ∗ ) ≤ β ( 1 + η ) cost ( S ∗ ) . (2) uA+vT\le(u+2^{z-1}v)A+2^{z-1}v\operatorname{cost}(S^*)\le\beta(1+\eta)\operatorname{cost}(S^*). \tag*{(2)} u A + v T ≤ ( u + 2 z − 1 v ) A + 2 z − 1 v cost ( S ∗ ) ≤ β ( 1 + η ) cost ( S ∗ ) . (2)
With an optimal S ∗ S^* S ∗ , this is the ratio that we obtain as ε → 0 \varepsilon\to0 ε → 0 . For the triangle bound, β = 3 z − 1 + 2 z ( 3 / 2 ) z − 1 = 3 z \beta=3^{z-1}+2^z(3/2)^{z-1}=3^z β = 3 z − 1 + 2 z ( 3/2 ) z − 1 = 3 z .
Rescuing blocks
An extra center can rescue a block: a new center at a i a_i a i serves exactly the clients of P i P_i P i . This respects the capacity, since w i ≤ U w_i\le U w i ≤ U , and costs A i A_i A i instead of the share u A i + v T i uA_i+vT_i u A i + v T i of block i i i in (2) . So rescuing block i i i reduces the bound (2) by its saving
W i : = ( u − 1 ) A i + v T i ≥ 0 , W_i:=(u-1)A_i+vT_i\ge0, W i := ( u − 1 ) A i + v T i ≥ 0 ,
and by Theorem 2.4, if A ≤ ( 1 + η ) cost ( S ∗ ) A\le(1+\eta)\operatorname{cost}(S^*) A ≤ ( 1 + η ) cost ( S ∗ ) , the total saving satisfies
∑ i W i = ( u − 1 ) A + v T ≤ ( u − 1 + 2 z − 1 v ) A + 2 z − 1 v cost ( S ∗ ) ≤ ( β − 1 ) ( 1 + η ) cost ( S ∗ ) . (3) \sum_i W_i=(u-1)A+vT\le(u-1+2^{z-1}v)A+2^{z-1}v\operatorname{cost}(S^*)\le(\beta-1)(1+\eta)\operatorname{cost}(S^*). \tag*{(3)} i ∑ W i = ( u − 1 ) A + v T ≤ ( u − 1 + 2 z − 1 v ) A + 2 z − 1 v cost ( S ∗ ) ≤ ( β − 1 ) ( 1 + η ) cost ( S ∗ ) . (3)
Suppose that ⌊ ε k ⌋ \lfloor\varepsilon k\rfloor ⌊ ε k ⌋ extra centers rescue blocks whose savings add up to at least ( ε − η ) ∑ i W i (\varepsilon-\eta)\sum_i W_i ( ε − η ) ∑ i W i . Then the resulting solution costs at most
A + ( 1 − ε + η ) ∑ i W i ≤ ( β − ( β − 1 ) ε + O ( β η ) ) ⋅ cost ( S ∗ ) . (4) A+(1-\varepsilon+\eta)\sum_i W_i\le\left(\beta-(\beta-1)\varepsilon+O(\beta\eta)\right)\cdot\operatorname{cost}(S^*). \tag*{(4)} A + ( 1 − ε + η ) i ∑ W i ≤ ( β − ( β − 1 ) ε + O ( β η ) ) ⋅ cost ( S ∗ ) . (4)
which is the ratio of our theorems.
The obstacle. The natural strategy rescues the ⌊ ε k ⌋ \lfloor\varepsilon k\rfloor ⌊ ε k ⌋ blocks with the largest savings, one extra center per block. If all savings are equal and m m m is close to 2 k 2k 2 k , this reduces the bound only by about an ε / 2 \varepsilon/2 ε /2 -fraction of ∑ i W i \sum_i W_i ∑ i W i , which gives the weaker ratio β − ( β − 1 ) ε / 2 \beta-(\beta-1)\varepsilon/2 β − ( β − 1 ) ε /2 .
Closing centers. Rescuing blocks also removes clients from the centers of S ∗ S^* S ∗ . If every block that sends mass to center j j j is rescued, then j j j serves no client and can be closed, which returns one center to the budget (Figure 2 ). The support of π \pi π is a forest on the m m m blocks and the ∣ J ∣ |J| ∣ J ∣ centers. If we rescue all blocks of a component of the forest, we may close all centers of the component; so the component costs as many extra centers as its excess , the number of its blocks minus the number of its centers. Consider a budget of b ≤ k b\le k b ≤ k extra centers; later, b b b is slightly smaller than ε k \varepsilon k ε k . Rescuing all blocks costs m − ∣ J ∣ ≤ 2 k − 1 − ∣ J ∣ m-|J|\le2k-1-|J| m − ∣ J ∣ ≤ 2 k − 1 − ∣ J ∣ centers beyond the ∣ J ∣ |J| ∣ J ∣ centers of S ∗ S^* S ∗ , while the budget, together with the k − ∣ J ∣ k-|J| k − ∣ J ∣ centers that S ∗ S^* S ∗ leaves unused, gives b + k − ∣ J ∣ b+k-|J| b + k − ∣ J ∣ centers beyond them. Since
Figure 2. The support of the transport plan π \pi π is a forest between blocks (circles) and centers of S ∗ S^* S ∗ (squares). Rescued blocks are filled, their edges are dashed, and closed centers are crossed out. (a) Rescuing the two blocks with the largest savings closes no center. (b) The rescue lemma deletes a few vertices, here one center (bold), which stays open, so that all components are small. Rescuing all blocks of a component closes its centers, so the component costs its excess: six blocks are rescued with 2 extra centers.
b + k − ∣ J ∣ 2 k − ∣ J ∣ ≥ b k (which is equivalent to ( k − ∣ J ∣ ) ( k − b ) ≥ 0 ), \frac{b+k-|J|}{2k-|J|}\ge\frac{b}{k}\qquad\text{(which is equivalent to }(k-|J|)(k-b)\ge0\text{),} 2 k − ∣ J ∣ b + k − ∣ J ∣ ≥ k b (which is equivalent to ( k − ∣ J ∣ ) ( k − b ) ≥ 0 ),
rescuing this fraction of every component, if that were possible, would gain a b / k b/k b / k -fraction of the total saving, twice the fraction of the natural strategy: each extra center rescues about two blocks. Components cannot be rescued partly, and one component may contain almost all blocks. Unlike a general bipartite graph, a forest has small separators: we delete fewer than 3 k / ( L + 1 ) 3k/(L+1) 3 k / ( L + 1 ) of the fewer than 3 k 3k 3 k vertices so that every remaining component has at most L L L vertices, rescue the deleted blocks and keep the deleted centers open (Figure 2 (b)). Then we rescue all components of nonpositive excess, which cost nothing or even free centers, and add the other components greedily in order of saving per unit of excess; the greedy choice wastes at most one component, of excess at most L L L . The following rescue lemma shows that this loses only O ( L / k + 1 / L ) O(L/k+1/L) O ( L / k + 1/ L ) ; it is proved in § 5 .
Lemma 2.5 (Rescue lemma). Let π \pi π be an integral transport plan between disjoint index sets I I I and J J J with ∣ I ∣ ≤ 2 k − 1 |I|\le2k-1 ∣ I ∣ ≤ 2 k − 1 and ∣ J ∣ ≤ k |J|\le k ∣ J ∣ ≤ k whose support is a forest, and let W i ≥ 0 W_i\ge0 W i ≥ 0 for i ∈ I i\in I i ∈ I . For all integers L ≥ 1 L\ge1 L ≥ 1 and 0 ≤ b ≤ k 0\le b\le k 0 ≤ b ≤ k , there are sets R ⊆ I R\subseteq I R ⊆ I and J 0 ⊆ J J_0\subseteq J J 0 ⊆ J such that
(i) π i j = 0 \pi_{ij}=0 π ij = 0 for all i ∈ I ∖ R i\in I\setminus R i ∈ I ∖ R and j ∈ J 0 j\in J_0 j ∈ J 0 ;
(ii) ∣ R ∣ + ∣ J ∣ − ∣ J 0 ∣ ≤ k + b |R|+|J|-|J_0|\le k+b ∣ R ∣ + ∣ J ∣ − ∣ J 0 ∣ ≤ k + b ;
(iii) ∑ i ∈ R W i ≥ ( b − L k − 3 L + 1 ) ∑ i ∈ I W i \sum_{i\in R}W_i\ge\left(\frac{b-L}{k}-\frac{3}{L+1}\right)\sum_{i\in I}W_i ∑ i ∈ R W i ≥ ( k b − L − L + 1 3 ) ∑ i ∈ I W i .
By (i), rescuing the blocks in R R R leaves the centers in J 0 J_0 J 0 without clients, so they can be closed, and by (ii), the result has at most k + b k+b k + b centers. For L ≈ 12 / η L\approx12/\eta L ≈ 12/ η , b ≈ ε k b\approx\varepsilon k b ≈ ε k and k k k large compared with L L L , the bound (iii) is at least ( ε − η ) ∑ i W i (\varepsilon-\eta)\sum_iW_i ( ε − η ) ∑ i W i , as required in (4) . Small values of k k k are handled by exhaustive search.
Finding a solution: the network and the dynamic program
The rescued solution is defined in terms of the unknown solution S ∗ S^* S ∗ . The algorithm instead optimizes over all ways of routing the mass of the blocks through a network built on a hierarchical decomposition D \mathcal{D} D of X = P ∪ F X = P \cup F X = P ∪ F : partitions of X X X into cells at levels 0 , … , H 0,\ldots,H 0 , … , H , where the cells of level h h h have diameter at most 2 h 2^h 2 h and refine those of level h + 1 h+1 h + 1 , the cells of level 0 0 0 are single points, and X X X is the only cell of level H H H (Theorem 6.1); here H = O ( log Δ ( X ) ) H = O(\log\Delta(X)) H = O ( log Δ ( X )) for the ratio Δ ( X ) \Delta(X) Δ ( X ) between the largest and the smallest positive distance in X X X .
The network. Every cell C C C of level h h h receives a set N C N_C N C of portals , a maximal subset of C C C whose points are pairwise more than λ 2 h \lambda2^h λ 2 h apart, so ∣ N C ∣ ≤ M : = ⌈ ( 4 / λ ) κ ⌉ \lvert N_C\rvert\le M := \lceil(4/\lambda)^\kappa\rceil ∣ N C ∣ ≤ M := ⌈( 4/ λ ) κ ⌉ by Theorem 4.1, and every portal has an ascending and a descending copy (Figure 3 and Theorem 7.1). A unit of mass travels from a point up the hierarchy along ascending copies, each joined by an arc of cost 0 0 0 to the ascending copy of a portal of the parent cell within distance λ 2 h + 1 \lambda2^{h+1} λ 2 h + 1 . Costs are z z z -th powers of distances, which do not add up along a path, so a route pays for its whole length on a single arc: in a cell that contains both end points, it takes one crossing arc from the ascending copy of a portal x ′ x' x ′ to the descending copy of a portal y ′ y' y ′ , of cost ( dist ( x ′ , y ′ ) + 4 λ 2 h ) z (\operatorname{dist}(x',y') + 4\lambda2^h)^z ( dist ( x ′ , y ′ ) + 4 λ 2 h ) z , and then it travels down along descending copies. Since the climb and the descent stay within distance 2 λ 2 h 2\lambda2^h 2 λ 2 h of the end points, a route from x x x to y y y costs at least dist ( x , y ) z \operatorname{dist}(x,y)^z dist ( x , y ) z : the network never underestimates distances . We call distinct points x , y x,y x , y Λ \Lambda Λ -bad, or badly cut , if the lowest cell that contains both has a level h h h with 2 h > Λ ⋅ dist ( x , y ) 2^h > \Lambda\cdot\operatorname{dist}(x,y) 2 h > Λ ⋅ dist ( x , y ) . If ( x , y ) (x,y) ( x , y ) is not Λ \Lambda Λ -bad, some route from x x x to y y y costs at most ( ( 1 + 8 λ Λ ) dist ( x , y ) ) z ((1+8\lambda\Lambda)\operatorname{dist}(x,y))^z (( 1 + 8 λ Λ ) dist ( x , y ) ) z (Theorem 7.2).
Figure 3. Part of the network: a cell C C C of level h h h with two children, each with three portals. In every cell, the blue dots and the green dots are the ascending and the descending copies of its portals, in the same order. A unit of mass from x x x climbs along ascending arcs to a portal x ′ x' x ′ of the lowest cell that contains x x x and y y y , takes one crossing arc to a portal y ′ y' y ′ of that cell (red), and descends to y y y ; gray lines are other arcs; its cost ( dist ( x ′ , y ′ ) + 4 λ 2 h ) z (\operatorname{dist}(x',y')+4\lambda2^h)^z ( dist ( x ′ , y ′ ) + 4 λ 2 h ) z is at least dist ( x , y ) z \operatorname{dist}(x,y)^z dist ( x , y ) z .
Network solutions and the dynamic program. A network solution declares every block either rescued or normal , routes the mass of the normal blocks from their representatives to locations, and opens ⌈ t / U ⌉ \lceil t/U\rceil ⌈ t / U ⌉ centers at a location that receives t t t units, so that at most K K K centers are opened in total, including one for every rescued block. Its cost is
Φ = ∑ i n o r m a l ( u − 1 ) A i + v ∑ a r c s e cost ( e ) f ( e ) , \Phi= \sum_{i\ \mathrm{normal}} (u-1)A_i + v \sum_{\mathrm{arcs}\ e} \operatorname{cost}(e)f(e), Φ = i normal ∑ ( u − 1 ) A i + v arcs e ∑ cost ( e ) f ( e ) ,
where f f f is the flow. Since routes never underestimate distances, movability turns a network solution into a clustering with at most K K K centers and cost at most A + Φ A+\Phi A + Φ (Theorem 7.5). Every arc joins portal copies of one cell or of a cell and its parent, apart from the three arcs at the source and the sink of a point, so the network has a tree decomposition along the tree of cells with bags of size O ( M ) O(M) O ( M ) . A dynamic program over it stores the balance of every vertex of a bag, the inflow minus the outflow, and the number of centers opened so far, and it decides which blocks to rescue by a knapsack over the blocks with the same representative. It runs in time n O ( M ) n^{O(M)} n O ( M ) times a polynomial (Theorem 7.4), which is polynomial for constant λ \lambda λ .
Badly cut pairs and the extra centers
The network is accurate only for pairs that are not Λ \Lambda Λ -bad, while the dynamic program is polynomial only if λ \lambda λ , and hence M M M , is a constant. In the dynamic programs of [14 , 90 ] , every pair pays for the error of the level at which it is cut, and keeping the total error small makes the number of portals grow with the number of levels. We use extra centers instead, as suggested by Cohen-Addad [31 ] . Call an edge i j ij ij of the forest supp ( π ) \operatorname{supp}(\pi) supp ( π ) bad if the pair ( a i , c j ) (a_i,c_j) ( a i , c j ) is Λ \Lambda Λ -bad. In a random hierarchical decomposition of a doubling metric, a fixed pair is Λ \Lambda Λ -bad with probability O ( κ / Λ ) O(\kappa/\Lambda) O ( κ /Λ ) [61 , 90 ] . We derandomize this (§ 6 ): at every level h h h , every point joins the cell of the first point within distance t 2 h t2^h t 2 h of a net , a maximal set of points that are pairwise more than 2 h − 3 2^{h-3} 2 h − 3 apart; the net is ordered by a hash polynomial of degree four over a finite field, and t ∈ [ 1 / 4 , 1 / 2 ] t \in[1/4,1/2] t ∈ [ 1/4 , 1/2 ] is the same for all levels. The hash values of any five points are independent, which suffices for the analysis, and t t t takes only O ( ∣ X ∣ 2 ) O(|X|^2) O ( ∣ X ∣ 2 ) relevant values. So the resulting family H \mathcal{H} H has polynomial size, and every pair is Λ \Lambda Λ -bad with probability at most 2 11 κ / Λ 2^{11}\kappa/\Lambda 2 11 κ /Λ over H \mathcal{H} H . Since the forest has fewer than 3 k 3k 3 k edges, some member of H \mathcal{H} H has fewer than 3 ⋅ 2 11 κ k / Λ 3 \cdot2^{11}\kappa k/\Lambda 3 ⋅ 2 11 κk /Λ bad edges, and hence at most ⌊ γ k ⌋ \lfloor\gamma k \rfloor ⌊ γ k ⌋ for Λ = 2 13 κ / γ \Lambda= 2^{13}\kappa/\gamma Λ = 2 13 κ / γ , where γ = min { ϵ , η } / 4 \gamma= \min\{\epsilon,\eta\}/4 γ = min { ϵ , η } /4 . We reserve ⌊ γ k ⌋ \lfloor\gamma k \rfloor ⌊ γ k ⌋ of the extra centers and also rescue the blocks incident to bad edges. All other edges of the forest are routed with stretch at most 1 + 8 λ Λ 1 + 8\lambda\Lambda 1 + 8 λ Λ , and λ = η / ( 8 z Λ ) \lambda= \eta/(8z\Lambda) λ = η / ( 8 z Λ ) makes this 1 + η / z 1 + \eta/z 1 + η / z , so their cost grows by a factor of at most ( 1 + η / z ) z ≤ e η (1+\eta/z)^z \le e^\eta ( 1 + η / z ) z ≤ e η , while λ \lambda λ , and hence M M M , remains a constant.
The framework theorem
To summarize, the algorithm reserves ⌊ γ k ⌋ \lfloor\gamma k \rfloor ⌊ γ k ⌋ extra centers for the blocks on bad edges and uses the remaining b = ⌊ ϵ k ⌋ − ⌊ γ k ⌋ b = \lfloor\epsilon k \rfloor- \lfloor\gamma k \rfloor b = ⌊ ϵ k ⌋ − ⌊ γ k ⌋ in the rescue lemma with L = Θ ( 1 / η ) L = \Theta(1/\eta) L = Θ ( 1/ η ) ; it uses exhaustive search for k < k 0 = Θ ( 1 / η 2 ) k < k_0 = \Theta(1/\eta^2) k < k 0 = Θ ( 1/ η 2 ) , and the network has stretch 1 + η / z 1+\eta/z 1 + η / z . § 8 collects the parameters in (9) and proves the following theorem.
Theorem 2.6 (Framework theorem). Fix κ ≥ 1 \kappa\ge1 κ ≥ 1 , z ≥ 1 z \ge1 z ≥ 1 , ϵ ∈ ( 0 , 1 ] \epsilon\in(0,1] ϵ ∈ ( 0 , 1 ] , η ∈ ( 0 , 1 / 10 ] \eta\in(0,1/10] η ∈ ( 0 , 1/10 ] , u ≥ 1 u \ge1 u ≥ 1 and v ≥ 0 v \ge0 v ≥ 0 , and let β = u + 2 z v \beta= u + 2^zv β = u + 2 z v . There is a deterministic algorithm with the following guarantee. Its input is an instance with soft capacities such that P ∪ F P \cup F P ∪ F has doubling dimension at most κ \kappa κ , together with a block partition in which every block is ( u , v ) (u,v) ( u , v ) -movable. It outputs a soft solution with at most K K K centers whose cost is at most
( β − ( β − 1 ) ϵ + 4 β η ) ⋅ cost ( S ∗ ) \bigl(\beta-(\beta-1)\epsilon+4\beta\eta\bigr)\cdot\operatorname{cost}(S^*) ( β − ( β − 1 ) ϵ + 4 β η ) ⋅ cost ( S ∗ ) for every soft solution S ∗ S^* S ∗ with at most k k k centers such that A ≤ ( 1 + η ) cost ( S ∗ ) A \le(1+\eta)\operatorname{cost}(S^*) A ≤ ( 1 + η ) cost ( S ∗ ) . Its running time is polynomial in n n n , ∣ F ∣ |F| ∣ F ∣ and log Δ ( P ∪ F ) \log\Delta(P \cup F) log Δ ( P ∪ F ) , with a degree that depends on κ \kappa κ , z z z , ϵ \epsilon ϵ and η \eta η .
The guarantee holds for all such S ∗ S^* S ∗ at once, since the algorithm does not depend on S ∗ S^* S ∗ ; § 10 uses a reference solution that is not optimal. With the block partition of § 2.1 , Theorem 2.3 and an optimal soft solution as S ∗ S^* S ∗ , Theorem 2.6 gives Theorem 1.2 when P ∪ F P \cup F P ∪ F has doubling dimension at most κ \kappa κ .
One-sided low dimension
Theorem 1.2 assumes only that P P P or F F F has doubling dimension at most κ \kappa κ . We reduce this to the joint case by a compression lemma (Theorem 9.1). Let Q Q Q be the side of bounded doubling dimension and Y Y Y the other side. We map every point y ∈ Y y \in Y y ∈ Y to a proxy μ ( y ) ∈ Y \mu(y) \in Y μ ( y ) ∈ Y such that all distances between Q Q Q and Y Y Y change by a factor of at most 1 + 3 η 1+3\eta 1 + 3 η , and Q ∪ μ ( Y ) Q \cup\mu(Y) Q ∪ μ ( Y ) has doubling dimension O ( ( 32 / η ) κ log 2 ( 2 / η ) ) O((32/\eta)^\kappa\log^2(2/\eta)) O (( 32/ η ) κ log 2 ( 2/ η )) . We classify the points of Y Y Y by their distance r r r to Q Q Q , up to a factor of 2, and by a nearby point q q q of a net of Q Q Q . Two points in the same class get the same proxy if their rounded distances agree for all points of a net of the ball of radius 8 r 8r 8 r around q q q and of nets of rings around q q q of geometrically growing radii, with spacing proportional to the radius (Figure 4 ). Every point of Q Q Q in the ball or in a ring is close to a net point, compared with its distance to the two points, and every point of Q Q Q beyond the last ring is so far away that the two points, which are within 6 r 6r 6 r of each other, have almost the same distance to it. The doubling dimension of Q Q Q bounds the sizes of the nets, and hence the number of proxies in a class. The algorithm then works with the proxies instead of the points of Y Y Y , which changes costs by a factor of at most ( 1 + 3 η ) 2 z (1+3\eta)^{2z} ( 1 + 3 η ) 2 z .
Figure 4. The compression of Theorem 9.1 (not to scale). The points y y y and y ′ y' y ′ have distance about r r r to the low-dimensional set Q Q Q (gray dots) and the same net point q q q , which lies within distance η r \eta r η r of a closest point x y x_y x y of Q Q Q to y y y ; so dist ( y , q ) < 3 r \operatorname{dist}(y,q)<3r dist ( y , q ) < 3 r . The ball of radius 8 r 8r 8 r around q q q and the rings around it (dashed) contain net points of Q Q Q (crosses), whose spacing grows with the distance from q q q . If y y y and y ′ y' y ′ have the same rounded distances to all these net points (thin lines), they get the same proxy, and their distances to every point of Q Q Q differ by a factor of at most 1 + 3 η 1+3\eta 1 + 3 η .
Euclidean space
In Euclidean space, centers may be placed anywhere, and the triangle bound ignores the shape of a block. Take the representative a i a_i a i of block i i i to be its own optimal center, a minimizer of Ψ P i ( c ) = ∑ p ∈ P i ∥ p − c ∥ z \Psi_{P_i}(c)=\sum_{p\in P_i}\lVert p-c\rVert^z Ψ P i ( c ) = ∑ p ∈ P i ∥ p − c ∥ z ; thus Ψ P i ( a i ) = A i \Psi_{P_i}(a_i)=A_i Ψ P i ( a i ) = A i . For k k k -means, a i a_i a i is the centroid of P i P_i P i . Match the clients to the slots y 1 , … , y w i y_1,\ldots,y_{w_i} y 1 , … , y w i by a uniformly random bijection and expand
∥ p − y ∥ 2 = ∥ p − a i ∥ 2 + 2 ⟨ p − a i , a i − y ⟩ + ∥ a i − y ∥ 2 . \lVert p-y\rVert^2=\lVert p-a_i\rVert^2+2\langle p-a_i,a_i-y\rangle+\lVert a_i-y\rVert^2. ∥ p − y ∥ 2 = ∥ p − a i ∥ 2 + 2 ⟨ p − a i , a i − y ⟩ + ∥ a i − y ∥ 2 .
The expectation of the middle term, summed over p ∈ P i p\in P_i p ∈ P i , is 2 w i ⟨ ∑ p ∈ P i ( p − a i ) , ∑ r ( a i − y r ) ⟩ = 0 \frac{2}{w_i}\left\langle\sum_{p\in P_i}(p-a_i),\sum_r(a_i-y_r)\right\rangle=0 w i 2 ⟨ ∑ p ∈ P i ( p − a i ) , ∑ r ( a i − y r ) ⟩ = 0 . Since some bijection costs at most the expectation, every block is ( 1 , 1 ) (1,1) ( 1 , 1 ) -movable, and β = 5 \beta=5 β = 5 instead of 3 2 = 9 3^2=9 3 2 = 9 .
Certificates. For z ≥ 1 z\geq1 z ≥ 1 , we call ( u , g , v ) ∈ R 3 (u,g,v)\in\mathbb{R}^3 ( u , g , v ) ∈ R 3 a z z z -certificate if
∣ 1 + t ∣ z ≤ u + g t + v ∣ t ∣ z for all t ∈ R . (5) \lvert1+t\rvert^z\leq u+gt+v\lvert t\rvert^z\quad\text{for all }t\in\mathbb{R}. \tag*{(5)} ∣ 1 + t ∣ z ≤ u + g t + v ∣ t ∣ z for all t ∈ R . (5)
For z > 1 z>1 z > 1 , every certificate extends to vectors (Theorem 10.2): for all p , a , y ∈ R d p,a,y\in\mathbb{R}^d p , a , y ∈ R d ,
∥ p − y ∥ z ≤ u ∥ p − a ∥ z + g ∥ p − a ∥ z − 2 ⟨ p − a , a − y ⟩ + v ∥ a − y ∥ z . \lVert p-y\rVert^z\leq u\lVert p-a\rVert^z+g\lVert p-a\rVert^{z-2}\langle p-a,a-y\rangle+v\lVert a-y\rVert^z. ∥ p − y ∥ z ≤ u ∥ p − a ∥ z + g ∥ p − a ∥ z − 2 ⟨ p − a , a − y ⟩ + v ∥ a − y ∥ z .
The proof maximizes over the angle between p − a p-a p − a and a − y a-y a − y and reduces the claim to collinear points. Summed over a random bijection between P i P_i P i and the slots, the middle term has expectation
g w i ⟨ ∑ p ∈ P i ∥ p − a i ∥ z − 2 ( p − a i ) , ∑ r = 1 w i ( a i − y r ) ⟩ , \frac{g}{w_i}\left\langle\sum_{p\in P_i}\lVert p-a_i\rVert^{z-2}(p-a_i),\sum_{r=1}^{w_i}(a_i-y_r)\right\rangle, w i g ⟨ p ∈ P i ∑ ∥ p − a i ∥ z − 2 ( p − a i ) , r = 1 ∑ w i ( a i − y r ) ⟩ ,
and the first sum is − 1 z ∇ Ψ P i ( a i ) = 0 -\frac{1}{z}\nabla\Psi_{P_i}(a_i)=0 − z 1 ∇ Ψ P i ( a i ) = 0 . So for z > 1 z>1 z > 1 , every certificate makes every block with an optimal representative ( u , v ) (u,v) ( u , v ) -movable, and the best constant is the constant B z B_z B z of Theorem 1.1 . The triangle bound corresponds to the certificate ( 3 z − 1 , 0 , ( 3 / 2 ) z − 1 ) (3z^{-1},0,(3/2)^{z-1}) ( 3 z − 1 , 0 , ( 3/2 ) z − 1 ) , and for z ≥ 1 z\geq1 z ≥ 1 , a suitable nonzero g g g gives a smaller constant. The following proposition, proved in Section A, characterizes B z B_z B z and shows that no smaller constant is possible for movability with optimal representatives.
Proposition 2.7 (The constant B z B_z B z ). Let $z\geq 1.
(a) B z = sup E ∣ 1 + ξ ∣ z , where the supremum is over all real random variables ξ with finite support, E [ ξ ] = 0 and E ∣ ξ ∣ z = 2 z . \text{(a)}\quad B_z=\sup\mathbb{E}|1+\xi|^z,
\quad\text{where the supremum is over all real random variables }\xi\text{ with finite support,}
\quad\mathbb{E}[\xi]=0\text{ and }\mathbb{E}|\xi|^z=2^z. (a) B z = sup E ∣1 + ξ ∣ z , where the supremum is over all real random variables ξ with finite support, E [ ξ ] = 0 and E ∣ ξ ∣ z = 2 z .
(b) B z < 3 z for every z > 1. Moreover, B 1 = 3 , B 2 = 5 , B 3 / 2 ≈ 4.1397 , B 3 ≈ 16.8308 and B 4 ≈ 53.4056. \text{(b)}\quad B_z<3^z\text{ for every }z>1.
\quad\text{Moreover, }B_1=3,\ B_2=5,\ B_{3/2}\approx4.1397,\ B_3\approx16.8308\text{ and }B_4\approx53.4056. (b) B z < 3 z for every z > 1. Moreover, B 1 = 3 , B 2 = 5 , B 3/2 ≈ 4.1397 , B 3 ≈ 16.8308 and B 4 ≈ 53.4056.
(c) For all u ≥ 1 and v ≥ 0 with u + 2 z v < B z , there is a finite set Q ⊂ R such that the block Q \text{(c)}\quad\text{For all }u\ge1\text{ and }v\ge0\text{ with }u+2^zv<B_z,\text{ there is a finite set }Q\subset\mathbb{R}\text{ such that the block }Q (c) For all u ≥ 1 and v ≥ 0 with u + 2 z v < B z , there is a finite set Q ⊂ R such that the block Q
with an optimal center of Q as its representative is not ( u , v ) -movable. \text{with an optimal center of }Q\text{ as its representative is not }(u,v)\text{-movable.} with an optimal center of Q as its representative is not ( u , v ) -movable.
For z = 1 z=1 z = 1 , B 1 = 3 B_1=3 B 1 = 3 is the triangle bound, which holds for every representative.
Candidates and nearly optimal centers. The framework needs a finite set of locations, and d d d may be large. For an accuracy ϑ ∈ ( 0 , 1 ] \vartheta\in(0,1] ϑ ∈ ( 0 , 1 ] , we run projected subgradient descent for a weighted version of Ψ \Psi Ψ from every client, at O ( n 2 log n ) O(n^2\log n) O ( n 2 log n ) scales, along every sequence of O ( z z 2 16 z / ϑ 2 ) O(z^{z^2 16^{z}/\vartheta^2}) O ( z z 2 1 6 z / ϑ 2 ) clients. For every set Q Q Q of clients, a random sequence from Q Q Q gives a point whose expected cost for Q Q Q is at most 1 + ϑ 1+\vartheta 1 + ϑ times the optimum, so some candidate does (Theorem 10.4). We compress the candidates with P P P as the low-dimensional side and choose as representative of every block a proxy of minimum cost for the block, which is then only a nearly optimal center. Its gradient is small, and this makes the block ( u + z − 1 z E , v + 1 z E ) (u+\frac{z-1}{z}E,v+\frac{1}{z}E) ( u + z z − 1 E , v + z 1 E ) -movable for an error E E E that tends to 0 0 0 with ϑ \vartheta ϑ , independently of d d d (Theorem 10.3).
Hard capacities and general metrics
For a finite family S S S of centers at locations in F F F , several of which may share a location, let cost ( S ) \operatorname{cost}(S) cost ( S ) denote the minimum cost of an assignment of the clients to the centers of S S S in which every center serves at most U U U clients. A hard solution is a family without repeated locations, that is, a subset of F F F , and cost ( F ) ≤ OPT \operatorname{cost}(F)\le\operatorname{OPT} cost ( F ) ≤ OPT for the optimal hard cost. The projection lemma (Theorem 11.1) takes such a family S S S and a solution S ∗ S^* S ∗ whose centers may lie anywhere, and selects at most ∣ S ∗ ∣ |S^*| ∣ S ∗ ∣ centers of S S S whose cost is at most ( cost ( S ) 1 / z + 2 cost ( S ∗ ) 1 / z ) z (\operatorname{cost}(S)^{1/z}+2\operatorname{cost}(S^*)^{1/z})^z ( cost ( S ) 1/ z + 2 cost ( S ∗ ) 1/ z ) z . For k k k -median and S = F S=F S = F , it is the conversion from soft to hard capacities of Li [74 ] . The clients induce a transport plan from the centers of S ∗ S^* S ∗ to those of S S S , whose support can be taken to be a forest; shifting load along paths of the forest leaves in every component at most one used center of S S S that is not full, so the components use at most ∣ S ∗ ∣ |S^*| ∣ S ∗ ∣ centers of S S S . With S = F S=F S = F and the solutions of Theorems 1.1 and 1.2 as S ∗ S^* S ∗ , this gives Theorem 1.3 .
In general metrics, Theorem 1.4 starts from one center per block and, while more than K K K centers remain, deletes a center whose deletion increases the cost least. If the uncapacitated solution costs A ≤ ρ OPT A\le\rho\operatorname{OPT} A ≤ ρ OPT , the start costs at most A A A ; for hard capacities, the projection lemma with S = F S=F S = F and the start as S ∗ S^* S ∗ gives at most 2 k − 1 2k-1 2 k − 1 distinct locations of cost at most ( cost ( F ) 1 / z + 2 A 1 / z ) z ≤ ( 1 + 2 ρ 1 / z ) z OPT (\operatorname{cost}(F)^{1/z}+2A^{1/z})^z\le(1+2\rho^{1/z})^z\operatorname{OPT} ( cost ( F ) 1/ z + 2 A 1/ z ) z ≤ ( 1 + 2 ρ 1/ z ) z OPT , which explains the constant γ = 1 + 2 ⋅ 3 \gamma=1+2\cdot3 γ = 1 + 2 ⋅ 3 for k k k -median, where local search gives ρ = 3 + δ \rho=3+\delta ρ = 3 + δ . The cost is supermodular: deleting a center from a smaller family costs at least as much (Theorem 11.3). When k + r k+r k + r centers remain at cost ζ OPT \zeta\operatorname{OPT} ζ OPT , the projection lemma with an optimal solution as S ∗ S^* S ∗ finds k k k of them of cost at most ( ζ 1 / z + 2 ) z OPT (\zeta^{1/z}+2)^z\operatorname{OPT} ( ζ 1/ z + 2 ) z OPT , so by supermodularity, the cheapest deletion costs at most ( ( ζ 1 / z + 2 ) z − ζ ) OPT / r ((\zeta^{1/z}+2)^z-\zeta)\operatorname{OPT}/r (( ζ 1/ z + 2 ) z − ζ ) OPT / r , as in the analysis of the reverse greedy algorithm [46 , 8 ] . For k k k -median, this is 2 OPT / r 2\operatorname{OPT}/r 2 OPT / r , and the deletions down to K K K centers cost at most 2 OPT ∑ r = ⌈ ε k ⌉ + 1 k − 1 1 / r ≈ 2 ln ( 1 / ε ) OPT 2\operatorname{OPT}\sum_{r=\lceil\varepsilon k\rceil+1}^{k-1}1/r\approx2\ln(1/\varepsilon)\operatorname{OPT} 2 OPT ∑ r = ⌈ ε k ⌉ + 1 k − 1 1/ r ≈ 2 ln ( 1/ ε ) OPT ; for general z z z , the ratio stays below the solution of y ′ = ( y 1 / z + 2 ) z − y y'=(y^{1/z}+2)^z-y y ′ = ( y 1/ z + 2 ) z − y that starts at the initial ratio, at time ∑ r 1 / r ≈ ln ( 1 / ε ) \sum_r1/r\approx\ln(1/\varepsilon) ∑ r 1/ r ≈ ln ( 1/ ε ) ; for soft capacities, this is L z ( ρ , ε ) L_z(\rho,\varepsilon) L z ( ρ , ε ) .
Related Work
Capacitated clustering in general metrics. The best known polynomial-time ratio for capacitated k k k -median with k k k centers and exact capacities is O ( log k ) O(\log k) O ( log k ) [3 ] . For uniform capacities, the reverse greedy algorithm, which deletes centers one at a time, has ratio O ( log n ) O(\log n) O ( log n ) [8 ] ; its analysis builds on that of Chrobak, Kenyon and Young [46 ] for uncapacitated k k k -median, and Theorem 1.4 runs it from the blocks instead of from all locations. Constant ratios are known if the capacities may be exceeded by a constant factor [44 , 47 BFRS15, 73 ] or by a factor of 1 + ε 1+\varepsilon 1 + ε [BRU16, DL16, DL27], and if more centers may be opened: local search gives ratio 1 + δ 1+\delta 1 + δ with ( 5 + 5 / δ ) k (5+5/\delta)k ( 5 + 5/ δ ) k centers [70 ] , and ratio 7 + δ 7+\delta 7 + δ is possible with 2 k − 1 2k-1 2 k − 1 centers [16 ] . With ( 1 + ε ) k (1+\varepsilon)k ( 1 + ε ) k centers, Li gave ratio exp ( O ( 1 / ε 2 ) ) \exp(O(1/\varepsilon^2)) exp ( O ( 1/ ε 2 )) for uniform capacities [74 ] and O ( ε − 2 log ( 1 / ε ) ) O(\varepsilon^{-2}\log(1/\varepsilon)) O ( ε − 2 log ( 1/ ε )) for non-uniform soft capacities [75 ] , and Dai and Li [DL27] recently gave ratio O ( ε − 5 ) O(\varepsilon^{-5}) O ( ε − 5 ) for nonuniform hard capacities in time polynomial in n n n and 1 / ε 1/\varepsilon 1/ ε . For uniform capacities, soft and hard capacities are equivalent up to a constant factor [74 ] , so the ratio of [75 ] carries over to hard capacities. The natural LP relaxation has an unbounded integrality gap even if the capacities or the number of centers may be exceeded by a factor of 2 − c 2-c 2 − c for a constant c > 0 c>0 c > 0 [74 BFRS15] . For capacitated k k k -means, Han et al. [65 ] gave a constant ratio in R d \mathbb{R}^d R d with a constant factor more centers. Without capacities, k k k -median admits ratio 2 + δ 2+\delta 2 + δ [34 ] , and local search gives ratio 3 + δ 3+\delta 3 + δ [9 ] ; k k k -means admits ratio 9 + δ 9+\delta 9 + δ [13 ] , improved to 3 + 2 2 + δ 3+2\sqrt{2}+\delta 3 + 2 2 + δ [42 ] and 4.9 + δ 4.9+\delta 4.9 + δ [ACCA+27], and local search gives a constant ratio for every fixed z z z [62 ] .
Approximation schemes in low dimensions. Without capacities, approximation schemes in low dimensions use dynamic programming over hierarchical decompositions [14 , 71 , 90 , 32 ] or local search [35 , 57 ] . They are also known in planar and minor-free graphs [35 CAPP19b] , in graphs of bounded highway dimension [FFKP18, FS21] and, in time f ( k , δ ) ⋅ n O ( 1 ) f(k,\delta)\cdot n^{O(1)} f ( k , δ ) ⋅ n O ( 1 ) , in metrics of bounded scatter dimension [1 ] ; for k k k -means in fixed dimension and in doubling metrics, near-linear time is possible [30 , 32 ] . With capacities, a dynamic program must count the clients that enter or leave every cell, and local search can be arbitrarily bad [31 ] . Arora, Raghavan and Rao [14 ] gave a quasi-polynomial-time scheme for capacitated k k k -median in the plane that exceeds the capacities by a factor of 1 + ε 1+\varepsilon 1 + ε . Cohen-Addad [31 ] gave schemes that respect uniform capacities, in quasi-polynomial time for k k k -median and k k k -means in doubling metrics and in polynomial time for k k k -median in the plane. Like ours, his dynamic program treats the points that the decomposition cuts badly separately, as Cohen-Addad, Feldmann and Saulpic [32 ] do without capacities. It uses ( log n / δ ) O ( κ ) (\log n/\delta)^{O(\kappa)} ( log n / δ ) O ( κ ) portals per cell in doubling dimension κ \kappa κ , hence quasi-polynomial time, and Cohen-Addad observes that with ( 1 + O ( ε ) ) k (1+O(\varepsilon))k ( 1 + O ( ε )) k centers, extra centers for the few badly cut facilities would almost suffice. In our setting, only the fewer than 3 k 3k 3 k pairs of a block and a center in the transport plan must be routed accurately, and a small fraction of them may be cut badly, since their blocks can be rescued with extra centers § 2.5 ; so a constant number of portals per cell suffices. For planar and minor-free metrics, the quasi-polynomial-time schemes for capacitated k k k -median and capacitated facility location [CALPP23, CCAG+25] embed the metric into a graph of polylogarithmic treewidth with expected distortion 1 + δ 1+\delta 1 + δ . In time f ( k , δ ) ⋅ n O ( 1 ) f(k,\delta)\cdot n^{O(1)} f ( k , δ ) ⋅ n O ( 1 ) , capacitated clustering admits approximation schemes in Euclidean space of any dimension [CAL19, BFS24] and in metrics of bounded scatter dimension, which include doubling metrics and planar graphs [22 ] ; see [DGJ25, JK23] for capacitated clustering with outliers.
Extra centers. Opening more than k k k centers is a common relaxation also without capacities. In general metrics, k k k -median admits ratio 2 ( 1 + 1 / ε ) 2(1+1/\varepsilon) 2 ( 1 + 1/ ε ) with ( 1 + ε ) k (1+\varepsilon)k ( 1 + ε ) k centers [78 ] , and local search gives ratio 1 + δ 1 + \delta 1 + δ with ( 3 + 5 / δ ) k (3 + 5/\delta)k ( 3 + 5/ δ ) k centers [70 ] ; for k k k -means, the ratio of Makarychev et al. [82 ] decreases from 9 + δ 9 + \delta 9 + δ with k k k centers to below 2.59 2.59 2.59 with 2 k 2k 2 k centers. Without the triangle inequality, Lin and Vitter [79 ] achieved ratio 1 + δ 1 + \delta 1 + δ with O ( ( 1 + 1 / δ ) k log n ) O((1 + 1/\delta)k \log n) O (( 1 + 1/ δ ) k log n ) centers and showed that a logarithmic factor is then essentially necessary. For k k k -means, sampling-based algorithms achieve constant ratios with O ( k ) O(k) O ( k ) or O ( k log k ) O(k \log k) O ( k log k ) centers [7 , 11 , 91 , 84 ] . Li and Svensson [76 ] showed that for k k k -median, an algorithm that opens k + O ( 1 ) k + O(1) k + O ( 1 ) centers can be turned into one that opens k k k centers with nearly the same ratio. In low dimensions, local search with ( 1 + ε ) k (1 + \varepsilon)k ( 1 + ε ) k centers is an approximation scheme for k k k -median in the plane [38 ] and for k k k -means in fixed dimension [29 ] , and ( 1 + ε ) k (1 + \varepsilon)k ( 1 + ε ) k centers also give approximation schemes for k k k -median and k k k -means with outliers in doubling metrics [56 ] and for k k k -median in planar graphs in time f ( ε ) ⋅ n O ( 1 ) f(\varepsilon) \cdot n^{O(1)} f ( ε ) ⋅ n O ( 1 ) [CAPP19a]. Extra centers are also used for fair clustering [4 , 86 ] .
Parameterized algorithms and coresets. Capacitated k k k -median is W [ 2 ] W[2] W [ 2 ] -hard parameterized by k k k [3 ] . In time f ( k , δ ) ⋅ n O ( 1 ) f(k,\delta) \cdot n^{O(1)} f ( k , δ ) ⋅ n O ( 1 ) , it admits ratio 7 + δ 7 + \delta 7 + δ [3 ] and 3 + δ 3 + \delta 3 + δ [CAL19], and capacitated k k k -means admits ratio 9 + δ 9 + \delta 9 + δ [CAL19] (see also [XMX+20]). Dai, Li and Peng [52 ] obtained a tight ratio 3 + δ 3 + \delta 3 + δ for capacitated clustering with general norm objectives, and several frameworks handle general assignment constraints [54 , 26 , 60 , 59 , 24 ] . Under the gap exponential time hypothesis, no algorithm with such a running time achieves a ratio better than 1 + 2 / e 1 + 2/e 1 + 2/ e for k k k -median or 1 + 8 / e 1 + 8/e 1 + 8/ e for k k k -means, even without capacities [33 ] . A coreset is a small weighted set of points on which the cost of every solution is preserved up to a factor of 1 ± δ 1 \pm\delta 1 ± δ . For capacitated clustering in general metrics, there are coresets of size polynomial in k k k , 1 / δ 1/\delta 1/ δ and log n \log n log n [CAL19], and for capacitated k k k -median in Euclidean space, there are coresets whose size does not depend on n n n [17 , 63 ] ; see also [19 ] .
Related problems. Capacitated k k k -center admits constant-factor approximations for uniform capacities [25 , 72 ] and for non-uniform capacities [45 , 2 ] , with ratio 9 9 9 in the latter case [2 ] , and it is NP-hard to approximate within 3 − δ 3 - \delta 3 − δ for non-uniform capacities [45 ] . In capacitated facility location, every center has an opening cost, and the number of centers is not bounded. Local search gives constant ratios [70 , 48 , 88 ZCY05] , such as 3 3 3 for uniform capacities [12 ] and 5 5 5 for non-uniform capacities [21 ] ; LP-based algorithms are also known [77 , 15 ] , and with soft capacities, ratio 2 2 2 is possible [87 ] . Capacitated vehicle routing admits quasi-polynomial-time approximation schemes in the Euclidean plane [53 ] and in graphs of bounded treewidth, doubling dimension or highway dimension [69 ] .
Applications. Capacitated and balanced clustering is used for political districting [64 , 36 ] ; for the k k k -means cost and fixed centers, an optimal assignment with prescribed district sizes is given by a power diagram [10 ] . It is also used for point distributions in computer graphics [28 ] and for balanced clustering in data mining [20 , 81 ] .
Preliminaries
This section collects standard facts used in the proofs; the setting is defined at the beginning of § 2 . As usual, arithmetic operations and evaluations of dist ( x , y ) 2 \operatorname{dist}(x,y)^2 dist ( x , y ) 2 count as single steps; Section B shows that rational arithmetic with polynomially many bits suffices.
Doubling dimension. For a metric space ( X , dist ) (X,\operatorname{dist}) ( X , dist ) , x ∈ X x \in X x ∈ X and r ≥ 0 r \ge0 r ≥ 0 , let B ( x , r ) = { y ∈ X : dist ( x , y ) ≤ r } B(x,r) = \{y \in X : \operatorname{dist}(x,y) \le r\} B ( x , r ) = { y ∈ X : dist ( x , y ) ≤ r } . The doubling dimension of X X X is at most k k k if every ball B ( x , r ) B(x,r) B ( x , r ) is contained in the union of at most 2 κ 2^\kappa 2 κ balls of radius r / 2 r/2 r /2 centered at points of X X X . Subsets of R d \mathbb{R}^d R d have doubling dimension at most 3 d 3d 3 d (Theorem 10.1).
Fact 4.1. Let X X X have doubling dimension at most κ \kappa κ , let x ∈ X x \in X x ∈ X , and let 0 < s ≤ r 0 < s \le r 0 < s ≤ r . Every subset of B ( x , r ) B(x,r) B ( x , r ) whose points are pairwise more than s s s apart has at most ( 4 r / s ) κ (4r/s)^\kappa ( 4 r / s ) κ points.
Proof. Applying the definition j = ⌈ log 2 ( 2 r / s ) ⌉ j=\lceil\log_2(2r/s)\rceil j = ⌈ log 2 ( 2 r / s )⌉ times covers B ( x , r ) B(x,r) B ( x , r ) by at most 2 j κ < ( 4 r / s ) κ 2^{j\kappa} < (4r/s)^\kappa 2 j κ < ( 4 r / s ) κ balls of radius 2 − j r ≤ s / 2 2^{-j}r \le s/2 2 − j r ≤ s /2 , each of which contains at most one point of the subset.
Minkowski’s inequality. The triangle inequality and Minkowski’s inequality ( ∑ t ( a t + b t ) z ) 1 / z ≤ ( ∑ t a t z ) 1 / z + ( ∑ t b t z ) 1 / z \left(\sum_t(a_t+b_t)^z\right)^{1/z} \le\left(\sum_t a_t^z\right)^{1/z}+\left(\sum_t b_t^z\right)^{1/z} ( ∑ t ( a t + b t ) z ) 1/ z ≤ ( ∑ t a t z ) 1/ z + ( ∑ t b t z ) 1/ z for nonnegative reals give, for every finite list of triples ( x t , y t , p t ) (x_t,y_t,p_t) ( x t , y t , p t ) of points,
( ∑ t dist ( x t , y t ) z ) 1 / z ≤ ( ∑ t dist ( x t , p t ) z ) 1 / z + ( ∑ t dist ( p t , y t ) z ) 1 / z . (6) \left(\sum_t \operatorname{dist}(x_t,y_t)^z\right)^{1/z} \le\left(\sum_t \operatorname{dist}(x_t,p_t)^z\right)^{1/z}+\left(\sum_t \operatorname{dist}(p_t,y_t)^z\right)^{1/z}. \tag*{(6)} ( t ∑ dist ( x t , y t ) z ) 1/ z ≤ ( t ∑ dist ( x t , p t ) z ) 1/ z + ( t ∑ dist ( p t , y t ) z ) 1/ z . (6)
By the convexity of t ↦ t z t \mapsto t^z t ↦ t z , also ( a 1 / z + b 1 / z ) z ≤ 2 z − 1 ( a + b ) (a^{1/z}+b^{1/z})^z \le2^{z-1}(a+b) ( a 1/ z + b 1/ z ) z ≤ 2 z − 1 ( a + b ) for a , b ≥ 0 a,b \ge0 a , b ≥ 0 .
Transport plans. Let I I I and J J J be disjoint finite index sets, and let w i w_i w i ( i ∈ I ) (i \in I) ( i ∈ I ) and ℓ j \ell_j ℓ j ( j ∈ J ) (j \in J) ( j ∈ J ) be nonnegative integers with ∑ i w i = ∑ j ℓ j \sum_i w_i=\sum_j \ell_j ∑ i w i = ∑ j ℓ j . An integral transport plan is a matrix π ∈ Z ≥ 0 I × J \pi\in\mathbb{Z}_{\ge0}^{I\times J} π ∈ Z ≥ 0 I × J with row sums w i w_i w i and column sums ℓ j \ell_j ℓ j . Its support supp ( π ) \operatorname{supp}(\pi) supp ( π ) is the bipartite graph on I ∪ J I \cup J I ∪ J with an edge i j ij ij whenever π i j > 0 \pi_{ij}>0 π ij > 0 . Given a cost for every pair i j ij ij , the cost of π \pi π is the sum of π i j \pi_{ij} π ij times the cost of i j ij ij over all pairs.
Fact 4.2 (Cycle cancelling). Every integral transport plan π \pi π can be transformed in polynomial time into an integral transport plan with the same row and column sums and no larger cost, whose support is a forest contained in supp ( π ) \operatorname{supp}(\pi) supp ( π ) .
Proof. A cycle in the support has even length. Adding 1 to every other entry on the cycle and subtracting 1 from the others keeps all row and column sums, and the two directions change the cost by opposite amounts. Moving in a direction that does not increase the cost, by the largest amount that keeps the entries nonnegative, removes an edge of the cycle and adds none.
Uncapacitated clustering. We use the following algorithm to compute initial solutions.
Theorem 4.3 ([57 ] ). For fixed κ ≥ 1 \kappa\ge1 κ ≥ 1 , z ≥ 1 z \ge1 z ≥ 1 and η > 0 \eta> 0 η > 0 , there is a deterministic polynomial-time algorithm that, given P P P and F F F such that P ∪ F P \cup F P ∪ F has doubling dimension at most κ \kappa κ , computes at most k k k centers at locations in F F F such that assigning every client to a closest center costs at most ( 1 + η ) (1+\eta) ( 1 + η ) times the minimum cost of such an uncapacitated solution.
The algorithm is local search with swaps of κ O ( κ ) ( 2 z / η ) O ( 2 z κ / η ) \kappa^{O(\kappa)}(2^z/\eta)^{O(2^z\kappa/\eta)} κ O ( κ ) ( 2 z / η ) O ( 2 z κ / η ) centers; its analysis is given for k k k -means and extended to every fixed z ≥ 1 z \ge1 z ≥ 1 in [57 ] , and it allows several clients at the same point.
Proof of the Rescue Lemma
The proof of Theorem 2.5 uses a standard separator for forests.
Lemma 5.1 (Forest separator). Let G G G be a forest and L ≥ 1 L \ge1 L ≥ 1 an integer. There is a set Z Z Z of at most ∣ V ( G ) ∣ / ( L + 1 ) |V(G)|/(L+1) ∣ V ( G ) ∣/ ( L + 1 ) vertices such that every component of G − Z G-Z G − Z has at most L L L vertices, and Z Z Z can be found in linear time.
Proof. Root every tree of G G G and process the vertices bottom-up. When a vertex x x x is processed, consider the vertices of its subtree that can be reached from x x x without passing through a vertex that is already in Z Z Z , including x x x itself; if there are more than L L L of them, put x x x into Z Z Z . Every component of G − Z G-Z G − Z has a highest vertex x x x , and the component consists of the vertices considered for x x x , which are at most L L L . When x x x is put into Z Z Z , we charge it to the at least L + 1 L+1 L + 1 vertices considered for x x x . No vertex of Z Z Z above x x x considers these vertices, since its paths to them pass through x x x . So the charged sets are disjoint, and ∣ Z ∣ ( L + 1 ) ≤ ∣ V ( G ) ∣ |Z|(L+1) \leq|V(G)| ∣ Z ∣ ( L + 1 ) ≤ ∣ V ( G ) ∣ .
Proof of Theorem 2.5. The forest supp ( π ) \operatorname{supp}(\pi) supp ( π ) has at most ∣ I ∣ + ∣ J ∣ ≤ 3 k − 1 |I|+|J|\leq3k-1 ∣ I ∣ + ∣ J ∣ ≤ 3 k − 1 vertices, so Theorem 5.1 gives a set Z Z Z with ∣ Z ∣ < 3 k / ( L + 1 ) |Z|<3k/(L+1) ∣ Z ∣ < 3 k / ( L + 1 ) such that every component of supp ( π ) − Z \operatorname{supp}(\pi)-Z supp ( π ) − Z has at most L L L vertices. Let Z I = Z ∩ I Z_I=Z\cap I Z I = Z ∩ I and Z J = Z ∩ J Z_J=Z\cap J Z J = Z ∩ J . For a component Y Y Y of supp ( π ) − Z \operatorname{supp}(\pi)-Z supp ( π ) − Z , let I Y = I ∩ Y I_Y=I\cap Y I Y = I ∩ Y and J Y = J ∩ Y J_Y=J\cap Y J Y = J ∩ Y , and define its excess d Y = ∣ I Y ∣ − ∣ J Y ∣ d_Y=|I_Y|-|J_Y| d Y = ∣ I Y ∣ − ∣ J Y ∣ and its saving W Y = ∑ i ∈ I Y W i W_Y=\sum_{i\in I_Y}W_i W Y = ∑ i ∈ I Y W i .
For a set Y \mathcal{Y} Y of components, let R = Z I ∪ ⋃ Y ∈ Y I Y R=Z_I\cup\bigcup_{Y\in\mathcal{Y}}I_Y R = Z I ∪ ⋃ Y ∈ Y I Y and J 0 = ⋃ Y ∈ Y J Y J_0=\bigcup_{Y\in\mathcal{Y}}J_Y J 0 = ⋃ Y ∈ Y J Y . Then (i) holds: if π i j > 0 \pi_{ij}>0 π ij > 0 with j ∈ J Y j\in J_Y j ∈ J Y , then i i i lies in Z I Z_I Z I or in the component Y Y Y . Moreover,
∣ R ∣ + ∣ J ∣ − ∣ J 0 ∣ = ∣ J ∣ + ∣ Z I ∣ + ∑ Y ∈ Y d Y . (7) |R|+|J|-|J_0|=|J|+|Z_I|+\sum_{Y\in\mathcal{Y}}d_Y. \tag*{(7)} ∣ R ∣ + ∣ J ∣ − ∣ J 0 ∣ = ∣ J ∣ + ∣ Z I ∣ + Y ∈ Y ∑ d Y . (7)
If b < ∣ Z I ∣ + L b<|Z_I|+L b < ∣ Z I ∣ + L , we take R = J 0 = ∅ R=J_0=\varnothing R = J 0 = ∅ . Then (i) and (ii) hold, and so does (iii), because ( b − L ) / k < ∣ Z I ∣ / k < 3 / ( L + 1 ) (b-L)/k<|Z_I|/k<3/(L+1) ( b − L ) / k < ∣ Z I ∣/ k < 3/ ( L + 1 ) .
Now let b ≥ ∣ Z I ∣ + L b\geq|Z_I|+L b ≥ ∣ Z I ∣ + L . Let Y 0 \mathcal{Y}_0 Y 0 be the set of components with d Y ≤ 0 d_Y\leq0 d Y ≤ 0 ; all other components have excess between 1 1 1 and L L L , and we let W + W_+ W + and d + d_+ d + be their total saving and their total excess. By (7) , we may spend the budget
B = k + b − ∣ J ∣ − ∣ Z I ∣ − ∑ Y ∈ Y 0 d Y ≥ b − ∣ Z I ∣ ≥ L B=k+b-|J|-|Z_I|-\sum_{Y\in\mathcal{Y}_0}d_Y\geq b-|Z_I|\geq L B = k + b − ∣ J ∣ − ∣ Z I ∣ − Y ∈ Y 0 ∑ d Y ≥ b − ∣ Z I ∣ ≥ L
on components of positive excess. We sort these components by W Y / d Y W_Y/d_Y W Y / d Y in nonincreasing order and let Y 1 \mathcal{Y}_1 Y 1 be the longest prefix of total excess at most B B B . We set Y = Y 0 ∪ Y 1 \mathcal{Y}=\mathcal{Y}_0\cup\mathcal{Y}_1 Y = Y 0 ∪ Y 1 ; then (ii) follows from (7) .
It remains to prove (iii). If Y 1 \mathcal{Y}_1 Y 1 contains all components of positive excess, then R = I R=I R = I and (iii) holds. Otherwise, the first component outside Y 1 \mathcal{Y}_1 Y 1 has excess at most L L L , so the total excess of Y 1 \mathcal{Y}_1 Y 1 exceeds B − L ≥ 0 B-L\geq0 B − L ≥ 0 . Since Y 1 \mathcal{Y}_1 Y 1 consists of the components with the largest saving per unit of excess, ∑ Y ∈ Y 1 W Y ≥ B − L d + W + \sum_{Y\in\mathcal{Y}_1}W_Y\geq\frac{B-L}{d_+}W_+ ∑ Y ∈ Y 1 W Y ≥ d + B − L W + . Since ∑ Y d Y = ( ∣ I ∣ − ∣ Z I ∣ ) − ( ∣ J ∣ − ∣ Z J ∣ ) \sum_Yd_Y=(|I|-|Z_I|)-(|J|-|Z_J|) ∑ Y d Y = ( ∣ I ∣ − ∣ Z I ∣ ) − ( ∣ J ∣ − ∣ Z J ∣ ) over all components and ∣ I ∣ ≤ 2 k − 1 |I|\leq2k-1 ∣ I ∣ ≤ 2 k − 1 ,
d + = ∑ Y d Y − ∑ Y ∈ Y 0 d Y < B + ( k − b ) + ∣ Z J ∣ . d_+=\sum_Yd_Y-\sum_{Y\in\mathcal{Y}_0}d_Y<B+(k-b)+|Z_J|. d + = Y ∑ d Y − Y ∈ Y 0 ∑ d Y < B + ( k − b ) + ∣ Z J ∣.
The function t ↦ ( t − L ) / ( t + k − b + ∣ Z J ∣ ) t\mapsto(t-L)/(t+k-b+|Z_J|) t ↦ ( t − L ) / ( t + k − b + ∣ Z J ∣ ) is nondecreasing for t > 0 t>0 t > 0 , and B ≥ b − ∣ Z I ∣ B\geq b-|Z_I| B ≥ b − ∣ Z I ∣ , so
B − L d + ≥ B − L B + k − b + ∣ Z J ∣ ≥ b − ∣ Z I ∣ − L k − ∣ Z I ∣ + ∣ Z J ∣ ≥ b − ∣ Z ∣ − L k . \frac{B-L}{d_+}\geq\frac{B-L}{B+k-b+|Z_J|}\geq\frac{b-|Z_I|-L}{k-|Z_I|+|Z_J|}\geq\frac{b-|Z|-L}{k}. d + B − L ≥ B + k − b + ∣ Z J ∣ B − L ≥ k − ∣ Z I ∣ + ∣ Z J ∣ b − ∣ Z I ∣ − L ≥ k b − ∣ Z ∣ − L .
The last inequality says that the separator and the rounding lose at most ( ∣ Z ∣ + L ) / k (|Z|+L)/k ( ∣ Z ∣ + L ) / k compared with the fraction b / k b/k b / k of the fractional rescue in § 2.3 : the blocks of Z I Z_I Z I use ∣ Z I ∣ |Z_I| ∣ Z I ∣ units of the budget but no longer belong to components, and the centers of Z J Z_J Z J stay open and add ∣ Z J ∣ |Z_J| ∣ Z J ∣ to the denominator. To verify it, cross-multiply; this gives ( b − ∣ Z I ∣ − L ) ∣ Z I ∣ + ∣ Z J ∣ ( k − b + L + ∣ Z J ∣ ) ≥ 0 (b-|Z_I|-L)|Z_I|+|Z_J|(k-b+L+|Z_J|)\geq0 ( b − ∣ Z I ∣ − L ) ∣ Z I ∣ + ∣ Z J ∣ ( k − b + L + ∣ Z J ∣ ) ≥ 0 , which holds since b ≥ ∣ Z I ∣ + L b\geq|Z_I|+L b ≥ ∣ Z I ∣ + L and b ≤ k b\leq k b ≤ k . The blocks in R R R include Z I Z_I Z I and the blocks of all components in Y 0 \mathcal{Y}_0 Y 0 , and ( b − ∣ Z ∣ − L ) / k ≤ 1 (b-|Z|-L)/k\leq1 ( b − ∣ Z ∣ − L ) / k ≤ 1 . Hence
∑ i ∈ R W i ≥ ∑ i ∈ Z I W i + ∑ Y ∈ Y 0 W Y + b − ∣ Z ∣ − L k W + ≥ b − ∣ Z ∣ − L k ∑ i ∈ I W i , \sum_{i\in R}W_i\geq\sum_{i\in Z_I}W_i+\sum_{Y\in\mathcal{Y}_0}W_Y+\frac{b-|Z|-L}{k}W_+\geq\frac{b-|Z|-L}{k}\sum_{i\in I}W_i, i ∈ R ∑ W i ≥ i ∈ Z I ∑ W i + Y ∈ Y 0 ∑ W Y + k b − ∣ Z ∣ − L W + ≥ k b − ∣ Z ∣ − L i ∈ I ∑ W i ,
and ∣ Z ∣ < 3 k / ( L + 1 ) |Z|<3k/(L+1) ∣ Z ∣ < 3 k / ( L + 1 ) gives (iii).
Hierarchical Decompositions
This section constructs the decompositions on which the network of § 7 is built. The network routes the transport plan of Theorem 2.4 accurately along a pair of points unless the decomposition cuts the pair at a level much higher than its distance. We therefore need a family of decompositions such that, for every list of pairs, some member of the family cuts few pairs of the list badly. Randomized decompositions with this property are standard for doubling metrics [61 , 90 , 32 ] . We give a polynomial-size family in which all levels share one hash function and one radius parameter, so that the family can be enumerated.
Throughout this section, X X X is a finite set with at least two points and doubling dimension at most κ \kappa κ . Scaling all distances by the same factor changes all costs by the same factor, so we assume that the minimum distance between distinct points of X X X is 2 2 2 . Let H H H be the smallest integer with 2 H ≥ diam ( X ) 2^H \ge\operatorname{diam}(X) 2 H ≥ diam ( X ) ; then H = O ( log Δ ( X ) ) H = O(\log\Delta(X)) H = O ( log Δ ( X )) .
Definition 6.1 (Hierarchical decomposition). A hierarchical decomposition D \mathcal{D} D of X X X is a sequence of partitions P 0 , … , P H \mathcal{P}_0,\ldots,\mathcal{P}_H P 0 , … , P H of X X X such that P H = { X } \mathcal{P}_H = \{X\} P H = { X } , every part of P h \mathcal{P}_h P h has diameter at most 2 h 2^h 2 h , and P h \mathcal{P}_h P h refines P h + 1 \mathcal{P}_{h+1} P h + 1 for every h < H h < H h < H . The parts of P h \mathcal{P}_h P h are the cells of level h h h , and the parent of a cell of level h < H h < H h < H is the cell of level h + 1 h+1 h + 1 that contains it; cells of different levels are different objects even if they contain the same points. For distinct x , y ∈ X x,y \in X x , y ∈ X , the cut level lev ( x , y ) \operatorname{lev}(x,y) lev ( x , y ) is the smallest h h h such that x x x and y y y lie in a common cell of level h h h . For Λ ≥ 1 \Lambda\ge1 Λ ≥ 1 , the pair ( x , y ) (x,y) ( x , y ) is Λ \Lambda Λ -bad if 2 lev ( x , y ) > Λ ⋅ dist ( x , y ) 2^{\operatorname{lev}(x,y)} > \Lambda\cdot\operatorname{dist}(x,y) 2 lev ( x , y ) > Λ ⋅ dist ( x , y ) ; a pair ( x , x ) (x,x) ( x , x ) is never bad.
Since the minimum distance is 2 2 2 , the cells of level 0 0 0 are single points.
Lemma 6.2 (Decomposition family). There is a family H \mathcal{H} H of O ( ∣ X ∣ κ ) O(|X|^\kappa) O ( ∣ X ∣ κ ) hierarchical decompositions of X X X , computable in time polynomial in ∣ X ∣ |X| ∣ X ∣ and H H H , and a probability distribution on H \mathcal{H} H such that for all Λ ≥ 1 \Lambda\ge1 Λ ≥ 1 and all distinct x , y ∈ X x,y \in X x , y ∈ X ,
Pr D ∼ H [ ( x , y ) is Λ -bad in D ] ≤ 2 11 κ Λ . \Pr_{\mathcal{D}\sim\mathcal{H}}\left[(x,y)\text{ is }\Lambda\text{-bad in }\mathcal{D}\right] \le\frac{2^{11\kappa}}{\Lambda}. D ∼ H Pr [ ( x , y ) is Λ -bad in D ] ≤ Λ 2 11 κ .
Corollary 6.3 . For every Λ ≥ 1 \Lambda\ge1 Λ ≥ 1 and every finite list E E E of pairs of points of X X X , some D ∈ H \mathcal{D} \in\mathcal{H} D ∈ H has at most 2 11 κ ∣ E ∣ / Λ 2^{11\kappa}|E|/\Lambda 2 11 κ ∣ E ∣/Λ pairs of E E E that are Λ \Lambda Λ -bad in D \mathcal{D} D , counted with multiplicity.
Proof. By Theorem 6.2 and linearity of expectation, the expected number of Λ \Lambda Λ -bad pairs of E E E is at most 2 11 κ ∣ E ∣ / Λ 2^{11\kappa}|E|/\Lambda 2 11 κ ∣ E ∣/Λ , and some member of H \mathcal{H} H attains at most the expectation. □
The construction. For every level h < H h < H h < H , fix a maximal set X h ⊆ X X_h \subseteq X X h ⊆ X of points that are pairwise more than 2 h − 3 2^{h-3} 2 h − 3 apart; by maximality, every point of X X X is within distance 2 h − 3 2^{h-3} 2 h − 3 of X h X_h X h . Let q q q be a prime with ∣ X ∣ ≤ q < 2 ∣ X ∣ |X| \le q < 2|X| ∣ X ∣ ≤ q < 2∣ X ∣ , and identify the points of X X X with distinct elements of the field F q \mathbb{F}_q F q , which we write as integers 0 , … , q − 1 0,\ldots,q-1 0 , … , q − 1 . For a polynomial g g g over F q \mathbb{F}_q F q of degree at most four, the g g g -order sorts the points x x x of X X X by the pair ( g ( x ) , x ) (g(x),x) ( g ( x ) , x ) lexicographically.
For t ∈ [ 1 / 4 , 1 / 2 ] t \in[1/4,1/2] t ∈ [ 1/4 , 1/2 ] and a level h < H h < H h < H , the partition Q h ( g , t ) \mathcal{Q}_h(g,t) Q h ( g , t ) is obtained by assigning every point x ∈ X x \in X x ∈ X to the first point x ′ ∈ X h x' \in X_h x ′ ∈ X h in g g g -order with dist ( x , x ′ ) ≤ t 2 h \operatorname{dist}(x,x') \le t2^h dist ( x , x ′ ) ≤ t 2 h ; its parts are the nonempty sets of points assigned to the same point of X h X_h X h . Since t 2 h ≥ 2 h − 2 > 2 h − 3 t2^h \ge2^{h-2} > 2^{h-3} t 2 h ≥ 2 h − 2 > 2 h − 3 , every point is assigned, and every part has diameter at most 2 t 2 h ≤ 2 h 2t2^h \le2^h 2 t 2 h ≤ 2 h . Let P H ( g , t ) = { X } \mathcal{P}_H(g,t) = \{X\} P H ( g , t ) = { X } , and for h < H h < H h < H let P h ( g , t ) \mathcal{P}_h(g,t) P h ( g , t ) be the common refinement of Q h ( g , t ) , … , Q H − 1 ( g , t ) \mathcal{Q}_h(g,t),\ldots,\mathcal{Q}_{H-1}(g,t) Q h ( g , t ) , … , Q H − 1 ( g , t ) , whose cells are the nonempty intersections C h ∩ ⋯ ∩ C H − 1 C_h \cap\cdots\cap C_{H-1} C h ∩ ⋯ ∩ C H − 1 with C l C_l C l a part of Q l ( g , t ) \mathcal{Q}_l(g,t) Q l ( g , t ) . These partitions form a hierarchical decomposition D ( g , t ) \mathcal{D}(g,t) D ( g , t ) .
We choose g g g with independent uniformly random coefficients in F q \mathbb{F}_q F q and, independently, t t t uniformly at random in [ 1 / 4 , 1 / 2 ] [1/4,1/2] [ 1/4 , 1/2 ] . For a fixed g g g , the decomposition D ( g , t ) \mathcal{D}(g,t) D ( g , t ) depends on t t t only through the set inequalities dist ( x , x ′ ) ≤ t 2 h \operatorname{dist}(x,x') \le t2^h dist ( x , x ′ ) ≤ t 2 h that hold, so it is constant on every open interval between consecutive values of the set
{ 1 / 4 , 1 / 2 } ∪ { dist ( x , x ′ ) / 2 h ∈ [ 1 / 4 , 1 / 2 ] : x ∈ X , x ′ ∈ X h , h < H } . \{1/4,1/2\} \cup\{\operatorname{dist}(x,x')/2^h \in[1/4,1/2] : x \in X,\ x' \in X_h,\ h < H\}. { 1/4 , 1/2 } ∪ { dist ( x , x ′ ) / 2 h ∈ [ 1/4 , 1/2 ] : x ∈ X , x ′ ∈ X h , h < H } .
For fixed x x x and x ′ x' x ′ , the condition dist ( x , x ′ ) / 2 h ∈ [ 1 / 4 , 1 / 2 ] \operatorname{dist}(x,x')/2^h \in[1/4,1/2] dist ( x , x ′ ) / 2 h ∈ [ 1/4 , 1/2 ] means 2 dist ( x , x ′ ) ≤ 2 h ≤ 4 dist ( x , x ′ ) 2\operatorname{dist}(x,x') \le2^h \le4\operatorname{dist}(x,x') 2 dist ( x , x ′ ) ≤ 2 h ≤ 4 dist ( x , x ′ ) , which holds for at most two levels h h h ; so this set has at most 2 ∣ X ∣ 2 + 2 2|X|^2+2 2∣ X ∣ 2 + 2 elements. The family H \mathcal{H} H consists of D ( g , t ) \mathcal{D}(g,t) D ( g , t ) for every polynomial g g g and one value t t t from each of these intervals. It has at most q 5 ⋅ ( 2 ∣ X ∣ 2 + 1 ) = O ( ∣ X ∣ 7 ) q^5 \cdot(2|X|^2+1)=O(|X|^7) q 5 ⋅ ( 2∣ X ∣ 2 + 1 ) = O ( ∣ X ∣ 7 ) members. Since the endpoints of the intervals have probability zero, the random decomposition D ( g , t ) \mathcal{D}(g,t) D ( g , t ) is a member of H \mathcal{H} H with probability one, and this defines the distribution on H \mathcal{H} H .
The analysis. The proof of Theorem 6.2 has three steps. Theorem 6.4 shows that a fixed point is first in a set Q Q Q under the g g g -order with probability O ( 1 / ∣ Q ∣ ) O(1/|Q|) O ( 1/∣ Q ∣ ) , as for a uniformly random order, which is a constant-factor version of the approximate min-wise independence of hash functions with bounded independence [66 ] ; Theorem 6.5 uses this to bound the probability that one level cuts a small ball; and the proof of Theorem 6.2 sums these probabilities over the levels.
Claim 6.4. For every nonempty Q ⊆ X Q \subseteq X Q ⊆ X and every x ∈ Q x \in Q x ∈ Q , the probability that x x x is the first point of Q Q Q in g g g -order is at most 20 / ∣ Q ∣ 20/|Q| 20/∣ Q ∣ .
Proof. Let s = ∣ Q ∣ ≥ 2 s=|Q| \ge2 s = ∣ Q ∣ ≥ 2 . The values of g g g at any five distinct points are independent and uniform in F q \mathbb{F}_q F q , by the invertibility of the Vandermonde matrix. Condition on g ( x ) g(x) g ( x ) , and let χ \chi χ be the number of points y ∈ Q ∖ { x } y \in Q \setminus\{x\} y ∈ Q ∖ { x } with g ( y ) < g ( x ) g(y)<g(x) g ( y ) < g ( x ) . If x x x is first, then χ = 0 \chi=0 χ = 0 . Given g ( x ) g(x) g ( x ) , the variable χ \chi χ is the sum of s − 1 s-1 s − 1 indicator variables, any four of which are independent, each with expectation g ( x ) / q g(x)/q g ( x ) / q ; so E χ = ( s − 1 ) g ( x ) / q \mathbb{E}\chi=(s-1)g(x)/q E χ = ( s − 1 ) g ( x ) / q . Expanding the fourth power and using four-wise independence gives E [ ( χ − E χ ) 4 ] ≤ E χ + 3 ( E χ ) 2 \mathbb{E}[(\chi-\mathbb{E}\chi)^4]\le\mathbb{E}\chi+3(\mathbb{E}\chi)^2 E [( χ − E χ ) 4 ] ≤ E χ + 3 ( E χ ) 2 . Hence, if E χ ≥ 1 \mathbb{E}\chi\ge1 E χ ≥ 1 , then
Pr [ χ = 0 ∣ g ( x ) ] ≤ Pr [ ∣ χ − E χ ∣ ≥ E χ ∣ g ( x ) ] ≤ E χ + 3 ( E χ ) 2 ( E χ ) 4 ≤ 4 ( E χ ) 2 . \Pr[\chi=0\mid g(x)]\le\Pr[|\chi-\mathbb{E}\chi|\ge\mathbb{E}\chi\mid g(x)]\le\frac{\mathbb{E}\chi+3(\mathbb{E}\chi)^2}{(\mathbb{E}\chi)^4}\le\frac{4}{(\mathbb{E}\chi)^2}. Pr [ χ = 0 ∣ g ( x )] ≤ Pr [ ∣ χ − E χ ∣ ≥ E χ ∣ g ( x )] ≤ ( E χ ) 4 E χ + 3 ( E χ ) 2 ≤ ( E χ ) 2 4 . Now average over the q q q values of g ( x ) g(x) g ( x ) . The values with E χ < 1 \mathbb{E}\chi<1 E χ < 1 , that is, g ( x ) < q / ( s − 1 ) g(x)<q/(s-1) g ( x ) < q / ( s − 1 ) , contribute at most ( q / ( s − 1 ) + 1 ) / q ≤ 2 / ( s − 1 ) (q/(s-1)+1)/q\le2/(s-1) ( q / ( s − 1 ) + 1 ) / q ≤ 2/ ( s − 1 ) , since q ≥ s q\ge s q ≥ s . The values g ( x ) = j ≥ q / ( s − 1 ) g(x)=j\ge q/(s-1) g ( x ) = j ≥ q / ( s − 1 ) contribute at most
1 q ∑ j ≥ q / ( s − 1 ) 4 q 2 ( s − 1 ) 2 j 2 ≤ 4 q ( s − 1 ) 2 ⋅ 2 ( s − 1 ) q = 8 s − 1 , \frac{1}{q}\sum_{j\ge q/(s-1)}\frac{4q^2}{(s-1)^2j^2}
\le\frac{4q}{(s-1)^2}\cdot\frac{2(s-1)}{q}
=\frac{8}{s-1}, q 1 j ≥ q / ( s − 1 ) ∑ ( s − 1 ) 2 j 2 4 q 2 ≤ ( s − 1 ) 2 4 q ⋅ q 2 ( s − 1 ) = s − 1 8 , using ∑ j ≥ c j − 2 ≤ 2 / c \sum_{j\ge c}j^{-2}\le2/c ∑ j ≥ c j − 2 ≤ 2/ c for c ≥ 1 c\ge1 c ≥ 1 . The total is at most 10 / ( s − 1 ) ≤ 20 / s 10/(s-1)\le20/s 10/ ( s − 1 ) ≤ 20/ s .
Claim 6.5. For all x ∈ X x\in X x ∈ X , r > 0 r>0 r > 0 and h < H h<H h < H , the probability that Q h ( g , t ) Q_h(g,t) Q h ( g , t ) separates two points of B ( x , r ) B(x,r) B ( x , r ) is at most 2 9 κ r / 2 h 2^9\kappa r/2^h 2 9 κ r / 2 h .
Proof. If r > 2 h − 3 r>2^{h-3} r > 2 h − 3 , the bound exceeds 1. Let r ≤ 2 h − 3 r\le2^{h-3} r ≤ 2 h − 3 and fix t t t . Let X − = X h ∩ B ( x , t 2 h − r ) X_- = X_h \cap B(x,t2^h-r) X − = X h ∩ B ( x , t 2 h − r ) and X + = X h ∩ B ( x , t 2 h + r ) X_+ = X_h \cap B(x,t2^h+r) X + = X h ∩ B ( x , t 2 h + r ) . The set X − X_- X − is nonempty, since t 2 h − r ≥ 2 h − 3 t2^h-r\ge2^{h-3} t 2 h − r ≥ 2 h − 3 and some point of X h X_h X h is within 2 h − 3 2^{h-3} 2 h − 3 of x x x . If the first point x ′ x' x ′ of X + X_+ X + in g g g -order lies in X − X_- X − , then x ′ x' x ′ is within distance t 2 h t2^h t 2 h of every point of B ( x , r ) B(x,r) B ( x , r ) , and every point of X h X_h X h within distance t 2 h t2^h t 2 h of some point of B ( x , r ) B(x,r) B ( x , r ) lies in X + X_+ X + and thus does not come before x ′ x' x ′ . So all of B ( x , r ) B(x,r) B ( x , r ) is assigned to x ′ x' x ′ and is not separated. By Theorem 6.4 and a union bound over X + ∖ X − X_+\setminus X_- X + ∖ X − ,
Pr g [ Q h ( g , t ) separates B ( x , r ) ] ≤ 20 ∣ X + ∖ X − ∣ ∣ X + ∣ ≤ 20 ln ∣ X + ∣ ∣ X − ∣ , \Pr_g[Q_h(g,t)\text{ separates }B(x,r)]\le20\frac{|X_+\setminus X_-|}{|X_+|}\le20\ln\frac{|X_+|}{|X_-|}, g Pr [ Q h ( g , t ) separates B ( x , r )] ≤ 20 ∣ X + ∣ ∣ X + ∖ X − ∣ ≤ 20 ln ∣ X − ∣ ∣ X + ∣ ,
using 1 − 1 / w ≤ ln w 1 - 1/w \le\ln w 1 − 1/ w ≤ ln w for w ≥ 1 w \ge1 w ≥ 1 . Let ψ ( s ) = ln ∣ X h ∩ B ( x , s ) ∣ \psi(s) = \ln|X_h \cap B(x,s)| ψ ( s ) = ln ∣ X h ∩ B ( x , s ) ∣ , a nondecreasing function that is nonnegative for s ≥ 2 h − 3 s \ge2^{h-3} s ≥ 2 h − 3 . The points of X h ∩ B ( x , 5 ⋅ 2 h − 3 ) X_h \cap B(x,5 \cdot2^{h-3}) X h ∩ B ( x , 5 ⋅ 2 h − 3 ) are pairwise more than 2 h − 3 2^{h-3} 2 h − 3 apart, so by Theorem 4.1 there are at most 20 κ 20^\kappa 2 0 κ of them, and ψ ( 5 ⋅ 2 h − 3 ) ≤ κ ln 20 \psi(5 \cdot2^{h-3}) \le\kappa\ln20 ψ ( 5 ⋅ 2 h − 3 ) ≤ κ ln 20 . Averaging over t t t , that is, over s = t 2 h s = t2^h s = t 2 h uniform in [ 2 h − 2 , 2 h − 1 ] [2^{h-2},2^{h-1}] [ 2 h − 2 , 2 h − 1 ] ,
E t [ ln ∣ X + ∣ ∣ X − ∣ ] = 4 2 h ∫ 2 h − 2 2 h − 1 ( ψ ( s + r ) − ψ ( s − r ) ) d s = 4 2 h ( ∫ 2 h − 1 − r 2 h − 1 + r ψ − ∫ 2 h − 2 − r 2 h − 2 + r ψ ) ≤ 4 2 h ⋅ 2 r ψ ( 5 ⋅ 2 h − 3 ) . \mathbb{E}_t\left[\ln\frac{|X^+|}{|X^-|}\right] = \frac{4}{2^h}\int_{2^{h-2}}^{2^{h-1}}\left(\psi(s+r)-\psi(s-r)\right)\,\mathrm{d}s = \frac{4}{2^h}\left(\int_{2^{h-1}-r}^{2^{h-1}+r}\psi-\int_{2^{h-2}-r}^{2^{h-2}+r}\psi\right) \le\frac{4}{2^h}\cdot2r\psi(5\cdot2^{h-3}). E t [ ln ∣ X − ∣ ∣ X + ∣ ] = 2 h 4 ∫ 2 h − 2 2 h − 1 ( ψ ( s + r ) − ψ ( s − r ) ) d s = 2 h 4 ( ∫ 2 h − 1 − r 2 h − 1 + r ψ − ∫ 2 h − 2 − r 2 h − 2 + r ψ ) ≤ 2 h 4 ⋅ 2 r ψ ( 5 ⋅ 2 h − 3 ) .
Hence the probability is at most 20 ⋅ 8 κ ln 20 ⋅ r / 2 h ≤ 2 9 κ r / 2 h 20\cdot8\kappa\ln20\cdot r/2^h \le2^9\kappa r/2^h 20 ⋅ 8 κ ln 20 ⋅ r / 2 h ≤ 2 9 κ r / 2 h .
Proof of Theorem 6.2. If no partition Q l ( g , t ) \mathcal{Q}_l(g,t) Q l ( g , t ) with l ≥ h l \ge h l ≥ h separates two points of a ball, neither does their common refinement P h ( g , t ) \mathcal{P}_h(g,t) P h ( g , t ) . So by Theorem 6.5, P h ( g , t ) \mathcal{P}_h(g,t) P h ( g , t ) separates two points of B ( x , r ) B(x,r) B ( x , r ) with probability at most ∑ l = h H − 1 2 9 κ r / 2 l ≤ 2 10 κ r / 2 h \sum_{l=h}^{H-1}2^9\kappa r/2^l \le2^{10}\kappa r/2^h ∑ l = h H − 1 2 9 κ r / 2 l ≤ 2 10 κ r / 2 h .
Let x ≠ y x \ne y x = y and r = dist ( x , y ) ≥ 2 r=\operatorname{dist}(x,y)\ge2 r = dist ( x , y ) ≥ 2 . If Λ r ≥ 2 H \Lambda r\ge2^H Λ r ≥ 2 H , then ( x , y ) (x,y) ( x , y ) is never Λ \Lambda Λ -bad. Otherwise, let h h h be the integer with 2 h ≤ Λ r < 2 h + 1 2^h\le\Lambda r<2^{h+1} 2 h ≤ Λ r < 2 h + 1 ; then 1 ≤ h < H 1\le h<H 1 ≤ h < H . If ( x , y ) (x,y) ( x , y ) is Λ \Lambda Λ -bad, then lev ( x , y ) > h \operatorname{lev}(x,y)>h lev ( x , y ) > h , so P h ( g , t ) \mathcal{P}_h(g,t) P h ( g , t ) separates the points x , y ∈ B ( x , r ) x,y\in B(x,r) x , y ∈ B ( x , r ) . This happens with probability at most 2 10 κ r / 2 h < 2 11 κ / Λ 2^{10}\kappa r/2^h<2^{11}\kappa/\Lambda 2 10 κ r / 2 h < 2 11 κ /Λ . The family and the distribution can clearly be computed in time polynomial in ∣ X ∣ |X| ∣ X ∣ and H H H .
The Network and the Dynamic Program
This section defines the network in which the algorithm routes the blocks, and shows how to optimize over it. § 7.1 defines the network and proves that it never underestimates distances and that it is accurate for pairs that are not Λ \Lambda Λ -bad. § 7.2 defines network solutions, states that an optimal one can be computed by dynamic programming, and converts network solutions into clusterings. § 7.3 gives the dynamic program.
Throughout this section, X = P ∪ F X=P\cup F X = P ∪ F has doubling dimension at most κ \kappa κ and minimum distance 2 2 2 between distinct points, and we are given a block partition of P P P , parameters u ≥ 1 u\ge1 u ≥ 1 and v ≥ 0 v\ge0 v ≥ 0 , a hierarchical decomposition D \mathcal{D} D of X X X with levels 0 , … , H 0,\ldots,H 0 , … , H , and a parameter λ ∈ ( 0 , 1 ] \lambda\in(0,1] λ ∈ ( 0 , 1 ] .
The network
Every cell C C C of level h h h receives a set N C ⊆ C N_C\subseteq C N C ⊆ C of portals : a maximal subset of C C C whose points are pairwise more than λ 2 h \lambda2^h λ 2 h apart. Since C C C has diameter at most 2 h 2^h 2 h , it lies in B ( x , 2 h ) B(x,2^h) B ( x , 2 h ) for every x ∈ C x\in C x ∈ C , so Theorem 4.1 with r = 2 h r=2^h r = 2 h and s = λ 2 h s=\lambda2^h s = λ 2 h gives
∣ N C ∣ ≤ M : = ⌈ ( 4 λ ) κ ⌉ . (8) |N_C| \le M := \left\lceil\left(\frac{4}{\lambda}\right)^\kappa\right\rceil. \tag*{(8)} ∣ N C ∣ ≤ M := ⌈ ( λ 4 ) κ ⌉ . (8)
A cell of level 0 0 0 is a single point, which is its only portal. For a cell C C C of level h < H h<H h < H with parent D D D and a portal x ′ ∈ N C x'\in N_C x ′ ∈ N C , we fix a portal par ( x ′ ) ∈ N D \operatorname{par}(x')\in N_D par ( x ′ ) ∈ N D with dist ( x ′ , par ( x ′ ) ) ≤ λ 2 h + 1 \operatorname{dist}(x',\operatorname{par}(x'))\le\lambda2^{h+1} dist ( x ′ , par ( x ′ )) ≤ λ 2 h + 1 , which exists because x ′ ∈ D x'\in D x ′ ∈ D and N D N_D N D is maximal.
Definition 7.1 (Network). The network N D \mathcal{N}_{\mathcal{D}} N D has two vertices x C ↑ x_C^\uparrow x C ↑ and x C ↓ x_C^\downarrow x C ↓ for every cell C C C and every portal x ′ ∈ N C x'\in N_C x ′ ∈ N C , and two vertices x s r c x^{\mathrm{src}} x src and x s n k x^{\mathrm{snk}} x snk for every point x ∈ X x\in X x ∈ X . Its arcs and their costs are:
ascending arcs x C ↑ → par ( x ′ ) D ↑ x_C^\uparrow\to\operatorname{par}(x')_D^\uparrow x C ↑ → par ( x ′ ) D ↑ and descending arcs par ( x ′ ) D ↓ → x C ↓ \operatorname{par}(x')_D^\downarrow\to x_C^\downarrow par ( x ′ ) D ↓ → x C ↓ , of cost 0 0 0 , for every cell C C C with parent D D D and every x ′ ∈ N C x'\in N_C x ′ ∈ N C ;
crossing arcs x C ↑ → y C ↓ x_C^\uparrow\to y_C^\downarrow x C ↑ → y C ↓ , of cost ( dist ( x ′ , y ′ ) + 4 λ 2 h ) z (\operatorname{dist}(x',y')+4\lambda2^h)^z ( dist ( x ′ , y ′ ) + 4 λ 2 h ) z , for every cell C C C of level h h h and all x ′ , y ′ ∈ N C x',y'\in N_C x ′ , y ′ ∈ N C ;
arcs x s r c → x { x } ↑ x^{\mathrm{src}}\to x_{\{x\}}^\uparrow x src → x { x } ↑ , x { x } ↓ → x s n k x_{\{x\}}^\downarrow\to x^{\mathrm{snk}} x { x } ↓ → x snk and x s r c → x s n k x^{\mathrm{src}}\to x^{\mathrm{snk}} x src → x snk , of cost 0 0 0 , for every x ∈ X x\in X x ∈ X , where { x } \{x\} { x } is the cell of level 0 0 0 that contains x x x .
Ascending arcs increase the level, descending arcs decrease it, and crossing arcs go from ascending to descending copies. So N D \mathcal{N}_{D} N D is acyclic, and a path from x s r c x^{\mathrm{src}} x src to y s n k y^{\mathrm{snk}} y snk either is the arc x s r c → y s n k x^{\mathrm{src}} \to y^{\mathrm{snk}} x src → y snk (if x = y x=y x = y ), or climbs along ascending arcs, uses exactly one crossing arc, and descends along descending arcs.
Lemma 7.2 (Routes). Let x , y ∈ X x,y \in X x , y ∈ X .
(a) Every path from x s r c x^{\mathrm{src}} x src to y s n k y^{\mathrm{snk}} y snk has cost at least dist ( x , y ) z \operatorname{dist}(x,y)^z dist ( x , y ) z .
(b) If x = y x=y x = y or the pair ( x , y ) (x,y) ( x , y ) is not Λ \Lambda Λ -bad, then some path from x s r c x^{\mathrm{src}} x src to y s n k y^{\mathrm{snk}} y snk has cost at most ( ( 1 + 8 λ Λ ) dist ( x , y ) ) z \bigl((1+8\lambda\Lambda)\operatorname{dist}(x,y)\bigr)^z ( ( 1 + 8 λ Λ ) dist ( x , y ) ) z .
Proof. For l = 0 , … , H l=0,\ldots,H l = 0 , … , H , let C l C_l C l be the cell of level l l l that contains x x x , and let x 0 = x x_0=x x 0 = x and x l = par ( x l − 1 ) ∈ N C l x_l=\operatorname{par}(x_{l-1})\in N_{C_l} x l = par ( x l − 1 ) ∈ N C l . Every portal has a single parent, so the ascending arcs from x { x } s r c x^{\mathrm{src}}_{\{x\}} x { x } src visit exactly ( x 0 ) C 0 ↑ , ( x 1 ) C 1 ↑ , … (x_0)^{\uparrow}_{C_0},(x_1)^{\uparrow}_{C_1},\ldots ( x 0 ) C 0 ↑ , ( x 1 ) C 1 ↑ , … , and
dist ( x , x l ) ≤ ∑ t = 1 l λ 2 t < λ 2 l + 1 . \operatorname{dist}(x,x_l)\le\sum_{t=1}^{l}\lambda2^t<\lambda2^{l+1}. dist ( x , x l ) ≤ t = 1 ∑ l λ 2 t < λ 2 l + 1 .
Similarly, let C l ′ C'_l C l ′ be the cells containing y y y , y 0 = y y_0=y y 0 = y and y l = par ( y l − 1 ) y_l=\operatorname{par}(y_{l-1}) y l = par ( y l − 1 ) , so that dist ( y , y l ) < λ 2 l + 1 \operatorname{dist}(y,y_l)<\lambda2^{l+1} dist ( y , y l ) < λ 2 l + 1 . A path that descends to y { y } s n k y^{\mathrm{snk}}_{\{y\}} y { y } snk must visit ( y l ) C l ′ ↓ , … , ( y 0 ) C 0 ′ ↓ (y_l)^{\downarrow}_{C'_l},\ldots,(y_0)^{\downarrow}_{C'_0} ( y l ) C l ′ ↓ , … , ( y 0 ) C 0 ′ ↓ for some l l l .
(a) The arc x s r c → y s n k x^{\mathrm{src}}\to y^{\mathrm{snk}} x src → y snk exists only if x = y x=y x = y . Any other path climbs to ( x l ) C l ↑ (x_l)^{\uparrow}_{C_l} ( x l ) C l ↑ , crosses to ( y l ) C l ′ ↓ (y_l)^{\downarrow}_{C'_l} ( y l ) C l ′ ↓ with C l ′ = C l C'_l=C_l C l ′ = C l , and descends. Its cost is ( dist ( x l , y l ) + 4 λ 2 l ) z (\operatorname{dist}(x_l,y_l)+4\lambda2^l)^z ( dist ( x l , y l ) + 4 λ 2 l ) z , and dist ( x , y ) ≤ dist ( x , x l ) + dist ( x l , y l ) + dist ( y l , y ) < dist ( x l , y l ) + 4 λ 2 l \operatorname{dist}(x,y)\le\operatorname{dist}(x,x_l)+\operatorname{dist}(x_l,y_l)+\operatorname{dist}(y_l,y)<\operatorname{dist}(x_l,y_l)+4\lambda2^l dist ( x , y ) ≤ dist ( x , x l ) + dist ( x l , y l ) + dist ( y l , y ) < dist ( x l , y l ) + 4 λ 2 l .
(b) For x = y x=y x = y , use the arc x s r c → x s n k x^{\mathrm{src}}\to x^{\mathrm{snk}} x src → x snk . Otherwise, let l = lev ( x , y ) l=\operatorname{lev}(x,y) l = lev ( x , y ) , so C l = C l ′ C_l=C'_l C l = C l ′ and 2 l ≤ Λ dist ( x , y ) 2^l\le\Lambda\operatorname{dist}(x,y) 2 l ≤ Λ dist ( x , y ) . The path that climbs to ( x l ) C l ↑ (x_l)^{\uparrow}_{C_l} ( x l ) C l ↑ , crosses to ( y l ) C l ↓ (y_l)^{\downarrow}_{C_l} ( y l ) C l ↓ , and descends to y s n k y^{\mathrm{snk}} y snk costs ( dist ( x l , y l ) + 4 λ 2 l ) z ≤ ( dist ( x , y ) + 8 λ 2 l ) z ≤ ( ( 1 + 8 λ Λ ) dist ( x , y ) ) z (\operatorname{dist}(x_l,y_l)+4\lambda2^l)^z\le(\operatorname{dist}(x,y)+8\lambda2^l)^z\le((1+8\lambda\Lambda)\operatorname{dist}(x,y))^z ( dist ( x l , y l ) + 4 λ 2 l ) z ≤ ( dist ( x , y ) + 8 λ 2 l ) z ≤ (( 1 + 8 λ Λ ) dist ( x , y ) ) z . □
Network solutions
In a network solution, every block is either rescued or normal. Normal blocks inject their clients as mass at their representatives, and a location that receives t t t units of mass opens ⌈ t / U ⌉ \lceil t/U\rceil ⌈ t / U ⌉ centers.
Definition 7.3 (Network solution). A network solution ( R , f ) (R,f) ( R , f ) consists of a set R ⊆ I R\subseteq I R ⊆ I of rescued blocks and an integral flow f ≥ 0 f\ge0 f ≥ 0 on the arcs of N D \mathcal{N}_{D} N D such that every portal vertex has equal inflow and outflow, every vertex x s r c x^{\mathrm{src}} x src has outflow s x : = ∑ i ∉ R : a i = x w i s_x:=\sum_{i\notin R:a_i=x}w_i s x := ∑ i ∈ / R : a i = x w i , and every vertex y s n k y^{\mathrm{snk}} y snk has an inflow t y t_y t y with t y = 0 t_y=0 t y = 0 if y ∉ F y\notin F y ∈ / F . Its number of centers is ∣ R ∣ + ∑ y ∈ F ⌈ t y / U ⌉ |R|+\sum_{y\in F}\lceil t_y/U\rceil ∣ R ∣ + ∑ y ∈ F ⌈ t y / U ⌉ , and it is feasible if this number is at most K K K . Its cost is
Φ ( R , f ) : = ∑ i ∉ R ( u − 1 ) A i + v ∑ e cost ( e ) f ( e ) , \Phi(R,f):=\sum_{i\notin R}(u-1)A_i+v\sum_e\operatorname{cost}(e)f(e), Φ ( R , f ) := i ∈ / R ∑ ( u − 1 ) A i + v e ∑ cost ( e ) f ( e ) ,
where the second sum is over all arcs e e e of N D \mathcal{N}_{D} N D .
Lemma 7.4 (Dynamic program). A feasible network solution of minimum cost, if one exists, can be computed in time ( 2 n + 1 ) O ( M ) ⋅ poly ( ∣ X ∣ , H ) (2n+1)^{O(M)}\cdot\operatorname{poly}(|X|,H) ( 2 n + 1 ) O ( M ) ⋅ poly ( ∣ X ∣ , H ) .
Lemma 7.5 (From network solutions to clusterings). Suppose that every block is ( u , v ) (u,v) ( u , v ) -movable. Given a feasible network solution ( R , f ) (R,f) ( R , f ) , one can compute in polynomial time a soft solution with at most K K K centers at locations in F F F whose cost is at most A + Φ ( R , f ) A+\Phi(R,f) A + Φ ( R , f ) .
Proof. Since N D \mathcal{N}_{D} N D is acyclic, f f f decomposes into ∑ x s x \sum_{x} s_{x} ∑ x s x paths of one unit each, every path going from some x s r c x^{\mathrm{src}} x src to some y s n k y^{\mathrm{snk}} y snk with y ∈ F y \in F y ∈ F . For every y ∈ F y \in F y ∈ F with t y > 0 t_{y} > 0 t y > 0 , open ⌈ t y / U ⌉ \lceil t_{y}/U\rceil ⌈ t y / U ⌉ centers at y y y and distribute the t y t_{y} t y paths that end at y s n k y^{\mathrm{snk}} y snk among them, at most U U U per center. For every location x x x , distribute the s x s_{x} s x paths that start at x s r c x^{\mathrm{src}} x src among the normal blocks with representative x x x , so that block i i i receives w i w_{i} w i paths; let y i , 1 , … , y i , w i y_{i,1}, \ldots, y_{i,w_{i}} y i , 1 , … , y i , w i be their end points. By Theorem 7.2(a), ∑ r dist ( a i , y i , r ) z \sum_{r}\operatorname{dist}(a_{i},y_{i,r})^{z} ∑ r dist ( a i , y i , r ) z is at most the total cost of the paths of block i i i , so
∑ i ∉ R ∑ r = 1 w i dist ( a i , y i , r ) z ≤ ∑ e cost ( e ) f ( e ) . \sum_{i\notin R}\sum_{r=1}^{w_i}\operatorname{dist}(a_i,y_{i,r})^z \le\sum_e \operatorname{cost}(e)f(e). i ∈ / R ∑ r = 1 ∑ w i dist ( a i , y i , r ) z ≤ e ∑ cost ( e ) f ( e ) .
Assign the clients of every normal block i i i to the centers of its paths by a minimum-cost bipartite matching; by Theorem 2.2, its cost is at most u A i + v ∑ r dist ( a i , y i , r ) z uA_i+v\sum_r\operatorname{dist}(a_i,y_{i,r})^z u A i + v ∑ r dist ( a i , y i , r ) z . Serve every rescued block i i i by a new center at a i a_i a i , at cost A i A_i A i . Every center serves at most U U U clients, there are at most K K K centers, and the total cost is at most ∑ i ∈ R A i + ∑ i ∉ R ( u A i + v ∑ r dist ( a i , y i , r ) z ) ≤ A + Φ ( R , f ) \sum_{i\in R} A_i+\sum_{i\notin R}(uA_i+v\sum_r\operatorname{dist}(a_i,y_{i,r})^z)\le A+\Phi(R,f) ∑ i ∈ R A i + ∑ i ∈ / R ( u A i + v ∑ r dist ( a i , y i , r ) z ) ≤ A + Φ ( R , f ) .
The dynamic program
We prove Theorem 7.4. The network follows the tree of cells, which gives a tree decomposition of small width.
Tree decompositions. A tree decomposition of a directed graph is a tree together with a set of vertices of the graph, called a bag, for every node of the tree, such that both endpoints of every arc lie in a common bag and, for every vertex, the nodes whose bags contain it form a nonempty subtree. Its width is the largest bag size minus one. A nice tree decomposition with introduce-arc nodes is rooted, has empty bags at the root and at the leaves, and every other node is of one of the following types: an introduce node or a forget node, whose bag differs from the bag of its only child by one vertex; an introduce-arc node, which has the bag of its only child and is labelled with an arc between two bag vertices, every arc being the label of exactly one node; or a join node, which has two children with the same bag as itself. A tree decomposition can be turned in polynomial time into a nice one of the same width whose number of nodes is polynomial in the number of nodes, the width, and the number of arcs [CFK+15, Section 7.3].
A tree decomposition of the network. Start with the tree whose nodes are the cells of D \mathcal{D} D , in which every cell is adjacent to its parent. The bag of a cell C C C is bag ( C ) = { x C ↑ , x C ↓ : x ′ ∈ N C } \operatorname{bag}(C)=\{x_{C}^{\uparrow},x_{C}^{\downarrow}:x'\in N_C\} bag ( C ) = { x C ↑ , x C ↓ : x ′ ∈ N C } . Subdivide every edge between a cell C C C and its parent D D D by a node with bag bag ( C ) ∪ bag ( D ) \operatorname{bag}(C)\cup\operatorname{bag}(D) bag ( C ) ∪ bag ( D ) , and attach to the node of every cell { x } \{x\} { x } of level 0 a new leaf with bag bag ( { x } ) ∪ { x s r c , x s n k } \operatorname{bag}(\{x\})\cup\{x^{\mathrm{src}},x^{\mathrm{snk}}\} bag ({ x }) ∪ { x src , x snk } . Crossing arcs lie in a bag bag ( C ) \operatorname{bag}(C) bag ( C ) , ascending and descending arcs between C C C and its parent D D D lie in bag ( C ) ∪ bag ( D ) \operatorname{bag}(C)\cup\operatorname{bag}(D) bag ( C ) ∪ bag ( D ) , and the three arcs at x x x lie in the new leaf. A vertex x C ↑ x_{C}^{\uparrow} x C ↑ or x C ↓ x_{C}^{\downarrow} x C ↓ lies exactly in the bags of C C C , of the subdivision nodes next to C C C , and possibly of the leaf attached to C C C , which form a subtree; the vertices x s r c x^{\mathrm{src}} x src and x s n k x^{\mathrm{snk}} x snk lie in one bag. So this is a tree decomposition of N D \mathcal{N}_{D} N D with O ( H ∣ X ∣ ) O(H|X|) O ( H ∣ X ∣ ) nodes and bags of size at most 4 M 4M 4 M , by (8). We turn it into a nice tree decomposition with introduce-arc nodes of the same width.
Local tables. For a location x x x , let I x = { i : a i = x } I_x=\{i:a_i=x\} I x = { i : a i = x } . For integers 0 ≤ s ≤ n 0\le s\le n 0 ≤ s ≤ n and 0 ≤ r ≤ K 0\le r\le K 0 ≤ r ≤ K , let loc x ( s , r ) \operatorname{loc}_{x}(s,r) loc x ( s , r ) be the minimum of ∑ i ∈ I x R x ( u − 1 ) A i \sum_{i\in I_x} R_x(u-1)A_i ∑ i ∈ I x R x ( u − 1 ) A i over all R x ⊆ I x R_x\subseteq I_x R x ⊆ I x with ∣ R x ∣ = r |R_x|=r ∣ R x ∣ = r and ∑ i ∈ I x ∖ R x w i = s \sum_{i\in I_x\setminus R_x}w_i=s ∑ i ∈ I x ∖ R x w i = s , and ∞ \infty ∞ if no such R x R_x R x exists. A knapsack recursion over the blocks of I x I_x I x computes all values loc x ( s , r ) \operatorname{loc}_{x}(s,r) loc x ( s , r ) in time O ( ∣ I x ∣ n K ) O(|I_x|nK) O ( ∣ I x ∣ n K ) , together with optimal sets R x R_x R x .
States. Consider a node of the nice tree decomposition; the arcs introduced below it and the vertices forgotten below it are fixed. A partial solution at this node assigns a flow value in { 0 , … , n } \{0,\ldots,n\} { 0 , … , n } to every arc introduced below the node and a number r x r_x r x to every forgotten vertex x s r c x^{\mathrm{src}} x src , such that every forgotten portal vertex has equal inflow and outflow on these arcs, every forgotten x s r c x^{\mathrm{src}} x src has an outflow s s s with loc x ( s , r x ) < ∞ \operatorname{loc}_x(s,r_x)<\infty loc x ( s , r x ) < ∞ , and every forgotten y s n k y^{\mathrm{snk}} y snk has an inflow t y ≥ 0 t_y\ge0 t y ≥ 0 with t y = 0 t_y=0 t y = 0 if y ∉ F y\notin F y ∈ / F . Its state is the pair ( b a l , k ′ ) (\mathrm{bal},k') ( bal , k ′ ) , where b a l \mathrm{bal} bal maps every vertex of the bag to its balance, that is, its inflow minus its outflow on the introduced arcs, and k ′ = ∑ r x + ∑ ⌈ t y / U ⌉ k'=\sum r_x+\sum\lceil t_y/U\rceil k ′ = ∑ r x + ∑ ⌈ t y / U ⌉ counts the centers at the forgotten sources and sinks. Its cost is ∑ loc x ( s , r x ) + v ∑ cost ( e ) f ( e ) \sum\operatorname{loc}_x(s,r_x)+v\sum\operatorname{cost}(e)f(e) ∑ loc x ( s , r x ) + v ∑ cost ( e ) f ( e ) , over the forgotten sources and the introduced arcs. The table of the node stores the minimum cost of a partial solution for every state with balances in { − n , … , n } \{-n,\ldots,n\} { − n , … , n } and k ′ ≤ K k'\le K k ′ ≤ K .
Transitions. The tables are computed bottom-up. A leaf has the single state with empty b a l \mathrm{bal} bal and k ′ = 0 k'=0 k ′ = 0 , of cost 0. An introduce node sets the balance of the new vertex to 0. An introduce-arc node for an arc e e e tries every flow value f ( e ) ∈ { 0 , … , n } f(e)\in\{0,\ldots,n\} f ( e ) ∈ { 0 , … , n } , decreases the balance of the tail of e e e and increases the balance of its head by f ( e ) f(e) f ( e ) , and adds v ⋅ cost ( e ) ⋅ f ( e ) v\cdot\operatorname{cost}(e)\cdot f(e) v ⋅ cost ( e ) ⋅ f ( e ) to the cost. A forget node for a portal vertex keeps the states in which this vertex has balance 0. A forget node for x s r c x^{\mathrm{src}} x src keeps the states in which x s r c x^{\mathrm{src}} x src has balance − s -s − s for some s ≥ 0 s\ge0 s ≥ 0 , chooses r r r , and adds r r r to k ′ k' k ′ and loc x ( s , r ) \operatorname{loc}_x(s,r) loc x ( s , r ) to the cost. A forget node for y s n k y^{\mathrm{snk}} y snk keeps the states in which y s n k y^{\mathrm{snk}} y snk has a balance t ≥ 0 t\ge0 t ≥ 0 , where t = 0 t=0 t = 0 if y ∉ F y\notin F y ∈ / F , and adds ⌈ t / U ⌉ \lceil t/U\rceil ⌈ t / U ⌉ to k ′ k' k ′ . A join node combines pairs of states of its children by adding their balances and their counters k ′ k' k ′ ; this is correct because every arc is introduced at exactly one node. The minimum cost over the states of the root with k ′ ≤ K k'\le K k ′ ≤ K is the minimum cost of a feasible network solution, and an optimal solution is recovered by storing the choices.
Correctness of the value range. In a network solution, f f f decomposes into at most n n n unit paths in the acyclic network, and every path visits a vertex at most once. So every arc carries at most n n n units, and the total inflow and the total outflow of every vertex are at most n n n . Hence the balance on any set of arcs lies in { − n , … , n } \{-n,\ldots,n\} { − n , … , n } , and restricting the tables to this range loses no network solution.
Running time. A table has at most ( 2 n + 1 ) 4 M ( K + 1 ) (2n+1)^{4M}(K+1) ( 2 n + 1 ) 4 M ( K + 1 ) entries. A join node takes time quadratic in the table size, and the other nodes take time linear in it times O ( n ) O(n) O ( n ) . Since K ≤ 2 n K\le2n K ≤ 2 n and the nice tree decomposition has poly ( ∣ X ∣ , H ) \operatorname{poly}(|X|,H) poly ( ∣ X ∣ , H ) nodes, the total time is ( 2 n + 1 ) O ( M ) ⋅ poly ( ∣ X ∣ , H ) (2n+1)^{O(M)}\cdot\operatorname{poly}(|X|,H) ( 2 n + 1 ) O ( M ) ⋅ poly ( ∣ X ∣ , H ) . This proves Theorem 7.4.
Proof of the Framework Theorem
We prove Theorem 2.6 for steps 1, 3 and 4 of Algorithm 1, applied to the given block partition and the given pair ( u , v ) (u,v) ( u , v ) , with the parameters
γ = min { ε , η } 4 , L = ⌈ 12 η ⌉ , k 0 = ⌈ 4 ( L + 1 ) η ⌉ , Λ = 2 13 κ γ , λ = η 8 z Λ . (9) \gamma=\frac{\min\{\varepsilon,\eta\}}{4},\qquad L=\left\lceil\frac{12}{\eta}\right\rceil,\qquad k_0=\left\lceil\frac{4(L+1)}{\eta}\right\rceil,\qquad\Lambda=\frac{2^{13}\kappa}{\gamma},\qquad\lambda=\frac{\eta}{8z\Lambda}. \tag*{(9)} γ = 4 min { ε , η } , L = ⌈ η 12 ⌉ , k 0 = ⌈ η 4 ( L + 1 ) ⌉ , Λ = γ 2 13 κ , λ = 8 z Λ η . (9)
Here ∣ γ k ∣ \lvert\gamma k\rvert ∣ γ k ∣ extra centers are reserved for the blocks on bad edges, the rescue lemma uses L L L and b = ⌈ κ ⌉ − ⌈ γ k ⌉ b=\lceil\kappa\rceil-\lceil\gamma k\rceil b = ⌈ κ ⌉ − ⌈ γ k ⌉ , exhaustive search is used for k < k 0 k<k_0 k < k 0 , and the stretch of the network for pairs that are not Λ \Lambda Λ -bad is 1 + 8 λ Λ = 1 + η / z 1+8\lambda\Lambda=1+\eta/z 1 + 8 λ Λ = 1 + η / z . In step 3 of Algorithm 1, the distances are scaled so that the minimum distance in X = P ∪ F X=P\cup F X = P ∪ F is 2, H \mathcal{H} H is the family of Theorem 6.2, and the network solutions are computed by Theorem 7.4 with portal parameter λ \lambda λ ; step 4 uses Theorem 7.5.
Proof of Theorem 2.6 . If k < k 0 k < k_0 k < k 0 , the algorithm returns an optimal soft solution with at most k k k centers, whose cost is at most cost ( S ∗ ) \operatorname{cost}(S^*) cost ( S ∗ ) ; this suffices because β − ( β − 1 ) ε ≥ 1 \beta- (\beta- 1)\varepsilon\ge1 β − ( β − 1 ) ε ≥ 1 . So let k ≥ k 0 k \ge k_0 k ≥ k 0 , and fix a soft solution S ∗ S^* S ∗ with at most k k k centers and A ≤ ( 1 + η ) cost ( S ∗ ) A \le(1 + \eta)\operatorname{cost}(S^*) A ≤ ( 1 + η ) cost ( S ∗ ) . Let π \pi π be the transport plan of Theorem 2.4 for S ∗ S^* S ∗ , with moving costs T i T_i T i and savings W i = ( u − 1 ) A i + v T i W_i = (u - 1)A_i + vT_i W i = ( u − 1 ) A i + v T i , so that ∑ i W i ≤ ( β − 1 ) ( 1 + η ) cost ( S ∗ ) \sum_i W_i \le(\beta- 1)(1 + \eta)\operatorname{cost}(S^*) ∑ i W i ≤ ( β − 1 ) ( 1 + η ) cost ( S ∗ ) by (3) . The proof has three steps: choose the rescued blocks, find a decomposition with few bad edges, and route the remaining mass through the network.
Rescued blocks. Apply Theorem 2.5 to π \pi π , with L L L as in (9) and b = ⌊ ε k ⌋ − ⌊ γ k ⌋ b = \lfloor\varepsilon k\rfloor- \lfloor\gamma k\rfloor b = ⌊ ε k ⌋ − ⌊ γ k ⌋ ; we have 0 ≤ b ≤ k 0 \le b \le k 0 ≤ b ≤ k since γ ≤ ε ≤ 1 \gamma\le\varepsilon\le1 γ ≤ ε ≤ 1 . This gives sets R 0 ⊆ I R_0 \subseteq I R 0 ⊆ I and J 0 ⊆ J J_0 \subseteq J J 0 ⊆ J with properties (i)–(iii). Since b ≥ ε k − γ k − 1 b \ge\varepsilon k - \gamma k - 1 b ≥ ε k − γ k − 1 , γ ≤ η / 4 \gamma\le\eta/4 γ ≤ η /4 , 3 / ( L + 1 ) ≤ η / 4 3/(L + 1) \le\eta/4 3/ ( L + 1 ) ≤ η /4 and ( L + 1 ) / k ≤ η / 4 (L + 1)/k \le\eta/4 ( L + 1 ) / k ≤ η /4 ,
b − L k − 3 L + 1 ≥ ε − γ − L + 1 k − 3 L + 1 ≥ ε − η , \frac{b-L}{k}-\frac{3}{L+1}\ge\varepsilon-\gamma-\frac{L+1}{k}-\frac{3}{L+1}\ge\varepsilon-\eta, k b − L − L + 1 3 ≥ ε − γ − k L + 1 − L + 1 3 ≥ ε − η ,
so ∑ i ∈ R 0 W i ≥ ( ε − η ) ∑ i W i \sum_{i\in R_0} W_i \ge(\varepsilon-\eta)\sum_i W_i ∑ i ∈ R 0 W i ≥ ( ε − η ) ∑ i W i .
Few bad edges. Let E E E be the list of the pairs ( a i , c j ) (a_i,c_j) ( a i , c j ) over the edges i j ij ij of supp ( π ) \operatorname{supp}(\pi) supp ( π ) . This forest has ∣ I ∣ + ∣ J ∣ < 3 k |I| + |J| < 3k ∣ I ∣ + ∣ J ∣ < 3 k vertices, so ∣ E ∣ < 3 k |E| < 3k ∣ E ∣ < 3 k . By Theorem 6.3 and the choice of Λ \Lambda Λ , some D ∈ H D \in\mathcal{H} D ∈ H has at most 2 11 κ ∣ E ∣ / Λ < 3 γ k / 4 2^{11}\kappa|E|/\Lambda< 3\gamma k/4 2 11 κ ∣ E ∣/Λ < 3 γ k /4 pairs of E E E that are Λ \Lambda Λ -bad. This number is an integer smaller than γ k \gamma k γ k , so it is at most ⌊ γ k ⌋ \lfloor\gamma k\rfloor ⌊ γ k ⌋ . Let R b a d R_{\mathrm{bad}} R bad be the set of blocks incident to these edges, so ∣ R b a d ∣ ≤ ⌊ γ k ⌋ |R_{\mathrm{bad}}| \le\lfloor\gamma k\rfloor ∣ R bad ∣ ≤ ⌊ γ k ⌋ , and let R = R 0 ∪ R b a d R = R_0 \cup R_{\mathrm{bad}} R = R 0 ∪ R bad .
Routing. We define a network solution ( R , f ) (R,f) ( R , f ) in N D N_{\mathcal{D}} N D . For every edge i j ij ij of supp ( π ) \operatorname{supp}(\pi) supp ( π ) with i ∉ R i \notin R i ∈ / R , the pair ( a i , c j ) (a_i,c_j) ( a i , c j ) is not Λ \Lambda Λ -bad; we send π i j \pi_{ij} π ij units from ( a i ) s r c (a_i)^{\mathrm{src}} ( a i ) src to ( c j ) s n k (c_j)^{\mathrm{snk}} ( c j ) snk along a path given by Theorem 7.2(b). Then x s r c x^{\mathrm{src}} x src sends ∑ i ∉ R : a i = x w i = s x \sum_{i\notin R:a_i=x}w_i=s_x ∑ i ∈ / R : a i = x w i = s x units, as required. Let ℓ j ′ = ∑ i ∉ R π i j ≤ ℓ j ≤ U \ell'_j=\sum_{i\notin R}\pi_{ij}\le\ell_j\le U ℓ j ′ = ∑ i ∈ / R π ij ≤ ℓ j ≤ U be the remaining load of center j ∈ J j\in J j ∈ J ; by (i), ℓ j ′ = 0 \ell'_j=0 ℓ j ′ = 0 for j ∈ J 0 j\in J_0 j ∈ J 0 . The inflow t y t_y t y of y s n k y^{\mathrm{snk}} y snk is the sum of ℓ j ′ \ell'_j ℓ j ′ over the centers j j j with c j = y c_j=y c j = y , so ⌈ t y / U ⌉ \lceil t_y/U\rceil ⌈ t y / U ⌉ is at most the number of these centers with ℓ j ′ > 0 \ell'_j>0 ℓ j ′ > 0 . By (ii), the number of centers is at most
∣ R ∣ + ∑ y ∈ F ⌈ t y U ⌉ ≤ ∣ R b a d ∣ + ∣ R 0 ∣ + ( ∣ J ∣ − ∣ J 0 ∣ ) ≤ ⌊ γ k ⌋ + k + b = K , |R|+\sum_{y\in F}\left\lceil\frac{t_y}{U}\right\rceil\le|R_{\mathrm{bad}}|+|R_0|+(|J|-|J_0|)\le\lfloor\gamma k\rfloor+k+b=K, ∣ R ∣ + y ∈ F ∑ ⌈ U t y ⌉ ≤ ∣ R bad ∣ + ∣ R 0 ∣ + ( ∣ J ∣ − ∣ J 0 ∣ ) ≤ ⌊ γ k ⌋ + k + b = K ,
so ( R , f ) (R,f) ( R , f ) is feasible. By Theorem 7.2(b), every unit sent along the edge i j ij ij costs at most ( ( 1 + η / z ) dist ( a i , c j ) ) z ≤ e η dist ( a i , c j ) z ((1+\eta/z)\operatorname{dist}(a_i,c_j))^z\le e^\eta\operatorname{dist}(a_i,c_j)^z (( 1 + η / z ) dist ( a i , c j ) ) z ≤ e η dist ( a i , c j ) z . Hence
Φ ( R , f ) ≤ ∑ i ∉ R ( ( u − 1 ) A i + e η v T i ) ≤ e η ∑ i ∉ R 0 W i ≤ e η ( 1 − ε + η ) ∑ i W i . \Phi(R,f)\le\sum_{i\notin R}\bigl((u-1)A_i+e^\eta vT_i\bigr)\le e^\eta\sum_{i\notin R_0}W_i\le e^\eta(1-\varepsilon+\eta)\sum_i W_i. Φ ( R , f ) ≤ i ∈ / R ∑ ( ( u − 1 ) A i + e η v T i ) ≤ e η i ∈ / R 0 ∑ W i ≤ e η ( 1 − ε + η ) i ∑ W i .
Conclusion. The algorithm finds a network solution of cost at most Φ ( R , f ) \Phi(R,f) Φ ( R , f ) , so by Theorem 7.5 and (3) its output costs at most
A + e η ( 1 + η ) ( 1 − ε + η ) ( β − 1 ) cost ( S ∗ ) . A+e^\eta(1+\eta)(1-\varepsilon+\eta)(\beta-1)\operatorname{cost}(S^*). A + e η ( 1 + η ) ( 1 − ε + η ) ( β − 1 ) cost ( S ∗ ) .
For η ≤ 1 / 10 \eta\le1/10 η ≤ 1/10 , we have e η ( 1 + η ) ≤ 1 + 2.2 η e^\eta(1+\eta)\le1+2.2\eta e η ( 1 + η ) ≤ 1 + 2.2 η and hence e η ( 1 + η ) ( 1 − ε + η ) ≤ 1 − ε + 3.5 η e^\eta(1+\eta)(1-\varepsilon+\eta)\le1-\varepsilon+3.5\eta e η ( 1 + η ) ( 1 − ε + η ) ≤ 1 − ε + 3.5 η . Together with A ≤ ( 1 + η ) cost ( S ∗ ) A\le(1+\eta)\operatorname{cost}(S^*) A ≤ ( 1 + η ) cost ( S ∗ ) , the cost is at most
( 1 + η + ( β − 1 ) ( 1 − ε ) + 3.5 ( β − 1 ) η ) cost ( S ∗ ) ≤ ( β − ( β − 1 ) ε + 4 β η ) cost ( S ∗ ) . \bigl(1+\eta+(\beta-1)(1-\varepsilon)+3.5(\beta-1)\eta\bigr)\operatorname{cost}(S^*)\le\bigl(\beta-(\beta-1)\varepsilon+4\beta\eta\bigr)\operatorname{cost}(S^*). ( 1 + η + ( β − 1 ) ( 1 − ε ) + 3.5 ( β − 1 ) η ) cost ( S ∗ ) ≤ ( β − ( β − 1 ) ε + 4 β η ) cost ( S ∗ ) .
Running time. For k < k 0 k<k_0 k < k 0 , there are at most ( ∣ F ∣ + 1 ) k 0 (|F|+1)^{k_0} ( ∣ F ∣ + 1 ) k 0 multisets, each handled by one minimum-cost flow computation. Otherwise, the family H \mathcal{H} H has O ( ∣ X ∣ 7 ) O(|X|^7) O ( ∣ X ∣ 7 ) members, and by Theorem 7.4 each dynamic program takes time ( 2 n + 1 ) O ( M ) poly ( ∣ X ∣ , H ) (2n+1)^{O(M)}\operatorname{poly}(|X|,H) ( 2 n + 1 ) O ( M ) poly ( ∣ X ∣ , H ) , where H = O ( log Δ ( X ) ) H=O(\log\Delta(X)) H = O ( log Δ ( X )) and M = ⌈ ( 4 / λ ) κ ⌉ M=\lceil(4/\lambda)\kappa\rceil M = ⌈( 4/ λ ) κ ⌉ . By (9) , 4 / λ = 2 18 z κ / ( η γ ) 4/\lambda=2^{18}z\kappa/(\eta\gamma) 4/ λ = 2 18 z κ / ( η γ ) , so
M = ( z κ η min { ε , η } ) O ( κ ) . M=\left(\frac{z\kappa}{\eta\min\{\varepsilon,\eta\}}\right)^{O(\kappa)}. M = ( η min { ε , η } z κ ) O ( κ ) .
Algorithm 1 also runs the local search of Theorem 4.3 , whose swaps involve κ O ( κ ) ( 2 z / η ) O ( 2 z κ / η ) \kappa^{O(\kappa)}(2^z/\eta)^{O(2^z\kappa/\eta)} κ O ( κ ) ( 2 z / η ) O ( 2 z κ / η ) centers. Since k 0 = O ( 1 / η 2 ) k_0 = O(1/\eta^2) k 0 = O ( 1/ η 2 ) , the running time is polynomial with a degree of at most
( 2 z κ η min { ε , η } ) O ( 2 z κ / η ) . \left(\frac{2^z\kappa}{\eta\min\{\varepsilon,\eta\}}\right)^{O(2^z\kappa/\eta)}. ( η min { ε , η } 2 z κ ) O ( 2 z κ / η ) .
For Theorem 1.2 with P ∪ F P \cup F P ∪ F of bounded doubling dimension, η \eta η is of order δ / 3 z \delta/3^z δ / 3 z , so for fixed z z z and δ ≤ 1 \delta\le1 δ ≤ 1 the degree is ( κ / ( ε δ ) ) O ( κ / δ ) (\kappa/(\varepsilon\delta))^{O(\kappa/\delta)} ( κ / ( ε δ ) ) O ( κ / δ ) . If only P P P or only F F F has bounded doubling dimension, Theorem 9.1 replaces κ \kappa κ by a doubling dimension κ ′ \kappa' κ ′ that is exponential in κ \kappa κ (§ 9.1 and § 10.3 ); for fixed z z z and δ ≤ 1 / 2 \delta\le1/2 δ ≤ 1/2 , κ ′ = ( 1 / δ ) O ( κ ) \kappa'=(1/\delta)^{O(\kappa)} κ ′ = ( 1/ δ ) O ( κ ) , so the degree becomes ( κ ′ / ( ε δ ) ) O ( κ ′ / δ ) = ( 1 / ( ε δ ) ) ( 1 / δ ) O ( κ ) (\kappa'/(\varepsilon\delta))^{O(\kappa'/\delta)}=(1/(\varepsilon\delta))^{(1/\delta)^{O(\kappa)}} ( κ ′ / ( ε δ ) ) O ( κ ′ / δ ) = ( 1/ ( ε δ ) ) ( 1/ δ ) O ( κ ) . In Theorem 1.1 , the candidate centers multiply the exponent of n n n by a factor polynomial in 1 / δ 1/\delta 1/ δ for fixed z z z , which this bound absorbs.
Proof of Theorem 1.2 for joint low dimension
Suppose that P ∪ F P \cup F P ∪ F has doubling dimension at most κ \kappa κ , and let η = min { 1 / 10 , δ / ( 4 ⋅ 3 z ) } \eta=\min\{1/10,\delta/(4\cdot3^z)\} η = min { 1/10 , δ / ( 4 ⋅ 3 z )} . By Theorem 4.3 and § 2.1 , compute a block partition with A ≤ ( 1 + η ) O P T A\le(1+\eta)\mathrm{OPT} A ≤ ( 1 + η ) OPT . By Theorem 2.3, every block is ( 3 z − 1 , ( 3 / 2 ) z − 1 ) (3^{z-1},(3/2)^{z-1}) ( 3 z − 1 , ( 3/2 ) z − 1 ) -movable, with β = 3 z \beta=3^z β = 3 z . Applying Theorem 2.6 with an optimal soft solution as S ∗ S^* S ∗ gives a solution with at most K K K centers and cost at most ( 3 z − ( 3 z − 1 ) ε + 4 ⋅ 3 z η ) O P T ≤ ( 3 z − ( 3 z − 1 ) ε + δ ) O P T (3^z-(3^z-1)\varepsilon+4\cdot3^z\eta)\mathrm{OPT}\le(3^z-(3^z-1)\varepsilon+\delta)\mathrm{OPT} ( 3 z − ( 3 z − 1 ) ε + 4 ⋅ 3 z η ) OPT ≤ ( 3 z − ( 3 z − 1 ) ε + δ ) OPT .
One-Sided Low Dimension
The framework theorem needs P ∪ F P \cup F P ∪ F to have bounded doubling dimension. This section shows that it suffices that one of the two sides has, by compressing the other side. We use the compression lemma also in the Euclidean setting (§ 10 ), where the other side is a set of candidate centers.
Lemma 9.1 (Compression). Let Q Q Q and Y Y Y be finite sets in a metric space, where Q Q Q has doubling dimension at most κ ≥ 1 \kappa\ge1 κ ≥ 1 , and let η ∈ ( 0 , 1 / 4 ] \eta\in(0,1/4] η ∈ ( 0 , 1/4 ] . One can compute in polynomial time a map μ : Y → Y \mu:Y\to Y μ : Y → Y , which maps every point y y y to its proxy μ ( y ) \mu(y) μ ( y ) , such that for all x ∈ Q x\in Q x ∈ Q and y ∈ Y y\in Y y ∈ Y ,
dist ( x , μ ( y ) ) ≤ ( 1 + 3 η ) dist ( x , y ) and dist ( x , y ) ≤ ( 1 + 3 η ) dist ( x , μ ( y ) ) , (10) \operatorname{dist}(x,\mu(y))\le(1+3\eta)\operatorname{dist}(x,y)
\quad\text{and}\quad
\operatorname{dist}(x,y)\le(1+3\eta)\operatorname{dist}(x,\mu(y)), \tag*{(10)} dist ( x , μ ( y )) ≤ ( 1 + 3 η ) dist ( x , y ) and dist ( x , y ) ≤ ( 1 + 3 η ) dist ( x , μ ( y )) , (10) and Q ∪ μ ( Y ) Q\cup\mu(Y) Q ∪ μ ( Y ) has doubling dimension at most κ η = O ( ( 32 / η ) κ log 2 ( 2 / η ) ) \kappa_\eta=O((32/\eta)^\kappa\log^2(2/\eta)) κ η = O (( 32/ η ) κ log 2 ( 2/ η )) .
By (10) with x = y x=y x = y , every point of Q ∩ Y Q\cap Y Q ∩ Y is mapped to itself. Figure 4 illustrates the construction.
Proof. The construction uses that a point y y y at distance about r r r from Q Q Q is within 3 r 3r 3 r of a net point q q q . For a point x ∈ Q x \in Q x ∈ Q outside the ball B ( q , 8 r ) B(q,8r) B ( q , 8 r ) , the distance dist ( x , y ) \operatorname{dist}(x,y) dist ( x , y ) is therefore within a factor of 2 2 2 of dist ( x , q ) \operatorname{dist}(x,q) dist ( x , q ) , so x x x needs to be located only up to an error proportional to dist ( x , q ) \operatorname{dist}(x,q) dist ( x , q ) . This allows nets whose spacing doubles from ring to ring, and points beyond radius 16 r / η 16r/\eta 16 r / η need no net at all.
Construction. Points y ∈ Y y \in Y y ∈ Y with dist ( y , Q ) = 0 \operatorname{dist}(y,Q)=0 dist ( y , Q ) = 0 lie in Q Q Q , and we set μ ( y ) = y \mu(y)=y μ ( y ) = y . Let r min r_{\min} r m i n be the smallest positive value of dist ( y , Q ) \operatorname{dist}(y,Q) dist ( y , Q ) . The other points are partitioned into layers: y y y belongs to layer r = 2 j r min r=2^j r_{\min} r = 2 j r m i n (j ≥ 0 j \ge0 j ≥ 0 ) if r ≤ dist ( y , Q ) < 2 r r \le\operatorname{dist}(y,Q)<2r r ≤ dist ( y , Q ) < 2 r . For every layer r r r , fix a maximal subset Q r Q_r Q r of Q Q Q whose points are pairwise more than η r \eta r η r apart. For y y y in layer r r r , let x y x_y x y be a point of Q Q Q closest to y y y , and let q ( y ) ∈ Q r q(y) \in Q_r q ( y ) ∈ Q r be a point with dist ( x y , q ( y ) ) ≤ η r \operatorname{dist}(x_y,q(y)) \le\eta r dist ( x y , q ( y )) ≤ η r ; then
dist ( y , q ( y ) ) ≤ dist ( y , Q ) + η r < 3 r . (11) \operatorname{dist}(y,q(y)) \le\operatorname{dist}(y,Q)+\eta r<3r. \tag*{(11)} dist ( y , q ( y )) ≤ dist ( y , Q ) + η r < 3 r . (11)
For a layer r r r and a point q ∈ Q r q \in Q_r q ∈ Q r , consider the ball Q ∩ B ( q , 8 r ) Q \cap B(q,8r) Q ∩ B ( q , 8 r ) and, for j = 1 , … , ⌈ log 2 ( 2 / η ) ⌉ j=1,\ldots,\lceil\log_2(2/\eta)\rceil j = 1 , … , ⌈ log 2 ( 2/ η )⌉ , the ring { x ∈ Q : 2 j + 2 r ≤ dist ( x , q ) < 2 j + 3 r } \{x \in Q:2^{j+2}r \le\operatorname{dist}(x,q)<2^{j+3}r\} { x ∈ Q : 2 j + 2 r ≤ dist ( x , q ) < 2 j + 3 r } around $q. Fix a maximal subset of the ball whose points are pairwise more than η r \eta r η r apart, and a maximal subset of the j j j -th ring whose points are pairwise more than $2^{j+1}\eta r$ apart. The signature of a point y y y in layer r r r with q ( y ) = q q(y)=q q ( y ) = q is the integer vector that lists ⌊ dist ( y , x ) / ( η r ) ⌋ \lfloor\operatorname{dist}(y,x)/(\eta r)\rfloor ⌊ dist ( y , x ) / ( η r )⌋ for every point x x x of the subset of the ball, and ⌊ dist ( y , x ) / ( 2 j + 1 η r ) ⌋ \lfloor\operatorname{dist}(y,x)/(2^{j+1}\eta r)\rfloor ⌊ dist ( y , x ) / ( 2 j + 1 η r )⌋ for every point x x x of the subset of the j j j -th ring, for all j j j . A group consists of the points of Y Y Y with the same layer r r r , the same point q ( y ) q(y) q ( y ) and the same signature. We fix one point of every group as the proxy of all points of the group. Computing μ \mu μ takes polynomial time.
Distances. Let y , y ′ y,y' y , y ′ be in the same group, with layer r r r and point q = q ( y ) = q ( y ′ ) q=q(y)=q(y') q = q ( y ) = q ( y ′ ) . By (11) , dist ( y , y ′ ) < 6 r \operatorname{dist}(y,y')<6r dist ( y , y ′ ) < 6 r . We show that ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ ≤ 3 η min { dist ( x , y ) , dist ( x , y ′ ) } |\operatorname{dist}(x,y)-\operatorname{dist}(x,y')| \le3\eta\min\{\operatorname{dist}(x,y),\operatorname{dist}(x,y')\} ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ ≤ 3 η min { dist ( x , y ) , dist ( x , y ′ )} for every x ∈ Q x \in Q x ∈ Q , which implies (10) . If dist ( x , q ) ≤ 8 r \operatorname{dist}(x,q) \le8r dist ( x , q ) ≤ 8 r , some point x ′ x' x ′ of the subset of the ball has dist ( x , x ′ ) ≤ η r \operatorname{dist}(x,x') \le\eta r dist ( x , x ′ ) ≤ η r , and ∣ dist ( x ′ , y ) − dist ( x ′ , y ′ ) ∣ < η r |\operatorname{dist}(x',y)-\operatorname{dist}(x',y')|<\eta r ∣ dist ( x ′ , y ) − dist ( x ′ , y ′ ) ∣ < η r since the signatures agree. So ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ < 3 η r |\operatorname{dist}(x,y)-\operatorname{dist}(x,y')|<3\eta r ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ < 3 η r , and dist ( x , y ) \operatorname{dist}(x,y) dist ( x , y ) and dist ( x , y ′ ) \operatorname{dist}(x,y') dist ( x , y ′ ) are at least r r r , the smallest distance from the layer to Q Q Q . If x x x lies in the j j j -th ring, the same argument gives ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ < 3 ⋅ 2 j + 1 η r |\operatorname{dist}(x,y)-\operatorname{dist}(x,y')|<3\cdot2^{j+1}\eta r ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ < 3 ⋅ 2 j + 1 η r , while dist ( x , y ) \operatorname{dist}(x,y) dist ( x , y ) and dist ( x , y ′ ) \operatorname{dist}(x,y') dist ( x , y ′ ) are at least 2 j + 2 r − 3 r ≥ 2 j + 1 r 2^{j+2}r-3r \ge2^{j+1}r 2 j + 2 r − 3 r ≥ 2 j + 1 r . Finally, if x x x lies beyond the last ring, then dist ( x , q ) ≥ 16 r / η \operatorname{dist}(x,q) \ge16r/\eta dist ( x , q ) ≥ 16 r / η , and dist ( x , y ) \operatorname{dist}(x,y) dist ( x , y ) and dist ( x , y ′ ) \operatorname{dist}(x,y') dist ( x , y ′ ) exceed 16 r / η − 3 r ≥ 2 r / η 16r/\eta-3r \ge2r/\eta 16 r / η − 3 r ≥ 2 r / η , while ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ ≤ dist ( y , y ′ ) < 6 r |\operatorname{dist}(x,y)-\operatorname{dist}(x,y')| \le\operatorname{dist}(y,y')<6r ∣ dist ( x , y ) − dist ( x , y ′ ) ∣ ≤ dist ( y , y ′ ) < 6 r .
Doubling dimension. A point q q q of μ ( Y ) ∩ Q \mu(Y) \cap Q μ ( Y ) ∩ Q in layer r r r is determined by q ( y ) q(y) q ( y ) and its signature. The subset of the ball has at most ( 32 / η ) κ (32/\eta)^\kappa ( 32/ η ) κ points by Theorem 4.1, and the subset of each ring at most ( 16 / η ) κ (16/\eta)^\kappa ( 16/ η ) κ ; every coordinate of a signature is smaller than 11 / η 11/\eta 11/ η , since dist ( y , x ) < 3 r + 8 r \operatorname{dist}(y,x)<3r+8r dist ( y , x ) < 3 r + 8 r for x x x in the ball and dist ( y , x ) < 3 r + 2 j + 3 r ≤ 19 4 ⋅ 2 j + 1 r \operatorname{dist}(y,x)<3r+2^{j+3}r \le\frac{19}{4}\cdot2^{j+1}r dist ( y , x ) < 3 r + 2 j + 3 r ≤ 4 19 ⋅ 2 j + 1 r for x x x in the j j j -th ring. Hence every point q ∈ Q r q \in Q_r q ∈ Q r is chosen as q ( y ) q(y) q ( y ) by at most
N η : = ( 1 + 11 / η ) ( 32 / η ) κ + ⌈ log 2 ( 2 / η ) ⌉ ( 16 / η ) κ N_\eta:= (1+11/\eta)^{(32/\eta)^\kappa+\lceil\log_2(2/\eta)\rceil(16/\eta)^\kappa} N η := ( 1 + 11/ η ) ( 32/ η ) κ + ⌈ l o g 2 ( 2/ η )⌉ ( 16/ η ) κ
points y ∈ μ ( Y ) y \in\mu(Y) y ∈ μ ( Y ) of layer r r r .
Now consider a ball B ( y 0 , R ) B(y_0,R) B ( y 0 , R ) in Q ∪ μ ( Y ) Q \cup\mu(Y) Q ∪ μ ( Y ) , and let x 0 x_0 x 0 be a point of Q Q Q closest to y 0 y_0 y 0 . We cover it by balls of radius R / 2 R/2 R /2 around points of Q ∪ μ ( Y ) Q \cup\mu(Y) Q ∪ μ ( Y ) .
Case dist ( y 0 , Q ) ≤ 2 R \operatorname{dist}(y_0,Q) \le2R dist ( y 0 , Q ) ≤ 2 R . The points x x x of the ball with dist ( x , Q ) ≤ R / 8 \operatorname{dist}(x,Q) \le R/8 dist ( x , Q ) ≤ R /8 have a point of Q Q Q within R / 8 R/8 R /8 , and this point lies in B ( x 0 , R / 8 + R + 2 R ) B(x_0,R/8+R+2R) B ( x 0 , R /8 + R + 2 R ) . Halving the radius four times covers this ball of Q Q Q by 2 4 κ 2^{4\kappa} 2 4 κ balls of radius at most R / 4 R/4 R /4 around points of Q Q Q , and the balls of radius R / 2 R/2 R /2 around the same points cover all points x x x of this kind. Every other point x x x of the ball lies in μ ( Y ) \mu(Y) μ ( Y ) , and its layer r r r satisfies R / 16 < r ≤ dist ( x , Q ) ≤ 3 R R/16<r\le\operatorname{dist}(x,Q)\le3R R /16 < r ≤ dist ( x , Q ) ≤ 3 R , so there are at most six such layers. For a fixed layer r r r , the points q ( x ) q(x) q ( x ) lie in Q r ∩ B ( x 0 , 3 r + R + 2 R ) ⊆ Q r ∩ B ( x 0 , 12 R ) Q_r\cap B(x_0,3r+R+2R)\subseteq Q_r\cap B(x_0,12R) Q r ∩ B ( x 0 , 3 r + R + 2 R ) ⊆ Q r ∩ B ( x 0 , 12 R ) and are pairwise more than η r > η R / 16 \eta r>\eta R/16 η r > η R /16 apart, so there are at most ( 768 / η ) κ (768/\eta)^\kappa ( 768/ η ) κ of them, and at most ( 768 / η ) κ N η (768/\eta)^\kappa N_\eta ( 768/ η ) κ N η points x x x of this layer. We cover each of these points by the ball of radius R / 2 R/2 R /2 around it.
Case dist ( y 0 , Q ) > 2 R \operatorname{dist}(y_0,Q)>2R dist ( y 0 , Q ) > 2 R . Since dist ( ⋅ , Q ) \operatorname{dist}(\cdot,Q) dist ( ⋅ , Q ) is 1 1 1 -Lipschitz, every point x x x of the ball satisfies dist ( y 0 , Q ) / 2 < dist ( x , Q ) < 3 dist ( y 0 , Q ) / 2 \operatorname{dist}(y_0,Q)/2<\operatorname{dist}(x,Q)<3\operatorname{dist}(y_0,Q)/2 dist ( y 0 , Q ) /2 < dist ( x , Q ) < 3 dist ( y 0 , Q ) /2 , so x ∉ Q x\notin Q x ∈ / Q , and its layer lies between dist ( y 0 , Q ) / 4 \operatorname{dist}(y_0,Q)/4 dist ( y 0 , Q ) /4 and 3 dist ( y 0 , Q ) / 2 3\operatorname{dist}(y_0,Q)/2 3 dist ( y 0 , Q ) /2 ; there are at most three such layers. The points q ( x ) q(x) q ( x ) lie in B ( x 0 , 6 dist ( y 0 , Q ) ) B(x_0,6\operatorname{dist}(y_0,Q)) B ( x 0 , 6 dist ( y 0 , Q )) and are pairwise more than η dist ( y 0 , Q ) / 4 \eta\operatorname{dist}(y_0,Q)/4 η dist ( y 0 , Q ) /4 apart, so again every layer contributes at most ( 96 / η ) κ N η (96/\eta)^{\kappa}N_\eta ( 96/ η ) κ N η points, and we cover each by a ball of radius R / 2 R/2 R /2 around it. In both cases, at most 2 4 κ + 6 ( 768 / η ) κ N η 2^{4\kappa}+6(768/\eta)^{\kappa}N_\eta 2 4 κ + 6 ( 768/ η ) κ N η balls of radius R / 2 R/2 R /2 suffice, so the doubling dimension of Q ∪ μ ( Y ) Q\cup\mu(Y) Q ∪ μ ( Y ) is at most κ η = log 2 ( 2 4 κ + 6 ( 768 / η ) κ N η ) = O ( ( 32 / η ) κ log 2 ( 2 / η ) ) \kappa_\eta=\log_2(2^{4\kappa}+6(768/\eta)^{\kappa}N_\eta)=O((32/\eta)^\kappa\log^2(2/\eta)) κ η = log 2 ( 2 4 κ + 6 ( 768/ η ) κ N η ) = O (( 32/ η ) κ log 2 ( 2/ η )) , since log N η = O ( ( 32 / η ) κ log 2 ( 2 / η ) ) \log N_\eta=O((32/\eta)^\kappa\log^2(2/\eta)) log N η = O (( 32/ η ) κ log 2 ( 2/ η )) .
Proof of Theorem 1.2 for one-sided low dimension
The case that P ∪ F P\cup F P ∪ F has doubling dimension at most κ \kappa κ is proved in § 8.1 . We may assume δ ≤ 1 \delta\leq1 δ ≤ 1 . Let η c = min { 1 / 4 , δ / ( 36 z ⋅ 3 z ) } \eta_c=\min\{1/4,\delta/(36z\cdot3^z)\} η c = min { 1/4 , δ / ( 36 z ⋅ 3 z )} , so that ( 1 + 3 η c ) 2 z ≤ e 6 z η c ≤ 1 + δ / ( 3 ⋅ 3 z ) (1+3\eta_c)^{2z}\leq e^{6z\eta_c}\leq1+\delta/(3\cdot3^z) ( 1 + 3 η c ) 2 z ≤ e 6 z η c ≤ 1 + δ / ( 3 ⋅ 3 z ) , and let κ ′ = κ η c \kappa'=\kappa_{\eta_c} κ ′ = κ η c be the bound of Theorem 9.1.
Suppose that the clients have doubling dimension at most κ \kappa κ . Apply Theorem 9.1 with Q Q Q the set of points of the clients, Y = F Y=F Y = F and accuracy η c \eta_c η c , and let F ′ = μ ( F ) ⊆ F F'=\mu(F)\subseteq F F ′ = μ ( F ) ⊆ F . Moving every center of an optimal solution from its location y y y to μ ( y ) \mu(y) μ ( y ) gives a solution with locations in F ′ F' F ′ and cost at most ( 1 + 3 η c ) z OPT (1+3\eta_c)^z\operatorname{OPT} ( 1 + 3 η c ) z OPT . Since P ∪ F ′ P\cup F' P ∪ F ′ has doubling dimension at most κ ′ \kappa' κ ′ , the algorithm of § 8.1 with accuracy δ / 3 \delta/3 δ /3 computes a solution with at most K K K centers at locations in F ′ ⊆ F F'\subseteq F F ′ ⊆ F and cost at most ( 3 z − ( 3 z − 1 ) ϵ + δ / 3 ) ( 1 + 3 η c ) z OPT ≤ ( 3 z − ( 3 z − 1 ) ϵ + δ ) OPT (3^z-(3^z-1)\epsilon+\delta/3)(1+3\eta_c)^z\operatorname{OPT}\leq(3^z-(3^z-1)\epsilon+\delta)\operatorname{OPT} ( 3 z − ( 3 z − 1 ) ϵ + δ /3 ) ( 1 + 3 η c ) z OPT ≤ ( 3 z − ( 3 z − 1 ) ϵ + δ ) OPT .
Suppose that F F F has doubling dimension at most κ \kappa κ . Apply Theorem 9.1 with Q = F Q=F Q = F and Y Y Y the set of points of the clients, and move every client p p p to μ ( p ) \mu(p) μ ( p ) ; several clients may now share a point. The resulting instance has P ′ ∪ F P'\cup F P ′ ∪ F of doubling dimension at most κ ′ \kappa' κ ′ , and keeping the assignment of an optimal solution shows that its optimal cost is at most ( 1 + 3 η c ) z OPT (1+3\eta_c)^z\operatorname{OPT} ( 1 + 3 η c ) z OPT . Compute a solution of it with the algorithm of § 8.1 with accuracy δ / 3 \delta/3 δ /3 , and move every client back to its original point while keeping its center. By (10) , this multiplies the distance of every client to its center by at most 1 + 3 η c 1+3\eta_c 1 + 3 η c . So the cost is at most ( 3 z − ( 3 z − 1 ) ϵ + δ / 3 ) ( 1 + 3 η c ) 2 z OPT ≤ ( 3 z − ( 3 z − 1 ) ϵ + δ ) OPT (3^z-(3^z-1)\epsilon+\delta/3)(1+3\eta_c)^{2z}\operatorname{OPT}\leq(3^z-(3^z-1)\epsilon+\delta)\operatorname{OPT} ( 3 z − ( 3 z − 1 ) ϵ + δ /3 ) ( 1 + 3 η c ) 2 z OPT ≤ ( 3 z − ( 3 z − 1 ) ϵ + δ ) OPT , since the ratio is at most 3 z 3^z 3 z .
Euclidean Space
This section proves Theorem 1.1 . § 10.1 shows that certificates make blocks movable when their representatives are optimal or nearly optimal centers, § 10.2 constructs candidate centers, and § 10.3 assembles the algorithm. For a finite multiset Q Q Q of points of R d \mathbb{R}^d R d , let Ψ Q ( c ) = ∑ p ∈ Q ∥ p − c ∥ z \Psi_Q(c)=\sum_{p\in Q}\lVert p-c\rVert^z Ψ Q ( c ) = ∑ p ∈ Q ∥ p − c ∥ z , where every point is counted with its multiplicity. A minimizer of Ψ Q \Psi_Q Ψ Q is an optimal center of Q Q Q . For z > 1 z>1 z > 1 , the function Ψ Q \Psi_Q Ψ Q is convex and differentiable, with gradient
∇ Ψ Q ( c ) = − z ∑ p ∈ Q ∥ p − c ∥ z − 2 ( p − c ) , \nabla\Psi_Q(c)=-z\sum_{p\in Q}\lVert p-c\rVert^{z-2}(p-c), ∇ Ψ Q ( c ) = − z p ∈ Q ∑ ∥ p − c ∥ z − 2 ( p − c ) ,
where terms with p = c p=c p = c are zero. We also use the following standard fact.
Fact 10.1. Every finite subset X X X of R d \mathbb{R}^d R d has doubling dimension at most 3 d 3d 3 d .
Proof. Let Y Y Y be a maximal subset of B ( x , r ) B(x,r) B ( x , r ) whose points are pairwise more than r / 2 r/2 r /2 apart. The Euclidean balls of radius r / 4 r/4 r /4 around the points of Y Y Y are disjoint and contained in a Euclidean ball of radius 5 r / 4 5r/4 5 r /4 , so ∣ Y ∣ ≤ 5 d ≤ 2 3 d |Y|\leq5^d\leq2^{3d} ∣ Y ∣ ≤ 5 d ≤ 2 3 d . By maximality, the balls B ( y , r / 2 ) B(y,r/2) B ( y , r /2 ) with y ∈ Y y\in Y y ∈ Y cover B ( x , r ) B(x,r) B ( x , r ) .
Certificates and movability
Recall from (5) that ( u , g , v ) ∈ R 3 (u,g,v)\in\mathbb{R}^3 ( u , g , v ) ∈ R 3 is a z z z -certificate if ∣ 1 + t ∣ z ≤ u + g t + v ∣ t ∣ z |1+t|^z\leq u+gt+v|t|^z ∣1 + t ∣ z ≤ u + g t + v ∣ t ∣ z for all t ∈ R t\in\mathbb{R} t ∈ R . For z = 1 z=1 z = 1 , we use the triangle inequality instead, which makes every block ( 1 , 1 ) (1,1) ( 1 , 1 ) -movable for any representative; so let z > 1 z>1 z > 1 .
Lemma 10.2 (Certificates extend to vectors). Let z > 1 z>1 z > 1 , and let ( u , g , v ) (u,g,v) ( u , g , v ) be a z z z -certificate. Then u ≥ 1 u\ge1 u ≥ 1 , v ≥ 1 v\ge1 v ≥ 1 , and for all p , a , y ∈ R d p,a,y\in\mathbb{R}^{d} p , a , y ∈ R d ,
∥ p − y ∥ z ≤ u ∥ p − a ∥ z + g ∥ p − a ∥ z − 2 ⟨ p − a , a − y ⟩ + v ∥ a − y ∥ z . \lVert p-y\rVert^{z}\le u\lVert p-a\rVert^{z}+g\lVert p-a\rVert^{z-2}\langle p-a,a-y\rangle+v\lVert a-y\rVert^{z}. ∥ p − y ∥ z ≤ u ∥ p − a ∥ z + g ∥ p − a ∥ z − 2 ⟨ p − a , a − y ⟩ + v ∥ a − y ∥ z . where the middle term is zero if p = a p=a p = a .
Proof. The certificate inequality at t = 0 t=0 t = 0 gives u ≥ 1 u\ge1 u ≥ 1 , and dividing it by ∣ t ∣ z \lvert t\rvert^{z} ∣ t ∣ z and letting t → ∞ t\to\infty t → ∞ gives v ≥ 1 v\ge1 v ≥ 1 . If p = a p=a p = a , the claim follows from v ≥ 1 v\ge1 v ≥ 1 . Otherwise, both sides are homogeneous of degree z z z under scaling of the three points, so we may assume ∥ p − a ∥ = 1 \lVert p-a\rVert=1 ∥ p − a ∥ = 1 . Let t = ∥ a − y ∥ t=\lVert a-y\rVert t = ∥ a − y ∥ , and let c ∈ [ − 1 , 1 ] c\in[-1,1] c ∈ [ − 1 , 1 ] be the cosine of the angle between p − a p-a p − a and a − y a-y a − y (any value if t = 0 t=0 t = 0 ). Then ∥ p − y ∥ 2 = 1 + t 2 + 2 t c \lVert p-y\rVert^{2}=1+t^{2}+2tc ∥ p − y ∥ 2 = 1 + t 2 + 2 t c , and we must show that
f ( c ) : = ( 1 + t 2 + 2 t c ) z / 2 − g t c ≤ u + v t z . f(c):=(1+t^{2}+2tc)^{z/2}-gtc\le u+vt^{z}. f ( c ) := ( 1 + t 2 + 2 t c ) z /2 − g t c ≤ u + v t z . At c = 1 c=1 c = 1 and c = − 1 c=-1 c = − 1 , this is the certificate inequality at t t t and at − t -t − t . If z ≥ 2 z\ge2 z ≥ 2 , then f f f is convex in c c c , so its maximum over [ − 1 , 1 ] [-1,1] [ − 1 , 1 ] is attained at c = ± 1 c=\pm1 c = ± 1 . Let 1 < z < 2 1<z<2 1 < z < 2 and t > 0 t>0 t > 0 ; then f f f is concave, with derivative f ′ ( c ) = t ( z ℓ ( c ) z − 2 − g ) f'(c)=t(z\ell(c)^{z-2}-g) f ′ ( c ) = t ( z ℓ ( c ) z − 2 − g ) , where ℓ ( c ) = ( 1 + t 2 + 2 t c ) 1 / 2 \ell(c)=(1+t^{2}+2tc)^{1/2} ℓ ( c ) = ( 1 + t 2 + 2 t c ) 1/2 increases from ∣ 1 − t ∣ \lvert1-t\rvert ∣ 1 − t ∣ to 1 + t 1+t 1 + t . If g ≤ 0 g\le0 g ≤ 0 , then f f f is nondecreasing and maximized at c = 1 c=1 c = 1 . If g > 0 g>0 g > 0 , let ℓ ∗ = ( z / g ) 1 / ( 2 − z ) \ell^{*}=(z/g)^{1/(2-z)} ℓ ∗ = ( z / g ) 1/ ( 2 − z ) . Unless ∣ 1 − t ∣ < ℓ ∗ < 1 + t \lvert1-t\rvert<\ell^{*}<1+t ∣ 1 − t ∣ < ℓ ∗ < 1 + t , the function f f f is monotone on [ − 1 , 1 ] [-1,1] [ − 1 , 1 ] and maximized at c = ± 1 c=\pm1 c = ± 1 . Otherwise, it is maximized where ℓ ( c ) = ℓ ∗ \ell(c)=\ell^{*} ℓ ( c ) = ℓ ∗ , and using g = z ℓ ∗ z − 2 g=z\ell^{*z-2} g = z ℓ ∗ z − 2 , the maximum equals
ℓ ∗ z − g 2 ( ℓ ∗ 2 − 1 − t 2 ) = ( 1 − z 2 ) ℓ ∗ z + g 2 + g 2 t 2 . \ell^{*z}-\frac{g}{2}(\ell^{*2}-1-t^{2})=\left(1-\frac{z}{2}\right)\ell^{*z}+\frac{g}{2}+\frac{g}{2}t^{2}. ℓ ∗ z − 2 g ( ℓ ∗ 2 − 1 − t 2 ) = ( 1 − 2 z ) ℓ ∗ z + 2 g + 2 g t 2 . As a function of t t t , this maximum minus v t z vt^{z} v t z has derivative t z − 1 ( g t 2 − z − z v ) t^{z-1}(gt^{2-z}-zv) t z − 1 ( g t 2 − z − z v ) , which changes sign at most once, from negative to positive. So over the interval ∣ 1 − ℓ ∗ ∣ ≤ t ≤ 1 + ℓ ∗ \lvert1-\ell^{*}\rvert\le t\le1+\ell^{*} ∣ 1 − ℓ ∗ ∣ ≤ t ≤ 1 + ℓ ∗ of values of t t t with ∣ 1 − t ∣ ≤ ℓ ∗ ≤ 1 + t \lvert1-t\rvert\le\ell^{*}\le1+t ∣ 1 − t ∣ ≤ ℓ ∗ ≤ 1 + t , it is maximized at an end point. At an end point, the maximizing c c c is 1 1 1 or − 1 -1 − 1 , which we have already handled; if the end point is t = 0 t=0 t = 0 , then ℓ ∗ = 1 \ell^{*}=1 ℓ ∗ = 1 , g = z g=z g = z , and the value is 1 ≤ u 1\le u 1 ≤ u . Hence f ( c ) ≤ u + v t z f(c)\le u+vt^{z} f ( c ) ≤ u + v t z in all cases. □ \square □
Lemma 10.3 (Nearly optimal centers). Let z > 1 z>1 z > 1 , let ( u , g , v ) (u,g,v) ( u , g , v ) be a z z z -certificate, and let α = min { ( z − 1 ) / z , 1 / 2 } \alpha=\min\{(z-1)/z,1/2\} α = min {( z − 1 ) / z , 1/2 } . There is a constant c z c_z c z that depends only on z z z with the following property. Let Q Q Q be a multiset of w w w points of R d \mathbb{R}^{d} R d , and let a ∈ R d a\in\mathbb{R}^{d} a ∈ R d satisfy Ψ Q ( a ) ≤ ( 1 + ϑ ) min c Ψ Q ( c ) \Psi_Q(a)\le(1+\vartheta)\min_c\Psi_Q(c) Ψ Q ( a ) ≤ ( 1 + ϑ ) min c Ψ Q ( c ) with ϑ ∈ [ 0 , 1 ] \vartheta\in[0,1] ϑ ∈ [ 0 , 1 ] . Then for all y 1 , … , y w ∈ R d y_1,\ldots,y_w\in\mathbb{R}^{d} y 1 , … , y w ∈ R d , some bijection ϕ : Q → { 1 , … , w } \phi:Q\to\{1,\ldots,w\} ϕ : Q → { 1 , … , w } satisfies
∑ p ∈ Q ∥ p − y ϕ ( p ) ∥ z ≤ ( u + z − 1 z E ) Ψ Q ( a ) + ( v + E z ) ∑ r = 1 w ∥ a − y r ∥ z , where E = c z ∣ g ∣ α ϑ α . \sum_{p\in Q}\lVert p-y_{\phi(p)}\rVert^{z}\le\left(u+\frac{z-1}{z}E\right)\Psi_Q(a)+\left(v+\frac{E}{z}\right)\sum_{r=1}^{w}\lVert a-y_r\rVert^{z},\qquad\text{where }E=c_z\lvert g\rvert^{\alpha}\vartheta^{\alpha}. p ∈ Q ∑ ∥ p − y ϕ ( p ) ∥ z ≤ ( u + z z − 1 E ) Ψ Q ( a ) + ( v + z E ) r = 1 ∑ w ∥ a − y r ∥ z , where E = c z ∣ g ∣ α ϑ α . In particular, a block whose representative is an optimal center of the block is ( u , v ) (u,v) ( u , v ) -movable.
Proof. Write A = Ψ Q ( a ) A=\Psi_Q(a) A = Ψ Q ( a ) , G = ∇ Ψ Q ( a ) G=\nabla\Psi_Q(a) G = ∇ Ψ Q ( a ) and T = ∑ r ∥ a − y r ∥ z T=\sum_r\lVert a-y_r\rVert^{z} T = ∑ r ∥ a − y r ∥ z , the cost of moving the mass of Q Q Q to the slots. If A = 0 A=0 A = 0 , all points of Q Q Q coincide with a a a , every bijection costs T ≤ v T T\le vT T ≤ v T , and we are done; so let A > 0 A>0 A > 0 . Since A − min c Ψ Q ( c ) ≤ ϑ min c Ψ Q ( c ) ≤ ϑ A A-\min_c\Psi_Q(c)\le\vartheta\min_c\Psi_Q(c)\le\vartheta A A − min c Ψ Q ( c ) ≤ ϑ min c Ψ Q ( c ) ≤ ϑ A , we have
Ψ Q ( a + h ) ≥ A − ϑ A for all h ∈ R d . (12) \Psi_Q(a+h)\ge A-\vartheta A\qquad\text{for all }h\in\mathbb{R}^{d}. \tag*{(12)} Ψ Q ( a + h ) ≥ A − ϑ A for all h ∈ R d . (12) The cross term. Let ϕ \phi ϕ be a uniformly random bijection. Apply Theorem 10.2 to p p p , a a a and y ϕ ( p ) y_{\phi(p)} y ϕ ( p ) for every p ∈ Q p\in Q p ∈ Q , sum over p p p , and take expectations. Since Pr [ ϕ ( p ) = r ] = 1 / w \Pr[\phi(p)=r]=1/w Pr [ ϕ ( p ) = r ] = 1/ w for all p p p and r r r , and ∑ p ∥ p − a ∥ z − 2 ( p − a ) = − G / z \sum_p\lVert p-a\rVert^{z-2}(p-a)=-G/z ∑ p ∥ p − a ∥ z − 2 ( p − a ) = − G / z ,
E [ ∑ p ∈ Q ∥ p − y ϕ ( p ) ∥ z ] ≤ u A + v T − g z w ⟨ G , ∑ r = 1 w ( a − y r ) ⟩ ≤ u A + v T + ∣ g ∣ z ∥ G ∥ ( T w ) 1 / z , \mathbb{E}\left[\sum_{p\in Q}\lVert p-y_{\phi(p)}\rVert^{z}\right]\le uA+vT-\frac{g}{zw}\left\langle G,\sum_{r=1}^{w}(a-y_r)\right\rangle\le uA+vT+\frac{\lvert g\rvert}{z}\lVert G\rVert\left(\frac{T}{w}\right)^{1/z}, E p ∈ Q ∑ ∥ p − y ϕ ( p ) ∥ z ≤ u A + v T − z w g ⟨ G , r = 1 ∑ w ( a − y r ) ⟩ ≤ u A + v T + z ∣ g ∣ ∥ G ∥ ( w T ) 1/ z , @page 29/48 starts_mid=0 ends_mid=1
Lemma 10.2 (Certificates extend to vectors). Let z > 1 z>1 z > 1 , and let ( u , g , v ) (u,g,v) ( u , g , v ) be a z z z -certificate. Then u ≥ 1 u\ge1 u ≥ 1 , v ≥ 1 v\ge1 v ≥ 1 , and for all p , a , y ∈ R d p,a,y\in\mathbb{R}^{d} p , a , y ∈ R d ,
∥ p − y ∥ z ≤ u ∥ p − a ∥ z + g ∥ p − a ∥ z − 2 ⟨ p − a , a − y ⟩ + v ∥ a − y ∥ z . \lVert p-y\rVert^{z}\le u\lVert p-a\rVert^{z}+g\lVert p-a\rVert^{z-2}\langle p-a,a-y\rangle+v\lVert a-y\rVert^{z}. ∥ p − y ∥ z ≤ u ∥ p − a ∥ z + g ∥ p − a ∥ z − 2 ⟨ p − a , a − y ⟩ + v ∥ a − y ∥ z . where the middle term is zero if p = a p=a p = a .
Proof. The certificate inequality at t = 0 t=0 t = 0 gives u ≥ 1 u\ge1 u ≥ 1 , and dividing it by ∣ t ∣ z \lvert t\rvert^{z} ∣ t ∣ z and letting t → ∞ t\to\infty t → ∞ gives v ≥ 1 v\ge1 v ≥ 1 . If p = a p=a p = a , the claim follows from v ≥ 1 v\ge1 v ≥ 1 . Otherwise, both sides are homogeneous of degree z z z under scaling of the three points, so we may assume ∥ p − a ∥ = 1 \lVert p-a\rVert=1 ∥ p − a ∥ = 1 . Let t = ∥ a − y ∥ t=\lVert a-y\rVert t = ∥ a − y ∥ , and let c ∈ [ − 1 , 1 ] c\in[-1,1] c ∈ [ − 1 , 1 ] be the cosine of the angle between p − a p-a p − a and a − y a-y a − y (any value if t = 0 t=0 t = 0 ). Then ∥ p − y ∥ 2 = 1 + t 2 + 2 t c \lVert p-y\rVert^{2}=1+t^{2}+2tc ∥ p − y ∥ 2 = 1 + t 2 + 2 t c , and we must show that
f ( c ) : = ( 1 + t 2 + 2 t c ) z / 2 − g t c ≤ u + v t z . f(c):=(1+t^{2}+2tc)^{z/2}-gtc\le u+vt^{z}. f ( c ) := ( 1 + t 2 + 2 t c ) z /2 − g t c ≤ u + v t z . At c = 1 c=1 c = 1 and c = − 1 c=-1 c = − 1 , this is the certificate inequality at t t t and at − t -t − t . If z ≥ 2 z\ge2 z ≥ 2 , then f f f is convex in c c c , so its maximum over [ − 1 , 1 ] [-1,1] [ − 1 , 1 ] is attained at c = ± 1 c=\pm1 c = ± 1 . Let 1 < z < 2 1<z<2 1 < z < 2 and t > 0 t>0 t > 0 ; then f f f is concave, with derivative f ′ ( c ) = t ( z ℓ ( c ) z − 2 − g ) f'(c)=t(z\ell(c)^{z-2}-g) f ′ ( c ) = t ( z ℓ ( c ) z − 2 − g ) , where ℓ ( c ) = ( 1 + t 2 + 2 t c ) 1 / 2 \ell(c)=(1+t^{2}+2tc)^{1/2} ℓ ( c ) = ( 1 + t 2 + 2 t c ) 1/2 increases from ∣ 1 − t ∣ \lvert1-t\rvert ∣ 1 − t ∣ to 1 + t 1+t 1 + t . If g ≤ 0 g\le0 g ≤ 0 , then f f f is nondecreasing and maximized at c = 1 c=1 c = 1 . If g > 0 g>0 g > 0 , let ℓ ∗ = ( z / g ) 1 / ( 2 − z ) \ell^{*}=(z/g)^{1/(2-z)} ℓ ∗ = ( z / g ) 1/ ( 2 − z ) . Unless ∣ 1 − t ∣ < ℓ ∗ < 1 + t \lvert1-t\rvert<\ell^{*}<1+t ∣ 1 − t ∣ < ℓ ∗ < 1 + t , the function f f f is monotone on [ − 1 , 1 ] [-1,1] [ − 1 , 1 ] and maximized at c = ± 1 c=\pm1 c = ± 1 . Otherwise, it is maximized where ℓ ( c ) = ℓ ∗ \ell(c)=\ell^{*} ℓ ( c ) = ℓ ∗ , and using g = z ℓ ∗ z − 2 g=z\ell^{*z-2} g = z ℓ ∗ z − 2 , the maximum equals
ℓ ∗ z − g 2 ( ℓ ∗ 2 − 1 − t 2 ) = ( 1 − z 2 ) ℓ ∗ z + g 2 + g 2 t 2 . \ell^{*z}-\frac{g}{2}(\ell^{*2}-1-t^{2})=\left(1-\frac{z}{2}\right)\ell^{*z}+\frac{g}{2}+\frac{g}{2}t^{2}. ℓ ∗ z − 2 g ( ℓ ∗ 2 − 1 − t 2 ) = ( 1 − 2 z ) ℓ ∗ z + 2 g + 2 g t 2 . As a function of t t t , this maximum minus v t z vt^{z} v t z has derivative t z − 1 ( g t 2 − z − z v ) t^{z-1}(gt^{2-z}-zv) t z − 1 ( g t 2 − z − z v ) , which changes sign at most once, from negative to positive. So over the interval ∣ 1 − ℓ ∗ ∣ ≤ t ≤ 1 + ℓ ∗ \lvert1-\ell^{*}\rvert\le t\le1+\ell^{*} ∣ 1 − ℓ ∗ ∣ ≤ t ≤ 1 + ℓ ∗ of values of t t t with ∣ 1 − t ∣ ≤ ℓ ∗ ≤ 1 + t \lvert1-t\rvert\le\ell^{*}\le1+t ∣ 1 − t ∣ ≤ ℓ ∗ ≤ 1 + t , it is maximized at an end point. At an end point, the maximizing c c c is 1 1 1 or − 1 -1 − 1 , which we have already handled; if the end point is t = 0 t=0 t = 0 , then ℓ ∗ = 1 \ell^{*}=1 ℓ ∗ = 1 , g = z g=z g = z , and the value is 1 ≤ u 1\le u 1 ≤ u . Hence f ( c ) ≤ u + v t z f(c)\le u+vt^{z} f ( c ) ≤ u + v t z in all cases. □ \square □
Lemma 10.3 (Nearly optimal centers). Let z > 1 z>1 z > 1 , let ( u , g , v ) (u,g,v) ( u , g , v ) be a z z z -certificate, and let α = min { ( z − 1 ) / z , 1 / 2 } \alpha=\min\{(z-1)/z,1/2\} α = min {( z − 1 ) / z , 1/2 } . There is a constant c z c_z c z that depends only on z z z with the following property. Let Q Q Q be a multiset of w w w points of R d \mathbb{R}^{d} R d , and let a ∈ R d a\in\mathbb{R}^{d} a ∈ R d satisfy Ψ Q ( a ) ≤ ( 1 + ϑ ) min c Ψ Q ( c ) \Psi_Q(a)\le(1+\vartheta)\min_c\Psi_Q(c) Ψ Q ( a ) ≤ ( 1 + ϑ ) min c Ψ Q ( c ) with ϑ ∈ [ 0 , 1 ] \vartheta\in[0,1] ϑ ∈ [ 0 , 1 ] . Then for all y 1 , … , y w ∈ R d y_1,\ldots,y_w\in\mathbb{R}^{d} y 1 , … , y w ∈ R d , some bijection ϕ : Q → { 1 , … , w } \phi:Q\to\{1,\ldots,w\} ϕ : Q → { 1 , … , w } satisfies
∑ p ∈ Q ∥ p − y ϕ ( p ) ∥ z ≤ ( u + z − 1 z E ) Ψ Q ( a ) + ( v + E z ) ∑ r = 1 w ∥ a − y r ∥ z , where E = c z ∣ g ∣ α ϑ α . \sum_{p\in Q}\lVert p-y_{\phi(p)}\rVert^{z}\le\left(u+\frac{z-1}{z}E\right)\Psi_Q(a)+\left(v+\frac{E}{z}\right)\sum_{r=1}^{w}\lVert a-y_r\rVert^{z},\qquad\text{where }E=c_z\lvert g\rvert^{\alpha}\vartheta^{\alpha}. p ∈ Q ∑ ∥ p − y ϕ ( p ) ∥ z ≤ ( u + z z − 1 E ) Ψ Q ( a ) + ( v + z E ) r = 1 ∑ w ∥ a − y r ∥ z , where E = c z ∣ g ∣ α ϑ α . In particular, a block whose representative is an optimal center of the block is ( u , v ) (u,v) ( u , v ) -movable.
Proof. Write A = Ψ Q ( a ) A=\Psi_Q(a) A = Ψ Q ( a ) , G = ∇ Ψ Q ( a ) G=\nabla\Psi_Q(a) G = ∇ Ψ Q ( a ) and T = ∑ r ∥ a − y r ∥ z T=\sum_r\lVert a-y_r\rVert^{z} T = ∑ r ∥ a − y r ∥ z , the cost of moving the mass of Q Q Q to the slots. If A = 0 A=0 A = 0 , all points of Q Q Q coincide with a a a , every bijection costs T ≤ v T T\le vT T ≤ v T , and we are done; so let A > 0 A>0 A > 0 . Since A − min c Ψ Q ( c ) ≤ ϑ min c Ψ Q ( c ) ≤ ϑ A A-\min_c\Psi_Q(c)\le\vartheta\min_c\Psi_Q(c)\le\vartheta A A − min c Ψ Q ( c ) ≤ ϑ min c Ψ Q ( c ) ≤ ϑ A , we have
Ψ Q ( a + h ) ≥ A − ϑ A for all h ∈ R d . (13) \Psi_Q(a+h)\ge A-\vartheta A\qquad\text{for all }h\in\mathbb{R}^{d}. \tag*{(13)} Ψ Q ( a + h ) ≥ A − ϑ A for all h ∈ R d . (13) The cross term. Let ϕ \phi ϕ be a uniformly random bijection. Apply Theorem 10.2 to p p p , a a a and y ϕ ( p ) y_{\phi(p)} y ϕ ( p ) for every p ∈ Q p\in Q p ∈ Q , sum over p p p , and take expectations. Since Pr [ ϕ ( p ) = r ] = 1 / w \Pr[\phi(p)=r]=1/w Pr [ ϕ ( p ) = r ] = 1/ w for all p p p and r r r , and ∑ p ∥ p − a ∥ z − 2 ( p − a ) = − G / z \sum_p\lVert p-a\rVert^{z-2}(p-a)=-G/z ∑ p ∥ p − a ∥ z − 2 ( p − a ) = − G / z ,
E [ ∑ p ∈ Q ∥ p − y ϕ ( p ) ∥ z ] ≤ u A + v T − g z w ⟨ G , ∑ r = 1 w ( a − y r ) ⟩ ≤ u A + v T + ∣ g ∣ z ∥ G ∥ ( T w ) 1 / z , \mathbb{E}\left[\sum_{p\in Q}\lVert p-y_{\phi(p)}\rVert^{z}\right]\le uA+vT-\frac{g}{zw}\left\langle G,\sum_{r=1}^{w}(a-y_r)\right\rangle\le uA+vT+\frac{\lvert g\rvert}{z}\lVert G\rVert\left(\frac{T}{w}\right)^{1/z}, E p ∈ Q ∑ ∥ p − y ϕ ( p ) ∥ z ≤ u A + v T − z w g ⟨ G , r = 1 ∑ w ( a − y r ) ⟩ ≤ u A + v T + z ∣ g ∣ ∥ G ∥ ( w T ) 1/ z ,
where the last step uses 1 w ∑ r ∥ a − y r ∥ ≤ ( 1 w ∑ r ∥ a − y r ∥ z ) 1 / z \frac{1}{w}\sum_r \lVert a-y_r\rVert\le\left(\frac{1}{w}\sum_r \lVert a-y_r\rVert^z\right)^{1/z} w 1 ∑ r ∥ a − y r ∥ ≤ ( w 1 ∑ r ∥ a − y r ∥ z ) 1/ z . It remains to show that
∥ G ∥ ≤ z c z w 1 / z ϑ α A ( z − 1 ) / z , (14) \lVert G\rVert\le zc_z w^{1/z}\vartheta^\alpha A^{(z-1)/z}, \tag*{(14)} ∥ G ∥ ≤ z c z w 1/ z ϑ α A ( z − 1 ) / z , (14)
because then the expected cost is at most u A + v T + E A ( z − 1 ) / z T 1 / z ≤ u A + v T + E ( ( z − 1 ) A + T ) / z uA+vT+EA^{(z-1)/z}T^{1/z}\le uA+vT+E((z-1)A+T)/z u A + v T + E A ( z − 1 ) / z T 1/ z ≤ u A + v T + E (( z − 1 ) A + T ) / z , by the weighted inequality of arithmetic and geometric means, and some bijection costs at most the expectation. We may assume G ≠ 0 G\ne0 G = 0 .
The gradient for 1 < z ≤ 2 1<z\le2 1 < z ≤ 2 . For 1 < z < 2 1<z<2 1 < z < 2 , the function x ↦ ∥ x ∥ z x\mapsto\lVert x\rVert^z x ↦ ∥ x ∥ z has no bounded Hessian near 0, but for 1 < z ≤ 2 1<z\le2 1 < z ≤ 2 the remainder of its first-order Taylor expansion is at most a constant times ∥ h ∥ z \lVert h\rVert^z ∥ h ∥ z ; this is (15) below, which replaces the Hessian bound that we use for z ≥ 2 z\ge2 z ≥ 2 . Let C z = max 0 ≤ s ≤ 1 / 2 ( ( 1 − s ) z − s z + z s z − 1 ) ≤ 3 C_z=\max_{0\le s\le1/2}((1-s)^z-s^z+zs^{z-1})\le3 C z = max 0 ≤ s ≤ 1/2 (( 1 − s ) z − s z + z s z − 1 ) ≤ 3 . We claim that for all e , h ∈ R d e,h\in\mathbb{R}^d e , h ∈ R d ,
∥ e + h ∥ z ≤ ∥ e ∥ z + z ∥ e ∥ z − 2 ⟨ e , h ⟩ + C z ∥ h ∥ z . (15) \lVert e+h\rVert^z\le\lVert e\rVert^z+z\lVert e\rVert^{z-2}\langle e,h\rangle+C_z\lVert h\rVert^z. \tag*{(15)} ∥ e + h ∥ z ≤ ∥ e ∥ z + z ∥ e ∥ z − 2 ⟨ e , h ⟩ + C z ∥ h ∥ z . (15)
For h = 0 h=0 h = 0 this is trivial; otherwise, by homogeneity, let ∥ h ∥ = 1 \lVert h\rVert=1 ∥ h ∥ = 1 , s = ∥ e ∥ s=\lVert e\rVert s = ∥ e ∥ and ⟨ e , h ⟩ = s c \langle e,h\rangle=sc ⟨ e , h ⟩ = sc with c ∈ [ − 1 , 1 ] c\in[-1,1] c ∈ [ − 1 , 1 ] . The difference of the two sides of (15) without the last term is ( s 2 + 2 s c + 1 ) z / 2 − s z − z s z − 1 c (s^2+2sc+1)^{z/2}-s^z-zs^{z-1}c ( s 2 + 2 sc + 1 ) z /2 − s z − z s z − 1 c , which is concave in c c c with derivative z s ( s 2 + 2 s c + 1 ) ( z − 2 ) / 2 − s z z − 2 zs(s^2+2sc+1)^{(z-2)/2}-sz^{z-2} z s ( s 2 + 2 sc + 1 ) ( z − 2 ) /2 − s z z − 2 . If s ≤ 1 / 2 s\le1/2 s ≤ 1/2 , the derivative is nonpositive, so the maximum over c c c is at c = − 1 c=-1 c = − 1 , where the expression is ( 1 − s ) z − s z + z s z − 1 ≤ C z (1-s)^z-s^z+zs^{z-1}\le C_z ( 1 − s ) z − s z + z s z − 1 ≤ C z . If s > 1 / 2 s>1/2 s > 1/2 , the maximum is at c = − 1 / ( 2 s ) c=-1/(2s) c = − 1/ ( 2 s ) , where the expression is z 2 s z − 2 ≤ z 2 1 − z \frac{z}{2}s^{z-2}\le z2^{1-z} 2 z s z − 2 ≤ z 2 1 − z , the value of the expression in the definition of C z C_z C z at s = 1 / 2 s=1/2 s = 1/2 . This proves (15) . Applying it to e = p − a e=p-a e = p − a and − h -h − h and summing over p p p gives Ψ Q ( a + h ) ≤ A + ⟨ G , h ⟩ + C z w ∥ h ∥ z \Psi_Q(a+h)\le A+\langle G,h\rangle+C_zw\lVert h\rVert^z Ψ Q ( a + h ) ≤ A + ⟨ G , h ⟩ + C z w ∥ h ∥ z . With h = − τ G / ∥ G ∥ h=-\tau G/\lVert G\rVert h = − τ G / ∥ G ∥ and (12), we get ϑ A ≥ τ ∥ G ∥ − C z w τ z \vartheta A\ge\tau\lVert G\rVert-C_zw\tau^z ϑ A ≥ τ ∥ G ∥ − C z w τ z for all τ ≥ 0 \tau\ge0 τ ≥ 0 . The maximum of the right-hand side over τ \tau τ is z − 1 z ∥ G ∥ z / ( z − 1 ) ( z C z w ) − 1 / ( z − 1 ) \frac{z-1}{z}\lVert G\rVert^{z/(z-1)}(zC_zw)^{-1/(z-1)} z z − 1 ∥ G ∥ z / ( z − 1 ) ( z C z w ) − 1/ ( z − 1 ) , which gives (14) with c z = C z 1 / z ( z − 1 ) − ( z − 1 ) / z c_z=C_z^{1/z}(z-1)^{-(z-1)/z} c z = C z 1/ z ( z − 1 ) − ( z − 1 ) / z .
The gradient for z ≥ 2 z\ge2 z ≥ 2 . Let ϱ = ( A / w ) 1 / z \varrho=(A/w)^{1/z} ϱ = ( A / w ) 1/ z . For ∥ h ∥ ≤ ϱ \lVert h\rVert\le\varrho ∥ h ∥ ≤ ϱ , Minkowski’s inequality gives Ψ Q ( a + h ) 1 / z ≤ A 1 / z + w 1 / z ∥ h ∥ ≤ 2 A 1 / z \Psi_Q(a+h)^{1/z}\le A^{1/z}+w^{1/z}\lVert h\rVert\le2A^{1/z} Ψ Q ( a + h ) 1/ z ≤ A 1/ z + w 1/ z ∥ h ∥ ≤ 2 A 1/ z . The Hessian of x ↦ ∥ x ∥ z x\mapsto\lVert x\rVert^z x ↦ ∥ x ∥ z has largest eigenvalue z ( z − 1 ) ∥ x ∥ z − 2 z(z-1)\lVert x\rVert^{z-2} z ( z − 1 ) ∥ x ∥ z − 2 , so by Hölder’s inequality the Hessian of Ψ Q \Psi_Q Ψ Q at any point b b b with ∥ b − a ∥ ≤ ϱ \lVert b-a\rVert\le\varrho ∥ b − a ∥ ≤ ϱ has norm at most
z ( z − 1 ) ∑ p ∈ Q ∥ p − b ∥ z − 2 ≤ z ( z − 1 ) w 2 / z Ψ Q ( b ) ( z − 2 ) / z ≤ z ( z − 1 ) 2 z − 2 w 2 / z A ( z − 2 ) / z = : Θ . z(z-1)\sum_{p\in Q}\lVert p-b\rVert^{z-2}\le z(z-1)w^{2/z}\Psi_Q(b)^{(z-2)/z}\le z(z-1)2^{z-2}w^{2/z}A^{(z-2)/z}=:\Theta. z ( z − 1 ) p ∈ Q ∑ ∥ p − b ∥ z − 2 ≤ z ( z − 1 ) w 2/ z Ψ Q ( b ) ( z − 2 ) / z ≤ z ( z − 1 ) 2 z − 2 w 2/ z A ( z − 2 ) / z =: Θ.
By Hölder’s inequality, ∥ G ∥ ≤ z ∑ p ∥ p − a ∥ z − 1 ≤ z w 1 / z A ( z − 1 ) / z = z A / ϱ \lVert G\rVert\le z\sum_p\lVert p-a\rVert^{z-1}\le zw^{1/z}A^{(z-1)/z}=zA/\varrho ∥ G ∥ ≤ z ∑ p ∥ p − a ∥ z − 1 ≤ z w 1/ z A ( z − 1 ) / z = z A / ϱ , so the point h = − G / Θ h=-G/\Theta h = − G /Θ satisfies ∥ h ∥ ≤ ϱ / ( ( z − 1 ) 2 z − 2 ) ≤ ϱ \lVert h\rVert\le\varrho/((z-1)2^{z-2})\le\varrho ∥ h ∥ ≤ ϱ / (( z − 1 ) 2 z − 2 ) ≤ ϱ . Taylor’s formula and (12) give A − ϑ A ≤ Ψ Q ( a + h ) ≤ A − ∥ G ∥ 2 / Θ + ∥ G ∥ 2 / ( 2 Θ ) A-\vartheta A\le\Psi_Q(a+h)\le A-\lVert G\rVert^2/\Theta+\lVert G\rVert^2/(2\Theta) A − ϑ A ≤ Ψ Q ( a + h ) ≤ A − ∥ G ∥ 2 /Θ + ∥ G ∥ 2 / ( 2Θ ) , that is, ∥ G ∥ 2 ≤ 2 Θ ϑ A \lVert G\rVert^2\le2\Theta\vartheta A ∥ G ∥ 2 ≤ 2Θ ϑ A . This is (14) with c z = ( 2 z − 1 ( z − 1 ) / z ) 1 / 2 c_z=(2^{z-1}(z-1)/z)^{1/2} c z = ( 2 z − 1 ( z − 1 ) / z ) 1/2 .
Candidate centers
The dimension d d d may be large, so we cannot place grids around the clients, as the approximate centroid sets of Matoušek [Mat00] for k k k -means do, whose size grows exponentially with d d d . Instead, we use the averages of projected subgradient steps along all short sequences of clients. The clients of a set Q Q Q can be far from its optimal center, so the subgradients of their individual costs can be large. We therefore use importance sampling: for a point p 0 p_0 p 0 and a scale s s s , every client x x x is weighted by ( s / ( ∥ x − p 0 ∥ + s ) ) z (s/(\lVert x-p_0\rVert+s))^z ( s / (∥ x − p 0 ∥ + s ) ) z , which bounds all subgradients on the ball of radius s s s around p 0 p_0 p 0 by z s z − 1 zs^{z-1} z s z − 1 , and it is sampled with probability proportional to ( ∥ x − p 0 ∥ + s ) z (\lVert x-p_0\rVert+s)^z (∥ x − p 0 ∥ + s ) z , so that the expected weighted cost is proportional to Ψ Q \Psi_Q Ψ Q .
Lemma 10.4 (Candidate centers). Let P P P be a multiset of n ≥ 2 n\ge2 n ≥ 2 points of R d \mathbb{R}^d R d , z ≥ 1 z\ge1 z ≥ 1 and ϑ ∈ ( 0 , 1 ] \vartheta\in(0,1] ϑ ∈ ( 0 , 1 ] , and let N = ⌈ ( z 4 z / ϑ ) 2 ⌉ N=\lceil(z4^z/\vartheta)^2\rceil N = ⌈( z 4 z / ϑ ) 2 ⌉ . One can compute a set Γ ⊂ R d \Gamma\subset\mathbb{R}^d Γ ⊂ R d that contains the points of P P P , with ∣ Γ ∣ ≤ n N + 3 ⌈ log 2 ( 4 n ) ⌉ |\Gamma|\le n^{N+3}\lceil\log_2(4n)\rceil ∣Γ∣ ≤ n N + 3 ⌈ log 2 ( 4 n )⌉ , using O ( N d ) O(Nd) O ( N d ) arithmetic operations, square roots and real powers per point of Γ \Gamma Γ , such that
min c ∈ Γ Ψ Q ( c ) ≤ ( 1 + ϑ ) min c ∈ R d Ψ Q ( c ) for every nonempty multiset Q ⊆ P . \min_{c\in\Gamma}\Psi_Q(c)\le(1+\vartheta)\min_{c\in\mathbb{R}^d}\Psi_Q(c)\qquad\text{for every nonempty multiset }Q\subseteq P. c ∈ Γ min Ψ Q ( c ) ≤ ( 1 + ϑ ) c ∈ R d min Ψ Q ( c ) for every nonempty multiset Q ⊆ P .
Proof. Construction. Γ \Gamma Γ contains P P P and the following points. For every p 0 ∈ P p_0 \in P p 0 ∈ P , every distance b b b between two distinct points of P P P , and every integer 0 ≤ j ≤ ⌈ log 2 ( 2 n ) ⌉ 0 \le j \le\lceil\log_2(2n) \rceil 0 ≤ j ≤ ⌈ log 2 ( 2 n )⌉ , let s = 2 − j b s = 2^{-j}b s = 2 − j b and let D D D be the closed ball of radius s s s around p 0 p_0 p 0 . For x ∈ P x \in P x ∈ P , let ℓ x ( c ) = s z ∥ x − c ∥ z / ( ∥ x − p 0 ∥ + s ) z \ell_x(c) = s^z\lVert x-c\rVert^z/(\lVert x-p_0\rVert+s)^z ℓ x ( c ) = s z ∥ x − c ∥ z / (∥ x − p 0 ∥ + s ) z , a convex function whose subgradients at points c ∈ D c \in D c ∈ D have norm at most z s z ∥ x − c ∥ z − 1 / ( ∥ x − p 0 ∥ + s ) z ≤ z s z − 1 zs^z\lVert x-c\rVert^{z-1}/(\lVert x-p_0\rVert+s)^z \le zs^{z-1} z s z ∥ x − c ∥ z − 1 / (∥ x − p 0 ∥ + s ) z ≤ z s z − 1 . For every sequence ( x 1 , … , x N ) ∈ P N (x_1,\ldots,x_N) \in P^N ( x 1 , … , x N ) ∈ P N , let c 1 = p 0 c_1=p_0 c 1 = p 0 and c t + 1 = Π D ( c t − τ G t ) c_{t+1}=\Pi_D(c_t-\tau G_t) c t + 1 = Π D ( c t − τ G t ) for t = 1 , … , N t=1,\ldots,N t = 1 , … , N , where G t G_t G t is a subgradient of ℓ x t \ell_{x_t} ℓ x t at c t c_t c t (zero if c t = x t c_t=x_t c t = x t ), Π D \Pi_D Π D is the projection onto D D D , and τ = s 2 − z / ( z N ) \tau=s^{2-z}/(z\sqrt{N}) τ = s 2 − z / ( z N ) is the step size. Add the average c ˉ = 1 N ∑ t = 1 N c t \bar c=\frac{1}{N}\sum_{t=1}^N c_t c ˉ = N 1 ∑ t = 1 N c t to Γ \Gamma Γ .
Analysis. If all points of Q Q Q coincide, this point lies in Γ \Gamma Γ . Otherwise, let w = ∣ Q ∣ ≥ 2 w=|Q|\ge2 w = ∣ Q ∣ ≥ 2 , let c ∗ c^* c ∗ be an optimal center of Q Q Q and OPT Q = Ψ Q ( c ∗ ) > 0 \operatorname{OPT}_Q=\Psi_Q(c^*)>0 OPT Q = Ψ Q ( c ∗ ) > 0 , and let ϱ = ( OPT Q / w ) 1 / z \varrho=(\operatorname{OPT}_Q/w)^{1/z} ϱ = ( OPT Q / w ) 1/ z . Let p 0 ∈ Q p_0\in Q p 0 ∈ Q be a point closest to c ∗ c^* c ∗ , so ∥ p 0 − c ∗ ∥ ≤ ϱ \lVert p_0-c^*\rVert\le\varrho ∥ p 0 − c ∗ ∥ ≤ ϱ , and let b b b be the diameter of Q Q Q . Placing the center at a point of Q Q Q gives OPT Q ≤ ( w − 1 ) b z \operatorname{OPT}_Q\le(w-1)b^z OPT Q ≤ ( w − 1 ) b z , so ϱ ≤ b \varrho\le b ϱ ≤ b , and the two points at distance b b b alone cost at least 2 1 − z b z 2^{1-z}b^z 2 1 − z b z , so b ≤ 2 w 1 / z ϱ ≤ 2 n ϱ b\le2w^{1/z}\varrho\le2n\varrho b ≤ 2 w 1/ z ϱ ≤ 2 n ϱ . Hence some value s = 2 − j b s=2^{-j}b s = 2 − j b of the construction satisfies ϱ ≤ s < 2 ϱ \varrho\le s<2\varrho ϱ ≤ s < 2 ϱ , and then c ∗ ∈ D c^*\in D c ∗ ∈ D . Consider the probability distribution on Q Q Q that picks x x x with probability ( ∥ x − p 0 ∥ + s ) z / Z (\lVert x-p_0\rVert+s)^z/Z (∥ x − p 0 ∥ + s ) z / Z , where Z = ∑ x ∈ Q ( ∥ x − p 0 ∥ + s ) z Z=\sum_{x\in Q}(\lVert x-p_0\rVert+s)^z Z = ∑ x ∈ Q (∥ x − p 0 ∥ + s ) z . By Minkowski's inequality and ∥ c ∗ − p 0 ∥ + s ≤ 3 ϱ \lVert c^*-p_0\rVert+s\le3\varrho ∥ c ∗ − p 0 ∥ + s ≤ 3 ϱ ,
Z 1 / z ≤ Ψ Q ( c ∗ ) 1 / z + w 1 / z ⋅ 3 ϱ = 4 OPT Q 1 / z . Z^{1/z}\le\Psi_Q(c^*)^{1/z}+w^{1/z}\cdot3\varrho=4\operatorname{OPT}_Q^{1/z}. Z 1/ z ≤ Ψ Q ( c ∗ ) 1/ z + w 1/ z ⋅ 3 ϱ = 4 OPT Q 1/ z .
For a random x x x , the expected value of ℓ x ( c ) \ell_x(c) ℓ x ( c ) is ℓ ˉ ( c ) : = s z Ψ Q ( c ) / Z \bar\ell(c):=s^z\Psi_Q(c)/Z ℓ ˉ ( c ) := s z Ψ Q ( c ) / Z . Now let x 1 , … , x N x_1,\ldots,x_N x 1 , … , x N be independent random points with this distribution. Since c t c_t c t does not depend on x t x_t x t , the vector G t G_t G t has conditional expectation in the subdifferential of ℓ ˉ \bar\ell ℓ ˉ at c t c_t c t . Projections onto D ∋ c ∗ D\ni c^* D ∋ c ∗ do not increase distances to c ∗ c^* c ∗ , so
∥ c t + 1 − c ∗ ∥ 2 ≤ ∥ c t − c ∗ ∥ 2 − 2 τ ⟨ G t , c t − c ∗ ⟩ + τ 2 ( z s z − 1 ) 2 = ∥ c t − c ∗ ∥ 2 − 2 τ ⟨ G t , c t − c ∗ ⟩ + s 2 N . \lVert c_{t+1}-c^*\rVert^2\le\lVert c_t-c^*\rVert^2-2\tau\langle G_t,c_t-c^*\rangle+\tau^2(zs^{z-1})^2=\lVert c_t-c^*\rVert^2-2\tau\langle G_t,c_t-c^*\rangle+\frac{s^2}{N}. ∥ c t + 1 − c ∗ ∥ 2 ≤ ∥ c t − c ∗ ∥ 2 − 2 τ ⟨ G t , c t − c ∗ ⟩ + τ 2 ( z s z − 1 ) 2 = ∥ c t − c ∗ ∥ 2 − 2 τ ⟨ G t , c t − c ∗ ⟩ + N s 2 .
and by convexity E ⟨ G t , c t − c ∗ ⟩ ≥ E [ ℓ ˉ ( c t ) ] − ℓ ˉ ( c ∗ ) \mathbb{E}\langle G_t,c_t-c^*\rangle\ge\mathbb{E}[\bar\ell(c_t)]-\bar\ell(c^*) E ⟨ G t , c t − c ∗ ⟩ ≥ E [ ℓ ˉ ( c t )] − ℓ ˉ ( c ∗ ) . Summing over t t t and using ∥ c 1 − c ∗ ∥ ≤ s \lVert c_1-c^*\rVert\le s ∥ c 1 − c ∗ ∥ ≤ s and the convexity of ℓ ˉ \bar\ell ℓ ˉ gives
E [ ℓ ˉ ( c ˉ ) ] − ℓ ˉ ( c ∗ ) ≤ 1 N ∑ t = 1 N ( E [ ℓ ˉ ( c t ) ] − ℓ ˉ ( c ∗ ) ) ≤ s 2 + s 2 2 τ N = z s z N . \mathbb{E}[\bar\ell(\bar c)]-\bar\ell(c^*)\le\frac{1}{N}\sum_{t=1}^N\bigl(\mathbb{E}[\bar\ell(c_t)]-\bar\ell(c^*)\bigr)\le\frac{s^2+s^2}{2\tau N}=\frac{zs^z}{\sqrt{N}}. E [ ℓ ˉ ( c ˉ )] − ℓ ˉ ( c ∗ ) ≤ N 1 t = 1 ∑ N ( E [ ℓ ˉ ( c t )] − ℓ ˉ ( c ∗ ) ) ≤ 2 τ N s 2 + s 2 = N z s z .
Multiplying by Z / s z ≤ 4 z OPT Q / s z Z/s^z\le4^z\operatorname{OPT}_Q/s^z Z / s z ≤ 4 z OPT Q / s z gives E [ Ψ Q ( c ˉ ) ] − OPT Q ≤ z 4 z OPT Q / N ≤ ϑ OPT Q \mathbb{E}[\Psi_Q(\bar c)]-\operatorname{OPT}_Q\le z4^z\operatorname{OPT}_Q/\sqrt{N}\le\vartheta\operatorname{OPT}_Q E [ Ψ Q ( c ˉ )] − OPT Q ≤ z 4 z OPT Q / N ≤ ϑ OPT Q . So some sequence in Q N ⊆ P N Q^N\subseteq P^N Q N ⊆ P N yields a point of Γ \Gamma Γ with Ψ Q ( c ˉ ) ≤ ( 1 + ϑ ) OPT Q \Psi_Q(\bar c)\le(1+\vartheta)\operatorname{OPT}_Q Ψ Q ( c ˉ ) ≤ ( 1 + ϑ ) OPT Q . The bound on ∣ Γ ∣ |\Gamma| ∣Γ∣ counts the choices of p 0 p_0 p 0 , b b b , j j j and the sequence. □
Proof of Theorem 1.1
We may assume δ ≤ 1 \delta\le1 δ ≤ 1 and OPT > 0 \operatorname{OPT}>0 OPT > 0 : OPT = 0 \operatorname{OPT}=0 OPT = 0 if and only if ∑ x ⌈ n x / U ⌉ ≤ k \sum_x\lceil n_x/U\rceil\le k ∑ x ⌈ n x / U ⌉ ≤ k , where n x n_x n x is the number of clients at point x x x , and then ⌈ n x / U ⌉ \lceil n_x/U\rceil ⌈ n x / U ⌉ centers at every such point x x x cost 0 0 0 . If z = 1 z=1 z = 1 , let ( u , g , v ) = ( 1 , 0 , 1 ) (u,g,v)=(1,0,1) ( u , g , v ) = ( 1 , 0 , 1 ) , which corresponds to the triangle inequality, so that every block is ( 1 , 1 ) (1,1) ( 1 , 1 ) -movable for any representative and u + 2 v = 3 = B 1 u+2v=3=\mathcal{B}_1 u + 2 v = 3 = B 1 (Theorem 2.7(b)). If z > 1 z>1 z > 1 , let ( u , g , v ) (u,g,v) ( u , g , v ) be a z z z -certificate with u + 2 z v ≤ B z + δ / 4 u+2^zv\le\mathcal{B}_z+\delta/4 u + 2 z v ≤ B z + δ /4 ; it depends only on z z z and δ \delta δ and can be computed by Theorem A.1. Let
η = min { 1 10 , δ 32 ⋅ 3 z } . \eta=\min\left\{\frac{1}{10},\frac{\delta}{32\cdot3^z}\right\}. η = min { 10 1 , 32 ⋅ 3 z δ } .
let ϑ ≤ η \vartheta\le\eta ϑ ≤ η be so small that E = c z ∣ g ∣ ϑ α E=c_z|g|^{\vartheta\alpha} E = c z ∣ g ∣ ϑ α satisfies E ( z − 1 + 2 z ) / z ≤ δ / 4 E(z-1+2^z)/z\le\delta/4 E ( z − 1 + 2 z ) / z ≤ δ /4 , with c z c_z c z and α \alpha α from Theorem 10.3 (for z = 1 z=1 z = 1 , let ϑ = η \vartheta=\eta ϑ = η and E = 0 E=0 E = 0 ), and let η c = min { 1 / 4 , ϑ / ( 18 z ) } \eta_c=\min\{1/4,\vartheta/(18z)\} η c = min { 1/4 , ϑ / ( 18 z )} , so that ( 1 + 3 η c ) z ≤ 1 + ϑ / 3 (1+3\eta_c)^z\le1+\vartheta/3 ( 1 + 3 η c ) z ≤ 1 + ϑ /3 . Locations. Compute the set Γ \Gamma Γ of Theorem 10.4 with accuracy ϑ / 3 \vartheta/3 ϑ /3 , apply Theorem 9.1 with the set of points of the clients as the low-dimensional side, Y = Γ Y=\Gamma Y = Γ and accuracy η c \eta_c η c , and let F = μ ( Γ ) F=\mu(\Gamma) F = μ ( Γ ) . Then all clients lie in F F F , the set F F F has doubling dimension at most κ ′ = κ η c \kappa'=\kappa\eta_c κ ′ = κ η c , and by (10), for every nonempty Q ⊆ P Q\subseteq P Q ⊆ P ,
min c ∈ F Ψ Q ( c ) ≤ ( 1 + ϑ / 3 ) min c ∈ F Ψ Q ( c ) ≤ ( 1 + ϑ / 3 ) 2 min c ∈ R d Ψ Q ( c ) ≤ ( 1 + ϑ ) min c ∈ R d Ψ Q ( c ) . (16) \min_{c\in F}\Psi_Q(c)\leq(1+\vartheta/3)\min_{c\in F}\Psi_Q(c)\leq(1+\vartheta/3)^2\min_{c\in\mathbb{R}^d}\Psi_Q(c)\leq(1+\vartheta)\min_{c\in\mathbb{R}^d}\Psi_Q(c). \tag*{(16)} c ∈ F min Ψ Q ( c ) ≤ ( 1 + ϑ /3 ) c ∈ F min Ψ Q ( c ) ≤ ( 1 + ϑ /3 ) 2 c ∈ R d min Ψ Q ( c ) ≤ ( 1 + ϑ ) c ∈ R d min Ψ Q ( c ) . (16)
Reference solution and blocks. Take an optimal solution, and replace the center of each of its clusters by a point of F F F of minimum cost for that cluster. By (16) , this gives a soft solution S ∗ S^* S ∗ with at most k k k centers at locations in F F F and cost cost ( S ∗ ) ≤ ( 1 + ϑ ) OPT \operatorname{cost}(S^*)\leq(1+\vartheta)\operatorname{OPT} cost ( S ∗ ) ≤ ( 1 + ϑ ) OPT . By Theorem 4.3 , compute an uncapacitated solution with at most k k k centers in F F F whose cost is at most ( 1 + η ) (1+\eta) ( 1 + η ) times the optimal uncapacitated cost over F F F , which is at most cost ( S ∗ ) \operatorname{cost}(S^*) cost ( S ∗ ) , and split it into blocks as in § 2.1 . Then replace the representative of every block P i P_i P i by a point a i ∈ F a_i\in F a i ∈ F that minimizes Ψ P i \Psi_{P_i} Ψ P i over F F F . This does not increase A A A , so A ≤ ( 1 + η ) cost ( S ∗ ) A\leq(1+\eta)\operatorname{cost}(S^*) A ≤ ( 1 + η ) cost ( S ∗ ) , and by (16) , Ψ P i ( a i ) ≤ ( 1 + ϑ ) min c Ψ P i ( c ) \Psi_{P_i}(a_i)\leq(1+\vartheta)\min_{c}\Psi_{P_i}(c) Ψ P i ( a i ) ≤ ( 1 + ϑ ) min c Ψ P i ( c ) . By Theorem 10.3 (for z = 1 z=1 z = 1 , by the triangle inequality), every block is ( u ′ , v ′ ) (u',v') ( u ′ , v ′ ) -movable for u ′ = u + ( z − 1 ) E / z u'=u+(z-1)E/z u ′ = u + ( z − 1 ) E / z and v ′ = v + E / z v'=v+E/z v ′ = v + E / z , and
β ′ : = u ′ + 2 z v ′ = u + 2 z v + z − 1 + 2 z z E ≤ B z + δ 2 ≤ 2 ⋅ 3 z . \beta' := u'+2^zv'=u+2^zv+\frac{z-1+2^z}{z}E\leq B_z+\frac{\delta}{2}\leq2\cdot3^z. β ′ := u ′ + 2 z v ′ = u + 2 z v + z z − 1 + 2 z E ≤ B z + 2 δ ≤ 2 ⋅ 3 z .
The framework. Theorem 2.6 with accuracy η \eta η , doubling dimension κ ′ \kappa' κ ′ , the pair ( u ′ , v ′ ) (u',v') ( u ′ , v ′ ) and the reference solution S ∗ S^* S ∗ computes a soft solution with at most K K K centers at locations in F F F and cost
C 0 ≤ ( β ′ − ( β ′ − 1 ) ε + 4 β ′ η ) cost ( S ∗ ) ≤ ( B z − ( B z − 1 ) ε + δ 2 + δ 4 ) ( 1 + ϑ ) OPT ≤ ( B z − ( B z − 1 ) ε + 7 δ 8 ) OPT , \begin{aligned}
C_0\leq(\beta'-(\beta'-1)\varepsilon+4\beta'\eta)\operatorname{cost}(S^*) \\
&\leq\left(B_z-(B_z-1)\varepsilon+\frac{\delta}{2}+\frac{\delta}{4}\right)(1+\vartheta)\operatorname{OPT}\leq\left(B_z-(B_z-1)\varepsilon+\frac{7\delta}{8}\right)\operatorname{OPT},
\end{aligned} C 0 ≤ ( β ′ − ( β ′ − 1 ) ε + 4 β ′ η ) cost ( S ∗ ) ≤ ( B z − ( B z − 1 ) ε + 2 δ + 4 δ ) ( 1 + ϑ ) OPT ≤ ( B z − ( B z − 1 ) ε + 8 7 δ ) OPT ,
using β ′ − ( β ′ − 1 ) ε ≤ B z − ( B z − 1 ) ε + ( β ′ − B z ) \beta'-(\beta'-1)\varepsilon\leq B_z-(B_z-1)\varepsilon+(\beta'-B_z) β ′ − ( β ′ − 1 ) ε ≤ B z − ( B z − 1 ) ε + ( β ′ − B z ) , 4 β ′ η ≤ 8 ⋅ 3 z η ≤ δ / 4 4\beta'\eta\leq8\cdot3^z\eta\leq\delta/4 4 β ′ η ≤ 8 ⋅ 3 z η ≤ δ /4 , and ϑ ( B z + 1 ) ≤ 2 ⋅ 3 z η ≤ δ / 16 \vartheta(B_z+1)\leq2\cdot3^z\eta\leq\delta/16 ϑ ( B z + 1 ) ≤ 2 ⋅ 3 z η ≤ δ /16 .
Distinct centers. Some center of every solution with at most k k k centers serves clients at two distinct points p ≠ p ′ p\ne p' p = p ′ , since otherwise moving every center to the point of its clients would give cost 0 0 0 ; these clients cost at least 2 1 − z ∥ p − p ′ ∥ z 2^{1-z}\lVert p-p'\rVert^z 2 1 − z ∥ p − p ′ ∥ z , so OPT ≥ 2 1 − z a min z \operatorname{OPT}\geq2^{1-z}a_{\min}^z OPT ≥ 2 1 − z a m i n z , where a min a_{\min} a m i n is the minimum distance between two distinct points of clients. Let r 0 > 0 r_0>0 r 0 > 0 be such that ( C 0 1 / z + n 1 / z r 0 ) z = C 0 + δ 16 2 1 − z a min z (C_0^{1/z}+n^{1/z}r_0)^z=C_0+\frac{\delta}{16}2^{1-z}a_{\min}^z ( C 0 1/ z + n 1/ z r 0 ) z = C 0 + 16 δ 2 1 − z a m i n z . Process the at most K K K centers one by one, and move the current center from its location c c c to c + r e 1 c+re_1 c + r e 1 , where e 1 e_1 e 1 is the first unit vector and r r r is one of the K K K values j r 0 / ( K + 1 ) jr_0/(K+1) j r 0 / ( K + 1 ) , j = 1 , … , K j=1,\ldots,K j = 1 , … , K , for which c + r e 1 c+re_1 c + r e 1 differs from all centers moved before; each of these fewer than K K K centers excludes at most one value. Keep the assignment. The centers become distinct, every client’s distance to its center grows by less than r 0 r_0 r 0 , and by Minkowski’s inequality the cost is at most ( C 0 1 / z + n 1 / z r 0 ) z ≤ C 0 + δ 16 OPT < ( B z − ( B z − 1 ) ε + δ ) OPT (C_0^{1/z}+n^{1/z}r_0)^z\leq C_0+\frac{\delta}{16}\operatorname{OPT}< (B_z-(B_z-1)\varepsilon+\delta)\operatorname{OPT} ( C 0 1/ z + n 1/ z r 0 ) z ≤ C 0 + 16 δ OPT < ( B z − ( B z − 1 ) ε + δ ) OPT .
Running time. The set Γ \Gamma Γ has n O ( z 2 z 16 κ ′ ) n^{O(z2^{z16}\kappa')} n O ( z 2 z 16 κ ′ ) points, each computed with O ( d ) O(d) O ( d ) operations per step. Distances are computed in O ( d ) O(d) O ( d ) , and all other steps run in time polynomial in n n n , ∣ Γ ∣ |\Gamma| ∣Γ∣ and log Δ ( P ∪ F ) \log\Delta(P\cup F) log Δ ( P ∪ F ) for fixed κ ′ \kappa' κ ′ , z z z , ε \varepsilon ε and δ \delta δ , by Theorems 2.6, 4.3 and 9.1. The dimension d d d enters only through the arithmetic on coordinates. Since κ ′ \kappa' κ ′ is exponential in κ \kappa κ , the degree of the polynomial is doubly exponential in κ \kappa κ for fixed z z z , ε \varepsilon ε and δ \delta δ .
Hard Capacities and General Metrics
This section proves Theorems 1.3 and 1.4 . As in § 2.9 , for a finite family S S S of centers at locations in F F F , several of which may share a location, cost ( S ) \operatorname{cost}(S) cost ( S ) denotes the minimum cost of an assignment of the clients to the centers of S S S in which every center serves at most U U U clients, and cost ( S ) = ∞ \operatorname{cost}(S) = \infty cost ( S ) = ∞ if ∣ S ∣ U < n |S|U < n ∣ S ∣ U < n ; it is computed by a minimum-cost flow. For a solution S ∗ S^* S ∗ , cost ( S ∗ ) \operatorname{cost}(S^*) cost ( S ∗ ) is the cost of its assignment. A hard solution is a subset of F F F , and since F F F contains the centers of an optimal hard solution, cost ( F ) ≤ O P T \operatorname{cost}(F) \leq\mathrm{OPT} cost ( F ) ≤ OPT for the optimal hard cost O P T \mathrm{OPT} OPT .
Projection
For k k k -median and S = F S = F S = F , the following lemma is the conversion from soft to hard capacities of Li [74 Theorem 1.2] . We allow any family S S S , and we apply Minkowski’s inequality at the two places where costs are added, which extends the lemma to all z ≥ 1 z \geq1 z ≥ 1 .
Lemma 11.1 (Projection). Let S S S be a finite family of centers at locations in F F F with cost ( S ) < ∞ \operatorname{cost}(S) < \infty cost ( S ) < ∞ , and let S ∗ S^* S ∗ be a solution whose centers lie at arbitrary points of the metric space, each serving at most U U U clients. One can compute in polynomial time a subfamily S ′ ⊆ S S' \subseteq S S ′ ⊆ S with ∣ S ′ ∣ ≤ ∣ S ∗ ∣ |S'| \leq|S^*| ∣ S ′ ∣ ≤ ∣ S ∗ ∣ and cost ( S ′ ) ≤ ( cost ( S ) 1 / z + 2 cost ( S ∗ ) 1 / z ) z \operatorname{cost}(S') \leq\left(\operatorname{cost}(S)^{1/z} + 2\operatorname{cost}(S^*)^{1/z}\right)^z cost ( S ′ ) ≤ ( cost ( S ) 1/ z + 2 cost ( S ∗ ) 1/ z ) z .
Proof. As in § 2.2 , let J J J be the set of centers of S ∗ S^* S ∗ that serve clients, where j ∈ J j \in J j ∈ J is at point c j c_j c j and serves ℓ j ≤ U \ell_j \leq U ℓ j ≤ U clients, and let σ \sigma σ be the assignment of S ∗ S^* S ∗ . Let σ ′ \sigma' σ ′ be an assignment of the clients to S S S of cost cost ( S ) \operatorname{cost}(S) cost ( S ) in which every center serves at most U U U clients, and let π 0 \pi^0 π 0 be the matrix indexed by S × J S \times J S × J with π x j 0 = ∣ { p : σ ′ ( p ) = x , σ ( p ) = j } ∣ \pi^0_{xj} = |\{p : \sigma'(p) = x,\ \sigma(p) = j\}| π x j 0 = ∣ { p : σ ′ ( p ) = x , σ ( p ) = j } ∣ ; its column sums are ℓ j \ell_j ℓ j and its row sums are at most U U U . Let entry x j xj x j cost dist ( x , c j ) z \operatorname{dist}(x,c_j)^z dist ( x , c j ) z , where dist ( x , c j ) \operatorname{dist}(x,c_j) dist ( x , c j ) is the distance from the location of x x x to c j c_j c j . Applying (6) to the triples ( σ ′ ( p ) , c σ ( p ) , p ) (\sigma'(p),c_{\sigma(p)},p) ( σ ′ ( p ) , c σ ( p ) , p ) shows that π 0 \pi^0 π 0 costs at most ( cost ( S ) 1 / z + cost ( S ∗ ) 1 / z ) z \left(\operatorname{cost}(S)^{1/z}+\operatorname{cost}(S^*)^{1/z}\right)^z ( cost ( S ) 1/ z + cost ( S ∗ ) 1/ z ) z . By Theorem 4.2, applied with the row sums of π 0 \pi^0 π 0 , we obtain a plan π \pi π with the same row and column sums, no larger cost and a forest as support.
Call a center x ∈ S x \in S x ∈ S used if its row sum is positive, and full if its row sum is U U U . While some component of the support contains two used centers x ≠ x ′ x \ne x' x = x ′ of S S S that are not full, consider the path between them in the support. It alternates between centers of S S S and of J J J and has even length. Adding 1 to every other entry along the path and subtracting 1 from the others keeps all column sums and the row sums of the interior centers, and changes the row sums of x x x and x ′ x' x ′ by + 1 +1 + 1 and − 1 -1 − 1 , or by − 1 -1 − 1 and + 1 +1 + 1 . Both directions are feasible, since the row sums of x x x and x ′ x' x ′ lie strictly between 0 and U U U and all entries on the path are positive. The cost changes by opposite amounts in the two directions, so one direction does not increase the cost; we repeat this change in that direction as long as it stays feasible. Then an entry becomes zero, or x x x or x ′ x' x ′ becomes full. No step adds an entry to the support, and a full center stays full, because only the two end centers of a path change their row sums. So every step removes an entry of the support or creates a new full center, and the process stops after at most ∣ S ∣ ⋅ ∣ J ∣ + ∣ S ∣ |S|\cdot|J| + |S| ∣ S ∣ ⋅ ∣ J ∣ + ∣ S ∣ steps.
At the end, every component of the support contains at most one used center of S S S that is not full. If the column sums in a component add up to t t t , the component therefore contains exactly ⌈ t / U ⌉ \lceil t/U\rceil ⌈ t / U ⌉ used centers of S S S ; since every column sum is at most U U U , it also contains at least ⌈ t / U ⌉ \lceil t/U\rceil ⌈ t / U ⌉ centers of J J J . So the set S ′ S' S ′ of used centers satisfies ∣ S ′ ∣ ≤ ∣ J ∣ ≤ ∣ S ∗ ∣ |S'| \leq|J| \leq|S^*| ∣ S ′ ∣ ≤ ∣ J ∣ ≤ ∣ S ∗ ∣ . Assign the clients of every j ∈ J j \in J j ∈ J to the ℓ j \ell_j ℓ j slots given by column j j j of the final plan; every center of S ′ S' S ′ receives its row sum, which is at most U U U . Applying (6) to the triples ( p , x , c σ ( p ) ) (p,x,c_{\sigma(p)}) ( p , x , c σ ( p ) ) , where p p p is assigned to x x x , bounds the cost by
( cost ( S ∗ ) 1 / z + ( cost ( S ) 1 / z + cost ( S ∗ ) 1 / z ) ) z = ( cost ( S ) 1 / z + 2 cost ( S ∗ ) 1 / z ) z . \left(\operatorname{cost}(S^*)^{1/z}+\left(\operatorname{cost}(S)^{1/z}+\operatorname{cost}(S^*)^{1/z}\right)\right)^z
=
\left(\operatorname{cost}(S)^{1/z}+2\operatorname{cost}(S^*)^{1/z}\right)^z. ( cost ( S ∗ ) 1/ z + ( cost ( S ) 1/ z + cost ( S ∗ ) 1/ z ) ) z = ( cost ( S ) 1/ z + 2 cost ( S ∗ ) 1/ z ) z .
For k k k -means in Euclidean space, the random matching of § 2.8 sharpens the bound.
Lemma 11.2 (Euclidean projection). Let z = 2 z = 2 z = 2 and V = R d V = \mathbb{R}^d V = R d , and suppose that every center of S ∗ S^* S ∗ is at the centroid of the clients that it serves. Then the subfamily S ′ S' S ′ of Theorem 11.1 satisfies cost ( S ′ ) ≤ cost ( S ) + 2 cost ( S ∗ ) + 2 cost ( S ) cost ( S ∗ ) \operatorname{cost}(S') \leq\operatorname{cost}(S) + 2\operatorname{cost}(S^*) + 2\sqrt{\operatorname{cost}(S)\operatorname{cost}(S^*)} cost ( S ′ ) ≤ cost ( S ) + 2 cost ( S ∗ ) + 2 cost ( S ) cost ( S ∗ ) .
Proof. In the last step of the proof of Theorem 11.1, assign the ℓ j \ell_j ℓ j clients of every j ∈ J j \in J j ∈ J to the ℓ j \ell_j ℓ j slots of column j j j by a uniformly random bijection. Since c j c_j c j is the centroid of these clients, ∥ p − x ∥ 2 = ∥ p − c j ∥ 2 + 2 ⟨ p − c j , c j − x ⟩ + ∥ c j − x ∥ 2 \lVert p-x\rVert^2 = \lVert p-c_j\rVert^2 + 2\langle p-c_j,c_j-x\rangle+ \lVert c_j-x\rVert^2 ∥ p − x ∥ 2 = ∥ p − c j ∥ 2 + 2 ⟨ p − c j , c j − x ⟩ + ∥ c j − x ∥ 2 and ∑ p : σ ( p ) = j ( p − c j ) = 0 \sum_{p:\sigma(p)=j}(p-c_j)=0 ∑ p : σ ( p ) = j ( p − c j ) = 0 show that the expected cost of these clients is ∑ p : σ ( p ) = j ∥ p − c j ∥ 2 + ∑ x π x j ∥ x − c j ∥ 2 \sum_{p:\sigma(p)=j}\lVert p-c_j\rVert^2 + \sum_x \pi_{xj}\lVert x-c_j\rVert^2 ∑ p : σ ( p ) = j ∥ p − c j ∥ 2 + ∑ x π x j ∥ x − c j ∥ 2 . Some bijection costs at most the expectation, so cost ( S ′ ) ≤ cost ( S ∗ ) + cost ( π ) \operatorname{cost}(S') \le\operatorname{cost}(S^*)+\operatorname{cost}(\pi) cost ( S ′ ) ≤ cost ( S ∗ ) + cost ( π ) , and cost ( π ) ≤ ( cost ( S ) 1 / 2 + cost ( S ∗ ) 1 / 2 ) 2 \operatorname{cost}(\pi)\le(\operatorname{cost}(S)^{1/2}+\operatorname{cost}(S^*)^{1/2})^2 cost ( π ) ≤ ( cost ( S ) 1/2 + cost ( S ∗ ) 1/2 ) 2 as in that proof.
Proof of Theorem 1.3 . Let OPT be the optimal hard cost, and let β = 3 z \beta=3^z β = 3 z for instances as in Theorem 1.2 and β = B z \beta=B_z β = B z for instances in R d \mathbb{R}^d R d with a finite set F F F . In the setting of Theorem 1.2 , every hard solution is a soft solution, so the algorithm of Theorem 1.2 with accuracy δ ′ \delta' δ ′ computes a soft solution with at most K K K centers at locations in F F F and cost at most ( β − ( β − 1 ) ε + δ ′ ) O P T (\beta-(\beta-1)\varepsilon+\delta')\mathrm{OPT} ( β − ( β − 1 ) ε + δ ′ ) OPT . For instances in R d \mathbb{R}^d R d with a finite set F ⊂ R d F\subset\mathbb{R}^d F ⊂ R d , every hard solution is a solution of the instance in which centers may be placed anywhere, so the algorithm of Theorem 1.1 with accuracy δ ′ \delta' δ ′ computes at most K K K centers in R d \mathbb{R}^d R d and an assignment of cost at most ( β − ( β − 1 ) ε + δ ′ ) O P T (\beta-(\beta-1)\varepsilon+\delta')\mathrm{OPT} ( β − ( β − 1 ) ε + δ ′ ) OPT . In both cases, every center serves at most U U U clients.
Apply Theorem 11.1 with S = F S=F S = F and this solution as S ∗ S^* S ∗ . The derivative of w ↦ ( 1 + 2 w 1 / z ) z ( 2 + w − 1 / z ) z − 1 ≤ 2 ⋅ 3 z − 1 w\mapsto(1+2w^{1/z})^z(2+w^{-1/z})^{z-1}\le2\cdot3^{z-1} w ↦ ( 1 + 2 w 1/ z ) z ( 2 + w − 1/ z ) z − 1 ≤ 2 ⋅ 3 z − 1 for w ≥ 1 w\ge1 w ≥ 1 , so with δ ′ = δ / ( 2 ⋅ 3 z − 1 ) \delta'=\delta/(2\cdot3^{z-1}) δ ′ = δ / ( 2 ⋅ 3 z − 1 ) and cost ( F ) ≤ O P T \operatorname{cost}(F)\le\mathrm{OPT} cost ( F ) ≤ OPT , the cost is at most ( 1 + 2 ( β − ( β − 1 ) ε + δ ′ ) 1 / z ) z O P T ≤ ( ( 1 + 2 ( β − ( β − 1 ) ε ) 1 / z ) z + δ ) O P T (1+2(\beta-(\beta-1)\varepsilon+\delta')^{1/z})^z\mathrm{OPT}\le((1+2(\beta-(\beta-1)\varepsilon)^{1/z})^z+\delta)\mathrm{OPT} ( 1 + 2 ( β − ( β − 1 ) ε + δ ′ ) 1/ z ) z OPT ≤ (( 1 + 2 ( β − ( β − 1 ) ε ) 1/ z ) z + δ ) OPT . For k k k -means in R d \mathbb{R}^d R d , we first move every center of the solution of Theorem 1.1 to the centroid of its clients, which does not increase the cost, and apply Theorem 11.2 instead. Since δ ′ = δ / 6 \delta'=\delta/6 δ ′ = δ /6 for z = 2 z=2 z = 2 , the cost is at most ( 1 + 2 ( 5 − 4 ε + δ ′ ) + 2 ( 5 − 4 ε + δ ′ ) 1 / 2 ) O P T ≤ ( 11 − 8 ε + 2 5 − 4 ε + δ ) O P T (1+2(5-4\varepsilon+\delta')+2(5-4\varepsilon+\delta')^{1/2})\mathrm{OPT}\le(11-8\varepsilon+2\sqrt{5-4\varepsilon}+\delta)\mathrm{OPT} ( 1 + 2 ( 5 − 4 ε + δ ′ ) + 2 ( 5 − 4 ε + δ ′ ) 1/2 ) OPT ≤ ( 11 − 8 ε + 2 5 − 4 ε + δ ) OPT .
Greedy deletion
We follow the analysis of the reverse greedy algorithm by Chrobak, Kenyon and Young [46 ] . Theorem 11.3 below is the substitutes property of the assignment problem [89 ] , and for hard capacities and z = 1 z=1 z = 1 , Theorem 11.4 is the projection property (P2) of Anthony et al. [8 Section 6] with constant 2. We include short proofs, since we need families with repeated locations and all z ≥ 1 z\ge1 z ≥ 1 .
Lemma 11.3 (Supermodularity). For finite families S ′ ⊆ S S'\subseteq S S ′ ⊆ S of centers at locations in F F F with cost ( S ′ ) < ∞ \operatorname{cost}(S')<\infty cost ( S ′ ) < ∞ ,
∑ x ∈ S ∖ S ′ ( cost ( S ∖ { x } ) − cost ( S ) ) ≤ cost ( S ′ ) − cost ( S ) . \sum_{x\in S\setminus S'}\left(\operatorname{cost}(S\setminus\{x\})-\operatorname{cost}(S)\right)\le\operatorname{cost}(S')-\operatorname{cost}(S). x ∈ S ∖ S ′ ∑ ( cost ( S ∖ { x }) − cost ( S ) ) ≤ cost ( S ′ ) − cost ( S ) .
Proof. Give every center U U U slots. An assignment in which every center serves at most U U U clients is a matching between the clients and the slots that covers all clients, and a client p p p matched to a slot of a center at location y y y costs dist ( p , y ) z \operatorname{dist}(p,y)^z dist ( p , y ) z . Let S ′ ⊆ S ′ ′ ⊆ S S'\subseteq S''\subseteq S S ′ ⊆ S ′′ ⊆ S and x ∈ S ′ ′ ∖ S ′ x\in S''\setminus S' x ∈ S ′′ ∖ S ′ . We first show that
cost ( S ′ ′ ) + cost ( S ∖ { x } ) ≤ cost ( S ) + cost ( S ′ ′ ∖ { x } ) , (17) \operatorname{cost}(S'')+\operatorname{cost}(S\setminus\{x\})\le\operatorname{cost}(S)+\operatorname{cost}(S''\setminus\{x\}), \tag*{(17)} cost ( S ′′ ) + cost ( S ∖ { x }) ≤ cost ( S ) + cost ( S ′′ ∖ { x }) , (17)
where all four costs are finite, since the families contain S ′ S' S ′ . Let σ 1 \sigma_1 σ 1 and σ 2 \sigma_2 σ 2 be optimal assignments for S S S and for $S''\setminus{x}. In their union, which may contain an edge twice, every client has degree 2 and every slot has degree at most 2, and every vertex of degree 2 meets one edge of each matching. So every component with an edge is a cycle or a path between two slots, and its edges alternate between σ 1 \sigma_1 σ 1 and σ 2 \sigma_2 σ 2 . A path between two slots has an even number of edges, so its two end edges lie in different matchings. The slots of x x x and of the centers of S ∖ S ′ ′ S\setminus S'' S ∖ S ′′ meet only edges of σ 1 \sigma_1 σ 1 , since σ 2 \sigma_2 σ 2 uses only slots of S ′ ′ ∖ { x } S''\setminus\{x\} S ′′ ∖ { x } ; so such a slot is isolated or an end of a path whose other end edge lies in σ 2 \sigma_2 σ 2 , and every component contains at most one of them. In a component that contains a slot of a center of S ∖ S ′ ′ S \setminus S^{\prime\prime} S ∖ S ′′ , we give the edges of σ 1 \sigma_1 σ 1 to S ′ ∖ { x } S^{\prime} \setminus\{x\} S ′ ∖ { x } and those of σ 2 \sigma_2 σ 2 to S ′ ′ S^{\prime\prime} S ′′ ; in every other component, we give the edges of σ 1 \sigma_1 σ 1 to S ′ ′ S^{\prime\prime} S ′′ and those of σ 2 \sigma_2 σ 2 to S ∖ { x } S \setminus\{x\} S ∖ { x } . Then every client and every slot meets at most one edge given to each family, every edge given to a family ends at a slot of that family, and every client meets an edge given to each family. This yields assignments for S ′ ′ S^{\prime\prime} S ′′ and for S ∖ { x } S \setminus\{x\} S ∖ { x } of total cost cost ( S ) + cost ( S ′ ′ ∖ { x } ) \operatorname{cost}(S) + \operatorname{cost}(S^{\prime\prime} \setminus\{x\}) cost ( S ) + cost ( S ′′ ∖ { x }) , which proves (17) .
Now delete the centers of S ∖ S ′ S \setminus S^{\prime} S ∖ S ′ from S S S one at a time. The increases of the cost add up to cost ( S ′ ) − cost ( S ) \operatorname{cost}(S^{\prime}) - \operatorname{cost}(S) cost ( S ′ ) − cost ( S ) , and by (17) , each of them is at least the increase caused by deleting the same center from S S S .
One deletion
Lemma 11.4 (One deletion). Let S S S be a family of k + r k+r k + r centers at locations in F F F with r ≥ 1 r \ge1 r ≥ 1 and cost ( S ) < ∞ \operatorname{cost}(S) < \infty cost ( S ) < ∞ , and let S ∗ S^* S ∗ be a solution with at most k k k centers at arbitrary points. Some center x ∈ S x \in S x ∈ S satisfies
r ( cost ( S ∖ { x } ) − cost ( S ) ) ≤ ( cost ( S ) 1 / z + 2 cost ( S ∗ ) 1 / z ) z − cost ( S ) . r\bigl(\operatorname{cost}(S \setminus\{x\})-\operatorname{cost}(S)\bigr) \le\bigl(\operatorname{cost}(S)^{1/z}+2\operatorname{cost}(S^*)^{1/z}\bigr)^z-\operatorname{cost}(S). r ( cost ( S ∖ { x }) − cost ( S ) ) ≤ ( cost ( S ) 1/ z + 2 cost ( S ∗ ) 1/ z ) z − cost ( S ) .
Proof. By Theorem 11.1, some S ′ ⊆ S S^{\prime} \subseteq S S ′ ⊆ S with ∣ S ′ ∣ ≤ k \lvert S^{\prime}\rvert\le k ∣ S ′ ∣ ≤ k has cost ( S ′ ) ≤ ( cost ( S ) 1 / z + 2 cost ( S ∗ ) 1 / z ) z \operatorname{cost}(S^{\prime}) \le\bigl(\operatorname{cost}(S)^{1/z}+2\operatorname{cost}(S^*)^{1/z}\bigr)^z cost ( S ′ ) ≤ ( cost ( S ) 1/ z + 2 cost ( S ∗ ) 1/ z ) z . Adding centers of S S S to S ′ S^{\prime} S ′ does not increase cost ( S ′ ) \operatorname{cost}(S^{\prime}) cost ( S ′ ) , so we may assume that ∣ S ′ ∣ = k \lvert S^{\prime}\rvert= k ∣ S ′ ∣ = k . Then S ∖ S ′ S \setminus S^{\prime} S ∖ S ′ has r r r centers, and by Theorem 11.3, the increases cost ( S ∖ { x } ) − cost ( S ) \operatorname{cost}(S \setminus\{x\})-\operatorname{cost}(S) cost ( S ∖ { x }) − cost ( S ) caused by deleting them add up to at most cost ( S ′ ) − cost ( S ) \operatorname{cost}(S^{\prime})-\operatorname{cost}(S) cost ( S ′ ) − cost ( S ) .
For z = 1 z=1 z = 1 , the right side is 2 cost ( S ∗ ) 2\operatorname{cost}(S^*) 2 cost ( S ∗ ) . For z > 1 z>1 z > 1 , it grows with cost ( S ) \operatorname{cost}(S) cost ( S ) , and the next lemma compares the deletions with the differential equation that defines L z L_z L z .
Lemma 11.5 (Greedy deletion). Let ϵ , η ∈ ( 0 , 1 ] \epsilon,\eta\in(0,1] ϵ , η ∈ ( 0 , 1 ] with k ≥ 4 / ( ϵ η ) k \ge4/(\epsilon\eta) k ≥ 4/ ( ϵη ) , let ρ ≥ 1 \rho\ge1 ρ ≥ 1 , and let S 0 S_0 S 0 be a family of at most 2 k − 1 2k-1 2 k − 1 centers at locations in F F F with cost ( S 0 ) ≤ ρ OPT \operatorname{cost}(S_0) \le\rho\operatorname{OPT} cost ( S 0 ) ≤ ρ OPT , where OPT is the optimal soft or the optimal hard cost. Starting from S = S 0 S=S_0 S = S 0 , as long as ∣ S ∣ > K \lvert S\rvert> K ∣ S ∣ > K , delete a center x ∈ S x \in S x ∈ S that minimizes cost ( S ∖ { x } ) \operatorname{cost}(S \setminus\{x\}) cost ( S ∖ { x }) . This takes polynomial time, keeps S ⊆ F S \subseteq F S ⊆ F if S 0 ⊆ F S_0 \subseteq F S 0 ⊆ F , and ends with
cost ( S ) ≤ L z ( ρ , ϵ e − η / 2 ) OPT . \operatorname{cost}(S) \le L_z(\rho,\epsilon e^{-\eta/2})\operatorname{OPT}. cost ( S ) ≤ L z ( ρ , ϵ e − η /2 ) OPT .
Proof. There are fewer than 2 k 2k 2 k deletions, each found by fewer than 2 k 2k 2 k minimum-cost flow computations. If ∣ S 0 ∣ ≤ K \lvert S_0\rvert\le K ∣ S 0 ∣ ≤ K , there is nothing to show; otherwise, b = ⌊ ϵ k ⌋ b=\lfloor\epsilon k\rfloor b = ⌊ ϵ k ⌋ satisfies b < ∣ S 0 ∣ − k ≤ k − 1 b<\lvert S_0\rvert-k\le k-1 b < ∣ S 0 ∣ − k ≤ k − 1 and b ≥ ϵ k − 1 ≥ 1 b\ge\epsilon k-1\ge1 b ≥ ϵ k − 1 ≥ 1 . If OPT = 0 \operatorname{OPT}=0 OPT = 0 , then cost ( S 0 ) = 0 \operatorname{cost}(S_0)=0 cost ( S 0 ) = 0 , and by Theorem 11.4 with an optimal solution as S ∗ S^* S ∗ , every deletion keeps the cost 0. So let OPT > 0 \operatorname{OPT}>0 OPT > 0 , and let ζ r = cost ( S ) / OPT \zeta_r=\operatorname{cost}(S)/\operatorname{OPT} ζ r = cost ( S ) / OPT when k + r k+r k + r centers remain. The deletions happen at r = ∣ S 0 ∣ − k , … , b + 1 r=\lvert S_0\rvert-k,\ldots,b+1 r = ∣ S 0 ∣ − k , … , b + 1 , and by Theorem 11.4 with an optimal solution as S ∗ S^* S ∗ ,
ζ r − 1 ≤ ζ r + ( ζ r 1 / z + 2 ) z − ζ r r . \zeta_{r-1}\le\zeta_r+\frac{(\zeta_r^{1/z}+2)^z-\zeta_r}{r}. ζ r − 1 ≤ ζ r + r ( ζ r 1/ z + 2 ) z − ζ r .
The function y ↦ ( y 1 / z + 2 ) z − y y\mapsto(y^{1/z}+2)^z-y y ↦ ( y 1/ z + 2 ) z − y is positive and nondecreasing on [ 0 , ∞ ) [0,\infty) [ 0 , ∞ ) , since its derivative is ( 1 + 2 y − 1 / z ) z − 1 − 1 ≥ 0 (1+2y^{-1/z})^{z-1}-1\ge0 ( 1 + 2 y − 1/ z ) z − 1 − 1 ≥ 0 . So the integral of 1 / ( ( y 1 / z + 2 ) z − y ) 1/((y^{1/z}+2)^z-y) 1/ (( y 1/ z + 2 ) z − y ) from ζ r \zeta_r ζ r to ζ r − 1 \zeta_{r-1} ζ r − 1 is at most 1 / r 1/r 1/ r , also if ζ r − 1 < ζ r \zeta_{r-1}<\zeta_r ζ r − 1 < ζ r . Since ζ ∣ S 0 ∣ − k ≤ ρ \zeta_{\lvert S_0\rvert-k}\le\rho ζ ∣ S 0 ∣ − k ≤ ρ , summing over r r r shows that the integral from ρ \rho ρ to ζ b \zeta_b ζ b is at most ∑ r = b + 1 k − 1 1 / r ≤ ln ( ( k − 1 ) / b ) \sum_{r=b+1}^{k-1}1/r\le\ln((k-1)/b) ∑ r = b + 1 k − 1 1/ r ≤ ln (( k − 1 ) / b ) , and
ln k − 1 b ≤ ln k ϵ k − 1 = ln 1 ϵ + ln ( 1 + 1 ϵ k − 1 ) ≤ ln 1 ϵ + 1 ϵ k ≤ ln 1 ϵ + η 2 . \ln\frac{k-1}{b}\le\ln\frac{k}{\epsilon k-1}=\ln\frac{1}{\epsilon}+\ln\left(1+\frac{1}{\epsilon k-1}\right)\le\ln\frac{1}{\epsilon}+\frac{1}{\epsilon k}\le\ln\frac{1}{\epsilon}+\frac{\eta}{2}. ln b k − 1 ≤ ln ϵ k − 1 k = ln ϵ 1 + ln ( 1 + ϵ k − 1 1 ) ≤ ln ϵ 1 + ϵ k 1 ≤ ln ϵ 1 + 2 η .
By the definition of L z L_z L z , this gives ζ b ≤ L z ( ρ , ϵ e − η / 2 ) \zeta_b\le L_z(\rho,\epsilon e^{-\eta/2}) ζ b ≤ L z ( ρ , ϵ e − η /2 ) .
Proof of Theorem 1.4 . We may assume δ ≤ 1 \delta\le1 δ ≤ 1 . Let η ∈ ( 0 , 1 ] \eta\in(0,1] η ∈ ( 0 , 1 ] be so small that η L z ( ( 1 + 2 ρ 1 / z ) z , ϵ ) ≤ δ \eta L_z((1+2\rho^{1/z})^z,\epsilon)\le\delta η L z (( 1 + 2 ρ 1/ z ) z , ϵ ) ≤ δ and that replacing ϵ \epsilon ϵ by ϵ e − η / 2 \epsilon e^{-\eta/2} ϵ e − η /2 increases L z ( ρ , ϵ ) L_z(\rho,\epsilon) L z ( ρ , ϵ ) and L z ( ( 1 + 2 ρ 1 / z ) z , ϵ ) L_z((1+2\rho^{1/z})^z,\epsilon) L z (( 1 + 2 ρ 1/ z ) z , ϵ ) by at most δ \delta δ ; this is possible since L z L_z L z depends continuously on ϵ \epsilon ϵ . If k < 4 / ( ϵ η ) k<4/(\epsilon\eta) k < 4/ ( ϵη ) , the algorithm tries every family of at most k k k centers at locations in F F F , with distinct locations for hard capacities, and returns one of minimum cost; there are at most ( ∣ F ∣ + 1 ) 4 / ( ε η ) (|F|+1)^{4}/(\varepsilon\eta) ( ∣ F ∣ + 1 ) 4 / ( ε η ) of them. Otherwise, the given uncapacitated solution has cost A ≤ ρ O P T A \le\rho\mathrm{OPT} A ≤ ρ OPT , since the optimal uncapacitated cost is at most O P T \mathrm{OPT} OPT for soft and for hard capacities. Splitting its clusters into blocks as in § 2.1 gives at most 2 k − 1 2k-1 2 k − 1 blocks, and serving every block by a center at the center of its cluster costs A A A . For soft capacities, let S 0 S_0 S 0 be the family of these centers, so cost ( S 0 ) ≤ A ≤ ρ O P T \operatorname{cost}(S_0) \le A \le\rho\mathrm{OPT} cost ( S 0 ) ≤ A ≤ ρ OPT . For hard capacities, apply Theorem 11.1 with S = F S=F S = F and this solution as S ∗ S^* S ∗ ; since cost ( F ) ≤ O P T \operatorname{cost}(F) \le\mathrm{OPT} cost ( F ) ≤ OPT , this gives a set S 0 ⊆ F S_0 \subseteq F S 0 ⊆ F with ∣ S 0 ∣ ≤ 2 k − 1 |S_0| \le2k-1 ∣ S 0 ∣ ≤ 2 k − 1 and cost ( S 0 ) ≤ ( O P T 1 / z + 2 A 1 / z ) z ≤ ( 1 + 2 ρ 1 / z ) z O P T \operatorname{cost}(S_0) \le(\mathrm{OPT}^{1/z}+2A^{1/z})^z \le(1+2\rho^{1/z})^z\mathrm{OPT} cost ( S 0 ) ≤ ( OPT 1/ z + 2 A 1/ z ) z ≤ ( 1 + 2 ρ 1/ z ) z OPT ; for k k k -median, this is the ( 1 + 2 ρ ) (1+2\rho) ( 1 + 2 ρ ) -approximation with at most 2 k − 1 2k-1 2 k − 1 centers of Aardal et al. [16 ] . By Theorem 11.5, the greedy deletions end with cost at most ( L z ( ρ , ε ) + δ ) O P T (L_z(\rho,\varepsilon)+\delta)\mathrm{OPT} ( L z ( ρ , ε ) + δ ) OPT for soft and ( L z ( ( 1 + 2 ρ 1 / z ) z , ε ) + δ ) O P T (L_z((1+2\rho^{1/z})^z,\varepsilon)+\delta)\mathrm{OPT} ( L z (( 1 + 2 ρ 1/ z ) z , ε ) + δ ) OPT for hard capacities.
Low dimensions. In the settings of Theorems 1.2 and 1.3 , Theorem 1.4 applies with ρ \rho ρ arbitrarily close to 1 1 1 . If P ∪ F P\cup F P ∪ F has doubling dimension at most κ \kappa κ , Theorem 4.3 computes such a solution. Otherwise, P P P or F F F has doubling dimension at most κ \kappa κ , which includes the instances in R d \mathbb{R}^d R d with clients of bounded doubling dimension and a finite set F F F . We compress the other side by Theorem 9.1 with accuracy η c \eta_c η c and apply Theorem 4.3 with accuracy η c \eta_c η c to the compressed instance, as in § 9.1 ; the computed centers are locations in F F F . As there, measured with the original points, the result costs at most ( 1 + 3 η c ) 2 z ( 1 + η c ) (1+3\eta_c)^{2z}(1+\eta_c) ( 1 + 3 η c ) 2 z ( 1 + η c ) times the optimal uncapacitated cost, which tends to 1 1 1 as η c → 0 \eta_c\to0 η c → 0 . Since L z ( ρ , ε ) L_z(\rho,\varepsilon) L z ( ρ , ε ) depends continuously on ρ \rho ρ , this gives the ratio L z ( 3 z , ε ) + δ L_z(3^z,\varepsilon)+\delta L z ( 3 z , ε ) + δ for hard capacities.
Growth of L z L_z L z . For s ≥ 0 s\ge0 s ≥ 0 , we have 2 z s z − 1 ≤ ( s + 2 ) z − s z ≤ 2 z ( s + 2 ) z − 1 2zs^{z-1}\le(s+2)^z-s^z\le2z(s+2)^{z-1} 2 z s z − 1 ≤ ( s + 2 ) z − s z ≤ 2 z ( s + 2 ) z − 1 . Substituting y = s z y=s^z y = s z in the definition of L z L_z L z gives
∫ ρ 1 / z L z ( ρ , ε ) 1 / z z s z − 1 d s ( s + 2 ) z − s z = ln 1 ε , \int_{\rho^{1/z}}^{L_z(\rho,\varepsilon)^{1/z}} \frac{zs^{z-1}\,ds}{(s+2)^z-s^z}=\ln\frac{1}{\varepsilon}, ∫ ρ 1/ z L z ( ρ , ε ) 1/ z ( s + 2 ) z − s z z s z − 1 d s = ln ε 1 ,
where the integrand lies between 1 2 ( s s + 2 ) z − 1 \frac{1}{2}\left(\frac{s}{s+2}\right)^{z-1} 2 1 ( s + 2 s ) z − 1 and 1 2 \frac{1}{2} 2 1 . Hence L z ( ρ , ε ) 1 / z ≥ ρ 1 / z + 2 ln ( 1 / ε ) L_z(\rho,\varepsilon)^{1/z}\ge\rho^{1/z}+2\ln(1/\varepsilon) L z ( ρ , ε ) 1/ z ≥ ρ 1/ z + 2 ln ( 1/ ε ) , and since ( s / ( s + 2 ) ) z − 1 → 1 (s/(s+2))^{z-1}\to1 ( s / ( s + 2 ) ) z − 1 → 1 as s → ∞ s\to\infty s → ∞ , L z ( ρ , ε ) 1 / z = ( 2 + o ( 1 ) ) ln ( 1 / ε ) L_z(\rho,\varepsilon)^{1/z}=(2+o(1))\ln(1/\varepsilon) L z ( ρ , ε ) 1/ z = ( 2 + o ( 1 )) ln ( 1/ ε ) as ε → 0 \varepsilon\to0 ε → 0 for fixed z z z and ρ \rho ρ . For z = 1 z=1 z = 1 , the integrand is 1 2 \frac{1}{2} 2 1 , so L 1 ( ρ , ε ) = ρ + 2 ln ( 1 / ε ) L_1(\rho,\varepsilon)=\rho+2\ln(1/\varepsilon) L 1 ( ρ , ε ) = ρ + 2 ln ( 1/ ε ) . For z = 2 z=2 z = 2 , it is 1 2 ⋅ s / ( s + 1 ) \frac{1}{2}\cdot s/(s+1) 2 1 ⋅ s / ( s + 1 ) , whose integral is 1 2 ( s − ln ( 1 + s ) ) \frac{1}{2}(s-\ln(1+s)) 2 1 ( s − ln ( 1 + s )) .
Open Questions
For soft capacities and in Euclidean space, our ratios start from a constant as ε → 0 \varepsilon\to0 ε → 0 and decrease linearly in ε \varepsilon ε . Four questions remain open. First, is there a polynomial-time approximation scheme for uniform capacitated k k k -means in the plane, or for k k k -median in R 3 \mathbb{R}^3 R 3 , at least when ( 1 + ε ) k (1+\varepsilon)k ( 1 + ε ) k centers may be opened? Second, can the constants as ε → 0 \varepsilon\to0 ε → 0 be improved? In Euclidean space, β z \beta_z β z is optimal for movability with optimal representatives (Theorem 2.7(c)), so a smaller constant needs a different comparison with the optimal solution, for instance a better bound on the transport cost T T T than Theorem 2.4; in doubling metrics, we do not know whether, for some constant c > 0 c>0 c > 0 , k k k -median admits ratio 3 − c 3-c 3 − c with ( 1 + ε ) k (1+\varepsilon)k ( 1 + ε ) k centers for every ε > 0 \varepsilon>0 ε > 0 . Third, a rescued block is served by a single new center, which uses that all capacities are equal; extending the trade-off to non-uniform capacities needs a different way to rescue blocks. Fourth, in general metrics, our ratios grow as ( 2 + o ( 1 ) ) z ln z ( 1 / ε ) (2+o(1))^z\ln^z(1/\varepsilon) ( 2 + o ( 1 ) ) z ln z ( 1/ ε ) as ε → 0 \varepsilon\to0 ε → 0 : is there a ratio that stays bounded as ε → 0 \varepsilon\to0 ε → 0 , even for k k k -median?
The Constant B z \mathcal{B}_z B z
This appendix proves Theorem 2.7 and shows how to compute a nearly optimal certificate. All random variables are real and have finite support. Taking expectations in (5) gives weak duality : for every z z z -certificate ( u , g , v ) (u,g,v) ( u , g , v ) and every random variable ξ \xi ξ with E [ ξ ] = 0 \mathbb{E}[\xi]=0 E [ ξ ] = 0 ,
E ∣ 1 + ξ ∣ z ≤ u + v E ∣ ξ ∣ z . (18) \mathbb{E}|1+\xi|^z \le u+v\mathbb{E}|\xi|^z. \tag*{(18)} E ∣1 + ξ ∣ z ≤ u + v E ∣ ξ ∣ z . (18)
Proof of Theorem 2.7(a). For m ≥ 0 m \ge0 m ≥ 0 , let V ( m ) V(m) V ( m ) be the supremum of E ∣ 1 + ξ ∣ z \mathbb{E}|1+\xi|^z E ∣1 + ξ ∣ z over all ξ \xi ξ with E [ ξ ] = 0 \mathbb{E}[\xi]=0 E [ ξ ] = 0 and E ∣ ξ ∣ z = m \mathbb{E}|\xi|^z=m E ∣ ξ ∣ z = m ; so V ( 2 z ) V(2^z) V ( 2 z ) is the supremum in (a). By (18) , every certificate has u + 2 z v ≥ V ( 2 z ) u+2^zv \ge V(2^z) u + 2 z v ≥ V ( 2 z ) . For the converse, note that by Minkowski’s inequality, E ∣ 1 + ξ ∣ z ≤ ( 1 + ( E ∣ ξ ∣ z ) 1 / z ) z \mathbb{E}|1+\xi|^z \le(1+(\mathbb{E}|\xi|^z)^{1/z})^z E ∣1 + ξ ∣ z ≤ ( 1 + ( E ∣ ξ ∣ z ) 1/ z ) z , so V V V is finite, and V ( 0 ) = 1 V(0)=1 V ( 0 ) = 1 . Moreover, V V V is concave: if ξ 1 \xi_1 ξ 1 and ξ 2 \xi_2 ξ 2 are feasible for m 1 m_1 m 1 and m 2 m_2 m 2 , then for s ∈ [ 0 , 1 ] s \in[0,1] s ∈ [ 0 , 1 ] , the mixture that follows ξ 1 \xi_1 ξ 1 with probability s s s and ξ 2 \xi_2 ξ 2 otherwise is feasible for s m 1 + ( 1 − s ) m 2 sm_1+(1-s)m_2 s m 1 + ( 1 − s ) m 2 , and its value is s E ∣ 1 + ξ 1 ∣ z + ( 1 − s ) E ∣ 1 + ξ 2 ∣ z s\mathbb{E}|1+\xi_1|^z+(1-s)\mathbb{E}|1+\xi_2|^z s E ∣1 + ξ 1 ∣ z + ( 1 − s ) E ∣1 + ξ 2 ∣ z . A finite concave function on [ 0 , ∞ ) [0,\infty) [ 0 , ∞ ) has a supergradient at the interior point 2 z 2^z 2 z : there is v v v with V ( m ) ≤ V ( 2 z ) + v ( m − 2 z ) V(m)\le V(2^z)+v(m-2^z) V ( m ) ≤ V ( 2 z ) + v ( m − 2 z ) for all m ≥ 0 m\ge0 m ≥ 0 . Let u = V ( 2 z ) − 2 z v u=V(2^z)-2^zv u = V ( 2 z ) − 2 z v , and let h ( t ) = ∣ 1 + t ∣ z − u − v ∣ t ∣ z h(t)=|1+t|^z-u-v|t|^z h ( t ) = ∣1 + t ∣ z − u − v ∣ t ∣ z . For every ξ \xi ξ with E [ ξ ] = 0 \mathbb{E}[\xi]=0 E [ ξ ] = 0 , we have E h ( ξ ) ≤ V ( E ∣ ξ ∣ z ) − u − v E ∣ ξ ∣ z ≤ 0 \mathbb{E}h(\xi)\le V(\mathbb{E}|\xi|^z)-u-v\mathbb{E}|\xi|^z\le0 E h ( ξ ) ≤ V ( E ∣ ξ ∣ z ) − u − v E ∣ ξ ∣ z ≤ 0 . With ξ = 0 \xi=0 ξ = 0 , this gives h ( 0 ) ≤ 0 h(0)\le0 h ( 0 ) ≤ 0 . For t 1 > 0 > t 2 t_1>0>t_2 t 1 > 0 > t 2 , the variable that takes the values t 1 t_1 t 1 and t 2 t_2 t 2 with probabilities − t 2 / ( t 1 − t 2 ) -t_2/(t_1-t_2) − t 2 / ( t 1 − t 2 ) and t 1 / ( t 1 − t 2 ) t_1/(t_1-t_2) t 1 / ( t 1 − t 2 ) has mean zero, which gives − t 2 h ( t 1 ) + t 1 h ( t 2 ) ≤ 0 -t_2h(t_1)+t_1h(t_2)\le0 − t 2 h ( t 1 ) + t 1 h ( t 2 ) ≤ 0 , that is, h ( t 1 ) / t 1 ≤ h ( t 2 ) / t 2 h(t_1)/t_1\le h(t_2)/t_2 h ( t 1 ) / t 1 ≤ h ( t 2 ) / t 2 . Hence g = sup t > 0 h ( t ) / t g=\sup_{t>0}h(t)/t g = sup t > 0 h ( t ) / t is finite, and h ( t ) ≤ g t h(t)\le gt h ( t ) ≤ g t for all t t t : for t > 0 t>0 t > 0 by the definition of g g g , and for t < 0 t<0 t < 0 because g ≤ h ( t ) / t g\le h(t)/t g ≤ h ( t ) / t . So ( u , g , v ) (u,g,v) ( u , g , v ) is a certificate with u + 2 z v = V ( 2 z ) u+2^zv=V(2^z) u + 2 z v = V ( 2 z ) . In particular, the minimum in the definition of B z B_z B z is attained.
Proof of Theorem 2.7(c). Let u + 2 z v < B z u+2^zv<B_z u + 2 z v < B z . By (a), some ξ \xi ξ with E [ ξ ] = 0 \mathbb{E}[\xi]=0 E [ ξ ] = 0 and E ∣ ξ ∣ z = 2 z \mathbb{E}|\xi|^z=2^z E ∣ ξ ∣ z = 2 z has E ∣ 1 + ξ ∣ z > u + 2 z v \mathbb{E}|1+\xi|^z>u+2^zv E ∣1 + ξ ∣ z > u + 2 z v . We may assume Pr [ ξ = 0 ] = 0 \Pr[\xi=0]=0 Pr [ ξ = 0 ] = 0 : replacing an atom at 0 0 0 by two atoms at ± s \pm s ± s of half its mass each, and scaling ξ \xi ξ to restore E ∣ ξ ∣ z = 2 z \mathbb{E}|\xi|^z=2^z E ∣ ξ ∣ z = 2 z , changes E ∣ 1 + ξ ∣ z \mathbb{E}|1+\xi|^z E ∣1 + ξ ∣ z by an amount that tends to 0 0 0 with s s s . For every value t t t of ξ \xi ξ , place the point 1 / t ∈ R 1/t\in\mathbb{R} 1/ t ∈ R with weight ω t = Pr [ ξ = t ] ∣ t ∣ z / 2 z \omega_t=\Pr[\xi=t]|t|^z/2^z ω t = Pr [ ξ = t ] ∣ t ∣ z / 2 z . The weights sum to 1 1 1 , and
∑ t ω t ∣ 1 / t ∣ z = 2 − z , ∑ t ω t ∣ 1 / t + 1 ∣ z = 2 − z E ∣ 1 + ξ ∣ z > 2 − z u + v . \sum_t \omega_t|1/t|^z=2^{-z}, \qquad\sum_t\omega_t|1/t+1|^z=2^{-z}\mathbb{E}|1+\xi|^z>2^{-z}u+v. t ∑ ω t ∣1/ t ∣ z = 2 − z , t ∑ ω t ∣1/ t + 1 ∣ z = 2 − z E ∣1 + ξ ∣ z > 2 − z u + v .
The point 0 0 0 is an optimal center of the weighted points. For z > 1 z>1 z > 1 , the derivative of c ↦ ∑ t ω t ∣ 1 / t − c ∣ z c\mapsto\sum_t\omega_t|1/t-c|^z c ↦ ∑ t ω t ∣1/ t − c ∣ z at c = 0 c=0 c = 0 is − z ∑ t ω t ∣ 1 / t ∣ z − 2 / t = − z 2 − z E [ ξ ] = 0 -z\sum_t\omega_t|1/t|^{z-2}/t=-z2^{-z}\mathbb{E}[\xi]=0 − z ∑ t ω t ∣1/ t ∣ z − 2 / t = − z 2 − z E [ ξ ] = 0 . For z = 1 z=1 z = 1 , the points 1 / t 1/t 1/ t with t > 0 t>0 t > 0 have total weight E [ max { ξ , 0 } ] / 2 = 1 4 E ∣ ξ ∣ = 1 2 \mathbb{E}[\max\{\xi,0\}]/2=\frac14\mathbb{E}|\xi|=\frac12 E [ max { ξ , 0 }] /2 = 4 1 E ∣ ξ ∣ = 2 1 , so 0 0 0 is a weighted median. Now approximate the weights by multiples of 1 / w 1/w 1/ w , replace every point by the corresponding number of distinct points nearby, and translate the resulting set Q Q Q of w w w points so that 0 0 0 is an optimal center of Q Q Q ; for z = 1 z=1 z = 1 , we keep w / 2 w/2 w /2 points on each side of 0 0 0 , and for z > 1 z>1 z > 1 , the optimal center of the perturbed set tends to 0 0 0 by strict convexity. By continuity, for large w w w and small perturbations, ∑ p ∈ Q ∣ p + 1 ∣ z > u ∑ p ∈ Q ∣ p ∣ z + v w \sum_{p\in Q}|p+1|^z>u\sum_{p\in Q}|p|^z+vw ∑ p ∈ Q ∣ p + 1 ∣ z > u ∑ p ∈ Q ∣ p ∣ z + v w . Take 0 0 0 as the representative of the block Q Q Q and w w w slots at − 1 -1 − 1 . Every bijection then costs ∑ p ∈ Q ∣ p + 1 ∣ z \sum_{p\in Q}|p+1|^z ∑ p ∈ Q ∣ p + 1 ∣ z , which is more than u u u times the internal cost ∑ p ∈ Q ∣ p ∣ z \sum_{p\in Q}|p|^z ∑ p ∈ Q ∣ p ∣ z plus v v v times the cost w w w of moving the mass of the block to the slots. So the block Q Q Q is not ( u , v ) (u,v) ( u , v ) -movable.
Proof of Theorem 2.7(b). B z < 3 z B_z<3^z B z < 3 z for z > 1 z>1 z > 1 . By convexity, ( 3 z − 1 , 0 , ( 3 / 2 ) z − 1 ) (3^{z-1},0,(3/2)^{z-1}) ( 3 z − 1 , 0 , ( 3/2 ) z − 1 ) is a certificate (Theorem 2.3), so h 0 ( t ) = ∣ 1 + t ∣ z − 3 z − 1 − ( 3 / 2 ) z − 1 ∣ t ∣ z ≤ 0 h_0(t)=|1+t|^z-3^{z-1}-(3/2)^{z-1}|t|^z\le0 h 0 ( t ) = ∣1 + t ∣ z − 3 z − 1 − ( 3/2 ) z − 1 ∣ t ∣ z ≤ 0 . Equality requires ∣ 1 + t ∣ = 1 + ∣ t ∣ |1+t|=1+|t| ∣1 + t ∣ = 1 + ∣ t ∣ , so t ≥ 0 t\ge0 t ≥ 0 , and equality in the convexity step, so 3 = 3 2 ∣ t ∣ 3=\frac32|t| 3 = 2 3 ∣ t ∣ ; hence h 0 ( t ) < 0 h_0(t)<0 h 0 ( t ) < 0 for t ≠ 2 t\ne2 t = 2 . As t → − ∞ t\to-\infty t → − ∞ , − h 0 ( t ) -h_0(t) − h 0 ( t ) grows like ( ( 3 / 2 ) z − 1 − 1 ) ∣ t ∣ z ((3/2)^{z-1}-1)|t|^z (( 3/2 ) z − 1 − 1 ) ∣ t ∣ z , and − h 0 ( 1 ) > 0 -h_0(1)>0 − h 0 ( 1 ) > 0 . So the function − h 0 ( t ) / ( 1 − t ) -h_0(t)/(1-t) − h 0 ( t ) / ( 1 − t ) is positive and continuous on ( − ∞ , 1 ) (-\infty,1) ( − ∞ , 1 ) and tends to ∞ \infty ∞ at both ends; let g > 0 g>0 g > 0 be its minimum. Then ( 3 z − 1 − g , g , ( 3 / 2 ) z − 1 ) (3^{z-1}-g,g,(3/2)^{z-1}) ( 3 z − 1 − g , g , ( 3/2 ) z − 1 ) is a certificate, since h 0 ( t ) ≤ g ( t − 1 ) h_0(t)\le g(t-1) h 0 ( t ) ≤ g ( t − 1 ) for all t t t , and its value is 3 z − g 3^z-g 3 z − g .
z = 1 z=1 z = 1 . The certificate ( 1 , 0 , 1 ) (1,0,1) ( 1 , 0 , 1 ) gives B 1 ≤ 3 B_1\le3 B 1 ≤ 3 . Conversely, the certificate inequality at t = 0 t=0 t = 0 gives u ≥ 1 u\ge1 u ≥ 1 , and dividing it by ∣ t ∣ |t| ∣ t ∣ and letting t → ∞ t\to\infty t → ∞ and t → − ∞ t\to-\infty t → − ∞ gives v + g ≥ 1 v+g\ge1 v + g ≥ 1 and v − g ≥ 1 v-g\ge1 v − g ≥ 1 ; so u + 2 v ≥ 3 u+2v\ge3 u + 2 v ≥ 3 .
z = 2 z=2 z = 2 . The certificate ( 1 , 2 , 1 ) (1,2,1) ( 1 , 2 , 1 ) gives B 2 ≤ 5 B_2\le5 B 2 ≤ 5 , and u , v ≥ 1 u,v\ge1 u , v ≥ 1 (Theorem 10.2) gives B 2 ≥ 5 B_2\ge5 B 2 ≥ 5 .
z = 4 z=4 z = 4 . For q > 0 q>0 q > 0 , let a q = 3 / q + 2 / q 2 a_q=3/q+2/q^2 a q = 3/ q + 2/ q 2 . Expanding both sides shows that for all t ∈ R t\in\mathbb{R} t ∈ R ,
( 1 + q a q 2 ) + ( 4 + 4 a q ) t + ( 1 + q ) t 4 − ( 1 + t ) 4 = q ( t 2 − 2 t q − a q ) 2 ≥ 0 , (1+qa_q^2)+(4+4a_q)t+(1+q)t^4-(1+t)^4=q\left(t^2-\frac{2t}{q}-a_q\right)^2\ge0, ( 1 + q a q 2 ) + ( 4 + 4 a q ) t + ( 1 + q ) t 4 − ( 1 + t ) 4 = q ( t 2 − q 2 t − a q ) 2 ≥ 0 ,
so ( 1 + q a q 2 , 4 + 4 a q , 1 + q ) (1+qa_q^2,\,4+4a_q,\,1+q) ( 1 + q a q 2 , 4 + 4 a q , 1 + q ) is a certificate with value f ( q ) = 17 + 16 q + 9 / q + 12 / q 2 + 4 / q 3 f(q)=17+16q+9/q+12/q^2+4/q^3 f ( q ) = 17 + 16 q + 9/ q + 12/ q 2 + 4/ q 3 . Let q ∗ q^* q ∗ be the positive root of 16 q 4 − 9 q 2 − 24 q − 12 16q^4-9q^2-24q-12 16 q 4 − 9 q 2 − 24 q − 12 . The roots of t 2 − 2 t / q ∗ − a q ∗ t^2-2t/q^*-a_{q^*} t 2 − 2 t / q ∗ − a q ∗ are r > 0 > − s r>0>-s r > 0 > − s with r − s = 2 / q ∗ r-s=2/q^* r − s = 2/ q ∗ and r s = a q ∗ rs=a_{q^*} r s = a q ∗ . The variable ξ \xi ξ that takes the values r r r and − s -s − s with probabilities s / ( r + s ) s/(r+s) s / ( r + s ) and r / ( r + s ) r/(r+s) r / ( r + s ) has mean zero and E ξ 4 = r s ( r 2 − r s + s 2 ) = a q ∗ ( a q ∗ + 4 / q ∗ 2 ) = 9 / q ∗ 2 + 24 / q ∗ 3 + 12 / q ∗ 4 = 16 \mathbb{E}\xi^4=rs(r^2-rs+s^2)=a_{q^*}(a_{q^*}+4/q^{*2})=9/q^{*2}+24/q^{*3}+12/q^{*4}=16 E ξ 4 = r s ( r 2 − r s + s 2 ) = a q ∗ ( a q ∗ + 4/ q ∗ 2 ) = 9/ q ∗ 2 + 24/ q ∗ 3 + 12/ q ∗ 4 = 16 . Since the identity above is an equality at r r r and − s -s − s , we get E ( 1 + ξ ) 4 = f ( q ∗ ) \mathbb{E}(1+\xi)^4=f(q^*) E ( 1 + ξ ) 4 = f ( q ∗ ) , and weak duality gives B 4 = f ( q ∗ ) ≈ 53.4056 B_4=f(q^*)\approx53.4056 B 4 = f ( q ∗ ) ≈ 53.4056 .
z = 3 / 2 z=3/2 z = 3/2 and z = 3 z=3 z = 3 . The triples
( 1107 1000 , 2809 4000 , 4289 4000 ) for z = 3 2 , ( 21263 5000 , 5767 1000 , 15723 10000 ) for z = 3 \left(\frac{1107}{1000},\frac{2809}{4000},\frac{4289}{4000}\right)\quad\text{for }z=\frac{3}{2},\qquad
\left(\frac{21263}{5000},\frac{5767}{1000},\frac{15723}{10000}\right)\quad\text{for }z=3 ( 1000 1107 , 4000 2809 , 4000 4289 ) for z = 2 3 , ( 5000 21263 , 1000 5767 , 10000 15723 ) for z = 3
are certificates, with values 1107 1000 + 4289 2000 2 < 4.1398 \frac{1107}{1000}+\frac{4289}{2000}\sqrt{2}<4.1398 1000 1107 + 2000 4289 2 < 4.1398 and 16.831 16.831 16.831 . For z = 3 z=3 z = 3 , the certificate inequality on the intervals t ≥ 0 t\ge0 t ≥ 0 , − 1 ≤ t ≤ 0 -1\le t\le0 − 1 ≤ t ≤ 0 and t ≤ − 1 t\le-1 t ≤ − 1 states that three cubic polynomials with rational coefficients are nonnegative on intervals. For z = 3 / 2 z=3/2 z = 3/2 , substituting t = x 2 t=x^2 t = x 2 for t ≥ 0 t\ge0 t ≥ 0 and t = − x 2 t=-x^2 t = − x 2 for t ≤ 0 t\le0 t ≤ 0 , and squaring the inequality, whose right-hand side u ± g x 2 + v x 3 u\pm gx^2+vx^3 u ± g x 2 + v x 3 is positive for x ≥ 0 x\ge0 x ≥ 0 , turns it into the nonnegativity of three polynomials of degree 6 with rational coefficients on [ 0 , ∞ ) [0,\infty) [ 0 , ∞ ) , [ 0 , 1 ] [0,1] [ 0 , 1 ] and [ 1 , ∞ ) [1,\infty) [ 1 , ∞ ) . We verified all six statements with exact rational arithmetic, by checking with Sturm sequences that each polynomial has no root in its interval and is positive at one end point. For the lower bounds, scale the variable that takes the values 0.4954 0.4954 0.4954 and − 26.15 -26.15 − 26.15 (for z = 3 / 2 z=3/2 z = 3/2 ), or 2.9486 2.9486 2.9486 and − 1.1093 -1.1093 − 1.1093 (for z = 3 z=3 z = 3 ), with probabilities that give mean zero, so that E ∣ ξ ∣ z = 2 z \mathbb{E}|\xi|^z=2^z E ∣ ξ ∣ z = 2 z ; then E ∣ 1 + ξ ∣ z \mathbb{E}|1+\xi|^z E ∣1 + ξ ∣ z exceeds 4.1396 4.1396 4.1396 and 16.8308 16.8308 16.8308 , respectively.
Computing a certificate. Theorem 1.1 needs a certificate whose value is close to B z B_z B z .
Lemma A.1. For fixed z > 1 z>1 z > 1 and γ ′ ∈ ( 0 , 1 ] \gamma'\in(0,1] γ ′ ∈ ( 0 , 1 ] , a z z z -certificate ( u , g , v ) (u,g,v) ( u , g , v ) with u + 2 z v ≤ B z + γ ′ u+2^zv\le B_z+\gamma' u + 2 z v ≤ B z + γ ′ can be computed in time that depends only on z z z and γ ′ \gamma' γ ′ .
Proof. Let ( u ∗ , g ∗ , v ∗ ) (u^*,g^*,v^*) ( u ∗ , g ∗ , v ∗ ) be an optimal certificate. Since u ∗ + 2 z v ∗ ≤ 3 z u^*+2^zv^*\le3^z u ∗ + 2 z v ∗ ≤ 3 z and u ∗ , v ∗ ≥ 1 u^*,v^*\ge1 u ∗ , v ∗ ≥ 1 , we have u ∗ , v ∗ ≤ 3 z u^*,v^*\le3^z u ∗ , v ∗ ≤ 3 z , and the certificate inequality at t = − 1 t=-1 t = − 1 gives g ∗ ≤ u ∗ + v ∗ ≤ 2 ⋅ 3 z g^*\le u^*+v^*\le2\cdot3^z g ∗ ≤ u ∗ + v ∗ ≤ 2 ⋅ 3 z . We may assume g ∗ ≥ 0 g^*\ge0 g ∗ ≥ 0 : if g ∗ < 0 g^*<0 g ∗ < 0 , then ( u ∗ , 0 , v ∗ ) (u^*,0,v^*) ( u ∗ , 0 , v ∗ ) is also a certificate, since ∣ 1 − t ∣ z ≤ ( 1 + t ) z ≤ u ∗ + g ∗ t + v ∗ t z |1-t|^z\le(1+t)^z\le u^*+g^*t+v^*t^z ∣1 − t ∣ z ≤ ( 1 + t ) z ≤ u ∗ + g ∗ t + v ∗ t z for t ≥ 0 t\ge0 t ≥ 0 . Let ν = γ ′ / 2 z + 2 \nu=\gamma'/2^{z+2} ν = γ ′ / 2 z + 2 and
t 0 = max { 1 , z 2 z + 1 ν , ( 4 ⋅ 3 z ν ) 1 / ( z − 1 ) } . t_0=\max\left\{1,\frac{z2^{z+1}}{\nu},\left(\frac{4\cdot3^z}{\nu}\right)^{1/(z-1)}\right\}. t 0 = max { 1 , ν z 2 z + 1 , ( ν 4 ⋅ 3 z ) 1/ ( z − 1 ) } .
For ∣ t ∣ ≥ t 0 |t|\ge t_0 ∣ t ∣ ≥ t 0 , we have ∣ 1 + t ∣ z ≤ ∣ t ∣ z + z 2 z − 1 ∣ t ∣ z − 1 ≤ ∣ t ∣ z + ν 2 ∣ t ∣ z |1+t|^z\le|t|^z+z2^{z-1}|t|^{z-1}\le|t|^z+\frac{\nu}{2}|t|^z ∣1 + t ∣ z ≤ ∣ t ∣ z + z 2 z − 1 ∣ t ∣ z − 1 ≤ ∣ t ∣ z + 2 ν ∣ t ∣ z and 2 ⋅ 3 z ∣ t ∣ ≤ ν 2 ∣ t ∣ z 2\cdot3^z|t|\le\frac{\nu}{2}|t|^z 2 ⋅ 3 z ∣ t ∣ ≤ 2 ν ∣ t ∣ z , so every triple with u ≥ 1 u\ge1 u ≥ 1 , ∣ g ∣ ≤ 2 ⋅ 3 z |g|\le2\cdot3^z ∣ g ∣ ≤ 2 ⋅ 3 z and v ≥ 1 + ν v\ge1+\nu v ≥ 1 + ν satisfies the certificate inequality for ∣ t ∣ ≥ t 0 |t|\ge t_0 ∣ t ∣ ≥ t 0 . On [ − t 0 , t 0 ] [-t_0,t_0] [ − t 0 , t 0 ] , the function t ↦ ∣ 1 + t ∣ z − g t − v ∣ t ∣ z t\mapsto|1+t|^z-gt-v|t|^z t ↦ ∣1 + t ∣ z − g t − v ∣ t ∣ z is Lipschitz with constant Θ = z ( 1 + t 0 ) z − 1 + 2 ⋅ 3 z + ( 3 z + 1 ) z t 0 z − 1 \Theta=z(1+t_0)^{z-1}+2\cdot3^z+(3^z+1)zt_0^{z-1} Θ = z ( 1 + t 0 ) z − 1 + 2 ⋅ 3 z + ( 3 z + 1 ) z t 0 z − 1 for all ∣ g ∣ ≤ 2 ⋅ 3 z |g|\le2\cdot3^z ∣ g ∣ ≤ 2 ⋅ 3 z and v ≤ 3 z + 1 v\le3^z+1 v ≤ 3 z + 1 . Let Ω \Omega Ω be the grid in [ − t 0 , t 0 ] [-t_0,t_0] [ − t 0 , t 0 ] with spacing γ ′ / ( 4 Θ ) \gamma'/(4\Theta) γ ′ / ( 4Θ ) , and solve the linear program that minimizes u + 2 z v u+2^zv u + 2 z v subject to 1 ≤ u ≤ 3 z 1\le u\le3^z 1 ≤ u ≤ 3 z , 0 ≤ g ≤ 2 ⋅ 3 z 0\le g\le2\cdot3^z 0 ≤ g ≤ 2 ⋅ 3 z , 1 + ν ≤ v ≤ 3 z + ν 1+\nu\le v\le3^z+\nu 1 + ν ≤ v ≤ 3 z + ν and the certificate inequality for all t ∈ Ω t\in\Omega t ∈ Ω . The triple ( u ∗ , g ∗ , v ∗ + ν ) (u^*,g^*,v^*+\nu) ( u ∗ , g ∗ , v ∗ + ν ) is feasible, so the optimum is at most B z + 2 z ν ≤ B z + γ ′ / 4 B_z+2^z\nu\le B_z+\gamma'/4 B z + 2 z ν ≤ B z + γ ′ /4 . If ( u , g , v ) (u,g,v) ( u , g , v ) is an optimal solution, every t ∈ [ − t 0 , t 0 ] t\in[-t_0,t_0] t ∈ [ − t 0 , t 0 ] is within γ ′ / ( 4 Θ ) \gamma'/(4\Theta) γ ′ / ( 4Θ ) of a point of Ω \Omega Ω , so ( u + γ ′ / 4 , g , v ) (u+\gamma'/4,g,v) ( u + γ ′ /4 , g , v ) is a certificate with value at most B z + γ ′ / 2 B_z+\gamma'/2 B z + γ ′ /2 . The size of the linear program depends only on z z z and γ ′ \gamma' γ ′ . To use rational numbers only, we replace ∣ 1 + t ∣ z |1+t|^z ∣1 + t ∣ z by an upper bound and ∣ t ∣ z |t|^z ∣ t ∣ z by a lower bound, both rational and with error at most γ ′ / ( 16 ⋅ 3 z ) \gamma'/(16\cdot3^z) γ ′ / ( 16 ⋅ 3 z ) . Every solution of this linear program still satisfies the certificate inequality on Ω \Omega Ω , because v ≥ 0 v\ge0 v ≥ 0 , and ( u ∗ + γ ′ / 8 , g ∗ , v ∗ + ν ) (u^*+\gamma'/8,g^*,v^*+\nu) ( u ∗ + γ ′ /8 , g ∗ , v ∗ + ν ) is feasible, because the errors change the constraints by at most ( 1 + v ∗ + ν ) γ ′ / ( 16 ⋅ 3 z ) ≤ γ ′ / 8 (1+v^*+\nu)\gamma'/(16\cdot3^z)\le\gamma'/8 ( 1 + v ∗ + ν ) γ ′ / ( 16 ⋅ 3 z ) ≤ γ ′ /8 . So the same argument gives a certificate with value at most B z + 5 γ ′ / 8 B_z+5\gamma'/8 B z + 5 γ ′ /8 .
Implementation with Rational Numbers
In this appendix, the input consists of rational numbers: the coordinates of the clients in the Euclidean setting, or the matrix of distances between the points of P ∪ F P \cup F P ∪ F otherwise. We also assume that z z z is rational, or more generally that w ↦ w z w \mapsto w^z w ↦ w z can be approximated to any given precision in time polynomial in the precision and the input size. We list the changes needed to implement the algorithms in time polynomial in the input size. Let η \eta η be the accuracy parameter in the proof of the theorem at hand. Every change weakens an inequality of the exact analysis by a factor of 1 + O ( η ) 1 + O(\eta) 1 + O ( η ) or by an additive O ( η ) ⋅ O P T O(\eta) \cdot\mathrm{OPT} O ( η ) ⋅ OPT , with absolute constants in the O O O -terms, and we collect these losses at the end. Rounding errors are additive and are charged to a positive lower bound O P T ‾ \underline{\mathrm{OPT}} OPT on O P T \mathrm{OPT} OPT .
A lower bound. Whether O P T = 0 \mathrm{OPT}=0 OPT = 0 can be checked directly: every client must be at the location of its center, and ⌈ n x / U ⌉ \lceil n_x/U\rceil ⌈ n x / U ⌉ centers are needed at a point x x x with n x n_x n x clients when centers may share a location, while n x ≤ U n_x\le U n x ≤ U is needed with hard capacities; if O P T = 0 \mathrm{OPT}=0 OPT = 0 , we output such a solution. Otherwise, in the Euclidean setting, O P T ≥ O P T ‾ : = 2 1 − z a min z \mathrm{OPT}\ge\underline{\mathrm{OPT}}:=2^{1-z}a_{\min}^{z} OPT ≥ OPT := 2 1 − z a m i n z by § 10.3 , where a min a_{\min} a m i n is the minimum distance between two distinct points of clients. In the other settings, O P T ≥ O P T ‾ \mathrm{OPT}\ge\underline{\mathrm{OPT}} OPT ≥ OPT , the z z z -th power of the minimum positive distance between a client and a location.
Working metric. Distances may be irrational, for instance Euclidean distances between rational points. Let η w \eta_w η w be the smallest accuracy parameter of the algorithm, that is, η \eta η , or η c \eta_c η c if the compression lemma is used. Compute, for every pair of distinct points x , y x,y x , y that the algorithm uses, a rational number ℓ x y = ℓ y x \ell_{xy}=\ell_{yx} ℓ x y = ℓ y x with dist ( x , y ) ≤ ℓ x y ≤ ( 1 + η w / z ) dist ( x , y ) \operatorname{dist}(x,y)\le\ell_{xy}\le(1+\eta_w/z)\operatorname{dist}(x,y) dist ( x , y ) ≤ ℓ x y ≤ ( 1 + η w / z ) dist ( x , y ) , and let d ˉ \bar d d ˉ be the shortest-path metric of the complete graph with these lengths. Every path between x x x and y y y has length at least dist ( x , y ) \operatorname{dist}(x,y) dist ( x , y ) by the triangle inequality, and the direct edge has length at most ( 1 + η w / z ) dist ( x , y ) (1+\eta_w/z)\operatorname{dist}(x,y) ( 1 + η w / z ) dist ( x , y ) , so dist ≤ d ˉ ≤ ( 1 + η w / z ) dist \operatorname{dist}\le\bar d\le(1+\eta_w/z)\operatorname{dist} dist ≤ d ˉ ≤ ( 1 + η w / z ) dist . If a set has doubling dimension at most κ \kappa κ under dist \operatorname{dist} dist , it has doubling dimension at most 2 κ 2\kappa 2 κ under d ˉ \bar d d ˉ : a d ˉ \bar d d ˉ -ball of radius r r r lies in the dist \operatorname{dist} dist -ball of radius r r r , which is covered by 2 2 κ 2^{2\kappa} 2 2 κ dist \operatorname{dist} dist -balls of radius r / 4 r/4 r /4 , and each of them lies in the d ˉ \bar d d ˉ -ball of radius ( 1 + η w / z ) r / 4 ≤ r / 2 (1+\eta_w/z)r/4\le r/2 ( 1 + η w / z ) r /4 ≤ r /2 around the same point. We run the compression lemma, the construction of the decompositions and the network with d ˉ \bar d d ˉ , with κ \kappa κ replaced by 2 κ 2\kappa 2 κ ; in particular, the framework uses Λ = 2 14 κ / γ \Lambda=2^{14\kappa/\gamma} Λ = 2 14 κ / γ and M = ⌈ ( 4 / λ ) 2 κ ⌉ M=\lceil(4/\lambda)^{2\kappa}\rceil M = ⌈( 4/ λ ) 2 κ ⌉ , so that Theorem 6.2 and (8) hold for d ˉ \bar d d ˉ . Then Theorem 7.2(a) still gives path costs of at least d ˉ ( x , y ) z ≥ dist ( x , y ) z \bar d(x,y)^z\ge\operatorname{dist}(x,y)^z d ˉ ( x , y ) z ≥ dist ( x , y ) z , and Theorem 7.2(b) gives at most ( ( 1 + η / z ) d ( x , y ) ) z ≤ e η z dist ( x , y ) z ((1+\eta/z)d(x,y))^z\le e^{\eta z}\operatorname{dist}(x,y)^z (( 1 + η / z ) d ( x , y ) ) z ≤ e η z dist ( x , y ) z for pairs that are not Λ \Lambda Λ -bad, instead of e η dist ( x , y ) z e^\eta\operatorname{dist}(x,y)^z e η dist ( x , y ) z . In the compression lemma, the distortion with respect to dist \operatorname{dist} dist becomes ( 1 + 3 η c ) ( 1 + η c / z ) (1+3\eta_c)(1+\eta_c/z) ( 1 + 3 η c ) ( 1 + η c / z ) instead of 1 + 3 η c 1+3\eta_c 1 + 3 η c . Movability and all costs of solutions refer to the original distances.
Costs. The dynamic program uses rational upper approximations of the arc costs with additive error at most η O P T / ( 4 n max { 1 , ν } ) \eta\mathrm{OPT}/(4n\max\{1,\nu\}) η OPT / ( 4 n max { 1 , ν }) , and of the values ( u − 1 ) A i (u-1)A_i ( u − 1 ) A i with additive error at most η O P T / ( 4 n ) \eta\mathrm{OPT}/(4n) η OPT / ( 4 n ) . Every unit path uses one crossing arc, and all other arcs on it cost 0 0 0 ; there are at most n n n units and m ≤ n m\le n m ≤ n blocks. So the approximate cost of every network solution exceeds its true cost by at most η O P T / 2 \eta\mathrm{OPT}/2 η OPT /2 , and since the dynamic program minimizes the approximate cost exactly, the cost of its solution is at most the cost of the routed rescued solution plus η O P T / 2 \eta\mathrm{OPT}/2 η OPT /2 . The matchings in Theorem 7.5, the minimum-cost flows, and the changes of transport plans in the proof of Theorem 11.1 prepare costs by rational upper approximations of dist ( x , y ) z \operatorname{dist}(x,y)^z dist ( x , y ) z with additive error at most η O P T / ( 4 n ) \eta\mathrm{OPT}/(4n) η OPT / ( 4 n ) . Each of these computations minimizes the approximate cost, or never increases it, and the plans and assignments involved move at most n n n units, so the result costs at most η O P T / 4 \eta\mathrm{OPT}/4 η OPT /4 more than in the exact computation. The local search of Theorem 4.3 is run with costs approximated to relative error η / ( 4 k ) \eta/(4k) η / ( 4 k ) , accepting a swap only if it decreases the approximate cost by a factor of at least 1 − η / ( 4 k ) 1-\eta/(4k) 1 − η / ( 4 k ) ; this changes its guarantee only by a factor 1 + O ( η ) 1+O(\eta) 1 + O ( η ) , and the number of iterations is polynomial in k / η k/\eta k / η and in the logarithm of the ratio between the initial cost and O P T \mathrm{OPT} OPT .
Candidate centers. The construction of Theorem 10.4 uses square roots and real powers. We run it with N N N replaced by N ′ = 100 N N'=100N N ′ = 100 N , with s s s replaced by a rational number s ~ \tilde{s} s ~ with s ≤ s ~ ≤ ( 1 + 1 / ( 8 z ) ) s s\leq\tilde{s}\leq(1+1/(8z))s s ≤ s ~ ≤ ( 1 + 1/ ( 8 z )) s , with every subgradient replaced by a rational vector within distance s ~ z z − 1 / N ′ \tilde{s}z^{z-1}/\sqrt{N'} s ~ z z − 1 / N ′ of it, and with every iterate replaced by a rational point within distance s ~ / ( z N ′ ) \tilde{s}/(zN') s ~ / ( z N ′ ) of the exact projected step; the step size is τ = s ~ 2 − z / ( z N ′ ) \tau=\tilde{s}^{2-z}/(z\sqrt{N'}) τ = s ~ 2 − z / ( z N ′ ) . In the proof of Theorem 10.4, we then have ∥ c ∗ − p 0 ∥ + s ~ ≤ ( 3 + 1 / 4 z ) ϱ \lVert c^*-p_0\rVert+\tilde{s}\leq(3+1/4z)\varrho ∥ c ∗ − p 0 ∥ + s ~ ≤ ( 3 + 1/4 z ) ϱ , so Z ≤ ( 4 + 1 / 4 z ) z O P T Q ≤ 1.07 ⋅ 4 z O P T Q Z\leq(4+1/4z)^z\mathrm{OPT}_Q\leq1.07\cdot4^z\mathrm{OPT}_Q Z ≤ ( 4 + 1/4 z ) z OPT Q ≤ 1.07 ⋅ 4 z OPT Q . The iterates lie within distance s ~ / ( z N ′ ) \tilde{s}/(zN') s ~ / ( z N ′ ) of D D D , so ∥ c t − c ∗ ∥ ≤ 3 s ~ \lVert c_t-c^*\rVert\leq3\tilde{s} ∥ c t − c ∗ ∥ ≤ 3 s ~ , and the bound z s ~ z − 1 z\tilde{s}^{z-1} z s ~ z − 1 on the norms of the exact subgradients grows by a factor of at most ( 1 + 1 / ( z N ′ ) ) z − 1 ≤ 1 + 2 / N ′ (1+1/(zN'))^{z-1}\leq1+2/N' ( 1 + 1/ ( z N ′ ) ) z − 1 ≤ 1 + 2/ N ′ ; so the approximate subgradients have norm at most ( 1 + 2 / N ′ + 1 / N ′ ) z s ~ z − 1 (1+2/N'+1/\sqrt{N'})z\tilde{s}^{z-1} ( 1 + 2/ N ′ + 1/ N ′ ) z s ~ z − 1 . The inequality for ∥ c t + 1 − c ∗ ∥ 2 \lVert c_{t+1}-c^*\rVert^2 ∥ c t + 1 − c ∗ ∥ 2 therefore gains the error term 2 τ ⋅ 3 s ~ ⋅ z s ~ z − 1 / N ′ = 6 s ~ 2 / N ′ 2\tau\cdot3\tilde{s}\cdot z\tilde{s}^{z-1}/\sqrt{N'}=6\tilde{s}^2/N' 2 τ ⋅ 3 s ~ ⋅ z s ~ z − 1 / N ′ = 6 s ~ 2 / N ′ from the approximate subgradient and the error term 4 s ~ 2 / ( z N ′ ) + ( s ~ / ( z N ′ ) ) 2 4\tilde{s}^2/(zN')+(\tilde{s}/(zN'))^2 4 s ~ 2 / ( z N ′ ) + ( s ~ / ( z N ′ ) ) 2 from the rounded iterate, and its last term s ~ 2 / N ′ \tilde{s}^2/N' s ~ 2 / N ′ grows by the factor ( 1 + 2 / N ′ + 1 / N ′ ) 2 (1+2/N'+1/\sqrt{N'})^2 ( 1 + 2/ N ′ + 1/ N ′ ) 2 . Summing over the N ′ N' N ′ steps and dividing by 2 τ N ′ 2\tau N' 2 τ N ′ as before gives
E [ ℓ ˉ ( c ˉ ) ] − ℓ ˉ ( c ∗ ) ≤ ( 1 2 + 3 + 1 2 ( 1 + 2 N ′ + 1 N ′ ) 2 + 2 z + 1 2 z 2 N ′ ) z s ~ z N ′ ≤ 8 z s ~ z N ′ . \mathbb{E}[\bar{\ell}(\bar{c})]-\bar{\ell}(c^*)\leq\left(\frac{1}{2}+3+\frac{1}{2}\left(1+\frac{2}{N'}+\frac{1}{\sqrt{N'}}\right)^2+\frac{2}{z}+\frac{1}{2z^2N'}\right)\frac{z\tilde{s}^z}{\sqrt{N'}}\leq\frac{8z\tilde{s}^z}{\sqrt{N'}}. E [ ℓ ˉ ( c ˉ )] − ℓ ˉ ( c ∗ ) ≤ ( 2 1 + 3 + 2 1 ( 1 + N ′ 2 + N ′ 1 ) 2 + z 2 + 2 z 2 N ′ 1 ) N ′ z s ~ z ≤ N ′ 8 z s ~ z .
so E [ Ψ Q ( c ˉ ) ] − O P T Q ≤ 1.07 ⋅ 8 z 4 z O P T Q / N ′ ≤ z 4 z O P T Q / N ≤ ϑ O P T Q \mathbb{E}[\Psi_Q(\bar{c})]-\mathrm{OPT}_Q\leq1.07\cdot8z4^z\mathrm{OPT}_Q/\sqrt{N'}\leq z4^z\mathrm{OPT}_Q/\sqrt{N}\leq\vartheta\mathrm{OPT}_Q E [ Ψ Q ( c ˉ )] − OPT Q ≤ 1.07 ⋅ 8 z 4 z OPT Q / N ′ ≤ z 4 z OPT Q / N ≤ ϑ OPT Q . All points of Γ \Gamma Γ are rational with polynomial bit size, so log Δ ( P ∪ Γ ) \log\Delta(P\cup\Gamma) log Δ ( P ∪ Γ ) is polynomial in the input size.
Other steps. In the proof of Theorem 1.1 , the number r 0 r_0 r 0 can be replaced by a smaller positive rational number, which keeps the moved centers rational. The greedy deletion of § 11.2 is run in the working metric d ˉ \bar{d} d ˉ , which changes its guarantee by a factor of at most ( 1 + η w / z ) z ≤ e η w (1+\eta_w/z)^z\leq e^{\eta_w} ( 1 + η w / z ) z ≤ e η w , and it compares the costs of families by rational upper approximations with relative error at most η / ( 8 k ) \eta/(8k) η / ( 8 k ) . Then the cost after every chosen deletion is at most 1 + η / ( 8 k ) 1+\eta/(8k) 1 + η / ( 8 k ) times the cost after the cheapest one. Dividing the cost after j j j deletions by ( 1 + η / ( 8 k ) ) j (1+\eta/(8k))^j ( 1 + η / ( 8 k ) ) j gives a sequence that satisfies the recurrence in the proof of Theorem 11.5, since ( ( y 1 / z + 2 ) z − y ) / y = ( 1 + 2 y − 1 / z ) z − 1 ((y^{1/z}+2)^z-y)/y=(1+2y^{-1/z})^z-1 (( y 1/ z + 2 ) z − y ) / y = ( 1 + 2 y − 1/ z ) z − 1 is nonincreasing in y y y ; so the fewer than 2 k 2k 2 k deletions lose a factor of at most ( 1 + η / ( 8 k ) ) 2 k ≤ e η / 4 (1+\eta/(8k))^{2k}\leq e^{\eta/4} ( 1 + η / ( 8 k ) ) 2 k ≤ e η /4 . The certificate of Theorem A.1 is rational. All numbers that appear have bit size polynomial in the input size, and H = O ( log Δ ( P ∪ F ) ) H=O(\log\Delta(P\cup F)) H = O ( log Δ ( P ∪ F )) is polynomial in the input size.
Accounting. Compared with the exact analysis, the network stretch for pairs that are not Λ \Lambda Λ -bad grows from e η e^\eta e η to e 2 η e^{2\eta} e 2 η , the bound on A A A grows by a factor 1 + O ( η ) 1+O(\eta) 1 + O ( η ) because of the working metric and the approximate local search, the distortion of the compression lemma grows by the factor 1 + η c / z 1+\eta_c/z 1 + η c / z , and the rounding errors add at most η O P T ≤ η O P T \eta\mathrm{OPT}\leq\eta\mathrm{OPT} η OPT ≤ η OPT . In the proof of Theorem 1.1 , the representatives are chosen by costs computed with d ˉ \bar{d} d ˉ and rounded up with relative error at most η c / z \eta_c/z η c / z . Since η c ≤ ϑ / ( 18 z ) \eta_c\leq\vartheta/(18z) η c ≤ ϑ / ( 18 z ) , we still have ( ( 1 + 3 η c ) ( 1 + η c / z ) z ≤ 1 + ϑ / 3 ((1+3\eta_c)(1+\eta_c/z)^z\leq1+\vartheta/3 (( 1 + 3 η c ) ( 1 + η c / z ) z ≤ 1 + ϑ /3 in (16) and Ψ ˉ P i ( a i ) ≤ ( 1 + η c / z ) 2 z ( 1 + ϑ / 3 ) 2 min c Ψ ˉ P i ( c ) ≤ ( 1 + ϑ ) min c Ψ ˉ P i ( c ) \bar{\Psi}_{P_i}(a_i)\leq(1+\eta_c/z)^{2z}(1+\vartheta/3)^2\min_c\bar{\Psi}_{P_i}(c)\leq(1+\vartheta)\min_c\bar{\Psi}_{P_i}(c) Ψ ˉ P i ( a i ) ≤ ( 1 + η c / z ) 2 z ( 1 + ϑ /3 ) 2 min c Ψ ˉ P i ( c ) ≤ ( 1 + ϑ ) min c Ψ ˉ P i ( c ) , so the analysis of Ψ ˉ P i ( c ) \bar{\Psi}_{P_i}(c) Ψ ˉ P i ( c ) is unchanged. Following these losses through the proofs, the final cost bounds grow by a factor of 1 + O ( η ) 1+O(\eta) 1 + O ( η ) and by an additive O ( η ) ⋅ O P T O(\eta)\cdot\mathrm{OPT} O ( η ) ⋅ OPT . In every proof, η \eta η times the ratio of the theorem is at most δ \delta δ , so the final bounds grow by O ( δ ) ⋅ O P T O(\delta)\cdot\mathrm{OPT} O ( δ ) ⋅ OPT , and running the algorithms with δ / C \delta/C δ / C in place of δ \delta δ , for a suitable absolute constant C C C , gives the guarantees of Theorems 1.1 to 1.4 .
References