326,749 research outputs found
Constant-Time Algorithms for Minimum Spanning Tree and Related Problems on Processor Array with Reconfigurable Bus Systems
[[abstract]]A processor array with a reconfigurable bus system is a parallel computation model that consists of a processor array and a reconfigurable bus system. In this paper, a constant-time algorithm is proposed on this model for finding the cycles in an undirected graph. We can use this algorithm to decide whether a specified edge belongs to the minimum spanning tree of the graph or not. This cycle-finding algorithm is designed on a two-dimensional processor array with a reconfigurable bus system, where is the number of vertices in the graph. Based on this cycle-finding algorithm, the minimum spanning tree problem and the spanning tree problem can be solved in O(1) time by using fewer processors than before, O() and O() processors respectively. This is a substantial improvement over previous known results. Moreover, we also propose two constant-time algorithms for solving the minimum spanning tree verification problem and spanning tree verification problem by using O() and O() processors, respectively.
Minimum cycle and homology bases of surface embedded graphs
We study the problems of finding a minimum cycle basis (a minimum weight set
of cycles that form a basis for the cycle space) and a minimum homology basis
(a minimum weight set of cycles that generates the -dimensional
()-homology classes) of an undirected graph embedded on a
surface. The problems are closely related, because the minimum cycle basis of a
graph contains its minimum homology basis, and the minimum homology basis of
the -skeleton of any graph is exactly its minimum cycle basis.
For the minimum cycle basis problem, we give a deterministic
-time algorithm for graphs embedded on an orientable
surface of genus . The best known existing algorithms for surface embedded
graphs are those for general graphs: an time Monte Carlo
algorithm and a deterministic time algorithm. For the
minimum homology basis problem, we give a deterministic -time algorithm for graphs embedded on an orientable or non-orientable
surface of genus with boundary components, assuming shortest paths are
unique, improving on existing algorithms for many values of and . The
assumption of unique shortest paths can be avoided with high probability using
randomization or deterministically by increasing the running time of the
homology basis algorithm by a factor of .Comment: A preliminary version of this work was presented at the 32nd Annual
International Symposium on Computational Geometr
Maximum weight cycle packing in directed graphs, with application to kidney exchange programs
Centralized matching programs have been established in several countries to organize kidney exchanges between incompatible patient-donor pairs. At the heart of these programs are algorithms to solve kidney exchange problems, which can be modelled as cycle packing problems in a directed graph, involving cycles of length 2, 3, or even longer. Usually, the goal is to maximize the number of transplants, but sometimes the total benefit is maximized by considering the differences between suitable kidneys. These problems correspond to computing cycle packings of maximum size or maximum weight in directed graphs. Here we prove the APX-completeness of the problem of finding a maximum size exchange involving only 2-cycles and 3-cycles. We also present an approximation algorithm and an exact algorithm for the problem of finding a maximum weight exchange involving cycles of bounded length. The exact algorithm has been used to provide optimal solutions to real kidney exchange problems arising from the National Matching Scheme for Paired Donation run by NHS Blood and Transplant, and we describe practical experience based on this collaboration
Algorithms for Finding Diameter Cycles of Biconnected Graphs
In this paper, we first coin a new graph theoretic problem called the diameter cycle problem with numerous applications. A longest cycle in a graph G = (V, E) is referred to as a diameter cycle of G iff the distance in G of every vertex on the cycle to the rest of the on-cycle vertices is maximal. We then present two algorithms for finding a diameter cycle of a biconnected graph. The first algorithm is an abstract intuitive algorithm that utilizes a brute-force mechanism for expanding an initial cycle by repeatedly replacing paths on the cycle with longer paths. The second algorithm is a concrete algorithm that uses fundamental cycles in the expansion process and has the time and space complexity of O(n^6) and O(n^2), respectively. To the best of our knowledge, this problem was neither defined nor addressed in the literature. The diameter cycle problem distinguishes itself from other cycle finding problems by identifying cycles that are maximally long while maximizing the distances between vertices in the cycle. Existing cycle finding algorithms such as fundamental and longest cycle algorithms do not discover cycles where the distances between vertices are maximized while also maximizing the length of the cycle
Algorithmic Applications of Baur-Strassen's Theorem: Shortest Cycles, Diameter and Matchings
Consider a directed or an undirected graph with integral edge weights from
the set [-W, W], that does not contain negative weight cycles. In this paper,
we introduce a general framework for solving problems on such graphs using
matrix multiplication. The framework is based on the usage of Baur-Strassen's
theorem and of Strojohann's determinant algorithm. It allows us to give new and
simple solutions to the following problems:
* Finding Shortest Cycles -- We give a simple \tilde{O}(Wn^{\omega}) time
algorithm for finding shortest cycles in undirected and directed graphs. For
directed graphs (and undirected graphs with non-negative weights) this matches
the time bounds obtained in 2011 by Roditty and Vassilevska-Williams. On the
other hand, no algorithm working in \tilde{O}(Wn^{\omega}) time was previously
known for undirected graphs with negative weights. Furthermore our algorithm
for a given directed or undirected graph detects whether it contains a negative
weight cycle within the same running time.
* Computing Diameter and Radius -- We give a simple \tilde{O}(Wn^{\omega})
time algorithm for computing a diameter and radius of an undirected or directed
graphs. To the best of our knowledge no algorithm with this running time was
known for undirected graphs with negative weights.
* Finding Minimum Weight Perfect Matchings -- We present an
\tilde{O}(Wn^{\omega}) time algorithm for finding minimum weight perfect
matchings in undirected graphs. This resolves an open problem posted by
Sankowski in 2006, who presented such an algorithm but only in the case of
bipartite graphs.
In order to solve minimum weight perfect matching problem we develop a novel
combinatorial interpretation of the dual solution which sheds new light on this
problem. Such a combinatorial interpretation was not know previously, and is of
independent interest.Comment: To appear in FOCS 201
Fast Computation of Small Cuts via Cycle Space Sampling
We describe a new sampling-based method to determine cuts in an undirected
graph. For a graph (V, E), its cycle space is the family of all subsets of E
that have even degree at each vertex. We prove that with high probability,
sampling the cycle space identifies the cuts of a graph. This leads to simple
new linear-time sequential algorithms for finding all cut edges and cut pairs
(a set of 2 edges that form a cut) of a graph.
In the model of distributed computing in a graph G=(V, E) with O(log V)-bit
messages, our approach yields faster algorithms for several problems. The
diameter of G is denoted by Diam, and the maximum degree by Delta. We obtain
simple O(Diam)-time distributed algorithms to find all cut edges,
2-edge-connected components, and cut pairs, matching or improving upon previous
time bounds. Under natural conditions these new algorithms are universally
optimal --- i.e. a Omega(Diam)-time lower bound holds on every graph. We obtain
a O(Diam+Delta/log V)-time distributed algorithm for finding cut vertices; this
is faster than the best previous algorithm when Delta, Diam = O(sqrt(V)). A
simple extension of our work yields the first distributed algorithm with
sub-linear time for 3-edge-connected components. The basic distributed
algorithms are Monte Carlo, but they can be made Las Vegas without increasing
the asymptotic complexity.
In the model of parallel computing on the EREW PRAM our approach yields a
simple algorithm with optimal time complexity O(log V) for finding cut pairs
and 3-edge-connected components.Comment: Previous version appeared in Proc. 35th ICALP, pages 145--160, 200
Finding Cycles and Trees in Sublinear Time
We present sublinear-time (randomized) algorithms for finding simple cycles
of length at least and tree-minors in bounded-degree graphs. The
complexity of these algorithms is related to the distance of the graph from
being -minor-free (resp., free from having the corresponding tree-minor).
In particular, if the graph is far (i.e., -far) {from} being
cycle-free, i.e. if one has to delete a constant fraction of edges to make it
cycle-free, then the algorithm finds a cycle of polylogarithmic length in time
\tildeO(\sqrt{N}), where denotes the number of vertices. This time
complexity is optimal up to polylogarithmic factors.
The foregoing results are the outcome of our study of the complexity of {\em
one-sided error} property testing algorithms in the bounded-degree graphs
model. For example, we show that cycle-freeness of -vertex graphs can be
tested with one-sided error within time complexity
\tildeO(\poly(1/\e)\cdot\sqrt{N}). This matches the known
query lower bound, and contrasts with the fact that any minor-free property
admits a {\em two-sided error} tester of query complexity that only depends on
the proximity parameter \e. For any constant , we extend this result
to testing whether the input graph has a simple cycle of length at least .
On the other hand, for any fixed tree , we show that -minor-freeness has
a one-sided error tester of query complexity that only depends on the proximity
parameter \e.
Our algorithm for finding cycles in bounded-degree graphs extends to general
graphs, where distances are measured with respect to the actual number of
edges. Such an extension is not possible with respect to finding tree-minors in
complexity.Comment: Keywords: Sublinear-Time Algorithms, Property Testing, Bounded-Degree
Graphs, One-Sided vs Two-Sided Error Probability Updated versio
- âŚ