23,610 research outputs found
Near Optimal Algorithm for the Directed Single Source Replacement Paths Problem
In the Single Source Replacement Paths (SSRP) problem we are given a graph , and a shortest paths tree rooted at a node , and
the goal is to output for every node and for every edge in
the length of the shortest path from to avoiding .
We present an time randomized combinatorial
algorithm for unweighted directed graphs. Previously such a bound was known in
the directed case only for the seemingly easier problem of replacement path
where both the source and the target nodes are fixed.
Our new upper bound for this problem matches the existing conditional
combinatorial lower bounds. Hence, (assuming these conditional lower bounds)
our result is essentially optimal and completes the picture of the SSRP problem
in the combinatorial setting.
Our algorithm extends to the case of small, rational edge weights. We
strengthen the existing conditional lower bounds in this case by showing that
any time (combinatorial or algebraic) algorithm for some
fixed yields a truly subcubic algorithm for the weighted All
Pairs Shortest Paths problem (previously such a bound was known only for the
combinatorial setting).Comment: 38 pages, 9 figures, to appear in the Proceedings of the 47th
International Colloquium on Automata, Languages and Programming (ICALP
Replacement Paths via Row Minima of Concise Matrices
Matrix is {\em -concise} if the finite entries of each column of
consist of or less intervals of identical numbers. We give an -time
algorithm to compute the row minima of any -concise matrix.
Our algorithm yields the first -time reductions from the
replacement-paths problem on an -node -edge undirected graph
(respectively, directed acyclic graph) to the single-source shortest-paths
problem on an -node -edge undirected graph (respectively, directed
acyclic graph). That is, we prove that the replacement-paths problem is no
harder than the single-source shortest-paths problem on undirected graphs and
directed acyclic graphs. Moreover, our linear-time reductions lead to the first
-time algorithms for the replacement-paths problem on the following
classes of -node -edge graphs (1) undirected graphs in the word-RAM model
of computation, (2) undirected planar graphs, (3) undirected minor-closed
graphs, and (4) directed acyclic graphs.Comment: 23 pages, 1 table, 9 figures, accepted to SIAM Journal on Discrete
Mathematic
Sparse Fault-Tolerant BFS Trees
This paper addresses the problem of designing a sparse {\em fault-tolerant}
BFS tree, or {\em FT-BFS tree} for short, namely, a sparse subgraph of the
given network such that subsequent to the failure of a single edge or
vertex, the surviving part of still contains a BFS spanning tree for
(the surviving part of) . Our main results are as follows. We present an
algorithm that for every -vertex graph and source node constructs a
(single edge failure) FT-BFS tree rooted at with O(n \cdot
\min\{\Depth(s), \sqrt{n}\}) edges, where \Depth(s) is the depth of the BFS
tree rooted at . This result is complemented by a matching lower bound,
showing that there exist -vertex graphs with a source node for which any
edge (or vertex) FT-BFS tree rooted at has edges. We then
consider {\em fault-tolerant multi-source BFS trees}, or {\em FT-MBFS trees}
for short, aiming to provide (following a failure) a BFS tree rooted at each
source for some subset of sources . Again, tight bounds
are provided, showing that there exists a poly-time algorithm that for every
-vertex graph and source set of size constructs a
(single failure) FT-MBFS tree from each source , with
edges, and on the other hand there exist
-vertex graphs with source sets of cardinality , on
which any FT-MBFS tree from has edges.
Finally, we propose an approximation algorithm for constructing
FT-BFS and FT-MBFS structures. The latter is complemented by a hardness result
stating that there exists no approximation algorithm for these
problems under standard complexity assumptions
Faster Replacement Paths
The replacement paths problem for directed graphs is to find for given nodes
s and t and every edge e on the shortest path between them, the shortest path
between s and t which avoids e. For unweighted directed graphs on n vertices,
the best known algorithm runtime was \tilde{O}(n^{2.5}) by Roditty and Zwick.
For graphs with integer weights in {-M,...,M}, Weimann and Yuster recently
showed that one can use fast matrix multiplication and solve the problem in
O(Mn^{2.584}) time, a runtime which would be O(Mn^{2.33}) if the exponent
\omega of matrix multiplication is 2.
We improve both of these algorithms. Our new algorithm also relies on fast
matrix multiplication and runs in O(M n^{\omega} polylog(n)) time if \omega>2
and O(n^{2+\eps}) for any \eps>0 if \omega=2. Our result shows that, at least
for small integer weights, the replacement paths problem in directed graphs may
be easier than the related all pairs shortest paths problem in directed graphs,
as the current best runtime for the latter is \Omega(n^{2.5}) time even if
\omega=2.Comment: the current version contains an improved resul
- …