Skip to main content
Log in

A polynomially searchable exponential neighbourhood for graph colouring

  • Theoretical Paper
  • Published:
Journal of the Operational Research Society

Abstract

In this paper, we develop a new graph colouring strategy. Our heuristic is an example of a so-called polynomially searchable exponential neighbourhood approach. The neighbourhood is that of permutations of the colours of vertices of a subgraph. Our approach provides a solution method for colouring problems with edge weights. Results for initial tests on unweighted K-colouring benchmark problems are presented. Our colour permutation move was found in practice to be too slow to justify its use on these problems. By contrast, our implementation of iterative descent, which incorporates a permutation kickback move, performed extremely well. Moreover, our approach may yet prove valuable for weighted K-colouring. In addition, our approach offers an improved measure of the distance between colourings of a graph.

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.

Figure 1
Figure 2
Figure 3
Figure 4

Similar content being viewed by others

References

  • Glass CA (2002). Bag rationalisation by near-optimal colouring. J Opl Res Soc 53: 544–551.

    Article  Google Scholar 

  • Brélaz D (1979). New methods to color vertices of a graph. Comm ACM 22: 251–256.

    Article  Google Scholar 

  • Culberson JC and Luo F (1996). Exploring the k-colorable landscape with iterated greedy. In: Johnson DS and Trick MA (eds). Cliques, Coloring, and Satisfiability: Second DIMACS Implementation Challenge, 1993, DIMACS Series in Discrete Mathematics and Theoretical Computer Science, Vol 26. American Mathematical Society, Providence, RJ, pp 245–284.

    Google Scholar 

  • Hertz A and De Werra D (1987). Using tabu search techniques for graph coloring. Computing 39: 345–351.

    Article  Google Scholar 

  • Fleurent C and Ferland JA (1996). Genetic and hybrid algorithms for graph coloring. Ann Opns Res 63: 437–461.

    Article  Google Scholar 

  • Costa D, Hertz A and Dubuis O (1995). Embedding a sequential procedure within an evolutionary algorithm for coloring problems. J Heurist 1: 105–128.

    Article  Google Scholar 

  • Galinier P and Hao JK (1999). Hybrid evolutionary algorithms for graph coloring. J Combin Optim 3: 379–397.

    Article  Google Scholar 

  • Johnson DS, Aragon CR, McGeoch LA and Schevon C (1991). Optimization by simulated annealing: an experimental evaluation; Part II graph coloring and number partitioning. Opns Res 39: 378–406.

    Article  Google Scholar 

  • Morgenstern C (1996). Distributed coloration neighborhood search. In: Johnson DS and Trick MA (eds). Cliques, Coloring, and Satisfiability: Second DIMACS Implementation Challenge, 1993, DIMACS Series in Discrete Mathematics and Theoretical Computer Science, Vol 26. American Mathematical Society, Providence, RJ, pp 335–357.

    Google Scholar 

  • Sarvanov VI and Doroshko NN (1981). Approximate solution of the traveling salesman problem by a local algorithm with scanning neighbourhood of factorial cardinality in cubic time. Software: algorithms and programs, Mathematical Institute of the Belorussian Academy of Science 31: 11–13.

    Google Scholar 

  • Gutin G (1999). Exponential neighbourhood local search for the traveling salesman problem. Comput Opns Res 26: 313–320.

    Article  Google Scholar 

  • Punnen AP (1996). Traveling salesman problem: new polynomial approximation algorithms and domination analysis. Research Report, University of New Brunswick, Canada.

    Google Scholar 

  • Deineko V and Woeginger GJ (2000). A study of exponential neighborhoods for the travelling salesman problem and for the quadratic assignment problem. Math Programm 87: 519–542.

    Article  Google Scholar 

  • Congram R Potts CN and van de Velde SL (2002). An iterated dynasearch algorithm for the single-machine total weighted tardiness scheduling problem. Informs J Comput 14: 52–67.

    Article  Google Scholar 

  • Carpaneto G and Toth P (1980). Algorithm 548: solution of the assignment problem. ACM Trans Math Software 6: 104–111.

    Article  Google Scholar 

  • Glass CA and Prügel-Bennett A (2000). A polynomially searchable exponential neighbourhood for graph colouring. Technical Report, DASS, City University, London, UK.

    Google Scholar 

  • Bollobás B (1988). The chromatic number of random graphs. Combinatorica 8: 49–55.

    Article  Google Scholar 

Download references

Acknowledgements

We thank Alain Hertz for his initial encouragement and interest in our approach, and two anonymous referees for constructive suggestions that have improved the presentation in this article.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to C A Glass.

Appendix: Implementation details of vertex descent and permutation kickstarts

Appendix: Implementation details of vertex descent and permutation kickstarts

We implemented vertex descent efficiently by first computing a table giving the relative cost of colouring each vertex, i, to a particular colour, μ (with all other vertices left the same)

The ‘best colours’ for a vertex are those for which c(i, μ)⩽c(i, ν) for all ν. From our table we compute a colour list, L(i)s, of best colours for each vertex. To perform vertex descent for a vertex i, we choose one of the colours in the colour list L(i). When a vertex changes colour, we update the colour table for all its adjacent vertices and if necessary their colour lists. Keeping this information is efficient because, for any reasonable colouring, the vast majority of vertices have only one element in its list and so do not need to be updated. The overhead of computing the original cost table is reduced by performing many sweeps at a time.

The disruptive permutation move used in KickstartP is performed as follows. A subgraph is chosen randomly and the corresponding permutation matrix on colour classes constructed as for PermImprove. The minimum non-zero element in the matrix is then added to the (zero) elements of the diagonal. If this is not sufficient to ensure that the Hungarian algorithm finds a different solution, then the number along the diagonal is increased until it does. In the absence of permutation descent, kickstart was performed differently. KickstartV randomly selects a fraction, 5%, of the vertices and randomly recolours them.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Glass, C., Prügel-Bennett, A. A polynomially searchable exponential neighbourhood for graph colouring. J Oper Res Soc 56, 324–330 (2005). https://doi.org/10.1057/palgrave.jors.2601815

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1057/palgrave.jors.2601815

Keywords

Navigation