Skip to main content

Constraint programming

  • Reference work entry
  • First Online:
Encyclopedia of Operations Research and Management Science

SUMMARY

Arising from research in the computer science community, constraint programming is a relatively new technique for solving optimization problems. It often is applied to difficult combinatorial optimization problems arising in configuration, sequencing, and scheduling. To apply constraint programming, users must write software that includes both a model of an optimization problem plus an algorithmic search procedure that indicates how to search for a solution.

BACKGROUND

Constraint programming is often called constraint logic programming, and originates in the artificial intelligence literature in the computer science community. Here, the word “programming” refers to computer programming. Knuth (1968)defines a computer program as “an expression of a computational method in a computer language.” A computer program can be viewed as a plan of action of operations of the computer, and hence the common concept of a “plan” is shared with the origins of linear programming. With...

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 532.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Caseau, Y. and Laburthe, F. (1995). The Claire documentation, LIENS Report 96–15, Ecole Normale Superieure, Paris.

    Google Scholar 

  2. Colmerauer, A. (1990). “An introduction to PROLOG III,” Communications of the ACM 33(7), 70–90.

    Google Scholar 

  3. Dincbas, M., Van Hentenryck, P., Simonis, H., Aggoun, A., Graf, T., and Berthier, F. (1988). “The Constraint Logic Programming Language CHIP,” Proceedings of the International Conference on Fifth Generation Computer Systems, Tokyo, Japan, December.

    Google Scholar 

  4. Garfinkel, R. S. and Nemhauser, G. L. (1972). Integer Programming, John Wiley, New York.

    Google Scholar 

  5. Harvey, W. D. and Ginsberg, M. L. (1995). “Limited Discrepancy Search,” Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI), volume 1, 607–613.

    Google Scholar 

  6. ILOG (1999). ILOG Solver 4.4 Users Manual, ILOG, Gentilly, France.

    Google Scholar 

  7. Jaffar, J. and Lassez, J.-L. (1987). “Constraint Logic Programming,” Conference Record of the Fourteenth Annual ACM Symposium on Principles of Programming Languages, Munich, 111–119.

    Google Scholar 

  8. Knuth, D. E. (1968). Fundamental Algorithms, The Art of Computer Programming, Volume 1, 2nd ed., Addison-Wesley, Reading, Massachusetts.

    Google Scholar 

  9. Lauriere, J.-L. (1978). “A Language and a Program for Stating and Solving Combinatorial Problems,” Artificial Intelligence 10, 29–127.

    Google Scholar 

  10. Lawler, E. L. and Wood, D. E. (1966). “Branch-and-Bound Methods: A Survey,” Operations Research 14, 699–719.

    Google Scholar 

  11. Mackworth, A. K. (1977). “Consistency in networks of relations,” Artificial Intelligence 8, 99–118.

    Google Scholar 

  12. Meseguer, P. (1997). “Interleaved Depth-First Search,” Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI), volume 2, 1382–1387.

    Google Scholar 

  13. Nilsson, N. J. (1971). Problem Solving Methods in Artificial Intelligence, McGraw-Hill, New York.

    Google Scholar 

  14. Puget, J.-F. (1992). “Pecos: a High Level Constraint programming Language,” in Proceedings of the 1st Singapore Intl. Conf. on Intelligent Systems.

    Google Scholar 

  15. Puget, J.-F. (1994). “A C++ Implementation of CLP,” Proceedings of the 2nd Singapore Intl. Conf. on Intelligent Systems. (See also the current web site http://www.ilog.com/products/optimization/research/spicis94_OnlinePDF.pdf.)

    Google Scholar 

  16. Smolka, G. (1995). “The Oz Programming Model,” in Computer Science Today, J. van Leeuwen, ed., Lecture Notes in Computer Science 1000, Springer-Verlag, 324–343.

    Google Scholar 

  17. Van Hentenryck, P. (1989). Constraint Satisfaction in Logic Programming, MIT Press, Cambridge, Massachusetts.

    Google Scholar 

  18. Van Hentenryck, P. (1999). The OPL Optimization Programming Language, MIT Press, Cambridge, Massachusetts.

    Google Scholar 

  19. Van Hentenryck, P., Deville, Y., and Teng, C. M. (1992). “A generic arc-consistency algorithm and its specializations,” Artificial Intelligence 57, 291.

    Google Scholar 

  20. Walsh, T. (1997). “Depth-bounded discrepancy search,” Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI), volume 2, 1388–1395.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Kluwer Academic Publishers

About this entry

Cite this entry

Lustig, I., Puget, JF. (2001). Constraint programming . In: Gass, S.I., Harris, C.M. (eds) Encyclopedia of Operations Research and Management Science. Springer, New York, NY. https://doi.org/10.1007/1-4020-0611-X_157

Download citation

  • DOI: https://doi.org/10.1007/1-4020-0611-X_157

  • Published:

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-0-7923-7827-3

  • Online ISBN: 978-1-4020-0611-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics