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∈ 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(D3 D· h2/D· n) approximation algorithm for 2-DST that runs in time O(nO(D)), for any D∈[2h]. This implies a polynomial-time O(hε n) approximation for any constant ε>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(2-ε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.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.