Skip to main content

COLETTE, prototyping CSP solvers using a rule-based language

  • Conference paper
  • First Online:
Book cover Artificial Intelligence and Symbolic Computation (AISC 1998)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 1476))

Abstract

We are interested in modelling constraint solving as a deduction process. In previous works we have described how a constraint solver can be viewed as a strategy that specifies the order of application of a set of rules, to transform a set of constraints into a solved form. In this framework, the computation process is associated to a constructive proof of a formula. On one hand, the use of transformation rules allows to prove termination in a very easy way. On the other, the use of strategies allows to describe constraint handling in a very abstract way, prototype new heuristics almost by modifying only the choice of rules, and combine constraint solver in the same theoretical framework. In this paper, we introduce COLETTE, an implementation of these ideas using ELAN, a rule-based language. We exemplify step by step how a flexible strategy language allows to prototype existing algorithms for solving CSPs. The theoretical and practical results show that this approach could be useful for better understand constraint solving.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ILOG Solver 4.0, User’s Manual, May 1997.

    Google Scholar 

  2. K. R. Apt. A Proof Theoretic View of Constraint Programming. Fundamenta Informaticae, 1998. To appear.

    Google Scholar 

  3. P. Borovanský, C. Kirchner, and H. Kirchner. Rewriting as a Unified Specification Tool for Logic and Control: The ELAN Language. In Proceedings of The International Workshop on Theory and Practice of Algebraic Specifications, ASF+SDF’97, Workshops in Computing, Amsterdam, September 1997. Springer-Verlag.

    Google Scholar 

  4. P. Borovanský, C. Kirchner, H. Kirchner, P.-E. Moreau, and M. Vittek. ELAN Version 3.00 User Manual. CRIN & INRIA Lorraine, Nancy, France, first edition, January 1998.

    Google Scholar 

  5. M. Bruynooghe. Solving Combinatorial Search Problems by Intelligent Backtracking. Information Processing Letters, 12(1):36–39, 1981.

    Article  Google Scholar 

  6. C. Castro. Solving Binary CSP Using Computational Systems. In J. Meseguer, editor, Proceedings of The First International Workshop on Rewriting Logic and its Applications, RWLW’96, volume 4, pages 245–264, Asilomar, Pacific Grove, CA, USA, September 1996. Electronic Notes in Theoretical Computer Science.

    Google Scholar 

  7. C. Castro. Building Constraint Satisfaction Problem Solvers Using Rewrite Rules and Strategies. Fundamenta Informaticae, 1998. To appear.

    Google Scholar 

  8. T. Frühwirth. Constraint Handling Rules. In A. Podelski, editor, Constraint Programming: Basic and Trends. Selected Papers of the 22nd Spring School in Theoretical Computer Sciences, volume 910 of Lecture Notes in Computer Science, pages 90–107. Springer-Verlag, Châtillon-sur-Seine, France, May 1994.

    Google Scholar 

  9. J. Jaffar and M. J. Maher. Constraint Logic Programming: A Survey. Journal of Logic Programming, 19(20):503–581, 1994.

    Article  MathSciNet  Google Scholar 

  10. C. Kirchner, H. Kirchner, and M. Vittek. Designing Constraint Logic Programming Languages using Computational Systems. In P. V. Hentenryck and V. Saraswat, editors, Principles and Practice of Constraint Programming. The Newport Papers, pages 131–158. The MIT press, 1995.

    Google Scholar 

  11. A. K. Mackworth. Consistency in Networks of Relations. Artificial Intelligence, 8:99–118, 1977.

    Article  MATH  Google Scholar 

  12. A. K. Mackworth. Constraint Satisfaction. In S. C. Shapiro, editor, Encyclopedia of Artificial Intelligence, volume 1. Addison-Wesley Publishing Company, 1992. Second Edition.

    Google Scholar 

  13. J. Meseguer. Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science, 96(1):73–155, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  14. E. Monfroy. Collaboration de solveurs pour la programmation logique à contraintes. PhD thesis, Université Henri Poincaré — Nancy 1, November 1996. Also available in english.

    Google Scholar 

  15. P.-E. Moreau and H. Kirchner. Compilation Techniques for Associative-Commutative Normalisation. In Proceedings of The International Workshop on Theory and Practice of Algebraic Specifications, ASF+SDF’97, Amsterdam, September 1997. Technical report CRIN 97-R-129.

    Google Scholar 

  16. P. Prosser. Domain filtering can degrade intelligent backtracking search. In Proceedings of The 13th International Joint Conference on Artificial Intelligence, IJCAI’93, Chambéry, France, pages 262–267, August 29–September 3 1993.

    Google Scholar 

  17. G. Smolka. Problem Solving with Constraints and Programming. ACM Computing Surveys, 28(4es), December 1996. Electronic Section.

    Google Scholar 

  18. E. Tsang. Foundations of Constraint Satisfaction. Academic Press, 1993.

    Google Scholar 

  19. J. Zhou. Calcul de plus petits produits cartésiens d’intervalles: application au problème d’ordonnancement d’atelier. PhD thesis, Université de la Mediterranée, Aix-Marseille II, March 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jacques Calmet Jan Plaza

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Castro, C. (1998). COLETTE, prototyping CSP solvers using a rule-based language. In: Calmet, J., Plaza, J. (eds) Artificial Intelligence and Symbolic Computation. AISC 1998. Lecture Notes in Computer Science, vol 1476. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0055906

Download citation

  • DOI: https://doi.org/10.1007/BFb0055906

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-64960-1

  • Online ISBN: 978-3-540-49816-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics