Journal of Global Optimization

, Volume 29, Issue 2, pp 225–241 | Cite as

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

  • A.J. Soper
  • C. Walshaw
  • M. Cross
Article

Abstract

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.

evolutionary search genetic algorithms graph-partitioning multilevel optimisation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Altenberg, L. (1995), The schema theorem and price's theorem, In: Whitley, L.D. and Vose, M.D. (eds), Foundations of Genetic Algorithms 3, Morgan Kaufmann, San Mateo, pp. 23-49.Google Scholar
  2. 2.
    Barnard, S.T. and Simon, H.D. (1994), A fast multilevel implementation of recursive spectral bisection for partitioning unstructured problems, Concurrency: Practice & Experience, 6(2), 101-117.Google Scholar
  3. 3.
    Bui, T.N. and Jones, C. (1993), A heuristic for reducing fill-in in sparse matrix factorization, In: Sincovec, R.F. et al. (ed.), Parallel Processing for Scienti.c Computing, SIAM, Philadelphia, pp. 445-452.Google Scholar
  4. 4.
    Bui, T.N. and Moon, B.R. (1996), Genetic algorithms and graph partitioning, IEEE Trans. Comput., 45(7), 841-855.Google Scholar
  5. 5.
    Eshelman, L.J. (1991), The CHC adaptive search algorithm: How to have safe search when engaging in non-traditional genetic recombination, In: Rawlins, G.J.E. (ed.), Foundations of Genetic Algorithms, Morgan Kaufmann, San Mateo, pp. 265-283.Google Scholar
  6. 6.
    Fiduccia, C.M. and Mattheyses, R.M. (1982), A linear time heuristic for improving network partitions. In: Proc. 19th IEEE Design Automation Conf., pp. 175-181. IEEE, Piscataway, NJ.Google Scholar
  7. 7.
    Garey, M.R., Johnson, D.S. and Stockmeyer, L. (1976), Some simplified NP-complete graph problems, Theoret. Comput. Sci., 1, 237-267.Google Scholar
  8. 8.
    Gil, C., Ortega, J., Diaz, A.F. and Montoya, M.G. (1998), Annealing-based heuristics and genetic algorithms for circuit partitioning in parallel test generation, Future Generation Comput. Syst., 14(5), 439-451.Google Scholar
  9. 9.
    Goldberg, D. (1989), Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley.Google Scholar
  10. 10.
    Gupta, A. (1996), Fast and effective algorithms for graph partitioning and sparse matrix reordering, IBM J. Res. Development, 41(1/2), 171-183.Google Scholar
  11. 11.
    Hendrickson, B. and Kolda, T.G. (2000), Graph partitioning models for parallel computing. Parallel Comput., 26(12), 1519-1534.Google Scholar
  12. 12.
    Hendrickson, B. and Leland, R. (1995), A multilevel algorithm for partitioning graphs, In: Karin, S. (ed.), Proc. Supercomputing '95, San Diego. ACM Press, New York.Google Scholar
  13. 13.
    Kang, S. and Moon, B.R. (2000), A hybrid genetic algorithm for multiway graph partitioning. In: Whitley, D. et al. (ed.), Proc. Genetic & Evolutionary Comput. Conf. (GECCO-2000), pp. 159-166. Morgan Kaufmann, San Francisco.Google Scholar
  14. 14.
    Karypis, G. and Kumar, V. (1998), A fast and high quality multilevel scheme for partitioning irregular graphs, SIAM J. Sci. Comput., 20(1), 359-392.Google Scholar
  15. 15.
    Karypis, G. and Kumar, V. (1998), Multilevel k-way partitioning scheme for irregular graphs, J. Parallel Distrib. Comput., 48(1), 96-129.Google Scholar
  16. 16.
    Kernighan, B.W. and Lin, S. (1970), An efficient heuristic for partitioning graphs, Bell Syst. Tech. J., 49, 291-308.Google Scholar
  17. 17.
    Khan, A.I. and Topping, B.H.V. (1993), Subdomain generation for parallel finite element analysis, Computing Systems Engrg., 4(4–6), 473-488.Google Scholar
  18. 18.
    Kim, J.P. and Moon, B.R. (2001), A hybrid genetic search for multi-way graph partitioning based on direct partitioning, In: Spector, L. et al. (ed.), Proc. Genetic & Evolutionary Comput. Conf. (GECCO-2001), pp. 408-415. Morgan Kaufmann, San Francisco.Google Scholar
  19. 19.
    Mansour, N. and Fox, G.C. (1994), Allocating data to distributed-memory multiprocessors by genetic algorithms, Concurrency: Practice & Experience, 6(6), 485-504.Google Scholar
  20. 20.
    Muhlenbein, H., Gorges-Schleuter, M. and Kramer, O. (1988), Evolution algorithms in combinatorial optimisation, Parallel Comput., 7(1), 65-85.Google Scholar
  21. 21.
    Papadimitriou, C.H. and Stieglitz, K. (1982), Combinatorial Optimization: Algorithms and Complexity. Prentice-Hall, Englewood Cliffs, NJ.Google Scholar
  22. 22.
    Simon, H.D. and Teng, S.-H. (1997), How good is recursive bisection? SIAM J. Sci. Comput., 18(5), 1436-1445.Google Scholar
  23. 23.
    Soper, A.J. and McKenzie, S. (1997), The use of a biased heuristic by a genetic algorithm applied to the design of multipoint connections in a local access network. In: Proc. GALESIA '97, pp. 113-116, (2nd IEE Intl. Conf. Genetic Algorithms: Innovations and Applications, Glasgow).Google Scholar
  24. 24.
    Soper, A.J., Walshaw, C. and Cross, M. (2000), A combined evolutionary search and multilevel optimisation approach to graph partitioning. Tech. Rep. 00/IM/58, Comp. Math. Sci., Univ. Greenwich, London SE10 9LS, UK.Google Scholar
  25. 25.
    Talbi, E. and Bessiere, P. (1991), A parallel genetic algorithm for the graph partitioning problem. In: Proc. Intl. Conf. Supercomputing, ACM Press, New York, pp. 312-320.Google Scholar
  26. 26.
    Valenzuela, C.L. and Williams, L.P. (1997), Improving heuristic algorithms for the traveling salesman problem by using a genetic algorithm to perturb the cities. In: Back, T. (ed.), Proc. 7th Intl. Conf. Genetic Algorithms, Morgan Kaufmann, San Mateo, pp. 458-464.Google Scholar
  27. 27.
    von Laszewski, G. (1991), Intelligent structural operators for the k-way graph partitioning problem, In: Belew, R.K. and Booker, L.B. (eds.), Proc. 4th Intl. Conf. Genetic Algorithms, Morgan Kaufmann, San Francisco, pp. 45-52.Google Scholar
  28. 28.
    Walshaw, C. (2002), An Exploration of Multilevel Combinatorial Optimisation. In: Cong, J. and Shinnerl, J. (eds.), Multilevel Optimization in VLSIDAD, Kluwer Academic Publishers, Boston, pp. 71-123. (Invited Paper).Google Scholar
  29. 29.
    Walshaw, C. and Cross, M. (2000), Mesh partitioning: a multilevel balancing and refinement algorithm. SIAM J. Sci. Comput. 22(1), 63-80 (originally published as Univ. Greenwich Tech. Rep. 98/IM/35).Google Scholar
  30. 30.
    Walshaw, C. and Cross, M. (2000), Parallel optimisation algorithms for multilevel mesh partitioning, Parallel Comput. 26(12), 1635-1660 (originally published as Univ. Greenwich Tech. Rep. 99/IM/44).Google Scholar

Copyright information

© Kluwer Academic Publishers 2004

Authors and Affiliations

  • A.J. Soper
    • 1
  • C. Walshaw
    • 1
  • M. Cross
    • 1
  1. 1.School of Computing and Mathematical SciencesUniversity of GreenwichGreenwichLondon, UK (e-mail

Personalised recommendations