Book contents
- Frontmatter
- Contents
- Acknowledgements
- 1 Introduction
- 2 Constraint satisfaction problems: examples
- 3 Constraint programming in a nutshell
- 4 Some complete constraint solvers
- 5 Local consistency notions
- 6 Some incomplete constraint solvers
- 7 Constraint propagation algorithms
- 8 Search
- 9 Issues in constraint programming
- Bibliography
- Author index
- Subject index
3 - Constraint programming in a nutshell
Published online by Cambridge University Press: 15 December 2009
- Frontmatter
- Contents
- Acknowledgements
- 1 Introduction
- 2 Constraint satisfaction problems: examples
- 3 Constraint programming in a nutshell
- 4 Some complete constraint solvers
- 5 Local consistency notions
- 6 Some incomplete constraint solvers
- 7 Constraint propagation algorithms
- 8 Search
- 9 Issues in constraint programming
- Bibliography
- Author index
- Subject index
Summary
AT THIS STAGE it is useful to get a better feeling of what constraint programming is about. Recall that we stated in Chapter 1 that in constraint programming the programming process is limited to a generation of constraints and a solution of these constraints by means of domain specific or general methods. The aim of this chapter is to provide an intuitive introduction to these methods. In the subsequent chapters we shall discuss them in a more detailed and precise way.
To discuss these techniques it is useful to formalise appropriate notions of equivalence between CSPs. We do this in Section 3.1. Then we describe in Section 3.2 a general framework which allows us to explain the basics of constraints programming. It involves various procedures that capture specific aspects of constraint programming. Subsequently we illustrate these procedures by means of two extended examples. In Section 3.3 we consider the Boolean CSPs and in Section 3.4 constrained optimization problems involving the polynomial constraints on integer intervals.
Equivalence of CSPs
We mentioned already in Chapter 1 that we view constraint programming as a process of transforming the CSPs. To describe this process closer it is useful to formalise a number of notions concerning CSPs.
First, recall that a constraint C on a sequence of variables y1, …, yk with respective domains D1, …, Dk associated with them is a subset of D1 × … × Dk.
- Type
- Chapter
- Information
- Principles of Constraint Programming , pp. 54 - 81Publisher: Cambridge University PressPrint publication year: 2003