A Combined Evolutionary Search and Multilevel Optimisation Approach to Graph-Partitioning

The graph-partitioning problem is to divide a graph into several pieces so that the number of vertices in each piece is the same within some defined tolerance and the number of cut edges is minimised. Important applications of the problem arise, for example, in parallel processing where data sets need to be distributed across the memory of a parallel machine. Very effective heuristic algorithms have been developed for this problem which run in real-time, but it is not known how good the partitions are since the problem is, in general, NP-complete. This paper reports an evolutionary search algorithm for finding benchmark partitions. A distinctive feature is the use of a multilevel heuristic algorithm to provide an effective crossover. The technique is tested on several example graphs and it is demonstrated that our method can achieve extremely high quality partitions significantly better than those found by the state-of-the-art graph-partitioning packages.

[1]  Gregor von Laszewski,et al.  Intelligent Structural Operators for the k-way Graph Partitioning Problem , 1991, ICGA.

[2]  Byung Ro Moon,et al.  Genetic Algorithm and Graph Partitioning , 1996, IEEE Trans. Computers.

[3]  David S. Johnson,et al.  Some Simplified NP-Complete Graph Problems , 1976, Theor. Comput. Sci..

[4]  Olivier C. Martin,et al.  Partitioning of unstructured meshes for load balancing , 1995, Concurr. Pract. Exp..

[5]  Tamara G. Kolda,et al.  Graph partitioning models for parallel computing , 2000, Parallel Comput..

[6]  Chris Walshaw,et al.  Parallel optimisation algorithms for multilevel mesh partitioning , 2000, Parallel Comput..

[7]  Brian Kernighan,et al.  An efficient heuristic for partitioning graphs , 1970 .

[8]  Chris Walshaw,et al.  An Exploration of Multilevel Combinatorial Optimisation , 2003 .

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

[10]  El-Ghazali Talbi,et al.  A parallel genetic algorithm for the graph partitioning problem , 1991, ICS '91.

[11]  Kenneth Steiglitz,et al.  Combinatorial Optimization: Algorithms and Complexity , 1981 .

[12]  KarypisGeorge,et al.  Multilevelk-way Partitioning Scheme for Irregular Graphs , 1998 .

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

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

[15]  Alan Soper,et al.  The use of a biased heuristic by a genetic algorithm applied to the design of multipoint connections in a local access network , 1997 .

[16]  Julio Ortega Lopera,et al.  Annealing-based heuristics and genetic algorithms for circuit partitioning in parallel test generation , 1998, Future Gener. Comput. Syst..

[17]  Curt Jones,et al.  A Heuristic for Reducing Fill-In in Sparse Matrix Factorization , 1993, PPSC.

[18]  Byung Ro Moon,et al.  A Hybrid Genetic Algorithm for Multiway Graph Partitioning , 2000, GECCO.

[19]  Ralf Diekmann,et al.  Multilevel Mesh Partitioning for Optimizing Domain Shape , 1999, Int. J. High Perform. Comput. Appl..

[20]  Christine L. Valenzuela,et al.  Improving Heuristic Algorithms for the Travelling Salesman Problem by Using a Genetic Algorithm to Perturb the Cities , 1997, ICGA.

[21]  Larry J. Eshelman,et al.  The CHC Adaptive Search Algorithm: How to Have Safe Search When Engaging in Nontraditional Genetic Recombination , 1990, FOGA.

[22]  George Karypis,et al.  Multilevel k-way Partitioning Scheme for Irregular Graphs , 1998, J. Parallel Distributed Comput..

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

[24]  Byung-Ro Moon,et al.  A hybrid genetic search for multi-way graph partitioning based on direct partitioning , 2001 .

[25]  Shang-Hua Teng,et al.  How Good is Recursive Bisection? , 1997, SIAM J. Sci. Comput..

[26]  Geoffrey C. Fox,et al.  A Hybrid Genetic Algorithm for Task Allocation in Multicomputers , 1991, ICGA.

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

[28]  Geoffrey C. Fox,et al.  Allocating data to distributed-memory multiprocessors by genetic algorithms , 1994, Concurr. Pract. Exp..

[29]  Horst D. Simon,et al.  Fast multilevel implementation of recursive spectral bisection for partitioning unstructured problems , 1994, Concurr. Pract. Exp..

[30]  Lee Altenberg,et al.  The Schema Theorem and Price's Theorem , 1994, FOGA.

[31]  Chris Walshaw,et al.  Mesh Partitioning: A Multilevel Balancing and Refinement Algorithm , 2000, SIAM J. Sci. Comput..

[32]  Anshul Gupta,et al.  Fast and effective algorithms for graph partitioning and sparse-matrix ordering , 1997, IBM J. Res. Dev..

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

[34]  Asad I. Khan,et al.  Subdomain generation for parallel finite element analysis , 1993 .

[35]  Heinz Mühlenbein,et al.  Evolution algorithms in combinatorial optimization , 1988, Parallel Comput..

[36]  Patrick D. Surry,et al.  Fitness Variance of Formae and Performance Prediction , 1994, FOGA.