330 likes | 520 Views
Fault Tolerant Facility Location. Chaitanya Swamy David Shmoys Cornell University. Metric Facility Location. 2. facility. F : set of facilities . D : set of clients . Facility i has facility cost f i . c ij : distance between any i and j in D F .
E N D
Fault Tolerant Facility Location Chaitanya Swamy David Shmoys Cornell University
Metric Facility Location 2 facility F : set of facilities. D : set of clients. Facility i has facility costfi. cij : distance between any i and j in D F. Client j wants to be connected to rjdistinct facilities. 3 client 2 Theory Seminar, 04/2002
facility We want to : 1) Pick a set S of facilities to open. 2) Assign each client j to rj open facilities. Goal: Minimizetotal facility cost ofS + sum of distances(service cost). 2 open facility 3 2 client Theory Seminar, 04/2002
Previous Work • rj=1 : • LP rounding : Shmoys, Tardos & Aardal; Chudak & Shmoys; Sviridenko. • Primal-dual algorithms : Jain & Vazirani; Markakis, Mahdian, Saberi & Vazirani(MMSV01); Jain, Mahdian & Saberi(JMS02). • Local search : Koropulu, Plaxton & Rajaraman; Guha & Khuller; Charikar & Guha. • Best approx.-Mahdian, Ye & Zhang (MYZ02) : 1.52. Theory Seminar, 04/2002
Previous Work (contd.) • Uniform requirements rj=r : • Markakis et al. (MMSV01) : 1.861. • Non-uniform requirements, rj : • Jain & Vazirani :O(log rmax). • Guha, Meyerson & Munagala :2.47. • Our Results: • Non-uniform rj: get a 2.076-approx. • rj=r : can extend JMS02, MYZ02 to get a 1.52-approx. Theory Seminar, 04/2002
LP Formulation Primal : Min.i fiyi + j,i cijxij s.t. i xij≥ rjj xij ≤ yi i, j yi ≤ 1 i xij ≥ 0, yi ≥ 0 i, j Theory Seminar, 04/2002
LP Formulation (contd.) Dual : Max. j rjvj - i zi s.t. vj ≤ wij + ciji, j j wij ≤ fi + zii vj ≥ 0, wij ≥ 0, zi ≥ 0 i, j Theory Seminar, 04/2002
Complementary Slackness • Primal Slackness Conditions : • xij > 0 vj = wij + cij • yi > 0 j wij = fi + zi • Dual Slackness Conditions : • vj > 0 j xij = rj • wij > 0 xij = yi • zi > 0 yi = 1 Theory Seminar, 04/2002
4-approximation : outline ≤ vj ≤ vj 2 view as rj copies j(c) : cth copy j(1), j(2) Basic Idea :vj ‘pays’ for each cij s.t. xij > 0. Bound service cost for each copy of j by ρ·vjÞ total service cost ≤ρ·Sj rjvj. Problem :Have –zisin thedual. But zi > 0 Þyi = 1! So can open these facilities and charge all of this cost to the LP Theory Seminar, 04/2002
The Algorithm Phase 1 Clustering : Ensures that each copy j(c) has a nearby open facility. Iterative algorithm. S = { j|rj > 0}, Fj = { i|xij > 0} in fi order. 2 1 5 client in S facility in some Fj 2 j Cluster M • Start of iteration • Pick j with smallestvj. • Cluster is M ÍFj with SiÎM yi = rj. Theory Seminar, 04/2002
client in S 2 0 client not in S 3 X facility in some Fj X X facility opened from M 0 j Cluster M facility removed from Fj X • Open rjcheapest facilities in M. • For k s.t. FkÇ M ¹ f, connect rj copies to opened facilities. Decrease rk, set Fk=Fk-M. • End of iteration Theory Seminar, 04/2002
Analysis : Phase 1 Solution is feasible : each j is connected to rj distinct facilities. Lemma : Facility cost ≤ Si fiyi. Proof : Cost of rj cheapest facilities in M ≤rj· (avg. cost) = SiÎM fiyi. These facilities don’t get used again. Theory Seminar, 04/2002
Analysis (contd.) Lemma : For any j and c, service cost of copy j(c) ≤3vj. Proof : ≤ vj j(c) ≤ vk ≤ vk k Cluster M vk ≤ vj since k was chosen as cluster center. Service cost ≤ vj + 2vk ≤ 3vj. Theory Seminar, 04/2002
The Algorithm (contd.) • Phase 2 : Taking care of –zis. • Open all (unopened) i s.t. yi = 1. i with yi = 1 X i with yi < 1 and open j rj = 3 • For any j, if xij = yi = 1, disconnect a copy of j and connect it to i. Theory Seminar, 04/2002
Analysis : Phase 2 LetL1 = { i | yi = 1 }, Lj = { i | xij = 1 } Í L1 and lj = |Lj|. Lemma : Cost of phase 2 = Sfi + S cij = Sjljvj – Si zi. Proof : Each i with zi > 0 is opened. For iÎL1, all j s.t. wij > 0 are connected to it. So, S vj =(service cost) + (fi + zi) ÞSj ljvj = S fi + S cij + Si zi. iÎL1 j,iÎLj j|iÎLj iÎL1 j,iÎLj Theory Seminar, 04/2002
Finally … Theorem : Total cost ≤ 4 times the optimal cost. Proof : Total cost≤ Si fiyi + 3·Sj (rj – lj)vj + S fi + S cij iÎL1 j,iÎLj facility cost of phase 1 cost of phase 2 cost for copies connected by phase 1 ≤ Si fiyi + 3·Sj (rj – lj)vj + (Sjljvj – Si zi ) ≤ Si fiyi + 3·(Sj rjvj – Si zi ) ≤4·OPT. Theory Seminar, 04/2002
A Randomized Algorithm Idea : Open i with probability ρ·yi Expected facility cost ≤ ρ·Si fiyi Hope that each copy j(c) has a nearby facility open and service cost decreases. Not quite… : no facility may be open! Cluster facilities, open ≥ 1 facility in each cluster. Theory Seminar, 04/2002
Phase 1 : Pruning out –zis. Open all i s.t. yi = 1. For each j, if xij = yi = 1, connect j to i. Let Lj = { i | xij = 1 } andlj= |Lj|. Cost =Sjljvj – Si zi. facilities opened in phases 1, 2 L’j yi = 1 Lj ½ ≤yi < 1 yi < ½ 10 Fj Set L1 r’j = residual reqmt. = 6 Phase 2 Open all i s.t. ½ ≤ yi < 1. For each j, let L’j = { i | ½ ≤ xij < 1 }. Connect copies of j to i Î L’j. Lose a factor of 2. Set L2 Theory Seminar, 04/2002
Phase 3 • Notation :facwt(S, j) = SiÎS xij • Form clusters : Each cluster has facwt. ≥ ½. • Open facilities : Open ≥ 1 facility in a cluster – used as a backup facility. Open facility i with prob. 2yi. • Assign facilities to copies : Each copy j(c) gets a preferred set of facilities – P(j(c)) with facwt. ≥ ½. For c ¹d, P(j(c)) ÇP(j(d)) = f. • Connect clients : Connect j(c) to the nearesti open in P(j(c)), or to a backup facility. Theory Seminar, 04/2002
Clustering After phases 1 and 2, Fj = { i | xij < ½ }. Sort these by cij and distribute among the r’j copies. Cj(c)= avg. service cost of the cth copy, denote Sc Cj(c) = S cijxijby Cj. iÎFj client j i Î Fj Cj(2) 3 Cj(1) Cj(3) Initial Fj before any iterations Want the following properties : Clusters to be disjoint. Each cluster have facwt. ≥ ½. Each j be connected to r’j clusters. Theory Seminar, 04/2002
Iterative algorithm S = { j | r’j > 0 }. aj= ‘active’ copy of j, initially = 1. i removed from Fj 4 X X X i Î Fj, serving j Ĉj(3) (aj) X X 1 aj = 3 facilities serving j (aj) Fj after some iterations Ĉj(aj) = avg. distance to the first k facilities in Fj gathering facwt. ≥ ½; say these facilities ‘serve’ j. Will maintainĈj(aj) ≤ Cj(aj) (aj) Theory Seminar, 04/2002
Start of iteration • Choose j in S with minimumvj + Ĉj(aj). • Form cluster M = facilities serving j . • Note : facilities are not split. (aj) aj = 1 4 client in S facility in some Fj 2 j(3) Cluster M • For k s.t. Fk Ç M ¹ f, decrease r’k, advance ak,set Fk = Fk – M. aj = 2 3 facility removed from Fj X X X X 1 aj = 4 Cluster M Theory Seminar, 04/2002
Opening Facilities k Non-central facilities j open with prob. 2yiindependent of other choices Cluster M • Central facilities opened in 2 steps : • Open exactly 1 facility in M : i opened with prob. qyi. Acts as backup, denoted b(k ), for each k s.t. FkÇM ¹ f. • Open each i in M indep. with prob. (2-q)yi and independent of step 1. (ak) Theory Seminar, 04/2002
Distributing Facilities Copy c gets a preferred setP(j(c)). Preferred sets are disjoint. Ensure facwt(P(j(c)), j) ≥½ for all c. Possible to do so since each xij < ½. P(j(2)) P(j(3)) P(j(1)) facility in Fj j r’j = 3 Let Sj(c) = avg. dist. from j to P(j(c)) = (S cijxij)/facwt(P(j(c)), j) Then Sc Sj(c) ≤ 2×Cj. iÎP(j(c)) Theory Seminar, 04/2002
Analysis • Feasibility follows from : • Facilities in phases 1, 2 not reused. • After clustering j is connected to r’j disjoint clusters Þbackups are distinct. • Preferred sets are disjoint. So j connected to rj distinct facilities. Theory Seminar, 04/2002
Facility cost Recall L1 = { i | yi = 1 }. Phase 2 : incur a factor of 2. Phase 3 : each i is opened with probability 2yi. Expected facility cost ≤ 2×S fiyi. for phases 2, 3 iÏL1 Theory Seminar, 04/2002
: backup = b(j(c)) Service cost I Bounding backup cost, denotedbyB: r.v. D : event that no i in P(j(c)) is open. Lemma :E[B|D] ≤ 2vj + Cj(c). Proof : 2 cases B 1) j(c) ≤ vj ≤ vk k(d) ≤ Ĉj(d) $ iÎM Ç Fj s.t. cik ≤ Ĉj(d) j(c) 2) ≤ Ĉj(d) in expectation ≤ vj k(d) ≤ vk "iÎM Ç Fj, cik > Ĉj(d) Also vk + Ĉj(d) ≤ vj + Ĉj(c) ≤ vj + Cj(c) Theory Seminar, 04/2002
P(j(c)) sorted by increasing cij i Î P(j(c)) . . . d2 dm d1 j(c) Service Cost II Fix j, c. Let X(c)= service cost of j(c). • Let di = cij, pi = prob. i is opened = 2yi. • B(c) = backup cost. • D(c) = event that no iÎP(j(c)) is open. • p = Pr[D(c)] = (1-p1)…(1-pm)≤ e-1 • davg =weighted avg. of the dis • = (Si pidi)/(Si pi) = Sj(c) Theory Seminar, 04/2002
Then, • E[X(c)] = [p1d1 + (1-p1)p2d2 + … • + (1-p1)…(1-pm-1)pmdm] • + p×E[B(c)|D(c)] • ≤ (1-p)×davg + p×[2vj + Cj(c)] • ≤ (1-e-1)×Sj(c) + e-1×[2vj + Cj(c)]. • Let X = Sc X(c) = service cost of j. • Sc Sj(c) ≤ 2×CjandSc Cj(c) ≤ 2×Cj. • Summing over all c = 1…r’j, • E[X] ≤ (1-e-1)×2Cj + e-1×(2r’jvj + Cj) • ≤ 2×Cj + 2e-1×r’jvj. Theory Seminar, 04/2002
Putting it all together • Phase 1 :pay the optimal LP cost • Phases 2, 3 • Facility cost :twice LP facility cost • Service cost • Lose a factor of 2 for phase 2 • Phase 3 cost is 2×(LP service cost)+2e-1×(dual value) • Overall cost for ≤ (2+2/e)×(LP cost) • phases 2, 3 • Total cost ≤(2+2/e)×OPT. Theory Seminar, 04/2002
How to improve this? • Distribute facilities more equitably (in an expected sense) among copies - decreases prob. of ‘bad’ event. • Better analysis – maximum distance within a cluster can be bounded by 2Cj(c). • Balance phases 2 and 3. Theory Seminar, 04/2002
Summary of Results • Give a 2.076-approx. algorithm for non-uniform rjs. Based on LP rounding using complem. slackness. • For rj = r, extend the primal-dual algorithm of (JMS02) to get a 1.52-approximation. • Fault tolerant k medians with rj = r • Primal-dual algorithm (JMS02) gives a 4-approx. using Lagrangean relaxation. • LP rounding gives a factor of 8. Theory Seminar, 04/2002
Open Questions • Reduce gap between rj = r, non-uniform rj. • Combinatorial algorithms for non-uniform rj : primal-dual, local-search. • Constant-factor approx. for fault tolerant k medians with non-uniform rjs. Theory Seminar, 04/2002