Skip to main content
Springer logoLink to Springer
. 2017 Nov 14;171(1):433–461. doi: 10.1007/s10107-017-1199-3

New algorithms for maximum disjoint paths based on tree-likeness

Krzysztof Fleszar 1,, Matthias Mnich 2,3, Joachim Spoerhase 4
PMCID: PMC6417437  PMID: 30956356

Abstract

We study the classical NP-hard problems of finding maximum-size subsets from given sets of k terminal pairs that can be routed via edge-disjoint paths (MaxEDP) or node-disjoint paths (MaxNDP) in a given graph. The approximability of MaxEDP/MaxNDP is currently not well understood; the best known lower bound is 2Ω(logn), assuming NPDTIME(nO(logn)). This constitutes a significant gap to the best known approximation upper bound of O(n) due to Chekuri et al. (Theory Comput 2:137–146, 2006), and closing this gap is currently one of the big open problems in approximation algorithms. In their seminal paper, Raghavan and Thompson (Combinatorica 7(4):365–374, 1987) introduce the technique of randomized rounding for LPs; their technique gives an O(1)-approximation when edges (or nodes) may be used by Ologn/loglogn paths. In this paper, we strengthen the fundamental results above. We provide new bounds formulated in terms of the feedback vertex set number r of a graph, which measures its vertex deletion distance to a forest. In particular, we obtain the following results:

  • For MaxEDP, we give an O(rlog(kr))-approximation algorithm. Up to a logarithmic factor, our result strengthens the best known ratio O(n) due to Chekuri et al., as rn.

  • Further, we show how to route Ω(OPT) pairs with congestion bounded by O(log(kr)/loglog(kr)), strengthening the bound obtained by the classic approach of Raghavan and Thompson.

  • For MaxNDP, we give an algorithm that gives the optimal answer in time (k+r)O(r)·n. This is a substantial improvement on the run time of 2krO(r)·n, which can be obtained via an algorithm by Scheffler.

We complement these positive results by proving that MaxEDP is NP-hard even for r=1, and MaxNDP is W[1]-hard when r is the parameter. This shows that neither problem is fixed-parameter tractable in r unless FPT=W[1] and that our approximability results are relevant even for very small constant values of r.

Keywords: Disjoint paths, Approximation algorithm, Feedback vertex set, Fixed-parameter algorithm

Introduction

In this paper, we study disjoint paths routing problems. In this setting, we are given an undirected graph G and a collection M={(s1,t1),,(sk,tk)} of vertex pairs, called terminal pairs, that can be thought of being source–destination pairs. The goal is to select a maximum-sized subset MM of the pairs that can be feasibly routed, where a routing of M is a collection P of paths such that, for each pair (si,ti)M, there is a path in P connecting si to ti. In the Maximum Edge Disjoint Paths (MaxEDP) problem, a routing P is feasible if its paths are pairwise edge-disjoint, and in the Maximum Node Disjoint Paths (MaxNDP) problem, a routing P is feasible if its paths are pairwise node-disjoint. Throughout this paper, a solution to MaxEDP or MaxNDP is a feasible routing P of a subset MM.

Disjoint paths problems are fundamental problems with a long history and significant connections to optimization and structural graph theory. The decision versions EDP of MaxEDP and NDP of MaxNDP ask whether all of the pairs can be routed. When the number of pairs is part of the input, EDP and NDP are NP-complete [22, 29]. In undirected graphs, MaxEDP and MaxNDP are solvable in polynomial time when the number of pairs is a fixed constant; this is a very deep result of Robertson and Seymour [42] that builds on several fundamental results in structural graph theory from their graph minors project.

In this paper, we consider the optimization problems MaxEDP and MaxNDP when the number of pairs is part of the input. In this setting, the best approximation ratio for MaxEDP is achieved by an O(n)-approximation algorithm [11, 35], that is, by an algorithm that routes Ω(OPT/n) pairs, where OPT is the number of pairs in an optimum routing and n is the number of nodes. However, the best known lower bound for undirected graphs is only 2Ω(logn), assuming NPDTIME(nO(logn)) [19]. Bridging this gap is a fundamental open problem that seems quite challenging.

Most of the results for routing on disjoint paths use a natural multi-commodity flow relaxation as a starting point. A well-known integrality gap instance due to Garg et al. [26] shows that this relaxation has an integrality gap of Ω(n), and this is the main obstacle for improving the O(n)-approximation ratio in general graphs. This led Chekuri et al. [15] to study the approximability of MaxEDP with respect to the treewidth of the underlying graph. In particular, they pose the following conjecture:

Conjecture 1

[12] The integrality gap of the standard multi-commodity flow relaxation for MaxEDP is Θ(w), where w is the treewidth of the graph.

Recently, Ene et al. [21] showed that MaxEDP admits an O(w3)-approximation algorithm on graphs of treewidth at most w. Theirs is the best known approximation ratio in terms of w, improving on an earlier O(w·3w)-approximation algorithm due to Chekuri et al. [15]. This shows that the problem seems more amenable on “tree-like” graphs.

However, for w=ω(n1/6), the bound is weaker than the bound of O(n). In fact, EDP remains NP-hard even for graphs of constant treewidth, namely treewidth w=2 [39]. This further rules out the existence of a fixed-parameter algorithm for MaxEDP parameterized by treewidth, assuming PNP. Therefore, to obtain fixed-parameter tractability results as well as better approximation guarantees, one needs to resort to parameters stronger than treewidth.

Another route to bridge the large gap between approximation lower and upper bounds for MaxEDP is to allow the paths to have congestion c: that is, instead of requiring the routed paths to be pairwise disjoint, at most c paths can use an edge. We can also think of this problem that each edge has a capacity c; thus, on unit-capacity graphs we ask for solutions without congestion. In their groundbreaking work, Raghavan and Thompson [40] introduced the technique of randomized rounding of LPs to obtain polynomial-time approximation algorithms for combinatorial problems. Their approach allows to route Ω(OPT) pairs of paths with congestion Ologn/loglogn, where OPT denotes the value of an optimum solution to the multi-commodity flow relaxation. This extensive line of research [2, 17, 31] has culminated in a logO(1)k-approximation algorithm with congestion 2 for MaxEDP [20]. A slightly weaker result also holds for MaxNDP [10].

Motivation and contribution

The goal of this work is to study disjoint paths problems under another natural measure for how “far” a graph is from being a tree. In particular, we propose to examine MaxEDP and MaxNDP under the feedback vertex set number. It denotes the smallest size r of a feedback vertex set of a graph G, which is a subset R of nodes for which G-R is a forest. Note that the treewidth of G is at most r+1. Therefore, given the NP-hardness of EDP for treewidth w=2 and the current gap between the best known upper bound O(w3) and the linear upper bound suggested by Conjecture 1, it is interesting to study the stronger restriction of bounding the feedback vertex set number r of the input graph. Our approach is further motivated by the fact that MaxEDP is efficiently solvable on trees by means of the algorithm of Garg et al. [26]. Similarly, MaxNDP is easy on trees (see Theorem 3). Throughout this work, the parameter r will denote the feedback vertex set number of a graph.

Our main insight is that one can in fact obtain bounds in terms of r that either strengthen the best known bounds or are almost tight (see Table 1). It therefore seems that the parameter r correlates quite well with the “difficulty” of disjoint paths problems.

Table 1.

Summary of results obtained in this paper

EDP MaxEDP NDP MaxNDP
r=0 Poly [26] Poly [26] Poly [43] Poly (Thm. 3)
r=1 Open NP-hard (Thm. 5) Poly [43] Poly (Thm. 3)
Const. r2 NP-hard (Thm. 5) NP-hard (Thm. 5) Poly [43] Poly (Thm. 3)
Param. r Para-NP-hard (Thm. 5) FPT [43] W[1]-hard (Thm. 4)
O(rlog(kr))-approx (Thm. 2) Exact (k+r)O(r)n (Thm. 3)
O(1)-approx. w. cg. Olog(kr)loglog(kr) (Thm. 1)

Our first result allows the paths to have small congestion: in this setting, we strengthen the result, obtained by the classic randomized LP-rounding approach of Raghavan and Thompson [40], that one can always route Ω(OPT) pairs with congestion Ologn/loglogn with constant probability.

Theorem 1

There is a polynomial-time algorithm for MaxEDP that produces—with constant probability—a routing of Ω(OPT) paths with congestion Olog(kr)/loglog(kr) where OPT is the value of an optimum solution to the multi-commodity flow relaxation, k is the number of terminal pairs and r is the feedback vertex set number.

In other words, we show that there is an O(1)-approximation algorithm for MaxEDP with congestion Olog(kr)/loglog(kr).

Our second main result builds upon Theorem 1 and uses it as a subroutine. We show how to use a routing for MaxEDP with low congestion to obtain a polynomial-time approximation algorithm for MaxEDP without congestion that performs well in terms of r.

Theorem 2

There is a polynomial-time algorithm for MaxEDP that produces—with constant probability—a routing of OPT/O(rlog(kr)) paths with no congestion where OPT is the value of an optimum solution to the multi-commodity flow relaxation, k is the number of terminal pairs and r is the feedback vertex set number.

In particular, our algorithm strengthens the best known approximation algorithm for MaxEDP on general graphs [11] as always rn, and indeed it matches that algorithm’s performance up to a logarithmic factor. Substantially improving upon our bounds would also improve the current state of the art of MaxEDP. Conversely, the result implies that it suffices to study graphs with close to linear feedback vertex set number in order to improve the currently best upper bound of O(n) on the approximation ratio [11].

Our algorithmic approaches harness the forest structure of G-R for any feedback vertex set R. However, the technical challenge comes from the fact that the edge set running between G-R and R is unrestricted. Therefore, the “interaction” between R and G-R is non-trivial, and flow paths may run between the two parts in an arbitrary manner and multiple times. In fact, we show that MaxEDP is already NP-hard if R consists of a single node (Theorem 5); this contrasts the efficient solvability on forests [26].

In order to overcome the technical hurdles, we propose several new concepts, which we believe could be of interest in future studies of disjoint paths or routing problems.

In the randomized rounding approach of Raghavan and Thompson [40], it is shown that the probability that the congestion on any fixed edge is larger than clogn/loglogn for some constant c is at most 1/nO(1). Combining this with the fact that there are at most n2 edges, yields that every edge has bounded congestion with high probability. The number of edges in the graph may, however, be unbounded in terms of r and k. Hence, in order to prove Theorem 1, we propose a non-trivial preprocessing step of the optimum LP solution that is applied prior to the randomized rounding. In this step, we aggregate the flow paths by a careful rerouting so that the flow “concentrates” in O(kr2) nodes (so-called hot spots) in the sense that if all edges incident on hot spots have low congestion, then so have all edges in the graph. Unfortunately, for any such hot spot the number of incident edges carrying flow may still be unbounded in terms of k and r. We are, however, able to give a refined probabilistic analysis that suitably relates the probability of exceeding the congestion bound to the amount of flow on the respective edge. Since the total amount of flow traversing any given hot spot is at most k, the probability that there is an edge incident on this hot spot that violates the congestion bound is inverse polynomial in r and k.

The known O(n)-approximation algorithm for MaxEDP by Chekuri et al. [11] employs a clever LP-rounding approach. If there are many long flow paths in the LP solution, then there must be a single node carrying a significant fraction of the total flow and a good fraction of this flow can be realized by integral paths by solving a single-source flow problem. If the LP solution contains many short flow paths, then greedily routing these short paths yields the bound. Essentially, this follows from the fact that routing a short path blocks only a small amount of flow. In order to prove Theorem 2, we also distinguish two cases. We are interested, however, in the number of nodes in R that a flow path is visiting rather than in its length. In the first case, there are many paths, each of which is visiting a large number of nodes in R. Here, we reduce to a single-source flow problem in a similar way to the approach of Chekuri et al. The second case where a majority of the flow paths visit only a few nodes in R turns out to be more challenging, since any such path may still visit an unbounded number of edges in terms of k and r. We use two main ingredients to overcome these difficulties. First, we apply our Theorem 1 as a building block to obtain a solution with logarithmic congestion while losing only a constant factor in the approximation ratio. Secondly, we introduce the concept of irreducible routings with low congestion which allows us to exploit the structural properties of the graph and the congestion property to identify a sufficiently large number of flow paths blocking only a small amount of flow.

Note that the natural greedy approach of always routing the shortest conflict-free path gives only an approximation ratio of O(m) for MaxEDP, where m is the number of edges. We believe that it is non-trivial to obtain our bounds via a more direct or purely combinatorial approach.

Our third result is a fixed-parameter algorithm for MaxNDP in k+r.

Theorem 3

MaxNDP can be solved in time (k+r)O(r)·n on graphs with k terminal pairs, feedback vertex set number r, and n vertices. When a minimum feedback vertex set is given, it can be even solved in time (8k+8r)2r+3·O(n).

This run time is polynomial for constant r. We also note that, for small r, our algorithm is asymptotically significantly faster than the fastest known algorithm for NDP, by Kawarabayashi and Wollan [30], which requires time at least quadruple-exponential in k [1]. Namely, if r is asymptotically less than triple-exponential in k, our algorithm is asymptotically faster than theirs. We achieve this result by the idea of so-called essential pairs and realizations, which characterizes the “interaction” between the feedback vertex set R and the paths in an optimum solution. Note that in our algorithm of Theorem 3 the parameter k does not appear in the exponent of the run time at all. Hence, whenever r=o(k/logk), our algorithm is asymptotically faster than reducing MaxNDP to NDP by guessing the subset of pairs to be routed (at an expense of 2k in the run time) and using Scheffler’s [43] algorithm for NDP with run time 2O(rlogr)·n; for r=Ω(k/logk), our algorithm is asymptotically not slower.

Once a fixed-parameter algorithm for a problem has been obtained, the existence of a polynomial-size kernel comes up. Here we note that MaxNDP does not admit a polynomial kernel for the combined parameter k+r, unless NPcoNP/poly [7].

Another natural question is whether the run time f(k,r)·n in Theorem 3 can be improved to f(r)·nO(1). We answer this question in the negative, ruling out the existence of a fixed-parameter algorithm for MaxNDP parameterized by r (assuming FPTW[1]):

Theorem 4

MaxNDP in unit-capacity graphs is W[1]-hard parameterized by feedback vertex set number.

This contrasts the known result that NDP is fixed-parameter tractable in feedback vertex set number  [43]—which further stresses the relevance of understanding this parameter.

For MaxEDP, we prove that the situation is, in a sense, even worse:

Theorem 5

MaxEDP is NP-hard for unit-capacity graphs with feedback vertex set number r=1 and EDP is NP-hard for unit-capacity graphs with feedback vertex set number r=2.

This theorem also shows that our algorithms are relevant for small values of r, and that they nicely complement the NP-hardness for MaxEDP in capacitated trees [26].

Our results are summarized in Table 1.

Related work Our study of the parameter feedback vertex set number is in line with the general attempt to obtain bounds for MaxEDP (or related problems) that are independent of the input size. Besides the above-mentioned works that provide bounds in terms of the treewidth of the input graph, Günlük [27] and Chekuri et al. [16] give bounds on the flow-cut gap for the closely related integer multi-commodity flow problem; their bounds are logarithmic with respect to the vertex cover number of a graph. This improved upon earlier bounds of O(logn) [36] and O(logk) [4, 37]. As every vertex cover is in particular a feedback vertex set of a graph, our results for disjoint path problems address a generalization of graphs with bounded vertex cover number. Bodlaender et al. [7] showed that NDP does not admit a polynomial kernel parameterized by vertex cover number and the number k of terminal pairs, unless NPcoNP/poly; therefore, NDP is unlikely to admit a polynomial kernel in k+r either. Ene et al. [21] showed that MaxNDP is W[1]-hard parameterized by tree-depth, which is another restriction of treewidth that is incomparable to feedback vertex set number.

The basic gap in understanding the approximability of MaxEDP has led to several improved results for special graph classes, and also our results can be seen in this light. For example, polylogarithmic approximation algorithms are known for graphs whose global minimum cut value is Ω(log5n) [41], for bounded-degree expanders [8, 9, 25, 32, 36], and for Eulerian planar or 4-connected planar graphs [31]. Constant factor approximation algorithms are known for capacitated trees [13, 26], grids and grid-like graphs [3, 5, 33, 34]. For planar graphs, there is a constant-factor approximation algorithm with congestion 2 [44]. Very recently, Chuzhoy et al. [18] gave a O~(n9/19)-approximation algorithm for MaxNDP on planar graphs. However, improving the O(n)-approximation algorithm for MaxEDP remains elusive even for planar graphs.

Preliminaries

We use standard graph theoretic notation. For a graph G, let V(G) denote its vertex set and E(G) its edge set. The length of a path is the number of its edges. A feedback vertex set of a graph G is a set RV(G) such that G-R is a forest. A minor of a graph G is a graph H that is obtained by successively contracting edges from a subgraph of G (and deleting any occurring loops). A class G of graphs is minor-closed if for any graph in G also all its minors belong to G.

For an instance (G,M) of MaxEDP/MaxNDP, we refer to the vertices participating in the pairs M as terminals. It is convenient to assume that M forms a matching on the terminals; this can be ensured by making several copies of the terminals and attaching them as leaves. Hence, we can also assume that all terminals are leaves.

Multi-commodity flow relaxation We use the following standard multi-commodity flow relaxation for MaxEDP that we will call MaxEDP LP (there is an analogous relaxation for MaxNDP). We use P(u,v) to denote the set of all paths in G from u to v, for each pair (uv) of nodes. Since the pairs in M form a matching, the sets in {P(si,ti)(si,ti)M} are pairwise disjoint. Let P=i=1kP(si,ti). The LP has a variable f(P) for each path PP representing the amount of flow on P. For each pair (si,ti)M, the LP has a variable xi denoting the total amount of flow routed for the pair (in the corresponding integer program, xi denotes whether the pair is routed or not). The LP imposes the constraint that there is a flow from si to ti of value xi. Additionally, the LP has constraints that ensure that the total amount of flow on paths using a given edge (respectively node for MaxNDP) is at most 1.

maximizei=1kxisubject toPP(si,ti)f(P)=xi1for eachi=1,,k;PP:ePf(P)1for eacheE(G);f(P)0for eachPP.

It is well-known that the relaxation MaxEDP LP can be solved in polynomial time, since there is an efficient separation oracle for the dual LP (alternatively, one can write a compact relaxation). We use (f,x) to denote a feasible solution to MaxEDP LP for an instance (G,M) of MaxEDP.

As noted in the introduction, MaxEDP LP has an integrality gap of Ω(n) as shown by Garg et al. [26]. The integrality instance on an n×n grid (of treewidth Θ(n)) exploits a topological obstruction in the plane that prevents a large integral routing; see Fig. 1.

Fig. 1.

Fig. 1

An instance with an integrality gap of Ω(n) for MaxEDP [26]: Any integral routing routes at most one pair, whereas a fractional multi-commodity flow can send 1 / 2 unit of flow for each pair (si,ti) along the canonical path from si to ti in the grid

We will use the following result by Chekuri et al. [11, Sect. 3.1]; see also Proposition 3.3 of Chekuri et al. [14].

Proposition 1

(Chekuri et al. [11]) Let (f,x) be a fractional solution to the LP relaxation of a MaxEDP instance (G,M). If some node v is contained in all flow paths of f, then we can find an integral routing of size at least ixi/12 in polynomial time.

As a corollary of Theorem 2, we immediately obtain the following proposition about the integrality gap of MaxEDP LP.

Corollary 1

The integrality gap of the multi-commodity flow relaxation for MaxEDP with k terminal pairs is O(rlog(kr)) for graphs with feedback vertex set number r.

Let f be a multi-commodity flow assigning to each path PP a non-negative flow value f(P). The flow f is said to have congestion c if it satisfies a modification of MaxEDP LP where we replace, for each edge eE(G), the constraint PP:ePf(P)1 with PP:ePf(P)c. In the particular case where f is integral we also speak of a routing f with congestion c.

Bi-criteria approximation for MaxEDP with low congestion

We present a randomized rounding algorithm that will lead to the proof of Theorem 1. First we will modify a fractional solution to the multi-commodity flow relaxation and then run a randomized rounding procedure.

Algorithm

Consider an instance (G,M) of MaxEDP. Let k denote the number of terminal pairs in M, and let R be a feedback vertex set of G that we construct by taking the union of the terminals in M and any 2-approximate minimum feedback vertex set; note that such an approximation can be obtained in polynomial time [6]. Thus, |R|2r+2k.

First, solve the corresponding MaxEDP LP. We obtain an optimal extreme point solution (f,x). For each (si,ti)M, this gives us a set P(si,ti) of positive weighted paths that satisfy the LP constraints. Formally,

P(si,ti)={PP(si,ti)f(P)>0}.

Since we have an extreme point solution, the number of tight constraints is not smaller than the number of variables. Hence, given the numbers of constraints and variables, the number of constraints that are not tight is polynomially bounded in the input size. Consequently, the same bound holds for the cardinality of the set P=i=1kP(si,ti). In what follows, we will modify P and then select an (unweighted) subset PSol of P that will form our integral solution.

Each PP has the form (r1,,r2,,r) where r1,,r are the nodes in R that are traversed by P in this order. For every j with 1j-1, we call the path (rj,,rj+1) a subpath of P. For every subpath P of P, we set f(P)=f(P). Let S be the multi-set of all subpaths of all paths in P. Let F=G-R be the forest obtained by removing R.

We now modify some paths in P, one by one, and at the same time, we incrementally construct a subset HAlgV(F) in several steps. We will refer to the nodes in HAlg as hot spots. When the construction of HAlg is complete, every subpath in S will contain at least one hot spot, that is, a node in HAlg.

Initially, let HAlg=. Consider any tree T in F and fix any of its nodes as a root. Then let ST be the multi-set of all subpaths in S that, excluding the endpoints, are contained in T. For each subpath PST, define its highest node h(P) as the node on P closest to the root. Note that PT equals PF and that PT is a path. Now, pick a subpath PST that does not contain any node in HAlg and whose highest node h(P) is farthest away from the root. Consider the multi-set S[P] of all subpaths in ST that are identical to P (but may be subpaths of different flow paths in P). Note that the weight f(S[P]) of S[P] defined as PS[P]f(P) is at most 1 by the constraints of the LP. Let u,vR be the endpoints of P. We define Suv as the set of all subpaths in S\S[P] that have u and v as their endpoints and that do not contain any node in HAlg.

Intuitively speaking, we now aggregate flow on P by rerouting as much flow as possible from Suv to P. To this end, we repeatedly perform the following operation as long as f(S[P])<1 and Suv. We pick a path P in S that contains a subpath in Suv; see Fig. 2. We reroute flow from P by creating a new path P that arises from P by replacing its subpath between u and v with a new path identical to P, and assign it the weight f(P) equal to min{f(P),1-f(S[P])}. Then we set the weight of (the original path) P to max{0,f(P)+f(S[P])-1}. We update the sets PP(si,ti)SST, S[P] and Suv accordingly.

Fig. 2.

Fig. 2

Example of the flow aggregation step: a A subpath P (highlighted in dashed gray) enters a tree (solid black edges) where h(P) (white node) is its closest node to the root. A path P (highlighted in solid gray) contains a different subpath with the same endpoints u,vR as P. b We reroute P by replacing its subpath between u and v with a copy of P

As soon as f(S[P])=1 or Suv=, we mark h(P) as a hot spot and add it to HAlg. Then, we proceed with the next PST that does not contain a hot spot and whose highest node h(P) is farthest away from the root. If no such P is left, we consider the next tree T in F.

At the end, we create our solution PSol by randomized rounding: We route every terminal pair (si,ti) with probability xi. In case (si,ti) is routed, we randomly select a path from P(si,ti) and add it to PSol where the probability that the path P is taken is f(P)/xi.

Analysis

First, observe that x did not change during our modifications of the paths, as the total flow between any terminal pair did not change. Thus, the expected number of pairs routed in our solution PSol is i=1kxiOPT. Using the Chernoff bound, the probability that we route less than OPT/2 pairs is at most e-1/8OPT<1/2, assuming OPT>8.

In the above algorithm, we guarantee that when we aggregate flow on a path P, then the total amount of all flow paths containing P as a subpath has increased to at most 1. Nevertheless, the flow f may have congestion greater than 1 after this modification. This is because P may intersect flow paths that contain only a proper subset of the edges of P. For instance, consider the situation where we increase f(S[P]) for a subpath P that initially contained a tight edge e (that is, an edge e with PP:ePf(P)=1). After increasing f(S[P]), the total amount of flow paths going through e is greater than 1. However, the congestion of the modified flow f is always at most 2 as shown by the following lemma.

Lemma 1

The congestion of the flow f is at most 2.

Proof

In our algorithm, we increase the flow only along flow subpaths that are pairwise edge-disjoint. To see this, consider two distinct flow subpaths P and P on which we increase the flow. If there were an edge e lying on P and P, then both subpaths traverse the same tree in the forest F. Assume, without loss of generality, that P was considered before P by the algorithm. Then the path from e to the root would first visit h(P) and then h(P). Hence, h(P) would be an internal node of P. This yields a contradiction, as h(P) was already marked as a hot spot when P was considered. This shows that we increased the flow along any edge by at most one unit. Hence, f has congestion at most 2.

We now bound the congestion of the integral solution obtained by randomized rounding. In the algorithm, we constructed a set HAlg of hot spots. As a part of the analysis, we will now extend this set to a set H as follows. Initially, H=HAlg. We build a sub-forest F of F consisting of all edges of F that lie on a path connecting two hot spots. Then we add to H all nodes that have degree at least 3 in F. Since the number of nodes of degree 3 in any forest is at most its number of leaves and since every leaf of F is a hot spot, it follows that this can at most double the size of H to 2|HAlg|. Finally, we add all nodes of the feedback vertex set R to H and mark all nodes in H as hot spots.

Lemma 2

The number |H| of hot spots is at most 2k|R|2+|R|.

Proof

To this end, fix two nodes u,vR and consider the set of flow subpaths with endpoints u and v for which we added their hot spots to HAlg. Due to the aggregation of flows in our algorithm, all except possibly one of the subpaths are saturated, that is, they carry precisely one unit of flow. Since no two of these subpaths are contained in a same flow path of f and since the flow value of f is bounded from above by k, we added at most k hot spots for the pair uv. Since there are at most |R|2 pairs in R, the claim follows.

Definition 1

A hot spot uH is good if the congestion on any edge incident on u is bounded by 12log(k|R|)/loglog(k|R|); otherwise, u is bad.

Lemma 3

Let uH be a hot spot. The probability that u is bad is bounded from above by 1/(k2|R|3).

Proof

Let e1=uv1,,e=uv be the edges incident on u and, for each i with 1i, let fi be the total flow on the edge uvi. Since any flow path visits at most two of the edges incident on u, the total flow i=1fi on the edges incident on u is at most 2k.

For any i with 1i, we have fi=P:Peif(P), where P runs over the set of all paths connecting some terminal pair and containing ei. For 1jk, we define

fij=PP(sj,tj):Peif(P)

as the total amount of flow sent across ei by the terminal pair (sj,tj). Recall that xj is the total flow sent for the terminal pair (sj,tj). The probability that the randomized rounding procedure picks a certain path PP(sj,tj) is precisely xj·f(P)/xj=f(P). Given the disjointness of the respective events, the probability that the pair (sj,tj) routes a path across ei is precisely fij. Let Xij be the binary random variable indicating whether the pair (sj,tj) routes a path across ei. Then PXij=1=fij. Let Xi=j=1kXij be the number of paths routed across ei by the algorithm. By linearity of expectation,

EXi=j=1kEXij=j=1kfij=fi.

In the following, we assume that k is sufficiently big ( keee). Note that this assumption is feasible as MaxEDP can be efficiently solved when k is constant [42]. Fix any edge ei. Set

δ=6·log(k|R|)loglog(k|R|)

and δ=2δ/fi-1. Note that, for fixed i, the variables in {Xij1jk} are independent. Hence, by the Chernoff bound, we have

PXi2δPXi(1+δ)fi<eδ(1+δ)1+δfifi22δ·eδ2δfi2·e-6·log(k|R|)loglog(k|R|)loglog(k|R|)loglog(k|R|) 1
fi2k3|R|3. 2

For Eq. 1, we use fi2 (see Lemma 1) and e/δδ-1/2. For Eq. 2, we use

logloglog(k|R|)loglog(k|R|)1e<12.

Now, applying the union bound, we can infer that the probability that any of the edges incident on u carries more than 2δ paths, that is, more than 12log(k|R|)/loglog(k|R|) paths, is at most

ifi2k3|R|32k2k3|R|3=1k2|R|3.

Lemma 4

If every hot spot is good, then the congestion on every edge is bounded from above by 24log(k|R|)/loglog(k|R|).

Proof

Consider an arbitrary edge e=uv that is not incident on any hot spot. In particular, this means that e lies in the forest F=G-R. A hot spot z in F is called direct to e if the path in F from z to e excluding e does not contain any hot spot other than z.

We claim that there can be at most two distinct hot spots z,z direct to e. If there were a third hot spot z direct to e, then consider the unique node z0V(F) such that no two of the hot spots z, z, z are connected in F-z0. Such a node z0 exists, since z, z, z cannot lie on a common path in F as they are all direct to e. The node z0, however, would be added as a hot spot at the latest when H was built. Now this is a contradiction, because then one of the paths connecting z, z or z to e would contain z0 and thus one of these hot spots would not be direct to e.

Now we show the lemma assuming that there are two distinct hot spots z,z direct to e. If there were only one or no hot spot direct to e, then we can apply a similar argument as the following one.

Now, let P be an arbitrary path that is routed by our algorithm and that traverses e, and let PS be the subpath of P visiting e; see Fig. 3.

Fig. 3.

Fig. 3

Two examples of an edge e with two hot spots z and z (white nodes) being direct to e. Note that there is no hot spot in between z and z. Any path routed by our algorithm that visits e must visit ez or ez. Such a path P is highlighted in gray

Consider the two paths in F connecting z to e and z to e. Let ez and ez be the edges on these paths incident on z and z, respectively. By our construction, P must visit a hot spot in F. If P visited neither z nor z, then P would contain a hot spot direct to u or to v that is distinct from z and z—a contradiction. Hence P and thus also P visit ez or ez. The claim now follows from the facts that, first, this holds for any path traversing e, and that, secondly, z and z are good, and that, thirdly, therefore altogether at most 2·(12log(k|R|)/loglog(k|R|) paths visit ez or ez.

Now we are ready to prove Theorem 1.

Proof of Theorem 1

We show that the algorithm presented in Sect. 3.1 produces—with constant probability—a routing with Ω(OPT) paths with congestion Olog(kr)/loglog(kr). As argued above, the probability that we route less than OPT/2 paths is at most 1 / 2. By Lemma 2, the number of hot spots is at most 2k|R|2+|R| 3k|R|2. Thus, Lemma 3 implies an upper bound of 3k|R|2/(k2|R|3)=3/(k|R|) on the probability that at least one of these hot spots is bad. Hence, by Lemma 4, we route with probability 1-1/2-3/(k|R|) at least OPT/2 pairs with congestion at most 24log(k|R|)/loglog(k|R|). Since the probability is bounded from below by a positive constant for sufficiently big k, the statement of the theorem follows by using |R|2r+2k and |R|r.

Refined approximation bound for MaxEDP

In this section, we provide an improved approximation guarantee for MaxEDP without congestion, thereby proving Theorem 2.

Irreducible routings with low congestion

We first develop the concept of irreducible routings with low congestion, which is (besides Theorem 1) a key ingredient of our strengthened bound on the approximability of MaxEDP based on feedback vertex set number.

Consider any multigraph G and any set P of (not necessarily simple) paths in G with congestion c. We say that an edge e is redundant in P if there is an edge ee such that the set of paths in P covering (containing) e is a subset of the set of paths in P covering e. For instance, if G contains at least two edges, then any edge that is not covered by any path in P is redundant in P.

Definition 2

The set P is called an irreducible routing with congestion c if each edge belongs to at most c paths of P and there is no edge redundant in P.

In contrast to a feasible routing of a MaxEDP instance, we do not require an irreducible routing to connect a set of terminal pairs. If there is an edge e redundant in P, we can apply the following reduction rule: we contract e in G and we contract e in every path of P that covers e. By this, we obtain a minor G of G and a set P of paths that consists of all the contracted paths and of all paths in P that were not contracted. Thus, there is a one-to-one correspondence between the paths in P and P.

We make the following observation about P and P.

Observation 1

A subset of paths in P is edge-disjoint in G if and only if the corresponding subset of paths in P is edge-disjoint in G.

As applying the reduction rule strictly decreases the number of redundant edges, an iterative application of this rule yields an irreducible routing on a minor of the original graph.

Theorem 6

Let G be a minor-closed class of multigraphs and let pG be a positive integer. If for each graph GG and every non-empty irreducible routing P on G with congestion c there exists a path in P of length at most pG, then the average length of the paths in P is at most c·pG.

Proof

Take a path P0 of length at most pG. Contract all edges of P0 in G and obtain a minor GG of G. For each path in P contract all edges shared with P0 to obtain a set P of paths. Remove P0 along with all degenerated paths from P, thus |P|<|P|. Note that P is an irreducible routing on G with congestion c. We repeat this reduction procedure recursively on G and P until P is empty; this happens after at most |P| steps. At each step, we decrease the total path length by at most c·pG. Hence, the total length of paths in P is at most |P|·c·pG.

As a consequence of Theorem 6, we get the following result for forests.

Lemma 5

Let F be a forest and let P be a non-empty irreducible routing on F with congestion c. The average path length in P is at most 2c.

Proof

We show that P contains a path of length at most 2. Then the lemma follows immediately by applying Theorem 6 and using the fact that (simple) forests are minor-closed.

Take any tree in F, root it with any node and consider a leaf v of maximum depth. If v is adjacent to the root, then the tree is a star and every path in the tree has length at most 2. Otherwise, let e1 and e2 be the first two edges on the path from v to the root. By the definition of irreducible routing, the set of all paths covering e1 is not a subset of the paths covering e2; hence, e1 is covered by a path which does not cover e2. Since all other edges incident to e1 end in a leaf, this path has length at most 2.

Note that the bound provided in Lemma 5 is actually tight up to a constant. Let c be an arbitrary integer greater than one. Consider a graph that is a path of length c-1 with a star of c-1 leaves attached to one of its endpoints. The c-1 paths of length c together with the 2c-2 paths of length 1 form an irreducible routing with congestion c. The average path length is

(c-1)c+(2c-2)3c-3=c+23.

Approximation algorithm

Consider an instance (G,M) of MaxEDP with k terminal pairs. Let R be a 2-approximate minimum feedback vertex set in G; recall that we can obtain R in polynomial time [6]. Furthermore, let c=Olog(kr)/loglog(kr) be the bound on the congestion of our algorithm in Theorem 1.

We solve the corresponding MaxEDP LP and obtain an optimal extreme point solution (f,x) of total flow |f|=OPT. By the same argument as in Sect. 3, the number of all paths with a positive flow value is polynomially bounded in the input size. Let ρ=|R|/c and let P be the set of all paths with a positive flow value that visit at most ρ nodes of R.

Below we argue how to use R, P and f to obtain a feasible routing of Ω|f|/(c|R|) paths. This routing yields an overall approximation ratio of  Orlog(kr) and will prove Theorem 2.

We distinguish the following two cases.

Case 1 The total flow of P is at least |f| / 2. We compute a new flow (f,x), where we set f(P)=f(P) for every path P in P, and f(P)=0 for any other path P. Thus, we have |f||f|/2. By applying our algorithm of Sect. 3 on (f,x), we efficiently compute with constant probability a routing P¯ with congestion c containing Ω(|f|)=Ω(|f|) paths. Note that all paths in P¯ visit at most ρ nodes of R. Initialize P with P¯. As long as there is an edge e not adjacent to R that is redundant in P, we iteratively apply the reduction rule (see Sect. 4.1) on e by contracting e in the graph as well as in every path that covers it. Let G be the obtained minor of G with forest F=G-R.

Note that F is simple (in contrast to G that might contain multiple edges) as we contracted edges only in the (simple) forest G-R. The obtained set P is a set of (not necessarily simple) paths in G corresponding to P¯. In order to obtain a feasible routing for (G,M) of size Ω|f|/(cρ), it suffices by iterated application of Observation 1 to P¯ and P that we efficiently find a subset PSolP of pairwise edge-disjoint paths of size |PSol|=Ω|P¯|/(cρ).

To obtain PSol, we first bound the total path length in P. Removing R from G “decomposes” the set P into a set S of subpaths lying in F, that is,

S={Sis a connected component ofPFPP}.

Observe that S is an irreducible set of F with congestion c, as the reduction rule is not applicable anymore. (Note that a single path in P may lead to many paths in the cover S which are considered distinct.) Thus, by Lemma 5, the average path length in S is at most 2c.

Let P be an arbitrary path in P. Each edge on P that is not in a subpath in S is incident on a node in R, and each node in R is incident on at most two edges in P. Together with the fact that P visits less than ρ nodes in R, there are less than 2ρ edges of P outside S. By the same fact, P contributes at most ρ subpaths to S. Given that the average length of the subpaths in S is at most 2c, we can upper bound the total path length PP|P| by |P|ρ(2c+2). Let P be the set of the |P|/2 shortest paths in P. Hence, each path in P has length at most 4ρ(c+1).

We greedily construct a feasible solution PSol by iteratively picking an arbitrary path P from P, adding it to PSol and removing all paths from P that share some edge with P (including P itself). We stop when P is empty. As P has congestion c, we remove at most 4ρc(c+1) paths from P per iteration. Thus,

|PSol||P|/(4ρc(c+1))=Ω|P¯|/(c|R|).

Case 2 The flow of P is less than |f| / 2. Then, the flow of all paths visiting at least ρ nodes of R is at least |f| / 2. Let P be the subset of these paths and let f be the sum of all these flows. Note that f provides a feasible solution to relaxation MaxEDP LP for (GM) of value at least |f| / 2. Since every flow path in f has length at least ρ, the total inflow of the nodes in R is at least |f|ρ. By averaging, there must be a node vR of inflow at least ρ|f|/|R|=|f|/(c|R|). Let f be the subflow of f consisting of all flow paths visiting v. This subflow corresponds to a feasible solution (f,x) of the LP relaxation of value at least |f|/(c|R|)|f|/(2c|R|). Using Proposition 1, we can recover an integral feasible routing of size at least

ixi/12|f|/(24c|R|)=Ω|f|/(c|R|.

This completes the proof of Theorem 2.

Fixed-parameter algorithm for MaxNDP

We give a fixed-parameter algorithm for MaxNDP that solves anyinstance (G,M) in time (k+r)O(r)·n, where r denotes the feedback vertex set number of G, k=|M| and n=|V(G)|. A feedback vertex set R of size r can be computed in time rO(r)·n [38].

By the matching assumption (see Sect. 2), each terminal in M is a leaf. We can thus assume that none of the terminals is contained in R.

Consider an optimal routing P of the given MaxNDP instance and the set MRM of terminal pairs that are connected via P by a path that visits at least one node in R. Let PP be a path connecting a terminal pair (si,ti)MR. This path has the form (si,,r1,,r2,,r,,ti), where r1,,r are the nodes in R that are traversed by P in this order. The pairs (si,r1) and (r,ti) as well as (rj,rj+1) for j=1,,-1 are called essential pairs for P. A node pair is called essential if it is essential for some path in P. Let Me be the set of essential pairs.

Let F be the forest that arises when deleting R from the input graph G. Let (uv) be any pair of nodes in G. A path P in G with endpoints u and v is said to realize (uv) if all internal nodes of P lie in F. A set P of paths is said to realize a set of node pairs if every pair in this set is realized by some path in P and if two paths in P can only intersect at their endpoints. Note that the optimal routing P induces a realization of Me in a natural way: The realization consists of all maximal subpaths of paths in P whose internal nodes all lie in F. Conversely, for any realization P of Me, we can concatenate paths in P to obtain a feasible routing that connects all terminal pairs in MR. Therefore, we consider P (slightly abusing notation) also as a feasible routing for MR.

In our algorithm, we first guess the set Me of essential pairs, which implies the set MR as well as the set M¯R that we define as M¯R=M\MR. Then, by dynamic programming, we construct two sets of paths, Pe and PF, where Pe realizes Me and PF routes in F a subset of M¯R. In our algorithm, the set PePF forms a feasible routing that maximizes |PF| and routes all pairs in MR. Recall that we consider the realization Pe of Me as a feasible routing for MR.

Now assume that we correctly guessed Me. Below, we will describe an algorithm that uses a dynamic programming table to compute an optimum routing in time 2O(r)(k+r)O(1)·n. For the sake of easier presentation, first we describe how to compute the cardinality of such a routing. Then we argue how to find such a routing without a significant increase in the run time.

Dynamic programming table

Before we describe the dynamic programming table, we make several technical assumptions that help to simplify the presentation. First, we modify the input instance as follows. We subdivide every edge incident on a node in R by introducing a single new node on this edge. Note that this yields an instance equivalent to the input instance. As a result, every neighbor of a node in R that lies in F, that is, every node in NG(R), is a leaf in F. Moreover, the set R is an independent set in G. Also recall that we assumed that every terminal is a leaf and that therefore R does not contain any terminal. We also assume that the forest F is a rooted tree by introducing a dummy node (which plays the role of the root) and arbitrarily connecting this node to every connected component of F by an edge. In our dynamic programming table, we will take care that no path visits this root node. We also assume that F is an ordered tree by introducing an arbitrary order among the children of every node.

For any node v, let Fv be the subtree of F rooted at v. Let cv be the number degF(v)-1 of children of v and let v1,vcv be the (ordered) children of v. Then, for i=1,,cv, let Fvi denote the subtree of Fv induced by the union of v with the subtrees Fv1,,Fvi; see Fig. 4. If v is a leaf, we have Fv=v and we define Fv0 as Fv.

Fig. 4.

Fig. 4

Subtree Fvi consists of v and subtrees Fv1,,Fvi. Recall that only leaf nodes can be terminals or neighbors of R

We introduce a dynamic programming table T. It contains an entry for every Fvi and every subset Me of Me. Roughly speaking, the value of such an entry is the solution to the subproblem, where we restrict the forest to Fvi, and the set of essential pairs to Me. More precisely, table T contains five parameters: Parameters v and i describing Fvi, a parameter Me describing the set of essential pairs, and two more parameters u and b. The parameter u is either a terminal or a node in R, and b is in one of the three states: free, to-be-used, or blocked. The value T[v,i,Me,u,b] is the maximum cardinality of a set PF of paths with the following properties:

  1. The set PF is a feasible routing of some subset of M¯R.

  2. The set PF is completely contained in Fvi.

  3. There is an additional set Pe of paths with the following properties:
    1. The set Pe is a realization of Me{(u,v)} if b=to-be-used. Else, it is a realization of Me.
    2. The set Pe is completely contained in FviR and node-disjoint from the paths in PF.
  4. If b=free, there is no path in PePF visiting v.

If no such set PF exists, then T[v,i,Me,u,b] is -.

Note that the parameter u is only relevant when b=to-be-used (otherwise, it can just be ignored). One can think of the three states of b as follows: If b=free, then there is no path in PePF visiting v, hence, in the future we might consider to add a path through v. If b=to-be-used, then v is visited by some path in Pe (connecting u to v) and we cannot add a new path through v. Eventually, if b=blocked, we may add a path to PePF that goes through v. Hence, v is “blocked” for the future because of the possibility of having been already visited. Thus, we have

T[v,i,Me,u,blocked]T[v,i,Me,u,free]T[v,i,Me,u,to-be-used].

Below, we describe how to compute the entries of T in a bottom-up manner. Having computed T, we obtain the cardinality of the optimum routing P by |MR|+T[v,cv,Me,u,free], where v is the dummy root node and u is an arbitrary terminal.

Base case In the base case, the node v is a leaf and we have PF=. Thus, every entry for v has value either 0 or -, depending on whether Me can be routed. When b=free, no path can visit v and, hence, also Pe=. Thus we set

T[v,0,,u,free]=0.

Then we set

T[v,0,Me,u,blocked]=0

if Me is either empty, or consists of a single pair of nodes in RNG(v), or consists of a single pair where one node is v and the other one is in RNG(v). Finally, we set

T[v,0,,u,to-be-used]=0

if u=v or u is in RNG(v). For all the other cases where v is a leaf, we set

T[v,i,Me,u,b]=-.

Induction step For the inductive step, we first consider i=1. We have

T[v,1,Me,u,to-be-used]=T[v1,cv,Me,u,to-be-used],

since the path in Pe realizing (uv) has to start at a leaf node of Fv1. For the other states of b, recall that every path in PePF connects two leaves in Fv1. Since v has degree 1 in Fv1, there is no path in PePF visiting v, and we have

T[v,1,Me,u,blocked]=T[v,1,Me,u,free]=T[v1,cv,Me,u,blocked].

Now, let i be greater than 1. In a high level view, we guess which part of Me is realized in Fvi-1R and which part is realized in FviR. For this, we consider every partition Me1Me2 of Me. By our dynamic programming table, we find a partition that maximizes our objective. In the following, we assume that we guessed Me1Me2 correctly. Let us consider the different states of b in more detail.

  1. When b=free, node v is not allowed to be visited by any path, especially by any path in Fvi-1R. Hence, T[v,i,Me,u,free] is equal to
    T[v,i-1,Me1,u,free]+T[vi,cvi,Me2,u,blocked].
  2. When b=to-be-used, we have to realize (uv) in FviR. For this, there are two possibilities: Either (uv) is realized by a path in Fvi-1R, or there is a realizing path that first goes through FviR and then reaches v via the edge (vi,v). Hence, for the first possibility, we consider
    T[v,i-1,Me1,u,to-be-used]+T[vi,cvi,Me2,u,blocked],
    for the second possibility, we consider
    T[v,i-1,Me1,u,free]+T[vi,cvi,Me2,u,to-be-used].
    Maximizing over both, we obtain T[v,i,Me,u,to-be-used].
  3. When b=blocked, we will also consider two cases. In the first one, there is no path in PePF going through edge (vi,v), hence, we get the term
    T[v,i-1,Me1,u,blocked]+T[vi,cvi,Me2,u,blocked].
    In the second case, there is a path P in PePF going through edge (vi,v). Since P is connecting two leaves in Fvi, a part of P is in Fvi-1R and the other part is in FviR. If PPe, then it is realizing a pair of Me. Hence, for every pair (u1,u2)Me, we have to consider the term
    T[v,i-1,Me1-(u1,u2),u1,to-be-used]+T[vi,cvi,Me2-(u1,u2),u2,to-be-used]
    and the symmetric term where we swap u1 and u2. If PPF, then it is realizing a terminal pair of M¯R. Hence, for every pair (u1,u2)M¯R we get the term
    1+T[v,i-1,Me1,u1,to-be-used]+T[vi,cvi,Me2,u2,to-be-used]
    and the symmetric term where we swap u1 and u2. Note that we count the path realizing (u1,u2) in our objective. Maximizing over all the terms of the two cases, we obtain T[v,i,Me,u,to-be-used].

Analysis

Let us analyze the run time of the algorithm described above. Given R, the forest F can be computed in time O(r·n). In order to guess Me, we enumerate all potential sets of essential pairs. To bound the number of potential sets of essential pairs, first recall that each pair contains at least one node in R. On the other hand, each node in R appears in at most two pairs and, consequently, |Me|2r. Thus, an upper bound on the number of potential sets for Me is the number of ways to choose up to two pairs for each node in R. As each node in R is paired with a terminal node or another node in R, there are at most (2k+r-1) candidate pairs for it. Hence, there are at most (2k+r)2r candidate sets to consider. For each particular guess for Me, we run the dynamic program above. The number of entries in T—as specified by the five parameters v, i, Me,u and b—for each fixed guess for Me is at most

vV(F)degF(v)·22r·(2k+r)·3=22r·(2k+r)·O(n).

Among the different entries, those with b=blocked and i>1 have the highest run time in the worst case. There, we do not only consider all partitions of Me, but for every partition we also consider every possible node pair that is either an essential pair in Me or a terminal pair in M¯R. As there are at most 22r partitions of Me, at most 2r essential pairs in Me and at most k terminal pairs in M¯R, we consider at most 22r+2·22r·(k+2r)22r+1·(2k+2r) different terms, including the symmetric terms, for computing an entry. For each term, we need constant time for look-up. Hence, altogether, this gives a run time of

r·(2k+r)2r·22r·(2k+r)·22r+1·(2k+2r)·O(n)=(8k+8r)2r+3·O(n)

assuming that R is given. By computing R in time rO(r)·n, we can bound the total run time by (k+r)O(r)·n.

Reconstruction of an optimal routing

Above, we computed only the cardinality of the routing P. Now we discuss how to compute an optimal routing of size |P| without asymptotically increasing the total run time. For every non-leaf entry of T, we take a term that maximized its value and define the (at most two) entries appearing in the term as its children. We can do this while computing T without increasing the asymptotic run time. By considering all the children that (recursively) contributed to the entry with the optimum value of the root node, we obtain a computation tree. Going over the computation tree from bottom to top, we compute for each entry of the tree its set of paths PePF. We store the set as a linked list with pointers to the paths which themselves are stored as linked lists of their nodes. Whenever we concatenate two lists, we will not create a new copy but reuse one of them. This will give us constant time for concatenation. Note that for almost all entries we obtain PePF by just taking the union of the paths of its children. Hence, we just concatenate the lists of its children (at most two) in constant time. The only exception are entries where b=blocked and a path P is going through the node given by the first parameter v of the entry. Here, we obtain P by concatenating two paths, where each one belongs to a different child of the entry. Then we add the concatenated path to the union of the remaining paths of the children. The operation to find the two paths that we want to concatenate takes O(|PePF|)=O(k+r) time. The remaining steps to compute PePF also take constant time. Thus, for each entry of the tree, we can bound the run time by O(k+r). Note that in the computation tree there is exactly one entry for each subtree Fvi, hence, in total there are O(n) entries. Thus, our approach takes additional time of (k+r)·O(n) to compute the paths PePF. Finally, the time needed to accordingly concatenate the paths in Pe to get a routing for MR takes at most O(|Pe|2)=O(r2) time. Hence, in time (8k+8r)2r+3·O(n) we can compute an optimal routing, asymptotically matching the time needed to compute its cardinality.

This finishes the proof of Theorem 3.

Parameterized intractability of MaxNDP for the Parameter r

In this section, we prove Theorem 4, that is, we show that MaxNDP is W[1]-hard parameterized by feedback vertex set number. This reduction was originally devised for the parameter tree-depth by Ene et al. [21]; we notice that the same reduction also works for the parameter r. (Both tree-depth and feedback vertex set number are restrictions of treewidth, but they are incomparable to each other.)

For sake of completeness, we include the reduction here, and argue about the feedback vertex set number of the reduced graph. The reduction is from the W[1]-hard Multicolored Clique problem [23], where given a graph G and a partition of V(G) into q independent sets V1,,Vq, we are to check if there exists a q-clique in G with exactly one vertex in every set Vi. By adding dummy vertices, we can assume q2 and |Vi|=n for some n with n2 and every i with 1iq.

Construction Given an instance (G,(Vi)i=1q) of Multicolored Clique, we aim at constructing an equivalent instance (H,M,) of MaxNDP consisting of a graph H with feedback vertex set number bounded by a function of q, a set M of terminal pairs, and an integer . The graph H will contain  node-disjoint paths, each one routing a distinct terminal pair in M, if and only if (G,(Vi)i=1q) is a “yes”-instance.

We start by constructing for every set Vi a gadget Wi as follows. First, for every vVi, we construct a path Xvi of length q-2 on the vertex set

{xv,jij{1,,q}\{i}},

where the vertices are connected in any order. Let first(Xvi) denote any one of the two endpoints of Xvi, and let last(Xvi) denote the other endpoint of Xvi. Secondly, we select an arbitrary vertex uiVi. Thirdly, for every vVi\{ui}, we add a vertex svi and a vertex tvi. We make svi adjacent to first(Xvi) and to first(Xuii). Similarly, we make tvi adjacent to last(Xvi) and to last(Xuii); see Fig. 5. We set (svi,tvi) as a terminal pair. This concludes the description of the gadget Wi. Let Mst denote the set of terminal pairs constructed in this step.

Fig. 5.

Fig. 5

Part of the construction of the graph H: The gadgets Wi and Wj connected via pi,j. On the left side, the path Xuii is highlighted in gray

To encode adjacencies in G, we proceed as follows. For every i and j with 1i<jq, we add a vertex pi,j adjacent to all vertices in {xv,jivVi} and in {xw,ijwVj}; see Fig. 5. For every edge vwE(G) with vVi and wVj, we add a terminal pair (xv,ji,xw,ij). Let Mx be the set of terminal pairs constructed in this step; we have M=MstMx.

Finally, we set the required number  of paths to q(n-1)+q2. This concludes the description of the instance (H,M,).

From a clique to disjoint paths Assume that the given instance of Multicolored Clique is a “yes”-instance, and let {vii{1,,q}} be a clique in G with viVi for each i{1,,q}. We construct a family of  node-disjoint paths as follows. First, for every i{1,,q} and every vVi\{ui}, we route a path from svi to tvi through the path Xvi if vvi, and through the path Xuii if v=vi. Note that in this step we have created q(n-1) node-disjoint paths connecting terminal pairs, and in every gadget Wi the only unused vertices are vertices on the path Xvii. To construct the remaining q2 paths, for every i and j with 1i<jq, we take the 3-vertex path from xvi,ji to xvj,ij through pi,j; note that the assumption vivjE(G) ensures that (xvi,ji,xvj,ij) is indeed a terminal pair in M.

From disjoint paths to a clique. In the other direction, let P be a family of  node-disjoint paths connecting terminal pairs in H. Let PstP be the set of paths connecting terminal pairs from Mst, and, in an analogous way, let PxP be the set of paths connecting terminal pairs from Mx. Eventually, let P={pi,j1i<jq}. First, observe that P separates every terminal pair from Mx. Hence, every path from Px contains at least one vertex from P. Since |P|=q2, we have |Px|q2, and, consequently,

|Pst|-q2=q(n-1)=|Mst|.

Thus, Pst routes all terminal pairs in Mst and Px routes q2 pairs from Mx. Since |Px|=|P|, every vertex in P is contained in a path from Px. Consequently, the paths in Pst cannot use any vertex in P. Therefore, every path in Pst lies inside one gadget Wi.

Observe that a shortest path between terminals svi and tvi inside Wi is either Xuii or Xvi prolonged with the terminals at endpoints, and thus contains q+1 vertices. Furthermore, a shortest path between two terminals in Mx contains three vertices. We infer that the total number of vertices on paths in P is at least

|Pst|·(q+1)+|Px|·3=q(n-1)(q+1)+3q2=q(n-1)(q+1)+(q-1)+q2=|V(H)|.

We infer that every path in Pst consists of q+1 vertices, and every path in Px consists of three vertices. In particular, for every i{1,,q} and every vVi\{ui}, the path in Pst that connects svi and tvi goes either through Xvi or Xuii. Consequently, for each i{1,,q} there exists a vertex viVi such that the path Xvii is not contained in any path from Pst. Even more, Xvii contains all the vertices of Wi that do not lie on any path from Pst.

We claim that {vii=1,,q} is a clique in G. To this end, consider any pi,jP. Since |Px|=|P|, there exists a path in Px that goes through pi,j. Moreover, this path has exactly three vertices. Since the only neighbors of pi,j that are not used by paths from Pst are xvi,ji and xvj,ij, we infer that (xvi,ji,xvj,ij) is a terminal pair in M and, consequently, vivjE(G). This concludes the proof of the correctness of the construction.

Bounding the feedback vertex set number We are left with a proof that H has bounded feedback vertex set number in q.

First, observe that H-P consists of q components, where each component is a gadget Wi, for some i{1,,q}. Secondly, consider the endpoints of the path Xuii from the gadget Wi. Observe that the deletion of both vertices breaks Wi into n componentswhere each component is a path. Consequently, H has the feedback vertex set

P{first(Xuii),last(Xuii)i=1,,q}

of size O(q2).

This finishes the proof of Theorem 4.

Hardness of edge-disjoint paths in almost-forests

In this section, we show that EDP is NP-hard already in graphs that become forests after deleting two nodes. Though this immediately implies NP-hardness for MaxEDP in such graphs, we show that MaxEDP is NP-hard even in graphs that become forests after deleting just one node. Thus, we prove Theorem 5.

Proof of Theorem 5

We first show NP-hardness of EDP for r=2. We reduce from the problem Edge 3-Coloring in cubic graphs, which is NP-hard [28]. Given a cubic graph H, we construct a complete bipartite graph G, where one of the two partite sets of V(G) consists of three nodes {v1,v2,v3}, and the other partite set consists of V(H); see Fig. 6a, b. As for the set M of terminal pairs, let M={(s,t){s,t}E(H)}; in words, we want to connect a pair of nodes by a path in G if and only if they are connected by an edge in H. This completes the construction of the instance (G,M) of MaxEDP. Note that G has feedback vertex set number r=2; removing from G any two vertices of {v1,v2,v3} yields a forest.

Fig. 6.

Fig. 6

a Graph H; it is 3-edge-colorable. b Graph G obtained from H with r=2. c Graph G obtained from H with r=1. The reduction from an Edge 3-Coloring-instance H to an EDP/MaxEDP-instance (G,M). Dotted curves depict which terminals form a pair in M. The path highlighted in gray connects the terminal pair {a,d}

Regarding correctness of the reduction, we show that H is 3-edge-colorable if and only if all pairs in M can be routed in G.

In the forward direction, suppose that H is 3-edge-colorable by a proper coloring φ:E(H){1,2,3}. For c{1,2,3}, let EcE(H) be the set of edges that receive color c under φ. Then there is a routing in G that, for every c{1,2,3}, routes all terminal pairs {(s,t)M{s,t}Ec} exclusively via the node vc (and thus via paths of length 2). Note that this routing indeed yields edge-disjoint paths. Otherwise there were an edge {s,vc} in E(H) contained in at least two paths that route two terminal pairs {s,t1} and {s,t2}. Hence, the two edges in E(H) corresponding to {s,t1} and {s,t2} would receive the same color c in φ; a contradiction to the proper edge-coloring φ as both edges are incident on s.

In the backward direction, suppose that all terminal pairs in M can be routed in G. Since H is cubic, any node sV(H) is contained in three terminal pairs. Therefore, no path of the routing can have a node in V(H) as an internal node and thus all paths in the routing have length 2. Then this routing naturally corresponds to a proper 3-edge-coloring φ of H, where any terminal pair {s,t} routed via vc{v1,v2,v3} means that we color the edge {s,t}E(H) with color c under φ.

In order to show NP-hardness of MaxEDP for r=1, we also reduce from Edge 3-Coloring in cubic graphs and perform a similar construction as described above: This time, we construct a bipartite graph G with one subset of the partition being {v1,v2}, the other being V(H), and the set M of terminal pairs being again specified by the edges of H; see Fig. 6a, c. This completes the reduction. The resulting graph G has feedback vertex set number r=1.

We claim that H is 3-colorable if and only if we can route n=|V(H)| pairs in G.

In the forward direction, suppose that H is 3-edge-colorable by a proper coloring φ:E(H){1,2,3}. For c{1,2,3}, let EcE(H) be the set of edges that receive color c under φ. Then there is a routing in G that, for every c{1,2}, routes all terminal pairs {(s,t)M{s,t}Ec} exclusively via the node vc (and thus via paths of length 2). Note that the terminals corresponding to edges receiving color 3 remain unrouted. The reasoning that the resulting routing is feasible is analogous to the case of r=2. To see that precisely n terminal pairs are routed overall, observe that, for each of the n terminals, exactly two of the three terminal pairs are routed.

In the backward direction, suppose that n terminal pairs in M can be routed in G. Since every terminal v in G has degree two, at most two paths can be routed for v. As n terminal pairs are realized, this also means that exactly two paths are routed for each terminal. Hence, none of the paths in the routing has length more than two. Otherwise, it would contain an internal node in V(H), which then could not be part of two other paths in the routing. Then this routing naturally corresponds to a partial edge-coloring of H, where any terminal pair {s,t} routed via vc{v1,v2} implies that we color the edge {s,t}E(H) with color c. Since each terminal v in V(H) is involved in exactly two paths in the routing, exactly one terminal pair for v remains unrouted. Hence, exactly one edge incident on v in H remains uncolored in the partial coloring. We color all uncolored edges in H by color 3 to obtain a proper 3-edge-coloring.

Thus, we almost close the complexity gap for EDP with respect to the size of a minimum feedback vertex set, only leaving the complexity of the case r=1 open.

Concluding remarks

In this paper, we examined the problems of routing terminal pairs by edge- and node-disjoint paths in graphs of bounded feedback vertex set number r. We observed that our obtained approximability bounds, expressed in terms of r, either strengthen best known bounds or they are almost tight. This leads us to the conclusion that the parameter r in fact captures the “difficulty” of disjoint paths problems.

In particular, for MaxEDP, we obtained a constant-factor approximation algorithm with congestion logarithmic in k+r, where k is the number of terminal pairs. This strengthens the bound obtained by directly applying the randomized rounding technique for LPs introduced by Raghavan and Thompson [40]. Though also we applied this technique, beforehand we appropriately modified the fractional LP solution by making use of the forest that one obtains when removing the feedback vertex set from the graph. For our next result, we used the solution above to extract OPT/O(rlog(kr)) edge-disjoint paths out of it, where OPT denotes the value of an optimum fractional solution. This strengthens, up to a logarithmic factor, the best known bound of OPT/O(n) [11]. We achieved our result by contracting “redundant” edges in the input graph and in the routing which lead to an “irreducible” routing from which we could greedily pick up our solution. The result shows that in order to improve the best known bound it suffices to focus only on graphs with feedback vertex set number close to n.

We also complemented the upper bounds with hardness results. We observed that the complexities of both problems, routing node-disjoint paths and edge-disjoint-paths, differ when r is constant. Whereas NDP [43] and MaxNDP are efficiently solvable for any constant r, EDP and MaxEDP are NP-hard even for r=2 and r=1, respectively. Here, the complexity of EDP remains open for r=1 and we conjecture that this case can be solved in polynomial time. When considering r as part of the input, we can separate NDP and MaxNDP (if FPTW[1]). We showed W[1]-hardness of MaxNDP when parameterized by r, whereas NDP is fixed-parameterized tractable in r [43]. However, we were able to provide a fixed-parameter algorithm for the combined parameter k+r.

Acknowledgements

Open access funding provided by Max Planck Society.

Footnotes

This research was supported by ERC Starting Grant 306465 (BeyondWorstCase), and by Conicyt Grant PII 20150140, and by Millennium Nucleus Information and Coordination in Networks RC130003. An extended abstract of these results appeared in the Proceedings of the 24th European Symposium of Algorithms [24].

Contributor Information

Krzysztof Fleszar, Phone: +49 681 9325 1027, Email: kfleszar@mpi-inf.mpg.de.

Matthias Mnich, Email: m.mnich@maastrichtuniversity.nl, Email: mmnich@uni-bonn.de.

Joachim Spoerhase, Email: joachim.spoerhase@uni-wuerzburg.de.

References

  • 1.Adler, I., Kolliopoulos, S.G., Krause, P.K., Lokshtanov, D., Saurabh, S., Thilikos, D.: Tight bounds for linkages in planar graphs. In: Proceedings of ICALP 2011, Lecture Notes in Computer Science, vol. 6755, pp. 110–121 (2011)
  • 2.Andrews, M.: Approximation algorithms for the edge-disjoint paths problem via Räcke decompositions. In: Proceedings of FOCS 2010, pp. 277–286 (2010)
  • 3.Aumann, Y., Rabani, Y.: Improved bounds for all optical routing. In: Proceedings of SODA 1995, pp. 567–576 (1995)
  • 4.Aumann Y, Rabani Y. An O(log k) approximate min-cut max-flow theorem and approximation algorithm. SIAM J. Comput. 1998;27(1):291–301. doi: 10.1137/S0097539794285983. [DOI] [Google Scholar]
  • 5.Awerbuch, B., Gawlick, R., Leighton, T., Rabani, Y.: On-line admission control and circuit routing for high performance computing and communication. In: Proceedings of FOCS 1994, pp. 412–423 (1994)
  • 6.Bafna V, Berman P, Fujito T. A 2-approximation algorithm for the undirected feedback vertex set problem. SIAM J. Discrete Math. 1999;12(3):289–297. doi: 10.1137/S0895480196305124. [DOI] [Google Scholar]
  • 7.Bodlaender HL, Thomassé S, Yeo A. Kernel bounds for disjoint cycles and disjoint paths. Theoret. Comput. Sci. 2011;412(35):4570–4578. doi: 10.1016/j.tcs.2011.04.039. [DOI] [Google Scholar]
  • 8.Broder AZ, Frieze AM, Suen S, Upfal E. Optimal construction of edge-disjoint paths in random graphs. SIAM J. Comput. 1999;28(2):541–573. doi: 10.1137/S0097539795290805. [DOI] [Google Scholar]
  • 9.Broder AZ, Frieze AM, Upfal E. Existence and construction of edge-disjoint paths on expander graphs. SIAM J. Comput. 1994;23(5):976–989. doi: 10.1137/S0097539792232021. [DOI] [Google Scholar]
  • 10.Chekuri, C., Ene, A.: Poly-logarithmic approximation for maximum node disjoint paths with constant congestion. In: Proceedings of SODA 2013, pp. 326–341 (2013)
  • 11.Chekuri C, Khanna S, Shepherd FB. An O(n) approximation and integrality gap for disjoint paths and unsplittable flow. Theory Comput. 2006;2:137–146. doi: 10.4086/toc.2006.v002a007. [DOI] [Google Scholar]
  • 12.Chekuri C, Khanna S, Shepherd FB. A note on multiflows and treewidth. Algorithmica. 2009;54(3):400–412. doi: 10.1007/s00453-007-9129-z. [DOI] [Google Scholar]
  • 13.Chekuri, C., Mydlarz, M., Shepherd, F.B.: Multicommodity demand flow in a tree and packing integer programs. ACM Trans. Algorithms 3(3), Art. 27, 23 (2007)
  • 14.Chekuri, C., Naves, G., Shepherd, F.B.: Maximum edge-disjoint paths in k-sums of graphs. Technical Report. http://arxiv.org/abs/1303.4897
  • 15.Chekuri, C., Naves, G., Shepherd, F.B.: Maximum edge-disjoint paths in k-sums of graphs. In: Proceedings of ICALP 2013, Lecture Notes in Computer Sciences, vol. 7965, pp. 328–339 (2013)
  • 16.Chekuri C, Shepherd FB, Weibel C. Flow-cut gaps for integer and fractional multiflows. J. Comb. Theory Ser. B. 2013;103(2):248–273. doi: 10.1016/j.jctb.2012.11.002. [DOI] [Google Scholar]
  • 17.Chuzhoy, J.: Routing in undirected graphs with constant congestion. In: Proceedings of STOC 2012, pp. 855–874 (2012)
  • 18.Chuzhoy, J., Kim, D.H.K., Li, S.: Improved approximation for node-disjoint paths in planar graphs. In: Proceedings of STOC 2016, pp. 556–569 (2016)
  • 19.Chuzhoy J, Kim DHK, Nimavat R. New hardness results for routing on disjoint paths. Proc. STOC. 2017;2017:86–99. [Google Scholar]
  • 20.Chuzhoy, J., Li, S.: A polylogarithmic approximation algorithm for edge-disjoint paths with congestion 2. In: Proceedings of FOCS 2012, pp. 233–242 (2012)
  • 21.Ene, A., Mnich, M., Pilipczuk, M., Risteski, A.: On routing disjoint paths in bounded treewidth graphs. In: Proceedings of SWAT 2016, Leibniz International Proceedings in Informatics, vol. 53, pp. 15:1–15:15 (2016)
  • 22.Even, S., Itai, A., Shamir, A.: On the complexity of time table and multi-commodity flow problems. In: Proceedings of FOCS 1975, SFCS ’75, pp. 184–193. IEEE Computer Society, Washington, DC, USA (1975)
  • 23.Fellows MR, Hermelin D, Rosamond F, Vialette S. On the parameterized complexity of multiple-interval graph problems. Theoret. Comput. Sci. 2009;410(1):53–61. doi: 10.1016/j.tcs.2008.09.065. [DOI] [Google Scholar]
  • 24.Fleszar, K., Mnich, M., Spoerhase, J.: New algorithms for maximum disjoint paths based on tree-likeness. In: Proceedings of ESA 2016, pp. 42:1–42:17 (2016) [DOI] [PMC free article] [PubMed]
  • 25.Frieze AM. Edge-disjoint paths in expander graphs. SIAM J. Comput. 2001;30(6):1790–1801. doi: 10.1137/S0097539700366103. [DOI] [Google Scholar]
  • 26.Garg N, Vazirani VV, Yannakakis M. Primal-dual approximation algorithms for integral flow and multicut in trees. Algorithmica. 1997;18(1):3–20. doi: 10.1007/BF02523685. [DOI] [Google Scholar]
  • 27.Günlük O. A new min-cut max-flow ratio for multicommodity flows. SIAM J. Discrete Math. 2007;21(1):1–15. doi: 10.1137/S089548010138917X. [DOI] [Google Scholar]
  • 28.Holyer I. The NP-completeness of edge-coloring. SIAM J. Comput. 1981;10(4):718–720. doi: 10.1137/0210055. [DOI] [Google Scholar]
  • 29.Karp RM. On the computational complexity of combinatorial problems. Networks. 1975;5:45–68. doi: 10.1002/net.1975.5.1.45. [DOI] [Google Scholar]
  • 30.Kawarabayashi, K.-I., Wollan, P.: A shorter proof of the graph minor algorithm: the unique linkage theorem. In: Proceedings of STOC 2010, pp. 687–694 (2010)
  • 31.Kawarabayashi, K.-i., Kobayashi, Y.: An O(logn)-Approximation Algorithm for the Disjoint Paths Problem in Eulerian Planar Graphs and 4-Edge-Connected Planar Graphs, pp. 274–286 (2010)
  • 32.Kleinberg, J., Rubinfeld, R.: Short paths in expander graphs. In: Proceedings of FOCS 1996, pp. 86–95 (1996)
  • 33.Kleinberg, J., Tardos, É.: Disjoint paths in densely embedded graphs. In: Proceedings of FOCS 1995, pp. 52–61 (1995)
  • 34.Kleinberg J, Tardos É. Approximations for the disjoint paths problem in high-diameter planar networks. J. Comput. Syst. Sci. 1998;57(1):61–73. doi: 10.1006/jcss.1998.1579. [DOI] [Google Scholar]
  • 35.Kolliopoulos SG, Stein C. Approximating disjoint-path problems using packing integer programs. Math. Program. 2004;99(1):63–87. doi: 10.1007/s10107-002-0370-6. [DOI] [Google Scholar]
  • 36.Leighton T, Rao S. Multicommodity max-flow min-cut theorems and their use in designing approximation algorithms. J. ACM. 1999;46(6):787–832. doi: 10.1145/331524.331526. [DOI] [Google Scholar]
  • 37.Linial N, London E, Rabinovich Y. The geometry of graphs and some of its algorithmic applications. Combinatorica. 1995;15(2):215–245. doi: 10.1007/BF01200757. [DOI] [Google Scholar]
  • 38.Lokshtanov, D., Ramanujan, M.S., Saurabh, S.: Linear time parameterized algorithms for subset feedback vertex set. In: Proceedings of ICALP 2015, pp. 935–946 (2015)
  • 39.Nishizeki T, Vygen J, Zhou X. The edge-disjoint paths problem is NP-complete for series-parallel graphs. Discrete Appl. Math. 2001;115(1–3):177–186. doi: 10.1016/S0166-218X(01)00223-2. [DOI] [Google Scholar]
  • 40.Raghavan P, Tompson CD. Randomized rounding: a technique for provably good algorithms and algorithmic proofs. Combinatorica. 1987;7(4):365–374. doi: 10.1007/BF02579324. [DOI] [Google Scholar]
  • 41.Rao S, Zhou S. Edge disjoint paths in moderately connected graphs. SIAM J. Comput. 2010;39(5):1856–1887. doi: 10.1137/080715093. [DOI] [Google Scholar]
  • 42.Robertson N, Seymour PD. Graph minors. XIII. The disjoint paths problem. J. Comb. Theory Ser. B. 1995;63(1):65–110. doi: 10.1006/jctb.1995.1006. [DOI] [Google Scholar]
  • 43.Scheffler, P.: A practical linear time algorithm for disjoint paths in graphs with bounded tree-width. Technical Report TR 396/1994, FU Berlin, Fachbereich 3 Mathematik (1994)
  • 44.Séguin-Charbonneau, L., Shepherd, F.B.: Maximum edge-disjoint paths in planar graphs with congestion 2. In: Proceedings of FOCS 2011, pp. 200–209 (2011)

Articles from Mathematical Programming are provided here courtesy of Springer

RESOURCES