Computational Optimization and Applications

, Volume 54, Issue 3, pp 741–770 | Cite as

Graph 3-coloring with a hybrid self-adaptive evolutionary algorithm

  • Iztok FisterEmail author
  • Marjan Mernik
  • Bogdan Filipič


This paper proposes a hybrid self-adaptive evolutionary algorithm for graph coloring that is hybridized with the following novel elements: heuristic genotype-phenotype mapping, a swap local search heuristic, and a neutral survivor selection operator. This algorithm was compared with the evolutionary algorithm with the SAW method of Eiben et al., the Tabucol algorithm of Hertz and de Werra, and the hybrid evolutionary algorithm of Galinier and Hao. The performance of these algorithms were tested on a test suite consisting of randomly generated 3-colorable graphs of various structural features, such as graph size, type, edge density, and variability in sizes of color classes. Furthermore, the test graphs were generated including the phase transition where the graphs are hard to color. The purpose of the extensive experimental work was threefold: to investigate the behavior of the tested algorithms in the phase transition, to identify what impact hybridization with the DSatur traditional heuristic has on the evolutionary algorithm, and to show how graph structural features influence the performance of the graph-coloring algorithms. The results indicate that the performance of the hybrid self-adaptive evolutionary algorithm is comparable with, or better than, the performance of the hybrid evolutionary algorithm which is one of the best graph-coloring algorithms today. Moreover, the fact that all the considered algorithms performed poorly on flat graphs confirms that graphs of this type are really the hardest to color.


Graph 3-coloring Constraint satisfaction Local search Evolutionary algorithms Self-adaptation 


  1. 1.
    Aarts, E., Lenstra, J.K.: Local Search in Combinatorial Optimization. Princeton University Press, Princeton (1997) zbMATHGoogle Scholar
  2. 2.
    Avanthay, C., Hertz, A., Zufferey, N.: A variable neighborhood search for graph coloring. Eur. J. Oper. Res. 151, 379–388 (2003) MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Bäck, T.: Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Programming, Genetic Algorithms. Oxford University Press, Oxford (1996) zbMATHGoogle Scholar
  4. 4.
    Blöchliger, I., Zufferey, N.: A reactive tabu search using partial solutions for the graph coloring problem. In: Kral, D., Sgall, J. (eds.) Coloring Graphs from Lists with Bounded Size of their Union: Result from Dagstuhl Seminar 03391. ITI-Series, vol. 156. Department of Applied Mathematics and Institute for Theoretical Computer Science, Prague (2003) Google Scholar
  5. 5.
    Blöchliger, I., Zufferey, N.: A graph coloring heuristic using partial solutions and a reactive tabu scheme. Comput. Oper. Res. 35(3), 960–975 (2008) MathSciNetzbMATHCrossRefGoogle Scholar
  6. 6.
    Blum, C., Puchinger, J., Raidl, G.A., Roli, A.: Hybrid metaheuristics in combinatorial optimization: a survey. Appl. Soft Comput. 11(6), 4135–4151 (2011) CrossRefGoogle Scholar
  7. 7.
    Blum, C., Roli, A.: Metaheuristics in combinatorial optimization: overview and conceptual comparison. ACM Comput. Surv. 35(3), 268–308 (2003) CrossRefGoogle Scholar
  8. 8.
    Boettcher, S., Percus, A.G.: Extremal optimization at the phase transition of the three-coloring problem. Phys. Rev. E 69(6), 66–73 (2004) CrossRefGoogle Scholar
  9. 9.
    Bondy, J.A., Murty, U.S.R.: Graph Theory. Springer, Berlin (2008) zbMATHCrossRefGoogle Scholar
  10. 10.
    Brelaz, D.: New methods to color vertices of a graph. Commun. ACM 22, 251–256 (1979) MathSciNetzbMATHCrossRefGoogle Scholar
  11. 11.
    Brown, R.: Chromatic scheduling and the chromatic number problem. Manag. Sci. 19(4), 456–463 (1972) zbMATHCrossRefGoogle Scholar
  12. 12.
    Burke, E.K., McCollum, B., Meisels, A., Petrovic, S., Qu, R.: A graph-based hyper-heuristic for timetabling problems. Eur. J. Oper. Res. 176(1), 177–192 (2007) MathSciNetzbMATHCrossRefGoogle Scholar
  13. 13.
    Chams, M., Hertz, A., de Werra, D.: Some experiments with simulated annealing for coloring graphs. Eur. J. Oper. Res. 32, 260–266 (1987) zbMATHCrossRefGoogle Scholar
  14. 14.
    Cheeseman, P., Kanefsky, B., Taylor, W.M.: Where the really hard problems are. In: Proceedings of the International Joint Conference on Artificial Intelligence, vol. 1, pp. 331–337. Morgan Kaufmann, San Mateo (1991) Google Scholar
  15. 15.
    Chiarandini, M., Dumitrescu, I., Stützle, T.: Stochastic local search algorithms for the graph colouring problem. In: Gonzalez, T.F. (ed.) Handbook of Approximation Algorithms and Metaheuristics. Computer & Information Science Series, vol. 63, pp. 1–17. Chapman & Hall/CRC, Boca Raton (2007). Preliminary version available as Tech. Rep. AIDA-05-03 at Intellectics Group, Computer Science Department, Darmstadt University of Technology, Darmstadt, Germany Google Scholar
  16. 16.
    Chiarandini, M., Stützle, T.: Online compendium to the article: an analysis of heuristics for vertex colouring. Accessed 20 December 2010
  17. 17.
    Chiarandini, M., Stützle, T.: An application of iterated local search to graph coloring. In: Johnson, D.S., Mehrotra, A., Trick, M. (eds.) Proceedings of the Computational Symposium on Graph Coloring and its Generalizations, Ithaca, NY, USA, September 2002, pp. 112–125 (2002) Google Scholar
  18. 18.
    Chiarandini, M., Stützle, T.: An analysis of heuristics for vertex colouring. In: Festa, P. (ed.) Proceedings of the 9th International Symposium. Lecture Notes in Computer Science, vol. 6049, pp. 326–337. Springer, Berlin (2010) Google Scholar
  19. 19.
    Chow, F.C., Hennessy, J.L.: The priority-based coloring approach to register allocation. ACM Trans. Program. Lang. Syst. 12(4), 501–536 (1990) CrossRefGoogle Scholar
  20. 20.
    Culberson, J.: Graph Coloring Page. Accessed 20 December 2010
  21. 21.
    Culberson, J., Luo, F.: Exploring the k-colorable landscape with iterated greedy. In: Johnson, D.S., Trick, M.A. (eds.) Cliques, Coloring and Satisfiability: Second DIMACS Implementation Challenge, pp. 245–284. American Mathematical Society, Rhode Island (1996) Google Scholar
  22. 22.
    de Werra, D.: An introduction to timetabling. Eur. J. Oper. Res. 19(2), 151–162 (1985) zbMATHCrossRefGoogle Scholar
  23. 23.
    de Werra, D., Eisenbeis, C., Lelait, S., Marmol, B.: On a graph-theoretical model for cyclic register allocation. Discrete Appl. Math. 93(2–3), 191–203 (1999) MathSciNetzbMATHCrossRefGoogle Scholar
  24. 24.
    Demšar, J.: Statistical comparisons of classifiers over multiple data sets. J. Mach. Learn. Res. 7, 1–30 (2006) MathSciNetzbMATHGoogle Scholar
  25. 25.
    Dorne, R., Hao, J.K.: A new genetic local search algorithm for graph coloring. In: Eiben, A.E., Bäck, T., Schoenauer, M., Schwefel, H.P. (eds.) Parallel Problem Solving from Nature—PPSN V, 5th International Conference. Lecture Notes in Computer Science, vol. 1498, pp. 745–754. Springer, Berlin (1998) CrossRefGoogle Scholar
  26. 26.
    Eiben, A.E., Hinterding, R., Michalewicz, Z.: Parameter control in evolutionary algorithms. IEEE Trans. Evol. Comput. 3, 124–141 (1999) CrossRefGoogle Scholar
  27. 27.
    Eiben, A.E., Smith, J.E.: Introduction to Evolutionary Computing. Springer, Berlin (2003) zbMATHCrossRefGoogle Scholar
  28. 28.
    Eiben, A.E., Van Der Hauw, J.K., Van Hemert, J.I.: Graph coloring with adaptive evolutionary algorithms. J. Heuristics 4(1), 25–46 (1998) zbMATHCrossRefGoogle Scholar
  29. 29.
    Fister, I., Brest, J.: Using differential evolution for the graph coloring. In: Proceedings of IEEE SSCI2011 Symposium Series on Computational Intelligence, Piscataway, pp. 150–156 (2011) Google Scholar
  30. 30.
    Fleurent, C., Ferland, J.: Genetic and hybrid algorithms for graph coloring. Ann. Oper. Res. 63, 437–464 (1996) zbMATHCrossRefGoogle Scholar
  31. 31.
    Friedman, M.: The use of ranks to avoid the assumption of normality implicit in the analysis of variance. J. Am. Stat. Assoc. 32, 675–701 (1937) CrossRefGoogle Scholar
  32. 32.
    Friedman, M.: A comparison of alternative tests of significance for the problem of m rankings. Ann. Math. Stat. 11, 86–92 (1940) CrossRefGoogle Scholar
  33. 33.
    Galinier, P., Hao, J.K.: Hybrid evolutionary algorithms for graph coloring. J. Comb. Optim. 3(4), 379–397 (1999) MathSciNetzbMATHCrossRefGoogle Scholar
  34. 34.
    Galinier, P., Hertz, A.: A survey of local search methods for graph coloring. Comput. Oper. Res. 33, 2547–2562 (2006) MathSciNetzbMATHCrossRefGoogle Scholar
  35. 35.
    Galinier, P., Hertz, A., Zufferey, N.: An adaptive memory algorithm for the k-coloring problem. Discrete Appl. Math. 156(2), 267–279 (2008) MathSciNetzbMATHCrossRefGoogle Scholar
  36. 36.
    Gamache, M., Hertz, A., Ouellet, J.O.: A graph coloring model for a feasibility problem in monthly crew scheduling with preferential bidding. Comput. Oper. Res. 34(8), 2384–2395 (2007) zbMATHCrossRefGoogle Scholar
  37. 37.
    Gamst, A.: Some lower bounds for a class of frequency assignment problems. IEEE Trans. Veh. Technol. 35, 8–14 (1986) CrossRefGoogle Scholar
  38. 38.
    Garey, M.R., Johnson, D.S.: Computers and Intractability: a Guide to the Theory of NP-Completeness. Freeman, New York (1979) zbMATHGoogle Scholar
  39. 39.
    Garey, M.R., Johnson, D.S., So, H.C.: An application of graph coloring to printed circuit testing. IEEE Trans. Circuits Syst. 23, 591–599 (1976) MathSciNetzbMATHCrossRefGoogle Scholar
  40. 40.
    Glass, C.: Bag rationalization for a food manufacturer. J. Oper. Res. Soc. 53, 544–551 (2002) zbMATHCrossRefGoogle Scholar
  41. 41.
    Glover, F.: Future paths for integer programming and links to artificial intelligence. Comput. Oper. Res. 13(5), 533–549 (1986) MathSciNetzbMATHCrossRefGoogle Scholar
  42. 42.
    Hamiez, J.P., Hao, J.K., Glover, F.: A study of tabu search for coloring random 3-colorable graphs around the phase transition. Int. J. Appl. Metaheuristic Comput. 1(4), 1–24 (2010) CrossRefGoogle Scholar
  43. 43.
    Hayes, B.: On the threshold. Am. Sci. 91, 12–17 (2003) Google Scholar
  44. 44.
    Hertz, A., de Werra, D.: Using tabu search techniques for graph coloring. Computing 39, 345–351 (1987) MathSciNetzbMATHCrossRefGoogle Scholar
  45. 45.
    Hertz, A., Plumettaz, M., Zufferey, N.: Variable space search for graph coloring. Discrete Appl. Math. 156(13), 2551–2560 (2008) MathSciNetzbMATHCrossRefGoogle Scholar
  46. 46.
    Hoos, H.H., Stützle, T.: Stochastic Local Search: Foundations and Applications. Morgan Kaufmann, San Francisco (2005) zbMATHGoogle Scholar
  47. 47.
    Horowitz, E., Sahni, S.: Fundamentals of Computer Algorithms. Potomac, Maryland (1978) zbMATHGoogle Scholar
  48. 48.
    Igel, C., Toussaint, M.: Neutrality and self-adaptation. Nat. Comput. 2, 117–132 (2003) MathSciNetzbMATHCrossRefGoogle Scholar
  49. 49.
    Johnson, D.S., Aragon, C.R., McGeoch, L.A., Schevon, C.: Optimization by simulated annealing: an experimental evaluation, Part II; Graph coloring and number partitioning. Oper. Res. 39(3), 378–406 (1991) zbMATHCrossRefGoogle Scholar
  50. 50.
    Johnson, D.S., Trick, M.A.: Cliques, Coloring, and Satisfiability: Second DIMACS Implementation Challenge vol. 26. American Mathematical Society, Providence (1996) zbMATHGoogle Scholar
  51. 51.
    Kimura, M.: Evolutionary rate at the molecular level. Nature 217, 624–626 (1968) CrossRefGoogle Scholar
  52. 52.
    Kubale, M.: Graph Colorings. American Mathematical Society, Rhode Island (2004) zbMATHCrossRefGoogle Scholar
  53. 53.
    Leighton, F.T.: A graph coloring algorithm for large scheduling problems. J. Res. Natl. Bur. Stand. 84(6), 489–506 (1979) MathSciNetzbMATHCrossRefGoogle Scholar
  54. 54.
    Lü, Z., Hao, J.K.: A memetic algorithm for graph coloring. Eur. J. Oper. Res. 203, 241–250 (2010) zbMATHCrossRefGoogle Scholar
  55. 55.
    Mabed, H., Caminada, A., Hao, J.K.: Genetic tabu search for robust fixed channel assignment under dynamic traffic data. Comput. Optim. Appl. (2010). doi: 10.1007/s10589-010-9376-9 Google Scholar
  56. 56.
    Malaguti, E., Monaci, M., Toth, P.: A metaheuristic approach for the vertex coloring problem. INFORMS J. Comput. 20, 302–316 (2008) MathSciNetzbMATHCrossRefGoogle Scholar
  57. 57.
    Malaguti, E., Toth, P.: A survey on vertex coloring problems. In: International Transactions in Operational Research, pp. 1–34 (2009) Google Scholar
  58. 58.
    Merz, P., Freisleben, B.: Fitness landscapes and memetic algorithm design. In: Corne, D., Dorigo, M., Glover, F. (eds.) New Ideas in Optimization, pp. 245–260. McGraw-Hill, Cambridge (1999) Google Scholar
  59. 59.
    Michalewicz, Z.: Genetic Algorithms + Data Structures = Evolution Programs. Springer, Berlin (1992) zbMATHGoogle Scholar
  60. 60.
    Palubeckis, G.: A multistart tabu search approach for graph coloring. Inf. Technol. Control 4(21), 7–15 (2001) Google Scholar
  61. 61.
    Petford, A.D., Welsh, D.J.A.: A randomized 3-coloring algorithm. Discrete Math. 74, 253–261 (1989) MathSciNetzbMATHCrossRefGoogle Scholar
  62. 62.
    Smith, D.H., Hurley, S., Thiel, S.U.: Improving heuristics for the frequency assignment problem. Eur. J. Oper. Res. 107(1), 76–86 (1998) zbMATHCrossRefGoogle Scholar
  63. 63.
    Stadler, P.: Towards a theory of landscapes. In: Lopez-Pena, R. (ed.) Complex Systems and Binary Networks. Lecture Notes in Physics, vol. 461, pp. 77–163. Springer, Berlin (1995) CrossRefGoogle Scholar
  64. 64.
    Trick, M.: Network resources for coloring a graph. Accessed 20 December 2010
  65. 65.
    Turner, J.S.: Almost all k-colorable graphs are easy to color. J. Algorithms 9, 63–82 (1988) MathSciNetzbMATHCrossRefGoogle Scholar
  66. 66.
    Van, J.I.: Hemert. Jano’s Homepage. Accessed 20 December 2010

Copyright information

© Springer Science+Business Media, LLC 2012

Authors and Affiliations

  1. 1.Faculty of Electrical Engineering and Computer ScienceUniversity of MariborMariborSlovenia
  2. 2.Department of Intelligent SystemsJožef Stefan InstituteLjubljanaSlovenia

Personalised recommendations