42,183 research outputs found
Finding Simple Shortest Paths and Cycles
The problem of finding multiple simple shortest paths in a weighted directed
graph has many applications, and is considerably more difficult than
the corresponding problem when cycles are allowed in the paths. Even for a
single source-sink pair, it is known that two simple shortest paths cannot be
found in time polynomially smaller than (where ) unless the
All-Pairs Shortest Paths problem can be solved in a similar time bound. The
latter is a well-known open problem in algorithm design. We consider the
all-pairs version of the problem, and we give a new algorithm to find
simple shortest paths for all pairs of vertices. For , our algorithm runs
in time (where ), which is almost the same bound as
for the single pair case, and for we improve earlier bounds. Our approach
is based on forming suitable path extensions to find simple shortest paths;
this method is different from the `detour finding' technique used in most of
the prior work on simple shortest paths, replacement paths, and distance
sensitivity oracles.
Enumerating simple cycles is a well-studied classical problem. We present new
algorithms for generating simple cycles and simple paths in in
non-decreasing order of their weights; the algorithm for generating simple
paths is much faster, and uses another variant of path extensions. We also give
hardness results for sparse graphs, relative to the complexity of computing a
minimum weight cycle in a graph, for several variants of problems related to
finding simple paths and cycles.Comment: The current version includes new results for undirected graphs. In
Section 4, the notion of an (m,n) reduction is generalized to an f(m,n)
reductio
Algorithms and Bounds for Very Strong Rainbow Coloring
A well-studied coloring problem is to assign colors to the edges of a graph
so that, for every pair of vertices, all edges of at least one shortest
path between them receive different colors. The minimum number of colors
necessary in such a coloring is the strong rainbow connection number
(\src(G)) of the graph. When proving upper bounds on \src(G), it is natural
to prove that a coloring exists where, for \emph{every} shortest path between
every pair of vertices in the graph, all edges of the path receive different
colors. Therefore, we introduce and formally define this more restricted edge
coloring number, which we call \emph{very strong rainbow connection number}
(\vsrc(G)).
In this paper, we give upper bounds on \vsrc(G) for several graph classes,
some of which are tight. These immediately imply new upper bounds on \src(G)
for these classes, showing that the study of \vsrc(G) enables meaningful
progress on bounding \src(G). Then we study the complexity of the problem to
compute \vsrc(G), particularly for graphs of bounded treewidth, and show this
is an interesting problem in its own right. We prove that \vsrc(G) can be
computed in polynomial time on cactus graphs; in contrast, this question is
still open for \src(G). We also observe that deciding whether \vsrc(G) = k
is fixed-parameter tractable in and the treewidth of . Finally, on
general graphs, we prove that there is no polynomial-time algorithm to decide
whether \vsrc(G) \leq 3 nor to approximate \vsrc(G) within a factor
, unless PNP
Equivalence Classes and Conditional Hardness in Massively Parallel Computations
The Massively Parallel Computation (MPC) model serves as a common abstraction of many modern large-scale data processing frameworks, and has been receiving increasingly more attention over the past few years, especially in the context of classical graph problems. So far, the only way to argue lower bounds for this model is to condition on conjectures about the hardness of some specific problems, such as graph connectivity on promise graphs that are either one cycle or two cycles, usually called the one cycle vs. two cycles problem. This is unlike the traditional arguments based on conjectures about complexity classes (e.g., P ? NP), which are often more robust in the sense that refuting them would lead to groundbreaking algorithms for a whole bunch of problems.
In this paper we present connections between problems and classes of problems that allow the latter type of arguments. These connections concern the class of problems solvable in a sublogarithmic amount of rounds in the MPC model, denoted by MPC(o(log N)), and some standard classes concerning space complexity, namely L and NL, and suggest conjectures that are robust in the sense that refuting them would lead to many surprisingly fast new algorithms in the MPC model. We also obtain new conditional lower bounds, and prove new reductions and equivalences between problems in the MPC model
Speeding up shortest path algorithms
Given an arbitrary, non-negatively weighted, directed graph we
present an algorithm that computes all pairs shortest paths in time
, where is the number of
different edges contained in shortest paths and is a running
time of an algorithm to solve a single-source shortest path problem (SSSP).
This is a substantial improvement over a trivial times application of
that runs in . In our algorithm we use
as a black box and hence any improvement on results also in improvement
of our algorithm.
Furthermore, a combination of our method, Johnson's reweighting technique and
topological sorting results in an all-pairs
shortest path algorithm for arbitrarily-weighted directed acyclic graphs.
In addition, we also point out a connection between the complexity of a
certain sorting problem defined on shortest paths and SSSP.Comment: 10 page
- …