|
PaLM features
PaLM is a:
- constraint solver
PaLM is a
fully featured constraint programming system handling arithmetical
constraints, CSP-like constraints, symbolic constraints
(element, allDifferent, ...), boolean
combinations of constraints, ... The explanation-based features
of PaLM can be completely set appart to provide a classical
constraint programming: note that explanations will still be used for
search !
- explanation-capable constraint solver
PaLM does not only solve constraint problem but is also able to
provide explanations to the user on what has been done:
- Why my problem does not have any solution ?
- Why variable x cannot take value a in a
solution ?
- Why is variable x currently assigned to a ?
PaLM provides tools to access this information in a
user-friendly way.
- dynamic constraint solver
PaLM allows to dynamically add and remove constraints
- before solving: to interactively modify the problem to be solve
- during solving: to be able to add or/and remove constraints in
response to outside modifications
- after solving: to be able to reuse a solution and to continue the
search.
PaLM is a completely interactive constraint solver.
- over-constrained problem solver
PaLM can also
solve over-constrained problems by combining the two preceding
features (explanation capabilities to determine set of constraints
responsible for lack of solution and dynamic capabilities for
dynamically removing responsible constraints).
- e-constraints programming system
Explanations have many
more usages (see the applications
page for an overview) and PaLM provides many tools to take
advantage of explanations.
- PaLM is finally a claire 1 module to be used as a choco 2 extension. You can download it here.
The manual and online tutorials illustrate those
facets of PaLM.
Bibliography
- [Caseau and Laburthe, 1996] Yves Caseau and François Laburthe.
CLAIRE: Combining objects and rules for problem solving.
Proceedings of JICSLP, workshop on multi-paradigm logic
programming, 1996.
- [Laburthe, 2000] François Laburthe. Choco: implementing a cp kernel.
In CP00 Post Conference Workshop on Techniques for Implementing
Constraint programming Systems (TRICS), Singapore, September 2000.
Notes
|