Learning from Learning Solvers

  • Maxim Shishmarev
  • Christopher Mears
  • Guido Tack
  • Maria Garcia de la Banda
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9892)


Modern constraint programming solvers incorporate SAT-style clause learning, where sets of domain restrictions that lead to failure are recorded as new clausal propagators. While this can yield dramatic reductions in search, there are also cases where clause learning does not improve or even hinders performance. Unfortunately, the reasons for these differences in behaviour are not well understood in practice. We aim to cast some light on the practical behaviour of learning solvers by profiling their execution. In particular, we instrument the learning solver Chuffed to produce a detailed record of its execution and extend a graphical profiling tool to appropriately display this information. Further, this profiler enables users to measure the impact of the learnt clauses by comparing Chuffed’s execution with that of a non-learning solver, and examining the points at which their behaviours diverge. We show that analysing a solver’s execution in this way can be useful not only to better understand its behaviour — opening what is typically a black box — but also to infer modifications to the original constraint model that can improve the performance of both learning and non-learning solvers.



We thank the anonymous reviewers who pointed to overlooked related work and provided useful comments. This research was partly sponsored by the Australian Research Council grant DP140100058.

Supplementary material

419601_1_En_29_MOESM1_ESM.pdf (2.5 mb)
Supplementary material 1 (pdf 2539 KB)


  1. 1.
    Audemard, G., Simon, L.: Predicting learnt clauses quality in modern SAT solvers. In: Proceedings of the 21st International Joint Conference on Artifical Intelligence IJCAI 2009, pp. 399–404 (2009)Google Scholar
  2. 2.
    Baatar, D., Boland, N., Brand, S., Stuckey, P.J.: CP and IP approaches to cancer radiotherapy delivery optimization. Constraints 16(2), 173–194 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Barták, R.: Effective modeling with constraints. In: Seipel, D., Hanus, M., Geske, U., Bartenstein, O. (eds.) INAP/WLP 2004. LNCS (LNAI), vol. 3392, pp. 149–165. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Chu, G.G.: Improving combinatorial optimization. Ph.d. thesis, The University of Melbourne (2011)Google Scholar
  5. 5.
    Feydy, T., Stuckey, P.J.: Lazy clause generation reengineered. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 352–366. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    Silva, J.P.M., Sakallah, K.A.: GRASP - a new search algorithm for satisfiability. In: Proceedings of the 1996 IEEE/ACM International Conference on Computer-Aided Design ICCAD 1996, pp. 220–227. IEEE Computer Society, Washington, DC (1996)Google Scholar
  7. 7.
    Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: Proceedings of the 38th Design Automation Conference, pp. 530–535. ACM (2001)Google Scholar
  8. 8.
    Newsham, Z., Lindsay, W., Liang, J.H., Czarnecki, K., Fischmeister, S., Ganesh, V.: SATGraf: visualizing community structure in boolean SAT instances. In: Heule, M., Weaver, S. (eds.) Theory and Applications of Satisfiability Testing – SAT 2015. LNCS, vol. 9340, pp. 62–70. Springer, Heidelberg (2015)CrossRefGoogle Scholar
  9. 9.
    Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Abstract DPLL and abstract DPLL modulo theories. In: Baader, F., Voronkov, A. (eds.) LPAR 2004. LNCS (LNAI), vol. 3452, pp. 36–50. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  10. 10.
    Ohrimenko, O., Stuckey, P.J., Codish, M.: Propagation = lazy clause generation. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 544–558. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  11. 11.
    Schulte, C., Tack, G., Lagerkvist, M.Z.: Modeling and programming with Gecode (2016).
  12. 12.
    Schutt, A., Feydy, T., Stuckey, P.J., Wallace, M.G.: Why cumulative decomposition is not as bad as it sounds. In: Gent, I.P. (ed.) CP 2009. LNCS, vol. 5732, pp. 746–761. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. 13.
    Schutt, A., Stuckey, P.J., Verden, A.R.: Optimal carpet cutting. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 69–84. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  14. 14.
    Shishmarev, M., Mears, C., Tack, G., Garcia de la Banda, M.: Visual search tree profiling. Constraints 21(1), 77–94 (2016)Google Scholar
  15. 15.
    Stuckey, P.J., Feydy, T., Schutt, A., Tack, G., Fischer, J.: The MiniZinc challenge 2008–2013. AI Mag. 35(2), 55–60 (2014)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Maxim Shishmarev
    • 1
  • Christopher Mears
    • 1
    • 2
  • Guido Tack
    • 1
    • 2
  • Maria Garcia de la Banda
    • 1
    • 2
  1. 1.Faculty of ITMonash UniversityMelbourneAustralia
  2. 2.Data61/CSIROMelbourneAustralia

Personalised recommendations