Facility location problem
The study of facility location problems , also known as location analysis, is a branch of operations research and computational geometry concerned with the optimal placement of facilities to minimize transportation costs while considering factors like avoiding placing hazardous materials near housing, and competitors' facilities. The techniques also apply to cluster analysis.
Minimum facility location
A simple facility location problem is the Weber problem, in which a single facility is to be placed, with the only optimization criterion being the minimization of the weighted sum of distances from a given set of point sites. More complex problems considered in this discipline include the placement of multiple facilities, constraints on the locations of facilities, and more complex optimization criteria.In a basic formulation, the facility location problem consists of a set of potential facility sites L where a facility can be opened, and a set of demand points D that must be serviced. The goal is to pick a subset F of facilities to open, to minimize the sum of distances from each demand point to its nearest facility, plus the sum of opening costs of the facilities.
The facility location problem on general graphs is NP-hard to solve optimally, by reduction from the set cover problem. A number of approximation algorithms have been developed for the facility location problem and many of its variants.
Without assumptions on the set of distances between clients and sites, the problem is known as non-metric facility location and can be approximated to within a factor O. This factor is tight, via an approximation-preserving reduction from the set cover problem.
If we assume distances between clients and sites are undirected and satisfy the triangle inequality, we are talking about a metric facility location problem. The MFL is still NP-hard and hard to approximate within factor better than 1.463. The currently best known approximation algorithm achieves approximation ratio of 1.488.
Minimax facility location
The minimax facility location problem seeks a location which minimizes the maximum distance to the sites, where the distance from one point to the sites is the distance from the point to its nearest site. A formal definition is as follows:Given a point set P ⊂ ℝd, find a point set S ⊂ ℝd, |S| = k, so that maxp ∈ P is minimized.
In the case of the Euclidean metric for k = 1, it is known as the smallest enclosing sphere problem or 1-center problem. Its study traced at least to the year of 1860. see smallest enclosing circle and bounding sphere for more details.
NP hardness
It has been proved that exact solution of k-center problem is NP hard.Approximation to the problem was found to be also NP hard when the error is small. The error level in the approximation algorithm is measured as an approximation factor, which is defined as the ratio between the approximation and the optimum. It's proved that the k-center problem approximation is NP hard when approximation factor is less than 1.822 or 2.
Algorithms
Exact solverThere exist algorithms to produce exact solutions to this problem. One exact solver runs in time.
1 + ε approximation
1 + ε approximation is to find a solution with approximation factor no greater than 1 + ε. This approximation is NP hard as ε is arbitrary. One approach based on the coreset concept is proposed with execution complexity of .
As an alternative, another algorithm also based on coresets is available. It runs in. The author claims that the running time is much less than the worst case and thus it's possible to solve some problems when k is small.
Farthest-point clustering
For the hardness of the problem, it's impractical to get an exact solution or precise approximation. Instead, an approximation with factor = 2 is widely used for large k cases. The approximation is referred to as the farthest-point clustering algorithm, or farthest-first traversal. The algorithm is quite simple: pick any point from the set as one center; search for the farthest point from remaining set as another center; repeat the process until k centers are found.
It is easy to see that this algorithm runs in linear time. As approximation with factor less than 2 is proved to be NP hard, FPC was regarded as the best approximation one can find.
As per the performance of execution, the time complexity is later improved to O with box decomposition technique.
Maxmin facility location
The maxmin facility location or obnoxious facility location problem seeks a location which maximizes the minimum distance to the sites. In the case of the Euclidean metric, it is known as the largest empty sphere problem. The planar case may be solved in optimal time Θ.Integer programming formulations
Facility location problems are often solved as integer programs. In this context, facility location problems are often posed as follows: suppose there are facilities and customers. We wish to choose which of the facilities to open, and which facilities to use to supply the customers, in order to satisfy some fixed demand at minimum cost. We introduce the following notation: let denote the cost of opening facility, for. Let denote the cost to ship a product from facility to customer for and. Let denote the demand of customer for. Further suppose that each facility has a maximum output. Let denote the maximum amount of product that can be produced by facility, that is, let denote the capacity of facility. The remainder of this section followsCapacitated facility location
In our initial formulation, introduce a binary variable for, where if facility is open, and otherwise. Further introduce the variable for and which represents the fraction of the demand filled by facility. The so-called capacitated facility location problem is then given byNote that the second set of constraints ensure that if, that is, facility isn't open, then for all, that is, no demand for any customer can be filled from facility.
Uncapacitated facility location
A common case of the capacitated facility location problem above is the case when for all. In this case, it is always optimal to satisfy all of the demand from customer from the nearest open facility. Because of this, we may replace the continuous variables from above with the binary variables, where if customer is supplied by facility, and otherwise. The uncapacitated facility location problem is then given bywhere is a constant chosen to be suitably large. The choice of can affect computation results—the best choice in this instance is obvious: take. Then, if, any choice of the will satisfy the second set of constraints.
Another formulation possibility for the uncapacitated facility location problem is to disaggregate the capacity constraints. That is, replace the constraintswith the constraintsIn practice, this new formulation performs significantly better, in the sense that it has a tighter Linear programming relaxation than the first formulation. Notice that summing the new constraints together yields the original big- constraints. In the capacitated case, these formulations are not equivalent. More information about the uncapacitated facility location problem can be found in Chapter 3 of "Discrete location theory".
Applications to Clustering
A particular subset of cluster analysis problems can be viewed as facility location problems. In a centroid-based clustering problem, the objective is to partition data points into equivalence classes—often called colors—such that points of the same color are close to one another.To see how one might view a centroid-based clustering problem as a facility location problem, view each data point in the former as a demand point in the latter. Suppose that the data to be clustered are elements of a metric space . In the facility location problem that we are constructing, we permit facilities to be placed at any point within this metric space ; this defines the set of allowed facility locations. We define the costs to be the pairwise distances between location-demand point pairs. In a centroid-based clustering problem, one partitions the data into equivalence classes each of which has a centroid. Let us see how a solution to our constructed facility location problem also achieves such a partition. A feasible solution is a non-empty subset of locations. These locations in our facility location problem comprise a set of centroids in our centroid-based clustering problem. Now, assign each demand point to the location that minimizes its servicing-cost; that is, assign the data point to the centroid . This achieves the partitioning provided that the facility location problem's costs are defined such that they are the images of the centroid-based clustering problem's distance function.
The popular algorithms textbook Algorithm Design provides a related problem-description and an approximation algorithm. The authors refer to the metric facility location problem as the center selection problem, thereby growing the list of synonyms.
Furthermore, see that in our above definition of the facility location problem that the objective function is general. Specific choices of yield different variants of the facility location problem, and hence different variants of the centroid-based clustering problem. For example, one might choose to minimize the sum of distances from each location to each of its assigned demand points, or one might elect to minimize the maximum of all such distances.