New Algorithms for Maximum Disjoint Paths Based on
Tree-Likeness

arXiv:1603.01740v2 [] 20 May 2016

Krzysztof Fleszar∗

Matthias Mnich†

Joachim Spoerhase‡

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/NDP is currently not well understood; the best known
lower bound is Ω(log1/2−ε n), assuming NP 6⊆ ZPTIME(npoly log n ). This constitutes a significant gap to
√
the best known approximation upper bound of O( n) due to Chekuri et al. (2006) and closing this gap is
currently one of the big open problems in approximation algorithms. In their seminal paper, Raghavan
and Thompson (Combinatorica, 1987) introduce the technique of randomized rounding
for

 LPs; their
technique gives an O(1)-approximation when edges (or nodes) may be used by O logloglogn n paths.
In this paper, we strengthen the above fundamental results. 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.
√
• For MaxEDP, we give an O( r · log1.5 kr)-approximation algorithm. As r ≤ n, up to logarithmic
√
factors, our result strengthens the best known ratio O( n) due to Chekuri et al.


• Further, we show how to route Ω(OPT) pairs with congestion O logloglogkrkr , 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. If r
is at most triple-exponential in k, this improves the best known algorithm for MaxNDP with
parameter k, by Kawarabayashi and Wollan (STOC 2010).
We complement these positive results by proving that MaxEDP is NP-hard even for r = 1, and
MaxNDP is W[1]-hard for parameter r. 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.

1

Introduction

In this paper, we study disjoint paths routing problems. In this setting, we are given an undirected graph G
and a collection of source-destination pairs M = {(s1 , t1 ), . . . , (sk , tk )}. The goal is to select a maximum-sized
subset M0 ⊆ M of the pairs that can be routed, where a routing of M0 is a collection P of paths such that,
for each pair (si , ti ) ∈ M0 , 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 the paths in P must be pairwise vertex-disjoint.
Disjoint paths problems are fundamental problems with a long history and significant connections to
optimization and structural graph theory. The decision version of MaxEDP/MaxNPD asks whether all of
the pairs can be routed. Karp [27] showed that, when the number of pairs is part of the input, the decision
problem is NP-complete. In undirected graphs, MaxEDP and MaxNDP are solvable in polynomial time
∗ Universität

Würzburg, Würzburg, Germany. krzysztof.fleszar@uni-wuerzburg.de
Bonn, Bonn, Germany. mmnich@uni-bonn.de. Supported by ERC Starting Grant 306465 (BeyondWorstCase).
‡ Universität Würzburg, Würzburg, Germany. joachim.spoerhase@uni-wuerzburg.de
† Universität

1

when the number of pairs is a fixed constant; this is a very deep result of Robertson and Seymour [40] 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 √
are part of the input. In this setting, the best approximation ratio for MaxEDP is achieved by
an O( n)-approximation algorithm [12, 33], where n is the number of nodes, whereas the best hardness for
undirected graphs is only Ω(log1/2−ε n) [3]. Bridging this gap is a fundamental open problem that seems
quite challenging at the moment.
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. [24] 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. 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. This led Chekuri et al. [15]
to studying the approximability of MaxEDP with respect to the tree-width of the underlying graph. In
particular, they pose the following conjecture:
Conjecture 1 ([13]). 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. 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 [37]. This further rules out the existence of a
fixed-parameter algorithm for MaxEDP parameterized by w, assuming P 6= NP. Therefore, to obtain fixedparameter 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 low congestion c: that is, instead of requiring the routed paths to be pairwise disjoint,
at most c paths can use an edge. In their groundbreaking work, Raghavan and Thompson [38] 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 O logloglogn n .
This extensive line of research [2, 18, 29] has culminated in a logO(1) k-approximation algorithm with
congestion 2 for MaxEDP [20]. A slightly weaker result also holds for MaxNDP [11].

1.1

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, which for a graph G denotes the smallest size r of a set R of G 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 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, Vazirani and Yannakakis [24]. Similarly, MaxNDP is easy on trees
(see Theorem 3).
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 parameter r correlates quite well with the
“difficulty” of disjoint paths problems.
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 [38], that one can always
route Ω(OPT) pairs with congestion O

log n
log log n

with constant probability.
2

Theorem 1. For any instance
(G, M) of MaxEDP, one can efficiently find a routing of Ω(OPT) pairs with

log kr
congestion O log log kr with constant probability; in other words, there is an efficient O(1)-approximation


algorithm for MaxEDP with congestion O logloglogkrkr .
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. The integrality gap of the multi-commodity flow relaxation for MaxEDP with k terminal
pairs is O( r · log1.5 rk) for graphs with feedback vertex set number r. Moreover, there is a polynomial time
algorithm that,
√ given a fractional solution to the relaxation of value opt, it constructs an integral routing of
size opt/O( r · log1.5 rk).
In particular, our algorithm strengthens the best known approximation algorithm for MaxEDP on general
graphs [12] as always r ≤ n, and indeed it matches that algorithm’s performance up to polylogarithmic factors.
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 [12].
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 [24].
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 [38], it is shown that the probability
that the congestion on any fixed edge is larger than c logloglogn n 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 w.h.p. The
number of edges in the graph may, however, be unbounded in terms of r and k. Hence, in order to to prove
Theorem 1, we propose a non-trivial pre-processing 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 that the congestion bound is exceeded to
the amount of flow on that edge. Since the total amount of flow on each hot spot is bounded in terms of k,
the probability that all edges incident on the same hot spot have bounded congestion is inverse polynomial
in r and k.
√
The known O( n)-approximation algorithm for MaxEDP by Chekuri et al. [12] employs a clever LProunding approach. If there are many long paths 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 since each such path blocks a bounded amount of flow. In order to prove Theorem 2,
it is natural to consider the case where there are many paths visiting a large number of nodes in R. In this
case, we reduce to a single-source flow problem, similarly to the approach of Chekuri et al. The case where
a majority of the flow paths visit only a few nodes in R turns out 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. Second, we introduce the concept of
irreducible routings with low congestion which allows us 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.

3

√
Note that the natural greedy approach of always routing the shortest conflict-free path gives only O( m)
for MaxEDP. 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 (8k + 8r)2r+2 · O(n) on graphs with feedback vertex set number r
and k terminal pairs.
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 [28], which
requires time at least quadruple-exponential in k [1]. Namely, if r is at most 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, parameter k does not appear in the exponent of
the run time at all. Hence, for small values of r our algorithm is also 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 [41]
algorithm for NDP with run time 2O(r log r) · O(n).
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 parameter k + r,
unless NP ⊆ coNP/poly [8].
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 FPT 6= W[1]):
Theorem 4. MaxNDP in unit-capacity graphs is W[1]-hard parameterized by r.
This contrasts the known result that NDP is fixed-parameter tractable in r [41]—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 r = 1 and EDP is NP-hard for unit-capacity
graphs with r = 2.
This theorem also shows that our algorithms are relevant for small values of r, and they nicely complement
the NP-hardness for MaxEDP in capacitated trees [24].
Our results are summarized in Table 1.
const.

param.

r=0
r=1
r≥2
r

EDP

MaxEDP

NDP

MaxNDP

poly [24]
open
NP-hard (Thm. 5)

poly [24]
NP-hard (Thm. 5)
NP-hard (Thm. 5)

poly [41]
poly [41]
poly [41]

poly (Thm. 3)
poly (Thm. 3)
poly (Thm. 3)

para-NP-hard (Thm. 5)
FPT [41] W[1]-hard (Thm. 4)
√
O( r · log1.5 kr)-approx
(Thm.
2)
exact (k + r)O(r) (Thm. 3)


O(1)-approx. w.cg. O logloglogkrkr (Thm. 1)
Table 1: Summary of results obtained in this paper.

Related Work. Our study of the 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 tree-width of the input graph, Günlük [25] and Chekuri et al. [17] give
bounds on the flow-cut gap for the closely related integer multicommodity flow problem that are logarithmic
with respect to the vertex cover number of a graph. This improved upon earlier bounds of O(log n) [34]
4

and O(log k) [5, 35]. As every feedback vertex set is in particular a vertex cover of a graph, our results
generalize earlier work for disjoint path problems on graphs with bounded vertex cover number. Bodlaender
et al. [8] showed that NDP does not admit a polynomial kernel parameterized by vertex cover number and
the number k of terminal pairs, unless NP ⊆ coNP/poly ; therefore, NDP is unlikely to admit a polynomial
kernel in r + k either. Ene et al. [21] showed that MaxNDP is W[1]-hard parameterized by treedepth, which
is another restriction of treewidth that is incomparable to the 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 Ω(log5 n) [39], for bounded-degree
expanders [9, 10, 23, 30, 34], and for Eulerian planar or 4-connected planar graphs [29]. Constant factor
approximation algorithms are known for capacitated trees [14, 24], grids and grid-like graphs [4, 6, 31, 32].
For planar graphs, there is a constant-factor approximation algorithm with congestion 2 [42]. Very recently,
9/19
Chuzhoy et al. [19]
)-approximation algorithm for MaxNDP on planar graphs. However,
√ gave a Õ(n
improving the O( n)-approximation algorithm for MaxEDP remains elusive even for planar graphs.

2

Preliminaries

We use standard graph theoretic notation. For a graph G, let V (G) denote its vertex set and E(G) its edge
set. Let G be a graph. A feedback vertex set of G is a set R ⊆ V (G) such that G − R is a forest. A minor
of 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/MaxNPD, 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 a terminal and attaching them as leaves.
Multi-commodity flow relaxation. We use the following standard multi-commodity flow relaxation for
MaxEDP (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 (u, v) of nodes. Since the pairs M form a matching, the sets P(si , ti ) are
Sk
pairwise disjoint. Let P = i=1 P(si , ti ). The LP has a variable f (P ) for each path P ∈ P 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 IP, 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 (resp. node for MaxNDP) is at most 1.

max

(MaxEDP LP)

s1

k
X

s2

xi

i=1

s.t.

X

f (P ) = xi ≤ 1

i = 1, . . . , k,

P ∈P(si ,ti )

X

f (P ) ≤ 1

e ∈ E(G)

sk

P : e∈P

f (P ) ≥ 0

P ∈P

t1

t2

tk

√
Figure 1: Multi-commodity flow relaxation for MaxEDP. Right: Ω( n) integrality gap for MaxEDP [24]:
any integral routing routes at most one pair, whereas a 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.
It is well-known that the relaxation MaxEDP LP can be solved in polynomial time, since there is an
5

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. For each terminal v,
let x(v) denote the total amount of flow routed for v and we refer to x(v) as the marginal value of v in the
multi-commodity flow f .
We will use the following result by Chekuri et al. [12, Sect. 3.1]; see also Proposition 3.3 of Chekuri et
al. [16].
Proposition 1. Let (f, x) be a fractional solution to the LP relaxation of a MaxEDP instance (G, M).
P If
1
some node v is contained in all flow paths of f , then we can find an integral routing of size at least 12
i xi
in polynomial time.

3

Bi-Criteria Approximation for MaxEDP with Low Congestion

We present a randomized rounding algorithm that will lead to the proof of Theorem 1.

3.1

Algorithm

Consider an instance (G, M) of MaxEDP. Let R be a 2-approximate minimum feedback vertex set of G and
let r = |R|; note that such a set R can be obtained in polynomial time [7].
For the sake of easier presentation, we will assume in this section that the feedback vertex set R contains
all terminal nodes from M. This can be achieved by temporarily adding the set of terminals to the feedback
vertex set R. Also note that this assumption increases the bound of Theorem 1 by at most a constant factor.
First, solve the corresponding MaxEDP LP. We obtain an optimal solution (f, x). For each (si , ti ) ∈ M
we further obtain a set P 0 (si , ti ) = {P ∈ P(si , ti ) | f (P ) > 0} of positive weighted paths that satisfy the LP
Sk
constraints. Note that the total set P 0 = i=1 P 0 (si , ti ) is of size polynomially bounded in the input size. In
what follows, we will modify P 0 and then select an (unweighted) subset S of P 0 that will form our integral
solution.
Each P ∈ P 0 has the form (r1 , . . . , r2 , . . . , r` ) where r1 , . . . , r` are the nodes in R that are traversed by P
in this order. The paths (rj , . . . , rj+1 ) with j = 1, . . . , ` − 1 are called subpaths of P . For every subpath P 0
of P , we set f (P 0 ) = f (P ). Let J be the multi-set of all subpaths of all paths in P 0 . Let F = G − R be the
forest obtained by removing R.
We now modify some paths in P 0 , one by one, and at the same time construct a subset H of nodes that
we will call “hot spots”. At the end, every subpath in J will contain at least one hot spot.
Initially, let H = ∅. Consider any tree T in F and fix any of its nodes as a root. Then let JT be the
multi-set of all subpaths in J that, excluding the endpoints, are contained in T . For each subpath P ∈ JT ,
define its highest node h(P ) as the node on P closest to the root. Note that P ∩ T = P ∩ F is a path. Now,
pick a subpath P ∈ JT that does not contain any node in H and whose highest node h(P ) is farthest away
from the root. Consider the multi-set J [P ] of all subpaths in JT that
P are identical to P (but may be subpaths
of different flow paths in P 0 ). Note that the weight f (J [P ]) := P ∈J [P ] f (P ) of J [P ] is at most 1 by the
constraints of the LP. Let u, v ∈ R be the endpoints of P . We define Juv as the set of all subpaths in J \ J [P ]
that have u and v as their endpoints and that do not contain any node in H.
Intuitively speaking, we now aggregate flow on P by rerouting as much flow as possible from Juv to P .
To this end, we repeatedly perform the following operation as long as f (J [P ]) < 1 and Juv 6= ∅. We
pick a path P 0 in J that contains a subpath in Juv . We reroute flow from P 0 by creating a new path P 00
that arises from P 0 by replacing its subpath between u and v with P , and assign it the weight f (P 00 ) =
min{f (P 0 ), 1 − f (J [P ])}. Then we set the weight of (the original path) P 0 to max{0, f (P 0 ) + f (J [P ]) − 1}.
We update the sets P 0 , P 0 (si , ti ), J , JT , J [P ] and Juv accordingly.
As soon as f (J [P ]) = 1 or Juv = ∅, we add h(P ) to H. Then, we proceed with the next P ∈ JT not
containing 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 .

6

At the end, we create our solution S 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 0 (si , ti ) and add it to S where the
probability that path P is taken is f (P )/xi .

3.2

Analysis

First, observe that x did not change during our modifications of the paths, as the total flow
Pk between any
terminal pair did not change. Thus, the expected number of pairs routed in our solution is i=1 xi ≥ OPT.
Using the Chernoff bound, the probability that we route less than OPT /2 pairs is at most e−1/8 OPT < 1/2,
assuming that OPT > 8. Secondly, we bound the congestion of our solution—our second criterion.
Lemma 1. The congestion of 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 0 on which we increase the flow. Assume, without loss
of generality, that P was considered before P 0 by the algorithm. If there was an edge e lying on P and P 0 ,
then both subpaths traverse the same tree in forest F . Hence, the path from e to h(P 0 ) would visit h(P ),
and h(P ) would be an internal node of P 0 . This yields a contradiction, as h(P ) was already marked as a hot
spot when P 0 was considered. This shows that we increased the flow along any edge by at most one unit, and,
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 H of hot spots. As a part of the analysis, we will now extend this set as follows. We
build a sub-forest F 0 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 0 . Since the number of nodes of degree 3 in any forest is at
most its number of leaves and since every leaf of F 0 is a hot spot, it follows that this can at most double the
size of H. Finally, we add the set R of all feedback vertex nodes to H.
Lemma 2. The number |H| of hot spots is O(kr2 ).
Proof. It suffices to show that the number of hot spots added to H by the algorithm is O(kr2 ). To this
end, fix two nodes u, v ∈ R and consider the set of flow subpaths P with end nodes u and v for which we
added h(P ) to H. 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 only O(k) hot spots
for the pair u, v. Since there are at most r2 pairs in R, the claim follows.
Definition 1. A hot spot u ∈ H is good if the congestion on any edge incident on u is bounded by c · logloglogkrkr ,
where c is a sufficiently large constant; otherwise, u is bad.
Lemma 3. Let u ∈ H be a hot spot. Then the probability that u is bad is at most 1/(k 2 r3 ).
Proof. Let e1 = uv1 , . . . , e` = uv` be the edges incident on u and let fi be the total flow on edge uvi
for i = 1, . . . , `. By Lemma
1, we have that fi ≤ 2. Since any flow path visits at most two of the edges incident
P`
on u, the total flow i=1 fi on the edges incident
on u is at most 2k.
P
For any i = 1, . . . , `, we have that fi = P : P 3eP
f (P ), where P runs over the set of all paths connecting
i
some terminal pair and containing ei . Let fij = P ∈P(sj ,tj ) : P 3ei f (P ) be the total amount of flow sent
across ei by terminal pair (sj , tj ). Recall that xj is the total flow sent for terminal pair (sj , tj ). The probability
that the randomized rounding procedure picks path P with P ∈ P(sj , tj ) is precisely xj · fx(p)
= f (p).
j
Given the disjointness of the respective events, the probability that pair (sj , tj ) routes a path across ei is
precisely fij . Let Xij be the binary P
random variable indicating whether pair (sj , tj ) routes a path across ei .
Then Pr [Xij = 1] = fij . Let Xi = j Xij be the
P number ofPpaths routed across ei by the algorithm. By
linearity of expectation, we have that E [Xi ] = j E [Xij ] = j fij = fi .

7

Fix any edge ei . Set δ = c · logloglogkrkr and δ 0 = 2 fδi − 1. Note that for fixed i, the variables Xij are
independent. Hence, by the Chernoff bound, we have that

Pr Xi ≥ c ·

!fi

0
log kr
eδ
0
≤ Pr [Xi ≥ (1 + δ )fi ] <
log log kr
(1 + δ 0 )1+δ0
 2δ  −2δ
log kr
0
δ
fi
fi
·
≤ fi e−c log log kr· log log kr ≤ 3 3 .
≤
2
e
2k r

Here, we use that fi ≤ 2 for the second last inequality and for the last inequality we pick c0 sufficiently large
by making c and k sufficiently large. (Note that MaxEDP can be solved efficiently for constant k.)
Now, using the union bound,
P we can infer that the probability that any of the edges incident on u carries
more than δ paths is at most i fi /(2k 3 r3 ) ≤ (2k)/(2k 3 r3 ) = 1/(k 2 r3 ).
Lemma 4. Assume that every hot spot is good. Then the congestion on any edge is bounded by 2c logloglogkrkr .
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 u (or v) if the path in F from z to u
(or v) neither contains e nor any hot spot other than z.
Now observe that there can be only one hot spot z direct to u and only one hot spot z 0 direct to v. If
there was a second hot spot z 00 =
6 z direct to u then there would have to be yet another hot spot at the node
where the path Pz from z to u joins the path from z 00 to u contradicting the choice of z. Let Pz0 be the path
from z 0 to v in F . Moreover, let ez be the edge incident on z on path Pz and let ez0 be the edge incident
on z 0 on path Pz0 .
Now let P be an arbitrary path that is routed by our algorithm and that traverses e. It must visit a
hot spot. If P visited neither z nor z 0 , then P would contain a hot spot direct to u or to v that is distinct
from z and z 0 —a contradiction. Therefore, P contains ez or e0z . The claim now follows from the fact that this
holds for any path traversing e, that z and z 0 are good, and that therefore at most 2c logloglogkrkr paths visit ez
or e0z .
Theorem 6. The algorithm from Sect.
3.1 
produces—with constant probability—a routing with Ω(OPT)

log kr
paths, such that the congestion is O log log kr .
Proof. As argued above, we route less than OPT /2 paths with probability at most 1/2. By Lemma 2, there
are O(kr2 ) hotspots. The probability that at least one of these hot spots is bad is O(kr2 /(k 2 r3 )) = O(1/(kr)),
by Lemma 3. Hence, with constant probability, we route at least OPT /2 pairs with congestion at
most 2c logloglogkrkr , by Lemma 4.

4

Refined Approximation Bound for MaxEDP

In this section, we provide an improved approximation guarantee for MaxEDP without congestion, thereby
proving Theorem 2. (In contrast to the previous section, we do not assume here that all terminals are
contained in the feedback vertex set.)

4.1

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 the feedback vertex
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 e0 6= e such that the set of paths in P covering
(containing) e is a subset of the set of paths in P covering e0 .
8

Definition 2. 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 an 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 G0 of G
and a set P 0 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 0 .
We make the following observation about P and P 0 .
Observation 1. Any subset of paths in P 0 is edge-disjoint in G0 if and only if the corresponding subset of
paths in P is edge-disjoint in G.
Since the application of 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 7. Let G be a minor-closed class of multigraphs and let pG > 0. If for each graph G ∈ G and every
non-empty irreducible routing S of G with congestion c there exists a path in S of length at most pG , then the
average length of the paths in S 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 G0 ∈ G of G.
For each path in S contract all edges shared with P0 to obtain a set S 0 of paths. Remove P0 along with all
degenerated paths from S 0 , thus |S 0 | < |S|. Note that S 0 is an irreducible routing of G0 with congestion c. We
repeat this reduction procedure recursively on G0 and S 0 until S 0 is empty which happens after at most |S|
steps. At each step we decrease the total path length by at most c · pG . Hence, the total length of paths in S
is at most |S| · c · pG .
As a consequence of Theorem 7, we get the following result for forests.
Lemma 5. Let F be a forest and let S be a non-empty irreducible routing of F with congestion c. Then the
average path length in S is at most 2c.
Proof. We show that S contains a path of length as most 2. The lemma follows immediately by applying
Theorem 7.
Take any tree in F , root it with any node and consider a leaf v of maximum depth. Let e1 and e2 be
the first two edges on the path from v to the root. By 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 ≥ 1 be an arbitary
integer. Consider a graph that is a path of length c − 1 with a star of c − 1 leafs attached to one of its end
points. The c − 1 many paths of length c together with the 2c − 2 many paths of length 1 form an irreducible
routing with congestion c. The average path length is ((c − 1)c + (2c − 2))/(3c − 3) = (c + 2)/3.

4.2

Approximation Algorithm

Consider an instance (G, M) of MaxEDP, and let r be the size of a feedback vertex set
 R in G. Using our
log kr
result of Sect. 3, we can efficiently compute a routing P with congestion c := O log log kr containing Ω(OPT)
paths.
√ 
Below we argue how to use the routing P to obtain a feasible routing of cardinality Ω |P|/(c1.5 r) ,

√
which yields an overall approximation ratio of O r · log1.5 rk ; that will prove Theorem 2.
p
Let r0 = r/c. We distinguish the following cases.
Case 1: At least half of the paths in P visit at most r0 nodes of the feedback vertex set R. Let P be the
subset of these paths. As long as there is an edge e not adjacent to R that is redundant in P 0 , we iteratively
9

apply the reduction rule from Sect. 4.1 on e. Let G0 be the obtained minor of G with forest F 0 = G0 − R, and
let P 0 be the obtained set of (not necessarily simple) paths corresponding to P. By Observation 1, it suffices
to show that there is a subset P00 ⊆ P 0 of pairwise edge-disjoint paths of size |P0 | = Ω (|P|/(cr0 )) in order to
obtain a feasible routing for (G, M) of size Ω (|P|/(cr0 )).
To obtain P00 , we first bound the total path length in P 0 . Removing R from G0 “decomposes” the set P 0
into a set S := {S is a connected component of P ∩ F | P ∈ P 0 } of subpaths lying in F 0 . Observe that S is
an irreducible set of F 0 with congestion c, as the reduction rule is not applicable anymore. (Note that a single
path in P 0 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 0 . 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 at most r0
nodes in R and
P that the average length of the subpaths in S is at most 2c, we can upper bound the total
path length P ∈P 0 |P | by |P 0 |r0 (2c + 2). Let P 00 be the set of the |P 0 |/2 shortest paths in P 0 . Hence, each
path in P 00 has length at most 4r0 (c + 1).
We greedily construct a feasible solution P00 by iteratively picking an arbitrary path P from P 00 adding
it to P00 and removing all paths from P 00 that share some edge with P (including P itself). We stop
when P 00 is empty. As P 00 has congestion c, √
weremove at most 4r0 c(c + 1) paths from P 00 per iteration.
0
00
0
1.5
Thus, |P0 | ≥ |P |/(4r c(c + 1)) = Ω |P|/(c
r .
Case 2: At least half of the paths in P visit at least r0 nodes of the feedback vertex set R. Let P 0 be the
subset of these paths. Consider each path in P 0 as a flow of value 1/c and let f be the sum of all these flows.
Note that f provides a feasible solution to the MaxEDP LP relaxation for (G, M ) of value at least |P|/(2c).
Note that each such flow path contributes 1/c unit of flow to each of the r0 nodes in R it visits. Since
every flow path in f has length at least r0 , the total inflow of the nodes in R is at least |f |r0 . By averaging,
there must be a node v ∈ R of inflow at least r0 |f |/r = |f |/r0 . Let f 0 be the subflow of f consisting of
all flow paths visiting v. This subflow corresponds to a feasible solution (f 0 , x0 ) of the LP relaxation of
value at P
least |f |/r0 ≥ |P|/(2cr0 ). Using Proposition
1, we can recover an integral feasible routing of size at
√ 
1
least 12 i x0i ≥ |P|/(24cr0 ) = Ω |P|/(c1.5 r .
This completes the proof of Theorem 2.

5

Fixed-Parameter Algorithm for MaxNDP

We give a fixed-parameter algorithm for MaxNDP with run time (k + r)O(r) · n, where r is the size of a
minimum feedback vertex set in the given instance (G, M). A feedback vertex set R of size r can be computed
in time 2O(r) · O(n) [36]. By the matching assumption, 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. Let MR ⊆ M be the set of terminal
pairs that are connected via P by a path that visits at least one node in R. Let P ∈ P 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 ), (r` , ti ) and (rj , rj+1 ) with 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 (u, v) be an essential pair.
A u-v path P in G is said to realize (u, v) if all internal nodes of P lie in F . A set P 0 of paths is said to
realize Me if every pair in Me is realized by some path in P 0 and if two paths in P 0 can only intersect at
their end nodes. Note that the optimal routing P induces a natural realization of Me , by considering all
maximal subpaths of paths in P whose internal nodes all lie in F . Conversely, for any realization P 0 of Me ,
we can concatenate paths in P 0 to obtain a feasible routing that connects all terminal pairs in MR . Therefore,
we consider P 0 (slightly abusing notation) also as a feasible routing for MR .
In our algorithm, we first guess the set Me (and thus MR ). Then, by a dynamic program, we construct
two sets of paths, Pe and PF where Pe realizes Me and PF connects in F a subset of MR := M \ MR . In

10

our algorithm, the set Pe ∪ PF 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 know set Me . We will describe below a dynamic program that computes an optimum
routing in time 2O(r) (k + r)O(1) n. For the sake of easier presentation, we only describe how to compute the
cardinality of such a routing.
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. Therefore, we may assume that R does not
contain any terminal. We also assume that 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 program, 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 each node.
For any node v, let Fv be the subtree of F rooted at v. Let cv := degF (v) − 1 be the number 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 . For leaves v, we define Fv0 as Fv = v.
We introduce a dynamic programming table T . It contains an entry for every Fvi and every subset M0e
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 M0e . More precisely, table T contains five parameters. Parameters v
and i describing Fvi , parameter M0e , and two more parameters u and b. 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, M0e , u, b] is the
maximum cardinality of a set PF of paths with the following properties:
1. PF is a feasible routing of some subset of MR .
2. PF is completely contained in Fvi .
3. There is an additional set Pe of paths with the following properties:
(a) Pe is completely contained in Fvi ∪ R and node-disjoint from the paths in PF .
(b) Pe is a realization of M0e ∪ {(u, v)} if b = to-be-used . Else, it is a realization of M0e .
(c) There is no path in Pe ∪ PF visiting v if b = free.
If no such set PF exists then T [v, i, M0e , u, b] is −∞.
Note that the parameter u is only relevant when b = to-be-used (otherwise, it can just be ignored).
Observe that T [v, i, M0e , u, blocked ] ≥ T [v, i, M0e , u, free] ≥ T [v, i, M0e , u, to-be-used ]. Below, we describe how
to compute the entries of T in a bottom-up manner.
In the base case v is a leaf. We set T [v, 0, ∅, u, free] = 0. Then we set T [v, 0, M0e , u, blocked ] = 0 if M0e is
either empty, consists of a single pair of nodes in R ∩ NG (v), or consists of a single pair where one node is v
and the other one is in R ∩ NG (v). Finally, we set T [v, 0, ∅, u, to-be-used ] = 0 if u = v or u is in R ∩ NG (v).
For all other cases where v is a leaf, we set T [v, i, M0e , u, b] = −∞.
For the inductive step, we consider the two cases i = 1 and i > 1. Let i = 1. It holds
that T [v, 1, M0e , u, to-be-used ] = T [v1 , cv , M0e , u, to-be-used ] since the path in Pe realizing (u, v) has to
start at a leaf node of Fv1 . It also holds that T [v, 1, M0e , u, blocked ] and T [v, 1, M0e , u, free] are equal
to T [v1 , cv , M0e , u, blocked ].
Now, let i > 1. In a high level view, we guess which part of M0e is realized in Fvi−1 ∪ R and which part
is realized in Fvi ∪ R. For this, we consider every tuple (M0e1 , M0e2 ) such that M0e1 ] M0e2 is a partition
of M0e . By our dynamic programming table, we find a tuple that maximizes our objective. In the following,
we assume that we guessed (M0e1 , M0e2 ) correctly. Let us consider the different cases of b in more detail.
For b = free, node v is not allowed to be visited by any path, especially by any path in Fvi−1 ∪ R.
Hence, T [v, i, M0e , u, free] is equal to
T [v, i − 1, M0e1 , u, free] + T [vi , cvi , M0e2 , u, blocked ] .
11

In the case of b = to-be-used , we have to realize (u, v) in Fvi ∪ R. For this, there are two possibilities:
Either (u, v) is realized by a path in Fvi−1 ∪ R, or there is a realizing path that first goes through Fvi ∪ R and
then reaches v via the edge (vi , v). Hence, for the first case, we consider
T [v, i − 1, M0e1 , u, to-be-used ] + T [vi , cvi , M0e2 , u, blocked ],
for the second case, we consider
T [v, i − 1, M0e1 , u, free] + T [vi , cvi , M0e2 , u, to-be-used ] .
Maximizing over both, we obtain T [v, i, M0e , u, to-be-used ].
For the case of b = blocked , we will consider two subcases. In the first subcase, there is no path in Pe ∪ PF
going through edge (vi , v), hence, we get
T [v, i − 1, M0e1 , u, blocked ] + T [vi , cvi , M0e2 , u, blocked ] .
In the second subcase, there is a path P in Pe ∪ PF going through edge (vi , v). Since P is connecting two
leafs in Fvi , a part of P is in Fvi−1 ∪ R and the other part is in Fvi ∪ R. If P ∈ Pe , then it is realizing a pair
of M0e . Hence, for every pair (u1 , u2 ) ∈ M0e , we have to consider the term
T [v, i − 1, M0e1 − (u1 , u2 ), u1 , to-be-used ] + T [vi , cvi , M0e2 − (u1 , u2 ), u2 , to-be-used ]
and the symmetric term where we swap u1 and u2 . If P ∈ PF , then it is realizing a terminal pair of MR .
Hence, for every pair (u1 , u2 ) ∈ MR we get the term
1 + T [v, i − 1, M0e1 , u1 , to-be-used ] + T [vi , cvi , M0e2 , 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 subcases, we obtain T [v, i, M0e , u, to-be-used ].
Let us analyze the run time of algorithm described in Sect. 5. In order to guess Me , we enumerate all
potential sets of essential pairs. There are at most (2k + r + 1)2r candidate sets to consider, since each
pair contains a node in R, and each node in R is paired with at most two other nodes each of which is
either a terminal or another node in R. For each particular guess Me , we run the above dynamic program.
0
The number
P of entries in T —as2rspecified by the five parameters v, i, Me , u and b—for each fixed Me is
at most ( v∈V (F ) degF (v)) × 2 × (2k + r) × 3. For the computation of each such entry, we consider all
combinations of at most 22r partitions of M0e with either at most r essential pairs in M0e , or with at most k
terminal pairs in MR . Altogether, this gives a run time of (8k + 8r)2r+2 · O(n). This finishes the proof of
Theorem 3.

6

Parameterized Intractability of MaxNDP for Parameter r

In this section we show that MaxNDP is W[1]-hard parameterized by the size r of a feedback vertex set.
This reduction was originally devised for parameter treedepth, by Ene et al. [21]; here we notice that the
same reduction also works for parameter r. (Both treedepth 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 [22], where
given a graph G, an integer k, and a partition V = V 1 ] V 2 ] . . . ] V k , we are to check if there exists k-clique
in G with exactly one vertex in every set V i . By adding dummy vertices, we can assume that |V i | = n for
every i = 1, . . . , k, and that n, k ≥ 2.
Construction. Given an instance (G, k, (V i )ki=1 ) of Multicolored Clique, we aim at constructing an
equivalent instance (H, M, `) of MaxNDP.
12

We start with a construction, for every set V i , a gadget W i as follows. First, for every v ∈ V i we construct
a (k − 1)-vertex path Xvi on vertices xiv,1 , xiv,2 , . . . , xiv,i−1 , xiv,i+1 , . . . , xiv,k . Second, we select an arbitrary
vertex ui ∈ Vi . Third, for every v ∈ V i \ {ui }, we add a vertex siv adjacent to the first vertex of Xvi (i.e., xiv,1
and xiui ,1 if i > 1 or xiv,2 and xiu1 ,2 if i = 1), a vertex tiv adjacent to the last vertex of Xvi (i.e., xiv,k and xiui ,k
if i < k or xiv,k−1 and xiui ,k−1 if i = k), and make (siv , tiv ) a terminal pair. This concludes the description of
the gadget W i . By Mst we denote the set of terminal pairs constructed in this step.
To encode adjacencies in G, we proceed as follows. For every pair 1 ≤ i < j ≤ k, we add a vertex pi,j ,
adjacent to all vertices xiv,j for v ∈ Vi and all vertices xju,i for u ∈ Vj . For every edge vu ∈ E(G) with v ∈ Vi
and u ∈ Vj , we add a terminal pair (xiv,j , xju,i ). Let Mx be the set of terminal pairs constructed in this step;
we have M = Mst ∪ Mx .

Finally, we set the required number of paths ` := k(n − 1) + k2 . This concludes the description of the
instance (H, M, `).
From a clique to disjoint paths. Assume that the input Multicolored Clique instance is a “yes”instance, and let {v i | i = 1, . . . , k} be a clique in G with v i ∈ V i for i = 1, . . . , k. We construct a family
of ` vertex-disjoint paths as follows. First, for i = 1, . . . , k and every v ∈ V i \ {ui }, we route a path from siv
to tiv through the path Xvi if v 6= v i , and through the path Xui i if v = v i . Note that in this step we have
i
created k(n − 1) vertex-disjoint paths connecting terminal pairs, and
 in every gadget W the only unused
k
i
vertices are vertices on the path Xvi . To construct the remaining 2 paths, for every pair 1 ≤ i < j ≤ k we
take the 3-vertex path from xivi ,j to xjvj ,i through pi,j ; note that the assumption that v i v j ∈ E(G) ensures
that (xivi ,j , xjvj ,i ) is indeed a terminal pair in M.

From disjoint paths to a clique. In the other direction, let P be a family of ` vertex-disjoint paths
connecting terminal pairs in H. Let Pst ⊆ P be the set of paths connecting terminal pairs from Mst , and
similarly define Px . First, observe that the set P = {pi,j | 1 ≤ i < j ≤ k} separates every terminal pair


from Mx . Hence, every path from Px contains at least one vertex from P . Since |P | = k2 , we have |Mx | ≤ k2 ,

and, consequently, |Pst | ≥ ` − k2 = k(n − 1) = |Mst |. We infer that Pst routes all terminal pairs in Mst

without using any vertex of P , while Px routes k2 pairs from Px , and every path from Px contains exactly
one vertex from P .
Since the paths in Pst cannot use any vertex in P , every such path needs to be contained inside one
gadget W i . Furthermore, observe that a shortest path between terminals siv,a and tiv,a inside W i is either Xui i
or Xvi , prolonged with the terminals at endpoints, and thus contains k + 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
 
k
|Pst | · (k + 1) + |Px | · 3 = k(n − 1)(k + 1) + 3
2
 
k
= k (n(k − 1) + 2(n − 1)) +
= |V (H)| .
2
We infer that every path in Pst consists of k + 1 vertices, and every path in Px consists of three vertices. In
particular, for i = 1, . . . , k and v ∈ V i \ {ui }, the path in Pst that connects siv and tiv goes either through Xvi
or Xui i . Consequently, for i = 1, . . . , k there exists a vertex v i ∈ V i such that the vertices of W i that do not
lie on any path from Pst are exactly the vertices on the path Xvi i .

We claim that {v i | i = 1, . . . , k} is a clique in G. To this end, consider a pair 1 ≤ i < j ≤ k. Since |Px | = k2 ,
there exists a path in Px that goes through pi,j . Moreover, this path has exactly three vertices. Since the only
neighbours of pi,j that are not used by paths from Pst are xivi ,j and xjvj ,i , we infer that (xivi ,j , xjvj ,i ) ∈ M
and, consequently, v i v j ∈ E(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.
13

To this end, first observe that H − P contains k connected components, being the gadgets W i . Second,
observe that the deletion of the endpoints of the path Xui i from the gadget W i breaks W i into connected
components being paths on at most k + 1 vertices. Consequently, H has a feedback vertex set R consisting
of P and {xiui ,1 , xiui ,k ∈ V (W i ) | i = 1, . . . , k}, of size |R| = O(k 2 ). This finishes the proof of Theorem 4.

7

Hardness of Edge-Disjoint Paths in Almost-Forests

In this section we show that EDP (and hence MaxEDP) is NP-hard already in graphs that are almost
forests, namely, in graphs that are forests after deleting two nodes. That is, 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 [26]. Given a cubic graph H, we construct a complete bipartite
graph G, where one of the two partite classes of V (G) consists of three nodes {v1 , v2 , v3 }, and the other
partite class consists of V (H). As terminal pairs, we create the set 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. Notice that G has a feedback vertex set of
size r = 2, since removing any size-2 subset of {v1 , v2 , v3 } from G yields a forest.
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. Let ϕ : E(H) → {1, 2, 3} be a proper 3-edgecoloring of H. For c = 1, 2, 3, let Ec ⊆ E(H) be the set of edges that receive color c under ϕ. Then there
is a routing in G that routes all terminal pairs {(s, t) ∈ M | {s, t} ∈ Ec } exclusively via the node vc (and
thus via paths of length 2). Notice that this routing indeed yields edge-disjoint paths, for if there are distinct
vertices s, t1 , t2 ∈ V (H) and edges e1 = {s, t1 }, e2 = {s, t2 } ∈ E(H), then e1 , e2 receive distinct colors under ϕ
(as ϕ is proper), and so the two terminal pairs {s, t1 }, {s, t2 } are routed via distinct nodes c1 , c2 ∈ {v1 , v2 , v3 },
and thus also via edge-disjoint paths.
In the backward direction, suppose that all terminal pairs in M can be routed in G. Since H is cubic,
any node s ∈ V (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 c means that we
color the edge {s, t} ∈ E(H) with color c under ϕ.
In order two 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. This completes the reduction. The resulting graph G has a feedback vertex
set of size 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. Let ϕ : E(H) → {1, 2, 3} be a proper 3-edgecoloring of H. For c = 1, 2, 3, let Ec ⊆ E(H) be the set of edges that receive color c under ϕ. Then there is a
routing in G that routes all f {(s, t) ∈ M | {s, t} ∈ Ec } exclusively via the node vc (and thus via paths of
length 2) for the colors c = 1, 2. (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. Since for each of
the n terminals exactly two of the three terminal pairs are routed, this means that precisely n terminal pairs
are routed overall.
In the backward direction, suppose that n terminal pairs in M can be routed in G. Since any terminal v
in G is a node in V (H) has therefore has degree two in G, this means that 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 c means 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
14

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-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. We conjecture that this case can be solved in
polynomial time.

References
[1] I. Adler, S. G. Kolliopoulos, P. K. Krause, D. Lokshtanov, S. Saurabh, and D. Thilikos. Tight bounds
for linkages in planar graphs. In Proc. ICALP 2011, volume 6755 of Lecture Notes Comput. Sci., pages
110–121, 2011.
[2] M. Andrews. Approximation algorithms for the edge-disjoint paths problem via Räcke decompositions.
In Proc. FOCS 2010, pages 277–286, 2010.
[3] M. Andrews, J. Chuzhoy, V. Guruswami, S. Khanna, K. Talwar, and L. Zhang. Inapproximability of
edge-disjoint paths and low congestion routing on undirected graphs. Combinatorica, 30(5):485–520,
2010.
[4] Y. Aumann and Y. Rabani. Improved bounds for all optical routing. In Proc. SODA 1995, pages
567–576, 1995.
[5] Y. Aumann and Y. Rabani. An O(log k ) approximate min-cut max-flow theorem and approximation
algorithm. SIAM J. Comput., 27(1):291–301, 1998.
[6] B. Awerbuch, R. Gawlick, T. Leighton, and Y. Rabani. On-line admission control and circuit routing for
high performance computing and communication. In Proc. FOCS 1994, pages 412–423, 1994.
[7] V. Bafna, P. Berman, and T. Fujito. A 2-approximation algorithm for the undirected feedback vertex
set problem. SIAM J. Discrete Math., 12(3):289–297 (electronic), 1999.
[8] H. L. Bodlaender, S. Thomassé, and A. Yeo. Kernel bounds for disjoint cycles and disjoint paths. Theoret.
Comput. Sci., 412(35):4570–4578, 2011.
[9] A. Z. Broder, A. M. Frieze, S. Suen, and E. Upfal. Optimal construction of edge-disjoint paths in random
graphs. SIAM J. Comput., 28(2):541–573 (electronic), 1999.
[10] A. Z. Broder, A. M. Frieze, and E. Upfal. Existence and construction of edge-disjoint paths on expander
graphs. SIAM J. Comput., 23(5):976–989, 1994.
[11] C. Chekuri and A. Ene. Poly-logarithmic approximation for maximum node disjoint paths with constant
congestion. In Proc. SODA 2013, pages 326–341, 2013.
√
[12] C. Chekuri, S. Khanna, and F. B. Shepherd. An O( n) approximation and integrality gap for disjoint
paths and unsplittable flow. Theory Comput., 2:137–146, 2006.
[13] C. Chekuri, S. Khanna, and F. B. Shepherd. A note on multiflows and treewidth. Algorithmica,
54(3):400–412, 2009.
[14] C. Chekuri, M. Mydlarz, and F. B. Shepherd. Multicommodity demand flow in a tree and packing
integer programs. ACM Trans. Algorithms, 3(3):Art. 27, 23, 2007.
[15] C. Chekuri, G. Naves, and F. B. Shepherd. Maximum edge-disjoint paths in k-sums of graphs. In Proc.
ICALP 2013, volume 7965 of Lecture Notes Comput. Sci., pages 328–339, 2013.
15

[16] C. Chekuri, G. Naves, and F. B. Shepherd. Maximum edge-disjoint paths in k-sums of graphs. CoRR,
abs/1303.4897, 2013.
[17] C. Chekuri, F. B. Shepherd, and C. Weibel. Flow-cut gaps for integer and fractional multiflows. J.
Comb. Theory, Ser. B, 103(2):248–273, 2013.
[18] J. Chuzhoy. Routing in undirected graphs with constant congestion. In Proc. STOC 2012, pages 855–874,
2012.
[19] J. Chuzhoy, D. H. K. Kim, and S. Li. Improved approximation for node-disjoint paths in planar graphs.
In Proc. STOC 2016, 2016. to appear.
[20] J. Chuzhoy and S. Li. A polylogarithmic approximation algorithm for edge-disjoint paths with congestion
2. In Proc. FOCS 2012, pages 233–242, 2012.
[21] A. Ene, M. Mnich, M. Pilipczuk, and A. Risteski. On routing disjoint paths in bounded treewidth graphs.
In Proc. SWAT 2016, LIPIcs, 2016. to appear.
[22] M. R. Fellows, D. Hermelin, F. Rosamond, and S. Vialette. On the parameterized complexity of
multiple-interval graph problems. Theoret. Comput. Sci., 410(1):53–61, 2009.
[23] A. M. Frieze. Edge-disjoint paths in expander graphs. SIAM J. Comput., 30(6):1790–1801 (electronic),
2001.
[24] N. Garg, V. V. Vazirani, and M. Yannakakis. Primal-dual approximation algorithms for integral flow
and multicut in trees. Algorithmica, 18(1):3–20, 1997.
[25] O. Günlük. A new min-cut max-flow ratio for multicommodity flows. SIAM J. Discrete Math., 21(1):1–15,
2007.
[26] I. Holyer. The NP-completeness of edge-coloring. SIAM J. Comput., 10(4):718–720, 1981.
[27] R. Karp. On the computational complexity of combinatorial problems. Networks, 5:45–68, 1975.
[28] K. Kawarabayashi and P. Wollan. A shorter proof of the graph minor algorithm: the unique linkage
theorem. In Proc. STOC 2010, pages 687–694, 2010.
[29] K.-i. Kawarabayashi and Y. Kobayashi. Breaking O(n1/2 )-approximation algorithms for the edge-disjoint
paths problem with congestion two. In Proc. STOC 2011, pages 81–88, 2011.
[30] J. Kleinberg and R. Rubinfeld. Short paths in expander graphs. In Proc. FOCS 1996, pages 86–95, 1996.
[31] J. Kleinberg and É. Tardos. Disjoint paths in densely embedded graphs. In Proc. FOCS 1995, pages
52–61, Oct 1995.
[32] J. Kleinberg and É. Tardos. Approximations for the disjoint paths problem in high-diameter planar
networks. J. Comput. System Sci., 57(1):61–73, 1998.
[33] S. Kolliopoulos and C. Stein. Approximating disjoint-path problems using packing integer programs.
Math. Prog., 99(1):63–87, 2004.
[34] T. Leighton and S. Rao. Multicommodity max-flow min-cut theorems and their use in designing
approximation algorithms. J. ACM, 46(6):787–832, 1999.
[35] N. Linial, E. London, and Y. Rabinovich. The geometry of graphs and some of its algorithmic applications.
Combinatorica, 15(2):215–245, 1995.
[36] D. Lokshtanov, M. S. Ramanujan, and S. Saurabh. Linear time parameterized algorithms for subset
feedback vertex set. In Proc. ICALP 2015, pages 935–946, 2015.
16

[37] T. Nishizeki, J. Vygen, and X. Zhou. The edge-disjoint paths problem is NP-complete for series-parallel
graphs. Discrete Appl. Math., 115(1-3):177–186, 2001.
[38] P. Raghavan and C. D. Tompson. Randomized rounding: A technique for provably good algorithms and
algorithmic proofs. Combinatorica, 7(4):365–374, 1987.
[39] S. Rao and S. Zhou. Edge disjoint paths in moderately connected graphs. SIAM J. Comput., 39(5):1856–
1887, 2010.
[40] N. Robertson and P. D. Seymour. Graph minors. XIII. The disjoint paths problem. J. Combin. Theory
Ser. B, 63(1):65–110, 1995.
[41] P. Scheffler. 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.
[42] L. Séguin-Charbonneau and F. B. Shepherd. Maximum edge-disjoint paths in planar graphs with
congestion 2. In Proc. FOCS 2011, pages 200–209, 2011.

17

