Abstract
We propose and evaluate a new CNF encoding based on Zykov’s tree for computing the chromatic number of a graph. Zykov algorithms are branch-and-bound procedures, that branch on pairings of vertices that express whether or not two non-adjacent vertices have the same colour. Thus, vertices with the same colour are contracted whereas edges are added between vertices when they have different colours. Such pairings make possible the use of a well-known recurrence relation, that states that the chromatic number of a graph cannot be lower than the chromatic number of its subgraphs. Our encoding associates with any graph and integer k a CNF formula that is satisfiable if and only if the chromatic number of the graph is at least k. We first show that any colouring satisfying a complete pairing always required a fixed number of colours. Then, we establish a CNF encoding that counts the number of colours required by a pairing. However, due to a large number of clauses required to encode transitivity constraints on pairings, a direct encoding does not scale well in practice. To avoid this pitfall, we designed a CEGAR-based (Counter-Example Guided Abstraction Refinement) approach that only encodes a part of the problem and then adds the missing constraints in an incremental way until a valid solution with k colours is found or the unsatisfiability of the problem is proven, meaning that the chromatic number of the graph is greater than k. We show that our encoding scheme performs in many cases significantly better than the state-of-the-art approaches to the graph colouring problem.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
The historical name is misleading: it either merges vertices or adds non-existing edges.
- 2.
The source are accessible at: https://github.com/Mystelven/picasso.
- 3.
References
Marx, D.: Graph colouring problems and their applications in scheduling. Periodica Polytech. Electr. Eng. (Arch.) 48(1–2), 11–16 (2004)
Lewis, R.M.R.: A Guide to Graph Colouring - Algorithms and Applications. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-25730-3
Chaitin, G.J.: Register allocation and spilling via graph coloring (with retrospective). In: McKinley, K.S. (ed.) 20 Years of the ACM SIGPLAN Conference on Programming Language Design and Implementation 1979–1999, A Selection, pp. 66–74. ACM (1982)
Lewis, R., Thompson, J.M.: On the application of graph colouring techniques in round-robin sports scheduling. Comput. OR 38(1), 190–204 (2011)
Hussin, B., Basari, A.S.H., Shibghatullah, A.S., Asmai, S.A., Othman, N.S.: Exam timetabling using graph colouring approach. In: 2011 IEEE Conference on Open Systems, pp. 133–138 (2011)
Gelder, A.V.: Another look at graph coloring via propositional satisfiability. Discrete Appl. Math. 156(2), 230–243 (2008)
Schaafsma, B., Heule, M.J.H., van Maaren, H.: Dynamic symmetry breaking by simulating zykov contraction. In: Kullmann, O. (ed.) SAT 2009. LNCS, vol. 5584, pp. 223–236. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02777-2_22
Caramia, M., Dell’Olmo, P.: Coloring graphs by iterated local search traversing feasible and infeasible solutions. Discrete Appl. Math. 156(2), 201–217 (2008)
Dowsland, K.A., Thompson, J.M.: An improved ant colony optimisation heuristic for graph colouring. Discrete Appl. Math. 156(3), 313–324 (2008)
Galinier, P., Hertz, A., Zufferey, N.: An adaptive memory algorithm for the k-coloring problem. Discrete Appl. Math. 156(2), 267–279 (2008)
Brélaz, D.: New methods to color the vertices of a graph. Commun. ACM 22(4), 251–256 (1979)
Zhou, Z., Li, C.M., Huang, C., Xu, R.: An exact algorithm with learning for the graph coloring problem. Comput. OR 51, 282–301 (2014)
Hebrard, E., Katsirelos, G.: Clause learning and new bounds for graph coloring. In: Hooker, J. (ed.) CP 2018. LNCS, vol. 11008, pp. 179–194. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-98334-9_12
Clarke, E.M., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counter example-guided abstraction refinement for symbolic model checking. J. ACM 50(5) (2003)
Brummayer, R., Biere, A.: Effective bit-width and under-approximation. In: Moreno-Díaz, R., Pichler, F., Quesada-Arencibia, A. (eds.) EUROCAST 2009. LNCS, vol. 5717, pp. 304–311. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04772-5_40
Seipp, J., Helmert, M.: Counterexample-guided cartesian abstraction refinement for classical planning. J. Artif. Intell. Res. 62, 535–577 (2018)
Soh, T., Le Berre, D., Roussel, S., Banbara, M., Tamura, N.: Incremental SAT-based method with native boolean cardinality handling for the hamiltonian cycle problem. In: Fermé, E., Leite, J. (eds.) JELIA 2014. LNCS (LNAI), vol. 8761, pp. 684–693. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11558-0_52
Glorian, G., Lagniez, J.-M., Montmirail, V., Sioutis, M.: An incremental SAT-based approach to reason efficiently on qualitative constraint networks. In: Hooker, J. (ed.) CP 2018. LNCS, vol. 11008, pp. 160–178. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-98334-9_11
Lagniez, J.-M., Le Berre, D., de Lima, T., Montmirail, V.: An assumption-based approach for solving the minimal S5-satisfiability problem. In: Galmiche, D., Schulz, S., Sebastiani, R. (eds.) IJCAR 2018. LNCS (LNAI), vol. 10900, pp. 1–18. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-94205-6_1
Hooker, J.N.: Logic-based methods for optimization. In: Borning, A. (ed.) PPCP 1994. LNCS, vol. 874, pp. 336–349. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-58601-6_111
Chu, Y., Xia, Q.: A hybrid algorithm for a class of resource constrained scheduling problems. In: Barták, R., Milano, M. (eds.) CPAIOR 2005. LNCS, vol. 3524, pp. 110–124. Springer, Heidelberg (2005). https://doi.org/10.1007/11493853_10
Hooker, J.N.: A hybrid method for the planning and scheduling. Constraints 10(4) (2005)
Tran, T.T., Beck, J.C.: Logic-based benders decomposition for alternative resource scheduling with sequence dependent setups. In: Raedt, L.D., (eds.) ECAI 2012–20th European Conference on Artificial Intelligence. Including Prestigious Applications of Artificial Intelligence (PAIS-2012) System Demonstrations Track, Montpellier, France, 27–31 August 2012, Volume 242 of Frontiers in Artificial Intelligence and Applications, pp. 774–779. IOS Press (2012)
de Moura, L., Rueß, H., Sorea, M.: Lazy theorem proving for bounded model checking over infinite domains. In: Voronkov, A. (ed.) CADE 2002. LNCS (LNAI), vol. 2392, pp. 438–455. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45620-1_35
Ji, X., Ma, F.: An efficient lazy SMT solver for nonlinear numerical constraints. In: Reddy, S., Drira, K., (eds.) 21st IEEE International Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises, WETICE 2012, Toulouse, France, 25–27 June 2012, pp. 324–329. IEEE Computer Society (2012)
Gebremedhin, A.H., Manne, F., Pothen, A.: What color is your Jacobian? Graph coloring for computing derivatives. SIAM Rev. 47(4), 629–705 (2005)
Zuckerman, D.: Linear degree extractors and the inapproximability of max clique and chromatic number. Theor. Comput. 3(1), 103–128 (2007)
Tseitin, G.S.: On the complexity of derivation in propositional calculus. In: Siekmann, J.H., Wrightson, G. (eds.) Automation of Reasoning. Symbolic Computation (Artificial Intelligence), pp. 466–483. Springer, Heidelberg (1983). https://doi.org/10.1007/978-3-642-81955-1_28
Gent, I.P., Petrie, K.E., Puget, J.: Symmetry in constraint programming. In: Handbook of Constraint Programming, pp. 329–376 (2006)
Asín, R., Nieuwenhuis, R., Oliveras, A., Rodríguez-Carbonell, E.: Cardinality networks: a theoretical and empirical study. Constraints 16(2), 195–221 (2011)
Roney-Dougal, C.M., Gent, I.P., Kelsey, T., Linton, S.: Tractable symmetry breaking using restricted search trees. In: de Mántaras, R.L., Saitta, L., (eds.) Proceedings of the 16th Eureopean Conference on Artificial Intelligence, ECAI 2004, including Prestigious Applicants of Intelligent Systems, PAIS 2004, Valencia, Spain, 22–27 August 2004, pp. 211–215. IOS Press (2004)
Audemard, G., Lagniez, J.-M., Simon, L.: Improving glucose for incremental SAT solving with assumptions: application to MUS extraction. In: Järvisalo, M., Van Gelder, A. (eds.) SAT 2013. LNCS, vol. 7962, pp. 309–317. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39071-5_23
Audemard, G., Simon, L.: Predicting learnt clauses quality in modern SAT solvers. In: Boutilier, C., (ed.) IJCAI 2009, Proceedings of the 21st International Joint Conference on Artificial Intelligence, Pasadena, California, USA, 11–17 July 2009, pp. 399–404 (2009)
Davies, J., Bacchus, F.: Exploiting the power of mip solvers in maxsat. In: Järvisalo, M., Van Gelder, A. (eds.) SAT 2013. LNCS, vol. 7962, pp. 166–181. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39071-5_13
Morgado, A., Ignatiev, A., Marques-Silva, J.: MSCG: robust core-guided MaxSAT solving. JSAT 9, 129–134 (2014)
Ignatiev, A., Morgado, A., Marques-Silva, J.: PySAT: a python toolkit for prototyping with SAT oracles. In: Beyersdorff, O., Wintersteiger, C.M. (eds.) SAT 2018. LNCS, vol. 10929, pp. 428–437. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-94144-8_26
Heras, F., Morgado, A., Marques-Silva, J.: Core-guided binary search algorithms for maximum satisfiability. In: Burgard, W., Roth, D. (eds.) Proceedings of the Twenty-Fifth AAAI Conference on Artificial Intelligence, AAAI 2011, San Francisco, California, USA, 7–11 August 2011. AAAI Press (2011)
Bacchus, F., Järvisalo, M., Martins, R.: Max-SAT 2018: Thirteen Max-SAT Evaluation (2018). https://maxsat-evaluations.github.io/2018/
Janota, M., Marques-Silva, J.: On the query complexity of selecting minimal sets for monotone predicates. Artif. Intell. 233, 73–83 (2016)
Martins, R., Manquinho, V., Lynce, I.: Open-WBO: a modular MaxSAT solver. In: Sinz, C., Egly, U. (eds.) SAT 2014. LNCS, vol. 8561, pp. 438–445. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09284-3_33
Lagniez, J., Le Berre, D., de Lima, T., Montmirail, V.: A recursive shortcut for CEGAR: application to the modal logic K satisfiability problem. In: Sierra, C. (ed.) Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence, IJCAI 2017, Melbourne, Australia, 19–25 August 2017, pp. 674–680 (2017). ijcai.org
Acknowledgements
Part of this work was supported by the French Ministry for Higher Education and Research, the Haut-de-France Regional Council through the “Contrat de Plan État Région (CPER) DATA” and by the IDEX UCA\(^{\textsc {jedi}}\).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Glorian, G., Lagniez, JM., Montmirail, V., Szczepanski, N. (2019). An Incremental SAT-Based Approach to the Graph Colouring Problem. In: Schiex, T., de Givry, S. (eds) Principles and Practice of Constraint Programming. CP 2019. Lecture Notes in Computer Science(), vol 11802. Springer, Cham. https://doi.org/10.1007/978-3-030-30048-7_13
Download citation
DOI: https://doi.org/10.1007/978-3-030-30048-7_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-30047-0
Online ISBN: 978-3-030-30048-7
eBook Packages: Computer ScienceComputer Science (R0)