Surviving in Directed Graphs: A Polylogarithmic Approximation for Two-Connected Directed Steiner Tree
Abstract
In this paper, we study a survivable network design problem on directed graphs, 2-Connected Directed Steiner Tree (2-DST): given an $n$-vertex weighted directed graph, a root $r$, and a set of $h$ terminals $S$, find a min-cost subgraph $H$ that has two edge/vertex disjoint paths from $r$ to any $t\in S$. 2-DST is a natural generalization of the classical Directed Steiner Tree problem (DST), where we have an additional requirement that the network must tolerate one failure. No non-trivial approximation is known for 2-DST. This was left as an open problem by Feldman et al., [SODA'09; JCSS] and has then been studied by Cheriyan et al. [SODA'12; TALG] and Laekhanukit SODA'14]. However, no positive result was known except for the special case of a $D$-shallow instance [Laekhanukit, ICALP'16]. We present an $O(D^3\log D\cdot h^{2/D}\cdot \log n)$ approximation algorithm for 2-DST that runs in time $O(n^{O(D)})$, for any $D\in[\log_2h]$. This implies a polynomial-time $O(h^\epsilon \log n)$ approximation for any constant $\epsilon>0$, and a poly-logarithmic approximation running in quasi-polynomial time. We remark that this is essentially the best-known even for the classical DST, and the latter problem is $O(\log^{2-\epsilon}n)$-hard to approximate [Halperin and Krauthgamer, STOC'03]. As a by product, we obtain an algorithm with the same approximation guarantee for the $2$-Connected Directed Steiner Subgraph problem, where the goal is to find a min-cost subgraph such that every pair of terminals are $2$-edge/vertex connected.
- Publication:
-
arXiv e-prints
- Pub Date:
- November 2016
- DOI:
- 10.48550/arXiv.1611.01644
- arXiv:
- arXiv:1611.01644
- Bibcode:
- 2016arXiv161101644G
- Keywords:
-
- Computer Science - Data Structures and Algorithms;
- F.2.2;
- G.2.2