300 likes | 472 Views
Facility Location with Service Installation Costs. Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University. Facility Location. facility. client. F : set of facilities . D : set of clients . Facility i has facility cost f i .
E N D
Facility Location with Service Installation Costs Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University
Facility Location facility client F : set of facilities. D : set of clients. Facility i has facility costfi. cij : distance between points i and j. SODA Talk, 01/2004
Facility Locationwith Services facility client services F : set of facilities. D : set of clients. S : set of services={tan, green, pink}. Facility i has facility costfi. cij : distance between points i and j. Client j requires service s(j). fi,s : cost of installing service s at fac. i. SODA Talk, 01/2004
Choose a set A of facilities to open. • Install a set of services S(i) on each open facility i. • Assign each client j to an open facility i(j) on which service s(j) is installed. open facility We want to: Cost = ∑iÎA fi + ∑iÎA, sÎS(i) fi,s + ∑jÎDci(j)j = facility opening cost + service installation cost + client assignment cost facility client services SODA Talk, 01/2004
Related Work Only oneservice º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. SODA Talk, 01/2004
Our Results • Give a 6-approx. primal-dual algorithm. Assume facilities can be ordereds.t. if i ≤ i’, then fi,s ≤ fi’,s for all services s. Special cases: • fi,s = hs – depends only on s • fi,s = gi – depends only on i General problem is set-cover hard. • When fi,s = hs primal-dual gives a 5-approx. Improve ratio to 2.391 using LP rounding. • Consider k-median variant: give a 11.6-approx. when fi,s = hs using primal-dual+Lagrangian relaxation. SODA Talk, 01/2004
LP formulation Minimize ∑i fiyi+∑i,s fi,syi,s+∑j,i cijxij (Primal) subject to ∑i xij≥ 1 j xij ≤ yi,s(j)i, j xij ≤ yi i, j xij, yi≥ 0 i, j yi : indicates if facility i is open. yi,s: indicates if service s is installed on facility i. xij : indicates if client j is assigned to facility i. s(j) : service required by j. SODA Talk, 01/2004
vj wij zij Maximize ∑j vj subject to vj ≤ cij + wij + ziji, j vj, wij, zij≥ 0 i, j The Dual j cij D(s) = clients requiring service s ∑i,jÎD(s) zij ≤ fi,si, s ∑i,j wij ≤ fi i SODA Talk, 01/2004
Algorithm Outline Based on the primal-dual method. Any feasible dual solution is a lower bound on OPT - Weak Duality. • Construct primal solution and dual solution simultaneously. • 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 vj, zij, wij are 0. No facility is open, no service is installed. SODA Talk, 01/2004
fd,s = 2 for all services s. fc,green= 2. t=0 d a c b unfrozen client not open facility SODA Talk, 01/2004
d a c b Raise all vjat rate 1. t=0 unfrozen client not open facility SODA Talk, 01/2004
fd,s = 2 for all services s. fc,green= 2. t=1 unfrozen client not open facility SODA Talk, 01/2004
If vj ≥ cijsay that j is tight with i. j becomes tight with i and s(j) is not installed on i: start increasing zij. fd,s = 2 for all services s. fc,green= 2. t=2 unfrozen client not open facility SODA Talk, 01/2004
For some i,service s, ∑i,jÎD(s) zij = fi,s: tentatively installs on i, start raising wijfor all j in D(s) tight with i. fd,s = 2 for all services s. fc,green= 2. t=3 unfrozen client not open facility SODA Talk, 01/2004
For some i, ∑i,j wij = fi: tentatively openi, if j is tight with i and s(j) is tentatively installed at i, freeze j. unfrozen client not open facility tentatively open facility frozen client fd,s = 2 for all services s. fc,green= 2. t=4 unfrozen client not open facility SODA Talk, 01/2004
When all demands are frozen, process stops. fd,s = 2 for all services s. fc,green= 2. t=5 unfrozen client not open facility tentatively open facility frozen client SODA Talk, 01/2004
The Primal-Dual process Keep raising all vjat rate 1 until: • j reaches facility i: if s(j) is not tentatively installed at i, increase zij; else, if i is not tentatively open, raise wij; otherwise freezej. • For some i and s, ∑i,jÎD(s) zij = fi,s: tentatively installs on i. If i is not tentatively open raise wijfor all j in D(s) tight with i, elsefreeze j. • For some i, ∑i,j wij = fi : tentatively openi. If j is tight with i and s(j) is tentatively installed at i,freeze j. Now only raise vjof unfrozen demands. Continue until all demands are frozen. SODA Talk, 01/2004
X Let O: ordering on facilities. X 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 setF’. i tentatively open, not openedÞ there is i’ s.t. i’ ≤ i and i, i’ are dependent. Denote i’ = nbr(i). Opening facilities Say i, i’ are dependent if there is client j s.t. wij, wi’j > 0. a d c b SODA Talk, 01/2004
X X Installing services F’ =facilities opened. SODA Talk, 01/2004
X X Installing services F’ =facilities opened. Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. SODA Talk, 01/2004
X X Installing services F’ =facilities opened. Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. For each i in F’s, if iÎF’ install service s on i, otherwise install s on nbr(i). SODA Talk, 01/2004
Installing services F’ =facilities opened. X X Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. For each i in F’s, if iÎF’ install service s on i, otherwise install s on nbr(i). SODA Talk, 01/2004
Installing services F’ =facilities opened. X X Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. For each i in F’s, if iÎF’ install service s on i, otherwise install s on nbr(i). SODA Talk, 01/2004
Installing services F’ =facilities opened. X X Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. For each i in F’s, if iÎF’ install service s on i, otherwise install s on nbr(i). SODA Talk, 01/2004
X X Installing services F’ =facilities opened. Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. For each i in F’s, if iÎF’ install service s on i, otherwise install s on nbr(i). SODA Talk, 01/2004
X X Installing services F’ =facilities opened. Consider service s. Let Fs= 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. zij, zi’j > 0. Carefully pick a maximal independent setF’sÍ Fs. For each i in F’s, if iÎF’ install service s on i, otherwise install s on nbr(i). SODA Talk, 01/2004
Finally, Client j is assigned to the nearest open facility on which service s(j) is installed. SODA Talk, 01/2004
Analysis sketch Let D’ = {j: $i in F’ s.t. wij > 0}. Facility opening cost≤∑jÎD’vj. Service installation cost≤∑j vj. Can show that the assignment cost of j is at most 3vjif jÎD’ and at most 5vjotherwise. SODA Talk, 01/2004
Analysis sketch Let D’ = {j: $i in F’ s.t. wij > 0}. Facility opening cost≤∑jÎD’vj. Service installation cost≤∑j vj. Can show that the assignment cost of j is at most 3vjif jÎD’ and at most 5vjotherwise. Theorem:Total cost ≤ 6●∑j vj ≤ 6●OPT. SODA Talk, 01/2004
Thank You. SODA Talk, 01/2004