SODA Conference 2020 Conference Paper
A Blossom Algorithm for Maximum Edge-Disjoint T -Paths
- Satoru Iwata 0001
- Yu Yokoi
Let G = ( V, E ) be a multigraph with a set T ⊆ V of terminals. A path in G is called a T -path if its ends are distinct vertices in T and no internal vertices belong to T. In 1978, Mader showed a characterization of the maximum number of edge-disjoint T -paths. The original proof was not constructive, and hence it did not suggest an efficient algorithm. In this paper, we provide a combinatorial, deterministic algorithm for finding the maximum number of edge-disjoint T -paths. The algorithm adopts an augmenting path approach. More specifically, we introduce a novel concept of augmenting walks in auxiliary labeled graphs to capture a possible augmentation of the number of edge-disjoint T- paths. To design a search procedure for an augmenting walk, we introduce blossoms analogously to the blossom algorithm of Edmonds (1965) for the matching problem, while it is neither a special case nor a generalization of the present problem. When the search procedure terminates without finding an augmenting walk, the algorithm provides a certificate for the optimality of the current edge-disjoint T -paths. Thus the correctness argument of the algorithm serves as an alternative direct proof of Mader's theorem on edge-disjoint T -paths. The algorithm runs in O (| V | • | E | 2 ) time, which is much faster than the best known deterministic algorithm based on a reduction to the linear matroid parity problem.