Programming constraint services : high-level programming of standard and new constraint services - Schulte, Christian, Dr.-Ing. (Berlin ; New York : Springer, 2002)
Introduction
Constraint Programming
Motivation
Approach
Outline
Source Material. Constraint Programming
Constraints
Search
Programming. Introducing Oz Light
Overview
Oz Light: Basics
The Store
Threads
Statements
Oz Light Continued
Primitive Operations
Exceptions
Ports and Active Services
Finite Domain Constraints
Syntactic Convenience
Relations to Full Oz. Spaces for Search
Overview
Local Computation Spaces
Space Manipulation
Space Creation
Merging Spaces
Injecting into Spaces
Control and Status
Search
Alternatives
Distributable Spaces
Synchronizing on Stability
Committing to Alternatives
Cloning Spaces
Refining Commit
Situated procedure Calls: Services Reconsidered
Previous Work: Solve Combinator
Summary. Search Engines
Depth-First Search
Simplifying Control: Exceptions
Binarization
Multiple Solutions
Explicit State Representation
Limited Discrepancy Search
Best-First. Best-Solution Search
Constraining Spaces
Iterative Best-Solution Search
Branch-and-Bound Best-Solution Search
An Alternative Formulation of BAB
Prune-Search: Generalizing BAB. Recomputation
Overview
Full Recomputation
Fixed Recomputation
Why Recomputation Maters
Adaptive Recomputation. Oz Explorer: Visual Search
Development of Constraint Programs
Example: Aligning for a Photo
Features
Implementation
Evaluation
Related Work. Distributed Search
Overview
Distributed Oz
Architecture
Cooperation
Worker
Manager
Best-Solution Search
Distributed Search Engines
Evaluation. Spaces for Combinators
Overview
Space Tree
Space Tree Manipulation
Space Creation
Merginig Spaces
Injecting into Spaces
Control and Status
Stability
Status Variable
Debugging Support
Choice of Programming Language. Constraint Combinators
Introduction
Concurrent Negation
Generic Reification
Disjunction
Conditional
Andorra-Style Disjunction
Discussion and Evaluation. Implementing Oz Light
Overview
Synchronization
Store
Scheduler. Implementing Spaces
Overview
Space Tree
Nodes and Links
Threads
The Store: Model
The Store: Implementation
Stability
Runnable Threads
Speculative Constraints
Local Therads
Checking Stability
Merge
Search
Choose and Commit
Cloning Spaces
Richer Basic Constraints
Variable Aliasing
Tree Constraints
Finite Domain Constraints
Ports
Performance Overview. Other Approaches to Search
Other Constraints Programming Systems
Comparison with Trailing
Expressiveness
Implementation Issues
Criteria and Examples
Copying
Copying versus Trailing
Recomputation versus Trailing
System Comparison. Conclusion
Main Contributions
Future Work. Benchmark Problems and Platforms
Benchmark Problems
Sequential Platform
Distributed Platform. References. Index.
Includes bibliographical references and index.
Keywords: Constraint programming (Computer science)