21
Approximating Buy-at- Approximating Buy-at- Bulk and Shallow-Light Bulk and Shallow-Light k k -Steiner Trees -Steiner Trees Mohammad T. Hajiaghayi Mohammad T. Hajiaghayi (CMU) (CMU) Guy Kortsarz Guy Kortsarz (Rutgers) (Rutgers) Mohammad R. Salavatipour Mohammad R. Salavatipour (U. (U. Alberta) Alberta) Presented by: Presented by: Zeev Nutov Zeev Nutov

Approximating Buy-at-Bulk and Shallow-Light k -Steiner Trees

  • Upload
    belle

  • View
    40

  • Download
    0

Embed Size (px)

DESCRIPTION

Approximating Buy-at-Bulk and Shallow-Light k -Steiner Trees. Mohammad T. Hajiaghayi (CMU) Guy Kortsarz (Rutgers) Mohammad R. Salavatipour (U. Alberta) Presented by: Zeev Nutov. Definition of Buy-at-Bulk k -Steiner Tree. - PowerPoint PPT Presentation

Citation preview

Page 1: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

Approximating Buy-at-Bulk and Approximating Buy-at-Bulk and Shallow-Light Shallow-Light kk-Steiner Trees-Steiner Trees

Mohammad T. Hajiaghayi Mohammad T. Hajiaghayi (CMU)(CMU)

Guy Kortsarz Guy Kortsarz (Rutgers)(Rutgers)

Mohammad R. Salavatipour Mohammad R. Salavatipour (U. Alberta)(U. Alberta)

Presented by:Presented by:

Zeev NutovZeev Nutov

Page 2: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

22

Definition of Buy-at-Bulk Definition of Buy-at-Bulk kk-Steiner Tree-Steiner Tree

Given an undirected graph Given an undirected graph G(V,E),G(V,E), terminal set terminal set TT VV, a root , a root ssTT, and integer , and integer kk|T|.|T|.

Given two cost functions on the edges:Given two cost functions on the edges:– Buy cost Buy cost – Rent costRent cost

Goal: find a subtree Goal: find a subtree HH spanning at least spanning at least k k terminals including root terminals including root ss minimizing minimizing

where where

Page 3: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

33

MotivationMotivationNetwork design problems with two cost functions Network design problems with two cost functions have many applications, e.g. in bandwidth have many applications, e.g. in bandwidth reservation when we have economies of scalereservation when we have economies of scaleExample:Example: capacity on a link can be purchased at capacity on a link can be purchased at discrete units:discrete units:

with costs: with costs:

wherewhere

Page 4: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

44

So if you buy at bulk you saveSo if you buy at bulk you save

More generally, we have a concave function More generally, we have a concave function where where ff((bb)) is the minimum cost of is the minimum cost of

cables with bandwidth cables with bandwidth bb..

Motivation (cont’d)Motivation (cont’d)

bandwidth

cost

Question: satisfy bandwidth for a set of demands by installing sufficient capacities at minimum cost

Page 5: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

55

Equivalent Cost MeasureEquivalent Cost Measure

Equivalent model: cost distanceEquivalent model: cost distance

There are a set of pairs to There are a set of pairs to be connectedbe connected

For each possible cable connection For each possible cable connection ee we can: we can:

– Buy it at Buy it at bb((ee)):: and have unlimited bandwidthand have unlimited bandwidth

– Rent it at Rent it at rr((ee)):: and pay for each unit of flow and pay for each unit of flow

A feasible solutionA feasible solution: buy and/or rent some edges to : buy and/or rent some edges to connect every connect every ssii to to ttii. .

Goal: Goal: minimize the total cost minimize the total cost

Page 6: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

66

10

14

3

If this edge is bought its contribution to total cost is 14.

If this edge is rented, its contribution to total

cost is 2x3=6

Total cost is:

where f(e) is the number of paths going through e.

Page 7: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

77

Equivalent Cost Measure (cont’d)Equivalent Cost Measure (cont’d)

If If E’E’ is the set of edges of the solution, the cost is the set of edges of the solution, the cost is:is:

where is the shortest path in where is the shortest path in

We can think of as the start-up cost andWe can think of as the start-up cost and

as the per use cost (length).as the per use cost (length).

Page 8: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

88

Special CasesSpecial CasesIf all If all ssii’s (sources) are equal we have the ’s (sources) are equal we have the single-source case single-source case

(SS-BB)(SS-BB)

If the cost and length functions on the edges are all the same, i.e. each edge e has cost c+l×f(e) for constants c, l, we have the uniform case.

5

11821

12

Single-source

Page 9: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

99

Known Results for Buy-at-Bulk ProblemsKnown Results for Buy-at-Bulk Problems

Formally introduced by Salman et al. Formally introduced by Salman et al. [SCRS’97][SCRS’97]

OO(log(log n n)) approximation for the uniform case approximation for the uniform case

[AA’97, Bartal’98, FRT’03][AA’97, Bartal’98, FRT’03]

OO(log(log n n)) approx for the single-sink case approx for the single-sink case [MMP’00][MMP’00]

Hardness of Hardness of ΩΩ(log log(log log n n)) for the single-sink case for the single-sink case [CGNS’05][CGNS’05] and and ΩΩ(log(log1/2-1/2- n n)) in general in general [Andrews’04][Andrews’04], , unless unless NPNP ZPTIME(n ZPTIME(npolylog(n)polylog(n)))

Constant approx for several special cases: Constant approx for several special cases: [AKR’91,GW’95,KM’00,KGR’02,KGPR’02,GKR’03][AKR’91,GW’95,KM’00,KGR’02,KGPR’02,GKR’03]Recently we gave an Recently we gave an OO(log(log44 n n) ) approximation for the approximation for the multicommodity case multicommodity case [HKS’06, CHKS’06][HKS’06, CHKS’06] . .

Page 10: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1010

Shallow-Light Shallow-Light kk-Steiner Trees-Steiner Trees

Instances are similar to BB Instances are similar to BB kk-Steiner tree:-Steiner tree:– an undirected graph an undirected graph G(V,E),G(V,E), – terminals terminals TT V, V, – cost function,cost function,– length function, length function, – a bound a bound D D and a parameter and a parameter k k |T| |T|

Find a tree spanning Find a tree spanning kk terminals with minimum terminals with minimum b-b-cost whose diameter under cost whose diameter under rr--cost is at most cost is at most DD (assuming such a tree exists)(assuming such a tree exists)((,,)-)-bicriteria approx: cost at most bicriteria approx: cost at most .opt.opt and and diameter is at most diameter is at most ..DD where where optopt is the cost of is the cost of optimum solution with diameter bound optimum solution with diameter bound DD

Page 11: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1111

Our Results:Our Results:Theorem 1Theorem 1: Given an instance of shallow-light : Given an instance of shallow-light kk--

Steiner tree with bound Steiner tree with bound DD, we find a , we find a (k/8)-(k/8)-Steiner tree with diameter Steiner tree with diameter O(log O(log n.Dn.D)) and cost and cost O(logO(log33nn.opt)..opt).

Corollary: Corollary: we get an we get an (O(log(O(log22 nn),O(log),O(log33 nn))-))-bicriteria bicriteria approx for shallow-light approx for shallow-light kk-Steiner tree-Steiner tree

Theorem 2:Theorem 2: There is an There is an O(logO(log44 nn)-)-approximation for buy-approximation for buy-at-bulk at-bulk kk-Steiner tree.-Steiner tree.

Note: Note:

BB BB kk-Steiner generalizes -Steiner generalizes kk-MST and -MST and kk-Steiner -Steiner (when (when r=0r=0).).

Shallow-light Shallow-light kk-Steiner generalizes shallow-light -Steiner generalizes shallow-light Steiner (when Steiner (when k=|T|k=|T| ) and ) and kk-MST (when -MST (when D=D=11).).

Page 12: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1212

How to Reduce BB to Shallow-LightHow to Reduce BB to Shallow-Light

Let Let GG be an instance of BB and assume we know be an instance of BB and assume we know the value of OPT (e.g. by guessing).the value of OPT (e.g. by guessing).

Lemma: Lemma: If there is an If there is an ((,,)-)-bicriteria algorithm bicriteria algorithm AA for shallow-light for shallow-light kk--Steiner that finds a Steiner that finds a ((k/8k/8)-)-Steiner tree, then there is an Steiner tree, then there is an O((O(( ) log ) log nn) ) approx for BB approx for BB kk--Steiner.Steiner.

Proof:Proof:

First, we can ignore every vertex with First, we can ignore every vertex with rr--distance distance >OPT>OPT from the root. from the root.

Then we run the following algorithm. Then we run the following algorithm.

Page 13: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1313

How to Reduce BB to Shallow-Light (cont’d)How to Reduce BB to Shallow-Light (cont’d)

While While k>0k>0 repeat the following: repeat the following:

1.1. Run the Run the ((,,))-approx alg -approx alg AA for for ((k/2k/2)-)-Steiner Steiner tree with diameter bound tree with diameter bound DD==44OPTOPT/k/k

2.2. Decrease Decrease kk by the number of terminals by the number of terminals covered in the new solution; mark all these covered in the new solution; mark all these terminals as Steiner nodes; goto 1terminals as Steiner nodes; goto 1

The union of the solutions found is returned.The union of the solutions found is returned.

Consider some iteration and let Consider some iteration and let k’k’ be the number be the number of unspanned terminals and of unspanned terminals and H*H* be an optimal be an optimal solution for BB solution for BB k’-k’-Steiner.Steiner.

Page 14: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1414

How to Reduce BB to Shallow-Light (cont’d)How to Reduce BB to Shallow-Light (cont’d)Iteratively remove leaves (terminals) Iteratively remove leaves (terminals)

with with rr-distance -distance > > 22OPTOPT/k/k’’ from from H*.H*.We delete at most We delete at most k’/2k’/2 terminals and r-diameter terminals and r-diameter is at most is at most 4.4.OPTOPT/k/k’’Using alg Using alg AA we find a we find a ((k’/16k’/16)-)-Steiner tree with Steiner tree with diameter bound diameter bound 44.OPT.OPT/k/k’.’. This adds at most This adds at most k’.k’...2OPT2OPT/k/k’=’=22.OPT .OPT to the rent cost; buy cost to the rent cost; buy cost is at most is at most ..OPTOPTSo we have covered a constant fraction of So we have covered a constant fraction of k’k’ at at cost at most cost at most O((O((++).OPT).).OPT).A standard set-cover analysis shows the total A standard set-cover analysis shows the total cost is in cost is in O((O((++).OPT.log ).OPT.log nn).).

Page 15: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1515

Overview of Algorithm for Shallow-Light Overview of Algorithm for Shallow-Light k-k-SteinerSteiner

First we compute a completion graph First we compute a completion graph GGcc of of G G : :

for every pair for every pair u,vu,vVV, compute (approximately) , compute (approximately) the minimum the minimum bb-cost -cost u,vu,v-path with -path with rr-cost at -cost at most most 2D2D. . It is easy to show:It is easy to show:

Lemma:Lemma: if there is a bicriteria solution of cost if there is a bicriteria solution of cost XX and diameter and diameter YY in in GGcc then we can find a then we can find a solution of cost solution of cost XX and diameter and diameter YY in in GG..

So it is enough to work with So it is enough to work with GGcc..

Also, we can easily transform the un-rooted Also, we can easily transform the un-rooted case and the rooted case to each other. case and the rooted case to each other.

Page 16: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1616

Overview of Algorithm … (cont’d)Overview of Algorithm … (cont’d)

We maintain a collection of treesWe maintain a collection of trees

At the beginning every terminal is a At the beginning every terminal is a

tree of one nodetree of one node

We design a test that can fail or succeedWe design a test that can fail or succeed

If the test succeds two trees are mergedIf the test succeds two trees are merged

Else some terminals are temporarily Else some terminals are temporarily deleteddeleted

Page 17: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1717

Overview of Algorithm … (cont’d)Overview of Algorithm … (cont’d)

We maintain a collection of trees partitionWe maintain a collection of trees partition

According to their number of terminals”According to their number of terminals”

1 to 2 terminals

3 to 4 terminals

p to 2p terminals

Page 18: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1818

The TestThe Test

Pick a cluster of p to 2p terminals that Pick a cluster of p to 2p terminals that contains ``many” rootscontains ``many” roots

Every root is a terminalEvery root is a terminal

A terminals is a TRUE terminal if belongs A terminals is a TRUE terminal if belongs

to the optimumto the optimum

The test: does the collection of roots The test: does the collection of roots contain contain manymany terminals? terminals?

Page 19: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

1919

The Main ArgumentThe Main Argument

If the test succeeds then two trees If the test succeeds then two trees

are contracted together at a low priceare contracted together at a low price

If it fails all roots in the cluster are If it fails all roots in the cluster are removedremoved

We loose We loose “many”“many” terminals terminals

But only But only “few”“few” true terminals true terminals

Hence eventually a tree will reach size k/8Hence eventually a tree will reach size k/8

Page 20: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

2020

Conclusion and Open ProblemsConclusion and Open Problems

We obtain We obtain O(log4 n) approximation algorithm approximation algorithm for buy-at-bulk for buy-at-bulk kk-steiner trees. The current -steiner trees. The current lower bound is only lower bound is only ΩΩ(log log(log log n n))..

Main open problem:Main open problem: Can we improve the Can we improve the upper bound significantly or at least the upper bound significantly or at least the lower bound to lower bound to ΩΩ(log (log nn))??

Page 21: Approximating Buy-at-Bulk and Shallow-Light  k -Steiner Trees

2121

Thank you. Thank you.