A Logarithmic Integrality Gap Bound for Directed Steiner Tree in Quasibipartite Graphs ^{1}^{1}1This work was in part supported by NSERC’s Discovery grant program. The second author greatfully acknowledges the support of the Hausdorff Institute and the Institute for Discrete Mathematics in Bonn, Germany.
Abstract
We demonstrate that the integrality gap of the natural cutbased LP relaxation for the directed Steiner tree problem is in quasibipartite graphs with terminals. Such instances can be seen to generalize set cover, so the integrality gap analysis is tight up to a constant factor. A novel aspect of our approach is that we use the primaldual method; a technique that is rarely used in designing approximation algorithms for network design problems in directed graphs.
1 Introduction
In an instance of the directed Steiner tree (DST) problem, we are given a directed graph , nonnegative costs for all , terminal nodes , and a root . The remaining nodes in are the Steiner nodes. The goal is to find the cheapest collection of edges such that for every terminal there is an path using only edges in . Throughout, we let denote and denote .
If , then the problem is simply the minimumcost arborescence problem which can be solved efficiently [4]. However, the general case is wellknown to be NPhard. In fact, the problem can be seen to generalize the setcover and group Steiner tree problems. The latter cannot be approximated within for any constant unless [10].
For a DST instance , let denote the value of the optimum solution for this instance Say that an instance of DST with terminals is layered if can be partitioned as where and every edge has and for some . Zelikovsky showed for any DST instance and integer that we can compute an layered DST instance in poly time such that and that a DST solution in can be efficiently mapped to a DST solution in with the same cost [2, 17].
Charikar et al. [3] exploited this fact and presented an approximation with running time for any integer . In particular, this can be used to obtain an approximation in quasipolynomial time and a polynomialtime approximation for any constant . Finding a polynomialtime polylogarithmic approximation remains an important open problem.
For a set of nodes , we let be the set of edges entering . The following is a natural linear programming (LP) relaxation for directed Steiner tree.
(DSTPrimal)  
s.t.  (1)  
This LP is called a relaxation because of the natural correspondence between feasible solutions to a DST instance and feasible integer solutions to the corresponding LP (DSTPrimal). Thus, if we let denote the value of an optimum (possibly fractional) solution to LP (DSTPrimal) then we have . For a particular instance we say the integrality gap is ; we are interested in placing the smallest possible upper bound on this quantity.
Interestingly, if (the shortest path problem) or (the minimumcost arborescence problem), the extreme points of (DSTPrimal) are integral so the integrality gap is 1 ([12] and [4], respectively). However, in the general case Zosin and Khuller showed that (DSTPrimal) is not useful for finding approximation algorithms for DST [18]. The authors showed that the integrality gap of (DSTPrimal) relaxation can, unfortunately, be as bad as , even in instances where is a 4layered graph. In their examples, the number of nodes is exponential in so the integrality gap may still be for some constant .
On the other hand, Rothvoss recently showed that applying rounds of the semidefinite programming Lasserre hierarchy to (the flowbased extended formulation of) (DSTPrimal) yields an SDP with integrality gap for layered instances [14]. Subsequently, Friggstad et al. [6] showed similar results for the weaker SheraliAdams and LovászSchrijver linear programming hierarchies.
In this paper we consider the class of quasibipartite DST instances. An instance of DST is quasibipartite if the Steiner nodes form an independent set (i.e., no directed edge has both endpoints in ). Such instances still capture the set cover problem, and thus do not admit an approximation for any constant unless [15, 5]. Furthermore, it is straightforward to adapt known integrality gap constructions for set cover (e.g. [16]) to show that the integrality gap of (DSTPrimal) can be as bad as in some instances. Hibi and Fujito [11] give an approximation for quasibipartite instances of DST, but do not provide any integrality gap bounds.
Quasibipartite instances have been wellstudied in the context of undirected Steiner trees. The class of graphs was first introduced by Rajagopalan and Vazirani [13] who studied the integrality gap of (DSTPrimal) for the bidirected map of the given undirected Steiner tree instances. Currently, the best approximation for quasibipartite instances of undirected Steiner tree is by Goemans et al. [8] who also bound the integrality gap of the bidirected cut relaxation by the same quantity. This is the same LP relaxation as (DSTPrimal), applied to the directed graph obtained by replacing each undirected edge with the two directed edges and . This is a slight improvement over a prior approximation for any constant by Byrka et al. [1].
The best approximation for general instances of undirected Steiner tree is for any constant [1]. However, the best known upper bound on the integrality gap of the bidirected cut relaxation for nonquasibipartite instances is only 2; it is an open problem to determine if this integrality gap is a constantfactor better than 2.
1.1 Our contributions
Our main result is the following. Let be the th harmonic number.
Theorem 1.
The integrality gap of LP (DSTPrimal) is at most in quasibipartite graphs with terminals. Furthermore, a Steiner tree with cost at most can be constructed in polynomial time.
As noted above, Theorem 1 is asymptotically tight since any of the wellknown integrality gap constructions for set cover instances with items translate directly to an integrality gap lower bound for (DSTPrimal), using the usual reduction from set cover to 2layered quasibipartite instances of directed Steiner tree.
This integrality gap bound asymptotically matches the approximation guarantee proven by Hibi and Fujito for quasibipartite DST instaces [11]. We remark that their approach is unlikely to give any integrality gap bounds for (DSTPrimal) because they iteratively choose lowdensity full Steiner trees in the same spirit as [3] and give an approximation for finding the optimum DST solution that does not contain a path with Steiner nodes . In particular, their approach will also find an approximation to the optimum DST solution in 4layered graphs and we know the integrality gap in some 4layered instances is [18].
We prove Theorem 1 by constructing a directed Steiner tree in an iterative manner. An iteration starts with a partial Steiner tree (see Definition 1 below), which consists of multiple directed components containing the terminals in . Then a set of arcs are purchased to augment this partial solution to one with fewer directed components. These arcs are discovered through a primaldual moat growing procedure; a feasible solution for the dual (DSTPrimal) is constructed and the cost of the purchased arcs can be bounded using this dual solution.
While the primaldual technique has been very successful for undirected network design problems (e.g., see [9]), far fewer success stories are known in directed domains. Examples include a primaldual interpretation of Dijkstra’s shortest path algorithm (e.g., see Chapter 5.4 of [12]), and Edmonds’ [4] algorithm for minimumcost arborescences. In both cases, the special structure of the problem is instrumental in the primaldual construction. One issue arising in the implementation of primaldual approaches for directed network design problems appears to be a certain overlap in the moat structure maintained by these algorithms. We are able to handle this difficulty here by exploiting the quasibipartite nature of our instances.
2 The integrality gap bound
2.1 Preliminaries and definitions
We now present an algorithmic proof of Theorem 1. As we will follow a primaldual strategy, we first present the LP dual of (DSTPrimal).
(DSTDual)  
s.t.  (2)  
In (DSTDual), the sums range only over sets of nodes such that and .
Our algorithm builds up partial solutions, which are defined as follows.
Definition 1.
A partial Steiner tree is a tuple where, for each , is a subset of nodes, , and is a subset of edges with endpoints only in such that the following hold.

The sets form a partition .

(i.e. is a subset of Steiner nodes).

and for each .

For every and every , contains an path.
We say that is the set of free Steiner nodes in and that is the head of for each . The edges of , denoted by , are simply . We say that are the components of where is the root component and are the nonroot components.
Figure 1 illustrates a partial Steiner tree. Note that if is a partial Steiner tree with nonroot components, then is in fact a feasible DST solution.
Finally, for a subset of edges we let .
2.2 Highlevel approach
Our algorithm builds up partial Steiner trees in an iterative manner while ensuring that the cost does not increase by a significant amount between iterations. Specifically, we prove the following lemma in Section 3. Recall that refers to the optimum solution value for (DSTPrimal).
Lemma 1.
Given a partial Steiner tree with nonroot components, there is a polynomialtime algorithm that finds a partial Steiner tree with nonroot components such that
Proof of Theorem 1.
Initialize a partial Steiner tree with nonroot components as follows. Let be the set of all Steiner nodes, , and . Furthermore, label the terminals as and for each let and . Note that .
Iterate Lemma 1 to obtain a sequence of partial Steiner trees where has nonroot components such that and
for each . Return as the final Steiner tree.
That can be found efficiently follows simply because we are iterating the efficient algorithm from Lemma 1 at most times. The cost of this Steiner tree can be bounded as follows.
∎
The idea presented above resembles one proposed by Guha et al. [7] for bounding the integrality gap of a natural relaxation for undirected nodeweighted Steiner tree by [7]. Like our approach, Guha et al. also build a solution incrementally. In each phase of the algorithm, the authors reduce the number of connected components of a partial solution by adding vertices whose cost is charged carefully to the value of a dual LP solution that the algorithm constructs simultaneously.
3 A primaldual proof of Lemma 1
Consider a given partial Steiner tree with nonroot components. Lemma 1 promises a partial Steiner tree with nonroot components with . In this section we will present an algorithm that augments forest in the sense that it computes a set of edges to add to . The proof presented here is constructive: we will design a primaldual algorithm that maintains a feasible dual solution for (DSTDual), and uses the structure of this solution to guide the process of adding edges to .
3.1 The algorithm
For any two nodes , let be the cost of the cheapest path in . More generally, for a subset and a node we let . We will assume that for every and that as otherwise, we could merge and by adding the cost path to .
The usual conventions of primaldual algorithms will be adopted. We think of such an algorithm as a continuous process that increases the value of some dual variables over time. At time , all dual variables are initialized to a value of . At any point in time, exactly dual variables will be raised at a rate of one unit per time unit. We will use for the time at which the algorithm terminates. As is customary, we will say that an edge goes tight if the dual constraint for becomes tight as the dual variables are being increased. When an edge goes tight, we will perform some updates to the various sets being maintained by the algorithm. Again, the standard convention applies that if multiple edges go tight at the same time, then we process them in any order.
Algorithm 1 describes the main subroutine that augments the partial Steiner tree to one with fewer components. It maintains a collection of moats and edges for each , while ensuring that the dual solution it grows remains feasible. Mainly to aid notation, our algorithm will maintain a so called virtual body for all such that . We will ensure that each has a mate such that the edge has cost no more than . For notational convenience, we will let be the virtual body of the root component. The algorithm will not grow a moat around the root since dual variables do not exist for sets containing the root.
Our algorithm will ensure that moats are pairwise terminaldisjoint. In fact, we ensure that any two moats may only intersect in . Terminaldisjointness together with the quasibipartite structure of the input graph will allow us to charge the cost of arcs added in the augmentation process to the duals grown.
An intuitive overview of our process is the following. At any time , the moats will consist of all nodes with . The moats will be grown until, at some time , for at least one pair with , there is a tight path connecting to . At this point the algorithm stops, and adds a carefully chosen collection of tight arcs to the partial Steiner tree that merges and (and potentially other components). Crucially, the cost of the added arcs will be charged to the value of the dual solution grown around the merged components.
Due the structure of quasibipartite graphs, we are able to ensure that in each step of the algorithm the active moats pay for at most one arc that is ultimately bought to form . Also, if has nonroot components then each arc was paid for by moats around at most different heads. So, the total cost of all purchased arcs is at most . Finally, the total dual grown is , which is due to feasibility, so the cost of the edges bought can be bounded by .
3.2 Algorithm and invariants
Now we will be more precise. The primaldual procedure is presented in Algorithm 1. The following invariants will be maintained at any time during the execution of Algorithm 1.

For each , and (so there is a variable in the dual).

For each , where .

and both for distinct .

For each we have . Furthermore, for each each there is a mate such that and .

is feasible for LP (DSTDual) with value exactly .
These concepts are illustrated in Figure 2.
3.3 Invariant analysis
Lemma 2.
Proof.
Clearly the invariants are true after the initialization steps (at time ), given that for any . To see why Algorithm 1 terminates in a polynomial number of iterations, note that each iteration increases the size some moat by 1 and does not decrease the size of any moats. So after at most iterations some moat will grow to include the virtual body of another moat, at which point the algorithm stops.
Assume now that the invariants are true at some point just before Step (4) is executed and that the condition in Step (5) is false after Step (4) finishes. We will show that the invariants continue to hold just before the next iteration starts. We let denote the edge that went tight that is considered in Step (4). We also let denote the total time the algorithm has executed (i.e. grown moats) up to this point.
Before proceeding with our proof, we exhibit the following useful fact. In what follows, let be the moat around at any time during the algorithm. This proposition demonstrates how we control the overlap of the moats by exploiting the quasibipartite structure.
Proposition 1.
If , then for any , and for any .
Proof.
Suppose, for the sake of contradiction, that for some and . Since is a subset of , the moat containing at time , we must have . Invariant 3 now implies that . Since is quasibipartite, then . Therefore for some . Since or , then the terminating condition in Step (5) would have been satisfied as . A contradiction. ∎
Invariant 1
First note that never loses vertices during the algorithm’s
execution, and it therefore always contains head vertex .
Also, vertex is not part of as otherwise the algorithm
would have terminated in Step (5). Hence also does not contain the root node .
Invariant 2
This is just a reinterpretation of Dijkstra’s algorithm in the primaldual framework (e.g. Chapter 5.4 of [12]),
coupled with the fact that no edge considered in Step (4) in some iteration
crosses more than one moat at any given time (Proposition 1).
Invariant 3
Suppose
for some
. This implies , and
hence . Thus, the termination condition
in Step (5) was satisfied and the algorithm should have
terminated; contradiction.
If is not added to , and thus remains unchanged, continues to hold for . We also must have that for , as otherwise and this would violate the termination condition in Step (5).
Now suppose that is added to . Then for we still have as otherwise which contradicts and the fact that Invariant 3 holds at the start of this iteration. We also have that as otherwise . But this would mean that as well by Proposition 1. We established above that . However, contradicts the fact that is quasibipartite.
Invariant 4
That is clear simply
because we only add nodes to the sets . Suppose now that
is added to . In this case, as
from the start. We claim that can also
not be part of for some , since otherwise
,
contradicting Invariant 3. Hence . Note that the
quasibipartiteness of implies that , and hence
. Proposition 1 finally implies
that only the moats crossed by are moats around ,
so since the algorithm only grows one moat around at any
time we have , and this completes the proof of Invariant 4.
Invariant 5
The Step (4) stops the first time a
constraint becomes tight, so feasibility is maintained. In each
step, the algorithm grows precisely moats
simultaneously. Because the objective function of (DSTDual) is
simply the sum of the dual variables, then the value of the dual is
just times the total time spent growing dual variables.
∎
3.4 Augmenting
To complete the final detail in the description of the algorithm, we now show how to construct the partial Steiner tree after Step (5) has been reached. Lemma 2 shows that Invariants 1 through 5 hold just before Step (4) in the final iteration. Say the final iteration executes for time units and that is the edge that goes tight and was considered in Step (5).
Lemma 3.
Proof.
Let be the unique index such that at time . There is exactly one such because for is ensured by the invariants. Next, let and note that consists of all indices (except, perhaps, ) such that . By the termination condition, . Vertex lies in by definition. If then we let be the mate of as defined in Invariant 4. Otherwise, if , we let .
For notational convenience, we let be the path consisting of the single edge (or just the trivial path with no edges if ). In either case, say cost of is where (c.f. Invariant 4). For each , let be a shortest path. Invariant 2 implies that
(3) 
for some . Observe also that the tightness of at time and the definition of imply that
(4) 
In fact, precisely a value of the dual variables for contribute to ; the contribution of ’s variables to is at most .
Construct a partial Steiner tree obtained from and Algorithm 1 as follows.

The sets and head are unchanged for all .

Replace the components with a component having head . The edges of this component in are .

The free Steiner nodes of are the Steiner nodes not contained in any of these components.
Namely, consists of those nodes in that are not contained on any path .
We show that Steiner tree as constructed above satisfies the conditions stated in Lemma 1. We first verify that as constructed above is indeed a valid partial Steiner tree. Clearly the new sets and partition and is a subset of Steiner nodes.
Note that if in the above construction, then because no moat contains . Thus, if is replaced when is constructed, then is the head of this new component.
Next, consider any . If then there is an path in . If then it can be reached from in as follows. Follow the path in , then the path , cross the edge , follow to reach , and finally follow the path in . Finally, if for any then lies on some path , in which case it can be reached in a similar way.
It is also clear that and that the number of nonroot components in is . Also, is at most the cost of the the paths plus .
4 Conclusion
We have shown that the integrality gap of LP relaxation (DSTPrimal) is in quasibipartite instances of directed Steiner tree. The gap is known to be in 4layered instances [18] and in 3layered instances [6]. Since quasibipartite graphs are a generalization 2layered instances, it is natural to ask if there is a generalization of 3layered instances which has an or even integrality gap.
One possible generalization of 3layered graphs would be when the subgraph of induced by the Steiner nodes does not have a node with both positive indegree and positive outdegree. None of the known results on directed Steiner tree suggest such instances have a bad gap.
Even when restricted to 3layered graphs, a straightforward adaptation of our algorithm that grow moats around the partial Steiner tree heads until some partial Steiner trees absorbs another fails to grow a sufficiently large dual to pay for the augmentation within any reasonable factor. A new idea is needed.
References
 [1] J. Byrka, F. Grandoni, T. Rothvoss, and L. Sanita. Steiner tree approximation via iterative randomized rounding. Journal of the ACM, 60(1):6, 2013.
 [2] G. Calinescu and G. Zelikovsky. The polymatroid Steiner problems. J. Combinatorial Optimization, 9(3):281–294, 2005.
 [3] M. Charikar, C. Chekuri, T. Cheung, Z. Dai, A. Goel, S. Guha, and M. Li. Approximation algorithms for directed Steiner problems. J. Algorithms, 33(1):73–91, 1999.
 [4] J. Edmonds. Optimum branchings. J. Res. Natl. Bur. Stand., 71:233–240, 1967.
 [5] U. Feige. A threshold of for approximating SetCover. Journal of the ACM, 45(4):634–652, 1998.
 [6] Z. Friggstad, A. Louis, Y. K. Ko, J. Könemann, M. Shadravan, and M. Tulsiani. Linear programming hierarchies suffice for directed Steiner tree. In proceedings of IPCO, 2014.
 [7] S. Guha, A. Moss, J. Naor, and B. Schieber. Efficient recovery from power outage (extended abstract). In proceedings of STOC, 1999.
 [8] M. X. Goemans, N. Olver, T. Rothvoss, and R. Zenklusen. Matroids and integrality gaps for hypergraphic Steiner tree relaxations. In proceedings of STOC, 2012.
 [9] M. X. Goemans and D. P. Williamson. A general approximation technique for constrained forest problems. SIAM Journal on Computing, 24(2):296–317, 1995.
 [10] E. Halperin and R. Krauthgamer. Polylogarithmic inapproximability. In proceedings of STOC, 2003.
 [11] T. Hibi, and T. Fujito. Multirooted Greedy Approximation of directed Steiner trees with applications. In proceedings of WG, 2012.
 [12] C. H. Papadimitriou and K. Steiglitz. Combinatorial Optimization: Algorithms and Complexity. PrenticeHall, Inc., 1982.
 [13] S. Rajagopalan, and V. V. Vazirani. On the bidirected cut relaxation for the metric Steiner tree problem. In proceedings of SODA, 742–751, 1999.
 [14] T. Rothvoss. Directed Steiner tree and the Lasserre hierarchy. CoRR abs/1111.5473, 2011.
 [15] D. Steurer and I. Dinur. Analytical approach to parallel repetition. CoRR abs/1305.1979, 2013.
 [16] V. V. Vazirani. Approximation Algorithms. SpringerVerlag, 2003.
 [17] A. Zelikovsky. A series of approximation algorithms for the acyclic directed Steiner tree problem. Algorithmica, 18:99–110, 1997.
 [18] L. Zosin and S. Khuller. On directed Steiner trees. In proceedings of SODA, 2002.