Presentation is loading. Please wait.

Presentation is loading. Please wait.

Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.

Similar presentations


Presentation on theme: "Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University."— Presentation transcript:

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?


Download ppt "Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University."

Similar presentations


Ads by Google