10 research outputs found
Faster generation of random spanning trees
In this paper, we set forth a new algorithm for generating approximately
uniformly random spanning trees in undirected graphs. We show how to sample
from a distribution that is within a multiplicative of uniform in
expected time \TO(m\sqrt{n}\log 1/\delta). This improves the sparse graph
case of the best previously known worst-case bound of , which has stood for twenty years.
To achieve this goal, we exploit the connection between random walks on
graphs and electrical networks, and we use this to introduce a new approach to
the problem that integrates discrete random walk-based techniques with
continuous linear algebraic methods. We believe that our use of electrical
networks and sparse linear system solvers in conjunction with random walks and
combinatorial partitioning techniques is a useful paradigm that will find
further applications in algorithmic graph theory
uShuffle: A useful tool for shuffling biological sequences while preserving the k-let counts
Abstract We present a bioinformatics tool (named uShuffle) for generating uniform random permutations of biological sequences (such as DNAs, RNAs, and proteins) that preserve the exact k-let counts. The uShuffle program is based on the Euler algorithm and uses Wilson’s algorithm in the crucial step of arborescence generation. Our implementation of these algorithms is carefully engineered; it is shown by our experiments to be both extremely efficient and very scalable. By allowing arbitrary alphabet size and let size, the uShuffle program is also far superior to the existing tools in terms of versatility. For the convenience of the users, we provide the uShuffle program in a variety of programming languages: C, Java, C#, Perl, and Python. The websit
Sampling Random Spanning Trees Faster than Matrix Multiplication
We present an algorithm that, with high probability, generates a random
spanning tree from an edge-weighted undirected graph in
time (The notation hides
factors). The tree is sampled from a distribution
where the probability of each tree is proportional to the product of its edge
weights. This improves upon the previous best algorithm due to Colbourn et al.
that runs in matrix multiplication time, . For the special case of
unweighted graphs, this improves upon the best previously known running time of
for (Colbourn
et al. '96, Kelner-Madry '09, Madry et al. '15).
The effective resistance metric is essential to our algorithm, as in the work
of Madry et al., but we eschew determinant-based and random walk-based
techniques used by previous algorithms. Instead, our algorithm is based on
Gaussian elimination, and the fact that effective resistance is preserved in
the graph resulting from eliminating a subset of vertices (called a Schur
complement). As part of our algorithm, we show how to compute
-approximate effective resistances for a set of vertex pairs via
approximate Schur complements in time,
without using the Johnson-Lindenstrauss lemma which requires time. We
combine this approximation procedure with an error correction procedure for
handing edges where our estimate isn't sufficiently accurate
Fast Generation of Random Spanning Trees and the Effective Resistance Metric
We present a new algorithm for generating a uniformly random spanning tree in
an undirected graph. Our algorithm samples such a tree in expected
time. This improves over the best previously known bound
of -- that follows from the work of
Kelner and M\k{a}dry [FOCS'09] and of Colbourn et al. [J. Algorithms'96] --
whenever the input graph is sufficiently sparse.
At a high level, our result stems from carefully exploiting the interplay of
random spanning trees, random walks, and the notion of effective resistance, as
well as from devising a way to algorithmically relate these concepts to the
combinatorial structure of the graph. This involves, in particular,
establishing a new connection between the effective resistance metric and the
cut structure of the underlying graph
Faster generation of random spanning trees
Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2009.Cataloged from PDF version of thesis.Includes bibliographical references (p. 39-40).In this thesis, we set forth a new algorithm for generating approximately uniformly random spanning trees in undirected graphs. We show how to sample from a distribution that is within a multiplicative (1+6) of uniform in expected time ... . This improves the sparse graph case of the best previously known worst-case bound of O(min{mn, n2. 376}), which has stood for twenty years. To achieve this goal, we exploit the connection between random walks on graphs and electrical networks to introduce a new approach to the problem that integrates discrete random walk-based techniques with continuous linear algebraic methods. We believe that our use of electrical networks and sparse linear system solvers in conjunction with random walks and combinatorial partitioning techniques is a useful paradigm that will find further applications in algorithmic graph theory. This work was done in collaboration with Jonathan Kelner.by Aleksander Ma̧dry.S.M
Exact sampling with Markov chains
Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Mathematics, 1996.Includes bibliographical references (p. 79-83).by David Bruce Wilson.Ph.D
An almost-linear time algorithm for uniform random spanning tree generation
We give an -time algorithm for generating a uniformly
random spanning tree in an undirected, weighted graph with max-to-min weight
ratio . We also give an -time algorithm for
generating a random spanning tree with total variation distance from
the true uniform distribution. Our second algorithm's runtime does not depend
on the edge weights. Our -time algorithm is the first
almost-linear time algorithm for the problem --- even on unweighted graphs ---
and is the first subquadratic time algorithm for sparse weighted graphs.
Our algorithms improve on the random walk-based approach given in
Kelner-M\k{a}dry and M\k{a}dry-Straszak-Tarnawski. We introduce a new way of
using Laplacian solvers to shortcut a random walk. In order to fully exploit
this shortcutting technique, we prove a number of new facts about electrical
flows in graphs. These facts seek to better understand sets of vertices that
are well-separated in the effective resistance metric in connection with Schur
complements, concentration phenomena for electrical flows after conditioning on
partial samples of a random spanning tree, and more
New techniques for graph algorithms
Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2011.Cataloged from PDF version of thesis.Includes bibliographical references (p. 181-192).The growing need to deal efficiently with massive computing tasks prompts us to consider the following question: How well can we solve fundamental optimization problems if our algorithms have to run really quickly? The motivation for the research presented in this thesis stems from addressing the above question in the context of algorithmic graph theory. To pursue this direction, we develop a toolkit that combines a diverse set of modern algorithmic techniques, including sparsification, low-stretch spanning trees, the multiplicative-weights-update method, dynamic graph algorithms, fast Laplacian system solvers, and tools of spectral graph theory. Using this toolkit, we obtain improved algorithms for several basic graph problems including: -- The Maximum s-t Flow and Minimum s-t Cut Problems. We develop a new approach to computing (1 - [epsilon])-approximately maximum s-t flow and (1 + [epsilon])-approximately minimum s-t cut in undirected graphs that gives the fastest known algorithms for these tasks. These algorithms are the first ones to improve the long-standing bound of O(n3/2') running time on sparse graphs; -- Multicommodity Flow Problems. We set forth a new method of speeding up the existing approximation algorithms for multicommodity flow problems, and use it to obtain the fastest-known (1 - [epsilon])-approximation algorithms for these problems. These results improve upon the best previously known bounds by a factor of roughly [omega](m/n), and make the resulting running times essentially match the [omega](mn) "flow-decomposition barrier" that is a natural obstacle to all the existing approaches; -- " Undirected (Multi-)Cut-Based Minimization Problems. We develop a general framework for designing fast approximation algorithms for (multi-)cutbased minimization problems in undirected graphs. Applying this framework leads to the first algorithms for several fundamental graph partitioning primitives, such as the (generalized) sparsest cut problem and the balanced separator problem, that run in close to linear time while still providing polylogarithmic approximation guarantees; -- The Asymmetric Traveling Salesman Problem. We design an O( )- approximation algorithm for the classical problem of combinatorial optimization: the asymmetric traveling salesman problem. This is the first asymptotic improvement over the long-standing approximation barrier of e(log n) for this problem; -- Random Spanning Tree Generation. We improve the bound on the time needed to generate an uniform random spanning tree of an undirected graph.by Aleksander Mądry.Ph.D