Journal of Combinatorial Optimization

, Volume 31, Issue 4, pp 1665–1677 | Cite as

A fast greedy sequential heuristic for the vertex colouring problem based on bitwise operations

  • Larisa Komosko
  • Mikhail Batsyn
  • Pablo San Segundo
  • Panos M. PardalosEmail author


In this paper a fast greedy sequential heuristic for the vertex colouring problem is presented. The suggested algorithm builds the same colouring of the graph as the well-known greedy sequential heuristic in which on every step the current vertex is coloured in the minimum possible colour. Our main contributions include introduction of a special matrix of forbidden colours and application of efficient bitwise operations on bit representations of the adjacency and forbidden colours matrices. Computational experiments show that in comparison with the classical greedy heuristic the average speedup of the developed approach is 2.6 times on DIMACS instances.


Graph colouring Heuristic Bitwise operations  Greedy algorithm Sequential colouring 



The work is conducted at National Research University Higher School of Economics and supported by RSF Grant 14-41-00039.


  1. Batsyn M, Goldengorin B, Maslov E, Pardalos PM (2014) Improvements to MCS algorithm for the maximum clique problem. J Comb Optim 27:397–416MathSciNetCrossRefzbMATHGoogle Scholar
  2. Brelaz D (1979) New methods to color the vertices of a graph. Commun ACM 22:251–256MathSciNetCrossRefzbMATHGoogle Scholar
  3. Briggs P, Cooper K, Torczon L (1992) Coloring register pairs. ACM Lett Program Lang Syst 1(1):3–13CrossRefGoogle Scholar
  4. Erciyes K (2013) Vertex coloring. In: distributed graph algorithms for computer networks, pp 107–134Google Scholar
  5. Halldorsson MM (1997) Parallel and on-line graph coloring. J Algorithms 23:265–280MathSciNetCrossRefzbMATHGoogle Scholar
  6. Johnson DS (1974) Worst case behavior of graph coloring algorithms. In: Proceedings of the Fifth Southeastern Conference on Combinatorics, Graph Theory and Computing. Utilitas Mathematica Publishing, pp 513–528Google Scholar
  7. Karp Richard M (1972) Reducibility among combinatorial problems. In: Miller RE, Thatcher JW (eds) Complexity of computer computations. Plenum, New York, pp 85–103CrossRefGoogle Scholar
  8. Kochenberger G, Glover F, Alidaee B, Wang H (2005) Clustering of microarray data via clique partitioning. J Comb Optim 10(1):77–92MathSciNetCrossRefzbMATHGoogle Scholar
  9. Kosowski A, Manuszewski K (2004) Classical coloring of graphs. In: Kubale M (ed) Graph colorings. AMS Contemporary Mathematics, pp 1–20Google Scholar
  10. Malaguti E, Monaci M, Toth P (2011) An exact approach for the vertex coloring problem. Discret Optim 8(2):174–190MathSciNetCrossRefzbMATHGoogle Scholar
  11. Matula DM, Marble BG, Isaacson JD (1972) Graph coloring algorithms. In: Graph theory and computing. Academic Press, New York, pp 109–122Google Scholar
  12. Meirong X, Yuzhen W (2014) T-coloring of graphs with application to frequency assignment in cellular mobile networks. In: Proceedings of the 33rd Chinese Control Conference (CCC), 2014Google Scholar
  13. Méndez-Díaz I, Zabala P (2006) A Branch-and-cut algorithm for graph coloring. Discret Appl Math 154(5):826–847MathSciNetCrossRefzbMATHGoogle Scholar
  14. MirHassani SA, Habibi F (2013) Solution approaches to the course timetabling problem. Artif Intell Rev 39:133–149CrossRefGoogle Scholar
  15. Odaira R, Nakaike T, Inagaki T, Komatsu H, Nakatani T (2010) Coloring-based coalescing for graph coloring register allocation. In: CGO ’10: Proceedings of the 8th annual IEEE/ACM international symposium on Code generation and optimizationGoogle Scholar
  16. Pardalos PM, Mavridou T, Xue J (1999) The graph coloring problem: a bibliographic survey. In: Du DZ, Pardalos PM (ed) Handbook of combinatorial optimization, pp 1077–1141Google Scholar
  17. Porumbela DC, Hao JK, Kuntz P (2010) A search space “cartography” for guiding graph coloring heuristics. Comput Oper Res 37:769–778MathSciNetCrossRefzbMATHGoogle Scholar
  18. Radin A (2000) Graph coloring heuristics from investigation of smallest hard to color graphs. MS Thesis, Rochester Institute of TechnologyGoogle Scholar
  19. San Segundo P (2012) A new DSATUR-based algorithm for exact vertex coloring. Comput Oper Res 039(7):1724–1733MathSciNetCrossRefzbMATHGoogle Scholar
  20. San Segundo P, Rodriguez-Losada D, Jimenez A (2011) An exact bit-parallel algorithm for the maximum clique problem. Comput Oper Res 038(2):571–581MathSciNetCrossRefzbMATHGoogle Scholar
  21. Smith MD, Ramsey N, Holloway G (2004) A generalized algorithm for graph-coloring register allocation. In: PLDI ’04: Proceedings of the ACM SIGPLAN 2004 Conference on Programming language design and implementationGoogle Scholar
  22. Wang H, Alidaee B, Kochenberger GA (2004) Evaluating a clique partitioning problem model for clustering high-dimensional data mining. In: Proceedings of the 10th Americas Conference on Information Systems (AMCIS 2004), New York, NY, 6–8 August 2004Google Scholar
  23. Welsh DJA, Powell MB (1967) An upper bound for the chromatic number of a graph and its application to timetabling problems. Comput J 10(1):85–86CrossRefzbMATHGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2015

Authors and Affiliations

  • Larisa Komosko
    • 1
  • Mikhail Batsyn
    • 1
  • Pablo San Segundo
    • 2
  • Panos M. Pardalos
    • 1
    • 3
    Email author
  1. 1.Laboratory of Algorithms and Technologies for Networks AnalysisNational Research University Higher School of EconomicsNizhny NovgorodRussia
  2. 2.Centre for Automation and Robotics (UPM-CSIC)MadridSpain
  3. 3.Center for Applied OptimizationUniversity of FloridaGainesvilleUSA

Personalised recommendations