Shortest two disjoint paths in conservative graphs
Ildikó Schlotter
TL;DR
This work addresses finding two openly disjoint $s$-$t$ paths of minimum total weight in undirected graphs with conservative edge weights, a problem that becomes NP-hard when negative weights are allowed. By restricting negative edges to a constant number $c$ of trees, the authors develop a polynomial-time algorithm that combines flow techniques for separable solutions with a sophisticated recursion and dynamic-programming framework for non-separable cases. Key contributions include structural lemmas on how minimum-weight solutions interact with negative trees, an uncrossing lemma for merging partial path pairs, and a dynamic-programming method to compute partial solutions on the trees, all culminating in an overall running time of $O(n^{2c+9})$. This yields an XP algorithm parameterized by $c$ and opens questions about fixed-parameter tractability in $c$ and extensions to more terminals.
Abstract
We consider the following problem that we call the Shortest Two Disjoint Paths problem: given an undirected graph $G=(V,E)$ with edge weights $w:E \rightarrow \mathbb{R}$, two terminals $s$ and $t$ in $G$, find two internally vertex-disjoint paths between $s$ and $t$ with minimum total weight. As shown recently by Schlotter and Sebő (2022), this problem becomes NP-hard if edges can have negative weights, even if the weight function is conservative, there are no cycles in $G$ with negative total weight. We propose a polynomial-time algorithm that solves the Shortest Two Disjoint Paths problem for conservative weights in the case when the negative-weight edges form a constant number of trees in $G$.
