520 likes | 702 Views
P-Center & The Power of Graphs A part of the facility location problem set. By Kiril Yershov and Alla Segal For Geometric Optimizations course Fall 2010. The P-Center problem.
E N D
P-Center & The Power of GraphsA part of the facility location problem set By Kiril Yershov and Alla Segal For Geometric Optimizations course Fall 2010
The P-Center problem • Given n cities and the distances between all pairs of cities, we aim to choose p cities as centers so that the furthest distance of a city from a center is minimized. • A problem from the facility location problems set.
What is facility locating? Facility provides some kind of service. Client needs this kind of service. ‘GOOD’ SERVICE
Location problems in most general form can be stated as follows: • a set of clients originates demands for some kind of goods or services. • the demands of the customers must be supplied by one or more facilities. • the decision process must establish where to locate the facilities. • issues like cost reduction, demand capture, equitable service supply, fast response time etc drive the selection of facility placement.
The basic elements of location models: • a universe, U, from which a set C of client input positions is selected, • a distance metric, d: U x U → R+, defined over the universe R+, • an integer, p ≥ 1, denoting the number of facilities to be located, and • an optimization function g that takes as input C a set of client positions and p facility positions and returns a function of their distances as measured by the metric d.
Problem statement • Select a set F of p facility positions in universe U that minimizes g(F,C).
Models of the universe of clients and facilities • Continuous space • Universe is defined as a region, such that clients and facilities may be placed anywhere within the continuum, and the number of possible locations is uncountably infinite.
Models of the universe of clients and facilities • Discrete space • Universe is defined by a discrete set of predefined positions. • Network space • Universe is defined by an undirected weighted graph. Client positions are given by the vertices. Facilities may be located anywhere on the graph.
Where should the radio tower be located? • Tower may be positioned anywhere – (continuous) • Tower may be positioned in some available slots – (discrete) • Tower may be located on the roadside – (network)
Distance metric • Distance metric between two elements of the universe further differentiates between specific problems • Euclidean, Manhattan, etc. • Network distance
P-Centers:Optimization function is maximum • The objective function is the most significant characterization of a facility location problem. • p-center problem • Given a universe U, a set of points C, a metric d, and a positive integer p, a p-center of C is a set of p points Fof the universe U that minimizes • maxjεC {miniεFdij}.
p-center • P=2
p-center • P=2
Find appropriate location of branch offices. It could be cost-effective if the branch officesplace as close as possible to any offices. Applications of p-center (1/2)
Euclidean p-center 3-center
Reminder • NP – “nondeterministic polynomial time” • NP-Problem is a problem that its possible solution can be verified in polynomial time. • NP-Hard Problem is at least as hard as the hardest problems in NP. • NP-Complete problem is both NP and NP-Hard.
Summary of known complexities Time complexities of algorithmic solutions to the Euclidean p-center problem • Drezner 1984, Hoffmann 2005 (arbitrary p and d = 1) • Megiddo 1983 (p=1, d=2), Linear programming. • Agarwal et al 1993, Chazelle et al. 1995 (p = 1 and d fixed) • Chan 1999 (p=2, d=2) • Agarwal and Sharir 1998 (p=2, d arbitrary) • Agarwal and Procopuic 1998 (p fixed, d arbitrary)
P-Center is NP-Hard • Kariv and Hakimi proved in ‘79 that p-center problem is NP-Hard. • We will show a stronger claim: P-center best possible approximation is of factor 2.
Approximation • PTAS: a C-approximation, where C=1+e for any e>0 • We saw some problems with PTAS. • Does every problem has a PTAS?
Best Possible Approximation • A polynomial c-approximation algorithm is called “Best Possible” if there is no algorithm with a better approximation value. • Formally: c-approximation is best possible if the problem of approximation within c-e is NP-Complete for any e>0, but that limit can be reached in polynomial time.
Best Possible Approximation • Such best possible results were found only for bottleneck problems.
Bottleneck Problems • The solution has some value that needs to be minimized or maximized. • The value of the solution is the weight of one of the edges of the graph. • We can add one smallest edge at a time and examine the resulting graph for the required condition
P-Center: Factor 2 is best possible • LEMMA: The problem of approximating P-Center (with triangle inequality) within a factor of (2-e) is NP-Complete for any e>0. • Proof: By reduction from the dominating set problem.
Factor 2 is best possible - Proof • Dominating set problem: • To determine whether in a given graph there is a set of vertices DS of size ≤ P that “dominates” all vertices, i.e. such that all vertices are in DS or adjacent to DS. • It is well known and proven that Dominating Set is NP-Hard.
Factor 2 is best possible - Proof • Reduction: • Given a Dominating set problem G=(V,E), we construct a complete graph with the following weights: • w(e) = 1 if e is from E • w(e) = 2 if e is not from E • In this complete graph the existence of p-center is equivalent to the existence of a dominating set of size ≤ p in G.
u v 5 3 3 5 x w 4 Cost Function Satisfies Triangle Inequality Metric p-center • Input: G=(V,E) complete undirected graph with edge costs satisfying the triangle inequality • For any set S V and a vertex v, define connect(v,S): cost of cheapest edge from v to a vertex in S • Output: S V with |S| = p that minimizes max_v{connect(v,S)}
A 2-approximation algorithm • The value of the solution is the weight of one of the edges of the graph. • Sort the edges in nondecreasing coste1, e2, …, em
5 9 8 G 6 4 7 Approach Let Gi be the subgraph obtained by deleting all edges that are costlier than ei from G 6 4 4 4 5 5 5 6 6 9 8 6 8 4 4
Dominating set a a b c b c Input a d e d e b c a a b c b c d e d e d e
4 5 7 8 6 5 4 9 8 6 Equivalence between… • p-center • Any weight of edge between a vertex and some chosen vertex is not more than OPT. • Dominating set of Gi • Any vertex is connected to some chosen vertex by a edge with weight less or equal than OPT. cost (ei*) = OPT. a a 4 b c b c 5 4 d e d e
Crucial observation • If OPT = cost(ei) for some i • Then • Gi must have a dominating set of size p • Of course, we don’t know how to compute dominating sets optimally • But we can compute a lower bound on OPT and utilize this lower bound to test Gi
Power of Graphs • A major technique for finding best possible approximations for bottleneck problems. • Given a graph G=(V,E) • the square graph G2=(V,E2) • E2 is the set of all edges between vertices that have a path of length 1 or 2 between them. • Weight is set accordingly. • Gt is similar with edges between vertices that have a path of length up to t.
Lemma • Given a graph H, let H^2 denote a graph containing an edge (u,v) whenever H has a path of length 2 between u and v • Given a graph H, let I be an independent set in H^2. Then |I| dom(H) = size of the minimum dominating set in H
Square of a graph H H2 H’ H’2 H’’ H’’2
Proof • Let D be the dominating set in H • H contains |D| stars • Each of these stars will be a clique in H^2 • Any independent set can pick at most one vertex from each clique star clique H D
p-center algorithm • Construct G1^2, G2^2, …, Gm^2 • Compute a maximal independent set Mi for each Gi^2 • Find the smallest index i such that|Mi| p • Call this index j • Return Mj
5 9 8 G 6 4 7 Algorithm 5 5 • Input: graph G, pos. int.p. • 1. Construct G12, …, Gm2. • 2. Find a maximal independent set Mi for each Gi2. • 3. Find the smallest indexj s.t. |Mi| ≦p. • 4. Return Mj. 6 4 4 4 5 5 5 6 6 9 8 6 8 4 4 4 7 7 7
5 9 8 G 6 4 7 Algorithm 5 5 • Input: graph G, pos. int.p. • 1. Construct G12, …, Gm2. • 2. Find a maximal independent set Mi for each Gi2. • 3. Find the smallest indexj s.t. |Mj| ≦p. • 4. Return Mj. 6 4 4 4 5 5 5 6 6 9 8 6 8 4 4 4 7 7 7 p=2
Analysis • cost(ej) OPT • ej : index chosen by the algorithm • OPT: Cost incurred by the optimum p-center solution • Proof: • For all i < j, we have |Mi| > p • But then dom(Gi) |Mi| > p • So OPT is more than cost(ei)
2 approximation proof • First observe that every maximal independent set is also a dominating set • Suppose not. Then there must be a non-dominated vertex. This vertex can be added to the independent set contradicting maximality • So, our independent set in Gi^2 is also a dominating set in Gi^2 • But not necessarily in Gi. However,
2 approximation proof • Dominating set = set of centers of stars in Gi2. Gi2 Gi Gi2 In Gi, these two vertices are connected with a path length=2. The edge exists in Gi2. Some edges does not appear in Gi.
But what is the cost? • Suppose u is a vertex in Mj and v is adjacent to u • distance(u,v) <= 2cost(ej) <= 2*OPT • by triangle inequality • Conclusion: Cost of our solution is at most twice the cost of optimal solution.
a b 6 5 4 9 8 c d 6 a b 6 5 4 9 8 c d 6 a b 6 5 4 9 8 c d 6 Weighted p-center p-center Weighted p-center 10 20 Weights on vertices a b 6 5 4 9 8 c d a b 6 a b p =2 6 6 10 10 5 4 5 4 W = 30. 9 8 9 8 c d c d 6 6
a b 6 5 4 9 8 c d 6 a a b b 6 6 5 5 4 4 9 9 8 8 c c d d 6 6 Weighted p-center • Weighted p-center is a generalization of p-center. Weighted p-center 1 1 a b 6 5 4 a b a b 6 6 9 8 c d 5 4 5 4 6 1 p =2 1 9 8 9 8 c d c d W = 2. 6 6
Not exactly the same • p-center • # vertices in an independent set in H2≦ # vertices in a minimal dominating set of H • Weighted p-center • Sum of weights of vertices in an independent set in H2 ≦ Sum of weights of vertices in a minimal dominating set of H ? H2 H 10 10 10 10 20 30 20 30
Adjacent vertices with min. weight • s(u): vertex adjacent to u in H with the minimum weight. • u can be s(u). • Not in H2. H H2 15 20 15 20 s(a)=a, a b a b s(b)=a, s(c)=c, c d c d s(d)=c. 10 25 10 25
Now the approach is similar • Can be proved that weight(I) <= weight(D). • Weight(I) = {s(u)|u in I}, I is for H^2 • Weight(D) = sum of weights of nodes in D. D is for H • 1. Construct G12, …, Gm2. • 2. Compute a maximal independent set, Mi, in each graphGi2. • 3. Si={si(u): u belongs to Mi} • 4. Find the minimum index js.t. w(Si) <= W. • 5. Return Sj. • GIVES 3 APPROXIMATION