The Directed Steiner Network problem is tractable for a constant number of terminals
We consider the Directed Steiner Network problem, also called the POINT-TO-POINT CONNECTION problem. Given a directed graph G and p pairs {(s(1), t(1)),..., (s(p), t(p))} of nodes in the graph, one has to find the smallest subgraph H of G that contains paths from s(i) to t(i) for all i. The problem is NP-hard for general p, since the DIRECTED STEINER Tree problem is a special case. Until now, the complexity was unknown for constant p >= 3. We prove that the problem is polynomially solvable if p is any constant number, even if nodes and edges in G are weighted and the goal is to minimize the total weight of the subgraph H. In addition, we give an efficient algorithm for the STRONGLY CONNECTED STEINER SUBGRAPH problem for any constant p, where given a directed graph and p nodes in the graph, one has to compute the smallest strongly connected subgraph containing the p nodes.
steiner network directed graphs steiner tree network design polynomial-time algorithms