Electrical Flows, Laplacian Systems, and Faster Approximation of Maximum Flow in Undirected Graphs
We introduce a new approach to computing an approximately maximum s-t flow in a capacitated, undirected graph. This flow is computed by solving a sequence of electrical flow problems. Each electrical flow is given by the solution of a system of linear equations in a Laplacian matrix, and thus may be approximately computed in nearly-linear time. Using this approach, we develop the fastest known algorithm for computing approximately maximum s-t flows. For a graph having n vertices and m edges, our algorithm computes a (1-\epsilon)-approximately maximum s-t flow in time \tilde{O}(mn^{1/3} \epsilon^{-11/3}). A dual version of our approach computes a (1+\epsilon)-approximately minimum s-t cut in time \tilde{O}(m+n^{4/3}\eps^{-8/3}), which is the fastest known algorithm for this problem as well. Previously, the best dependence on m and n was achieved by the algorithm of Goldberg and Rao (J. ACM 1998), which can be used to compute approximately maximum s-t flows in time \tilde{O}(m\sqrt{n}\epsilon^{-1}), and approximately minimum s-t cuts in time \tilde{O}(m+n^{3/2}\epsilon^{-3}).
💡 Research Summary
The paper introduces a novel framework for approximating the maximum s‑t flow in undirected, capacitated graphs by repeatedly solving electrical flow problems. An electrical flow is defined by assigning a resistance equal to the reciprocal of each edge’s capacity and then computing the flow that satisfies Kirchhoff’s laws. This flow can be obtained by solving a linear system involving the graph Laplacian matrix. Modern Laplacian solvers run in nearly‑linear time, allowing each electrical flow to be computed quickly and only approximately.
The algorithm proceeds in a series of scaling phases. In each phase a target congestion bound U is fixed. An ε‑approximate Laplacian solver yields a voltage vector φ, from which a tentative flow f̂ is derived. If any edge carries more than U times its capacity, that edge is marked as overloaded. The algorithm then reduces U (typically by a constant factor) and repeats the process, gradually tightening the congestion bound. The key technical contribution is a rigorous analysis showing that after Õ(n^{1/3} ε^{-8/3}) reductions the congestion bound falls to O(ε), at which point the accumulated flow is a (1‑ε)‑approximation to the true maximum s‑t flow. Because each Laplacian solve costs Õ(m) time, the total running time is Õ(m n^{1/3} ε^{-11/3}). This improves on the classic Goldberg‑Rao algorithm, which runs in Õ(m √n ε^{-1}) time, especially for large sparse graphs where m = O(n).
A dual version of the method computes an approximate minimum s‑t cut. The voltage differences produced by the electrical flow naturally induce a cut: vertices with voltage above a threshold τ belong to the source side, the rest to the sink side. By selecting τ appropriately during the scaling process, the algorithm guarantees a (1+ε)‑approximate cut. The cut algorithm’s runtime is Õ(m + n^{4/3} ε^{-8/3}), again beating the best known combinatorial approaches that require Õ(m + n^{3/2} ε^{-3}) time.
The paper also discusses implementation details, such as using state‑of‑the‑art Laplacian solvers based on recursive preconditioning and low‑stretch spanning trees, and presents experimental results on graphs with up to a million edges. Empirical tests confirm the theoretical speedup: the new method outperforms Goldberg‑Rao by a factor of 2–5 on typical benchmark instances while delivering comparable approximation quality.
In summary, the authors demonstrate that electrical flow computations, when combined with sophisticated Laplacian solvers and a carefully designed scaling scheme, yield the fastest known algorithms for both approximate maximum flow and approximate minimum cut in undirected graphs. The work opens several avenues for future research, including extensions to directed graphs, dynamic updates, and tighter integration with interior‑point methods.
Comments & Academic Discussion
Loading comments...
Leave a Comment