Title: PrimalDual Algorithms for Connected Facility Location
1Primal-Dual Algorithms for Connected Facility
Location
- Chaitanya Swamy Amit Kumar
- Cornell University
2Connected Facility Location (ConFL)
Graph G(V,E), costs ce on edges and a
parameter M 1.
facility
client
node
- F set of facilities.
- D set of clients(demands).
- Facility i has facility cost fi.
- cij distance between i and j in V.
3We want to
Cost ?iÎA fi ?jÎD ci(j)j M ?eÎT ce
facility opening cost client assignment cost
cost of connecting facilities.
4Previous Work
- Ravi Selman Look at related problem - connect
facilities by a tour. Round optimal solution of
an exponential size LP. - Karger Minkoff Combinatorial algorithm with
large constant approx. ratio. - Gupta, Kleinberg, Kumar, Rastogi Yener Also
use LP rounding. Get a 9.001-approx. if F V, fi
0 for all i, a 10.66-approx. in the general
case. - Guha, Meyerson Munagala Talwar Gave a
constant approx. for the single-sink buy-at-bulk
problem.
5Our Results
- Give primal-dual algorithms with approx. ratios
of 5 (F V, fi 0) and 9 (general case). - Use this to solve the Connected k-Median problem,
and an edge capacitated version of ConFL.
6Rent-or-buy problem
Special case with F V and fi 0, "i. Suppose we
know a facility f that is open in an optimal
solution. What does the solution look like ?
Open facility
f
Steiner tree. cost of e Mce.
Shortest paths cost of e ce(demand through
e).
7Equivalently, Want to route traffic from clients
to f by installing capacity on edges. 2 choices
I Rent Capacity cost µ rented capacity
(Shortest Paths)
II Buy Capacity fixed cost, 8 capacity (Steiner
Tree)
cost
cost
M
capacity
capacity
ConFL º single-sink buy-at-bulk problem with 2
cable types and sink f.
8Design Guideline
Cluster enough demand at a facility before
opening it. Suppose we run a g-approx. algorithm
for FL, and each open facility serves M clients.
C
M
9An Integer Program
xij 1 if demand j is assigned to i. ze 1 if
edge e is included in the Steiner tree.
Min. ?j,i cijxij M ?e ceze (primal) s.t. ?i
xij 1 ?j ?iÎS xij ?eÎ?(S) ze ?S Í V fÏS,
j xij, ze Î 0, 1 (1)
Relax (1) to xij, ze 0 to get an LP.
10What is the dual?
vj º amount j is willing to pay to route its
demand to f. Let yS ?j yS,j. yS º moat
packing around facilities.
vj cij ?SiÎS,fÏS yS,j
11The Algorithm
- Decide which facilities to open, cluster demands
around open facilities. Construct a primal soln.
and dual soln. (v,y) simultaneously. - Build a Steiner tree on open facilities.
- The following will hold after 1)
- (v,y) is a feasible dual solution.
- j is assigned to i(j) s.t. ci(j)j 3vj.
- Each open facility i has M clients, j,
assigned to it s.t. cij vj.
12Analysis
Suppose the 3 properties hold. Let A be the set
of facilities opened, Di j assigned to i cij
vj for iÎA. Then, Di M. Let D1 UiÎA Di.
C ?jÎD1 vj ?jÏD1 3vj.
13Phase 1
Simplifying assumption can open a facility
anywhere along an edge.
locations
Notion of time, t. Start at t0. Initially vj
0, ?j. f is tentatively open, all other locations
are closed. Say j is tight with i (has reached i)
if vj cij. Sj is set of vertices j is tight
with.
14Raise all vj at rate 1. Also raise ySj,j at same
rate.
- Keep raising vjs until
- There is a closed location i with which M demands
become tight tentatively open i. Freeze all
these M demands. - j reaches a tentatively open location freeze j.
Now only raise vj of unfrozen demands. Continue
this process until all demands are frozen.
15Execution of the algorithm
M2, time t0
f
16Execution of the algorithm
M2, time t2
f
tentatively open location
not open location
unfrozen demand
17Execution of the algorithm
M2, time t3
f
vjt3
j
18Opening locations
Let i be tentatively open. Di j j is tight
with i . ti time when i was tentvely
opened. Note, Di M. But the Dis may not be
disjoint.
2
f
0
1
3
4
19Assigning clients
Consider client j.
20- i(j) location that j is assigned to.
- ci(j)j vj.
- ci(j)j vj 2vk.
- vj ti since j freezes at or after time ti.
- Also vk ti .
- So vk vj and ci(j)j 3vj.
For every open i, all clients in Di are assigned
to i. Di M, so at least M demands j are
assigned to i with cij vj.
21Putting it together
Need to show that (v,y) is feasible.
22Done?
Almost Could have opened non-vertex
locations. Fix Move all such locations to
vertices. Cost only decreases ! e.g.,
M
Theorem The above algorithm is a 5-approx. for
rent-or-buy.
23The General Case
- F Í V Cannot open a facility everywhere.
- Facilities have costs Want to open cheap
facilities.
- Modified Phase 1
- Dual variables, vj, also pay for opening
facilities. - Cluster M demands around terminal locations,
open facilities near terminal locations.
Theorem There is a 9-approx. algorithm for the
general case.
24Let A be the set of terminal locations, Di j
cij vj for iÎA. We ensure Di M. Let D1
UiÎA Di.
Can show, F C ?jÎD1 3vj ?jÏD1 7vj.
2 minjÎDi vj
Di
M
i
S ?jÎD1 2vj
25Open Questions
- Better approximation only know an integrality
gap of 2 from Steiner tree. - Multicommodity buy-at-bulk. Multiple source-sink
pairs, route flow from source to sink. Have
different cable types. Kumar et al. give a const.
approx. for multicommodity rent-or-buy. - Unrelated metrics Min. ?i fiyi ?j,i cijxij
?e deze. Can reduce from group Steiner tree get
a O(log n) LB. Matching UB?