TY - JOUR

T1 - A new augmentation based algorithm for extracting maximal chordal subgraphs

AU - Bhowmick, Sanjukta

AU - Chen, Tzu Yi

AU - Halappanavar, Mahantesh

N1 - Funding Information:
This work was made possible by the College of Information Science and Technology, University of Nebraska at Omaha and Grant Number P20RR16469 from the National Center for Research Resources (NCRR) , a component of the National Institutes of Health (NIH). Its contents are the sole responsibility of the authors and do not represent the official views of NCRR or NIH. This work was also funded in part by the Center for Adaptive Super Computing Software-MultiThreaded Architectures (CASS-MT) at the US Department of Energy’s Pacific Northwest National Laboratory , which is operated by Battelle Memorial Institute under Contract DE-ACO6-76RL01830 .
Publisher Copyright:
© 2014 Elsevier Inc. All rights reserved.

PY - 2015/2

Y1 - 2015/2

N2 - A graph is chordal if every cycle of length greater than three contains an edge between non-adjacent vertices. Chordal graphs are of interest both theoretically, since they admit polynomial time solutions to a range of NP-hard graph problems, and practically, since they arise in many applications including sparse linear algebra, computer vision, and computational biology. A maximal chordal subgraph is a chordal subgraph that is not a proper subgraph of any other chordal subgraph. Existing algorithms for computing maximal chordal subgraphs depend on dynamically ordering the vertices, which is an inherently sequential process and therefore limits the algorithms' parallelizability. In this paper we explore techniques to develop a scalable parallel algorithm for extracting a maximal chordal subgraph. We demonstrate that an earlier attempt at developing a parallel algorithm may induce a non-optimal vertex ordering and is therefore not guaranteed to terminate with a maximal chordal subgraph. We then give a new algorithm that first computes and then repeatedly augments a spanning chordal subgraph. After proving that the algorithm terminates with a maximal chordal subgraph, we then demonstrate that this algorithm is more amenable to parallelization and that the parallel version also terminates with a maximal chordal subgraph. That said, the complexity of the new algorithm is higher than that of the previous parallel algorithm, although the earlier algorithm computes a chordal subgraph which is not guaranteed to be maximal. We experimented with our augmentation-based algorithm on both synthetic and real-world graphs. We provide scalability results and also explore the effect of different choices for the initial spanning chordal subgraph on both the running time and on the number of edges in the maximal chordal subgraph.

AB - A graph is chordal if every cycle of length greater than three contains an edge between non-adjacent vertices. Chordal graphs are of interest both theoretically, since they admit polynomial time solutions to a range of NP-hard graph problems, and practically, since they arise in many applications including sparse linear algebra, computer vision, and computational biology. A maximal chordal subgraph is a chordal subgraph that is not a proper subgraph of any other chordal subgraph. Existing algorithms for computing maximal chordal subgraphs depend on dynamically ordering the vertices, which is an inherently sequential process and therefore limits the algorithms' parallelizability. In this paper we explore techniques to develop a scalable parallel algorithm for extracting a maximal chordal subgraph. We demonstrate that an earlier attempt at developing a parallel algorithm may induce a non-optimal vertex ordering and is therefore not guaranteed to terminate with a maximal chordal subgraph. We then give a new algorithm that first computes and then repeatedly augments a spanning chordal subgraph. After proving that the algorithm terminates with a maximal chordal subgraph, we then demonstrate that this algorithm is more amenable to parallelization and that the parallel version also terminates with a maximal chordal subgraph. That said, the complexity of the new algorithm is higher than that of the previous parallel algorithm, although the earlier algorithm computes a chordal subgraph which is not guaranteed to be maximal. We experimented with our augmentation-based algorithm on both synthetic and real-world graphs. We provide scalability results and also explore the effect of different choices for the initial spanning chordal subgraph on both the running time and on the number of edges in the maximal chordal subgraph.

KW - Maximal chordal subgraphs

KW - Parallel graph algorithms

UR - http://www.scopus.com/inward/record.url?scp=85028158631&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85028158631&partnerID=8YFLogxK

U2 - 10.1016/j.jpdc.2014.10.006

DO - 10.1016/j.jpdc.2014.10.006

M3 - Article

C2 - 25767331

AN - SCOPUS:85028158631

VL - 76

SP - 132

EP - 144

JO - Journal of Parallel and Distributed Computing

JF - Journal of Parallel and Distributed Computing

SN - 0743-7315

ER -