Presentation is loading. Please wait.

Presentation is loading. Please wait.

ESA 2003M. Pál. Universal Facility Location1 Universal Facility Location Mohammad Mahdian MIT Martin Pál Cornell University.

Similar presentations


Presentation on theme: "ESA 2003M. Pál. Universal Facility Location1 Universal Facility Location Mohammad Mahdian MIT Martin Pál Cornell University."— Presentation transcript:

1 ESA 2003M. Pál. Universal Facility Location1 Universal Facility Location Mohammad Mahdian MIT Martin Pál Cornell University

2 ESA 2003M. Pál. Universal Facility Location2 Metric Facility Location F is a set of facilities. D is a set of clients. c ij is the distance between any i and j in D  F. (assume c ij satisfies triangle inequality)

3 ESA 2003M. Pál. Universal Facility Location3 Problem Statement 1) Allocate capacity u i at each facility i 4 5 0 3 2) Assign every client to a facility (each facility i is assigned at most u i clients). Goal: Minimize the sum of allocation and assignment costs.

4 ESA 2003M. Pál. Universal Facility Location4 The cost Cost of facility i is a function f i (.) of demand allocated. capacity cost f i (u i ) Assptn: f i (.) is nondecreasing. Allocation cost c f (S): sum of f i (u i ) over all i in F. Assignment cost c s (S): sum of distances from clients to assigned facilities. Goal: Minimize c f (S) + c s (S).

5 ESA 2003M. Pál. Universal Facility Location5 Special cases demand cost Uncapacitated FL cost demand FL with soft capacities demand cost Concave cost FL cost demand  FL with hard capacities

6 ESA 2003M. Pál. Universal Facility Location6 Related work Uncapacitated: primal-dual 1.52 [MYZ02] local search 3+  [CG99] Soft capacities: primal-dual 2 [MYZ03] local search 4+  [AGK+01] Concave cost: reduction to uncapacitated [HMM] Hard capacities: local search 9+  [PTW01]

7 ESA 2003M. Pál. Universal Facility Location7 Our result First approximation algorithm for Universal FL Generalizes local search algorithms for above special cases, with the same approx. guarantees Our analysis: 8+  approximation (7.88 w. scaling) [CYZ] just claimed improved analysis: 7+ 

8 ESA 2003M. Pál. Universal Facility Location8 Local Search 1) Start with any feasible solution. 2) Improve solution with “local operations”. 3) Stop when there are no remaining operations that lower the cost. Well, almost… …we want to finish in poly-time: Each operation is required to lower cost by a factor of   /n.

9 ESA 2003M. Pál. Universal Facility Location9 The add operation add(s,  ) – Increase allocation at facility s by . Reassign clients optimally. Given u=(u 1,u 2,..., u n ), where do we send clients? Solve a min cost flow. 111 usus +1=2 

10 ESA 2003M. Pál. Universal Facility Location10 The pivot operation 4 2 0 3 pivot(s,Δ): Pick a pivot point s and vector Δ. For each facility i: Send -Δ i units of demand from i to s (if Δ i <0) Send +Δ i units of demand from s to i (if Δ i >0) s

11 ESA 2003M. Pál. Universal Facility Location11 3 3 2 1 The pivot operation pivot(s,Δ): Pick a pivot point s and vector Δ. For each facility i: Send -Δ i units of demand from i to s (if Δ i <0) Send +Δ i units of demand from s to i (if Δ i >0)

12 ESA 2003M. Pál. Universal Facility Location12 Finding good operations Want operations that decrease cost the most. Plan: Try every s, find the best  and Δ for add(s,  ) and pivot(s,Δ). Easy to do for add: try all values for . Too many possibilities for Δ to try them all. How to find the best pivot operation?

13 ESA 2003M. Pál. Universal Facility Location13 How to find a good pivot? Problem: find Δ to minimize cost(pivot(s,Δ)). Consider facilities in any order. Let p[d,i] be the min cost way of having d excess demand at the pivot from the first i facilities. p[d,i+1] = min  { p[d- ,i]+g i+1 (  ) } p[0,n] is the optimum Solution: dynamic programming, just like knapsack.

14 ESA 2003M. Pál. Universal Facility Location14 Analysis

15 ESA 2003M. Pál. Universal Facility Location15 Assignment cost Thm: [Korupolu et al] If no add(s,  ) op. improves a solution S, c s (S) ≤ c s (S OPT ) + c f (S OPT ). 201 0 Current sol S 110 1 Optimum S OPT 211 1 Max(u i,u i OPT )

16 ESA 2003M. Pál. Universal Facility Location16 Bounding the allocation cost Bounding c f (S): Local opt.  cost(pivot(s,Δ)) ≥ 0 for any s, Δ. Every operation gives a bound: Σ i f i (u i ) ≤ Σ i f i (u i + Δ i ) + flow cost upper bound on c f (S) lower bound on c f (S OPT )

17 ESA 2003M. Pál. Universal Facility Location17 First attempt Take current S with some S OPT : let d i = u i OPT - u i. sources d i < 0. sinks d i > 0. 2 0 1 2 2 0 0 3  Reassignment costs may be high. try pivot(s,d)

18 ESA 2003M. Pál. Universal Facility Location18 Second attempt Take current S with some S OPT : let d i = u i OPT - u i. d i < 0. d i > 0. 2 0 1 2 2 0 0 3 try swap(d): routing along min cost flow  Don’t have a swap operation. sources sinks Flow is cheap: cost(y) ≤ c s (S) + c s (S OPT )

19 ESA 2003M. Pál. Universal Facility Location19 What works Take the swap(d) operation, let y be the flow. Tile it with pivot operations so that: each source covered (at least) once each sink used at most k times (k=4) each pivot ships only along flow edges

20 ESA 2003M. Pál. Universal Facility Location20 What works Take the swap(d) operation, let y be the flow. d i < 0. d i > 0. 0 1 2 2 0 0 3 Example: flow decomposed into two pivot op’s. sources sinks

21 ESA 2003M. Pál. Universal Facility Location21 The flow y Fact 1: cost(y) ≤ c s (S)+c s (S OPT ) Pf: use triangle inequality Fact 2: y is min cost  acyclic Pf: augment along cycle to remove it I.e. the flow is a tree (forest).

22 ESA 2003M. Pál. Universal Facility Location22 Covering the tree sources sinks

23 ESA 2003M. Pál. Universal Facility Location23 Subtrees of depth 2 sources sinks

24 ESA 2003M. Pál. Universal Facility Location24 Almost done.. Every source closed once Every sink used ≤ 1+1=2 times (once as root, once as child) Problem: flow cost is nondominating if it sends ≥ ½ of its flow down.

25 ESA 2003M. Pál. Universal Facility Location25 Nondominating sources... r s1s1 s2s2 s3s3 sksk y(s 1,r ) ≤ y(s 2,r ) ≤ y(s 3,r ) ≤... ≤ y(s k,r )

26 ESA 2003M. Pál. Universal Facility Location26 Summing up Every facility opened 4 times Flow at most tripled c f (S) ≤ 7c(S OPT ) c s (S) ≤ 1c(S OPT )Assignment cost Hence the algorithm is a (8+є)-approximation. (7.88+є with scaling) Totalc(S) ≤ 8c(S OPT )


Download ppt "ESA 2003M. Pál. Universal Facility Location1 Universal Facility Location Mohammad Mahdian MIT Martin Pál Cornell University."

Similar presentations


Ads by Google