An almost-linear time algorithm for uniform random spanning tree generation

We give an m1+o(1)βo(1)-time algorithm for generating uniformly random spanning trees in weighted graphs with max-to-min weight ratio β. In the process, we illustrate how fundamental tradeoffs in graph partitioning can be overcome by eliminating vertices from a graph using Schur complements of the associated Laplacian matrix. Our starting point is the Aldous-Broder algorithm, which samples a random spanning tree using a random walk. As in prior work, we use fast Laplacian linear system solvers to shortcut the random walk from a vertex v to the boundary of a set of vertices assigned to v called a “shortcutter.” We depart from prior work by introducing a new way of employing Laplacian solvers to shortcut the walk. To bound the amount of shortcutting work, we show that most random walk steps occur far away from an unvisited vertex. We apply this observation by charging uses of a shortcutter S to random walk steps in the Schur complement obtained by eliminating all vertices in S that are not assigned to it.

[1]  Gary L. Miller,et al.  A ug 2 01 0 Approaching optimality for solving SDD linear systems ∗ , 2011 .

[2]  David Bruce Wilson,et al.  Generating random spanning trees more quickly than the cover time , 1996, STOC '96.

[3]  Mohit Singh,et al.  A Randomized Rounding Approach to the Traveling Salesman Problem , 2011, 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science.

[4]  Charles J. Colbourn,et al.  Unranking and Ranking Spanning Trees of a Graph , 1989, J. Algorithms.

[5]  Andrei Z. Broder,et al.  Generating random spanning trees , 1989, 30th Annual Symposium on Foundations of Computer Science.

[6]  Richard Peng,et al.  Determinant-Preserving Sparsification of SDDM Matrices with Applications to Counting and Sampling Spanning Trees , 2017, 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS).

[7]  John Peebles,et al.  Sampling random spanning trees faster than matrix multiplication , 2016, STOC.

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

[9]  Noga Alon,et al.  The space complexity of approximating the frequency moments , 1996, STOC '96.

[10]  Satish Rao,et al.  Localization of Electrical Flows , 2017, SODA.

[11]  Charles J. Colbourn,et al.  Two Algorithms for Unranking Arborescences , 1996, J. Algorithms.

[12]  Matthew Baker,et al.  Chip-firing games, potential theory on graphs, and spanning trees , 2011, J. Comb. Theory, Ser. A.

[13]  Lenore Cowen,et al.  Near-Linear Time Construction of Sparse Neighborhood Covers , 1999, SIAM J. Comput..

[14]  J. Sherman,et al.  Adjustment of an Inverse Matrix Corresponding to a Change in One Element of a Given Matrix , 1950 .

[15]  Aleksander Madry,et al.  Faster Generation of Random Spanning Trees , 2009, 2009 50th Annual IEEE Symposium on Foundations of Computer Science.

[16]  Frank Thomson Leighton,et al.  Multicommodity max-flow min-cut theorems and their use in designing approximation algorithms , 1999, JACM.

[17]  G. Kirchhoff Ueber die Auflösung der Gleichungen, auf welche man bei der Untersuchung der linearen Vertheilung galvanischer Ströme geführt wird , 1847 .

[18]  Robin Wilson,et al.  Modern Graph Theory , 2013 .

[19]  H. Davenport,et al.  A Combinatorial Problem Connected with Differential Equations , 1965 .

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

[21]  David P. Dobkin,et al.  On sparse spanners of weighted graphs , 1993, Discret. Comput. Geom..

[22]  Piotr Indyk,et al.  Euclidean spanners in high dimensions , 2013, SODA.

[23]  Nicholas J. A. Harvey,et al.  Graph Sparsification by Edge-Connectivity and Random Spanning Trees , 2010, ArXiv.

[24]  Richard Peng,et al.  Sparsified Cholesky Solvers for SDD linear systems , 2015, ArXiv.

[25]  Amin Saberi,et al.  An O(log n/ log log n)-approximation algorithm for the asymmetric traveling salesman problem , 2010, SODA '10.

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

[27]  Baruch Awerbuch,et al.  Sparse partitions , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[28]  Alain Guénoche Random Spanning Tree , 1983, J. Algorithms.

[29]  Richard Peng,et al.  Faster Spectral Sparsification and Numerical Algorithms for SDD Matrices , 2012, ACM Trans. Algorithms.

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

[31]  Joel A. Tropp,et al.  User-Friendly Tail Bounds for Sums of Random Matrices , 2010, Found. Comput. Math..

[32]  Navin Goyal,et al.  Expanders via random spanning trees , 2008, SODA.

[33]  Fan Chung Graham,et al.  Concentration Inequalities and Martingale Inequalities: A Survey , 2006, Internet Math..

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

[35]  Thomas P. Hayes,et al.  Minimizing average latency in oblivious routing , 2008, SODA '08.

[36]  P. Matthews Covering Problems for Brownian Motion on Spheres , 1988 .

[37]  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).

[38]  Vidyadhar G. Kulkarni,et al.  Generating Random Combinatorial Objects , 1990, J. Algorithms.

[39]  Y. Peres,et al.  Probability on Trees and Networks , 2017 .

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

[41]  David Aldous,et al.  The Random Walk Construction of Uniform Spanning Trees and Uniform Labelled Trees , 1990, SIAM J. Discret. Math..

[42]  Keyulu Xu,et al.  Generating Random Spanning Trees via Fast Matrix Multiplication , 2016, LATIN.

[43]  Nima Anari,et al.  Monte Carlo Markov Chain Algorithms for Sampling Strongly Rayleigh Distributions and Determinantal Point Processes , 2016, COLT.

[44]  Baruch Awerbuch,et al.  Sparse Partitions (Extended Abstract , 1990, FOCS 1990.

[45]  Aleksander Madry,et al.  Fast Generation of Random Spanning Trees and the Effective Resistance Metric , 2015, SODA.

[46]  Piotr Indyk,et al.  Stable distributions, pseudorandom generators, embeddings, and data stream computation , 2006, JACM.

[47]  Alexandr Andoni,et al.  Near-Optimal Hashing Algorithms for Approximate Nearest Neighbor in High Dimensions , 2006, 2006 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS'06).