Christian Schulte (eds.)3540433716, 9783540433712
Constraint Programming is an approach for modeling and solving combi- torial problems that has proven successful in many applications. It builds on techniques developed in Arti?cial Intelligence, Logic Programming, and – erations Research. Key techniques are constraint propagation and heuristic search. Constraint Programming is based on an abstraction that decomposes a problem solver into a reusable constraint engine and a declarative program modeling the problem. The constraint engine implements the required pr- agation and search algorithms. It can be realized as a library for a general purpose programming language (e.g. C++), as an extension of an existing language (e.g. Prolog), or as a system with its own dedicated language. The present book is concerned with the architecture and implementation of constraint engines. It presents a new, concurrent architecture that is far superior to the sequential architecture underlying Prolog. The new archit- ture is based on concurrent search with copying and recomputation rather than sequential search with trailing and backtracking. One advantage of the concurrent approach is that it accommodates any search strategy. Furth- more, it considerably simpli?es the implementation of constraint propagation algorithms since it eliminates the need to account for trailing and backtra- ing. The book investigates an expressive generalization of the concurrent – chitecture that accommodates propagation-preserving combinators (known as deep guard combinators) for negation, disjunction, implication, and re- cation of constraint propagators. Such combinators are beyond the scope of Prolog’s technology. In the concurrent approach they can be obtained with a re?ective encapsulation primitive. |
Table of contents : Introduction….Pages 1-7 Constraint Programming….Pages 9-14 Introducing Oz Light….Pages 15-27 Spaces for Search….Pages 29-44 Search Engines….Pages 45-54 Best-Solution Search….Pages 55-58 Recomputation….Pages 59-67 Oz Explorer:Visual Search….Pages 69-78 Distributed Search….Pages 79-91 Spaces for Combinators….Pages 93-104 Constraint Combinators….Pages 105-116 Implementing Oz Light….Pages 117-120 Implementing Spaces….Pages 121-141 Other Approaches to Search….Pages 143-152 Conclusion….Pages 153-156 |
Reviews
There are no reviews yet.