Graph Partitioning with Natural Cuts

We present a novel approach to graph partitioning based on the notion of \emph{natural cuts}. Our algorithm, called PUNCH, has two phases. The first phase performs a series of minimum-cut computations to identify and contract dense regions of the graph. This reduces the graph size, but preserves its general structure. The second phase uses a combination of greedy and local search heuristics to assemble the final partition. The algorithm performs especially well on road networks, which have an abundance of natural cuts (such as bridges, mountain passes, and ferries). In a few minutes, it obtains the best known partitions for continental-sized networks, significantly improving on previous results.

[1]  Sahar Idwan,et al.  Computing Breadth First Search in Large Graph Using hMetis Partitioning , 2009 .

[2]  Celso C. Ribeiro,et al.  A Hybrid GRASP with Perturbations for the Steiner Problem in Graphs , 2002, INFORMS J. Comput..

[3]  Andrew V. Goldberg,et al.  A new approach to the maximum flow problem , 1986, STOC '86.

[4]  Andrew V. Goldberg,et al.  Customizable Route Planning , 2011, SEA.

[5]  Andrew V. Goldberg,et al.  The shortest path problem : ninth DIMACS implementation challenge , 2009 .

[6]  Kevin J. Lang,et al.  Finding dense and isolated submarkets in a sponsored search spending graph , 2007, CIKM '07.

[7]  R. Khandekar,et al.  Graph partitioning using single commodity flows , 2006, STOC 2006.

[8]  R. M. Mattheyses,et al.  A Linear-Time Heuristic for Improving Network Partitions , 1982, 19th Design Automation Conference.

[9]  Thomas Sauerwald,et al.  A new diffusion-based multilevel algorithm for computing graph partitions of very high quality , 2008, IPDPS.

[10]  Peter Sanders,et al.  Distributed Evolutionary Graph Partitioning , 2011, ALENEX.

[11]  Ralf Diekmann,et al.  The PARTY Partitioning Library User Guide - Version 1.1 , 1996 .

[12]  Kevin J. Lang,et al.  An algorithm for improving graph partitions , 2008, SODA '08.

[13]  Richard M. Leahy,et al.  An Optimal Graph Theoretic Approach to Data Clustering: Theory and Its Application to Image Segmentation , 1993, IEEE Trans. Pattern Anal. Mach. Intell..

[14]  Dorothea Wagner,et al.  High-Performance Multi-Level Routing , 2006, The Shortest Path Problem.

[15]  Chris Walshaw,et al.  A Combined Evolutionary Search and Multilevel Optimisation Approach to Graph-Partitioning , 2004, J. Glob. Optim..

[16]  Frank Thomson Leighton,et al.  A Framework for Solving VLSI Graph Layout Problems , 1983, J. Comput. Syst. Sci..

[17]  Peter Sanders,et al.  Distributed Time-Dependent Contraction Hierarchies , 2010, SEA.

[18]  Johan J. Lukkien,et al.  Creating graph partitions for fast optimum route planning , 2004 .

[19]  Vitaly Osipov,et al.  n-Level Graph Partitioning , 2010, ESA.

[20]  Chris Walshaw,et al.  JOSTLE: multilevel graph partitioning software: an overview , 2007 .

[21]  Peter Sanders,et al.  Engineering a scalable high quality graph partitioner , 2009, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[22]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[23]  Peter Sanders,et al.  Engineering Route Planning Algorithms , 2009, Algorithmics of Large and Complex Networks.

[24]  Vipin Kumar,et al.  A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs , 1998, SIAM J. Sci. Comput..

[25]  Aart J. C. Bik,et al.  Pregel: a system for large-scale graph processing - "ABSTRACT" , 2009, PODC '09.

[26]  Andrew V. Goldberg,et al.  A Hub-Based Labeling Algorithm for Shortest Paths in Road Networks , 2011, SEA.

[27]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[28]  Olga Veksler,et al.  Fast approximate energy minimization via graph cuts , 2001, Proceedings of the Seventh IEEE International Conference on Computer Vision.

[29]  Bradford L. Chamberlain,et al.  Graph Partitioning Algorithms for Distributing Workloads of Parallel Computations , 2001 .

[30]  C. Walshaw JOSTLE : parallel multilevel graph-partitioning software – an overview , 2008 .

[31]  Peter Sanders,et al.  Goal-directed shortest-path queries using precomputed cluster distances , 2010, JEAL.

[32]  Haim Kaplan,et al.  Reach for A*: Shortest Path Algorithms with Preprocessing , 2006, The Shortest Path Problem.

[33]  Giorgio Gambosi,et al.  Complexity and Approximation , 1999, Springer Berlin Heidelberg.

[34]  Giorgio Gambosi,et al.  Complexity and approximation: combinatorial optimization problems and their approximability properties , 1999 .

[35]  Fred Glover,et al.  Tabu Search and Adaptive Memory Programming — Advances, Applications and Challenges , 1997 .

[36]  Peter Sanders,et al.  Engineering Multilevel Graph Partitioning Algorithms , 2010, ESA.

[37]  Irfan A. Essa,et al.  Graphcut textures: image and video synthesis using graph cuts , 2003, ACM Trans. Graph..

[38]  Brian W. Kernighan,et al.  An efficient heuristic procedure for partitioning graphs , 1970, Bell Syst. Tech. J..

[39]  Rolf H. Möhring,et al.  Fast Point-to-Point Shortest Path Computations with Arc-Flags , 2006, The Shortest Path Problem.

[40]  Mauricio G. C. Resende,et al.  A Hybrid Heuristic for the p-Median Problem , 2004, J. Heuristics.

[41]  Greg Turk,et al.  Graphcut textures: image and video texture synthesis using graph cuts , 2003, SIGGRAPH 2003.

[42]  Bruce Hendrickson,et al.  A Multi-Level Algorithm For Partitioning Graphs , 1995, Proceedings of the IEEE/ACM SC95 Conference.

[43]  David Pritchard,et al.  Fast computation of small cuts via cycle space sampling , 2007, TALG.

[44]  Robert van Engelen,et al.  Graph Partitioning for High Performance Scienti c Simulations , 2000 .

[45]  Jean Roman,et al.  SCOTCH: A Software Package for Static Mapping by Dual Recursive Bipartitioning of Process and Architecture Graphs , 1996, HPCN Europe.

[46]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[47]  Aart J. C. Bik,et al.  Pregel: a system for large-scale graph processing , 2010, SIGMOD Conference.