An Empirical Study of Cycle Toggling Based Laplacian Solvers

We study the performance of linear solvers for graph Laplacians based on the combinatorial cycle adjustment methodology proposed by [Kelner-Orecchia-Sidford-Zhu STOC-13]. The approach finds a dual flow solution to this linear system through a sequence of flow adjustments along cycles. We study both data structure oriented and recursive methods for handling these adjustments. The primary difficulty faced by this approach, updating and querying long cycles, motivated us to study an important special case: instances where all cycles are formed by fundamental cycles on a length $n$ path. Our methods demonstrate significant speedups over previous implementations, and are competitive with standard numerical routines.

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

[2]  Nikhil Srivastava,et al.  Graph Sparsification by Effective Resistances , 2011, SIAM J. Comput..

[3]  Peter G. Doyle,et al.  Random Walks and Electric Networks: REFERENCES , 1987 .

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

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

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

[7]  Richard Peng,et al.  An efficient parallel solver for SDD linear systems , 2013, STOC.

[8]  Anup Rao,et al.  Fast, Provable Algorithms for Isotonic Regression in all L_p-norms , 2015, NIPS.

[9]  Gary L. Miller,et al.  List ranking and parallel tree contraction , 1993 .

[10]  Michael A. Bender,et al.  Cache-oblivious B-trees , 2000, Proceedings 41st Annual Symposium on Foundations of Computer Science.

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

[12]  J. Mixter Fast , 2012 .

[13]  O. Axelsson Iterative solution methods , 1995 .

[14]  John R. Gilbert,et al.  An Empirical Comparison of Graph Laplacian Solvers , 2016, ALENEX.

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

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

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

[18]  Gary L. Miller,et al.  Runtime guarantees for regression problems , 2011, ITCS '13.

[19]  Jorge J. Moré,et al.  Digital Object Identifier (DOI) 10.1007/s101070100263 , 2001 .

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

[21]  Yousef Saad,et al.  Iterative methods for sparse linear systems , 2003 .

[22]  Michael Wegner,et al.  Is Nearly-linear the Same in Theory and Practice? A Case Study with a Combinatorial Laplacian Solver , 2015, SEA.

[23]  Gary L. Miller,et al.  Graph Partitioning by Spectral Rounding: Applications in Image Segmentation and Clustering , 2006, 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06).

[24]  Amir Nayyeri,et al.  Solving 1-Laplacians in Nearly Linear Time: Collapsing and Expanding a Topological Ball , 2014, SODA.

[25]  J. Gilbert,et al.  Evaluating the Dual Randomized Kaczmarz Laplacian Linear Solver , 2016 .

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

[27]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[28]  Bruce Hendrickson,et al.  Solving Elliptic Finite Element Systems in Near-Linear Time with Support Preconditioners , 2004, SIAM J. Numer. Anal..

[29]  William L. Briggs,et al.  A multigrid tutorial , 1987 .

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

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

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