837 research outputs found
Parallel Batch-Dynamic Graph Connectivity
In this paper, we study batch parallel algorithms for the dynamic
connectivity problem, a fundamental problem that has received considerable
attention in the sequential setting. The most well known sequential algorithm
for dynamic connectivity is the elegant level-set algorithm of Holm, de
Lichtenberg and Thorup (HDT), which achieves amortized time per
edge insertion or deletion, and time per query. We
design a parallel batch-dynamic connectivity algorithm that is work-efficient
with respect to the HDT algorithm for small batch sizes, and is asymptotically
faster when the average batch size is sufficiently large. Given a sequence of
batched updates, where is the average batch size of all deletions, our
algorithm achieves expected amortized work per
edge insertion and deletion and depth w.h.p. Our algorithm
answers a batch of connectivity queries in expected
work and depth w.h.p. To the best of our knowledge, our algorithm
is the first parallel batch-dynamic algorithm for connectivity.Comment: This is the full version of the paper appearing in the ACM Symposium
on Parallelism in Algorithms and Architectures (SPAA), 201
Multiple-Edge-Fault-Tolerant Approximate Shortest-Path Trees
Let be an -node and -edge positively real-weighted undirected
graph. For any given integer , we study the problem of designing a
sparse \emph{f-edge-fault-tolerant} (-EFT) {\em -approximate
single-source shortest-path tree} (-ASPT), namely a subgraph of
having as few edges as possible and which, following the failure of a set
of at most edges in , contains paths from a fixed source that are
stretched at most by a factor of . To this respect, we provide an
algorithm that efficiently computes an -EFT -ASPT of size . Our structure improves on a previous related construction designed for
\emph{unweighted} graphs, having the same size but guaranteeing a larger
stretch factor of , plus an additive term of .
Then, we show how to convert our structure into an efficient -EFT
\emph{single-source distance oracle} (SSDO), that can be built in
time, has size , and is able to report,
after the failure of the edge set , in time a
-approximate distance from the source to any node, and a
corresponding approximate path in the same amount of time plus the path's size.
Such an oracle is obtained by handling another fundamental problem, namely that
of updating a \emph{minimum spanning forest} (MSF) of after that a
\emph{batch} of simultaneous edge modifications (i.e., edge insertions,
deletions and weight changes) is performed. For this problem, we build in time a \emph{sensitivity} oracle of size , that
reports in time the (at most ) edges either exiting from
or entering into the MSF. [...]Comment: 16 pages, 4 figure
Dynamic Algorithms for the Massively Parallel Computation Model
The Massive Parallel Computing (MPC) model gained popularity during the last
decade and it is now seen as the standard model for processing large scale
data. One significant shortcoming of the model is that it assumes to work on
static datasets while, in practice, real-world datasets evolve continuously. To
overcome this issue, in this paper we initiate the study of dynamic algorithms
in the MPC model.
We first discuss the main requirements for a dynamic parallel model and we
show how to adapt the classic MPC model to capture them. Then we analyze the
connection between classic dynamic algorithms and dynamic algorithms in the MPC
model. Finally, we provide new efficient dynamic MPC algorithms for a variety
of fundamental graph problems, including connectivity, minimum spanning tree
and matching.Comment: Accepted to the 31st ACM Symposium on Parallelism in Algorithms and
Architectures (SPAA 2019
The Power of Dynamic Distance Oracles: Efficient Dynamic Algorithms for the Steiner Tree
In this paper we study the Steiner tree problem over a dynamic set of
terminals. We consider the model where we are given an -vertex graph
with positive real edge weights, and our goal is to maintain a tree
which is a good approximation of the minimum Steiner tree spanning a terminal
set , which changes over time. The changes applied to the
terminal set are either terminal additions (incremental scenario), terminal
removals (decremental scenario), or both (fully dynamic scenario). Our task
here is twofold. We want to support updates in sublinear time, and keep
the approximation factor of the algorithm as small as possible. We show that we
can maintain a -approximate Steiner tree of a general graph in
time per terminal addition or removal. Here,
denotes the stretch of the metric induced by . For planar graphs we achieve
the same running time and the approximation ratio of .
Moreover, we show faster algorithms for incremental and decremental scenarios.
Finally, we show that if we allow higher approximation ratio, even more
efficient algorithms are possible. In particular we show a polylogarithmic time
-approximate algorithm for planar graphs.
One of the main building blocks of our algorithms are dynamic distance
oracles for vertex-labeled graphs, which are of independent interest. We also
improve and use the online algorithms for the Steiner tree problem.Comment: Full version of the paper accepted to STOC'1
Optimal decremental connectivity in planar graphs
We show an algorithm for dynamic maintenance of connectivity information in
an undirected planar graph subject to edge deletions. Our algorithm may answer
connectivity queries of the form `Are vertices and connected with a
path?' in constant time. The queries can be intermixed with any sequence of
edge deletions, and the algorithm handles all updates in time. This
results improves over previously known time algorithm
Faster Fully-Dynamic Minimum Spanning Forest
We give a new data structure for the fully-dynamic minimum spanning forest
problem in simple graphs. Edge updates are supported in
amortized time per operation, improving the amortized bound of
Holm et al. (STOC'98, JACM'01). We assume the Word-RAM model with standard
instructions.Comment: 13 pages, 2 figure
Dynamic Dominators and Low-High Orders in DAGs
We consider practical algorithms for maintaining the dominator tree and a low-high order in directed acyclic graphs (DAGs) subject to dynamic operations. Let G be a directed graph with a distinguished start vertex s. The dominator tree D of G is a tree rooted at s, such that a vertex v is an ancestor of a vertex w if and only if all paths from s to w in G include v. The dominator tree is a central tool in program optimization and code generation, and has many applications in other diverse areas including constraint programming, circuit testing, biology, and in algorithms for graph connectivity problems. A low-high order of G is a preorder of D that certifies the correctness of D, and has further applications in connectivity and path-determination problems.
We first provide a practical and carefully engineered version of a recent algorithm [ICALP 2017] for maintaining the dominator tree of a DAG through a sequence of edge deletions. The algorithm runs in O(mn) total time and O(m) space, where n is the number of vertices and m is the number of edges before any deletion. In addition, we present a new algorithm that maintains a low-high order of a DAG under edge deletions within the same bounds. Both results extend to the case of reducible graphs (a class that includes DAGs). Furthermore, we present a fully dynamic algorithm for maintaining the dominator tree of a DAG under an intermixed sequence of edge insertions and deletions. Although it does not maintain the O(mn) worst-case bound of the decremental algorithm, our experiments highlight that the fully dynamic algorithm performs very well in practice. Finally, we study the practical efficiency of all our algorithms by conducting an extensive experimental study on real-world and synthetic graphs
Faster Deterministic Fully-Dynamic Graph Connectivity
We give new deterministic bounds for fully-dynamic graph connectivity. Our
data structure supports updates (edge insertions/deletions) in
amortized time and connectivity queries in worst-case time, where is the number of vertices of the
graph. This improves the deterministic data structures of Holm, de Lichtenberg,
and Thorup (STOC 1998, J.ACM 2001) and Thorup (STOC 2000) which both have
amortized update time and worst-case query
time. Our model of computation is the same as that of Thorup, i.e., a pointer
machine with standard instructions.Comment: To appear at SODA 2013. 19 pages, 1 figur
- âŚ