Skip to main content
Log in

Finding optimal solutions to the graph partitioning problem with heuristic search

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

As search spaces become larger and as problems scale up, an efficient way to speed up the search is to use a more accurate heuristic function. A better heuristic function might be obtained by the following general idea. Many problems can be divided into a set of subproblems and subgoals that should be achieved. Interactions and conflicts between unsolved subgoals of the problem might provide useful knowledge which could be used to construct an informed heuristic function. In this paper we demonstrate this idea on the graph partitioning problem (GPP). We first show how to format GPP as a search problem and then introduce a sequence of admissible heuristic functions estimating the size of the optimal partition by looking into different interactions between vertices of the graph. We then optimally solve GPP with these heuristics. Experimental results show that our advanced heuristics achieve a speedup of up to a number of orders of magnitude. Finally, we experimentally compare our approach to other states of the art graph partitioning optimal solvers on a number of classes of graphs. The results obtained show that our algorithm outperforms them in many cases.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. DIMACS Implementation Challenge: The Traveling Salesman Problem, available at http://www.research.att.com/~dsj/chtsp/

  2. L. Brunetta, M. Conforti and N. Rinaldi, A branch-and-cut algorithm for the equicut problem, Mathematical Programming 78 (1997) 243–263.

    Article  MathSciNet  Google Scholar 

  3. T.N. Bui and B.R. Moon, Genetic algorithm and graph partitioning, IEEE Transactions on Computers 45(7) (1996) 87–101.

    MathSciNet  Google Scholar 

  4. P.P. Chakrabarti, S. Ghose, A. Acharya and S.C. de Sarkar, Heuristic search in restricted memory, Artificial Intelligence 41(2) (1989) 197–221.

    Article  MATH  MathSciNet  Google Scholar 

  5. J. Clausen and J. Larsson-Traff, Implementation of parallel branch and bound algorithms – Experiences with the graph partitioning problem, Annals of Operation Research 33 (1991) 331–349.

    Article  MathSciNet  MATH  Google Scholar 

  6. J.C. Cullberson and J. Schaeffer, Pattern databases, Computational Intelligence 14(3) (1998) 318–334.

    Article  MathSciNet  Google Scholar 

  7. R. Dechter and J. Pearl, Generalized best-first search strategies and the optimality of A*, Journal of the Association for Computing Machinery 32(3) (1985) 505–536.

    MATH  MathSciNet  Google Scholar 

  8. J.F. Dillenburg and P.C. Nelson, Perimeter search, Artificial Intelligence 65 (1994) 165–178.

    Article  Google Scholar 

  9. S. Edelkamp, Planning with Pattern Databases, Proceedings of the 6th European Conference on Planning (ECP-01) (2001).

  10. A. Felner, Improving search techniques and using them on different environments, Ph.D thesis, Department of Computer Science, Bar-Ilan University, Ramat-Gan, Israel, available at http://www.ise.bgu.ac.il/facutly/felner, 2001.

  11. A. Felner, R.E. Korf and Sarit Hanan, Additive pattern database heuristics, Journal of Artificial Intelligence Research (JAIR) 22 (2004) 279–318.

    MATH  MathSciNet  Google Scholar 

  12. A. Ferreira, A. Martin, C.C. de Souza, R. Weismantel and L.A. Wolsey, The node capacitated graph partitioning problem: A computational study, Mathematical Programming 81 (1998) 229–256.

    MathSciNet  Google Scholar 

  13. M. Garey, D. Johnson and L. Stockmeyer, Some simplefied np-complete graph problems, Theorethical Computer Science 1 (1976) 237–267.

    Article  MATH  MathSciNet  Google Scholar 

  14. P.E. Hart, N.J. Nilsson and B. Raphael, A formal basis for the heuristic determination of minimum cost paths, IEEE Transactions on Systems Science and Cybernetics, SCC-4(2) (1968) 100–107.

    Google Scholar 

  15. B. Hendrickson and R. Leland, The chaco user’s guide, Technical Report, SAND94-2692, Sandia National Laboratories (1994).

  16. I.T. Hernádvölgyi, Searching for Macro Operators with Automatically Generated Heuristics, Advances in Artificial Intelligence – Proceedings of the Fourteenth Biennial Conference of the Canadian Society for Computational Studies of Intelligence (LNAI 2056), pp. 194–203, 2001.

  17. Feng-Hsiung Hsu, Behind Deep Blue: Building the Computer that Defeated the World (Princeton University Press, 2002).

  18. D.S. Johnson, C.R. Aragon, L.A. McGeoch and C. Schevon, Optimization by simulated allealing: An experimental evaluation: Part 1. Graph Partitioning, Operations Research 37 (1989) 121–133.

    Article  Google Scholar 

  19. E.L. Johnson, A. Mehrotra and G.L. Nemhauser, Min-cut clustering, Mathematical Programming 62 (1993) 133–151.

    Article  MathSciNet  Google Scholar 

  20. A. Junghanns and J. Schaeffer, Sokoban: Enhancing general single-agent search methods using domain knowledge, Artificial Intelligence 129 (2001) 219–251.

    Article  MathSciNet  MATH  Google Scholar 

  21. S.E. Karisch, F. Rendl and J. Clausen, Solving graph bisection problems with semidefinite programming informs, Journal of Computing 12(3) (2000) 177–191.

    MATH  MathSciNet  Google Scholar 

  22. G. Karypis and V. Kumar, A fast and high quality multilevel scheme for partitioning irregular graphs, Technical Report, 95-035, 1995.

  23. B. Kernigham and S. Lin, An efficient heiristic procedure for partitioning graphs, Bell Systems Technical Journal 49 (1970) 291–307.

    Google Scholar 

  24. R.E. Korf, Depth-first iterative-deepening: An optimal admissible tree search, Artificial Intelligence 27(1) (1985) 97–109.

    Article  MathSciNet  MATH  Google Scholar 

  25. R.E. Korf, Finding Optimal Solutions to Rubik’s Cube Using Pattern Databases, Proceedings of the Fourteenth National Conference on Artificial Intelligence, 700–705, 1997, Providence, Rhode Island.

    Google Scholar 

  26. R.E. Korf and A. Felner, Disjoint pattern database heuristics, Artificial Intelligence 134 (2002) 9–22.

    Article  MATH  Google Scholar 

  27. R.E. Korf, L. Taylor, Finding optimal solutions to the twenty-four puzzle, in: Proc of AAAI-96, (Portland Or., 1996) pp. 1202-1207.

  28. G. Manzini, BIDA*: an improved perimeter search algorithm, Artificial Intelligence 75 (1995) 347–360.

    Article  MATH  MathSciNet  Google Scholar 

  29. J.B. Oommen and E.V. de St. Croix, Graph partitioning using learning automata, IEEE Transactions On Computers 45(2) (1995) 195–208.

    Article  Google Scholar 

  30. B. Patrick, M. Amulla and M. Newborn, An upper bound on the time complexity of iteratively-deepening A*, International Journal of Artificial Intelligence and Mathematics 5 (1992) 265–277.

    Article  MATH  Google Scholar 

  31. F. Pellgrini and J. Roman, SCOTCH: A software package for static mapping by dual recursive bipartitioning of process and architecture graphs, HPCN-Europe, Springer LNCS 1067 (1996) pp. 493–498.

  32. H. Pirkul and E. Rolland, New heuristic solution procedures for the uniform graph partitioning problem, Computers and Operations research (1991).

  33. R. Preis and R. Diekmann, PARTY – A software library for graph partitioning, Technical Report, University of Paderborn, 1997.

  34. E. Rolland and H. Pirkul, A Lagrangian Based Heuristic for Uniform Graph Partitioning, Computers and Operations research (1999) 87–99.

  35. S.J. Russell, Efficient memory-bounded search methods, Proc of ECAI-92 (1992).

  36. K. Schloegel, G. Karypis and V. Kumar, Graph Partitioning for High Performance Scientific Simulations, CRPC Parallel Computing Handbook, 2000.

  37. A. Sen and A. Bagchi, Fast recursive formulations for best-first search that allow controlled use of memory, in: Proc of IJCAI-89, (Detroit, MI, 1989) pp. 297–302

  38. N. Sensen, Lower Bounds and Exact Algorithms for the Graph Partitioning Problem with Multicommodity FLows, Algorithms – ESA (2001) pp. 391–403, 2001.

  39. C. Walshaw, Parallel JOSTLE userguide, Technical Report, 1998.

  40. W. Zhang and R.E. Korf, Performance of linear-space search algorithms, Artificial Intelligence 79 (1995) 241–292.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ariel Felner.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Felner, A. Finding optimal solutions to the graph partitioning problem with heuristic search. Ann Math Artif Intell 45, 293–322 (2005). https://doi.org/10.1007/s10472-005-9001-2

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10472-005-9001-2

Keywords

Navigation