Facility Location with Nonuniform Hard Capacities Martin Pál Éva Tardos Tom Wexler Cornell University.

Slides:



Advertisements
Similar presentations
Network Design with Degree Constraints Guy Kortsarz Joint work with Rohit Khandekar and Zeev Nutov.
Advertisements

Lindsey Bleimes Charlie Garrod Adam Meyerson
Branch-and-Bound Technique for Solving Integer Programs
Types of Algorithms.
Tutorial at ICCV (Barcelona, Spain, November 2011)
Centrality of Trees for Capacitated k-Center Hyung-Chan An École Polytechnique Fédérale de Lausanne July 29, 2013 Joint work with Aditya Bhaskara & Ola.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Study Group Randomized Algorithms 21 st June 03. Topics Covered Game Tree Evaluation –its expected run time is better than the worst- case complexity.
Techniques for Dealing with Hard Problems Backtrack: –Systematically enumerates all potential solutions by continually trying to extend a partial solution.
Approximation Algorithms for Capacitated Set Cover Ravishankar Krishnaswamy (joint work with Nikhil Bansal and Barna Saha)
EMIS 8373: Integer Programming Valid Inequalities updated 4April 2011.
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
Instructor Neelima Gupta Table of Contents Lp –rounding Dual Fitting LP-Duality.
Branch and Bound Searching Strategies
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
A Constant Factor Approximation Algorithm for the Multicommodity Rent-or-Buy Problem Amit Kumar Anupam Gupta Tim Roughgarden Bell Labs CMU Cornell joint.
Dynamic Programming1. 2 Outline and Reading Matrix Chain-Product (§5.3.1) The General Technique (§5.3.2) 0-1 Knapsack Problem (§5.3.3)
Computational Methods for Management and Economics Carla Gomes
Online Algorithms for Network Design Adam Meyerson UCLA.
14 Oct 03Cost sharing & Approximation1 Group strategy proof mechanisms via primal-dual algorithms (Cost Sharing) Martin PálÉva Tardos.
Robust Network Design with Exponential Scenarios By: Rohit Khandekar Guy Kortsarz Vahab Mirrokni Mohammad Salavatipour.
Network Optimization Models: Maximum Flow Problems In this handout: The problem statement Solving by linear programming Augmenting path algorithm.
Building Edge-Failure Resilient Networks Chandra Chekuri Bell Labs Anupam Gupta Bell Labs ! CMU Amit Kumar Cornell ! Bell Labs Seffi Naor, Danny Raz Technion.
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Facility Location with Nonuniform Hard Capacities Tom Wexler Martin Pál Éva Tardos Cornell University ( A 9-Approximation)
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
B + -Trees COMP171 Fall AVL Trees / Slide 2 Dictionary for Secondary storage * The AVL tree is an excellent dictionary structure when the entire.
ESA 2003M. Pál. Universal Facility Location1 Universal Facility Location Mohammad Mahdian MIT Martin Pál Cornell University.
Integrated Logistics PROBE Princeton University, 10/31-11/1.
LP formulation of Economic Dispatch
1 The Santa Claus Problem (Maximizing the minimum load on unrelated machines) Nikhil Bansal (IBM) Maxim Sviridenko (IBM)
LP-based Algorithms for Capacitated Facility Location Chaitanya Swamy Joint work with Retsef Levi and David Shmoys Cornell University.
Approximation Algorithms for Stochastic Combinatorial Optimization Part I: Multistage problems Anupam Gupta Carnegie Mellon University.
LP-Based Algorithms for Capacitated Facility Location Hyung-Chan An EPFL July 29, 2013 Joint work with Mohit Singh and Ola Svensson.
Online Oblivious Routing Nikhil Bansal, Avrim Blum, Shuchi Chawla & Adam Meyerson Carnegie Mellon University 6/7/2003.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Randomized Online Algorithm for Minimum Metric Bipartite Matching Adam Meyerson UCLA.
Minimum Cost Flows. 2 The Minimum Cost Flow Problem u ij = capacity of arc (i,j). c ij = unit cost of shipping flow from node i to node j on (i,j). x.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Approximating Soft- Capacitated Facility Location Problem Mohammad Mahdian, MIT Yinyu Ye, Stanford Jiawei Zhang, Stanford.
LP-Based Algorithms for Capacitated Facility Location Hyung-Chan An EPFL July 29, 2013 Joint work with Mohit Singh and Ola Svensson.
On a Network Creation Game PoA Seminar Presenting: Oren Gilon Based on an article by Fabrikant et al 1.
Workforce scheduling – Days off scheduling 1. n is the max weekend demand n = max(n 1,n 7 ) Surplus number of employees in day j is u j = W – n j for.
Approximation Algorithms: Éva Tardos Cornell University problems, techniques, and their use in game theory.
Joint work with Chandrashekhar Nagarajan (Yahoo!)
The Matroid Median Problem Viswanath Nagarajan IBM Research Joint with R. Krishnaswamy, A. Kumar, Y. Sabharwal, B. Saha.
1 Combinatorial Algorithms Local Search. A local search algorithm starts with an arbitrary feasible solution to the problem, and then check if some small,
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
1 Branch and Bound Searching Strategies Updated: 12/27/2010.
Hierarchical Well-Separated Trees (HST) Edges’ distances are uniform across a level of the tree Stretch  = factor by which distances decrease from root.
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
Dynamic Programming1. 2 Outline and Reading Matrix Chain-Product (§5.3.1) The General Technique (§5.3.2) 0-1 Knapsack Problem (§5.3.3)
12 Sep 03Martin Pál: Cost sharing & Approx1 Cost Sharing and Approximation Martin Pál joint work with Éva Tardos A-exam.
Computational Game Theory: Network Creation Game Arbitrary Payments Credit to Slides To Eva Tardos Modified/Corrupted/Added to by Michal Feldman and Amos.
Branch and Bound Searching Strategies
PRIMAL-DUAL APPROXIMATION ALGORITHMS FOR METRIC FACILITY LOCATION AND K-MEDIAN PROBLEMS K. Jain V. Vazirani Journal of the ACM, 2001.
Facility Location with Service Installation Costs Chaitanya Swamy Joint work with David Shmoys and Retsef Levi Cornell University.
Tuesday, March 19 The Network Simplex Method for Solving the Minimum Cost Flow Problem Handouts: Lecture Notes Warning: there is a lot to the network.
Integer Programming An integer linear program (ILP) is defined exactly as a linear program except that values of variables in a feasible solution have.
Instructor: Shengyu Zhang
Fault-Tolerant Facility Location
Randomized Online Algorithm for Minimum Metric Bipartite Matching
Clustering.
Presentation transcript:

Facility Location with Nonuniform Hard Capacities Martin Pál Éva Tardos Tom Wexler Cornell University

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. Facility i in F has cost f i. client facility

Problem Statement We need to: 1) Pick a set S of facilities to open. 2) Assign every client to an open facility (a facility in S). Goal: Minimize cost of S + distances. client facility opened facility

More Formally Facility cost c f (S): sum of f i over all i in S. Service cost c s (S): sum of distances from clients to assigned facilities. Goal: Minimize c f (S) + c s (S). client facility opened facility

Hard Capacities Every facility i has a capacity u i. (how many clients i can serve) Soft Capacities: can open k copies of facility i and serve k·u i clients. Hard Capacities: can’t open multiple copies of any facility. Note: with hard capacities, there may be no solution.

Previous Results I Techniques Used for Fac. Loc.: LP rounding Primal-dual algorithms Chudak & Shmoys ‘99, Jain & Vazirani ‘99: LP techniques give c-approx. for soft capacities. Problem: Known LPs have large integrality gap for hard capacities.

Previous Results II Techniques Used for Fac. Loc.: Local search Korupolu et al ‘98, Chudak & Williamson ‘99: Local search gives c-approx. for uniform, hard capacities. Arya et al ‘01: Local search gives c-approx. for nonuniform, soft capacities. Our Result: Local search gives c-approx. for nonuniform, hard capacities.

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 1/poly(n,  ).

Operation 1 (of 3): add 1) add(s) – Open facility s. If our solution opened S before, add(s) means we open S  {s} now. Given S, where do we send clients? Without capacities, we just assign clients the the nearest open facility. With capacities, we can still get optimum by solving a min cost flow.

Operation 2: open 2) open(s,T) – Open facility s, send clients from T to s, and close T. s s If we close t, we are only allowed to send t’s clients to s. before after Capacity of s ≥ # of clients served by T.

Operation 3: close 3) close(s,T) – Open facilities T, send clients from s to T, close s. s s Capacity of T ≥ # of clients served by s. before after

Can We Find Operations? Too many operations like open(s,T) and close(s,T) to consider all! Can we get find the best one? Not quite, but close enough. Plan: For each facility s, generate a good set T for the open operation. Likewise for close.

Good Operations Want to open s, need to pick T. Idea: t has demand & benefit. A knapsack problem! (have scheme) s t Value(t) = f t + reassignment costs. Size(t) = # clients assigned to t. max. ∑ t є T Value(t) s. t. ∑ t є T Size(t) ≤ cap.(s). i open(s, T)

Service Cost What can we say about the output of our algorithm? Thm: [Korupolu et al] If no add(s) op. improves solution S, c s (S) ≤ c s (S OPT ) + c f (S OPT ). So service cost is low. What about facility cost?

Facility Cost Bounding c f (S): Local opt. 0 ≤ operation costs. (for any operation) Every operation gives a bound: Consider close(s, T). c f (s) ≤ c f (T) + Δ benefit of closing s cost of opening T change in cost of shipping to T

The Plan Idea: Pick some set of operations. Each gives c f (T) ≤ c f (T’) + Δ for some sets T and T’. (closed) (opened) Pick operations so that each s in S is closed exactly once. each s in S OPT is opened ≤ k times. reassignment costs are small.

Suppose We Can Do we want a slide like this?

The Exchange Graph Operations should depend on S OPT. S — S OPT S OPT c ij Flow in = demand served by S Flow out ≤ capacity of facilities in S OPT We want: swap(S OPT, S — S OPT ). We don’t have such an operation.

Looking For Operations S — S OPT S OPT c ij Flow in = demand served by S Flow out ≤ capacity of facilities y = flow of clients from S to S OPT. cost(y) ≤ c s (S) + c s (S OPT ) Cost of swap(S OPT, S — S OPT ) ≤ cost(y) + c f (S OPT ) - c f (S).

What is the Flow? Conveniently, the flow is a tree! (or rather a forest… just augment cycles) S — S OPT S OPT How do we get operations from this? Remember, we will use inqualities like c f (T) ≤ c f (T’) + Δ. Since flow is cheap, Δ is small.

First Attempt Just use close(s,T), picking T to be the neighbors of s in the tree. Problem: Expensive facilities in S OPT may be opened many times. S — S OPT S OPT

Instead… Consider subtrees of depth 2. r Each node needs to be closed. Partition these nodes into 3 sets. We’ll handle each set separately. S — S OPT S OPT

Heavy Nodes Heavy Nodes: nodes responsible for > ½ the clients sent to Note: There can be only one. r Only 1, so close it & open neighbors. (i.e. use the naïve approach) r S — S OPT S OPT

Light Dominating Light Dominating: nodes that send ≥ ½ their clients up to r r S — S OPT S OPT Worst case,this doubles ’s capacity: Split into a few operations. r r

Last Case Light Nondominating: nodes that send ≥ ½ their clients down. r S — S OPT S OPT Order these by # of clients sent up. To close facility i in LN, open: The children of i The children of i+1

Last Case (cont’) r S — S OPT S OPT For the last LN node, we open the root instead. For LN in total, is opened once, and the bottom facilities are opened at most twice. r

In Total For each subtree, is opened at most 4 times, s are opened at most 2 times. Every facility in S OPT is a root of 1 subtree and a child in 1 subtree. Altogether Every node in S is closed Every node is S OPT is opened at most 6 times. r

Result Thm: Our local search algorithm gives a 9-approx. for facility location with hard, nonuniform capacities. Note 1: Actually a (9 + є)-approx. Note 2: Scaling lowers it to 8.53…

LP Integrality Gap u=100 f=100 u=99 f=1 u=1 f=99 d=100 Why not use LPs for this problem? The LP solution fully opens the green facility and opens 1/100th of the red facility, thus paying a facility cost of 2. Any integer solution pays 100.

Lower Bound How much better might our alg. be? Thm: Alg. is at best a 4-approx. c:6 u:2 c:3 u:3 c:0 u:

The close(s, T) Operation s Knapsack? value(t) isn’t well defined: Which clients should t serve? Solution: Use Δ ≠ to get an upper estimate for rerouting cost. To send demand to t, first ship it to s, then to t. Now value(t) = cap.(t) * dist.(s, t) size(t) = cap.(t) (now we have a covering knapsack problem) ? ? ? t