167 research outputs found

    Improved Algorithms for Decremental Single-Source Reachability on Directed Graphs

    Full text link
    Recently we presented the first algorithm for maintaining the set of nodes reachable from a source node in a directed graph that is modified by edge deletions with o(mn)o(mn) total update time, where mm is the number of edges and nn is the number of nodes in the graph [Henzinger et al. STOC 2014]. The algorithm is a combination of several different algorithms, each for a different mm vs. nn trade-off. For the case of m=Θ(n1.5)m = \Theta(n^{1.5}) the running time is O(n2.47)O(n^{2.47}), just barely below mn=Θ(n2.5)mn = \Theta(n^{2.5}). In this paper we simplify the previous algorithm using new algorithmic ideas and achieve an improved running time of O~(min(m7/6n2/3,m3/4n5/4+o(1),m2/3n4/3+o(1)+m3/7n12/7+o(1)))\tilde O(\min(m^{7/6} n^{2/3}, m^{3/4} n^{5/4 + o(1)}, m^{2/3} n^{4/3+o(1)} + m^{3/7} n^{12/7+o(1)})). This gives, e.g., O(n2.36)O(n^{2.36}) for the notorious case m=Θ(n1.5)m = \Theta(n^{1.5}). We obtain the same upper bounds for the problem of maintaining the strongly connected components of a directed graph undergoing edge deletions. Our algorithms are correct with high probabililty against an oblivious adversary.Comment: This paper was presented at the International Colloquium on Automata, Languages and Programming (ICALP) 2015. A full version combining the findings of this paper and its predecessor [Henzinger et al. STOC 2014] is available at arXiv:1504.0795

    Decremental Single-Source Reachability in Planar Digraphs

    Full text link
    In this paper we show a new algorithm for the decremental single-source reachability problem in directed planar graphs. It processes any sequence of edge deletions in O(nlog2nloglogn)O(n\log^2{n}\log\log{n}) total time and explicitly maintains the set of vertices reachable from a fixed source vertex. Hence, if all edges are eventually deleted, the amortized time of processing each edge deletion is only O(log2nloglogn)O(\log^2 n \log \log n), which improves upon a previously known O(n)O(\sqrt{n}) solution. We also show an algorithm for decremental maintenance of strongly connected components in directed planar graphs with the same total update time. These results constitute the first almost optimal (up to polylogarithmic factors) algorithms for both problems. To the best of our knowledge, these are the first dynamic algorithms with polylogarithmic update times on general directed planar graphs for non-trivial reachability-type problems, for which only polynomial bounds are known in general graphs

    Fully Dynamic Single-Source Reachability in Practice: An Experimental Study

    Full text link
    Given a directed graph and a source vertex, the fully dynamic single-source reachability problem is to maintain the set of vertices that are reachable from the given vertex, subject to edge deletions and insertions. It is one of the most fundamental problems on graphs and appears directly or indirectly in many and varied applications. While there has been theoretical work on this problem, showing both linear conditional lower bounds for the fully dynamic problem and insertions-only and deletions-only upper bounds beating these conditional lower bounds, there has been no experimental study that compares the performance of fully dynamic reachability algorithms in practice. Previous experimental studies in this area concentrated only on the more general all-pairs reachability or transitive closure problem and did not use real-world dynamic graphs. In this paper, we bridge this gap by empirically studying an extensive set of algorithms for the single-source reachability problem in the fully dynamic setting. In particular, we design several fully dynamic variants of well-known approaches to obtain and maintain reachability information with respect to a distinguished source. Moreover, we extend the existing insertions-only or deletions-only upper bounds into fully dynamic algorithms. Even though the worst-case time per operation of all the fully dynamic algorithms we evaluate is at least linear in the number of edges in the graph (as is to be expected given the conditional lower bounds) we show in our extensive experimental evaluation that their performance differs greatly, both on generated as well as on real-world instances

    Reliable Hubs for Partially-Dynamic All-Pairs Shortest Paths in Directed Graphs

    Get PDF
    We give new partially-dynamic algorithms for the all-pairs shortest paths problem in weighted directed graphs. Most importantly, we give a new deterministic incremental algorithm for the problem that handles updates in O~(mn^(4/3) log{W}/epsilon) total time (where the edge weights are from [1,W]) and explicitly maintains a (1+epsilon)-approximate distance matrix. For a fixed epsilon>0, this is the first deterministic partially dynamic algorithm for all-pairs shortest paths in directed graphs, whose update time is o(n^2) regardless of the number of edges. Furthermore, we also show how to improve the state-of-the-art partially dynamic randomized algorithms for all-pairs shortest paths [Baswana et al. STOC\u2702, Bernstein STOC\u2713] from Monte Carlo randomized to Las Vegas randomized without increasing the running time bounds (with respect to the O~(*) notation). Our results are obtained by giving new algorithms for the problem of dynamically maintaining hubs, that is a set of O~(n/d) vertices which hit a shortest path between each pair of vertices, provided it has hop-length Omega(d). We give new subquadratic deterministic and Las Vegas algorithms for maintenance of hubs under either edge insertions or deletions

    Decremental Single-Source Shortest Paths on Undirected Graphs in Near-Linear Total Update Time

    Full text link
    In the decremental single-source shortest paths (SSSP) problem we want to maintain the distances between a given source node ss and every other node in an nn-node mm-edge graph GG undergoing edge deletions. While its static counterpart can be solved in near-linear time, this decremental problem is much more challenging even in the undirected unweighted case. In this case, the classic O(mn)O(mn) total update time of Even and Shiloach [JACM 1981] has been the fastest known algorithm for three decades. At the cost of a (1+ϵ)(1+\epsilon)-approximation factor, the running time was recently improved to n2+o(1)n^{2+o(1)} by Bernstein and Roditty [SODA 2011]. In this paper, we bring the running time down to near-linear: We give a (1+ϵ)(1+\epsilon)-approximation algorithm with m1+o(1)m^{1+o(1)} expected total update time, thus obtaining near-linear time. Moreover, we obtain m1+o(1)logWm^{1+o(1)} \log W time for the weighted case, where the edge weights are integers from 11 to WW. The only prior work on weighted graphs in o(mn)o(m n) time is the mn0.9+o(1)m n^{0.9 + o(1)}-time algorithm by Henzinger et al. [STOC 2014, ICALP 2015] which works for directed graphs with quasi-polynomial edge weights. The expected running time bound of our algorithm holds against an oblivious adversary. In contrast to the previous results which rely on maintaining a sparse emulator, our algorithm relies on maintaining a so-called sparse (h,ϵ)(h, \epsilon)-hop set introduced by Cohen [JACM 2000] in the PRAM literature. An (h,ϵ)(h, \epsilon)-hop set of a graph G=(V,E)G=(V, E) is a set FF of weighted edges such that the distance between any pair of nodes in GG can be (1+ϵ)(1+\epsilon)-approximated by their hh-hop distance (given by a path containing at most hh edges) on G=(V,EF)G'=(V, E\cup F). Our algorithm can maintain an (no(1),ϵ)(n^{o(1)}, \epsilon)-hop set of near-linear size in near-linear time under edge deletions.Comment: Accepted to Journal of the ACM. A preliminary version of this paper was presented at the 55th IEEE Symposium on Foundations of Computer Science (FOCS 2014). Abstract shortened to respect the arXiv limit of 1920 character

    An Efficient Strongly Connected Components Algorithm in the Fault Tolerant Model

    Get PDF
    In this paper we study the problem of maintaining the strongly connected components of a graph in the presence of failures. In particular, we show that given a directed graph G=(V,E) with n=|V| and m=|E|, and an integer value kgeq 1, there is an algorithm that computes in O(2^{k}n log^2 n) time for any set F of size at most k the strongly connected components of the graph GF. The running time of our algorithm is almost optimal since the time for outputting the SCCs of GF is at least Omega(n). The algorithm uses a data structure that is computed in a preprocessing phase in polynomial time and is of size O(2^{k} n^2). Our result is obtained using a new observation on the relation between strongly connected components (SCCs) and reachability. More specifically, one of the main building blocks in our result is a restricted variant of the problem in which we only compute strongly connected components that intersect a certain path. Restricting our attention to a path allows us to implicitly compute reachability between the path vertices and the rest of the graph in time that depends logarithmically rather than linearly in the size of the path. This new observation alone, however, is not enough, since we need to find an efficient way to represent the strongly connected components using paths. For this purpose we use a mixture of old and classical techniques such as the heavy path decomposition of Sleator and Tarjan and the classical Depth-First-Search algorithm. Although, these are by now standard techniques, we are not aware of any usage of them in the context of dynamic maintenance of SCCs. Therefore, we expect that our new insights and mixture of new and old techniques will be of independent interest
    corecore