- Up -
Next >>
Table of Contents
Table of Contents
1 Implementing Propagators
1.1 Basic Concepts
1.1.1 Computation with Constraints in Oz
1.1.2 Implementation of Propagators
1.2 Getting Started
1.2.1 Prerequisites
1.2.2 Building a Propagator
A Propagator's Class Definition
The Propagation Part of a Propagator
Creating a Propagator
1.3 Replacing a Propagator
1.3.1 A Twice Propagator
1.3.2 Equality Detection and Replacement
1.3.3 Benefits of Replacing Propagators
1.4 Imposing Propagators
1.4.1 Basic Concepts
1.4.2 Imposing Nestable Propagators
1.4.3 Customizing
OZ_Expect
1.5 Using Vectors in Propagators
1.5.1 The
element
Constraint
1.5.2 The Class Definition of
ElementProp
1.5.3 The Header Function
1.5.4 Iterators Make Life Easier
1.5.5 Implementing the Propagation Rules
1.6 Connecting Finite Domain and Finite Set Constraints
1.6.1 The Class Definition
1.6.2 The Propagation Function
1.6.3 The Header Function and Connecting to the Native Functor Interface
1.6.4 Testing the Propagator
1.7 Advanced Topics
1.7.1 Detecting Equal Variables in a Vector
1.7.2 Avoiding Redundant Copying
1.7.3 Reified Constraints
2 Building Constraint Systems from Scratch
2.1 The Generic Part of the C
PI
2.1.1 The Model of a Generic Constraint Solver
2.1.2 Overview over Generic Part of the C
PI
2.2 A Casestudy: Real Interval Constraints
2.2.1 An Implementation
A Definition Class for Real-Interval Constraints
Determining Wake-up Events for Real-Interval Constraints
The Actual Real-Interval Constraint
Accessing the Constraint Store
Extending
OZ_Expect
A Simple Propagator
2.2.2 The Reference of the Implemented Real-Interval Constraint Solver
3 Employing Linear Programming Solvers
3.1 Introduction
3.2 The Finite Domain Model
3.3 The Linear Programming Model
3.4 Combining Both Models
3.5 Short Evalution
Bibliography
Index
- Up -
Next >>
Tobias Müller
Version 1.4.0 (20080702)