network design adam meyerson carnegie-mellon university
Post on 20-Dec-2015
218 views
TRANSCRIPT
Network Design
Adam MeyersonCarnegie-Mellon University
Multi-commodity Flow
• Given Graph G=(V,E)• Send s-t flows• Many s-t pairs
• Pay cost to send flow over an edge
• Minimize total cost
Cost Function on an Edge
• Pay per unit flow
• Until capacity
• Exact curve depends on the edge
• Goal: Separate Paths
Flow
$
Concave Cost Functions
$
Flow
Why Concave Costs?
• “Buy-at-Bulk” discounts, for example:– Product Transport– Network Bandwidth– Device Purchase
• Goal: Merge Paths!
Open Problem
• Given graph, concave costs, s-t pairs
• Construct multi-commodity s-t flows
• Minimize total cost
• NP-Hard! No non-trivial approx. known!
What’s known?
• Single sink (symmetric sink)– O(log n) approximation– MMP00, CKN00
• Single function (with scaling)– O(log n log log n) approximation– AA97 w/ B98, CCGGP98
• Single sink and single function– O(1) approximation – GMM01
General Concepts
• Good to merge demand
• Better large demand in few places
• Must choose “good” merge points
Model
• Piecewise linear
• Fixed/Incremental
$
Flow
Special Cases
• Fixed Cost only: Steiner Tree/Forest
• Incremental Cost only: Shortest Paths
Single Sink
• Pair up demands• Random Merge• Each step < OPT• E[OPT] decreases• O(log n) approx.• Fast algorithm using
approximate matching
De-randomizing
• Solve linear program at each step
• Use LP to determine the merging
• Again O(log n) approximation
• Now bounded against the LP fractional
• Running time maybe not so fast
Open Problems
• What is the LP-IP gap of CKN program?– At least 2, at most O(log n)– Exact gap is unknown!
• Is O(1) approximation possible here?
Single Function
• Distance / scaling• What if on a tree?
– Easy to route, merge!
• Metric is general
Flow
$/m
Bartal’s Results
• Embed any metric into probability distribution on trees
• E[t(x,y)] < O(log n log log n) d(x,y)
• Hardness of Omega(log n) for this
Algorithm for Single Function
• Embed distance into tree via Bartal
• Solve aggregations on tree
• Map back into original metric space
• O(log n log log n) approximation
Open Problems
• Is tree embedding the best approach?
• Is O(log n) best-possible for this problem?
Single Sink and Function
Flow
$/m
Why is this easier?
• Always good to merge demand
• We know how much to merge at each step
• Still must find locations for merging
Flow
$/m
Facility Location Problem
• Locate facilities such that:– Small average demand-facility distance
• Each facility must serve large demand– Otherwise, facilities come “for free”
• Load Balanced Facility Location (LBFL)
LBFL Algorithm
• Incremental Costs dominate
• Compute cost to gather requirement
• Solve FL with costs
• Bicriteria approx.
Steiner Forest Problem
• Given demand nodes• Fixed cost dominates• Construct forest
• Each tree contains at least D demand
• Open!
Single Sink+Function:
• Build alternate LBFL, Steiner trees
• Amortize costs separately for steps
• Bound Steiner steps against “one big tree”
• Double geometric sum, O(1) but large
Open Problems
• O(1) for LBFL without violating bounds
• O(1) for Steiner forest problem
• Better constant approximations
Online Network Design
• Demand points arrive one at a time
• General case as hard as online Steiner tree
• Tree embedding algorithm is online
Access Network Online
• Special case of single sink and function
• Simple algorithm: choose cable randomly
• O(1) v.s. random order inputs
• O(log k) v.s. adversarial order inputs
• Can we do better? Better analysis?
• Does something like this work w/o access network assumptions to give O(log n)?
More Open Questions
• What about arbitrary functions?– For example, concave capacitated
• What about redundancy?