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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
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.
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.
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.
Amilhastre, J., Fargier, H., & Marquis, P. (2002). Consistency restoration and explanations in dynamic CSPs—application to configuration. Artificial Intelligence, 135(1–2), 199–234.
Arbelaez, A., Hamadi, Y., & Sebag, M. (2011). Continuous search in constraint programming. In Autonomous search (pp. 219–243). Berlin: Springer.
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).
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.
Beck, J.C., Prosser, P., & Selensky, E. (2003). Vehicle routing and job shop scheduling: what’s the difference? In ICAPS (pp. 267–276).
Beldiceanu, N., Carlsson, M., Demassey, S., & Petit, T. (2007). Global constraint catalogue: past, present and future. Constraints, 12(1), 21–62.
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.
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).
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).
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.
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.
Bessiere, C., De Raedt, L., Kotthoff, L., Nijssen, S., O’Sullivan, B., & Pedreschi, D. (Eds.) (2016). Data mining and constraint programming. Berlin: Springer.
Bessiere, C., Koriche, F., Lazaar, N., & O’Sullivan, B. (2017). Constraint acquisition. Artificial Intelligence, 244, 315–342.
Björdal, G., Monette, J.N., Flener, P., & Pearson, J. (2015). A constraint-based local search backend for MiniZinc. Constraints, 20(3), 325–345.
Borrett, J., & Tsang, E. (2001). Constraints, 6(4), 299–327.
Carchrae, T., & Beck, J.C. (2005). Applying machine learning to low-knowledge control of optimization algorithms. Computational Intelligence, 21(4), 372–387.
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).
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.
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.
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.
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.
Deransart, P., Hermenegildo, M., & Maluszynski, J. (Eds.) (2000). Analysis and visualization tools for constraint programming constraint debugging. Springer LNCS 1870.
Deransart, P. (2004). Main results of the OADymPPaC project. In Logic programming, 20th international conference (pp. 456–457). Berlin: Springer LNCS 3132.
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.
Epstein, S.L., Freuder, E.C., & Wallace, R.J. (2005). Learning to support constraint programmers. Computational Intelligence, 21(4), 336–371.
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.
Freuder, E. (1997). In pursuit of the holy grail. Constraints, 2(1), 57–61.
Freuder, E. (2006). Constraints: the ties that bind. In Proceedings of the twenty-first national conference on artificial intelligence (pp. 1520–1523).
Freuder, E. (2007). Holy Grail Redux. Constraint Programming Letters, 1, 3–5.
Freuder, E. (2017). Explaining ourselves: human-aware constraint reasoning. In Proceedings of the thirty-first AAAI conference on artificial intelligence (pp. 4858–4862).
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.
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).
Freuder, E., & Wallace, R. (2002). Suggestion strategies for constraint-based matchmaker agents. International Journal on Artificial Intelligence Tools, 11(01), 3–18.
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.
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.
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.
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.
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.
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.
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.
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.
Goodman, B., & Flaxmanar, S. (2016). European Union regulations on algorithmic decision-making and a “right to explanation”. arXiv:1606.08813v3 [stat.ML].
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.
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.
Hamadi, Y. (2013). Combinatorial search: from algorithms to systems. Berlin: Springer.
Hamadi, Y., Monfroy, E., & Saubion, F. (Eds.) (2012). Autonomous search. Berlin: Springer.
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.
Hinton, G., Sejnowski, T., & Ackley, D. (1984). Boltzmann machines: constraint satisfaction networks that learn. Tech. Rep. CMU-CS-84-119, Carnegie Mellon University.
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.
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).
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).
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].
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).
Kotthoff, L. (2014). Algorithm selection for combinatorial search problems: a survey. AI Magazine, 35(3), 48–60.
Kotthoff, L. (2017). Algorithm selection literature summary. http://larskotthoff.github.io/assurvey/.
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).
Law, Y., Lee, J., & Smith, B. (2007). Automatic generation of redundant models for permutation constraint satisfaction problems. Constraints, 12(4), 469–505.
Liffiton, M., Previti, A., Malik, A., & Marques-Silva, J. (2016). Fast, flexible MUS enumeration. Constraints, 21(2), 223–250.
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).
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.
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/.
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).
Michel, L. (2012). Constraint programming and a usability quest. In Principles and practice of constraint programming - CP 2012 (p. 1). Springer LNCS 7514.
Minton, S. (1996). Automatically configuring constraint satisfaction programs: A case study. Constraints, 1(1/2), 7–43.
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.
Nadel, B. (1990). Representation selection for constraint satisfaction: a case study using n-queens. IEEE Expert, 5, 16–23.
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.
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.
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.
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).
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.
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).
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).
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.
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.
Rossi, F., & Sperduti, A. (2004). Acquiring both constraint and solution preferences in interactive constraint systems. Constraints, 9(4), 311–332.
Sabin, M., & Freuder, E. (1996). Automated formulation of constraint satisfaction problems. In Proceedings of the thirteenth national conference on artificial intelligence (p. 1407).
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.
Shchekotykhin, K., & Friedrich, G. (2009). Argumentation based constraint acquisition. In Ninth IEEE international conference on data mining (pp. 476–482).
Smith, D., & Westfold, S. (2013). Toward the synthesis of constraint solvers. Tech. Rep. TR-1311, Kestrel Institute.
Sqalli, M., & Freuder, E. (1996). Inference-based constraint satisfaction supports explanation. In Proceedings of the thirteenth national conference on artificial intelligence (pp. 318–325).
Wallace, R., & Freuder, E. (2001). Explanations for whom? In First international workshop on user-interaction in constraint satisfaction (pp. 119–130).
Yun, X., & Epstein, S. (2012). Learning algorithm portfolios for parallel execution. In Learning and intelligent optimization (pp. 323–338). Springer LNCS 7219.
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
Authors and Affiliations
Corresponding author
Additional information
This article belongs to the Topical Collection: 20th Anniversary Issue
Rights and permissions
About this article
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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-017-9275-0