Presentation is loading. Please wait.

Presentation is loading. Please wait.

Facility Location with Service Installation Costs Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University.

Similar presentations


Presentation on theme: "Facility Location with Service Installation Costs Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University."— Presentation transcript:

1 Facility Location with Service Installation Costs Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University

2 SODA Talk, 01/2004 Facility Location F : set of facilities. D : set of clients. Facility i has facility cost f i. c ij : distance between points i and j. client facility

3 SODA Talk, 01/2004 Facility Location with Services F : set of facilities. D : set of clients. S : set of services={tan, green, pink}. Facility i has facility cost f i. c ij : distance between points i and j. Client j requires service s(j). f i,s : cost of installing service s at fac. i. facility client services

4 SODA Talk, 01/2004 2)Install a set of services S(i) on each open facility i. We want to: Cost = ∑ i  A f i + ∑ i  A, s  S(i) f i,s + ∑ j  D c i(j)j = facility opening cost + service installation cost + client assignment cost facility client services 3)Assign each client j to an open facility i(j) on which service s(j) is installed. 1)Choose a set A of facilities to open. open facility

5 SODA Talk, 01/2004 Related Work Only one service  uncapacitated facility location LP rounding: Shmoys, Tardos & Aardal; Chudak & Shmoys; Sviridenko. Primal-dual algorithms: Jain & Vazirani; Jain, Mahdian, Markakis, Saberi & Vazirani. Best approx. - Mahdian, Ye & Zhang: 1.52 Baev & Rajaraman consider related caching problem: No facility costs, capacity on the number of services that may be installed at a facility. Gave a 20.5- approx. algorithm, improved to 10 by (S). Ravi & Sinha consider similar model – multicommodity facility location. Give a log(| S |)-approx. algorithm.

6 SODA Talk, 01/2004 Our Results Give a 6-approx. primal-dual algorithm. Assume facilities can be ordered s.t. if i ≤ i’, then f i,s ≤ f i’,s for all services s. Special cases:  f i,s = h s – depends only on s  f i,s = g i – depends only on i General problem is set-cover hard. When f i,s = h s primal-dual gives a 5- approx. Improve ratio to 2.391 using LP rounding. Consider k-median variant: give a 11.6-approx. when f i,s = h s using primal-dual+Lagrangian relaxation.

7 SODA Talk, 01/2004 LP formulation Minimize ∑ i f i y i +∑ i,s f i,s y i,s +∑ j,i c ij x ij (Primal) subject to∑ i x ij ≥ 1  j x ij ≤ y i,s(j)  i, j x ij ≤ y i  i, j x ij, y i ≥ 0  i, j y i : indicates if facility i is open. y i,s :indicates if service s is installed on facility i. x ij : indicates if client j is assigned to facility i. s(j):service required by j.

8 SODA Talk, 01/2004 ∑ i,j  D(s) z ij ≤ f i,s  i, s The Dual D(s) = clients requiring service s ∑ i,j w ij ≤ f i  i c ij z ij w ij v j, w ij, z ij ≥ 0  i, j Maximize ∑ j v j subject to v j ≤ c ij + w ij + z ij  i, j vjvj j

9 SODA Talk, 01/2004 Algorithm Outline Based on the primal-dual method. Any feasible dual solution is a lower bound on OPT - Weak Duality. 1)Construct primal solution and dual solution simultaneously. 2)Bound cost of primal by c ● (dual value)  get a c-approx. Algorithm strongly motivated by the Jain-Vazirani algorithm. Notion of time, t. Initially, t=0, all dual variables v j, z ij, w ij are 0. No facility is open, no service is installed.

10 SODA Talk, 01/2004 f d,s = 2 for all services s. f c,green = 2. t=0 unfrozen client not open facility a c d b

11 SODA Talk, 01/2004 Raise all v j at rate 1. t=0 unfrozen client not open facility a c d b

12 SODA Talk, 01/2004 t=1 unfrozen client not open facility f d,s = 2 for all services s. f c,green = 2.

13 SODA Talk, 01/2004 t=2 unfrozen client not open facility f d,s = 2 for all services s. f c,green = 2. If v j ≥ c ij say that j is tight with i. j becomes tight with i and s(j) is not installed on i: start increasing z ij.

14 SODA Talk, 01/2004 t=3 unfrozen client not open facility f d,s = 2 for all services s. f c,green = 2. For some i, service s, ∑ i,j  D(s) z ij = f i,s : tentatively install s on i, start raising w ij for all j in D(s) tight with i.

15 SODA Talk, 01/2004 unfrozen client not open facility t=4 unfrozen client not open facility tentatively open facility frozen client f d,s = 2 for all services s. f c,green = 2. For some i, ∑ i,j w ij = f i : tentatively open i, if j is tight with i and s(j) is tentatively installed at i, freeze j.

16 SODA Talk, 01/2004 t=5 unfrozen client not open facility tentatively open facility frozen client f d,s = 2 for all services s. f c,green = 2. When all demands are frozen, process stops.

17 SODA Talk, 01/2004 The Primal-Dual process Keep raising all v j at rate 1 until: 1)j reaches facility i: if s(j) is not tentatively installed at i, increase z ij ; else, if i is not tentatively open, raise w ij ; otherwise freeze j. 2)For some i and s, ∑ i,j  D(s) z ij = f i,s : tentatively install s on i. If i is not tentatively open raise w ij for all j in D(s) tight with i, else freeze j. 3)For some i, ∑ i,j w ij = f i : tentatively open i. If j is tight with i and s(j) is tentatively installed at i, freeze j. Now only raise v j of unfrozen demands. Continue until all demands are frozen.

18 SODA Talk, 01/2004 Opening facilities a c d b X X Say i, i’ are dependent if there is client j s.t. w ij, w i’j > 0. Suppose O is a ≤ b ≤ c ≤ d. Consider tentatively open facilities in this order, pick a maximal independent subset. Open all these facilities – call this set F’. Let O : ordering on facilities. i tentatively open, not opened  there is i’ s.t. i’ ≤ i and i, i’ are dependent. Denote i’ = nbr(i).

19 SODA Talk, 01/2004 Installing services X X F’ = facilities opened.

20 SODA Talk, 01/2004 X X Installing services Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s. F’ = facilities opened.

21 SODA Talk, 01/2004 X X Installing services For each i in F’ s, if i  F’ install service s on i, otherwise install s on nbr(i). F’ = facilities opened. Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s.

22 SODA Talk, 01/2004 Installing services For each i in F’ s, if i  F’ install service s on i, otherwise install s on nbr(i). F’ = facilities opened. Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s. X X

23 SODA Talk, 01/2004 Installing services For each i in F’ s, if i  F’ install service s on i, otherwise install s on nbr(i). F’ = facilities opened. Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s. X X

24 SODA Talk, 01/2004 Installing services F’ = facilities opened. For each i in F’ s, if i  F’ install service s on i, otherwise install s on nbr(i). Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s. X X

25 SODA Talk, 01/2004 X X Installing services For each i in F’ s, if i  F’ install service s on i, otherwise install s on nbr(i). F’ = facilities opened. Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s.

26 SODA Talk, 01/2004 X X Installing services For each i in F’ s, if i  F’ install service s on i, otherwise install s on nbr(i). F’ = facilities opened. Consider service s. Let F s = tentatively open facilities where service s is tentatively installed. Say i, i’ are s-dependent if there is a client j  D(s) s.t. z ij, z i’j > 0. Carefully pick a maximal independent set F’ s  F s.

27 SODA Talk, 01/2004 Finally, Client j is assigned to the nearest open facility on which service s(j) is installed.

28 SODA Talk, 01/2004 Analysis sketch Let D’ = {j:  i in F’ s.t. w ij > 0}. Facility opening cost ≤ ∑ j  D’ v j. Service installation cost ≤ ∑ j v j. Can show that the assignment cost of j is at most 3v j if j  D’ and at most 5v j otherwise.

29 SODA Talk, 01/2004 Analysis sketch Let D’ = {j:  i in F’ s.t. w ij > 0}. Facility opening cost ≤ ∑ j  D’ v j. Service installation cost ≤ ∑ j v j. Can show that the assignment cost of j is at most 3v j if j  D’ and at most 5v j otherwise. Theorem: Total cost ≤ 6 ● ∑ j v j ≤ 6 ● OPT.

30 SODA Talk, 01/2004 Thank You.


Download ppt "Facility Location with Service Installation Costs Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University."

Similar presentations


Ads by Google