Finding optimal solutions to the graph partitioning problem with heuristic search

Research output: Contribution to journalReview articlepeer-review

19 Scopus citations


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.

Original languageEnglish
Pages (from-to)293-322
Number of pages30
JournalAnnals of Mathematics and Artificial Intelligence
Issue number3-4
StatePublished - 1 Dec 2005

ASJC Scopus subject areas

  • Artificial Intelligence
  • Applied Mathematics


Dive into the research topics of 'Finding optimal solutions to the graph partitioning problem with heuristic search'. Together they form a unique fingerprint.

Cite this