46
Network Design with Coverage Costs Siddharth Barman 1 Shuchi Chawla 2 Seeun William Umboh 2 1 Caltech 2 University of Wisconsin-Madison APPROX-RANDOM 2014

New Network Design with Coverage Costspages.cs.wisc.edu/~seeun/presentations/approx14.pdf · 2014. 10. 16. · Network design with economies of scale. å edges Cost of edge Load on

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

  • Network Design withCoverage Costs

    Siddharth Barman 1 Shuchi Chawla 2 Seeun William Umboh 2

    1Caltech

    2University of Wisconsin-Madison

    APPROX-RANDOM 2014

  • Motivation

  • Physical Flow vs Data Flow

    vs.

    Commodity Network Internet

    Unlike physical commodities, data can be easily duplicated,compressed, and combined.

  • Physical Flow vs Data Flow

    Flow = 1

    Flow = 1

    Flow = 2

    P = 10010

    P = 10010

    P = 10010vs.

    Unlike physical commodities, data can be easily duplicated,compressed, and combined.

  • Why Coverage Costs?

    • Want a cost structure that captures bandwidth savings obtainedby eliminating redundancy in data.

    ▶ Packet deduplication capability exists in networks today.

  • Problem Statement

  • Load Function

    We focus on redundant-data elimination:

    Load on an edge ℓe = # distinct data packets on it.

    P1 : 11100P1 : 11100P2 : 00011

    Load = 2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)

    • A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    s1 t1

    s2 t2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)• A global set of packets Π.

    • A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    �s1 t1

    s2 t2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)• A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    D1D2

    s1 t1

    s2 t2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)• A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    ∑edges

    Cost of edge×Load on edge

    D1D2

    s1 t1

    s2 t2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)• A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    ∑edges

    Cost of edge×# distinct packets on edge

    D1D2

    s1 t1

    s2 t2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)• A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    ∑edges

    Cost of edge×# distinct packets on edge

    D1D2

    s1 t1

    s2 t2

  • Input:• Graph with edge costs, g terminal pairs (s1, t1), . . . ,(sg, tg)• A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find (sj, tj) path on which to route Dj for each j minimizing

    ∑edges

    Cost of edge×# distinct packets on edge

    D1D2

    s1 t1

    s2 t2

    |D1|

    |D2|

    |D1|

    |D2||D1 U D2|

  • More generally, we consider terminal groups.Input:

    • Graph with edge costs, g terminal groups X1, . . . ,Xg ⊂ V.• A global set of packets Π.• A demand set Dj ⊂ Π for each j.

    Goal: Find a Steiner tree for Xj on which to broadcast Dj for each jminimizing

    ∑edges

    Cost of edge×# distinct packets on edge

  • Special cases (for terminal pairs):

    • Pairwise disjoint demands =⇒ shortest-paths

    s1 t1

    s2 t2

    |D1|

    |D2|

    D1 D2

    • Identical demands =⇒ Steiner forests1 t1

    s2 t2

    |D|

    |D|

    |D|

    |D||D|

    D1, D2 = D

  • Special cases (for terminal pairs):

    • Pairwise disjoint demands =⇒ shortest-paths

    s1 t1

    s2 t2

    |D1|

    |D2|

    D1 D2

    • Identical demands =⇒ Steiner forests1 t1

    s2 t2

    |D|

    |D|

    |D|

    |D||D|

    D1, D2 = D

  • Challenges

    • Intuitively, difficulty depends on complexity of demand sets

    • Desire an approximation in terms of g (number of groups), e.g.O(logg) (tree embeddings only yield O(logn)).

  • Challenges

    • Intuitively, difficulty depends on complexity of demand sets

    • Desire an approximation in terms of g (number of groups), e.g.O(logg) (tree embeddings only yield O(logn)).

  • Our results

  • Laminar DemandsThe family of demand sets is said to be laminar if ∀ i, j one of thefollowing holds: Di ∩Dj = ϕ or Di ⊂ Dj or Dj ⊂ Di.

    D1 D2

    D3

    D4D5

    D2D1

    D3 D5D4

    TheoremNDCC with laminar demands admits a 2-approximation.

    Previous work: O(log |Π|) [Barman-Chawla ’12].

  • Laminar DemandsThe family of demand sets is said to be laminar if ∀ i, j one of thefollowing holds: Di ∩Dj = ϕ or Di ⊂ Dj or Dj ⊂ Di.

    D1 D2

    D3

    D4D5

    D2D1

    D3 D5D4

    TheoremNDCC with laminar demands admits a 2-approximation.

    Previous work: O(log |Π|) [Barman-Chawla ’12].

  • Sunflower DemandsThe family of demand sets is said to be a sunflower family if thereexists a core C ⊂ Π such that ∀ i, j, Di ∩Dj = C.

    C

    Di \ C

    Dj \ C

    No O(log1/4−γ g)-approximation for any γ > 0 (reduction fromsingle-cable buy-at-bulk [Andrews-Zhang ’02]).

    TheoremNDCC with sunflower demands admits an O(log g) approximation overunweighted graphs with V =

    ∪j Xj.

  • Sunflower DemandsThe family of demand sets is said to be a sunflower family if thereexists a core C ⊂ Π such that ∀ i, j, Di ∩Dj = C.

    C

    Di \ C

    Dj \ C

    No O(log1/4−γ g)-approximation for any γ > 0 (reduction fromsingle-cable buy-at-bulk [Andrews-Zhang ’02]).

    TheoremNDCC with sunflower demands admits an O(log g) approximation overunweighted graphs with V =

    ∪j Xj.

  • Sunflower DemandsThe family of demand sets is said to be a sunflower family if thereexists a core C ⊂ Π such that ∀ i, j, Di ∩Dj = C.

    C

    Di \ C

    Dj \ C

    No O(log1/4−γ g)-approximation for any γ > 0 (reduction fromsingle-cable buy-at-bulk [Andrews-Zhang ’02]).

    TheoremNDCC with sunflower demands admits an O(log g) approximation overunweighted graphs with V =

    ∪j Xj.

  • Related WorkNetwork design with economies of scale.

    ∑edges

    Cost of edge×Load on edge

    • Submodular costs on edges [Hayrapetyan-Swamy-Tardos ’05]▶ O(logn) via tree embeddings.

    • Buy-at-Bulk Network Design [Salman et al. ’97]▶ Single-source: O(1) [Guha et al. ’01, Talwar ’02,

    Gupta-Kumar-Roughgarden ’03]▶ Multiple-source: Ω(log

    14 n) hardness [Andrews ’04]

  • Related WorkNetwork design with economies of scale.

    ∑edges

    Cost of edge×Load on edge

    • Submodular costs on edges [Hayrapetyan-Swamy-Tardos ’05]▶ O(logn) via tree embeddings.

    • Buy-at-Bulk Network Design [Salman et al. ’97]▶ Single-source: O(1) [Guha et al. ’01, Talwar ’02,

    Gupta-Kumar-Roughgarden ’03]▶ Multiple-source: Ω(log

    14 n) hardness [Andrews ’04]

  • Related WorkNetwork design with economies of scale.

    ∑edges

    Cost of edge×Load on edge

    • Submodular costs on edges [Hayrapetyan-Swamy-Tardos ’05]▶ O(logn) via tree embeddings.

    • Buy-at-Bulk Network Design [Salman et al. ’97]▶ Single-source: O(1) [Guha et al. ’01, Talwar ’02,

    Gupta-Kumar-Roughgarden ’03]▶ Multiple-source: Ω(log

    14 n) hardness [Andrews ’04]

  • Approach: Laminar

  • Laminar⇧

    D1 D2

    D3

    D4D5

    D2D1

    D3 D5D4

    • Naive LP does not have much structure• Key idea: exploit laminarity to write a different LP• Run an extension of AKR-GW primal-dual algorithm to get

    2-approx

  • Approach: Sunflower(single-source for this talk)

  • Sunflower Family of DemandsThe family of demand sets is said to be a sunflower family if thereexists C ⊂ Π such that ∀ i, j, Di ∩Dj = C.

    C

    Di \ C

    Dj \ C

    TheoremNetwork Design with Coverage Costs in the sunflower demands settingadmits an O(log g) approximation over unweighted graphs with V =

    ∪j Xj.

  • Structure of OPTDefine:

    • E∗j = Steiner tree for Xj on which OPT broadcasts Dj ⊃ C• E∗0 =

    ∪j E

    ∗j

    Note: E∗0 spans V because V =∪

    j Xj and single-source (each Xjcontains s)

    c(OPT) = |C| · c(E∗0)+∑j|Dj \C| · c(E∗j )

    ≥ |C| · c(MST)+∑j|Dj \C| · c(opt Steiner for Xj)

  • Structure of OPTDefine:

    • E∗j = Steiner tree for Xj on which OPT broadcasts Dj ⊃ C• E∗0 =

    ∪j E

    ∗j

    Note: E∗0 spans V because V =∪

    j Xj and single-source (each Xjcontains s)

    c(OPT) = |C| · c(E∗0)+∑j|Dj \C| · c(E∗j )

    ≥ |C| · c(MST)+∑j|Dj \C| · c(opt Steiner for Xj)

  • Structure of OPTDefine:

    • E∗j = Steiner tree for Xj on which OPT broadcasts Dj ⊃ C• E∗0 =

    ∪j E

    ∗j

    Note: E∗0 spans V because V =∪

    j Xj and single-source (each Xjcontains s)

    c(OPT) = |C| · c(E∗0)+∑j|Dj \C| · c(E∗j )

    ≥ |C| · c(MST)+∑j|Dj \C| · c(opt Steiner for Xj)

  • Group Spanners

    DefinitionFor a graph G and g groups X1, . . . ,Xg ⊂ V, a subgraph H is a (α,β )group spanner if

    • c(H)≤ αc(MST),• c(opt Steiner for Xj in H)≤ β c(opt Steiner for Xj in G) for all j.

    Usual spanners: Xjs are all vertex pairs.

    • c(shortest u− v path in H)≤ β c(shortest u− v path in G) for allu,v ∈ V.

  • Group Spanners

    DefinitionFor a graph G and g groups X1, . . . ,Xg ⊂ V, a subgraph H is a (α,β )group spanner if

    • c(H)≤ αc(MST),• c(opt Steiner for Xj in H)≤ β c(opt Steiner for Xj in G) for all j.

    Usual spanners: Xjs are all vertex pairs.

    • c(shortest u− v path in H)≤ β c(shortest u− v path in G) for allu,v ∈ V.

  • Using Group Spanners

    Given (α,β ) group spanner H, route Dj along 2-approximate Steinertree for Xj in H.

    Cost ≤ |C| · c(H)+∑j|Dj \C| ·2c(opt Steiner for Xj in H)

    ≤ |C| ·αc(MST)+∑j|Dj \C| ·2β c(opt Steiner for Xj)

    ≤ max{α,2β}OPT .

  • Group Spanners Result

    LemmaGiven an unweighted graph G and g groups X1, . . . ,Xg ⊂ V with V =

    ∪j Xj,

    we can construct in polynomial time a (O(1),O(log g)) group spanner.

    TheoremNetwork Design with Coverage Costs in the sunflower demands settingadmits an O(log g) approximation over unweighted graphs with V =

    ∪j Xj.

  • Summary• Coverage cost model for designing information networks.

    P1 : 11100P1 : 11100P2 : 00011

    Load = 2

    • Laminar demands: 2-approximation via primal-dual.⇧

    D1 D2

    D3

    D4D5

    D2D1

    D3 D5D4

    • Sunflower demands: O(log g)-approximation (unweighted graph,no Steiner vertices).

    C

    Di \ C

    Dj \ C

    • Group spanners: (O(1),O(log g)) group spanners (unweightedgraph, no Steiner vertices).

  • Summary• Coverage cost model for designing information networks.

    P1 : 11100P1 : 11100P2 : 00011

    Load = 2

    • Laminar demands: 2-approximation via primal-dual.⇧

    D1 D2

    D3

    D4D5

    D2D1

    D3 D5D4

    • Sunflower demands: O(log g)-approximation (unweighted graph,no Steiner vertices).

    C

    Di \ C

    Dj \ C

    • Group spanners: (O(1),O(log g)) group spanners (unweightedgraph, no Steiner vertices).

  • Summary• Coverage cost model for designing information networks.

    P1 : 11100P1 : 11100P2 : 00011

    Load = 2

    • Laminar demands: 2-approximation via primal-dual.⇧

    D1 D2

    D3

    D4D5

    D2D1

    D3 D5D4

    • Sunflower demands: O(log g)-approximation (unweighted graph,no Steiner vertices).

    C

    Di \ C

    Dj \ C

    • Group spanners: (O(1),O(log g)) group spanners (unweightedgraph, no Steiner vertices).

  • Open Problems

    • Group spanners: (O(log g),O(log g)) in general?

    • Sunflower demands: O(log g) approximation in general?• Terminal pairs with single-source: O(1)?

    Thanks!

  • Open Problems

    • Group spanners: (O(log g),O(log g)) in general?• Sunflower demands: O(log g) approximation in general?

    • Terminal pairs with single-source: O(1)?

    Thanks!

  • Open Problems

    • Group spanners: (O(log g),O(log g)) in general?• Sunflower demands: O(log g) approximation in general?• Terminal pairs with single-source: O(1)?

    Thanks!

  • Open Problems

    • Group spanners: (O(log g),O(log g)) in general?• Sunflower demands: O(log g) approximation in general?• Terminal pairs with single-source: O(1)?

    Thanks!