270 likes | 398 Views
Network Design. Adam Meyerson Carnegie-Mellon University. Given Graph G=(V,E) Send s-t flows Many s-t pairs Pay cost to send flow over an edge Minimize total cost. Multi-commodity Flow. Pay per unit flow Until capacity Exact curve depends on the edge Goal: Separate Paths. $.
E N D
Network Design Adam Meyerson Carnegie-Mellon University
Given Graph G=(V,E) Send s-t flows Many s-t pairs Pay cost to send flow over an edge Minimize total cost Multi-commodity Flow
Pay per unit flow Until capacity Exact curve depends on the edge Goal: Separate Paths $ Cost Function on an Edge 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
Piecewise linear Fixed/Incremental $ Flow Model
Special Cases • Fixed Cost only: Steiner Tree/Forest • Incremental Cost only: Shortest Paths
Pair up demands Random Merge Each step < OPT E[OPT] decreases O(log n) approx. Fast algorithm using approximate matching Single Sink
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?
Distance / scaling What if on a tree? Easy to route, merge! Metric is general Flow Single Function $/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?
Flow Single Sink and Function $/m
Always good to merge demand We know how much to merge at each step Still must find locations for merging Flow Why is this easier? $/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)
Incremental Costs dominate Compute cost to gather requirement Solve FL with costs Bicriteria approx. LBFL Algorithm
Given demand nodes Fixed cost dominates Construct forest Each tree contains at least D demand Open! Steiner Forest Problem
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
Demand points arrive one at a time General case as hard as online Steiner tree Tree embedding algorithm is online Online Network Design
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?