Version 11.0 Fast Parallel Algorithm for Enumerating All Chordless Cycles in Graphs (original) (raw)
Related papers
Fast Parallel Algorithm for Enumerating All Chordless Cycles in Graphs
ArXiv, 2014
Finding chordless cycles is an important theoretical problem in the Graph Theory area. It also can be applied to practical problems such as discover which predators compete for the same food in ecological networks. Motivated by the problem of theoretical interest and also by its significant practical importance, we present in this paper a parallel algorithm for enumerating all the chordless cycles in undirected graphs, which was implemented in OpenCL.
A GPU-based parallel algorithm for enumerating all chordless cycles in graphs
arXiv: Distributed, Parallel, and Cluster Computing, 2014
In a finite undirected simple graph, a chordless cycle is an induced subgraph which is a cycle. We propose a GPU parallel algorithm for enumerating all chordless cycles of such a graph. The algorithm, implemented in OpenCL, is based on a previous sequential algorithm developed by the current authors for the same problem. It uses a more compact data structure for solution representation which is suitable for the memory-size limitation of a GPU. Moreover, for graphs with a sufficiently large amount of chordless cycles, the algorithm presents a significant improvement in execution time that outperforms the sequential method.
Efficient Enumeration of All Chordless Cycles in Graphs
In a finite undirected simple graph, a {\it chordless cycle} is an induced subgraph which is a cycle. We propose two algorithms to enumerate all chordless cycles of such a graph. Compared to other similar algorithms, the proposed algorithms have the advantage of finding each chordless cycle only once. To ensure this, we introduced the concepts of vertex labeling and initial valid vertex triplet. To guarantee that the expansion of a given chordless path will always lead to a chordless cycle, we use a breadth-first search in a subgraph obtained by the elimination of many of the vertices from the original graph. The resulting algorithm has time complexity mathcalO(n+m)\mathcal{O}(n + m)mathcalO(n+m) in the output size, where nnn is the number of vertices and mmm is the number of edges.
Efficient Enumeration of Chordless Cycles
arXiv: Data Structures and Algorithms, 2013
In a finite undirected simple graph, a {\it chordless cycle} is an induced subgraph which is a cycle. We propose two algorithms to enumerate all chordless cycles of such a graph. Compared to other similar algorithms, the proposed algorithms have the advantage of finding each chordless cycle only once. To ensure this, we introduced the concepts of vertex labeling and initial valid vertex triplet. To guarantee that the expansion of a given chordless path will always lead to a chordless cycle, we use a breadth-first search in a subgraph obtained by the elimination of many of the vertices from the original graph. The resulting algorithm has time complexity mathcalO(n+m)\mathcal{O}(n + m)mathcalO(n+m) in the output size, where nnn is the number of vertices and mmm is the number of edges.
Lecture Notes in Computer Science, 2014
ABSTRACT Chordless cycles are very natural structures in undirected graphs, with an important history and distinguished role in graph theory. Motivated also by previous work on the classical problem of listing cycles, we study how to list chordless cycles. The best known solution to list all the CCC chordless cycles contained in an undirected graph G=(V,E)G = (V,E)G=(V,E) takes O(∣E∣2+∣E∣cdotC)O(|E|^2 +|E|\cdot C)O(∣E∣2+∣E∣cdotC) time. In this paper we provide an algorithm taking tildeO(∣E∣+∣V∣cdotC)\tilde{O}(|E| + |V |\cdot C)tildeO(∣E∣+∣V∣cdotC) time. We also show how to obtain the same complexity for listing all the PPP chordless ststst-paths in GGG (where CCC is replaced by PPP ).
Polynomial enumeration of chordless cycles on cyclically orientable graphs
2015
In a finite undirected simple graph, a chordless cycle is an induced subgraph which is a cycle. A graph is called cyclically orientable if it admits an orientation in which every chordless cycle is cyclically oriented. We propose an algorithm to enumerate all chordless cycles of such a graph. Compared to other similar algorithms, the proposed algorithm have the advantage of finding each chordless cycle only once in time complexity mathcalO(n2)\mathcal{O}(n^2)mathcalO(n2) in the input size, where nnn is the number of vertices.
Enumerating chordless circuits in directed graphs
2010
We introduce and discuss an algorithm using O(p) time and O(n(n + m)) space for enumerating the m > 0 chordless circuits in a digraph of order n and containing p chordless paths. Running it on random digraphs yields some statistical insight into its practical performance.
Fast Parallel Algorithms for Recognizing Strongly Chordal, Ptolemaic, and Block Graphs
The 2nd Canadian Discrete and Algorithmic Mathematics Conference will be held on May 25-28, 2009, at the Centre de recherches mathématiques in Montréal (Canada). This will be the second conference in a new series on discrete mathematics that is held every two years (in the odd years) and has the same format as the "SIAM Conference on Discrete Mathematics." The first conference in this new series was held in Banff (see www.cs.ualberta.ca/\~mreza/CANADAM). The general topic of the conference is the theory and application of discrete structures and its goal is to highlight the most salient trends in the field, which has close links to such diverse areas as cryptography, computer science, large-scale networks and biology. The conference will bring together researchers from the various disciplines with which discrete and algorithmic mathematics interact. Particular areas of interest are the following: graphs and digraphs, hypergraphs, matroids, ordered sets, designs, coding theory, enumeration, combinatorics of words, discrete optimization, discrete and computational geometry, lattice point enumeration, combinatorial algorithms, computational complexity, and applications of discrete and algorithmic mathematics, including (but not limited to) web graphs, computational biology, telecommunication networks, and information processing. CanaDAM 2009 2 e Congrès canadien de mathématiques discrètes et algorithmiques Montréal, Québec, Canada 25 au 28 mai 2009 Le 2 e Congrès canadien de mathématiques discrètes et algorithmiques se tiendra au Centre de recherches mathématiques (Montréal) du 25 au 28 mai 2009. Ce congrès est le deuxième d'une nouvelle série, de format semblable à celui de la SIAM Conference on Discrete Mathematics. Les congrès canadiens de mathématiques discrètes et algorithmiques auront lieu tous les deux ans (les années impaires). Le premier congrès s'est tenu à Banff (voir le site www.cs.ualberta.ca/\~mreza/CANADAM). Les sujets abordés pendant le congrès proviendront de tous les domaines des mathématiques discrètes et le but du congrès est de diffuser les avancées les plus importantes de cette branche des mathématiques, qui a des liens étroits avec des domaines tels que la cryptographie, l'informatique, les réseaux de grande taille et la biologie. Parmi les sujets couverts par le congrès, mentionnons en particulier les suivants : graphes et digraphes, hypergraphes, matroïdes, ensembles ordonnés, combinatoire des plans d'expérience, théorie des codes, combinatoire énumérative, combinatoire des mots, optimisation discrète, géométrie discrète et algorithmique, dénombrement des points d'un réseau, algorithmes combinatoires, complexité des calculs, applications des mathématiques discrètes et algorithmiques à divers domaines, incluant (entre autres) les graphes du web, la bioinformatique, les réseaux de télécommunication et le traitement de l'information.
Efficient Parallel Algorithms for a Class of Graph Theoretic Problems
SIAM Journal on Computing, 1984
In this paper, we present efficient parallel algorithms for the following graph problems: finding the lowest common ancestors for vertex pairs of a directed tree; finding all fundamental cycles, a directed spanning forest, all bridges, all bridge-connected components, all separation vertices, all biconnected components, and testing the biconnectivity of an undirected graph. All these algorithms achieve the O(lg n) time bound, with the first two algorithms using n[n/lg n] processors and the remaining algorithms using n[n/lg n] processors. In all cases, our algorithms are better than the previously known algorithms and in most cases reduce the number of processors used by a factor of n lg n. Moreover, our algorithms are optimal with respect to the time-processor product for dense graphs, with the exception of the first two algorithms. The machine model we use is the PRAM which is a SIMD model allowing simultaneous reads but not simultaneous writes to the same memory location.
A Novel Multithreaded Algorithm for Extracting Maximal Chordal Subgraphs
2012 41st International Conference on Parallel Processing, 2012
Chordal graphs are triangulated graphs where any cycle larger than three is bisected by a chord. Many combinatorial optimization problems such as computing the size of the maximum clique and the chromatic number are NPhard on general graphs but have polynomial time solutions on chordal graphs. In this paper, we present a novel multithreaded algorithm to extract a maximal chordal subgraph from a general graph. We develop an iterative approach where each thread can asynchronously update a subset of edges that are dynamically assigned to it per iteration and implement our algorithm on two different multithreaded architectures-Cray XMT, a massively multithreaded platform, and AMD Magny-Cours, a shared memory multicore platform. In addition to the proof of correctness, we present the performance of our algorithm using a testset of synthetical graphs with up to halfa-billion edges and real world networks from gene correlation studies and demonstrate that our algorithm achieves high scalability for all inputs on both types of architectures.