A New Push-Relabel Algorithm for Sparse Networks (1310.7840v3)
Abstract: In this paper, we present a new push-relabel algorithm for the maximum flow problem on flow networks with $n$ vertices and $m$ arcs. Our algorithm computes a maximum flow in $O(mn)$ time on sparse networks where $m = O(n)$. To our knowledge, this is the first $O(mn)$ time push-relabel algorithm for the $m = O(n)$ edge case; previously, it was known that push-relabel implementations could find a max-flow in $O(mn)$ time when $m = \Omega(n{1+\epsilon})$ (King, et. al., SODA 92). This also matches a recent flow decomposition-based algorithm due to Orlin (STOC
13), which finds a max-flow in $O(mn)$ time on sparse networks. Our main result is improving on the Excess-Scaling algorithm (Ahuja & Orlin, 1989) by reducing the number of nonsaturating pushes to $O(mn)$ across all scaling phases. This is reached by combining Ahuja and Orlin's algorithm with Orlin's compact flow networks. A contribution of this paper is demonstrating that the compact networks technique can be extended to the push-relabel family of algorithms. We also provide evidence that this approach could be a promising avenue towards an $O(mn)$-time algorithm for all edge densities.