Directed Steiner problems are fundamental problems in Combinatorial Optimization and Theoretical Computer Science. An important problem in this genre is the k-edge connected directed Steiner tree (k-DST) problem. In this problem, we are given a directed graph G on n vertices with edge-costs, a root vertex r, a set of h terminals T and an integer k. The goal is to find a min-cost subgraph H ⊆ G that connects r to each terminal t ∈ T by k edge-disjoint r, t-paths. This problem includes as special cases the well-known directed Steiner tree (DST) problem (the case k = 1) and the group Steiner tree (GST) problem. Despite having been studied and mentioned many times in literature, e.g., by Feldman et al. [SODA'09, JCSS'12], by Cheriyan et al. [SODA'12, TALG'14] and by Laekhanukit [SODA'14], there was no known non-trivial approximation algorithm for k-DST for k ≥ 2 even in the special case that an input graph is directed acyclic and has a constant number of layers. If an input graph is not acyclic, the complexity status of k-DST is not known even for a very strict special case that k = 2 and |T | = 2. In this paper, we make a progress toward developing a non-trivial approximation algorithm for k-DST. We present an O(D · k D−1 · log n)-approximation algorithm for k-DST on directed acyclic graphs (DAGs) with D layers, which can be extended to a special case of k-DST on "general graphs" when an instance has a D-shallow optimal solution, i.e., there exist k edge-disjoint r, t-paths, each of length at most D, for every terminal t ∈ T . For the case k = 1 (DST), our algorithm yields an approximation ratio of O(D log h), thus implying an O(log 3 h)-approximation algorithm for DST that runs in quasi-polynomial-time (due to the height-reduction of Zelikovsky [Algorithmica'97]). Our algorithm is based on an LP-formulation that allows us to embed a solution to a tree-instance of GST, which does not preserve connectivity. We show, however, that one can randomly extract a solution of k-DST from the tree-instance of GST. Our algorithm is almost tight when k, D are constants since the case that k = 1 and D = 3 is NP-hard to approximate to within a factor of O(log h), and our algorithm archives the same approximation ratio for this special case. We also remark that the k 1/4−ǫ -hardness instance of k-DST is a DAG with 6 layers, and our algorithm gives O(k 5 log n)-approximation for this special case. Consequently, as our algorithm works for general graphs, we obtain an O(D ·k D−1 · log n)-approximation algorithm for a D-shallow instance of the k edge-connected directed Steiner subgraph problem, where we wish to connect every pair of terminals by k edge-disjoint paths.
In a subsequent work, Laekhanukit REF presented an LP-based O(k D−1 D log n)-approximation algorithm for D-shallow instances of k-DST and k-DSS running in time n O(D) .
Approximating Directed Steiner Problems via Tree Embedding
ICALP 2016
arXiv: Data Structures and Algorithms
Computer Science Mathematics