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

We study the Steiner Tree problem, in which a set of terminal vertices needs to be connected in the cheapest possible way in an edge-weighted graph. This problem has been extensively studied from the viewpoint of approximation and also parametrization. In particular, on one hand Steiner Tree is known to be APX -hard, and W [ 2 ]-hard on the other, if parameterized by the number of non-terminals ( Steiner vertices ) in the optimum solution. In contrast to this we give an eﬃcient parameterized approximation scheme ( EPAS ), which circumvents both hardness results. Moreover, our methods imply the existence of a polynomial size approximate kernelization scheme ( PSAKS ) for the considered parameter. We further study the parameterized approximability of other variants of Steiner Tree , such as Directed Steiner Tree and Steiner Forest . For neither of these an EPAS is likely to exist for the studied parameter: for Steiner Forest an easy observation shows that the problem is APX -hard, even if the input graph contains no Steiner vertices. For Directed Steiner Tree we prove that approximating within any function of the studied parameter is W [ 1 ]-hard. Nevertheless, we show that an EPAS exists for Unweighted Directed Steiner Tree , but a PSAKS does not. We also prove that there is an EPAS and a PSAKS for Steiner Forest if in addition to the number of Steiner vertices, the number of connected components of an optimal solution is considered to be a parameter.


Steiner Tree
Weighted Steiner Tree Input: A graph G = (V, E), a set of terminals R ⊆ V , and a weight function w : E → R + . Task: Find a tree T ⊆ E of smallest weight such that (R, T ) is connected.
Directed Steiner Tree Input: A directed graph G = (V, A), a set of terminals R ⊆ V , a root r ∈ R. Task: Find an arborescence T ⊆ A of smallest size such that every terminal is reachable from r by edges in T .

Steiner Tree
Weighted Steiner Tree Input: A graph G = (V, E), a set of terminals R ⊆ V , and a weight function w : E → R + . Task: Find a tree T ⊆ E of smallest weight such that (R, T ) is connected.
Directed Steiner Tree Input: A directed graph G = (V, A), a set of terminals R ⊆ V , a root r ∈ R. Task: Find an arborescence T ⊆ A of smallest size such that every terminal is reachable from r by edges in T .

Steiner Tree -Known Results
Parameterized complexity: • FPT w.r.t. number of terminals

Theorem
There is an EPAS for the Unweighted Directed Steiner Tree problem

Unweighted
Weighted Undirected Directed

Theorem
There is an EPAS for the Weighted Undirected Steiner Tree problem

Unweighted
Weighted Undirected Directed

Theorem
There is an EPAS for the Weighted Undirected Steiner Tree problem

Unweighted
Weighted Undirected Directed

EPAS for Undirected Unweighted Steiner Tree -Sketch
• We can contract every edge between terminals.
• If there is a Steiner vertex with 'many' terminals as neighbors then we contract them. (Denote its neighbors that are terminals by Q.) • The contraction cost compared to a lower bound for the optimum cost |Q| |Q|−1 . • If this fraction is less than 1 + ε then we can perform contractions recursively. • If not then we have a bounded number of terminals in terms of ε and p: |R| ≤ 2p ε . • So, we can use a known algorithm parameterized by |R|.

EPAS for Undirected Unweighted Steiner Tree -Sketch
• We can contract every edge between terminals.
• If there is a Steiner vertex with 'many' terminals as neighbors then we contract them. (Denote its neighbors that are terminals by Q.) • The contraction cost compared to a lower bound for the optimum cost |Q| |Q|−1 . • If this fraction is less than 1 + ε then we can perform contractions recursively. • If not then we have a bounded number of terminals in terms of ε and p: |R| ≤ 2p ε . • So, we can use a known algorithm parameterized by |R|.

EPAS for Undirected Unweighted Steiner Tree -Sketch
• We can contract every edge between terminals.
• If there is a Steiner vertex with 'many' terminals as neighbors then we contract them. (Denote its neighbors that are terminals by Q.) • The contraction cost compared to a lower bound for the optimum cost |Q| |Q|−1 . • If this fraction is less than 1 + ε then we can perform contractions recursively. • If not then we have a bounded number of terminals in terms of ε and p: |R| ≤ 2p ε . • So, we can use a known algorithm parameterized by |R|.

Overview of algorithm
We define a star C as the central vertex v and the subset Q of its adjacent terminals, where |Q| ≥ 2.
We define a ratio of a star C, as .

Overview of algorithm
We define a star C as the central vertex v and the subset Q of its adjacent terminals, where |Q| ≥ 2.
We define a ratio of a star C, as .

Overview of algorithm
We define a star C as the central vertex v and the subset Q of its adjacent terminals, where |Q| ≥ 2.
We define a ratio of a star C, as .

Analysis
• For analysis we start with an optimal solution T * .
• We maintain a tree originating from T * in the contracted instances.
• Denote the tree after t steps of the algorithm by T * t . We compare the weight of each contraction with a subset of an optimal solution T * .
• In each step we compare weight of w(C t ) with w(D t ).
• D t is a feedback edge set of

Analysis
• For analysis we start with an optimal solution T * .
• We maintain a tree originating from T * in the contracted instances.
• Denote the tree after t steps of the algorithm by T * t . We compare the weight of each contraction with a subset of an optimal solution T * .
• In each step we compare weight of w(C t ) with w(D t ).
• D t is a feedback edge set of

Analysis
• For analysis we start with an optimal solution T * .
• We maintain a tree originating from T * in the contracted instances.
• Denote the tree after t steps of the algorithm by T * t . We compare the weight of each contraction with a subset of an optimal solution T * .
• In each step we compare weight of w(C t ) with w(D t ).
• D t is a feedback edge set of for every t our algorithm is (1 + ε)-approximating. • Unfortunately, this is not always the case. We call such contractions bad and other contraction good.

Analysis
• If w(C t ) ≤ (1 + ε)w(D t ) for every t our algorithm is (1 + ε)-approximating. • Unfortunately, this is not always the case. We call such contractions bad and other contraction good.
for every t our algorithm is (1 + ε)-approximating. • Unfortunately, this is not always the case. We call such contractions bad and other contraction good.
If a star C contains at least (1 + ε)p/ε terminals then contraction of C is good.

Generalizations of Steiner Tree
Weighted Steiner Forest Input: A graph G = (V, E), a list of terminal pairs {s 1 , t 1 }, . . . , {s k , t k }, and a weight function w : E → R + . Task: Find a forest F ⊆ E of smallest weight such that s i and t i is in the same component of F for every i.
In contrast there is no FPT algorithm w.r.t. to number of Terminals in the optimal solution and it is APX-hard even without Steiner vertices.
We extend our results to Steiner Forest while parameterized by the number of components of the optimal solution in addition to p.

Generalizations of Steiner Tree
Weighted Steiner Forest Input: A graph G = (V, E), a list of terminal pairs {s 1 , t 1 }, . . . , {s k , t k }, and a weight function w : E → R + . Task: Find a forest F ⊆ E of smallest weight such that s i and t i is in the same component of F for every i.
In contrast there is no FPT algorithm w.r.t. to number of Terminals in the optimal solution and it is APX-hard even without Steiner vertices.
We extend our results to Steiner Forest while parameterized by the number of components of the optimal solution in addition to p.

Generalizations of Steiner Tree
Weighted Steiner Forest Input: A graph G = (V, E), a list of terminal pairs {s 1 , t 1 }, . . . , {s k , t k }, and a weight function w : E → R + . Task: Find a forest F ⊆ E of smallest weight such that s i and t i is in the same component of F for every i.
In contrast there is no FPT algorithm w.r.t. to number of Terminals in the optimal solution and it is APX-hard even without Steiner vertices.
We extend our results to Steiner Forest while parameterized by the number of components of the optimal solution in addition to p.