Progress towards the Holy Grail

Abstract

Twenty years ago in this journal, In Pursuit of the Holy Grail laid out a strategic vision for constraint programming. Much progress has been made towards the ideal posited in that paper. Many challenges and opportunities remain.

This is a preview of subscription content, log in to check access.

References

  1. 1.

    Akgün, Ö. (2014). Extensible automated constraint modelling via refinement of abstract problem specifications (Doctoral dissertation, University of St Andrews). St Andrews Research Repository. https://research-repository.st-andrews.ac.uk/handle/10023/6547.

  2. 2.

    Amadini, R., Gabbrielli, M., & Mauro, J. (2014). An enhanced features extractor for a portfolio of constraint solvers. In Proceedings of the 29th annual ACM symposium on applied computing (pp. 1357–1359). ACM.

  3. 3.

    Amadini, R., Gabbrielli, M., & Mauro, J. (2016). An extensive evaluation of portfolio approaches for constraint satisfaction problems. International Journal of Interactive Multimedia and Artificial Intelligence, 3(7), 81–86.

    Article  MATH  Google Scholar 

  4. 4.

    Amilhastre, J., Fargier, H., & Marquis, P. (2002). Consistency restoration and explanations in dynamic CSPs—application to configuration. Artificial Intelligence, 135(1–2), 199–234.

    MathSciNet  Article  MATH  Google Scholar 

  5. 5.

    Arbelaez, A., Hamadi, Y., & Sebag, M. (2011). Continuous search in constraint programming. In Autonomous search (pp. 219–243). Berlin: Springer.

  6. 6.

    Balafrej, A., Bessiere, C., Paparrizou, A., & 2015. Multi-armed bandits for adaptive constraint propagation. In Proceedings of the twenty-fourth international joint conference on artificial intelligence (pp. 290–296).

  7. 7.

    Beacham, A., Chen, X., Sillito, J., & Van Beek, P. (2001). Constraint programming lessons learned from crossword puzzles. In Conference of the Canadian Society for computational studies of intelligence (pp. 78–87). Berlin: Springer.

  8. 8.

    Beck, J.C., Prosser, P., & Selensky, E. (2003). Vehicle routing and job shop scheduling: what’s the difference? In ICAPS (pp. 267–276).

  9. 9.

    Beldiceanu, N., Carlsson, M., Demassey, S., & Petit, T. (2007). Global constraint catalogue: past, present and future. Constraints, 12(1), 21–62.

    MathSciNet  Article  MATH  Google Scholar 

  10. 10.

    Beldiceanu, N., & Simonis, H. (2012). A model seeker: extracting global constraint models from positive examples. In Principles and practice of constraint programming (pp. 141–157). Berlin: Springer LNCS.

  11. 11.

    Bessiere, C., Coletta, R., O’Sullivan, B., & Paulin, M. (2007). Query-driven constraint acquisition. In Proceedings of the twentieth international joint conference on artificial intelligence (pp. 50–55).

  12. 12.

    Bessiere, C., Coletta, R., & Petit, T. (2007). Learning implied global constraints. In Proceedings of the twentieth international joint conference on artificial intelligence (pp. 44-49).

  13. 13.

    Bessiere, C., Daoudi, A., Hebrard, E., Katsirelos, G., Lazaar, N., Mechqrane, Y., Narodytska, N., Quimper, C.-G., & Walsh, T. (2016). New approaches to constraint acquisition. In Data mining and constraint programming (pp. 51–76). Springer LNAI 10101.

  14. 14.

    Bessiere, C., De Raedt, L., Guns, T., Kotthoff, L., Nanni, M., Nijssen, S., O’Sullivan, B., Paparrizou, A., Pedreschi, D., & Simonis, H. (2016). The inductive constraint programming loop. In Data mining and constraint programming (pp. 303–309). Springer LNAI 10101.

  15. 15.

    Bessiere, C., De Raedt, L., Kotthoff, L., Nijssen, S., O’Sullivan, B., & Pedreschi, D. (Eds.) (2016). Data mining and constraint programming. Berlin: Springer.

  16. 16.

    Bessiere, C., Koriche, F., Lazaar, N., & O’Sullivan, B. (2017). Constraint acquisition. Artificial Intelligence, 244, 315–342.

    MathSciNet  Article  MATH  Google Scholar 

  17. 17.

    Björdal, G., Monette, J.N., Flener, P., & Pearson, J. (2015). A constraint-based local search backend for MiniZinc. Constraints, 20(3), 325–345.

    MathSciNet  Article  MATH  Google Scholar 

  18. 18.

    Borrett, J., & Tsang, E. (2001). Constraints, 6(4), 299–327.

    MathSciNet  Article  Google Scholar 

  19. 19.

    Carchrae, T., & Beck, J.C. (2005). Applying machine learning to low-knowledge control of optimization algorithms. Computational Intelligence, 21(4), 372–387.

    MathSciNet  Article  Google Scholar 

  20. 20.

    Charnley, J., Colton, S., & Miguel, I. (2006). Automatic generation of implied constraints. In Proceedings of the 17th European conference on artificial intelligence (pp. 73–77).

  21. 21.

    Colton, S., & Miguel, I. (2239). Constraint generation via automated theory formation. In Principles and practice of constraint programming—CP 2001 (pp. 575–579). Berlin: Springer LNCS.

  22. 22.

    Chu, G., & Stuckey, P. (2015). Learning value heuristics for constraint programming. In Integration of AI and OR techniques in constraint programming (pp. 108–123). Springer LNCS 9075.

  23. 23.

    Dasygenis, M., & Stergiou, K. (2014). Building portfolios for parallel constraint solving by varying the local consistency applied. In 2014 IEEE 26th international conference on tools with artificial intelligence (ICTAI) (pp. 717–724). IEEE.

  24. 24.

    De Raedt, L., Nijssen, S., O’Sullivan, B., & Hentenryck, P.V. (Eds.) (2011). Constraint programming meets machine learning and data mining. Dagstuhl Reports, 1(5), 61–83.

  25. 25.

    Deransart, P., Hermenegildo, M., & Maluszynski, J. (Eds.) (2000). Analysis and visualization tools for constraint programming constraint debugging. Springer LNCS 1870.

  26. 26.

    Deransart, P. (2004). Main results of the OADymPPaC project. In Logic programming, 20th international conference (pp. 456–457). Berlin: Springer LNCS 3132.

  27. 27.

    Elsayed, S., & Michel, L. (2011). Synthesis of search algorithms from high-level CP models. In Principles and practice of constraint programming (pp. 256–270). Springer LNCS 6876.

  28. 28.

    Epstein, S.L., Freuder, E.C., & Wallace, R.J. (2005). Learning to support constraint programmers. Computational Intelligence, 21(4), 336–371.

    MathSciNet  Article  Google Scholar 

  29. 29.

    Feldman, J. (2011). Representing and solving rule-based decision models with constraint solvers. In Rule-based modeling and computing on the semantic web, 5th International Symposium (pp. 208–221). Springer LNCS 7018.

  30. 30.

    Freuder, E. (1997). In pursuit of the holy grail. Constraints, 2(1), 57–61.

    MathSciNet  Article  MATH  Google Scholar 

  31. 31.

    Freuder, E. (2006). Constraints: the ties that bind. In Proceedings of the twenty-first national conference on artificial intelligence (pp. 1520–1523).

  32. 32.

    Freuder, E. (2007). Holy Grail Redux. Constraint Programming Letters, 1, 3–5.

    Google Scholar 

  33. 33.

    Freuder, E. (2017). Explaining ourselves: human-aware constraint reasoning. In Proceedings of the thirty-first AAAI conference on artificial intelligence (pp. 4858–4862).

  34. 34.

    Freuder, E., Likitvivatanavong, C., & Wallace, R. (2001). Deriving explanations and implications for constraint satisfaction problems. In Principles and practice of constraint programming – CP 2001 (pp. 585–589). Berlin: Springer LNCS 2239.

  35. 35.

    Freuder, E., & Sabin, D. (1997). Interchangeability supports abstraction and reformulation for multi-dimensional constraint satisfaction. In Proceedings of the fourteenth national conference on artificial intelligence (pp. 191–196).

  36. 36.

    Freuder, E., & Wallace, R. (2002). Suggestion strategies for constraint-based matchmaker agents. International Journal on Artificial Intelligence Tools, 11(01), 3–18.

    Article  Google Scholar 

  37. 37.

    Frisch, A., Harvey, W., Jefferson, C., Martínez-Hernández, B., & Miguel, I (2008). Essence: a constraint language for specifying combinatorial problems. Constraints, 13(3), 268–306.

    MathSciNet  Article  MATH  Google Scholar 

  38. 38.

    Frisch, A. (2011). A decade of progress in constraint modelling and reformulation: the quest for abstraction and automation. Invited Talk slides, ModRef, 2011, https://www-users.cs.york.ac.uk/frisch/Research/decade.pdf.

  39. 39.

    Gebruers, C., Hnich, B., Bridge, D., & Freuder, E. (2005). Using CBR to select solution strategies in constraint programming. In Case-based reasoning research and development, 6th international conference on case-based reasoning (pp. 222–236). Springer LNCS 3620.

  40. 40.

    Gelain, M., Pini, M., Rossi, F., Venable, K., & Walsh, T. (2010). Elicitation strategies for soft constraint problems with missing preferences: properties, algorithms and experimental studies. Artificial Intelligence, 174(3–4), 270–294.

    MathSciNet  Article  MATH  Google Scholar 

  41. 41.

    Gent, I., Hussain, B., Jefferson, C., Kotthoff, L., Miguel, I., Nightingale, G.F., & Nightingale, P. (2014). Discriminating instance generation for automated constraint model selection. In Principles and practice of constraint programming (pp. 356–365). Springer LNCS 8656.

  42. 42.

    Gent, I., Jefferson, C., Miguel, I., & Nightingale, P. (2010). Generating special-purpose stateless propagators for arbitrary constraints. In Principles and practice of constraint programming - CP 2010 (pp. 206–220). Berlin: Springer LNCS.

  43. 43.

    Gent, I., Kotthoff, L., Miguel, I., & Nightingale, P. (2010). Machine learning for constraint solver design—a case study for the alldifferent constraint. CoRR arXiv:1008.4326.

  44. 44.

    Gomes, C., Selman, B., Crato, N., & Kautz, H. (2000). Heavy-tailed phenomena in satisfiability and constraint satisfaction problems. Journal of Automated Reasoning, 24(1), 67–100.

    MathSciNet  Article  MATH  Google Scholar 

  45. 45.

    Goodman, B., & Flaxmanar, S. (2016). European Union regulations on algorithmic decision-making and a “right to explanation”. arXiv:1606.08813v3 [stat.ML].

  46. 46.

    Goodwin, S., Mears, C., Dwyer, T., Garcia de la Banda, M., Tack, G., & Wallace, M (2017). What do constraint programming users want to see? Exploring the role of visualisation in profiling of models and search. IEEE Transactions on Visualization and Computer Graphics, 23(1), 281–290.

    Article  Google Scholar 

  47. 47.

    Grégoire, É., Mazure, B., & Piette, C. (2007). MUST: Provide a finer-grained explanation of unsatisfiability. In Principles and practice of constraint programming - CP 2007 (pp. 317–331). Springer LNCS 4741.

  48. 48.

    Hamadi, Y. (2013). Combinatorial search: from algorithms to systems. Berlin: Springer.

    Google Scholar 

  49. 49.

    Hamadi, Y., Monfroy, E., & Saubion, F. (Eds.) (2012). Autonomous search. Berlin: Springer.

  50. 50.

    Hammond, T., & O’Sullivan, B. (2007). Recognizing free-form hand-sketched constraint network diagrams by combining geometry and context. In Proceedings of Eurographics Ireland (pp. 67–74), Vol. 2007.

  51. 51.

    Hinton, G., Sejnowski, T., & Ackley, D. (1984). Boltzmann machines: constraint satisfaction networks that learn. Tech. Rep. CMU-CS-84-119, Carnegie Mellon University.

  52. 52.

    Hurley, B., Kotthoff, L., Malitsky, Y., & O’Sullivan, B. (2014). Proteus: a hierarchical portfolio of solvers and transformations. In Integration of AI and OR techniques in constraint programming (pp. 301–317). Springer LNCS 8451.

  53. 53.

    Junker, U. (2004). QUICKXPLAIN: preferred explanations and relaxations for over-constrained problems. In Proceedings of the nineteenth national conference on artificial intelligence (pp. 167–172).

  54. 54.

    Jussien, N., & Barichard, V. (2000). The PaLM system: explanation-based constraint programming. In CP2000 workshop on techniques for implementing constraint programming systems (pp. 118–133).

  55. 55.

    Jussien, N., & Ouis, S. (2001). User-friendly explanations for constraint programming. In Proceedings of the eleventh workshop on logic programming environments (WLPE’01). arXiv:cs/0111042v2 [cs.PL].

  56. 56.

    Kiziltan, Z., Lippi, M., & Torroni, P. (2016). Constraint detection in natural language problem descriptions. In Proceedings of the twenty-fifth international joint conference on artificial intelligence (pp. 744–750).

  57. 57.

    Kotthoff, L. (2014). Algorithm selection for combinatorial search problems: a survey. AI Magazine, 35(3), 48–60.

    Article  Google Scholar 

  58. 58.

    Kotthoff, L. (2017). Algorithm selection literature summary. http://larskotthoff.github.io/assurvey/.

  59. 59.

    Lallouet, A., Lopez, M., Martin, L., & Vrain, C. (2010). On learning constraint problems. In Proceedings of the 22nd IEEE international conference on tools for artificial intelligence, IEEE-ICTAI’10 (pp. 45–52).

  60. 60.

    Law, Y., Lee, J., & Smith, B. (2007). Automatic generation of redundant models for permutation constraint satisfaction problems. Constraints, 12(4), 469–505.

    MathSciNet  Article  MATH  Google Scholar 

  61. 61.

    Liffiton, M., Previti, A., Malik, A., & Marques-Silva, J. (2016). Fast, flexible MUS enumeration. Constraints, 21(2), 223–250.

    MathSciNet  Article  MATH  Google Scholar 

  62. 62.

    Loreggia, A., Malitsky, Y., Samulowitz, H., & Saraswat, V. (2016). Deep learning for algorithm portfolios. In Proceedings of the thirtieth AAAI conference on artificial intelligence (pp. 1280– 1286).

  63. 63.

    Marriott, K., Nethercote, N., Rafeh, R., Stuckey, P, de la Banda, M., & Wallace, M (2008). The design of the zinc modelling language. Constraints, 13(3), 229–267.

    MathSciNet  Article  MATH  Google Scholar 

  64. 64.

    Mazeran, E., & Puget, J.-F. (2017). Machine learning, optimization and rules : time for agility and convergence. DecisionCAMP-2017 (and RuleML+RR 2017). http://2017.ruleml-rr.org/decisioncamp-2017/decisioncamp-2017-schedule/.

  65. 65.

    Mears, C., & de la Banda, M. (2015). Towards automatic dominance breaking for constraint optimization problems. In Proceedings of the twenty-fourth international joint conference on artificial intelligence (pp. 360–366).

  66. 66.

    Michel, L. (2012). Constraint programming and a usability quest. In Principles and practice of constraint programming - CP 2012 (p. 1). Springer LNCS 7514.

  67. 67.

    Minton, S. (1996). Automatically configuring constraint satisfaction programs: A case study. Constraints, 1(1/2), 7–43.

    MathSciNet  Article  Google Scholar 

  68. 68.

    Monette, J., Deville, Y., & Van Hentenryck, P. (2009). Aeon: synthesizing scheduling algorithms from high-level models. In J.W. Chinneck, B. Kristjansson, M.J. Saltzman (Eds.), Operations research and cyber-infrastructure (pp. 43–59). Springer ORCS 47.

  69. 69.

    Nadel, B. (1990). Representation selection for constraint satisfaction: a case study using n-queens. IEEE Expert, 5, 16–23.

    Article  Google Scholar 

  70. 70.

    Nethercote, N., Stuckey, P., Becket, R., Brand, S., Duck, G., & Tack, G. (2007). MiniZinc: towards a standard CP modelling language. In Principles and Practice of Constraint Programming - CP 2007 (pp. 529-543). Springer LNCS 4741.

  71. 71.

    Nightingale, P., Akgün, Ö., Gent, I., Jefferson, C., Miguel, I., & Spracklen, P. (2017). Automatically improving constraint models in Savile Row. Artificial Intelligence, 251, 35–61.

    MathSciNet  Article  MATH  Google Scholar 

  72. 72.

    Nordlander, T., Freuder, E., & Wallace, R. (2007). Maintaining constraint-based applications. In Proceedings of the 4th international conference on Knowledge capture (pp. 79–86). ACM.

  73. 73.

    O’Mahony, E., Hebrard, E., Holland, A., Nugent, C., & O’Sullivan, B. (2008). Using case-based reasoning in an algorithm portfolio for constraint solving. In Proceedings of the 19th Irish conference on artificial intelligence (pp. 210–216).

  74. 74.

    Ortiz-Bayliss, J., Terashima-Marín, H., & Conant-Pablos, S. (2015). Lifelong learning selection hyper-heuristics for constraint satisfaction problems. In Mexican international conference on artificial intelligence (pp. 190–201). Springer LNCS 9413.

  75. 75.

    O’Sullivan, B., Papadopoulos, A., Faltings, B., & Pu, P. (2007). Representative explanations for over-constrained problems. In Proceedings of the twenty-second national conference on artificial intelligence (pp. 323–328).

  76. 76.

    O’Sullivan, B. (2010). Automated modelling and solving in constraint programming. In Proceedings of the twenty-fourth national conference on artificial intelligence (pp. 1493–1497).

  77. 77.

    Picard-Cantin, É., Bouchard, M., Quimper, C., & Sweeney, J. (2016). Learning parameters for the Sequence constraint from solutions. In Principles and practice of constraint programming (pp. 405–420). Springer LNCS 9892.

  78. 78.

    Puget, J.-F. (2004). Constraint programming next challenge: simplicity of use. In Principles and practice of constraint programming - CP 2004 (pp. 5–8). Springer LNCS 3258.

  79. 79.

    Rossi, F., & Sperduti, A. (2004). Acquiring both constraint and solution preferences in interactive constraint systems. Constraints, 9(4), 311–332.

    Article  Google Scholar 

  80. 80.

    Sabin, M., & Freuder, E. (1996). Automated formulation of constraint satisfaction problems. In Proceedings of the thirteenth national conference on artificial intelligence (p. 1407).

  81. 81.

    Sample, T., & Mouhoub, M. (2011). Augmenting spreadsheets with constraint satisfaction. In 2011 24th Canadian conference on electrical and computer engineering (CCECE) (pp. 1028–1031). IEEE.

  82. 82.

    Shchekotykhin, K., & Friedrich, G. (2009). Argumentation based constraint acquisition. In Ninth IEEE international conference on data mining (pp. 476–482).

  83. 83.

    Smith, D., & Westfold, S. (2013). Toward the synthesis of constraint solvers. Tech. Rep. TR-1311, Kestrel Institute.

  84. 84.

    Sqalli, M., & Freuder, E. (1996). Inference-based constraint satisfaction supports explanation. In Proceedings of the thirteenth national conference on artificial intelligence (pp. 318–325).

  85. 85.

    Wallace, R., & Freuder, E. (2001). Explanations for whom? In First international workshop on user-interaction in constraint satisfaction (pp. 119–130).

  86. 86.

    Yun, X., & Epstein, S. (2012). Learning algorithm portfolios for parallel execution. In Learning and intelligent optimization (pp. 323–338). Springer LNCS 7219.

Download references

Acknowledgments

This publication has emanated from research conducted with the financial support of Science Foundation Ireland (SFI) under Grant Number SFI/12/RC/2289. The paper contains material derived from the helpful reviews, for which I thank the reviewers. An earlier version of portions of this paper appeared in [33].

Author information

Affiliations

Authors

Corresponding author

Correspondence to Eugene C. Freuder.

Additional information

This article belongs to the Topical Collection: 20th Anniversary Issue

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Freuder, E.C. Progress towards the Holy Grail. Constraints 23, 158–171 (2018). https://doi.org/10.1007/s10601-017-9275-0

Download citation

Keywords

  • Acquisition
  • Solution
  • Explanation
  • Automation
  • Usability
  • Modelling