33
Approximation Algorithms Approximation Algorithms for for Buy-at-Bulk Network Buy-at-Bulk Network Design Design MohammadTaghi Hajiaghayi MohammadTaghi Hajiaghayi Labs- Research Labs- Research

Approximation Algorithms for Buy-at-Bulk Network Design

Embed Size (px)

DESCRIPTION

Approximation Algorithms for Buy-at-Bulk Network Design. MohammadTaghi Hajiaghayi Labs- Research. Motivation. Suppose we are given a network and some nodes have to be connected by cables. Each cable has a cost (installation or cost of usage) Question : Install cables - PowerPoint PPT Presentation

Citation preview

Approximation Algorithms Approximation Algorithms for for

Buy-at-Bulk Network DesignBuy-at-Bulk Network Design

MohammadTaghi HajiaghayiMohammadTaghi Hajiaghayi

Labs- ResearchLabs- Research

22

MotivationMotivation

Suppose we are given a network and some Suppose we are given a network and some nodes have to be connected by cablesnodes have to be connected by cables

10

12

8

21

27

11

5

9

147

21

3

16

Each cable has a cost (installation or cost of usage)

Question: Install cables satisfying demands at minimum cost

This is the well-studied Steiner forest problem and is NP-hard

33

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

Consider buying bandwidth to meet demands Consider buying bandwidth to meet demands between pairs of nodes.between pairs of nodes.The cost of buying bandwidth satisfy The cost of buying bandwidth satisfy economies of scaleeconomies of scaleThe capacity on a link can be purchased at The capacity on a link can be purchased at discrete units:discrete units:

Costs will be: Costs will be:

WhereWhere

44

So if you buy at bulk you saveSo if you buy at bulk you saveMore generally, we have a non-decreasing More generally, we have a non-decreasing monotone concave (or more generally sub-additive) monotone concave (or more generally sub-additive) functionfunction where where f f ((bb)) is the is the minimum cost of cables with bandwidth minimum cost of cables with bandwidth bb..

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

bandwidth

cost

Question: Given a set of bandwidth demands between nodes, install sufficient capacities at minimum total cost

The problem is called The problem is called

Multi-Commodity Multi-Commodity Buy-at-Bulk (MC-BB)Buy-at-Bulk (MC-BB)

55

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

The previous problem is equivalent to the following The previous problem is equivalent to the following problem:problem:

There are a set of pairs There are a set of pairs

to be connectedto be 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 useand have unlimited use

Rent it at Rent it at rr((ee)): : and pay for each unit of flowand pay for each unit of flow A feasible solutionA feasible solution: buy and/or rent some edges to connect : buy and/or rent some edges to connect

every every ssii to to ttii. .

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

66

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

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 2*3=6

Total cost is:

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

77

These problem is equivalent to the cost-distance These problem is equivalent to the cost-distance problem:problem:

cost functioncost function

length function length function

Also a set of pairs of nodes each with a Also a set of pairs of nodes each with a demand for every demand for every i i

Feasible solution: a set s.t. all pairs Feasible solution: a set s.t. all pairs

are connected in are connected in

Cost-DistanceCost-Distance

88

Cost-Distance (cont’d)Cost-Distance (cont’d)

The cost of the solution is:The cost of the solution is:

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

The cost is the start-up cost andThe cost is the start-up cost and

is the per-use cost (length).is the per-use cost (length).

Goal:Goal: minimize total cost. minimize total cost.

1010

Special CasesSpecial CasesIf all If all ssi i (sources) are equal we have the (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 : Uniform-case

5

11821

12

Single-source

1111

Previous WorkPrevious Work

Formally introduced by Formally introduced by [Salman, Cheriyan, Ravi, [Salman, Cheriyan, Ravi, and Subramanian ’97]and Subramanian ’97] OO(log(log n n)) approximation for the uniform case, i.e. approximation for the uniform case, i.e. each edge each edge ee has cost has cost c+lc+lff((ee)) for some fixed for some fixed constants constants c, lc, l [Awerbuch and Azar ’97],[Awerbuch and Azar ’97], [Bartal’98][Bartal’98] OO(log(log n n)) randomized approximation for the single-randomized approximation for the single-sink case sink case

[Meyerson, Munagala, and Plotkin ’00][Meyerson, Munagala, and Plotkin ’00]OO(log(log n n) ) deterministic approximation for the deterministic approximation for the single-sink case single-sink case

[[Chekuri, Khanna, and Naor ’01]Chekuri, Khanna, and Naor ’01]

1212

Hardness Results for Buy-at-Bulk Hardness Results for Buy-at-Bulk ProblemsProblems

Hardness of Hardness of ΩΩ(log log(log log n n)) for the single- for the single- sink case sink case [[Chuzhoy, Gupta, Naor, and Chuzhoy, Gupta, Naor, and Sinha ’05]Sinha ’05]

ΩΩ(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)))

1313

Algorithms for Special Cases Algorithms for Special Cases

Steiner ForestSteiner Forest

[Agrawal, Klein, and Ravi ’91][Agrawal, Klein, and Ravi ’91][Goemans and Williamson ’95] [Goemans and Williamson ’95]

Single sourceSingle source

[Guha, Meyerson, and Munagala ’01][Guha, Meyerson, and Munagala ’01][Talwar ’02][Talwar ’02][Gupta, Kumar, and Roughgarden ’02][Gupta, Kumar, and Roughgarden ’02][Meyerson, Munagala, and Plotkin ’00][Meyerson, Munagala, and Plotkin ’00][Goel and Estrin ’03][Goel and Estrin ’03]

1414

Multicommodity Buy at BulkMulticommodity Buy at Bulk

Multicommodity Uniform Case:Multicommodity Uniform Case: [Awerbuch and Azar ’97][Awerbuch and Azar ’97]

[Bartal ’98][Bartal ’98]

[Gupta, Kumar, Pal, and Roughgarden ’03][Gupta, Kumar, Pal, and Roughgarden ’03]

The only known approximation for the general case The only known approximation for the general case was was [Charikar and Karagiozova’05].[Charikar and Karagiozova’05]. The ratio The ratio was (was (DD is the max demand) is the max demand)

exp(exp(ÕÕ( log ( log 1/21/2((nD)nD) ))))

1515

Our Main ResultOur Main Result [ [Chekuri, Hajiaghayi, Kortsarz, Salavatipour, FOCS’06]Chekuri, Hajiaghayi, Kortsarz, Salavatipour, FOCS’06]

Theorem: Theorem: If If hh is the number of pairs of is the number of pairs of ssii,t,tii then there is a polytime algorithm with then there is a polytime algorithm with approximation ratio approximation ratio OO(log(log44 h h))..

For simplicity we focus on the unit-demand For simplicity we focus on the unit-demand case (i.e. case (i.e. ddii==11 for all for all i’i’s) and we present s) and we present

ÕÕ (log(log55nn))..

1616

Overview of the AlgorithmOverview of the Algorithm

The algorithm iteratively finds a partial The algorithm iteratively finds a partial solution connecting some of the residual solution connecting some of the residual pairspairs

The new pairs are then removed from the set; The new pairs are then removed from the set; repeat until all pairs are connected (routed)repeat until all pairs are connected (routed)

Density of a partial solution = Density of a partial solution = cost of the partial solutioncost of the partial solution # of new pairs routed# of new pairs routed

The algorithm tries to find low density partial The algorithm tries to find low density partial solution at each iterationsolution at each iteration

1717

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

The density of each partial solution is at mostThe density of each partial solution is at most

ÕÕ(log(log44 nn) ) (OPT / (OPT / hh'')) where where OPTOPT is the cost of is the cost of optimum solution and optimum solution and hh'' is the number of is the number of unrouted pairsunrouted pairs

A simple analysis (like for set cover) shows:A simple analysis (like for set cover) shows:

Total Cost Total Cost

ÕÕ(log(log4 4 nn) ) OPT OPT (1/ (1/nn22 + 1/( + 1/(nn22 - 1) +…+ - 1) +…+ 1)1)

ÕÕ(log(log5 5 nn) ) OPT OPT

1818

Structure of the OptimumStructure of the Optimum

How to compute a low-density partial solution?How to compute a low-density partial solution?

Prove the existence of low-density one with a very Prove the existence of low-density one with a very specific structure: specific structure: junction-treejunction-tree

Junction-tree:Junction-tree: given a set given a set PP of pairs, tree of pairs, tree TT rooted at rooted at rr is a junction tree if is a junction tree if

It contains all pairs of It contains all pairs of PP

For every pair For every pair ssii,t,tii P P the the

path connecting them path connecting them

in in TT goes through goes through rr

r

1919

Structure of the Optimum (cont’d)Structure of the Optimum (cont’d)

So the pairs in a junction tree connect via the rootSo the pairs in a junction tree connect via the root

We show there is always a partial solution with low We show there is always a partial solution with low density that is a junction treedensity that is a junction tree

Observation:Observation: If we know the pairs participating in a If we know the pairs participating in a junction-tree it reduces to the single-source BB junction-tree it reduces to the single-source BB problemproblem r

Then we could use the Then we could use the

OO(log(log n n)) approximation approximation

of of [MMP’00][MMP’00]

2020

Summary of the AlgorithmSummary of the Algorithm

So there are two main ingredients in the proofSo there are two main ingredients in the proof

Theorem 2:Theorem 2: There is always a partial solution that is a There is always a partial solution that is a

junction tree with density junction tree with density ÕÕ (log(log22 nn) ) (OPT / (OPT / hh''))

Theorem 3:Theorem 3: There is an There is an O O (log(log22 nn)) approximation for the approximation for the

problem of finding lowest density junction tree (this is low problem of finding lowest density junction tree (this is low

density SS-BB).density SS-BB).

Corollary:Corollary: We can find a partial solution with density We can find a partial solution with density

ÕÕ (log(log44 nn) ) (OPT / (OPT / hh''))

This implies an approximation This implies an approximation ÕÕ (log(log55 nn)) for MC-BB. for MC-BB.

2121

More Details of the Proof of Theorem 2: More Details of the Proof of Theorem 2:

We want to show there is a partial solution that is a We want to show there is a partial solution that is a

junction tree with density junction tree with density ÕÕ (log(log22 nn) ) (OPT / (OPT / hh''))

Consider an optimum solution OPT.Consider an optimum solution OPT.

Let Let E*E* be the edge set of OPT, be the edge set of OPT, OPTOPTcc be its costbe its cost and and

OPTOPTll be be its lengthits length. .

2222

More Details of the Proof of Theorem 2: More Details of the Proof of Theorem 2:

By the result of By the result of [Elkin, Emek, Spielman, and Tang ’05][Elkin, Emek, Spielman, and Tang ’05] on on

probabilistic distribution on spanning trees and by loosing a probabilistic distribution on spanning trees and by loosing a

factor factor ÕÕ (log(log22 nn)) on length, we can assume that on length, we can assume that E* E* is a forest is a forest

T T (WLOG we assume (WLOG we assume TT is connected). is connected).

5

11

8

21

12

Note that Note that OPTOPT may have may have cyclescycles

2323

More Details of the Proof of Theorem 2: More Details of the Proof of Theorem 2:

From From TT we obtain a collection of rooted subtrees we obtain a collection of rooted subtrees TT11,…,T,…,Taa

such thatsuch that

any edge any edge ee of of TT is in at most is in at most O(O(loglog n) n) of the subtrees of the subtrees

For every pair there is exactly one index For every pair there is exactly one index ii such that both vertices such that both vertices

are in are in TTii; further the root of ; further the root of TTii is their least common ancestor is their least common ancestor

The total cost of the junction trees is at most The total cost of the junction trees is at most

ÕÕ (log(log22 nn) ) OPT OPT ((OO (log (log nn) ) OPT OPTcc + + ÕÕ (log(log22 nn) ) OPT OPTll))

Thus at least one of junction trees of Thus at least one of junction trees of TT11,…,T,…,Taa has the has the

desired density of desired density of ÕÕ (log(log22 nn) ) (OPT / (OPT / hh''))

2424

More Details of the Proof of Theorem 2:More Details of the Proof of Theorem 2:

Given Given TT, we pick a centeroid , we pick a centeroid rr11 (i.e., largest remaining (i.e., largest remaining

component has at most component has at most 2/3 |V(T)| 2/3 |V(T)| vertices).vertices).

Add tree Add tree TT rooted at rooted at rr1 1 to the collectionto the collection

Remove Remove rr1 1 from from TT and apply the procedure recursively and apply the procedure recursively

to each of the resulting componentto each of the resulting component

Each pair is on exactly one subtreeEach pair is on exactly one subtree

in the collectionin the collection

Depth of recursion is in Depth of recursion is in OO (log (log nn))

r

2525

Some Details of the Proof of Theorem 3:Some Details of the Proof of Theorem 3:Theorem 3:Theorem 3: There is anThere is an OO(log(log22 nn)) approximation for approximation for

finding lowest density junction tree.finding lowest density junction tree.

This is very similar to SS-BB except that we have to This is very similar to SS-BB except that we have to

find a lowest density solution.find a lowest density solution.

Here we have to connect a subset ofHere we have to connect a subset of

the pairs to the rootthe pairs to the root rr with lowest density with lowest density

(= cost of solution / # of pairs in sol).(= cost of solution / # of pairs in sol).

Let denote the set of paths from Let denote the set of paths from rr to to ii..

We formulate the problem as an IP and then consider We formulate the problem as an IP and then consider

the LP relaxation of the problemthe LP relaxation of the problem

r

2626

Some Details of the Proof of Theorem 3:Some Details of the Proof of Theorem 3:

We solve the LP by setting We solve the LP by setting yyss=y=yt t for each pair for each pair (s,t)(s,t), and then , and then

find a subset of nodes to solve the SS-BBfind a subset of nodes to solve the SS-BB

We find a class of We find a class of y y among among O O (log (log nn) ) classes of almost equal classes of almost equal

yyii with maximum sum and scale up(loose a factor with maximum sum and scale up(loose a factor O O (log (log nn))))

We use the We use the O O (log (log nn)) approx of approx of [MMP’00,CKN’01][MMP’00,CKN’01] for SS- for SS-

BB (indeed it is upper bound on integrality gap of the LP)BB (indeed it is upper bound on integrality gap of the LP)

2727

Some Remarks:Some Remarks:

For the polynomially bounded demand case we can find low For the polynomially bounded demand case we can find low

density junction-trees using a density junction-trees using a more refined region growing more refined region growing

techniquetechnique and also using a and also using a greedy greedy algorithm (within algorithm (within OO (log(log44 nn))))

[Hajiaghayi, Kortsarz and Salavatipour, ECCC’ 06][Hajiaghayi, Kortsarz and Salavatipour, ECCC’ 06]

The greedy algorithm is based on an algorithm for the The greedy algorithm is based on an algorithm for the

k-k-shallow-light tree problem shallow-light tree problem [Hajiaghayi, Kortsarz, and [Hajiaghayi, Kortsarz, and

Salavatipour, APPROX ’06]Salavatipour, APPROX ’06]

There is a conjectured upper bound of There is a conjectured upper bound of OO (log (log nn) ) for distortion for distortion

of embedding a graph metric into a probability distribution over of embedding a graph metric into a probability distribution over

its spanning tree its spanning tree [Alon, Karp, Peleg, and West ’91][Alon, Karp, Peleg, and West ’91]

If true, that would improve our approximation factor for If true, that would improve our approximation factor for

arbitrary demands to arbitrary demands to OO (log(log44 nn) )

2828

Some Remarks (cont’d):Some Remarks (cont’d):

Indeed, as suggested by Racke, our current approach can be Indeed, as suggested by Racke, our current approach can be

applied via Bartal’s trees (and interestingly not FRT) to applied via Bartal’s trees (and interestingly not FRT) to

obtain an obtain an OO(log (log hh) ) factor instead of factor instead of ÕÕ (log(log22 hh) ) factorfactor

For a constant fraction of the pairs, we use strong diameter For a constant fraction of the pairs, we use strong diameter

property which is true in Bartal’s construction property which is true in Bartal’s construction

It is more technical, but we can obtain factor It is more technical, but we can obtain factor OO (log(log44 hh) ) for for

general demands (solving an open problem)general demands (solving an open problem)

2929

Natural Generalization:Natural Generalization:Group Cost-DistanceGroup Cost-Distance

• Each edge has a buying and a renting cost.• Subsets called demand groups.• Each group only pays one rental cost on each edge

NSSS ...,,, 21

3030

Group Cost-DistanceGroup Cost-Distance

A solution connects each group Si using a tree Ti

F = union of edges in the trees Ti

e

ee fcFb )(Min

fe : number of trees Ti using edge e

3131

Group Cost-DistanceGroup Cost-Distance

• By generalizing our current approach, we can obtain an O(log6n) approximation for this problem [Gupta, Hajiaghayi, and Kumar ’07].[Gupta, Hajiaghayi, and Kumar ’07]..• It is 2^O(log1-en) hard if each edge has different grouping [Gupta, Hajiaghayi, and Kumar ’07].[Gupta, Hajiaghayi, and Kumar ’07].

3232

Recent ExtensionsRecent Extensions

The result The result OO(log(log44nn) ) can be extended to the vertex-weighted case but requires some new can be extended to the vertex-weighted case but requires some new

ideas and some extra work ideas and some extra work [CHKS’07].[CHKS’07].

Especially we obtain theEspecially we obtain the tight tight result result OO(log (log nn) ) for the single-sink vertex-weighted case via for the single-sink vertex-weighted case via

LP roundingLP rounding

Also our results can be extended to stochastic Steiner tree with non-uniform inflation (by Also our results can be extended to stochastic Steiner tree with non-uniform inflation (by

loosing an extra factor loosing an extra factor OO(log (log nn))) ) [Gupta, Hajiaghayi, and Kumar ’07].[Gupta, Hajiaghayi, and Kumar ’07].

Some technique has been used in the Dial-a-Ride problemSome technique has been used in the Dial-a-Ride problem

[Gupta, Hajiaghayi, Ravi, and Nagarajan ’07].[Gupta, Hajiaghayi, Ravi, and Nagarajan ’07].

OO(log(log33nn) ) approximation for non-uniform buy at bulk when demands are polynomial approximation for non-uniform buy at bulk when demands are polynomial

[Kortsarz and Nutov’ 07][Kortsarz and Nutov’ 07]

OO(log(log44nn) ) approximation when want to have two disjoint paths between each demand pair approximation when want to have two disjoint paths between each demand pair

[Chekuri, Antonakapoulos, Shepherd and Zhang’ 07][Chekuri, Antonakapoulos, Shepherd and Zhang’ 07]

OO((nn1/21/2) ) approximation for generalized directed Steiner tree approximation for generalized directed Steiner tree [Chekuri, Even, Gupta, and [Chekuri, Even, Gupta, and

Segev’ 08].Segev’ 08].

Oblivious network design with ratio Oblivious network design with ratio OO(log(log33 nn)) for for uniformuniform buy at bulk, i.e., costs of all buy at bulk, i.e., costs of all

edges are the same sub-additive function edges are the same sub-additive function f f [Gupta, Hajiaghayi, and Raecke ’07].[Gupta, Hajiaghayi, and Raecke ’07].

3333

Open ProblemsOpen Problems

There are still quite large gaps between upper bounds There are still quite large gaps between upper bounds

(approx alg) and lower bounds (hardness)(approx alg) and lower bounds (hardness)

For MC-BB: For MC-BB: vsvs

For SS-BB: For SS-BB: vs vs

It would be nice to upper bound the integrality gap for It would be nice to upper bound the integrality gap for

MC-BB.MC-BB.

Emphasize on the conjecture ofEmphasize on the conjecture of [Alon, Karp, Peleg, [Alon, Karp, Peleg,

and West’ 91]and West’ 91]

3434

Thanks for your attention…Thanks for your attention…

تشکر

Obrigado