English

Finding single-source shortest $p$-disjoint paths: fast computation and sparse preservers

Data Structures and Algorithms 2021-06-24 v1

Abstract

Let GG be a directed graph with nn vertices, mm edges, and non-negative edge costs. Given GG, a fixed source vertex ss, and a positive integer pp, we consider the problem of computing, for each vertex tst\neq s, pp edge-disjoint paths of minimum total cost from ss to tt in GG. Suurballe and Tarjan~[Networks, 1984] solved the above problem for p=2p=2 by designing a O(m+nlogn)O(m+n\log n) time algorithm which also computes a sparse \emph{single-source 22-multipath preserver}, i.e., a subgraph containing 22 edge-disjoint paths of minimum total cost from ss to every other vertex of GG. The case p3p \geq 3 was left as an open problem. We study the general problem (p2p\geq 2) and prove that any graph admits a sparse single-source pp-multipath preserver with p(n1)p(n-1) edges. This size is optimal since the in-degree of each non-root vertex vv must be at least pp. Moreover, we design an algorithm that requires O(pn2(p+logn))O(pn^2 (p + \log n)) time to compute both pp edge-disjoint paths of minimum total cost from the source to all other vertices and an optimal-size single-source pp-multipath preserver. The running time of our algorithm outperforms that of a natural approach that solves n1n-1 single-pair instances using the well-known \emph{successive shortest paths} algorithm by a factor of Θ(mnp)\Theta(\frac{m}{np}) and is asymptotically near optimal if p=O(1)p=O(1) and m=Θ(n2)m=\Theta(n^2). Our results extend naturally to the case of pp vertex-disjoint paths.

Keywords

Cite

@article{arxiv.2106.12293,
  title  = {Finding single-source shortest $p$-disjoint paths: fast computation and sparse preservers},
  author = {Davide Bilò and Gianlorenzo D'Angelo and Luciano Gualà and Stefano Leucci and Guido Proietti and Mirko Rossi},
  journal= {arXiv preprint arXiv:2106.12293},
  year   = {2021}
}

Comments

18 pages, 7 figures

R2 v1 2026-06-24T03:30:12.644Z