Facility Location Problems:
Approximation Algorithms
and Polyhedral Results
Proefschrift
ter verkrijging van de graad van doctor aan de Technische Universiteit Delft,
op gezag van de Rector Magnificus prof. ir. K.C.A.M. Luyben, voorzitter van het College voor Promoties,
in het openbaar te verdedigen op
vrijdag 05 December 2014 om 12:30
door
Shanfei Li
Master of Engineering (National University of Defense Technology, China) geboren te Sihong, Jiangsu, China
Prof. dr. ir. K.I. Aardal
Samenstelling promotiecommissie:
Rector Magnificus, voorzitter
Prof. dr. ir. K.I. Aardal, Technische Universiteit Delft, promotor
Dr. J. Byrka, Uniwersytet Wrocławski
Prof. dr. F. Vallentin, Universität zu Köln
Prof. dr. ir. C. Vuik, Technische Universiteit Delft
Prof. dr. A.P.M. Wagelmans, Erasmus Universiteit Rotterdam
Prof. dr. C. Witteveen, Technische Universiteit Delft
Prof. dr. G.J. Woeginger, Technische Universiteit Eindhoven
Het onderzoek beschreven in dit proefschrift is mede gefinancierd door de Technische Uni-versiteit Delft (TUDelft) and China Scholarship Council (CSC)
ISBN 978-94-6186-389-8
Copyright c 2014 by Shanfei Li
Cover picture: the components of the cover are downloaded from www.freevectors.com and www.freedesignfile.com, and used with permission
Acknowledgements
I have had a wonderful time during the past four years as a PhD student at TU Delft. This has been one of the most significant periods in my life, and would not have been possible without the support of my colleagues and friends.
First and foremost I would like to thank Karen Aardal for her excellent supervision and for giving me the freedom to work on the problems I like. I especially appreciate her patience to correct all my mistakes, sharing experience with me, support and understanding of my personal situation, and financial support for the last couple of months. It is my great honor to be one of her PhD students, and work with her.
I also would like to thank Jarosław Byrka and Bartosz Rybicki, who I have collaborated with first during my PhD study except Karen, for many inspiring discussions, and answer-ing my many questions, and trustanswer-ing in me. Jarek always suggests the right questions and ways forward to keep Bartek and me on the right track. You two made cooperation so much fun and easier. I have had a great time with you two at Institute of Computer Science, Uni-versity of Wrocław, and hope that we could continue our cooperation in the future.
Next, many thanks go to Dion Gijswijt for lots of nice discussions and collaborations
with him on some topics in this thesis. His insights into different kinds of problems helped
me improve the presentation a lot, and avoid detours and mistakes. And thank you Dion for always being so nice when I frequently knocked on your door.
After my graduation in Changsha, China, Yuejin Tan, the supervisor of my Master’s Thesis, encouraged me to study aboard and helped me apply for the scholarship. I want to express my deepest gratitude to him.
I sincerely acknowledge the financial support from China Scholarship Council (CSC) for my PhD study.
My life in the department has been a fantastic experience, not just due to the free coffee
and many free cakes, most importantly, the amazing people I met. I want to thank Frank Vallentin for organizing interesting seminars, and inviting us several times to his house for dinner when he was living in Rotterdam. Many thanks go to Dori Steeneken for inviting me for the Christmas dinner. I also want to thank all (former) PhD students from the 4th floor of EWI building: Frederik, Pieter, Evan, David, Konstantin, Sonja, Özlem, Matthijs, Guido, Jonas, Leon, Jan, Debanshu, Chiara, Sjoerd, Shah, and Adolfo. Special thanks to
Fred for his template of thesis, and to Pieter for many great discussions, and the wonderful time shared with you in the LNMB courses and conferences.
The life outside the department has also been wonderful. I have made many good friends in the past four years, without whom the life in the Netherlands would not be so much fun. I will never forget the time we spent together: Changlin Chen, Zhang Li, Wenbo Wang, Mingxin Zhang, Jianfei Yang, Jin Chu, Siqi Shen, Ke Tao, Yuan He, Cang Wang, Yao Wang, Nick Gaiko, Chen Pang, and Song Yang. And sincere thanks to the teachers and friends in Changsha, China: Renjie He, Kewei Yang, Qingsong Zhao, Jiang Jiang, Wei Huang, Yanjing Lu, Jian Xiong, Bingfeng Ge, Xiaoke Zhang, Zhiwei Yang, and Ping Zeng for your warm hospitality whenever I visited the group there during my vacation. I would like to thank really all people who made the past four years so enjoyable. However, it is impossible to mention all the people I want to thank. I hope for your understanding.
Last, but not least, I want to express my love and gratitude to my family. My grandpar-ents, pargrandpar-ents, brother, and my fiancee, without their unconditional support, studying abroad
Contents
Introduction 1
1 Preliminaries 5
1.1 Approximation Algorithms . . . 5
1.2 Basics of Polyhedral Theory . . . 6
1.3 Facility Location Problems . . . 8
2 The Capacitated k-median Problem 13 2.1 Introduction . . . 13
2.2 Problem Definition . . . 14
2.3 The Main Idea Behind Our Algorithm . . . 16
2.4 An Improved Approximation Algorithm . . . 17
2.4.1 Step 1: Clustering . . . 17
2.4.2 Step 2: Obtaining a [α−1α , 2)-solution . . . 18
2.4.3 Step 3: Obtaining a {(α−2α ,α−1α ], [1, 2)}-solution . . . 22
2.4.4 Step 4: Rounding to an Integral Solution . . . 24
2.5 Analysis . . . 26
2.6 Extension . . . 30
2.6.1 The Algorithm . . . 30
2.6.2 Analysis . . . 30
3 The Capacitated k-facility Location Problems 33 3.1 Introduction . . . 33
3.2 Problem Definition . . . 34
3.3 The Single-sink Capacitated k-facility Location Problem . . . 35
3.4 The Capacitated k-facility Location Problem with Uniform Capacities . . . 40
3.5 The Capacitated k-facility Location Problem with General Capacities . . . . 44
3.5.1 A Simple Illustration of Using the Structure of Extreme Point So-lutions . . . 44
3.5.2 A Pseudo-Approximation Algorithm for CKFL with Uniform Open-ing Costs . . . 48
3.6 Extension . . . 52 iii
4 The k-level Uncapacitated Facility Location Problem with Penalties 55
4.1 Introduction . . . 55
4.2 Problem Definition . . . 56
4.3 Randomized Scaling for UFL - An Overview . . . 57
4.3.1 Notation . . . 57
4.3.2 The Algorithm for UFL and Analysis . . . 58
4.3.3 Factor Revealing LP . . . 60
4.4 Reduction from k-level UFL with Uniform Penalties to k-level UFL . . . . 61
4.5 Extended LP Formulation for k-level UFLWP . . . 62
4.6 The Algorithm for k-level UFLWP . . . 63
4.6.1 Complete Solution . . . 63
4.6.2 Close and Distant Facilities . . . 64
4.6.3 Clustering . . . 64
4.6.4 Randomized Facility Opening . . . 64
4.7 Analysis . . . 65 4.7.1 “One-level” Description . . . 65 4.7.2 Penalty Discussion . . . 65 4.7.3 Approximation Ratio . . . 66 4.8 Appendix . . . 67 4.8.1 Graph Modification . . . 67 4.8.2 Token-passing Procedure . . . 69 4.8.3 Functions fk(·) and Fk(·) . . . 70
5 Polyhedral Structure of Capacitated Facility Location Problems 71 5.1 Introduction . . . 71
5.1.1 Notation, Problem Formulation, and Assumptions . . . 72
5.2 Knapsack Inequalities . . . 73
5.2.1 Background . . . 73
5.2.2 General Linear Inequalities of conv(XS K) . . . 74
5.3 Single-node Flow Inequalities . . . 77
5.3.1 Background . . . 77
5.3.2 General Linear Inequalities of conv(XS NF) . . . 78
5.4 Impact of Improved LP-bound on a Simple Local Search Algorithm . . . . 83
5.5 The Capacitated Facility Location Problem with Penalties . . . 86
5.5.1 Knapsack Inequalities and TPMC Inequalities . . . 87
5.5.2 A Class of Extended Facets . . . 91
5.6 Appendix . . . 109
Introduction
Optimization studies decision-making problems abstracted from the real-world, and aims to yield an optimal or near optimal solution with respect to some goals. Generally speaking, we study the following optimization problem
min z(x)= cx
subject to: Ax ≤ b,
0 ≤ x ≤ d, x ∈ Zn,
where A is m by n matrix, c an n-dimensional row vector, b an m-dimensional column vec-tor, d an n-dimensional column vecvec-tor, and x an n-dimensional column vector of variables. Many of these problems are NP-hard, which implies that they cannot be solved to opti-mality in time polynomial in the size of the problem, under the assumption that P , NP. So the decision maker needs to compromise between “optimality” and “polynomial time”. Depending on whether solution quality or algorithm speed is seen as more important, one can choose the following approaches. For readers who are not familiar with complexity, please refer to for instance [79].
Optimization algorithms. These algorithms yield an optimal solution if it exists while taking exponential time in the size of the instance in the worst case. Examples of opti-mization algorithm are branch-and-bound, branch-and-cut and dynamic programming. For some specific problems, the computing time of these algorithms may in practice be im-proved by exploring the particular structure of this problem. For instance, we can examine the polyhedral structure of the convex hull of the feasible solutions for a specific problem, then speed up the branch-and-cut by adding strong cuts that we find. Note that with some termination conditions, like after a given time or a given number of steps, the optimization algorithms could stop “quickly”, but may output a sub-optimal solution or even no solution. Heuristics. This approach outputs an approximate solution quickly without guarantee of optimality. Heuristics are typically algorithms based on experience or “common sense”, so often the quality of the obtained solution is quite good even though there is no guarantee of solution quality. Moreover, the obtained solution may be used as an initial solution to other algorithms, and as a reference to evaluate whether the solutions found by other heuristics are relatively good or not.
Approximation algorithms. This approach also sacrifices “optimality”, but at least gives a solution x, in polynomial time, whose objective value z(x) is guaranteed to always
be within the value ρ · z∗(x), where ρ is a known factor and z∗(x) is the optimal value. In practice, approximation algorithms typically produce much better solutions than their guarantees, since usually we only deal with a subset of instances and the most difficult instances often do not appear.
In this thesis, we focus on approximation algorithms and polyhedral structure of the facility location problems, which are among the most well-studied problems in operations research.
Chapter 1 gives the basic notation that we need in the other chapters, and related work for facility location problems.
In Chapter 2, we study the capacitated k-median problem, in which, given a set of facil-ities and a set of clients, the goal is to serve all the demand by opening at most k facilfacil-ities so as to minimize the total service cost. A constant factor approximation algorithm is not known yet. An alternative is to open more than k facilities or increase the capacities to get an approximate solution. For the uniform capacities case, Charikar, Guha, Tardos and Shmoys [23, 26, 46] presented a 16-approximation algorithm based on LP-rounding while increasing the capacities by at most a factor of 3. Recently, Byrka, Fleszar, Rybicki and
Spoerhase [18] improved the capacity violation ratio 3 to 2+l−13 , l ∈ {2, 3, 4, . . . } with
ap-proximation ratio 32l2+ 28l + 7. By generalizing the algorithm of Charikar, Guha, Tardos
and Shmoys, we improve the approximation ratio to 6+ 10α by increasing the capacities
by a factor of 2+α2, α ≥ 4.
A conference version of this work was published in the proceeding of APPROX and RANDOM 2014 [65].
Chapter 3 is dedicated to capacitated k-facility location problems, in which the setting is the same with the capacitated k-median problem, except that for each facility a given cost has to be paid when we open it. We give the first fully polynomial time approximation scheme (FPTAS) for the single-sink (single-client) capacitated k-facility location problem. Then, we show that the capacitated k-facility location problem with uniform capacities is solvable in polynomial time if the number of clients is fixed, by reducing it to a collection of transportation problems. Third, we analyze the structure of extreme point solutions, and
examine the efficiency of this structure in designing approximation algorithms for
capac-itated k-facility location problems. Finally, by combining a local search algorithm [24] with the algorithm proposed in this chapter, we can slightly improve the previously best approximation ratio 5 for the capacitated facility location problem with uniform opening costs [13, 64] to 4.562+ for any > 0.
This chapter is based on joint work with Karen Aardal, Pieter van den Berg, and Dion Gijswijt. A version similar to this chapter is accepted for publication in the European Journal of Operational Research.
In Chapter 4, we discuss the k-level uncapacitated facility location problem. The state of the art in approximation algorithms for facility location problems are complicated combi-nations of various techniques. In particular, the currently best approximation algorithm for
Introduction 3
the uncapacitated facility location problem by Li [66] is presented as a result of a non-trivial randomization of a certain scaling parameter in the LP-rounding algorithm by Chudak and Shmoys [30] combined with a primal-dual algorithm of Jain, Mahdian, and Saberi [52]. In this chapter, we first give a simple interpretation of this randomization process in terms of solving an auxiliary (factor revealing) LP. Then, armed with this simple viewpoint, we apply the randomization to a more complicated algorithm for the k-level version of the problem with penalties, in which the planner has the option to pay a penalty instead of serving chosen clients, which results in an improved approximation algorithm.
This chapter is based on joint work with Jarosław Byrka and Bartosz Rybicki. A con-ference version of this work was published in the proceeding of WAOA 2013 [19].
In Chapter 5, we examine the polyhedral relationship between the capacitated facility location polytope and its surrogate knapsack and single-node flow relaxations. In
particu-lar, we derive necessary and sufficient conditions for facets of the surrogate knapsack and
single-node flow polytopes to be facets for the capacitated facility location polytope. We also check the impact of facets on a local search algorithm to the capacitated facility loca-tion problem. Finally, we examine the polyhedral structure of a variant of the capacitated facility location problem, named the capacitated facility location problem with penalties.
Chapter One
Preliminaries
Generally speaking, we study the following mixed integer optimization problem in this thesis. min cx+ f y subject to: Ax+ Gy ≤ b, x ∈ Rm≥0, y ∈ {0, 1}n, where Rm
≥0is the set of nonnegative real m-dimensional vectors, and x= {x1, . . . , xm} and
y = {y1, . . . , yn} are the variables. The linear programming (LP) relaxation of this
prob-lem is obtained by replacing the binary constraints yi ∈ {0, 1}, i= 1, . . . , n by continuous
constraints 0 ≤ yi≤ 1, i= 1, . . . , n.
1.1
Approximation Algorithms
We say that an algorithm is a ρ-approximation algorithm for a minimization problem, if the algorithm yields a solution in polynomial time with objective value at most ρ times the optimal objective value, where ρ is a function of the size of the problem or a constant number, called approximation guarantee, or approximation factor, or approximation ratio.
One difficulty of designing an approximation algorithm for a problem is that we need to
prove that the objective value of the obtained solution is close to the optimum, without even knowing what the value of the optimum is.
When designing approximation algorithms for a mixed 0-1 integer and linear program (MIP) one of the typical ways is to start with the LP relaxation. The advantage is that the LP relaxation can be solved in polynomial time, and the obtained fractional solution is a lower bound on the optimal solution for the MIP. Then, we aim to obtain a feasible solution by performing some rounding strategies on the fractional solution. This technique is called LP-rounding. Associated with the LP-rounding, an important notion is the integrality gap, the maximum ratio between the objective value of the MIP and of its LP relaxation. Clearly, if the integrality gap of an MIP is unbounded, then it is impossible to get an approximation algorithm based solely on the LP relaxation. Besides LP-rounding, there are several other
standard techniques that one can try to design approximation algorithms, such as dynamic programming and local search.
Some NP-hard minimization problems, like the minimization knapsack problem, can be
approximated to any specified degree, that is, there exists a (1+ε)-approximation algorithm
for any ε > 0, called a polynomial time approximation scheme (PTAS). More precisely, an algorithm is a polynomial time approximation scheme for a minimization problem if for any fixed parameter ε > 0 and any instance, it produces a solution in polynomial time with
objective value at most 1+ ε times the optimal objective value.
A polynomial time approximation scheme is further called a fully polynomial time
ap-proximation scheme(FPTAS) if it terminates in time polynomial in the size of the problem
and in 1
ε. For example, a PTAS with running time O(nexp(1/ε))1is not an FPTAS.
For some problems, a constant factor approximation algorithm, that is, ρ is a constant number, is not known yet, or can be proved not to exist under the assumption that P , NP. For this case, an alternative is to get a pseudo-approximate solution in polynomial time, where we call a solution pseudo-approximate for a minimization problem if the objective value of this solution is at most a factor times the optimal objective value while violat-ing some constraints. Analogously, we call an algorithm a pseudo α-approximation
algo-rithmwith violation ratio β for a minimization problem, if the algorithm yields a
pseudo-approximate solution in polynomial time with objective value at most α times the optimal objective value by violating pre-specified class of constraints within a ratio β.
1.2
Basics of Polyhedral Theory
Since we will examine the polyhedral structure of the facility location problem, we review some of the basic concepts here.
Affine and linear independence. A set of points x1, . . . , xk∈ Rnis called:
• affinely independent if there do not exist scalars λi, i = 1, . . . , k, not all zero, such
thatPk
i=1λixi= 0 and Pki=1λi= 0;
• linearly independent if there do not exist scalars λi, i = 1, . . . , k, not all zero, such
thatPk
i=1λixi= 0.
Obviously, each linearly independent set of points is affinely independent, but the converse
is not true. And it is easy to see that each linearly independent set X ⊆ Rnexcludes 0 ∈ Rn,
but an affinely independent set X ⊆ Rncan include 0 ∈ Rn. So, the maximum number of
affinely independent points in Rnis n+ 1, that is, n linearly independent points and 0 ∈ Rn.
Section 1.3 Basics of Polyhedral Theory 7
Convex sets and convex hulls. Given a set of points x1, x2, . . . , xn, a convex combination
of these points is a point of the form
α1x1+ α2x2+ · · · + αnxn,
where αi∈ R≥0andPni=1αi= 1. A set X ⊆ Rnis convex if it contains all convex
combina-tions of any pair of points x0, x00∈ X.
Given a set X ⊆ Rn, the convex hull of X, denoted by conv(X), is defined as the
inter-section of all convex sets containing X. That is, the convex hull of a set X is the minimal convex set containing X.
Polyhedra and polytopes. A set of points P ⊆ Rnis a polyhedron if
P= {x ∈ Rn| Ax ≤ b}= {x ∈ Rn | aix ≤ b
i, i ∈ M},
where A ∈ Rm×n, b ∈ Rm, and m = |M|. That is, all points in P satisfy a finite number of
linear inequalities. We call it a polytope if it is also bounded. It is easy to see that each polyhedron or polytope is convex.
Dimension, valid inequalities, faces, and facets. The dimension of a polyhedron P ⊆
Rn, denoted by dim(P), is defined as the maximum number of affinely independent points
in P minus one.
Proposition 1.1. ([76], Proposition 2.4) dim(P)= n − rank(A=, b=) if P= {x ∈ Rn| Ax ≤
b} ⊆ Rn, where (A=, b=) is the set of rows aix ≤ bithat are satisfied with equality by all
x ∈ P.
A linear inequality ax ≤ b is a valid inequality of polyhedron P ⊆ Rnif
P= P ∩ {x ∈ Rn| ax ≤ b}.
If ax ≤ b is valid for polyhedron P, we call F = {x ∈ P | ax = b} a face of P and we say
that ax ≤ b represents or defines F . A face F is proper if ∅ & F & P.
We say that a1x ≤ b
1 and a2x ≤ b2 are equivalent with respect to P if (a1, b1) =
λ(a2, b
2)+ µ(A=, b=) for some λ > 0 and µ ∈ R|(A
=,b=)|
.
In particular, we will be interested in faces of dimension one less than dim(P), called facets, because of the following result.
Theorem 1.2. ([76], Theorem 3.5)
• A full-dimensional polyhedron P has a unique (to within scalar multiplication) min-imal representation by a finite set of linear inequalities. In particular, for each facet Fiof P there is an inequality(ai, b
i) (unique to within scalar multiplication)
repre-senting Fiand P= {x ∈ Rn| aix ≤ bi, i = 1, . . . , t}.
• If dim(P)= n − k with k > 0, then P = {x ∈ Rn | aix= b
i, i = 1, . . . , k, aix ≤ bi, i =
k+1, . . . , k+t}. For i = 1, . . . , k, (ai, b
i) are a maximal set of linearly independent rows
of(A=, b=), and for i= k + 1, . . . , k + t, (ai, b
i) is any inequality from the equivalence
1.3
Facility Location Problems
Facility location (FL) problems concern the optimal location of facilities to serve a given set of clients, while considering various extra constraints like “at most a fixed number of facilities can be opened”, or “each client has to be served by at least or at most a given number of facilities”.
More precisely, the input consists of a set D of clients (demand locations) and a set F of potential facilities (locations where we can potentially open facilities). Each client j ∈ D
has a given demand dj > 0. For each facility i ∈ F, a nonnegative cost fiis given as the
opening costof i, and there is a given capacity+∞ ≥ si > 0 that bounds the total demand
that can be served by i when it is open. The per unit service cost from location i to location
jis nonnegative and denoted by ci j. In general the goal is to decide which facilities to open
to serve the clients so as to optimize the objective function, subject to various constraints. Facility location problems have been studied since the early 60’s. Pioneering work is by Balinski and Wolfe [12], Kuehn and Hamburger [59], and Manne [75]. Since then, various objectives and extra constraints have been considered, which has resulted in a large family of facility location problems.
First, we briefly review approximation algorithms for some simple variants of the facility location problem. For more references please refer to [56, 83, 84].
The uncapacitated facility location problem. This is probably the simplest and most
well studied variant of the FL problem. In this problem, the capacity of each facility is infinite. The objective is to open a subset of facilities to serve all the clients so that the sum of opening cost and service cost is minimized.
Hochbaum [48] proposed an O(log n)-approximation algorithm for this problem by
re-formulating it as a set covering problem, where n = |D|. Lin and Vitter [71] gave
an-other O(log n)-approximation algorithm for this problem by rounding the optimal solution to the LP relaxation. Actually, log n is the best we can get under the assumption that
NP 1 DT IME(nO(log log n))2 [38]. However, the constant factor approximation algorithms
can be obtained if the service costs are metric, which means that they are non-negative, symmetric and satisfy the triangle inequality:
• ci j ≥ 0, for each i, j ∈ F ∪ D;
• ci j = cji, for each i, j ∈ F ∪ D;
• cit+ ct j≥ ci j, for each i, j, t ∈ F ∪ D.
In all variants of the FL problem discussed in this thesis, it is assumed that the service costs have the above properties unless we mention otherwise.
For the metric uncapacitated facility location problem (UFL), the first constant factor 3.16-approximation algorithm was proposed by Shomys, Tardos, and Aardal [85]. Since then numerous improvements have been made [83], and a variety of techniques have been 2DT I ME( f (n)) denotes the class of problems for which there exist optimization algorithms running in at most
Section 1.3 Facility Location Problems 9
introduced in the design and analysis of the approximation algorithms for UFL, including LP-rounding [30, 85, 86], primal-dual [53], dual-fitting [51, 52, 72], greedy augmentation [47], and local search [10, 57]. Several techniques are combined to achieve improved ap-proximation ratios. Charikar and Guha [24, 25] combined greedy improvement and primal-dual to get a 1.853-approximation algorithm for UFL, and improved the ratio to 1.728 by further combining with the LP-rounding algorithms. The 1.52-approximation algorithm of Mahdian, Ye and Zhang [74] combines the algorithm of Jain, Mahdian, and Saberi [52] and greedy augmentation of Charikar, Guha, and Khuller [24, 47]. Byrka and Aardal [17] modified the LP-rounding algorithm by Chudak and Shmoys [30] and combined this mod-ified algorithm with the primal-dual algorithm [52] to get a 1.5-approximation algorithm for UFL. By introducing a non-trivial randomization of a certain scaling parameter to the 1.5-approximation algorithm of Byrka and Aardal, Li [66] gave the currently best approxi-mation algorithm with approxiapproxi-mation ratio 1.488, which is close to be the best possible, as Guha and Khuller proved that the best approximation ratio that we can get is 1.463, unless NP ⊂ DT I ME(nO(log log n)).
The k-median problem. Sometimes the costs to build facilities are unknown beforehand.
Then, instead of including the opening costs like UFL, a parameter k is introduced to bound the number of facilities that may be built. Again the capacity of each facility is infinite. The objective is to open at most k facilities to serve all the clients such that the total service cost is minimized.
Before Charikar, Guha, Tardos, and Shmoys [26] gave the first constant factor 62
3
-approximation algorithm based on LP-rounding, some pseudo -approximation algorithms [57, 70, 71] were presented for the k-median problem while using more than k facili-ties. Later, Jain and Vazirani [53] constructed a connection between the k-median prob-lem and UFL via the Lagrangian relaxation of the k-median probprob-lem, and obtained a 6-approximation algorithm for the k-median problem by modifying their 3-6-approximation primal-dual algorithm for UFL. The approximation ratio was further improved to 4 by Charikar and Guha [24] via a refinement of the 6-approximation algorithm of Jain and Vazirani. Archer, Rajagopalan, and Shmoys [9] showed that the integrality gap of the stan-dard LP relaxation for the k-median problem is at most 3. However, the approach in [9] gave only an exponential time algorithm. Arya, Garg, Khandekar, Meyerson, Munagala,
and Pandit [10] proposed a (3+ )-approximation algorithm ( > 0) using a local search
technique. The best known approximation algorithm was recently given by Byrka, Pensyl,
Rybicki, Srinivasan, and Trinh [20] with approximation ratio 2.611+ by improving the
algorithm of Li and Svensson [67].
On the negative side, Guha [46] showed a (1+1e)-hardness of approximation. This was
improved to (1+2e) by Jain, Mahdian, and Saberi [52].
The uncapacitated k-facility location problem. This problem can be viewed as a
gen-eralization of the k-median and the uncapacitated facility location problem. Opening costs and the number of facilities that can be opened are both included in the model. The objec-tive is to open at most k facilities to serve all the clients so that the total service cost, plus the total opening cost is minimized.
Shmoys [26] gave the first constant factor approximation algorithm with performance
guar-antee 9.8, by modifying their 623-approximation algorithm for the k-median problem. Later,
the approximation ratio was improved by Jain and Vazirani [53], who made use of the primdual scheme and Lagrangian relaxation techniques to obtain a 6-approximation al-gorithm. Jain, Mahdian, Markakis, Saberi, and Vazirani [51, 52] further improved the ratio to 4 by using the greedy approach and the so-called Lagrangian Multiplier Preserving prop-erty of the algorithms. The best known approximation algorithm for this problem, due to
Zhang [93], achieves a factor of 2+√3+ using a local search technique.
The uncapacitated facility location problem with penalties. In this problem, for each
client the planner has the option to pay a penalty instead of serving it. More precisely, each
client j ∈ D can either be fully served or rejected. If client j is rejected, a penalty cost pj
must be paid. The objective is to determine which facilities to open and which clients to reject such that the sum of opening, service and penalty costs is minimized.
The uncapacitated facility location problem with penalties (UFLWP) is first introduced by Charikar, Khuller, Mount, and Narasimhan [27], who also gave the first constant fac-tor 3-approximation algorithm based on the primal-dual method. Later, Jain, Mahdian, Markakis, Saberi, and Vazirani [51] claimed that their greedy algorithm for UFL could be adapted to UFLWP with the approximation ratio 2, but without the detailed proof. Li, Du, Xiu, and Xu [69] provided a proof for this claim. Xu and Xu [89, 90] presented
an LP-rounding based (2+ 2/e)-approximation algorithm, and a combinatorial
1.853-approximation algorithm by combining the primal-dual with the local search technique. In addition, Geunes, Levi, Romeijn, and Shmoys [43] proposed an algorithmic framework
that can extend any LP-based α-approximation algorithm for UFL to get a (1 − e−1/α)−1
-approximation algorithm for UFLWP. As a result, they gave a 2.056--approximation algo-rithm for this problem. Recently, Li, Du, Xiu, and Xu [68] extended the LP-rounding algorithm by Byrka and Aardal [17] to UFLWP to give the currently best approximation algorithm with approximation ratio 1.5148.
The k-level uncapacitated facility location problem. In practice, more complex
logis-tical systems exist. For example, goods are first shipped from factories to warehouses, then to shops. To model this, we impose an extra characteristic on facilities, namely levels or
types. More precisely, facilities in F are of k different levels (types), e.g., for k = 3 one may
think of these facilities as shops, warehouses and factories. Each set Ftcontains facilities
at level t. That is, F = Skt=1Ft. Each client j ∈ D needs to be connected with a path
(i1, i2, . . . , ik−1, ik), where itis an open facility at level t, so that the total opening costs (at
all levels) plus the total service costs is minimized.
The first constant factor approximation algorithm for k = 2 is due to Shmoys,
Tar-dos, and Aardal [85], who extended their algorithm for 1-level UFL to 2-level with an approximation ratio 3.16. Later on, Aardal, Chudak, and Shmoys [2] proposed the first 3-approximation algorithm for general k using LP-rounding. Since it is naturally expected that the problem is hard for large number of levels and in practice smaller number of lev-els has more potential applications, the research work is concentrated on improving the approximation ratio for smaller number of levels. Ageev, Ye and Zhang [6] gave a com-binatorial 3.27-approximation algorithm for general k by reducing the k-level into 1-level
Section 1.3 Facility Location Problems 11
problems. By recursive reduction, i.e., reducing k-level to k − 1 level, they obtained
2.43-approximation for k = 2 and 2.85 for k = 3. Later, this was improved by Zhang [91],
who combined the maximization version of 1-level UFL and the dual-fitting technique to
get a 1.77-approximation algorithm for k= 2, and a 2.53-approximation for k = 3. Byrka
and Aardal [17] improved the ratio for k = 3 to 2.492. In addition, Bumb and Kern [16]
gave a 6-approximation algorithm based on a primal-dual technique. Gabor and Van Om-meren [39] introduced an alternative model and a 3-approximation algorithm for their new model. Recently, Byrka and Rybicki [21] proposed an approximation algorithm for k-level UFL that for any fixed k has approximation ratio strictly smaller than 3, and improves the
previously best ratio for any k ≥ 3, such as 2.02 for k= 3, and 2.14 for k = 4.
On the negative side, Krishnaswamy and Sviridenko [58] proved 1.539-hardness of
approximation for two levels (k= 2) and 1.61-hardness for general k. This demonstrates
that the k-level uncapacitated facility location problem is strictly harder to approximate than the single level variant, since there is a 1.488-approximation algorithm for UFL [66].
Capacitated facility location problems. By introducing a capacity si < +∞ for each
facility i to UFL, we get the capacitated facility location problem (CFL). The objective is to open a subset of facilities to serve the clients, satisfying the capacity constraints, so that the sum of opening cost and service cost is minimized.
In capacitated facility location problems, two types of capacities: soft and hard; and two types of demand: splittable and unsplittable, are introduced. “Hard capacities” means that at most one facility can be opened at any location. In contrast, “soft capacities” allows that multiple copies of facilities may be opened in a single location [85]. If the demand is splittable, we allow that each client can be served from more than one open facility. In contrast, “unsplittable demand” requires that each client must be served by exactly one open facility.
Note that “soft capacities” is different from “uncapacitated” as we have to pay opening
cost for each opened copy, and each copy has a capacity. Moreover, in UFL we can always assume that the demand is unsplittable. Since the capacity of each facility is infinite in UFL, we can directly assign the demand of each client to its closest opened facility.
In all variants of the capacitated facility location problem discussed in this thesis, we consider the hard capacities and splittable demand case.
Most known approximation algorithms for CFL are based on local search techniques since the standard LP relaxation has an unbounded integrality gap for the general case [78].
For CFL with uniform capacities (si = s, ∀i ∈ F), Korupolu, Plaxton, and Rajaraman
[57] gave the first constant factor approximation algorithm with a factor of 8. Later, Chu-dak and Williamson [31] improved this factor to 5.83 by improving the analysis of the Korupolu et al. algorithm. The currently best approximation algorithm is by Aggarwal, Louis, Bansal, Garg, Gupta, Gupta, and Jain [7], who added a linear combination of in-equalities derived from local optimality into the analysis of a local search algorithm and derived a performance guarantee of 3.
For CFL with nonuniform capacities, the first constant factor approximation algorithm was by Pál, Tardos, and Wexler [78] with a factor of 8.53. Later, Mahdian and Pál [73] improved this factor to 7.88. By introducing a multi-exchange operation to the algorithm
algorithm by Zhang, Chen, and Ye was further improved by Bansal, Garg, and Gupta [13] to achieve the currently best ratio of 5.
Additionally, for CFL with uniform opening costs ( fi = f, ∀i ∈ F), the standard
LP relaxation has a bounded integrality gap. Levi, Shmoys, and Swamy [64] gave a 5-approximation algorithm for this case by an LP-rounding technique. For CFL with general opening costs, An, Singh, and Svensson [8] presented a strong LP relaxation based on multi-commodity flows and gave a 288-approximation algorithm based on this strong LP relaxation.
In a similar manner, dropping the setting that the capacity of each facility i is infinite from the variants of UFL, we can get the capacitated version for each variant of UFL: the capacitated k-median problem (CKM), the capacitated k-facility location problem (CKFL), the capacitated facility location problem with penalties (CFLWP), and so on.
Other variants. There are lots of variants that are not discussed here, such as the fault
tolerant facility location problem [54], the k-center problem [49], the universal facility lo-cation problem [73], the connected facility lolo-cation problem [87], the maximization version of facility location problem [5, 33], the multicommodity facility location problem [80], and so on.
Next, we briefly survey polyhedral results for facility location problems. For more ex-haustive discussions please refer to [1, 4].
When we pursue optimal solutions, enumerative algorithms have to be called since most facility location problems are NP-hard. To keep the running time as short as possible, a common approach is to find good lower bounds on the optimal solution.
A natural idea is to take the optimal solution to a relaxation as a lower bound, where the relaxation can be a Lagrangian relaxation, or be obtained by dropping some set of the constraints, or by replacing some set of constraints by relaxed ones. Cornuejols, Sridha-ran, and Thizy [34] compared the strength of various relaxations of CFL according to the tightness of the bounds that they yield.
Moreover, it is well-known that better lower bounds can be found by adding strong valid inequalities to the relaxation. A considerable amount of efforts have been devoted to examine the polyhedral structures of facility location problems. First, relaxed polytopes are rich sources of valid inequalities for the original problem, such as the well-known knapsack cover and flow cover inequalities [4] for CFL derived from the surrogate knapsack and single-node flow polytopes [77], respectively.
For CFL with uniform capacities (i.e., si = s, ∀i ∈ F), Leung and Magnanti [63]
in-troduced a family of residual capacity inequalities. Aardal [1] and Aardal, Pochet, and Wolsey [4] derived several new families of facet-defining inequalities for CFL with
gen-eral capacities, namely the knapsack cover, flow cover, effective capacity and submodular
inequalities, where flow cover inequalities generalize residual capacity inequalities. The polyhedral structures of various variants of the facility location problem are con-sidered in the literature, like the uncapacitated facility location problem [28, 29, 35], the k-median problem [37], the connected facility location problem [62], the two-stage unca-pacitated facility location problem [3, 60], and so on.
Chapter Two
The Capacitated k-median Problem
In the k-median problem, given a set of facilities and a set of clients, the goal is to open a subset of at most k facilities so as to minimize the total cost of serving each client by its nearest opened facility. We study the uniform hard capacitated version of the k-median problem, in which each opened facility can only serve a limited amount of demand.In Section 2.1, we briefly review the existing results on capacitated k-median problems (CKM) and our main results. In Section 2.2, we present two models for CKM, which are both considered in the literature, and the LP relaxation of CKM. In Section 2.3, we explain why our algorithm can improve the previously best ratios. Our algorithm and analysis are given in Section 2.4 and Section 2.5 respectively. We show that our algorithm can be extended to work for both models in Section 2.6.
2.1
Introduction
The k-median problem was studied extensively [9, 10, 24, 26, 52, 53, 67] and the best known approximation algorithm was recently given by Byrka, Pensyl, Rybicki, Srinivasan,
and Trinh [20] with approximation ratio 2.611+ , > 0 by improving the algorithm of Li
and Svensson [67].
The capacitated versions of k-median problem are much less understood although the
presence of capacity constraints is natural in practice. The difficulty of the problem lies in
the fact that two kinds of hard constraints appear together: the cardinality constraint that at most k facilities are allowed to be used and the capacity constraints. This seems to result in hardness of the methods such as LP-rounding, primal-dual method used to solve the k-median problem, and even local search algorithms used to solve the capacitated facility location problem and the k-median problem. The natural LP relaxation has an unbounded integrality gap. More precisely, the capacity or the number of opened facilities has to be increased by a factor of at least 2, if we try to get an integral solution within a constant factor of the cost of an optimal solution to the LP relaxation [26]. All the previous attempts with constant approximation ratios for this problem violate at least one of the two kinds of hard constraints: the cardinality constraint and capacity constraint, even the local search technique.
For the hard uniform capacitated case, Charikar, Guha, Tardos and Shmoys [23, 26, 46] 13
presented a 16-approximation algorithm based on LP-rounding while violating the
capaci-ties within a factor of 3. This violation ratio of capacicapaci-ties was recently improved to 2+l−13 ,
l ∈ {2, 3, 4, . . . } by Byrka, Fleszar, Rybicki, and Spoerhase [18], with the corresponding
approximation ratio of 32l2+ 28l + 7. In addition, Korupolu, Plaxton, and Rajaraman [57]
proposed a (1+ 5/)-approximation algorithm by opening at most (5 + )k facilities, and a
(1+ )-approximation algorithm by opening at most (5 + 5/)k facilities based on a local
search technique.
For the hard non-uniform capacities, Byrka, Fleszar, Rybicki, and Spoerhase [18] gave
a (96+ 180/)-approximation algorithm while violating capacities within a factor of 3 + 3
for any > 0.
For soft non-uniform capacities, Chuzhoy and Rabani [32] presented a 40-approximation algorithm while violating the capacities within a factor of 50 based on primal-dual and
La-grangian relaxation methods. Using at most (1+ δ)k facilities, Bartal, Charikar, and Raz
[14] gave a 19.3(1+ δ)/δ2-approximation algorithm for any δ > 0.
In this chapter we focus on the hard uniform capacitated k-median problem. Inspired by
the algorithm of Charikar, Guha, Tardos and Shmoys [26], we give a (6+10α)-approximation
algorithm with increasing the capacities by a factor of 2+ 2α, α ≥ 4, which improves the
previously best approximation ratio for any violation ratio of capacities in (2, 3) and has a simpler argument. The approximation ratios we obtain for violation ratio of 2.1, 2.3, 2.5, 2.75 and 3 (for instance) are summarized in Table 2.1.
Table 2.1: Comparison of ratios.
violation ratio of capacities 2.1 2.3 2.5 2.75 3
previous best 31627 4187 1771 947 16
our algorithm 206 72.67 46 46 46
Note that by increasing the capacities by a factor of at least 3, the best approximation ratio is still due to Charikar, Guha, Tardos and Shmoys [26].
2.2
Problem Definition
Recall that in the (uniform) capacitated k-median problem (CKM), we have a set F of facilities and a set D of clients. Each facility has a capacity M. Each client j ∈ D has a
demand dj that has to be served by open facilities. Assigning one unit of the demand of
client j to facility i ∈ N incurs service costs ci j. The objective is to serve all the demands
by opening at most k facilities and satisfying the capacity constraints such that the total service cost is minimized.
It can be formulated as the following mixed integer program (MIP), where variable xi j
indicates the fraction of the demand of client j that is served by facility i, and yiindicates
if facility i is open. Let yitake value one if facility i is open and value zero otherwise. We
Section 2.3 Problem Definition 15 min X i∈F X j∈D djci jxi j (2.1) subject to: X i∈F xi j = 1, ∀ j ∈ D, (2.2) X j∈D djxi j≤ Myi, ∀i ∈ F, (2.3) X i∈F yi≤ k, (2.4) 0 ≤ xi j≤yi, ∀i ∈ F, ∀ j ∈ D, (2.5) yi∈ {0, 1}, ∀i ∈ F. (2.6)
The constraints (2.2), called demand constraints, ensure that the demand of each client is satisfied. The constraints (2.3), named capacity constraints, encode that the total de-mand served by each open facility is at most M. The constraint (2.4), named cardinality constraint, imposes that at most k facilities can be opened. If we replace constraints (2.6) by
0 ≤ yi≤ 1, ∀i ∈ F, (2.7)
we obtain the LP relaxation of CKM_FD.
Charikar, Guha, Tardos and Shmoys [26] use a slightly different model, denoted by
CKM_N. Since our algorithm is based the algorithm in [26], we will introduce our al-gorithm based on CKM_N first. Then, we extend our alal-gorithm to CKM_FD in Section 2.6.
In CKM_N, we are given a set N of locations (that can be both clients and potential
facilities). Each location j ∈ N has a capacity M, and a demand dj≥ 0 that must be served.
Shipping one unit of the demand of location j to location i incurs service costs ci j.
CKM_N can be formulated as the following MIP, where variable xi jindicates the
frac-tion of the demand of locafrac-tion j that is served by locafrac-tion i, and yiindicates whether facility
iis opened (at location i).
min X i, j∈N djci jxi j subject to: X i∈N xi j= 1, ∀ j ∈ N; X j∈N djxi j≤ Myi, ∀i ∈ N; X i∈N yi≤ k; 0 ≤ xi j≤yi, ∀i, j ∈ N; yi∈ {0, 1}, ∀i ∈ N. (2.8)
Replacing constraints (2.8) by 0 ≤ yi≤ 1, ∀i ∈ N, we obtain the LP relaxation of CKM_N.
For any solution (x, y) to the LP relaxation, if yi ∈ (0, 1) we say that facility i is
2.3
The Main Idea Behind Our Algorithm
In the algorithm of Charikar, Guha, Tardos and Shmoys [26], based on an optimal solution to the LP relaxation, a {12, 1}-solution (x, y) is first constructed such that yi ∈ {0,12, 1}, ∀i ∈
N;P
j∈Nxi jdj≤ M, if yi = 12; andPj∈Nxi jdj ≤ 2M, if yi= 1. Note that Pj∈Nxi jdj≤ Myi
could be violated in this solution.
Next, facility i is directly opened (at location i) if yi = 1. Then, a collection of rooted
stars is constructed to span all the locations with yi= 12. By a star by star rounding
proce-dure, exactly half of the locations with fractional opening value 12 are selected as facilities
finally. The demands of another half of the locations, where no facility is opened, are re-assigned to the opened half. In the worst case, the capacity of the root of some star has to be increased by factor 3 to satisfy the capacity constraint. Take Fig.2.1 as an example. The star Qt, rooted at t, has two children j1and j2with yt = yj1 = yj2 =
1
2. In the worst case,
we are allowed to build at most byt+ yj1+ yj2c facility, i.e., 1, in case the number of opened
facilities is greater than k. Without loss of generality, suppose that we build a facility at the
root t, and reassign the demand served by j1and j2to t. Then, the capacity of t has to be
increased by factor 3 to satisfy the capacity constraint, asP
j∈Nxi jdj≤ M for i= t, j1, j2. 1 j t t Q 2 j Figure 2.1: A star Qt.
We generalize the algorithm of Charikar, Guha, Tardos and Shmoys [26] to improve its
violation ratio from 3 to 2+ , > 0. The key idea behind our algorithm relies on the
following observations. One is that if we can obtain a {1 − 1δ, 1}-solution, then 2 facilities
can be built for the above example in the worst case by setting δ ≥ 3, as then byt+yj1+yj2c ≥
b2 3+
2 3+
2
3c= 2. Consequently, we only need to blow up the capacity of location t by factor
2 instead of 3, by building facilities at t and j2, and assigning the demand served by j1 to
t. However, this example only shows one kind of stars. To make sure the violation ratio can be improved for all kinds of stars, we construct a {(α−2α ,α−1α ], [1, 2)}-solution (x, y) such that
1. for each i ∈ N, α−2α < yi ≤ α−1α , or 1 ≤ yi < 2, or yi = 0; and |{i ∈ N | α−2α < yi < α−1
α }| ≤ 1;
2. ifα−2α < yi≤α−1α , thenPj∈Ndjxi j≤ M;
3. if 1 ≤ yi< 2, then Pj∈Ndjxi j≤ Myi.
Another observation is that constraints yi≤ 1, ∀i ∈ N hold in each step of the algorithm
Section 2.4 An Improved Approximation Algorithm 17
natural operation since we consider the hard capacitated case, i.e., at most one facility can be opened at each location. However, we observe that after obtaining an optimal solution
to the LP relaxation, it is sufficient to make sure that constraints yi≤ 1, ∀i ∈ N hold in our
last step. For all other steps (except last step), this rounding can be avoided by relaxing
the constraint yi ≤ 1 to yi < 2. We give an example to show the profit we can gain
from avoiding this rounding. Suppose that we have a star Qtrooted at t with one child j1.
Moreover, yt = 1.9 and yj1 = 0.5. Then, in the worst case, we can build byt+ yj1c = 2
facilities. We open t and j1. Consequently, we only need to increase the capacity of t
by factor 1.9 (note that if 1 ≤ yi < 2, then Pj∈Ndjxi j ≤ Myifor our {(α−2α ,α−1α ], [1,
2)}-solution). However, if we round 1.9 to 1, we obtain a star Qtwith yt = 1 and yj1 = 0.5.
Then, in the worst case, only 1 facility can be built as byt+ yj1c = 1. Without loss of
generality, suppose that we build a facility at t, and assign the demand served by j1 to t.
Then, we need to increase the capacity of t by factor 2.9.
2.4
An Improved Approximation Algorithm
From now on, let (x, y) denote an optimal solution to the LP relaxation with total cost CLP.
For each j ∈ N, define Cj = Pi∈Nci jxi j. Note that CLP = Pj∈NdjCj. The outline of our
algorithm is similar to [26].
Step 1. We partition locations to a collection of clusters. The total opening value of each cluster is at least α−1α , α ≥ 4.
Step 2. For each cluster, we integrate the nearby (fractionally or fully) opened facilities
(locations) to obtain a [α−1α , 2)-solution (x0, y0) to the LP relaxation, which satisfies the
relaxed constraints 0 ≤ y0i < 2 instead of 0 ≤ y0i≤ 1 for each i ∈ N.
Step 3. We redistribute the opening values among facilities with y0
i ∈ [ α−1
α , 1) to obtain
a {(α−2α ,α−1α ], [1, 2)}-solution (x0, ˆy), which satisfies the relaxed constraints P
j∈Ndjx0i j≤ M
if ˆyi∈ (0, 1),Pj∈Ndjx0i j≤ M ˆyiotherwise, instead ofPj∈Ndjx0i j ≤ M ˆyifor each i ∈ N.
Step 4. We round the {(α−2α ,α−1α ], [1, 2)}-solution to be an integral solution with increas-ing the capacities by a factor of 2+2α.
2.4.1
Step 1: Clustering
In this step, by the filtering technique of Lin and Vitter [71], we will partition locations into clusters, and for each cluster select a single location as the core of this cluster, such that
each location in the cluster is not far to its cluster core and the cores are sufficiently far to
each other.
Let N0be the collection of all cluster cores. Let N0( j) denote the closest cluster core to
jin N0. For each l ∈ N0, let M
ldenote the cluster whose core is l, and define Zl= Pj∈Mlyj
be the total opening value of all locations in cluster Ml.
Definition 2.1. We call a cluster Mlterminalif Zl≥ 1, non-terminal if 0 < Zl< 1.
Procedure 1. Clustering
1. order all locations in nondecreasing order of Cj, (without loss of generality,
assume C1 ≤ · · · ≤ Cn);
2. set N0:= ∅;
3. for j= 1 to n do
find a location l ∈ N0such that c
l j≤ 2αCj, where α ≥ 4;
if no such location is found then
choose j as a cluster core, i.e., set N0:= N0∪ { j}; end
end
4. set Ml:= ∅, ∀l ∈ N0;
5. for j= 1 to n do
if j is closer to cluster core l ∈ N0than all other cluster cores (break ties
arbitrarily) then
add location j to cluster Ml. (i.e., set Ml:= { j ∈ N | N0( j)= l}.)
end end
After this step, the following properties hold (α ≥ 4): [1a]. ∀ j ∈ Ml, l ∈ N0, cl j≤ 2αCj; [1b]. ∀l, l0∈ N0and l , l0, cll0> 2α max{Cl, Cl0}; [1c]. ∀l ∈ N0, Zl= Pj∈Mlyj≥ α−1 α ; [1d].S l∈N0Ml= N; and MlT Ml0 = ∅, ∀l, l0∈ N0and l , l0.
We can easily get property 1a, 1b and 1d from this procedure.
Lemma 2.2. (property 1c) ∀l ∈ N0, Z
l≥ α−1α .
Proof. First, we show that location i belongs to cluster Mlif cil ≤αCl. For contradiction,
we suppose that for some i ∈ N with cil≤αCl, i ∈ Ml0instead of i ∈ Ml, where l0∈ N0− {l}.
This means cil0≤ cilas we add i to cluster Ml0only if N0(i)= l0. Then, we have
cll0≤ cil+ cil0 ≤ 2cil≤ 2αCl,
which is a contradiction as cll0> 2αClby property 1b.
Then, note that the total fraction of the demand of l served by the locations, which are strictly greater than αClaway from l, should be strictly less thanα1. That is,Pi∈N:cil>αClxil<
1
α, otherwisePi∈Ncilxil> Clwhich is a contradiction.
So, Zl≥Pi∈N:cil≤αClyi≥
P
i∈N:cil≤αClxil ≥
α−1
α , as xil≤yifor each i ∈ N andPi∈Nxil=
1.
2.4.2
Step 2: Obtaining a [
α−1α, 2)-solution
We will get rid of locations (facilities) with relatively small fractional opening value in this step, by constructing a [α−1α , 2)-solution (x0, y0) in which y0i = 0 or α−1α ≤ y0
i < 2,
∀i ∈ N. For each cluster Ml, we transfer the amount of locations (their opening values and
the demands served by these locations) far away from the cluster core l to locations closer to l.
Section 2.4 An Improved Approximation Algorithm 19
In this step, initially set y0i = yi, x0i j = xi j, ∀i, j ∈ N. Then, we consider clusters one by
one. For each cluster Ml, l ∈ N0, order locations in Mlin nondecreasing value of cl j, j ∈ Ml.
Without loss of generality, assume that we get an order j1, . . . , ju(Note that j1 = l). If we
decide to move the amount of location jbto ja(1 ≤ a < b ≤ u), then perform the following
transfer operations [23, 46]: Procedure 2. Move( ja, jb) 1. let δ= min{1 − y0 ja, y 0 jb};
2. for all j ∈ N, set x0 jaj:= x 0 jaj+ δ y0 jb x0 jbj, x 0 jbj:= x 0 jbj− δ y0 jb x0 jbj; 3. set y0 ja := y 0 ja+ δ, y 0 jb:= y 0 jb−δ;
Lemma 2.3. After Procedure Move( ja, jb), we still have
(1) P j∈Mly 0 j= Pj∈Mlyj, for each l ∈ N 0; (2) for each j ∈ N,P i∈Nx0i j= 1; (3) P j∈Ndjx0i j≤ My0i, for each i ∈ N.
Proof. It is easy to see that the Procedure 2 preserves (1) and (2).
To prove (3), it is sufficient to show that Pj∈Ndjx0i j ≤ My0i holds for i = ja, jb as we
only change the demands served by jaand jb.
For jb, before performing the procedure we have
X j∈N djx0jbj≤ My 0 jb. Then, we get (1 − δ y0 jb )X j∈N djx0jbj≤ My 0 jb(1 − δ y0 jb )= M(y0j b−δ), as 1 −yδ0 jb
≥ 0. Note that in the procedure we set x0
jbj:= x 0 jbj− δ y0 jbx 0 jbjand y 0 jb:= y 0 jb−δ. So
the lemma holds for jb.
For ja, before performing the procedure we have
X j∈N djx0jaj≤ My 0 ja. Then, we get X j∈N djx0jaj+ δ y0 jb X j∈N djx0jbj≤ My 0 ja+ δ y0 jb My0 jb= M(y 0 ja+ δ).
Recall that we set x0j
aj:= x 0 jaj+ δ y0 jbx 0 jbjand y 0 ja:= y 0
ja+ δ in the procedure. Thus, the lemma
We use the following procedure to decide whether we move the amount of location jb
to ja.
Procedure 3. Concentrate(Ml)
while there exists a location in Mlwith fractional opening value do
1. let jabe the first location in the sequence j1, . . . , jusuch that 0 ≤ y0ja< 1;
2. let jbbe the first location in the sequence ja+1, . . . , jusuch that 0 < y0jb≤ 1;
3. if jaand jbboth exist then
execute Procedure 2 to move the amount of jbto ja;
end
4. if jaexists but jbdoes not exist then
if Mlis a terminal cluster, i.e., a ≥2 then
set y0 ja−1 := y 0 ja−1+ y 0 ja, y 0 ja:= 0;
for each j ∈ N, set x0 ja−1j:= x 0 ja−1j+ x 0 jaj, x 0 jaj:= 0; end terminate. end end
Lemma 2.4. If in Procedure 3 jaexists but jbdoes not exist, and Mlis a terminal cluster,
then a ≥2 and y0
ja−1= 1.
Proof. Since Mlis a terminal cluster, we have Zl≥ 1. Moreover, we know y0jt = 1 for each
t < a and y0
js = 0 for each s > a, as jbdoes not exist. Thus, a ≥ 2. Otherwise, Zl < 1, a
contradiction.
Lemma 2.5. After this step, we have the following properties [2a]. for all i ∈ N, α−1α ≤y0
i < 2 or y 0 i = 0; and Pj∈Ndjx0i j≤ My 0 i; [2b].P i∈Ny0i= Pi∈Nyi≤ k; [2c]. x0 i j≤y 0 i, ∀i, j ∈ N.
Proof. Property 2a. If Mlis a non-terminal cluster, i.e., 0 < Zl < 1, then we will move
the amount of each location in Mlto its core l according to Procedure 3. Consequently, we
obtain α−1α ≤y0l = Zl< 1 (property 1c) and y0j= 0, ∀ j ∈ Ml− {l}.
If Mlis a terminal cluster, i.e., Zl≥ 1, then according to Lemma 2.4 we get y0jt = 1 for
each t < a and y0j
s = 0 for each s > a if jaexists and jbdoes not exist. Then, we move the
amount of y0j ato y 0 ja−1. So, 1 ≤ y 0 ja−1 < 2 as 0 ≤ y 0
ja < 1. Note that if jadoes not exist, we
know y0j= 1 for each j ∈ Ml.
Thus, for all i ∈ N, α−1α ≤ y0i < 2 or y0i = 0. Pj∈Ndjx0i j ≤ My0i, ∀i ∈ N hold by
Lemma 2.3 (Note that it is easy to check that these inequalities still hold after the step 4 in Procedure 3).
Property 2b. This directly follows by Lemma 2.3(1).
Property 2c. Initially, we set y0i = yi, x0i j = xi j for all i, j ∈ N. Thus, x0i j ≤y 0
i holds, for
each i, j ∈ N. We will show that after the procedure these inequalities still hold.
If Ml is a non-terminal cluster, we have 0 <Pj∈Mlyj < 1. Thus, y
0 ja+ y
0
jb < 1 when
we perform Procedure 2, i.e., y0
jb < 1 − y
0
ja. Then, δ= y
0
jb. So, we always set y
0
jb:= 0, and
x0
jbj:= 0 for each j ∈ N. Thus, x
0 jbj≤y
0
Section 2.4 An Improved Approximation Algorithm 21
For ja, initially we have x0jaj≤y0jafor each j ∈ N. Then, we get
x0j aj+ δ y0 jb x0j bj≤y 0 ja+ δ y0 jb x0j bj≤y 0 ja+ δ,
where the last inequality holds as initially we also have x0j
bj≤y
0
jb. Thus, after Procedure 2
we still have x0j aj≤y 0 ja, ∀ j ∈ N since we set x 0 jaj := x 0 jaj+ δ y0 jb x0j bjand y 0 ja := y 0 ja+ δ in the procedure. If Ml is a terminal cluster, y0i = 0 or y 0
i ≥ 1 for each i ∈ Ml after Procedure 3. Note
that P
i∈Nx0i j = 1, ∀ j ∈ N always hold in the procedure (Lemma 2.3). Thus, we have
x0 i j ≤y
0
i, ∀ j ∈ N for each location i with y
0 i ≥ 1.
Observe that in Procedure 2, only if δ= y0
jbthen we set y 0 jb:= 0. Meanwhile, if δ = y 0 jb, we always set x0
jbj:= 0 for each j ∈ N. In the step 4 of Procedure 3, if we set y
0
ja := 0, then
set x0
jaj:= 0 for each j ∈ N. Thus, x
0 i j ≤y
0
i, ∀ j ∈ N for each location i with y
0
i = 0.
Since each location is not far away from its cluster core, these transfer operations would not increase too much extra cost.
Lemma 2.6. (1). Let Ml be a non-terminal cluster. The demand of location j originally
served by jb ( jb ∈ Ml) must be served by core l after the procedure. And we have cl j ≤
2cjbj+ 2αCj.
(2). Let Mlbe a terminal cluster. If we move the demand of location j served by jbto
ja( ja, jb∈ Ml, a< b), we have cjaj≤ 3cjbj+ 4αCj.
Proof. The idea is similar as that in [23, 46]. (1) In the procedure, if Mlis a non-terminal
cluster, we close all (fractionally opened) facilities in Ml− {l}, and assign the demands
originally served by location jb ∈ Mlto the cluster core l.
Moreover, we have cl jb ≤ cN0( j) jb as N
0( j
b) = l is the closest location to jb in N0and
N0( j) ∈ N0. Then,
cl j ≤ cjbj+ cl jb
≤ cjbj+ cN0( j) jb
≤ cjbj+ (cjbj+ cN0( j) j)
≤ 2cjbj+ 2αCj,
where the first and third inequality hold by triangle inequalities; the last inequality follows by property 1a.
(2) If we move the demand of location j served by jbto ja, then we know cl ja ≤ cl jbby
the procedure. Note that we also have cl jb≤ cN0( j) jbfor this case. Then,
cjaj ≤ cjal+ cl jb+ cjbj ≤ 2cl jb+ cjbj ≤ 2cN0( j) j b+ cjbj ≤ 2(cN0( j) j+ cj j b)+ cjbj ≤ 4αCj+ 3cjbj,
where the first and fourth inequality hold by triangle inequalities; the last inequality follows
Let N1 = {i ∈ N | y0i ≥ 1} be the collection of locations with the opening value at least
1. Let N2 = {i ∈ N | y0i ∈ [
α−1
α , 1)} be the collection of locations with fractional opening
value in [α−1α , 1). Note that N2can also be written as {i ∈ N0| Zi∈ [α−1α , 1)}. That is, N2is
the collection of non-terminal cluster cores. Moreover, we have N1∪ N2⊇ N0.
Lemma 2.7. If |N2| − 1 < Pi∈N2y
0
i, we can get an integer solution with increasing the
capacity by factor 2, by opening facilities at locations in N1∪ N2. The total cost of the
obtained solution can be bounded by(3+ 4α)CLP.
Proof. If |N2| − 1 <Pi∈N2y 0 i, then |N2|= dPi∈N2y 0 ie as y 0
i < 1 for each i ∈ N2. Additionally,
since P i∈N1y 0 i ≤ k − P i∈N2y 0
i (by property 2b) and y
0
i ≥ 1 for each i ∈ N1, we have
|N1| ≤ bk −Pi∈N2y
0 ic.
Thus, if we only select locations in N1∪N2as facilities, then we open at most k facilities
as dP i∈N2y 0 ie+ bk − Pi∈N2y 0 ic= k.
Since y0i = 0 for each i < N1∪ N2, we havePi∈N1∪N2x
0
i j = 1, ∀ j ∈ N by Lemma 2.3(2)
and property 2c. That is,P
i∈N1∪N2djx
0
i j = djfor each j ∈ N. Thus, the demand of each
j ∈ Ncan be satisfied by assigning djx0i jto i ∈ N1∪ N2.
By Lemma 2.6, it is easy to see that the total cost of the obtained solution can be
bounded by (3+ 4α)CLP. By Lemma 2.5, we know for all i ∈ N, α−1α ≤y0i < 2 or y0i = 0;
andP
j∈Ndjx0i j≤ My0i. So, we increase the capacity by at most a factor of 2.
From now on, we only consider the following case.
Assumption 2.8. P
i∈N2y
0
i ≤ |N2| − 1.
Definition 2.9. We define new demands d0as follows. For each i ∈ N, set d0
i := Pj∈Ndjx0i j.
(Note that d0
i = 0 for each i ∈ N − (N1∪ N2).)
2.4.3
Step 3: Obtaining a {(
α−2α,
α−1α], [1, 2)}-solution
For each i ∈ N2, let s(i) be the nearest location to i in (N1∪ N2) − {i} (break ties arbitrarily).
Let Y = Pi∈N2y
0
i. Note that we only consider the case: Y ≤ |N2| − 1 by Assumption 2.8.
After this step we will obtain a solution (x0, ˆy) with α−2
α < ˆyi≤ α−1α , or 1 ≤ ˆyi< 2, or ˆyi= 0
for each i ∈ N.
In this step, initially we order all locations in N2 in nondecreasing order of d0ics(i)i.
Without loss of generality, assume that we get an order i1, . . . , iv. Next, for each i ∈ N − N2,
set ˆyi := y0i. For each i ∈ N2, set ˆyi := α−1α . Let Y0 := Y − Pi∈N2 ˆyi. Then, perform the
Section 2.4 An Improved Approximation Algorithm 23
Procedure 4. Determine new opening values for N2(Y ≤ |N2| − 1)
for r= v to 1 do
if Y0= 0 then
terminate; end
if Y0> 0 and Y0+ ˆyir < 1 then
set ˆyi1:= ˆyi1− (1 − Y
0− ˆy
ir), ˆyir := 1;
terminate; end
if Y0> 0 and Y0+ ˆyir ≥ 1 then
set ˆyir := 1 and update Y
0:= Y − P
i∈N2ˆyi;
end end
Remark 2.10. The Procedure 4 terminates at r > 1. Note that we only consider the
case Y ≤ |N2| − 1, i.e.,Pvt=1y 0
it ≤ |N2| − 1. For contradiction, suppose that the procedure
terminates at r = 1, which means ˆyit = 1 for t = 2, . . . , v. So, P
v
t=2ˆyit = v − 1 = |N2| − 1.
Moreover, we have ˆyi1 > 0, since initially we set ˆyi1 :=
α−1
α , α ≥ 4, and later we move
strictly less than 1α opening value from i1to other location t to make ˆyit := 1 if necessary.
Thus, we havePv
t=1ˆyit = v−1+ ˆyi1> |N2| − 1. Then since
P
i∈N2ˆyi= Pi∈N2y
0 i(Lemma 2.11), we getPv t=1y 0 it> |N2| − 1, a contradiction.
Lemma 2.11. After the above procedure, we have the following properties
[3a]. for all i ∈ N, α−2α < ˆyi ≤ α−1α , or1 ≤ ˆyi < 2, or ˆyi = 0; and only ˆyi1 can be in
(α−2α ,α−1α ), i.e., |{i ∈ N |α−2α < ˆyi<α−1α }| ≤ 1;
[3b]. for any location i ∈ N, if α−2α < ˆyi≤ α−1α , then di0= Pj∈Ndjx0i j≤ M;
[3c]. for any location i ∈ N, if 1 ≤ ˆyi< 2, then di0= Pj∈Ndjx0i j≤ M ˆyi;
[3d]. P
i∈N2ˆyi= Pi∈N2y
0 i;
P
i∈Nˆyi= Pi∈Ny0i≤ k;
[3e].P i∈N2(1 − ˆyi)d 0 ics(i)i≤ P i∈N2(1 − y 0 i)d 0 ics(i)i.
Proof. Property 3a. For each location i ∈ N − N2, we set ˆyi:= y0i. So, 1 ≤ ˆyi< 2 for each
i ∈ N1; ˆyi= 0 for each i ∈ N − (N1∪ N2).
For each location i ∈ N2, initially we set ˆyi:=α−1α . In the procedure, we have two cases
for location irin N2. First, if Y0> 0 and Y0+ˆyir≥ 1, we always set ˆyir := 1. So it is sufficient
to check the case Y0> 0 and Y0+ˆyir< 1. For this case, we set ˆyi1:= ˆyi1−(1−Y
0− ˆy
ir), ˆyir := 1
and terminates. Thus, we have ˆyit := 1 for t ≥ r, and ˆyit :=
α−1 α for 2 ≤ t < r. Moreover, we get α−2α < ˆyi1< α−1 α as 0 < 1 − Y0− ˆyir < 1
α (note that ˆyir=
α−1
α before we set it to be 1).
Thus, for all i ∈ N, α−2α < ˆyi ≤ α−1α , or 1 ≤ ˆyi < 2, or ˆyi= 0; and |{i ∈ N | α−2α < ˆyi < α−1
α }| ≤ 1.
Property 3b, 3c. By property 2a, for all i ∈ N, α−1α ≤y0
i< 2 or y 0
i = 0; and Pj∈Ndjx0i j ≤
My0 i.
Notice that if for location i we have α−2α < ˆyi≤α−1α after this procedure, then we know
α−1
α ≤y0i < 1. Otherwise, ˆyi= 0 or ˆyi ≥ 1, a contradiction. Moreover, we make no change
on x0. So we have ifα−2
α < ˆyi≤ α−1α , thenPj∈Ndjx0i j≤ My 0 i< M.