Abstract
Graph coloring is a classical NP-hard combinatorial optimization problem with many practical applications. A broad range of heuristic methods exist for tackling the graph coloring problem: from fast greedy algorithms to more time-consuming metaheuristics. Although the latter produce better results in terms of minimizing the number of colors, the former are widely employed due to their simplicity. These heuristic methods are centralized since they operate by using complete knowledge of the graph. However, in real-world environmets where each component only interacts with a limited number of other components, the only option is to apply decentralized methods. This paper explores a novel and simple algorithm for decentralized graph coloring that uses a fixed number of colors and iteratively reduces the edge conflicts in the graph. We experimentally demonstrate that, for most of the tested instances, the new algorithm outperforms a recent and very competitive algorithm for decentralized graph coloring in terms of coloring quality. In our experiments, the fixed number of colors used by the new algorithm is controlled in a centralized manner.
Similar content being viewed by others
References
Al-Omari, H., Sabri, K.E.: New graph coloring algorithms. Am. J. Math. Stat. 2(4), 739–741 (2006)
Avanthay, C., Hertz, A., Zufferey, N.: A variable neighborhood search for graph coloring. Eur. J. Oper. Res. 151, 379–388 (2003)
Barnier, N., Brisset, P.: Graph coloring for air traffic flow management. Ann. Oper. Res. 130(1), 163–178 (2004)
Blöchliger, I., Zufferey, N.: A graph coloring heuristic using partial solutions and a reactive tabu scheme. Comp. Oper. Res. 35(3), 960–975 (2008)
Blum, C., Calvo, B., Blesa, M.J.: FrogCOL and FrogMIS: new decentralized algorithms for finding large independent sets in graphs. Swarm Intell. 9, 205–227 (2015)
Brélaz, D.: New methods to color the vertices of a graph. Commun. ACM 22, 251–256 (1979)
Brown, J.R.: Chromatic scheduling and the chromatic number problem. Manag. Sci. 19, 456–463 (1972)
Burke, E.K., Elliman, D.G., Weare, R.F.: A university timetabling system based on graph colouring and constraint manipulation. J. Res. Comput. Educ. 27(1), 1–18 (1994)
Caprara, A., Kroon, L., Monaci, M., Peeters, M., Tooth, P.: Passenger railway optimization. In: Barnhart, C., Laporte, G. (eds.) Handbook in Operations Research and Management Science, pp. 129–187. Elsevier, Amsterdam (2007)
Chaitin, G.J.: Register allocation & spilling via graph coloring. In: Proceedings of the 1982 SIGPLAN Symposium on Compiler Construction, pp. 98–105. ACM (1982)
Chams, M., Hertz, A., de Werra, D.: Some experiments with simulated annealing for coloring graphs. Eur. J. Oper. Res. 32(2), 260–266 (1987)
Coleman, T.F., Moré, J.J.: Estimation of sparse Jacobian matrices and graph coloring problems. SIAM J. Numer. Anal. 20(1), 187–209 (1983)
Culberson, J.C., Luo, F.: Exploring the k-colorable landscape with iterated greedy. In: DIMACS Series in Discrete Mathematics and Theoretical Computer Science, pp. 245–284. American Mathematical Society (1995)
Davis, L.: Order-based genetic algorithms and the graph coloring problem. In: Davis, L. (ed.) Handbook of Genetic Algorithms, pp. 72–90. Van Nostrand Reinhold, New York (1991)
Fitzpatrick, S., Meertens, L.: Soft, real-time, distributed graph coloring using decentralized, synchronous, stochastic, iterative-repair, anytime algorithms. Technical Report KES.U.01.05, Kestrel Institute, Palo Alto, CA (2001)
Fleurent, C., Ferland, J.: Genetic and hybrid algorithms for graph coloring. Ann. Oper. Res. 63(3), 437–461 (1996)
Galinier, P., Hamiez, J.P., Hao, J.K., Porumbel, D.: Recent advances in graph vertex coloring. In: Zelinka, I., Snášel, V., Abraham, A. (eds.) Handbook of Optimization: From Classical to Modern Approach, pp. 505–528. Springer, Berlin (2013)
Galinier, P., Hao, J.K.: Hybrid evolutionary algorithms for graph coloring. J. Comb. Optim. 3, 379–397 (1999)
Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman and Company, New York (1974)
Gebremedhin, A.H., Manne, F., Pothen, A.: What color is your Jacobian? Graph coloring for computing derivatives. SIAM Rev. 47(4), 629–705 (2005)
Glass, C.A.: Bag rationalisation for a food manufacturer. J. Oper. Res. Soc. 53, 544–551 (2002)
Gualandi, S., Malucelli, F.: Exact solution of graph coloring problems via constraint programming and column generation. INFORMS J. Comput. 24(1), 81–100 (2012)
Guo, C., Zhong, L.C., Rabaey, J.M.: Low power distributed mac for ad hoc sensor radio networks. In: Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM 2001), pp. 2944–2948. IEEE Press (2001)
Hale, W.K.: Frequency assignment theory and applications. Proc. IEEE 68(12), 1497–1514 (1980)
Hernández, H., Blum, C.: Distributed graph coloring: an approach based on the calling behavior of Japanese tree frogs. Swarm Intell. 6, 117–150 (2012)
Hernández, H., Blum, C.: FrogSim: distributed graph coloring in wireless ad hoc networks. Telecommun. Syst. 55, 211–223 (2014)
Hertz, A., Plumettaz, M., Zufferey, N.: Variable space search for graph coloring. Discret. Appl. Math. 156(13), 2551–2560 (2008)
Hertz, A., de Werra, D.: Using tabu search techniques for graph coloring. Computing 39(4), 345–351 (1987)
Johnson, D.S.: Approximation algorithms for combinatorial problems. J. Comput. Syst. Sci. 9(3), 256–278 (1974)
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)
Johnson, D.S., Trick, M.A.: Cliques, Coloring, and Satisfiability: Second DIMACS Implementation Challenge. American Mathematical Society, Providence (1996)
Keshavarzian, A., Lee, H., Venkatraman, L.: Wakeup scheduling in wireless sensor networks. In: Proceedings of the 7th ACM International Symposium on Mobile Ad-Hoc Networking and Computing (MobiHoc 06), pp. 322–333. ACM Press (2006)
Kosowski, A., Manuszewski, K.: Classical coloring of graphs. In: Kubale, M. (ed.) Graph Colorings, pp. 1–20. American Mathematical Society, Providence (2004)
Laurent, B., Hao, J.K.: List-graph colouring for multiple depot vehicle scheduling. Int. J. Math. Oper. Res. 1(1), 228–245 (2009)
Leighton, F.T.: A graph coloring algorithm for large scheduling problems. J. Res. Natl. Bur. Stand. 84(6), 489–503 (1979)
Leith, D.J., Clifford, P.: Convergence of distributed learning algorithms for optimal wireless channel allocation. In: Proceedings of the 45th IEEE Conference on Decision and Control, pp. 2980–2985. IEEE (2006)
Lewandowski, G., Condon, A.: Experiments with parallel graph coloring heuristics and applications of graph coloring. In: Johnson, D.J., Trick, M.A. (eds.) Cliques, Coloring, and Satisfiability: Second DIMACS Implementation Challenge, pp. 309–334. American Mathematical Society, Providence (1996)
Lim, A., Wang, F.: Robust graph coloring for uncertain supply chain management. In: Proceedings of the 38th Annual Hawaii International Conference on System Sciences (HICSS’05), pp. 263–277. IEEE (2005)
Lund, C., Yannakakis, M.: On the hardness of approximating minimization problems. J. ACM 41(5), 960–981 (1994)
Malaguti, E., Monaci, M., Toth, P.: A metaheuristic approach for the vertex coloring problem. INFORMS J. Comput. 20(2), 302–316 (2008)
Malaguti, E., Monaci, M., Toth, P.: An exact approach for the vertex coloring problem. Discret. Optim. 8(2), 174–190 (2011)
Matula, D.W., Marble, G., Isaacson, J.: Graph coloring algorithms. In: Read, R. (ed.) Graph Theory and Computing, pp. 109–122. Academic Press, New York (1972)
Meertens, L., Fitzpatrick, S.: Asynchronous execution and communication latency in distributed constraint optimization. In: Proceedings of the 3rd International Workshop on Distributed Constraint Reasoning, International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS’2002), pp. 80–85 (2002)
Mehrotra, A., Trick, M.A.: A column generation approach for graph coloring. INFORMS J. Comput. 8(4), 344–354 (1996)
Méndez-Díaz, I., Zabala, P.: A cutting plane algorithm for graph coloring. Discret. Appl. Math. 156, 159–179 (2008)
Minton, S., Johnston, M.D., Philips, A.B., Laird, P.: Minimizing conflicts: a heuristic repair method for constraint satisfaction and scheduling problems. Artif. Intell. 58, 161–205 (1992)
Park, T., Lee, C.Y.: Application of the graph coloring algorithm to the frequency assignment problem. J. Oper. Res. Soc. Jpn. 39(2), 258–265 (1996)
Peemöller, J.: A correction to Brélaz’s modification of Brown’s coloring algorithm. Commun. ACM 26, 593–597 (1983)
Thompson, J., Dowsland, K.: An improved ant colony optimisation heuristic for graph colouring. Discret. Appl. Math. 156, 313–324 (2008)
Turner, J.S.: Almost all k-colorable graphs are easy to color. J. Algorithms 9(1), 63–82 (1988)
Welsh, D., Powell, M.: An upper bound for the chromatic number of a graph and its application to timetabling problems. Comput. J. 12, 317–322 (1967)
de Werra, D.: An introduction to timetabling. Eur. J. Oper. Res. 19(2), 151–162 (1985)
Wilensky, U.: Center for Connected Learning and Computer Science, Northwestern University, Evanston, IL. NetLogo. http://ccl.northwestern.edu/netlogo/ (1999)
Woo, T.K., Su, S.Y.W., Newman-Wolfe, R.: Resource allocation in a dynamically partitionable bus network using a graph coloring algorithm. IEEE Trans. Commun. 39(12), 1794–1801 (1991)
Zhang, W., Wang, G., Xing, Z., Wittenburg, L.: Distributed stochastic search and distributed breakout: properties, comparison and applications to constraint optimization problems in sensor networks. Artif. Intell. 161, 55–87 (2005)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Galán, S.F. Simple decentralized graph coloring. Comput Optim Appl 66, 163–185 (2017). https://doi.org/10.1007/s10589-016-9862-9
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10589-016-9862-9