R. Dechter, Constraint Processing, Morgan Kaufmann (2003)

Constraint satisfaction is a relatively young research area of Artificial Intelligence addressing combinatorial optimization problems. Until recent years, there were only a few books describing the topic so it was not easy for newcomers to get in and to understand the techniques behind constraint satisfaction. This situation hindered education in the area so the community did not grow and develop as much as it could. It also led and still leads to many misunderstandings about constraint satisfaction techniques; the most embarrassing one is putting equality between constraint satisfaction and simple enumeration. The book Constraint Processing by Rina Dechter with contributions from David Cohen, Peter Jeavons, and Francesca Rossi is a welcome introduction to the field of constraint satisfaction that will help researchers, educators, and students understand what constraint processing is about. It is a comprehensive book that can be used as a companion for courses on constraint satisfaction especially because the reader does not need to be an expert in the area to understand the text. The introductory character of the book makes it easy to read; nevertheless advanced students and researchers may also find deeper information on some topics there. Rina Dechter is an excellent researcher with contributions in many areas of constraint satisfaction and this is reflected in the book in both good and bad sense. Let us now go through the contents of the book in more detail. The main text is split into basic and advanced parts; navigation through the contents is simplified by a chapter flow diagram. A very nice feature is a unified structure of all chapters. After the main text in a chapter there is always a summary, bibliographical notes, and exercises. That is great for those that want to scan briefly the contents of the chapter before deciding to read it or that want to continue in deeper studies of the topic. Exercises will surely be welcomed by teachers. Chapter 1 is a standard book introduction describing the basic concepts of constraint satisfaction including some examples and giving mathematical background necessary for reading of the text. The basics of sets, graphs, and complexity theory are explained there