Parameterized Approximation Schemes for Steiner Trees with Small - - PowerPoint PPT Presentation

parameterized approximation schemes for steiner trees
SMART_READER_LITE
LIVE PREVIEW

Parameterized Approximation Schemes for Steiner Trees with Small - - PowerPoint PPT Presentation

Parameterized Approximation Schemes for Steiner Trees with Small Number of Steiner Vertices ak 1 , Andreas Emil Feldmann 1 , Du san Knop 1 , 2 ,Tom Pavel Dvo r a s k 1 , Tom s Toufar 1 , Pavel Vesel y 1 Masa r a 1


slide-1
SLIDE 1

Parameterized Approximation Schemes for Steiner Trees with Small Number of Steiner Vertices

Pavel Dvoˇ r´ ak1, Andreas Emil Feldmann1, Duˇ san Knop1,2,Tom´ aˇ s Masaˇ r´ ık1, Tom´ aˇ s Toufar1, Pavel Vesel´ y1

1Charles University,Prague, Czech Republic 2University of Bergen, Bergen, Norway

HALG 2018 Amsterdam, Netherlands

The research leading to these results has received funding from the European Research Coun- cil under the European Union’s Seventh Framework Programme (FP/2007-2013) / ERC Grant Agreement n. 616787. EPAS for Steiner Trees HALG 2018 1 / 5

slide-2
SLIDE 2

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight. EPAS for Steiner Trees HALG 2018 2 / 5

slide-3
SLIDE 3

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight. EPAS for Steiner Trees HALG 2018 2 / 5

slide-4
SLIDE 4

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight.

2 2 2 1 1 1

EPAS for Steiner Trees HALG 2018 2 / 5

slide-5
SLIDE 5

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight.

2 2 2 1 1 1

EPAS for Steiner Trees HALG 2018 2 / 5

slide-6
SLIDE 6

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight.

2 2 2 1 1 1

EPAS for Steiner Trees HALG 2018 2 / 5

slide-7
SLIDE 7

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight.

2 2 2 1 1 1

EPAS for Steiner Trees HALG 2018 2 / 5

slide-8
SLIDE 8

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight.

2 2 2 1 1 1

EPAS for Steiner Trees HALG 2018 2 / 5

slide-9
SLIDE 9

Steiner Tree

Input:

◮ Graph G = (V , E). ◮ Edge weights: w : E → R+

0 .

◮ Terminals R ⊆ V (vertices in V \ R are called Steiner vertices).

Goal: find a Steiner tree T ⊆ G.

◮ R ⊆ V (T). ◮ Minimize weight.

2 2 2 1 1 1

EPAS for Steiner Trees HALG 2018 2 / 5

slide-10
SLIDE 10

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore]. EPAS for Steiner Trees HALG 2018 3 / 5

slide-11
SLIDE 11

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore]. EPAS for Steiner Trees HALG 2018 3 / 5

slide-12
SLIDE 12

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore]. EPAS for Steiner Trees HALG 2018 3 / 5

slide-13
SLIDE 13

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore]. EPAS for Steiner Trees HALG 2018 3 / 5

slide-14
SLIDE 14

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore]. EPAS for Steiner Trees HALG 2018 3 / 5

slide-15
SLIDE 15

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore]. EPAS for Steiner Trees HALG 2018 3 / 5

slide-16
SLIDE 16

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore].

Approximation

96/95-approximation is NP-hard [Chleb´ ık and Chleb´ ıkov´ a ’02]. 1.39-approximation algorithm [Byrka et al. ’13].

EPAS for Steiner Trees HALG 2018 3 / 5

slide-17
SLIDE 17

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore].

Approximation

96/95-approximation is NP-hard [Chleb´ ık and Chleb´ ıkov´ a ’02]. 1.39-approximation algorithm [Byrka et al. ’13].

EPAS for Steiner Trees HALG 2018 3 / 5

slide-18
SLIDE 18

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore].

Approximation

96/95-approximation is NP-hard [Chleb´ ık and Chleb´ ıkov´ a ’02]. 1.39-approximation algorithm [Byrka et al. ’13].

EPAS for Steiner Trees HALG 2018 3 / 5

slide-19
SLIDE 19

Known Results

Parameterized Complexity

Number of terminals |R|.

◮ FPT-algorithm [Dreyfus and Wagner ’71, M¨

  • lle et al. ’06].

◮ (1 + ε)-approximate polynomial size kernel [Lokshtanov et al. ’16].

Number of Steiner vertices in the optimum |V (T) \ R| = p.

◮ W[2]-hard [folklore].

Approximation

96/95-approximation is NP-hard [Chleb´ ık and Chleb´ ıkov´ a ’02]. 1.39-approximation algorithm [Byrka et al. ’13]. We study the parameter p = |V (T) \ R| – good problem for parameterized approximation.

EPAS for Steiner Trees HALG 2018 3 / 5

slide-20
SLIDE 20

Our Results

Existence of

1 Efficient parameterized approximation scheme – it returns

(1 + ε)-approximation in time f (p, ε) · poly(n).

EPAS for Steiner Trees HALG 2018 4 / 5

slide-21
SLIDE 21

Our Results

Existence of

1 Efficient parameterized approximation scheme – it returns

(1 + ε)-approximation in time f (p, ε) · poly(n).

2 Polynomial size approximate kernelization scheme. EPAS for Steiner Trees HALG 2018 4 / 5

slide-22
SLIDE 22

Our Results

Existence of

1 Efficient parameterized approximation scheme – it returns

(1 + ε)-approximation in time f (p, ε) · poly(n).

2 Polynomial size approximate kernelization scheme.

Unweighted Weighted Undirected

  • Directed
  • ×∗

×∗∗ ×∗∗

∗ Unless NP ⊆ coNP/poly. ∗∗ Unless FPT= W[2].

EPAS for Steiner Trees HALG 2018 4 / 5

slide-23
SLIDE 23

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). EPAS for Steiner Trees HALG 2018 5 / 5

slide-24
SLIDE 24

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|. EPAS for Steiner Trees HALG 2018 5 / 5

slide-25
SLIDE 25

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q

EPAS for Steiner Trees HALG 2018 5 / 5

slide-26
SLIDE 26

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q Reduction Rule 1: We can assume any such edge is in the optimal solution.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-27
SLIDE 27

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q Reduction Rule 2: The optimal solution uses at least d edges to connect terminals in Q. Our solution uses at most d + 1 edges.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-28
SLIDE 28

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q Reduction Rule 2: The optimal solution uses at least d edges to connect terminals in Q. Our solution uses at most d + 1 edges.

ALG OPT

EPAS for Steiner Trees HALG 2018 5 / 5

slide-29
SLIDE 29

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q Reduction Rule 2: The optimal solution uses at least d edges to connect terminals in Q. Our solution uses at most d + 1 edges.

ALG OPT = d+1 d

EPAS for Steiner Trees HALG 2018 5 / 5

slide-30
SLIDE 30

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q Reduction Rule 2: The optimal solution uses at least d edges to connect terminals in Q. Our solution uses at most d + 1 edges.

ALG OPT = d+1 d

= 1 + 1

d

EPAS for Steiner Trees HALG 2018 5 / 5

slide-31
SLIDE 31

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q Reduction Rule 2: The optimal solution uses at least d edges to connect terminals in Q. Our solution uses at most d + 1 edges.

ALG OPT = d+1 d

= 1 + 1

d ≤ 1 + ε.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-32
SLIDE 32

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q If we can not apply any rule:

EPAS for Steiner Trees HALG 2018 5 / 5

slide-33
SLIDE 33

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q If we can not apply any rule:

1

There are only edges terminal–Steiner vertex.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-34
SLIDE 34

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q If we can not apply any rule:

1

There are only edges terminal–Steiner vertex.

2

Each Steiner vertex is adjacent to at most 1/ε terminals.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-35
SLIDE 35

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q If we can not apply any rule:

1

There are only edges terminal–Steiner vertex.

2

Each Steiner vertex is adjacent to at most 1/ε terminals.

3

There is a Steiner tree with at most p Steiner vertices.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-36
SLIDE 36

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q If we can not apply any rule:

1

There are only edges terminal–Steiner vertex.

2

Each Steiner vertex is adjacent to at most 1/ε terminals.

3

There is a Steiner tree with at most p Steiner vertices.

4

There are at most p/ε terminals.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-37
SLIDE 37

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Unweighted Case

d ≥ 1/ε 1 2 Q The directed unweighted case is similar.

EPAS for Steiner Trees HALG 2018 5 / 5

slide-38
SLIDE 38

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Weight Case

w(C) Q C r(C) = w(C)

|Q|−1

EPAS for Steiner Trees HALG 2018 5 / 5

slide-39
SLIDE 39

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Weight Case

w(C) Q C r(C) = w(C)

|Q|−1

In each step t we contract a star Ct of the smallest ratio r(Ct).

EPAS for Steiner Trees HALG 2018 5 / 5

slide-40
SLIDE 40

Main Algorithmic Idea

1 Reduce the number of terminals under some bound f (p, ε). 2 Use some existing algorithm or kernel for the parameter |R|.

Undirected Weight Case

w(C) Q C r(C) = w(C)

|Q|−1

In each step t we contract a star Ct of the smallest ratio r(Ct).

Thank you for your attention!

EPAS for Steiner Trees HALG 2018 5 / 5