Download presentation
Presentation is loading. Please wait.
Published byWarren Foskey Modified over 9 years ago
1
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University
2
Theory Seminar, 10/2002 Connected Facility Location (ConFL) F : set of facilities. D : set of clients(demands). Facility i has facility cost f i. c ij : distance between i and j in V. client facility Graph G=(V,E), costs {c e } on edges and a parameter M ≥ 1. node
3
Theory Seminar, 10/2002 We want to : client facility Cost = i A f i + j D c i(j)j + M e T c e = facility opening cost + client assignment cost + cost of connecting facilities. 2)Assign each demand j to an open facility i(j). Steiner tree 3)Connect all open facilities by a Steiner tree T. open facility 1)Pick a set A of facilities to open.
4
Theory Seminar, 10/2002 Ravi & Selman : Look at related problem - connect facilities by a tour. Round optimal solution of an exponential size LP. Karger & Minkoff : Combinatorial algorithm with ‘large’ constant approx. ratio. Gupta, Kleinberg, Kumar, Rastogi & Yener : Also use LP rounding. Get a 9.001-approx. when F =V, f i = 0 for all i, and a 10.66-approx. in the general case. Previous Work
5
Theory Seminar, 10/2002 Our Results Give primal-dual algorithms with approx. ratios of 5 ( F =V, f i = 0) and 9 (general case). Use this to solve the Connected k-Median problem, and an edge capacitated version of ConFL.
6
Theory Seminar, 10/2002 Rent-or-buy problem Special case with F =V and f i = 0, i. Suppose we know a facility f that is open in an optimal solution. What does the solution look like ? Steiner tree. : cost of e = Mc e. Shortest paths : cost of e = c e (demand through e). f Open facility
7
Theory Seminar, 10/2002 Equivalently, Want to route traffic from clients to f by installing capacity on edges. 2 choices : I : Rent Capacity cost rented capacity (Shortest Paths) II : Buy Capacity fixed cost, ∞ capacity (Steiner Tree) M cost capacity ConFL single-sink buy-at-bulk problem with 2 cable types and sink f.
8
Theory Seminar, 10/2002 A Naive Algorithm 1)Run a -approx. algorithm for FL. 2)Build a Steiner tree on open facilities. This will just open a facility at each demand. Can be as bad as (M) times OPT. e.g., n 1 11 1 n Naive algorithm OPT Cost = 2M(n+1). Cost = 2M+2n. client node open facility f f
9
Theory Seminar, 10/2002 Need to cluster enough demand at a facility before opening it. Suppose in naive algorithm, each open facility serves ≥ M clients. Total cost of adding edges ≤ C * +C. Opt. Steiner tree on ≤ S * +C * +C. S ≤ 2(S * +C * +C) get an O(1)-approx. ≥ M C S*S* C*C* OPT C *, S * : assignment, Steiner cost of OPT.
10
Theory Seminar, 10/2002 An Integer Program x ij = 1 if demand j is assigned to i. z e = 1 if edge e is included in the Steiner tree. Min. j,i c ij x ij + M e c e z e (primal) s.t. i x ij ≥ 1 j i S x ij ≤ e (S) z e S V : f S, j x ij, z e {0, 1}(1) Relax (1) to x ij, z e ≥ 0 to get an LP. f S j
11
Theory Seminar, 10/2002 What is the dual? v j amount j is willing to ‘pay’ to route its demand to f. Let y S = j y S,j. {y S } moat packing around facilities. v j ≤ c ij + S:i S,f S y S,j Any feasible dual solution is a lower bound on OPT – Weak Duality. Max. j v j c ij j f S:e (S),f S y S ≤ Mc e
12
Theory Seminar, 10/2002 The Primal-Dual method Bar-Yehuda & Even : First primal-dual approx. algorithm for vertex cover. Agrawal, Klein & Ravi : Gave a more sophisticated algorithm for the generalized Steiner problem. Goemans & Williamson : Extended the schema to a large class of network design problems. Jain & Vazirani : Used a different approach to solve the facility location problem and its variants. 1)Construct primal soln. and dual soln. simultaneously. 2)Bound primal cost by c (dual soln.) get a c-approx. algorithm.
13
Theory Seminar, 10/2002 A Primal-Dual algorithm 1)Decide which facilities to open, cluster demands around open facilities. Construct a primal soln. and dual soln. (v,y) simultaneously. 2)Build a Steiner tree on open facilities. The following will hold after 1) : (v,y) is a feasible dual solution. j is assigned to i(j) s.t. c i(j)j ≤ 3v j. Each open facility i has ≥ M clients, {j}, assigned to it s.t. c ij ≤ v j.
14
Theory Seminar, 10/2002 Analysis Suppose the 3 properties hold. Let A be the set of facilities opened, D i = {j assigned to i : c ij ≤ v j } for i A. Then, |D i | ≥ M. Let D 1 = U i A D i. can amortize the cost against demands in D i. ≥ M DiDi So, S ≤ 2(S * + C * + j D 1 v j ). i C ≤ j D 1 v j + j D 1 3v j.
15
Theory Seminar, 10/2002 Need to cluster enough demand at a facility before opening it. Suppose in naive algorithm, each open facility serves ≥ M clients. Total cost of adding edges ≤ C * +C. Opt. Steiner tree on ≤ S * +C * +C. S ≤ 2(S * +C * +C) get an O(1)-approx. ≥ M C S*S* C*C* OPT C *, S * : assignment, Steiner cost of OPT.
16
Theory Seminar, 10/2002 Analysis Suppose the 3 properties hold. Let A be the set of facilities opened, D i = {j assigned to i : c ij ≤ v j } for i A. Then, |D i | ≥ M. Let D 1 = U i A D i. Total cost ≤ 2(S * + C * ) + 3 j D v j ≤ 5 OPT. can amortize the cost against demands in D i. ≥ M DiDi So, S ≤ 2(S * + C * + j D 1 v j ). i C ≤ j D 1 v j + j D 1 3v j.
17
Theory Seminar, 10/2002 Phase 1 Simplifying assumption – can open a facility anywhere along an edge. locations Notion of time, t. Start at t=0. Initially v j = 0, j. f is tentatively open, all other locations are closed. Say j is tight with i (has reached i) if v j ≥ c ij. S j is set of vertices j is tight with.
18
Theory Seminar, 10/2002 Keep raising v j s until : 1)There is a closed location i with which M demands become tight : tentatively open i. Freeze all these M demands. 2)j reaches a tentatively open location : freeze j. Now only raise v j of unfrozen demands. Continue this process until all demands are frozen. Raise all v j at rate 1. Also raise y S j,j at same rate.
19
Theory Seminar, 10/2002 Execution of the algorithm not open location tentatively open location unfrozen demand M=2, time t=0 f M=2, time t=1
20
Theory Seminar, 10/2002 Execution of the algorithm M=2, time t=2 f not open location tentatively open location unfrozen demand frozen demand
21
Theory Seminar, 10/2002 Execution of the algorithm M=2, time t=3 f frozen demand not open location tentatively open location unfrozen demand j v j =t=3
22
Theory Seminar, 10/2002 Opening locations Let A’= set of tentatively opened i. D i = {j : j is tight with i } for i A’. t i = time when i was tent’vely opened. Note, |D i | ≥ M. But the D i s may not be disjoint. 4 2 3 1 0 f Say i, l in A’ are dependent if D i D l . Consider locations in order of t i. If A U {i} is independent add i to A. Here order is 0,1,2,3,4 so A={0,1,3}. Initially A = Pick an indepdt. set of locations, A A’ and open these.
23
Theory Seminar, 10/2002 Assigning clients Consider client j. j k i l i is tentatively open and caused j to get frozen j is tight with i. i and l are dependent, t l ≤ t i and l is open : assign j to l. 2) open location tentatively open location, not open j is tight with some open i : assign j to i. At most 1 open i may be tight with j. 1) j i
24
Theory Seminar, 10/2002 i(j) = location that j is assigned to. 1)c i(j)j ≤ v j. 2)c i(j)j ≤ v j + 2v k. v j ≥ t i since j freezes at or after time t i. Also v k ≤ t i. So v k ≤ v j and c i(j)j ≤ 3v j. For every open i, all clients in D i are assigned to i. |D i | ≥ M, so at least M demands {j} are assigned to i with c ij ≤ v j.
25
Theory Seminar, 10/2002 Feasibility (v,y) : dual solution v j ≤ c ij + S:i S,f S y S,j i f, j Once j reaches i, set S j includes i and y S j,j is increasing at same rate as v j. j freezes when it reaches f. vjvj c ij j i S:i S,f S y S,j SjSj
26
Theory Seminar, 10/2002 j S:e (S),f S y S,j ≤ Mc e e S y S,j = portion of in j’s j ( S y S,j ) = p e (# of crossing p) M=3 e ≤ M at any location ≤ p e M = Mc e.
27
Theory Seminar, 10/2002 Done? Not quite. Could have opened non-vertex locations. Fix : Move all such locations to vertices. Cost only decreases ! e.g., ≥ M So, get a 5-approx. for rent-or-buy.
28
Theory Seminar, 10/2002 The General Case F V : Cannot open a facility everywhere. Facilities have costs : Want to open cheap facilities. Modified Phase 1 1)Dual variables, v j, also pay for opening facilities. 2)Cluster ≥ M demands around terminal locations, open facilities ‘near’ terminal locations. Theorem : There is a 9-approx. algorithm for the general case.
29
Theory Seminar, 10/2002 Let A be the set of terminal locations, D i = {j : c ij ≤ v j } for i A. We ensure |D i | ≥ M. Let D 1 = U i A D i. Total cost ≤ 2(S * + C * ) + 7 j D v j ≤ 9 OPT. ≥ M DiDi S ≤ j D 1 2v j + Can show, F + C ≤ j D 1 3v j + j D 1 7v j. ≤ 2 min j D i v j open facility 2(S * + C * + j D 1 v j ). i
30
Theory Seminar, 10/2002 Open Questions 1)Better approximation : only know an integrality gap of 2 from Steiner tree. 2)Multicommodity buy-at-bulk. Multiple source-sink pairs, route flow from source to sink. Have different cable types. Kumar et al. give a const. approx. for multicommodity rent-or-buy. 3)Unrelated metrics : Min. i f i y i + j,i c ij x ij + e d e z e. Can reduce from group Steiner tree – get a O(log 2 n) LB. Matching UB?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.