Bipartite Matching in Nearly-linear Time on Moderately Dense Graphs

We present an $\tilde{O}(m+n^{1.5})$-time randomized algorithm for maximum cardinality bipartite matching and related problems (e.g. transshipment, negative-weight shortest paths, and optimal transport) on m-edge, n-node graphs. For maximum cardinality bipartite matching on moderately dense graphs, i.e. $m=\Omega(n^{1.5})$, our algorithm runs in time nearly linear in the input size and constitutes the first improvement over the classic $O(m\sqrt{n})$-time [Dinic 1970; Hopcroft-Karp 1971; Karzanov 1973] and $\widetilde{O}(n^{\omega})$-time algorithms [Ibarra-Moran 1981] (where currently $\omega\approx 2.373$). On sparser graphs, i.e. when $m=n^{9/8+\delta}$ for any constant $\delta > 0$, our result improves upon the recent advances of [Madry 2013] and [Liu-Sidford 2020b, 2020a] which achieve an $\widetilde{O}(m^{4/3+o(1)})$ runtime. We obtain these results by combining and advancing recent lines of research in interior point methods (IPMs) and dynamic graph algorithms. First, we simplify and improve the IPM of [v.d.Brand-Lee-Sidford-Song 2020], providing a general primal-dual IPM framework and new sampling-based techniques for handling infeasibility induced by approximate linear system solvers. Second, we provide a simple sublinear-time algorithm for detecting and sampling high-energy edges in electric flows on expanders and show that when combined with recent advances in dynamic expander decompositions, this yields efficient data structures for maintaining the iterates of both [v.d.Brand et al.] and our new IPMs. Combining this general machinery yields a simpler $\widetilde{O}(n\sqrt{m})$ time algorithm for matching based on the logarithmic barrier function, and our state-of-the-art $\widetilde{O}(m+n^{1.5})$ time algorithm for matching based on the [Lee-Sidford 2014] barrier (as regularized in [v.d.Brand et al.]).

[1]  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.

[2]  Robert E. Tarjan,et al.  Faster Scaling Algorithms for Network Problems , 1989, SIAM J. Comput..

[3]  Robert E. Tarjan,et al.  Faster scaling algorithms for general graph matching problems , 1991, JACM.

[4]  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.

[5]  Erin W. Chambers,et al.  Multiple-Source Shortest Paths in Embedded Graphs , 2012, SIAM J. Comput..

[6]  Yin Tat Lee,et al.  Solving Empirical Risk Minimization in the Current Matrix Multiplication Time , 2019, COLT.

[7]  Pravin M. Vaidya,et al.  Speeding-up linear programming using fast matrix multiplication , 1989, 30th Annual Symposium on Foundations of Computer Science.

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

[9]  Richard Peng,et al.  Lp Row Sampling by Lewis Weights , 2015, STOC.

[10]  Kasper Green Larsen,et al.  Optimality of the Johnson-Lindenstrauss Lemma , 2016, 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS).

[11]  Pravin M. Vaidya,et al.  A Technique for Bounding the Number of Iterations in Path Following Algorithms , 1993 .

[12]  Piotr Indyk,et al.  Nearly optimal sparse fourier transform , 2012, STOC '12.

[13]  Richard Peng,et al.  ℓp Row Sampling by Lewis Weights , 2014, ArXiv.

[14]  H. Kuhn The Hungarian method for the assignment problem , 1955 .

[15]  M. Iri A NEW METHOD OF SOLVING TRANSPORTATION· NETWORK PROBLEMS , 1960 .

[16]  Ely Porat,et al.  Approximate sparse recovery: optimizing time and measurements , 2009, STOC '10.

[17]  Jason Li Faster parallel algorithm for approximate shortest path , 2020, STOC.

[18]  E. A. Dinic Algorithm for solution of a problem of maximal flow in a network with power estimation , 1970 .

[19]  E. Lawler Optimal Cycles in Graphs and the Minimal Cost-To-Time Ratio Problem , 1972 .

[20]  Daniel A. Spielman,et al.  Faster approximate lossy generalized flow via interior point algorithms , 2008, STOC.

[21]  Jakub W. Pachocki,et al.  Solving SDD linear systems in nearly mlog1/2n time , 2014, STOC.

[22]  Jason Altschuler,et al.  Near-linear time approximation algorithms for optimal transport via Sinkhorn iteration , 2017, NIPS.

[23]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[24]  Di Wang,et al.  Expander Decomposition and Pruning: Faster, Stronger, and Simpler , 2018, SODA.

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

[26]  Sushant Sachdeva,et al.  Approximate Gaussian Elimination for Laplacians - Fast, Sparse, and Simple , 2016, 2016 IEEE 57th Annual Symposium on Foundations of Computer Science (FOCS).

[27]  Jonah Sherman,et al.  Generalized Preconditioning and Undirected Minimum-Cost Flow , 2017, SODA.

[28]  Richard M. Karp,et al.  Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems , 1972, Combinatorial Optimization.

[29]  Richard Peng,et al.  Graph Sparsification, Spectral Sketches, and Faster Resistance Computation, via Short Cycle Decompositions , 2018, 2018 IEEE 59th Annual Symposium on Foundations of Computer Science (FOCS).

[30]  Vasileios Nakos,et al.  Stronger L2/L2 compressed sensing; without iterating , 2019, STOC.

[31]  Virginia Vassilevska Williams,et al.  Multiplying matrices faster than coppersmith-winograd , 2012, STOC '12.

[32]  François Le Gall,et al.  Powers of tensors and fast matrix multiplication , 2014, ISSAC.

[33]  Rasmus Pagh,et al.  Compressed matrix multiplication , 2011, ITCS '12.

[34]  J. Munkres ALGORITHMS FOR THE ASSIGNMENT AND TRANSIORTATION tROBLEMS* , 1957 .

[35]  Michael I. Jordan,et al.  On Efficient Optimal Transport: An Analysis of Greedy and Accelerated Mirror Descent Algorithms , 2019, ICML.

[36]  Daniel A. Spielman,et al.  Randomness efficient identity testing of multivariate polynomials , 2001, STOC '01.

[37]  Mikkel Thorup,et al.  Heavy Hitters via Cluster-Preserving Clustering , 2016, 2016 IEEE 57th Annual Symposium on Foundations of Computer Science (FOCS).

[38]  Raphael Yuster,et al.  Answering distance queries in directed graphs using fast matrix multiplication , 2005, 46th Annual IEEE Symposium on Foundations of Computer Science (FOCS'05).

[39]  W. B. Johnson,et al.  Extensions of Lipschitz mappings into Hilbert space , 1984 .

[40]  Alexander Schrijver,et al.  Combinatorial optimization. Polyhedra and efficiency. , 2003 .

[41]  Alexandr Andoni,et al.  Parallel approximate undirected shortest paths via low hop emulators , 2019, STOC.

[42]  Kent Quanrud,et al.  Approximating optimal transport with linear programs , 2018, SOSA.

[43]  Thatchaphol Saranurak,et al.  The Expander Hierarchy and its Applications to Dynamic Graph Algorithms , 2020, SODA.

[44]  Thatchaphol Saranurak,et al.  Deterministic Decremental Reachability, SCC, and Shortest Paths via Directed Expanders and Congestion Balancing , 2020, 2020 IEEE 61st Annual Symposium on Foundations of Computer Science (FOCS).

[45]  Richard Peng,et al.  Iterative Refinement for ℓp-norm Regression , 2019, SODA.

[46]  Yin Tat Lee,et al.  Path Finding Methods for Linear Programming: Solving Linear Programs in Õ(vrank) Iterations and Faster Algorithms for Maximum Flow , 2014, 2014 IEEE 55th Annual Symposium on Foundations of Computer Science.

[47]  James Renegar,et al.  A polynomial-time algorithm, based on Newton's method, for linear programming , 1988, Math. Program..

[48]  Omri Weinstein,et al.  Faster Dynamic Matrix Inverse for Faster LPs , 2020, ArXiv.

[49]  Andrew V. Goldberg,et al.  Scaling algorithms for the shortest paths problem , 1995, SODA '93.

[50]  Aleksander Madry,et al.  Computing Maximum Flow with Augmenting Electrical Flows , 2016, 2016 IEEE 57th Annual Symposium on Foundations of Computer Science (FOCS).

[51]  M. Chial,et al.  in simple , 2003 .

[52]  Aaron Sidford,et al.  Towards Optimal Running Times for Optimal Transport , 2018, ArXiv.

[53]  Richard Peng,et al.  Sparsified Cholesky and multigrid solvers for connection laplacians , 2015, STOC.

[54]  Aleksander Madry,et al.  Navigating Central Path with Electrical Flows: From Flows to Matchings, and Back , 2013, 2013 IEEE 54th Annual Symposium on Foundations of Computer Science.

[55]  Aaron Sidford,et al.  Faster Divergence Maximization for Faster Maximum Flow , 2020, ArXiv.

[56]  Omid Madani,et al.  Polynomial Value Iteration Algorithms for Detrerminstic MDPs , 2002, UAI.

[57]  Piotr Sankowski,et al.  Dynamic transitive closure via dynamic matrix inverse: extended abstract , 2004, 45th Annual IEEE Symposium on Foundations of Computer Science.

[58]  Richard Peng,et al.  A Deterministic Algorithm for Balanced Cut with Applications to Dynamic Connectivity, Flows, and Beyond , 2020, 2020 IEEE 61st Annual Symposium on Foundations of Computer Science (FOCS).

[59]  Adrian Vladu,et al.  Circulation Control for Faster Minimum Cost Flow in Unit-Capacity Graphs , 2020, 2020 IEEE 61st Annual Symposium on Foundations of Computer Science (FOCS).

[60]  A. Madry,et al.  Negative-Weight Shortest Paths and Unit Capacity Minimum Cost Flow in Õ(m 10/7 log W) Time. , 2016 .

[61]  Thatchaphol Saranurak,et al.  Dynamic Matrix Inverse: Improved Algorithms and Matching Conditional Lower Bounds , 2019, 2019 IEEE 60th Annual Symposium on Foundations of Computer Science (FOCS).

[62]  Seth Pettie,et al.  Linear-Time Approximation for Maximum Weight Matching , 2014, JACM.

[63]  Narendra Karmarkar,et al.  A new polynomial-time algorithm for linear programming , 1984, Comb..

[64]  Ming-Yang Kao,et al.  A Decomposition Theorem for Maximum Weight Bipartite Matchings with Applications to Evolutionary Trees , 1999, ESA.

[65]  Yin Tat Lee,et al.  Solving tall dense linear programs in nearly linear time , 2020, STOC.

[66]  Christian Wulff-Nilsen,et al.  Dynamic Minimum Spanning Forest with Subpolynomial Worst-Case Update Time , 2017, 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS).

[67]  Pravin M. Vaidya,et al.  An algorithm for linear programming which requires O(((m+n)n2+(m+n)1.5n)L) arithmetic operations , 1987, Math. Program..

[68]  Richard Peng,et al.  Uniform Sampling for Matrix Approximation , 2014, ITCS.

[69]  Michael J. Todd,et al.  Self-Scaled Barriers and Interior-Point Methods for Convex Programming , 1997, Math. Oper. Res..

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

[71]  Stefano Leonardi,et al.  Algorithms - ESA 2005, 13th Annual European Symposium, Palma de Mallorca, Spain, October 3-6, 2005, Proceedings , 2005, ESA.

[72]  Yin Tat Lee,et al.  Solving Linear Programs with Õ ( √ rank ) Linear System Solves , 2019 .

[73]  Vasileios Nakos,et al.  (Nearly) Sample-Optimal Sparse Fourier Transform in Any Dimension; RIPless and Filterless , 2019, 2019 IEEE 60th Annual Symposium on Foundations of Computer Science (FOCS).

[74]  Jan van den Brand A Deterministic Linear Program Solver in Current Matrix Multiplication Time , 2020, SODA.

[75]  Harold N. Gabow,et al.  Scaling algorithms for network problems , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[76]  Mikhail Kapralov,et al.  Sample Efficient Estimation and Recovery in Sparse FFT via Isolation on Average , 2017, 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS).

[77]  Thatchaphol Saranurak,et al.  Dynamic spanning forest with worst-case update time: adaptive, Las Vegas, and O(n1/2 - ε)-time , 2017, STOC.

[78]  Kurt M. Anstreicher,et al.  Volumetric path following algorithms for linear programming , 1997, Math. Program..

[79]  Aaron Sidford,et al.  Faster energy maximization for faster maximum flow , 2019, STOC.

[80]  Oscar H. Ibarra,et al.  Deterministic and Probabilistic Algorithms for Maximum Bipartite Matching Via Fast Matrix Multiplication , 1981, Information Processing Letters.

[81]  Piotr Sankowski,et al.  Maximum weight bipartite matching in matrix multiplication time , 2009, Theor. Comput. Sci..

[82]  Deeksha Adil,et al.  Faster p-norm minimizing flows, via smoothed q-norm problems , 2020, SODA.

[83]  Yin Tat Lee,et al.  Solving linear programs in the current matrix multiplication time , 2018, STOC.

[84]  David P. Woodruff,et al.  Fast moment estimation in data streams in optimal space , 2010, STOC '11.

[85]  Richard Bellman,et al.  ON A ROUTING PROBLEM , 1958 .

[86]  Richard Peng,et al.  Flows in almost linear time via adaptive preconditioning , 2019, STOC.

[87]  Thatchaphol Saranurak,et al.  Fully-Dynamic Graph Sparsifiers Against an Adaptive Adversary , 2020, ICALP.

[88]  Yin Tat Lee,et al.  Efficient Inverse Maintenance and Faster Algorithms for Linear Programming , 2015, 2015 IEEE 56th Annual Symposium on Foundations of Computer Science.

[89]  Christian Wulff-Nilsen,et al.  Fully-dynamic minimum spanning forest with improved worst-case update time , 2016, STOC.