Skip to main content

Constraint Programming

  • Chapter
  • First Online:
Book cover Search Methodologies

Abstract

Constraint satisfaction problems are ubiquitous. A simple example that we will use throughout the first half of this chapter is the following scheduling problem: Choose employees A or B for each of three tasks, X, Y, Z, subject to the work rules that the same employee cannot carry out both tasks X and Y, the same employee cannot carry out both tasks Y and Z, and only employee B is allowed to carry out task Z. (Many readers will recognize this as a simple coloring problem.)

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 89.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  • Amilhastre J, Fargier H, Marquis P (2002) Consistency restoration and explanations in dynamic CSPs—application to configuration. Artif Intell 135:199–234

    Article  Google Scholar 

  • Bacchus F, Chen X, van Beek P, Walsh T (2002) Binary vs non-binary constraints. Artif Intell 140:1–37

    Article  Google Scholar 

  • Bessière C, Régin J (2001) Refining the basic constraint propagation algorithm. In: Proc. 17th IJCAI, Seattle, pp 309–315

    Google Scholar 

  • Bistarelli S, Fargier H, Montanari U, Rossi F, Schiex T, Verfaille G (1996) Semiring-based CSPs and valued CSPs: basic properties. In: Jampel M et al (eds) Over-constrained systems. LNCS 1106. Springer, Berlin, pp 111–150

    Google Scholar 

  • Cheeseman P, Kanefsky B, Taylor W (1991) Where the really hard problems are. In: Proc. 12th IJCAI, Sydney. Morgan Kaufmann, San Mateo, pp 331–337

    Google Scholar 

  • Cheng B, Choi K, Lee J, Wu J (1999) Increasing constraint propagation by redundant modeling: an experience report. Constraints 4:167–192

    Article  Google Scholar 

  • Cohen C, Jeavons P, Jefferson C, Petrie K, Smith B (2006) Symmetry definitions for constraint satisfaction problems. Constraints 11:115–137

    Article  Google Scholar 

  • Debruyne R, Bessière C (2001) Domain filtering consistencies. J Artif Intell Res 14:205–230

    Google Scholar 

  • Dechter R (1990) Enhancement schemes for constraint processing: backjumping, learning, and cutset decomposition. Artif Intell 41:273–312

    Article  Google Scholar 

  • Dechter R (2003) Constraint processing. Morgan Kaufmann, San Mateo

    Google Scholar 

  • Dechter R, Dechter A (1988) Belief maintenance in dynamic constraint networks. In: Proc. 7th AAAI, Saint Paul, pp 37–42

    Google Scholar 

  • Dechter R, Frost D (2002) Backjump-based backtracking for constraint satisfaction problems. Artif Intell 136:147–188

    Article  Google Scholar 

  • Dechter R, Meiri I, Pearl J (1991) Temporal constraint networks. Artif Intell 49:61–95

    Article  Google Scholar 

  • de Givry S, Jeannin L (2006) A unified framework for partial and hybrid search methods in constraint programming. Comput OR 33:2805–2833

    Article  Google Scholar 

  • Deransart P, Hermenegildo M, Maluszynski J (eds) (2000) Analysis and visualization tools for constraint programming. LNCS 1870. Springer, Berlin

    Google Scholar 

  • Fourer R, Gay DM, Kernighan BW (2002) AMPL: a modeling language for mathematical programming. Duxbury, Pacific Grove

    Google Scholar 

  • Freuder E (1978) Synthesizing constraint expressions. Commun ACM 11:958–966

    Article  Google Scholar 

  • Freuder E (1982) A sufficient condition for backtrack-free search. J Assoc Comput Mach 29:24–32

    Article  Google Scholar 

  • Freuder E (1985) A sufficient condition for backtrack-bounded search. J Assoc Comput Mach 32:755–761

    Article  Google Scholar 

  • Freuder E (1991) Eliminating interchangeable values in constraint satisfaction problems. In: Proc. 9th AAAI, Anaheim, pp 227–233

    Google Scholar 

  • Freuder E, Wallace R (1992) Partial constraint satisfaction. Artif Intell 58:21–70

    Article  Google Scholar 

  • Frisch A, Grum M, Jefferson C, Martinez M, Miguel I (2007) The design of ESSENCE: a constraint language for specifying combinatorial problems. In: Proc. 20th IJCAI, Hyderabad, pp 80–87

    Google Scholar 

  • Gomes C, Selman B, Crato N (1997) Heavy-tailed distributions in combinatorial search. In: Principles and practice of constraint programming-CP97. LNCS 1330. Springer, Berlin

    Google Scholar 

  • Harvey W, Ginsberg M (1995) Limited discrepancy search. In: Proc. 14th IJCAI 1995, Montreal, pp 607–615

    Google Scholar 

  • Jaffar J, Lassez J-L (1987) Constraint logic programming. In: Proceedings of the annual ACM symposium on principles of programming languages, Munich. ACM, New York, pp 111–119

    Google Scholar 

  • Jeavons P, Cooper M (1995) Tractable constraints on ordered domains. Artif Intell 79:327–339

    Article  Google Scholar 

  • Junker U (2004) QUICKXPLAIN: preferred explanations and relaxations for over-constrained problems. In: Proc. 16th AAAI 2004, San Jose, pp 167–172

    Google Scholar 

  • Katsirelos G, Bacchus F (2005) Generalized NoGoods in CSPs. In: Proceedings of the AAAI, Pittsburgh, pp 390–396

    Google Scholar 

  • Kondrak G, van Beek P (1997) A theoretical evaluation of selected backtracking algorithms. Artif Intell 89:365–387

    Article  Google Scholar 

  • Laburthe F, Caseau Y (1998) SALSA: a language for search algorithms. In: Proceedings of the 4th international conference on the principles and practice of constraint programming, Pisa, pp 310–324

    Google Scholar 

  • Mackworth A (1977) Consistency in networks of relations. Artif Intell 8:99–118

    Article  Google Scholar 

  • Marriott K, Nethercote N, Rafeh R, Stuckey PJ, Garcia de la Banda M, Wallace M (2008) The design of the Zinc modelling language. Constraints 13:229–267

    Article  Google Scholar 

  • Minton S, Johnston MD, Philips AB, Laird P (1992) Minimizing conflicts: a heuristic repair method for constraint satisfaction and scheduling. Artif Intell 58:161–205

    Article  Google Scholar 

  • Nieuwenhuis R, Oliveras A, Tinelli C (2005) Abstract DPLL and abstract DPLL modulo theories. In: Logic for programming, artificial intelligence, and reasoning. LNCS 3452. Springer, Berlin, pp 36–50

    Google Scholar 

  • O’Sullivan B (2010) Automated modelling and solving in constraint programming. In: Proceedings of the 24th National Conference on Artificial Intelligence, Atlanta, AAAI Palo Alto, pp 1493–1497

    Google Scholar 

  • O’Sullivan B (2012) Opportunities and challenges for constraint programming. In: Proceedings of the 26th National Conference on Artificial Intelligence, Atlanta, Toronto, AAAI Palo Alto, pp 2148–2152

    Google Scholar 

  • Refalo P (2004) Impact-based search strategies for constraint programming. In: Proceedings of the international conference on constraint programming (CP 2004), Toronto. LNCS 3258. Springer, Berlin, pp 557–571

    Google Scholar 

  • Régin J-C (1994) A filtering algorithm for constraints of difference in CSPs. In: Proc. 12th AAAI, Seattle, pp 362–367

    Google Scholar 

  • Régin J-C (2001) Minimization of the number of breaks in sports scheduling problems using constraint programming. In: Freuder E, Wallace R (eds) Constraint programming and large scale discrete optimization. DIMACS 57. AMS, Providence, pp 115–130

    Google Scholar 

  • Sabin D, Freuder E (1997) Understanding and improving the MAC algorithm. In: Principles and practice of constraint programming—Proc CP 1997, Linz. LNCS 1330. Springer, Berlin, pp 167–181

    Google Scholar 

  • Schrijvers T, Tack G, Wuille P, Samulowitz H, Stuckey PJ (2011) Search combinators. In: Proceedings of the international conference on constraint programming (CP 2011), Perugia. LNCS 6876. Springer, Berlin, pp 774–788

    Google Scholar 

  • Selman B, Levesque H, Mitchell D (1992) A new method for solving hard satisfiability problems. In: Proc. 10th AAAI, San Jose, pp 440–446

    Google Scholar 

  • Stuckey P (2010) Lazy clause generation: combining the power of SAT and CP (and MIP?) solving. In: Integration of AI and OR techniques in constraint programming for combinatorial optimization problems. LNCS 6140. Springer, Berlin, pp 5–9

    Google Scholar 

  • Stuckey PJ, Garcia de la Banda M, Maher M, Marriott K, Slaney J, Somogyi Z, Wallace M, Walsh T (2005) The G12 project: mapping solver independent models to efficient solutions. Logic programming, 21st international conference. LNCS 3668. Springer, Berlin, pp 9–13

    Google Scholar 

  • Tsang E (1993) Foundations of constraint satisfaction. Academic, London

    Google Scholar 

  • Van Hentenryck P (1999) The OPL optimization programming language. MIT, Cambridge

    Google Scholar 

  • Van Hentenryck P, Michel L (2009) Constraint-based local search. MIT, Cambridge

    Google Scholar 

  • Van Hentenryck P, Simonis H, Dincbas M (1992) Constraint satisfaction using constraint logic programming. Artif Intell 58:113–159

    Article  Google Scholar 

  • Walsh T (2002) Stochastic constraint programming. In: Proceedings of the ECAI-2002, Lyon. IOS, Amsterdam, pp 111–115

    Google Scholar 

  • Walsh T (2012) Symmetry breaking constraints: recent results. In: Proc. 26th AAAI, Toronto, pp 2192–2198

    Google Scholar 

  • Yokoo M, Durfee E, Ishida T, Kuwabara K (1998) The distributed CSP: formalization and algorithms. IEEE Trans Knowl Data Eng 10:673–685

    Article  Google Scholar 

Download references

Acknowledgements

Some of this material is based upon works supported by the Science Foundation Ireland under Eugene Freuder’s Grant No. 00/PI.1/C075; some of his contribution to this chapter was prepared while he was at the University of New Hampshire. Richard Wallace and Dan Sabin provided some assistance. The contents of this chapter overlap with a chapter by the same authors on Constraint Satisfaction in the Handbook of Metaheuristics, edited by Fred W. Glover and Gary A. Kochenberger, and published by Kluwer Academic Press.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mark Wallace .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer Science+Business Media New York

About this chapter

Cite this chapter

Freuder, E.C., Wallace, M. (2014). Constraint Programming. In: Burke, E., Kendall, G. (eds) Search Methodologies. Springer, Boston, MA. https://doi.org/10.1007/978-1-4614-6940-7_14

Download citation

Publish with us

Policies and ethics