P-Center & The Power of Graphs For Geometric Optimizations course
Transcription
P-Center & The Power of Graphs For Geometric Optimizations course
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 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. ‘GOOD’ SERVICE Client needs this kind of 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 F of the universe U that minimizes maxjεC {miniεF dij}. p-center P=2 p-center P=2 Applications of p-center (1/2) Find appropriate location of branch offices. ◦ It could be cost-effective if the branch offices place as close as possible to any offices. 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 NPHard. Summary of known complexities Time complexities of algorithmic solutions to the Euclidean pcenter 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. INTERMISSION Metric p-center Input: G=(V,E) complete undirected graph with edge costs satisfying the triangle inequality u For any set S V and a vertex v, define connect(v,S): cost of cheapest edge from v to a vertex in S v 5 3 3 5 x 4 w Cost Function Satisfies Output: S V with |S| = p that minimizes max_v{connect(v,S)} Triangle Inequality u , v, w V c(u , w) c(u , v) c(v, w) 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 cost e1, e2, …, em Approach Let Gi be the subgraph obtained by deleting all6 edges that are costlier than ei from G 4 5 5 4 5 G 6 4 9 8 4 7 6 6 8 4 5 4 6 8 9 Dominating set a Input a b a b c b c d e d e c a d e a b c b c d e d e 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 4 7 b 4 5 8 b c 6 5 4 d 9 8 6 e a c 5 4 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 H D star clique 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 Algorithm 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 index j s.t. |Mi| ≦ p. 4. Return Mj. G 6 4 4 5 6 5 9 8 4 7 6 5 4 7 5 6 8 7 4 5 4 9 6 8 7 4 Algorithm Input: graph G, pos. int. p. 1. Construct G12, …, Gm2. 2. Find a maximal independent set Mi for each Gi2. 3. Find the smallest index j s.t. |Mj| ≦ p. 4. Return Mj. p=2 G 6 5 4 4 5 6 5 9 8 4 7 6 5 4 7 5 6 8 7 4 5 4 9 6 8 7 4 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 nondominated 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 Some edges does not appear in Gi. Gi Gi2 The edge exists in Gi2. In Gi, these two vertices are connected with a path length=2. 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. Weighted p-center p-center a Weighted p-center b 6 5 10 4 c 9 8 20 a d b 6 5 4 6 c a p =2 b 6 9 8 8 d 6 4 c 9 10 5 Weights on vertices a 10 W = 30. 5 d 4 c 9 6 a a b 5 4 c 8 6 8 d 6 6 9 b 6 d b 6 5 4 c 9 8 6 d Weighted p-center Weighted p-center is a generalization of Weighted p-center p-center. 1 a b 6 5 a 4 c 9 8 6 1 b 6 5 a d 4 b 6 c 5 4 p =2 c 9 8 d 8 6 d b 6 d 5 6 4 1 c W = 2. 9 8 d 6 a 4 9 a b 6 5 c 8 1 6 a 9 b 6 5 4 c 9 8 6 d 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. H2 H 15 20 a b s(a)=a, 15 20 a b c d 10 25 s(b)=a, s(c)=c, c d 10 25 s(d)=c. 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 graph Gi2. 3. Si={si(u): u belongs to Mi} 4. Find the minimum index j s.t. w(Si) <= W. 5. Return Sj. GIVES 3 APPROXIMATION Questions?