Network Design
description
Transcript of Network Design
![Page 1: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/1.jpg)
Network Design
Adam MeyersonCarnegie-Mellon University
![Page 2: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/2.jpg)
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
![Page 3: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/3.jpg)
Cost Function on an Edge
• Pay per unit flow
• Until capacity
• Exact curve depends on the edge
• Goal: Separate Paths
Flow
$
![Page 4: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/4.jpg)
Concave Cost Functions
$
Flow
![Page 5: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/5.jpg)
Why Concave Costs?
• “Buy-at-Bulk” discounts, for example:– Product Transport– Network Bandwidth– Device Purchase
• Goal: Merge Paths!
![Page 6: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/6.jpg)
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!
![Page 7: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/7.jpg)
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
![Page 8: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/8.jpg)
General Concepts
• Good to merge demand
• Better large demand in few places
• Must choose “good” merge points
![Page 9: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/9.jpg)
Model
• Piecewise linear
• Fixed/Incremental
$
Flow
![Page 10: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/10.jpg)
Special Cases
• Fixed Cost only: Steiner Tree/Forest
• Incremental Cost only: Shortest Paths
![Page 11: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/11.jpg)
Single Sink
• Pair up demands• Random Merge• Each step < OPT• E[OPT] decreases• O(log n) approx.• Fast algorithm using
approximate matching
![Page 12: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/12.jpg)
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
![Page 13: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/13.jpg)
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?
![Page 14: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/14.jpg)
Single Function
• Distance / scaling• What if on a tree?
– Easy to route, merge!
• Metric is general
Flow
$/m
![Page 15: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/15.jpg)
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
![Page 16: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/16.jpg)
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
![Page 17: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/17.jpg)
Open Problems
• Is tree embedding the best approach?
• Is O(log n) best-possible for this problem?
![Page 18: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/18.jpg)
Single Sink and Function
Flow
$/m
![Page 19: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/19.jpg)
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
![Page 20: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/20.jpg)
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)
![Page 21: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/21.jpg)
LBFL Algorithm
• Incremental Costs dominate
• Compute cost to gather requirement
• Solve FL with costs
• Bicriteria approx.
![Page 22: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/22.jpg)
Steiner Forest Problem
• Given demand nodes• Fixed cost dominates• Construct forest
• Each tree contains at least D demand
• Open!
![Page 23: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/23.jpg)
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
![Page 24: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/24.jpg)
Open Problems
• O(1) for LBFL without violating bounds
• O(1) for Steiner forest problem
• Better constant approximations
![Page 25: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/25.jpg)
Online Network Design
• Demand points arrive one at a time
• General case as hard as online Steiner tree
• Tree embedding algorithm is online
![Page 26: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/26.jpg)
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)?
![Page 27: Network Design](https://reader036.fdocuments.in/reader036/viewer/2022062520/568159aa550346895dc70ef3/html5/thumbnails/27.jpg)
More Open Questions
• What about arbitrary functions?– For example, concave capacitated
• What about redundancy?