Skip to main content

A Toolkit for Constraint-Based Inference Engines

  • Conference paper
  • First Online:
Practical Aspects of Declarative Languages (PADL 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1753))

Included in the following conference series:

Abstract

Solutions to combinatorial search problems can benefit from custom-made constraint-based inference engines that go beyond depth-first search. Several constraint programming systems support the programming of such inference engines through programming abstractions. For example, the Mozart system for Oz comes with several engines, extended in dimensions such as interaction, visualization, and optimization. However, so far such extensions are monolithic in their software design, not catering for systematic reuse of components.

We present an object-oriented modular architecture for building inference engines that achieves high reusability and supports rapid prototyping of search algorithms and their extensions. For the sake of clarity, we present the architecture in the setting of a C++ constraint programming library. The SearchToolKit, a search library for Oz based on the presented architecture, provides evidence for the practicality of the design.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Tee Yong Chew. A toolkit for constraint-based tree search. Honours Year Project Report, School of Computing, National University of Singapore, available at http://www.comp.nus.edu.sg/ henz/projects/toolkit/, March 1999.

  2. Yves Caseau and François Laburthe. CLAIRE: Combining objects and rules for problem solving. In Proceedings of the JICSLP’96 workshop on multi-paradigm logic programming. TU Berlin, 1996.

    Google Scholar 

  3. Martin Henz and Tee Yong Chew. SearchToolKit: A toolkit for constraint-based tree search. Oz code available via WWW at http://www.comp.nus.edu.sg/~henz/projects/stk, 1999.

  4. Martin Henz. Objects for Concurrent Constraint Programming. TheKluwer International Series in Engineering and Computer Science, Volume 426. Kluwer Academic Publishers, Boston, 1998.

    Google Scholar 

  5. William D. Harvey and Matthew L. Ginsberg. Limited discrepancy search. In Chris S. Mellish, editor, Proceedings of the International Joint Conference on Artificial Intelligence, pages 607–615, Montréal, Québec, Canada, August 1995. Morgan Kaufmann Publishers, San Mateo, CA.

    Google Scholar 

  6. ILOG Inc., Mountain View, CA 94043, USA, http://www.ilog.com. ILOG Solver 4.4, Reference Manual, 1999.

  7. ILOG Inc., Mountain View, CA 94043, USA, http://www.ilog.com. OPL Studio User Manual, 1999.

  8. Andrew J. Kennedy. Functional pearls: Drawing trees. Journal of Functional Programming, 6(3):527–534, May 1996.

    Article  MATH  MathSciNet  Google Scholar 

  9. Irvin J. Lustig and Jean-François Puget. Program ! = program: Constraint programming and its relationship to mathematical programming. white paper of Ilog Inc., Mountain View, CA 94043, USA, available at http://www.ilog.com, 1999.

    Google Scholar 

  10. Micha Meier. Debugging constraint programs. In Proceedings of the First International Conference on Principles and Practice of Constraint Programming, Lecture Notes in Computer Science 976, pages 328–344, Cassis, France, September 1995. Springer-Verlag, Berlin.

    Google Scholar 

  11. Mozart Consortium. The Mozart Programming System. Documentation and system available from http://www.mozart-oz.org, Programming Systems Lab, Saarbrücken, Swedish Institute of Computer Science, Stockholm, and Université catholique de Louvain, 1999.

  12. Jean-François Puget. A C++ implementation of CLP. In Proceedings of the Second Singapore International Conference on Intelligent Systems (SPI-CIS), pages B256–B261, Singapore, November 1994.

    Google Scholar 

  13. Christian Schulte. Oz Explorer: A visual constraint programming tool. In Lee Naish, editor, Proceedings of the International Conference on Logic Programming, pages 286–300, Leuven, Belgium, July 1997. The MIT Press, Cambridge, MA.

    Google Scholar 

  14. Christian Schulte. Programming constraint inference engines. In Gert Smolka, editor, Principles and Practice of Constraint Programming-CP97, Proceedings of the Third International Conference, Lecture Notes in Computer Science 1330, pages 519–533, Schloss Hagenberg, Linz, Austria, October/ November 1997. Springer-Verlag, Berlin.

    Chapter  Google Scholar 

  15. Christian Schulte. Comparing trailing and copying for constraint programming. In Proceedings of the International Conference on Logic Programming, 1999. to appear.

    Google Scholar 

  16. Gert Smolka. The Oz programming model. In Jan van Leeuwen, editor, Computer Science Today, Lecture Notes in Computer Science 1000, pages 324–343. Springer-Verlag, Berlin, 1995.

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Yong Chew, T., Henz, M., Boon Ng, K. (1999). A Toolkit for Constraint-Based Inference Engines. In: Pontelli, E., Santos Costa, V. (eds) Practical Aspects of Declarative Languages. PADL 2000. Lecture Notes in Computer Science, vol 1753. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46584-7_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-46584-7_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66992-0

  • Online ISBN: 978-3-540-46584-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics