An Almost-Linear-Time Algorithm for Approximate Max Flow in Undirected Graphs, and its Multicommodity Generalizations

In this paper, we introduce a new framework for approximately solving flow problems in capacitated, undirected graphs and apply it to provide asymptotically faster algorithms for the maximum s-t flow and maximum concurrent multicommodity flow problems. For graphs with n vertices and m edges, it allows us to find an e-approximate maximum s-t flow in time O(m1+o(1)e-2), improving on the previous best bound of O(mn1/3poly(e-1)). Applying the same framework in the multicommodity setting solves a maximum concurrent multicommodity flow problem with k commodities in O(m1+o(1)e-2k2) time, improving on the existing bound of O(m4/3poly(k>,e-1)). Our algorithms utilize several new technical tools that we believe may be of independent interest: • We give a non-Euclidean generalization of gradient descent and provide bounds on its performance. Using this, we show how to reduce approximate maximum flow and maximum concurrent flow to oblivious routing. • We define and provide an efficient construction of a new type of flow sparsifier. Previous sparsifier constructions approximately preserved the size of cuts and, by duality, the value of the maximum flows as well. However, they did not provide any direct way to route flows in the sparsifier G' back in the original graph G, leading to a longstanding gap between the efficacy of sparsification on flow and cut problems. We ameliorate this by constructing a sparsifier G' that can be embedded (very efficiently) into G with low congestion, allowing one to transfer flows from G' back to G. • We give the first almost-linear-time construction of an O(mo(1))-competitive oblivious routing scheme. No previous such algorithm ran in time better than Ω(mn). By reducing the running time to almost-linear, our work provides a powerful new primitive for constructing very fast graph algorithms. The interested reader is referred to the full version of the paper [8] for a more complete treatment of these results.

[1]  Robert E. Tarjan,et al.  A data structure for dynamic trees , 1981, STOC '81.

[2]  John Darzentas,et al.  Problem Complexity and Method Efficiency in Optimization , 1983 .

[3]  Ravindra K. Ahuja,et al.  Applications of network optimization , 1992 .

[4]  Dimitri P. Bertsekas,et al.  Nonlinear Programming , 1997 .

[5]  David R. Karger,et al.  Approximating s – t Minimum Cuts in ~ O(n 2 ) Time , 2007 .

[6]  Andrew V. Goldberg,et al.  Beyond the flow decomposition barrier , 1997, Proceedings 38th Annual Symposium on Foundations of Computer Science.

[7]  Yuval Rabani,et al.  An O(log k) Approximate Min-Cut Max-Flow Theorem and Approximation Algorithm , 1998, SIAM J. Comput..

[8]  Shang-Hua Teng,et al.  Nearly-linear time algorithms for graph partitioning, graph sparsification, and solving linear systems , 2003, STOC '04.

[9]  Yurii Nesterov,et al.  Introductory Lectures on Convex Optimization - A Basic Course , 2014, Applied Optimization.

[10]  Yurii Nesterov,et al.  Smooth minimization of non-smooth functions , 2005, Math. Program..

[11]  Yurii Nesterov,et al.  Rounding of convex sets and efficient gradient methods for linear programming problems , 2004, Optim. Methods Softw..

[12]  Harald Räcke,et al.  Optimal hierarchical decompositions for congestion minimization in networks , 2008, STOC.

[13]  Nikhil Srivastava,et al.  Graph sparsification by effective resistances , 2008, SIAM J. Comput..

[14]  Petar Maymounkov,et al.  Electric Routing and Concurrent Flow Cutting , 2009, ISAAC.

[15]  G. Lawler,et al.  Mixing times and e p bounds for oblivious routing , 2009 .

[16]  Jonah Sherman,et al.  Breaking the Multicommodity Flow Barrier for O(vlog n)-Approximations to Sparsest Cut , 2009, 2009 50th Annual IEEE Symposium on Foundations of Computer Science.

[17]  Gary L. Miller,et al.  Approaching Optimality for Solving SDD Linear Systems , 2010, 2010 IEEE 51st Annual Symposium on Foundations of Computer Science.

[18]  Aleksander Madry,et al.  Fast Approximation Algorithms for Cut-Based Problems in Undirected Graphs , 2010, 2010 IEEE 51st Annual Symposium on Foundations of Computer Science.

[19]  Frank Thomson Leighton,et al.  Extensions and limits to vertex sparsification , 2010, STOC '10.

[20]  Gary L. Miller,et al.  Approaching optimality for solving SDD systems , 2010, ArXiv.

[21]  Ravindra K. Ahuja,et al.  Network Flows , 2011 .

[22]  Gary L. Miller,et al.  A Nearly-m log n Time Solver for SDD Linear Systems , 2011, 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science.

[23]  Shang-Hua Teng,et al.  Spectral Sparsification of Graphs , 2008, SIAM J. Comput..

[24]  Shang-Hua Teng,et al.  Electrical flows, laplacian systems, and faster approximation of maximum flow in undirected graphs , 2010, STOC '11.

[25]  Yurii Nesterov,et al.  Efficiency of Coordinate Descent Methods on Huge-Scale Optimization Problems , 2012, SIAM J. Optim..

[26]  Gary L. Miller,et al.  Faster approximate multicommodity flow using quadratically coupled flows , 2012, STOC '12.

[27]  Sanjeev Arora,et al.  The Multiplicative Weights Update Method: a Meta-Algorithm and Applications , 2012, Theory Comput..

[28]  Zeyuan Allen Zhu,et al.  A simple, combinatorial algorithm for solving SDD systems in nearly-linear time , 2013, STOC '13.

[29]  Yin Tat Lee,et al.  Efficient Accelerated Coordinate Descent Methods and Faster Algorithms for Solving Linear Systems , 2013, 2013 IEEE 54th Annual Symposium on Foundations of Computer Science.

[30]  Satish Rao,et al.  A new approach to computing maximum flows using electrical flows , 2013, STOC '13.

[31]  Jonah Sherman,et al.  Nearly Maximum Flows in Nearly Linear Time , 2013, 2013 IEEE 54th Annual Symposium on Foundations of Computer Science.

[32]  Shang-Hua Teng,et al.  Nearly-Linear Time Algorithms for Preconditioning and Solving Symmetric, Diagonally Dominant Linear Systems , 2006, SIAM J. Matrix Anal. Appl..

[33]  Peter Kulchyski and , 2015 .

[34]  K. Schittkowski,et al.  NONLINEAR PROGRAMMING , 2022 .