Directed Steiner Tree and the Lasserre Hierarchy Thomas Rothvoß Department of Mathematics, M.I.T.
Directed Steiner Tree r 4 7 9 8 6 4 8 7
Directed Steiner Tree Input: ◮ directed weighted graph G = ( V, E, c ) r 3 2 4 7 3 5 2 9 8 1 6 4 8 2 0 1 7
Directed Steiner Tree Input: ◮ directed weighted graph G = ( V, E, c ) ◮ root r ∈ V r root 3 2 4 7 3 5 2 9 8 1 6 4 8 2 0 1 7
Directed Steiner Tree Input: ◮ directed weighted graph G = ( V, E, c ) ◮ root r ∈ V , terminals X r 3 2 4 7 3 5 2 9 8 1 6 4 8 2 0 1 7 terminals
Directed Steiner Tree Input: ◮ directed weighted graph G = ( V, E, c ) ◮ root r ∈ V , terminals X Find: Tree T connecting r and X , minimizing c ( T ) r 3 2 4 7 3 5 2 9 8 1 6 4 8 2 0 1 7
Directed Steiner Tree Input: ◮ directed weighted graph G = ( V, E, c ) ◮ root r ∈ V , terminals X Find: Tree T connecting r and X , minimizing c ( T ) r 3 2 4 7 3 5 2 9 8 1 6 4 8 2 0 1 7 ◮ W.l.o.g. G is acyclic
Directed Steiner Tree Input: ◮ directed weighted graph G = ( V, E, c ) ◮ root r ∈ V , terminals X Find: Tree T connecting r and X , minimizing c ( T ) layer 0 r 3 2 4 layer 1 7 3 5 2 9 8 . . . 1 6 4 8 2 0 1 7 layer ℓ ◮ W.l.o.g. G is acyclic ◮ Modulo O (log | X | ) factor, may assume ℓ = log | X | levels ( ∃ ℓ -level tree of cost ℓ · | X | 1 /ℓ · OPT [Zelikovsky ’97])
What’s known? Generalizes: ◮ Set Cover ◮ ( Non-metric / Multi-level ) Facility Location ◮ Group Steiner Tree
What’s known? Generalizes: ◮ Set Cover ◮ ( Non-metric / Multi-level ) Facility Location ◮ Group Steiner Tree Known results: ◮ Ω(log 2 − ε n )-hard [Halperin, Krauthgamer ’03]
What’s known? Generalizes: ◮ Set Cover ◮ ( Non-metric / Multi-level ) Facility Location ◮ Group Steiner Tree Known results: ◮ Ω(log 2 − ε n )-hard [Halperin, Krauthgamer ’03] ◮ | X | ε -apx in polytime (for any ε > 0) → sophisticated greedy algo [Zelikovsky ’97]
What’s known? Generalizes: ◮ Set Cover ◮ ( Non-metric / Multi-level ) Facility Location ◮ Group Steiner Tree Known results: ◮ Ω(log 2 − ε n )-hard [Halperin, Krauthgamer ’03] ◮ | X | ε -apx in polytime (for any ε > 0) → sophisticated greedy algo [Zelikovsky ’97] ◮ O (log 3 | X | )-apx in n O (log | X | ) time → (more) sophisticated greedy algo [Charikar, Chekuri, Cheung, Goel, Guha and Li ’99]
What’s known? Generalizes: ◮ Set Cover ◮ ( Non-metric / Multi-level ) Facility Location ◮ Group Steiner Tree Known results: ◮ Ω(log 2 − ε n )-hard [Halperin, Krauthgamer ’03] ◮ | X | ε -apx in polytime (for any ε > 0) → sophisticated greedy algo [Zelikovsky ’97] ◮ O (log 3 | X | )-apx in n O (log | X | ) time → (more) sophisticated greedy algo [Charikar, Chekuri, Cheung, Goel, Guha and Li ’99] What about LPs?
A flow based LP r Variables: ◮ y e = “use edge e ?” ◮ f s,e = “ r - s flow uses e ?” Constraints: � min c e y e e ∈ E 1 v = r � � f s,e − f s,e = − 1 v = s ∀ s ∈ X ∀ v ∈ V e ∈ δ + ( v ) e ∈ δ − ( v ) 0 otherwise f s,e ≤ y e ∀ s ∈ X ∀ e ∈ E y ( δ − ( v )) ≤ ∀ v ∈ V 1 0 ≤ y e ≤ 1 ∀ e ∈ E 0 ≤ f s,e ≤ ∀ s ∈ X ∀ e ∈ E 1
A flow based LP r 1 / 2 Variables: 1 / 2 ◮ y e = “use edge e ?” ◮ f s,e = “ r - s flow uses e ?” 1 / 2 1 / 2 Constraints: � min c e y e e ∈ E 1 v = r � � f s,e − f s,e = − 1 v = s ∀ s ∈ X ∀ v ∈ V e ∈ δ + ( v ) e ∈ δ − ( v ) 0 otherwise f s,e ≤ y e ∀ s ∈ X ∀ e ∈ E y ( δ − ( v )) ≤ ∀ v ∈ V 1 0 ≤ y e ≤ 1 ∀ e ∈ E 0 ≤ f s,e ≤ ∀ s ∈ X ∀ e ∈ E 1
A flow based LP r 1 / 2 Variables: 1 / 2 ◮ y e = “use edge e ?” 1 / 2 1 / 2 ◮ f s,e = “ r - s flow uses e ?” 1 / 2 1 / 2 1 / 2 Constraints: � min c e y e 1 / 2 e ∈ E 1 v = r � � f s,e − f s,e = − 1 v = s ∀ s ∈ X ∀ v ∈ V e ∈ δ + ( v ) e ∈ δ − ( v ) 0 otherwise f s,e ≤ y e ∀ s ∈ X ∀ e ∈ E y ( δ − ( v )) ≤ ∀ v ∈ V 1 0 ≤ y e ≤ 1 ∀ e ∈ E 0 ≤ f s,e ≤ ∀ s ∈ X ∀ e ∈ E 1
A flow based LP r 1 / 2 1 / 2 Variables: 1 / 2 1 / 2 ◮ y e = “use edge e ?” 1 / 2 1 / 2 ◮ f s,e = “ r - s flow uses e ?” 1 / 2 1 / 2 1 / 2 1 / 2 Constraints: � 1 / 2 min c e y e 1 / 2 e ∈ E 1 v = r � � f s,e − f s,e = − 1 v = s ∀ s ∈ X ∀ v ∈ V e ∈ δ + ( v ) e ∈ δ − ( v ) 0 otherwise f s,e ≤ y e ∀ s ∈ X ∀ e ∈ E y ( δ − ( v )) ≤ ∀ v ∈ V 1 0 ≤ y e ≤ 1 ∀ e ∈ E 0 ≤ f s,e ≤ ∀ s ∈ X ∀ e ∈ E 1
A flow based LP r 1 / 2 1 / 2 Variables: 1 / 2 1/2 1/2 1 / 2 1/2 ◮ y e = “use edge e ?” 1 / 2 1 / 2 ◮ f s,e = “ r - s flow uses e ?” 1 / 2 1/2 1/2 1 / 2 1/2 1 / 2 1/2 1 / 2 Constraints: 1/2 1/2 � 1 / 2 min c e y e 1 / 2 e ∈ E 1 v = r � � f s,e − f s,e = − 1 v = s ∀ s ∈ X ∀ v ∈ V e ∈ δ + ( v ) e ∈ δ − ( v ) 0 otherwise f s,e ≤ y e ∀ s ∈ X ∀ e ∈ E y ( δ − ( v )) ≤ ∀ v ∈ V 1 0 ≤ y e ≤ 1 ∀ e ∈ E 0 ≤ f s,e ≤ ∀ s ∈ X ∀ e ∈ E 1
Integrality gap instance [Zosin - Khuller ’02] r cost k a S √ | S | = k if S ⊆ S ′ cost 0 √ | S ′ | = k + 1 b S ′ √ cost k c S ′ √ | S ′ | = k + 1 cost 0 if i ∈ S ′ i k terminals √ ◮ Integrality gap is Ω( k ) already for 5 layers. √ k ) ; no ω (log 2 n ) gap instance known) (though n = 2 ˜ Θ(
Integrality gap instance [Zosin - Khuller ’02] r cost k a S √ | S | = k if S ⊆ S ′ cost 0 √ | S ′ | = k + 1 b S ′ √ cost k c S ′ √ | S ′ | = k + 1 cost 0 if i ∈ S ′ i k terminals √ ◮ Integrality gap is Ω( k ) already for 5 layers. √ k ) ; no ω (log 2 n ) gap instance known) (though n = 2 ˜ Θ(
Integrality gap instance [Zosin - Khuller ’02] r cost k a S √ | S | = k if S ⊆ S ′ cost 0 √ | S ′ | = k + 1 b S ′ √ cost k c S ′ √ | S ′ | = k + 1 cost 0 if i ∈ S ′ i k terminals √ ◮ Integrality gap is Ω( k ) already for 5 layers. √ k ) ; no ω (log 2 n ) gap instance known) (though n = 2 ˜ Θ(
Integrality gap instance [Zosin - Khuller ’02] r cost k a S √ | S | = k if S ⊆ S ′ cost 0 √ | S ′ | = k + 1 b S ′ √ cost k c S ′ √ What about the Lasserre strengthening? | S ′ | = k + 1 cost 0 if i ∈ S ′ i k terminals √ ◮ Integrality gap is Ω( k ) already for 5 layers. √ k ) ; no ω (log 2 n ) gap instance known) (though n = 2 ˜ Θ(
Round- t Lasserre relaxation ◮ Given: K = { x ∈ R n | Ax ≥ b } .
Round- t Lasserre relaxation ◮ Given: K = { x ∈ R n | Ax ≥ b } . ◮ Introduce variables y I ≡ � i ∈ I ( x i = 1) for I ⊆ { 1 , . . . , n } with | I | ≤ 2 t + 2
Round- t Lasserre relaxation ◮ Given: K = { x ∈ R n | Ax ≥ b } . ◮ Introduce variables y I ≡ � i ∈ I ( x i = 1) for I ⊆ { 1 , . . . , n } with | I | ≤ 2 t + 2 Round- t Lasserre relaxation ( y I ∪ J ) | I | , | J |≤ t +1 � 0 � � � A ℓi y I ∪ J ∪{ i } − b ℓ y I ∪ J � ∀ ℓ ∈ [ m ] 0 | I | , | J |≤ t i ∈ [ n ] y ∅ = 1
Properties of Lasserre hierarchy Theorem Let K = { x ∈ R n | Ax ≥ b } ; y ∈ Las t ( K ) ; | I | , | J | ≤ t R ( [ n ] 2 t +2 ) y Las t y { i } 0 1
b b Properties of Lasserre hierarchy Theorem Let K = { x ∈ R n | Ax ≥ b } ; y ∈ Las t ( K ) ; | I | , | J | ≤ t R ( [ n ] 2 t +2 ) Las t − 1 z ′ z ′ { i } = 1 y z { i } = 0 z Las t y { i } 0 1
b b Properties of Lasserre hierarchy Theorem Let K = { x ∈ R n | Ax ≥ b } ; y ∈ Las t ( K ) ; | I | , | J | ≤ t (a) Local consistency: y ∈ conv { z ∈ Las t −| I | ( K ) | z { i } ∈ { 0 , 1 } ∀ i ∈ I } R ( [ n ] 2 t +2 ) Las t − 1 z ′ z ′ { i } = 1 y z { i } = 0 z Las t y { i } 0 1
b b Properties of Lasserre hierarchy Theorem Let K = { x ∈ R n | Ax ≥ b } ; y ∈ Las t ( K ) ; | I | , | J | ≤ t (a) Local consistency: y ∈ conv { z ∈ Las t −| I | ( K ) | z { i } ∈ { 0 , 1 } ∀ i ∈ I } (b) Decomposition: [Karlin-Mathieu-Nguyen ’11] Let S ⊆ [ n ] ; k := max {| I | : I ⊆ S ; x ∈ K ; x i = 1 ∀ i ∈ I } ≤ t . Then y ∈ conv { z ∈ Las t − k ( K ) | z { i } ∈ { 0 , 1 } ∀ i ∈ S } . R ( [ n ] 2 t +2 ) Las t − 1 z ′ z ′ { i } = 1 y z { i } = 0 z Las t y { i } 0 1
Properties of Lasserre hierarchy Theorem Let K = { x ∈ R n | Ax ≥ b } ; y ∈ Las t ( K ) ; | I | , | J | ≤ t (a) Local consistency: y ∈ conv { z ∈ Las t −| I | ( K ) | z { i } ∈ { 0 , 1 } ∀ i ∈ I } (b) Decomposition: [Karlin-Mathieu-Nguyen ’11] Let S ⊆ [ n ] ; k := max {| I | : I ⊆ S ; x ∈ K ; x i = 1 ∀ i ∈ I } ≤ t . Then y ∈ conv { z ∈ Las t − k ( K ) | z { i } ∈ { 0 , 1 } ∀ i ∈ S } . ◮ Example: For Knapsack take S := { large items }
Recommend
More recommend