Abstract
Constraint-programming languages represent an emerging paradigm for solving combinatorial problems, where programs define sets of variables and sets of constraints on these variables. The execution of a constraint program determines the values of the variables that satisfy the constraints. This paper enhances the notions of variable and constraint with characteristics of the object-oriented paradigm, such as abstraction and hierarchy. Variables become objects, semantically richer, that are instances of classes organized into a hierarchy, while constraints can be defined both on objects and classes. The semantics of the new model in terms of the traditional model is presented. This bears interesting consequences, such as the possibility to easily implement preprocessors that transform object-oriented constraint programs into traditional constraint programs. A design methodology to interactively define combinatorial problems is also presented. The models produced applying such a methodology are extremely compact and can be automatically executed. An example of application of the methodology to a real planning problem is presented. The number of constraints defined in the model is reduced of 21 times, compared to previous formulations.
Preview
Unable to display preview. Download preview PDF.
References
A. Borning: Thinglab: A Constraint-Oriented Simulation Laboratory, Ph.D. Thesis, Stanford University, CA, 1979.
G. Booch: Object-Oriented Analysis and Design with Applications, Redwood City, CA: Benjamin/Cum., II Ed., 1994.
Bull S.A. Ed.: Manuel Charme First, Bull Publication No. 95-F2-52GN-REVO, Annexe A, pages 29–49, Paris, France, 1991.
P. Chan: Charme Technical Bulletin, Bull BSP/CEDIAG Internal Report No.1-5, Paris, France, 1993.
A. Colmerauer: An Introduction to Prolog III, Communications of the ACM, Vol. 33 (7), 1990.
M. Dincbas, P. Van Hentenryck, H. Simonis, A. Aggoun, T. Graf, F. Berthier: The Constraint Logic Programming Language CHIP, Proc. of the Int. Corf. on Fifth Generation Computer Systems, Tokyo, Japan, 1988.
B. Freeman-Benson, A. Borning: Integrating Constraints with an Object-Oriented Language, Proc. of the 1992 European Conference on Object-Oriented Programming, June 1992.
M. Fowler: A Comparison of Object-Oriented Analysis and Design Methods, in Approaches to Object-Oriented Analysis and Design, A. Carmichael Ed., Ashgate, 1993.
V. Gosselin: Train Scheduling Using Constraint Programming Techniques, Actes 13eme Journée International sur les Systèmes Expert et Leur Application, Avignon, 1993.
D. R. Harris: A Hybrid Object and Constraint Representation Language, AAAI-86, pages 986–990, Philadelphia, Pennsylvania, 1986.
J. Jaffar, S. Michaylov, P.J. Stuckey: The CLP(R) Language System, draft for Constraints & Languages W/S, 1988.
M. Konopasek, S. Jayaraman: The TK!Solver Book, Osborne/McGraw-Hill, Berkeley, CA, 1984.
T. Kökény: CSPOO: Un Système à Résolution de Contraintes Orienté Objet, Réprésentation Par Objet, La Grande Motte, pages 39–49, July 1993.
V. Kumar: Algorithms for Constraint Satisfaction Problems: a Survey. AI Magazine, 13, 1992, 32–44.
W. Leler: Constraint Programming Languages, Addison-Wesley Publishing Company, 1988.
J. Marcovich, Y. Tourbier: Une Application de la Programmation par Contraintes: Construction de Plans d'Experience Orthogonaux au Sens Strict avec Condor, Actes des Journées Internationales d'Avignon, 1989.
B. A. Myers, D. A. Giuse, B. Vander Zanden: Declarative Programming in a Prototype-Instance System: Object-Oriented Programming Without Writing Methods, OOPSLA'92, pages 184–200, 1992.
A. Oplobedu: Charme: Un Langage Industriel de Programmation par Contraintes, Actes 9eme Journée International sur les Systèmes Expert et Leur Applications, Vol. 1, 55–70, Avignon, 1989.
M. Paltrinieri, A. Momigliano, F. Torquati: Scheduling of an Aircraft Fleet, AAAI Tech. Rep. SS-92-01. Also available as NASA Tech. Rep. FIA-92-17, NASA Ames, Moffet Field, CA, USA, 1992.
J.-F. Puget: Programmation Par Contraintes Orientée Objet, 12th International Conference on Artificial Intelligence, Expert Systems and Natural Language, pages 129–138, Avignon, France, 1992.
A. Roth: Constraint Programming: A Practical Solution to Complex Problems, AI Expert, pages 36–39 Sept. 1993.
D. Sciamma, V. Gosselin, D. Ang: Constraint Programming and Resource Scheduling: The Charme Approach, Gintic Symposium on Scheduling, Singapore, 1991.
D. Srivastava, R. Ramakrishnan, P. Z. Revesz: Constraint Objects, Second International Workshop on Principles and Practice of Constraint Programming, Orcas Island, WA, May 1994.
S. Thennarangam, G. Singh: Inferring 3-dimensional Constraints with DEVI, Second International Workshop on Principles and Practice of Constraint Programming, Orcas Island, WA, May 1994.
P. Van Hentenryck: Constraint Satisfaction in Logic Programming, The MIT Press, Cambridge, Massachusetts, 1989.
C. J. Van Wyk: A High-Level Language for Specifying Pictures, ACM Transactions on Graphics 1(2), 163–182.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Paltrinieri, M. (1994). Integrating objects with constraint-programming languages. In: Bertino, E., Urban, S. (eds) Object-Oriented Methodologies and Systems. ISOOMS 1994. Lecture Notes in Computer Science, vol 858. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014029
Download citation
DOI: https://doi.org/10.1007/BFb0014029
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58451-3
Online ISBN: 978-3-540-48804-0
eBook Packages: Springer Book Archive