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
4 - Some complete constraint solvers
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
BY A constraint solver we mean any procedure that transforms a CSP into an equivalent one. In practice we are interested in efficient constraint solvers. In this book we distinguish between complete and incomplete constraint solvers.
Intuitively, a complete constraint solver transforms the initial CSP to one from which it is straightforward to generate all solutions to or to determine that no solution exists. Admittedly, this statement is imprecise. In the case of the solvers discussed in this chapter we shall make it precise by employing the notion of a solved form. Its definition depends on the type of constraints used.
We call a constraint solver that is not complete an incomplete constraint solver. Intuitively, such a constraint solver transforms the initial CSP into a simpler one, all solutions to which can be eventually found by a, possibly repeated, case analysis modeled by splitting. As such a repeated case analysis results in general in an exponential running time, we do not allow it to be a part of the constraint solvers.
For the incomplete solvers a natural question arises what they actually achieve. To clarify this issue we introduce various notions of local consistency. This explains the order of the chapters that follow. In this one we focus on some complete constraint solvers, in the next one on various notions of local consistency and in Chapter 6 we study a number of incomplete constraint solvers.
For a number of domains and constraints complete constraint solvers were developed. The aim of this chapter is to illustrate such solvers by means of three well-known examples.
- Type
- Chapter
- Information
- Principles of Constraint Programming , pp. 82 - 134Publisher: Cambridge University PressPrint publication year: 2003