The complexity of finding arc-disjoint branching flows

Abstract

International audienceThe concept of arc-disjoint flows in networks was recently introduced in Bang-Jensen and Bessy (2014). This is a very general framework within which many well-known and important problems can be formulated. In particular, the existence of arc-disjoint branching flows, that is, flows which send one unit of flow from a given source s to all other vertices, generalizes the concept of arc-disjoint out-branchings (spanning out-trees) in a digraph. A pair of out-branchings B + s,1 , B + s,2 from a root s in a digraph D = (V , A) on n vertices corresponds to arc-disjoint branching flows x 1 , x 2 (the arcs carrying flow in x i are those used in B + s,i , i = 1, 2) in the network that we obtain from D by giving all arcs capacity n − 1. It is then a natural question to ask how much we can lower the capacities on the arcs and still have, say, two arc-disjoint branching flows from the given root s. We prove that for every fixed integer k ≥ 2 it is • an NP-complete problem to decide whether a network N = (V , A, u) where u ij = k for every arc ij has two arc-disjoint branching flows rooted at s. • a polynomial problem to decide whether a network N = (V , A, u) on n vertices and u ij = n − k for every arc ij has two arc-disjoint branching flows rooted at s. The algorithm for the later result generalizes the polynomial algorithm, due to Lovász, for deciding whether a given input digraph has two arc-disjoint out-branchings rooted at a given vertex. Finally we prove that under the so-called Exponential Time Hypothesis (ETH), for every ϵ > 0 and for every k(n) with (log(n)) 1+ϵ ≤ k(n) ≤ n 2 (and for every large i we have k(n) = i for some n) there is no polynomial algorithm for deciding whether a given digraph contains two arc-disjoint branching flows from the same root so that no arc carries flow larger than n − k(n)

    Similar works