Almost-linear-time algorithms for Markov chains and new spectral primitives for directed graphs

In this paper, we begin to address the longstanding algorithmic gap between general and reversible Markov chains. We develop directed analogues of several spectral graph-the oretic tools that had previously been available only in the undirected setting, and for which it was not clear that directed v...

Full description

Bibliographic Details
Main Authors: Peng, Richard, Rao, Anup B., Sidford, Aaron, Cohen, Michael B., Kelner, Jonathan Adam, Peebles, John Lee Thompson, Vladu, Adrian Valentin
Other Authors: Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Format: Article
Published: Association for Computing Machinery (ACM) 2018
Online Access:http://hdl.handle.net/1721.1/115991
https://orcid.org/0000-0002-7388-6936
https://orcid.org/0000-0002-4257-4198
https://orcid.org/0000-0002-6514-3761
https://orcid.org/0000-0003-0722-304X
Description
Summary:In this paper, we begin to address the longstanding algorithmic gap between general and reversible Markov chains. We develop directed analogues of several spectral graph-the oretic tools that had previously been available only in the undirected setting, and for which it was not clear that directed versions even existed. In particular, we provide a notion of approximation for directed graphs, prove sparsifiers under this notion always exist, and show how to construct them in almost linear time. Using this notion of approximation, we design the first almost-linear-time directed Laplacian system solver, and, by leveraging the recent framework of [Cohen-Kelner-Peebles-Peng-Sidford-Vladu, FOCS'16], we also obtain almost-linear-time algorithms for computing the stationary distribution of a Markov chain, computing expected commute times in a directed graph, and more. For each problem, our algorithms improve the previous best running times of O((nm [superscript 3/4] + n[superscript 2/3]m) log[superscript O(1)] (nkϵ[superscript -1])) to O((m + n2[superscript O (√log n loglogn))] log[superscript O(1)] (nkϵ [superscript -1])) where n is the number of vertices in the graph, m is the number of edges, κ is a natural condition number associated with the problem, and ϵ is the desired accuracy. We hope these results open the door for further studies into directed spectral graph theory, and that they will serve as a stepping stone for designing a new generation of fast algorithms for directed graphs.