17 research outputs found

    Faster generation of random spanning trees

    Get PDF
    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 (1+δ)(1+\delta) 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 O(min{mn,n2.376})O(\min \{mn, n^{2.376}\}), 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

    Sampling Random Spanning Trees Faster than Matrix Multiplication

    Full text link
    We present an algorithm that, with high probability, generates a random spanning tree from an edge-weighted undirected graph in O~(n4/3m1/2+n2)\tilde{O}(n^{4/3}m^{1/2}+n^{2}) time (The O~()\tilde{O}(\cdot) notation hides polylog(n)\operatorname{polylog}(n) 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, O(nω)O(n^\omega). For the special case of unweighted graphs, this improves upon the best previously known running time of O~(min{nω,mn,m4/3})\tilde{O}(\min\{n^{\omega},m\sqrt{n},m^{4/3}\}) for mn5/3m \gg n^{5/3} (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 ϵ\epsilon-approximate effective resistances for a set SS of vertex pairs via approximate Schur complements in O~(m+(n+S)ϵ2)\tilde{O}(m+(n + |S|)\epsilon^{-2}) time, without using the Johnson-Lindenstrauss lemma which requires O~(min{(m+S)ϵ2,m+nϵ4+Sϵ2})\tilde{O}( \min\{(m + |S|)\epsilon^{-2}, m+n\epsilon^{-4} +|S|\epsilon^{-2}\}) 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

    Full text link
    We present a new algorithm for generating a uniformly random spanning tree in an undirected graph. Our algorithm samples such a tree in expected O~(m4/3)\tilde{O}(m^{4/3}) time. This improves over the best previously known bound of min(O~(mn),O(nω))\min(\tilde{O}(m\sqrt{n}),O(n^{\omega})) -- 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

    uShuffle: A useful tool for shuffling biological sequences while preserving the k-let counts

    Get PDF
    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

    An O(log n/log log n)-approximation algorithm for the asymmetric traveling salesman problem

    Get PDF
    URL to paper on conference siteWe consider the Asymmetric Traveling Salesman problem for costs satisfying the triangle inequality. We derive a randomized algorithm which delivers a solution within a factor O(log n/ log log n) of the optimum with high probability.National Science Foundation (U.S.) (Fulbright Science and Technology Award, contract CCF- 0829878)National Science Foundation (U.S.) (contract CCF- 0829878)United States. Office of Naval Research (ONR grant N00014-05-1-0148

    Faster generation of random spanning trees

    Get PDF
    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
    corecore