Developing Finite Domain Constraints — A Data Model Approach
We describe a technique for formulating a problem for solution by a finite domain constraint solver, where the finite domains can be modelled in correspondence with an Entity-Relationship diagram or UML Class diagram. This works particularly well where data for the problem is retrieved from database(s) over a network, but we believe the modelling discipline will be more generally useful. We show how relationships are conveniently represented using the infers operator of the generalised constraint propagation (Propia) library of ECLiPSe. Further, we can then express sets of quantified constraints over the data model in the declarative Colan language, and use this to generate equivalent ECLiPSe code directly. The user then has only to maintain the declarative version of the constraints, which are much easier to read. They can also be reused in many ways by fusing them with constraints from other sources, as in the KRAFT project. An important subclass of such constraints behave as conditional constraints which need delayed application, and we discuss experience in making such constraints more active in the solving process.
KeywordsConstraint Logic Programming Service Network Design Conditional Constraint Solution Database Infer Operator
Unable to display preview. Download preview PDF.
- 2.P.S. Eaton, E.C. Freuder, and R.J. Wallace. Constraints and agents: Confronting ignorance. AI Magazine, 19(2):51–65, 1998.Google Scholar
- 3.S.M. Embury and P.M.D. Gray. The Declarative Expression of Semantic Integrity in a Database of Protein Structure. In A. Illaramendi and O. Díaz, editors, Data Management Systems: Proceedings of the Basque International Workshop on Information Technology (BIWIT 95), pages 216–224, San Sebastían, Spain, July 1995. IEEE Computer Society Press.Google Scholar
- 4.G. Fahl, T. Risch, and M. Sköld. AMOS — an Architecture for Active Mediators. In Proc. Workshop on Next Generation Information Technologies and Systems (NGITS’93), Haifa, Israel, June 1993.Google Scholar
- 5.N. J. Fiddian, P. Marti, J-C. Pazzaglia, K. Hui, A. Preece, D. M. Jones, and Z. Cui. A knowledge processing system for data service network design. BT Technical Journal, 17(4):117–130, October 1999.Google Scholar
- 6.E.C. Freuder. Modeling: The final frontier. In Proc. First Int’l Conf’ ce on the Practical Application of Constraint Technologies and Logic Programming(PACLP99), 1999. London.Google Scholar
- 8.P.M.D. Gray, A. Preece, N.J. Fiddian, W.A. Gray, T.J.M. Bench-Capon, M.J.R. Shave, N. Azarmi, M. Wiegand, M. Ashwell, M. Beer, Z. Cui, B. Diaz, S.M. Embury, K. Hui, A.C. Jones, D.M. Jones, G.J.L. Kemp, E.W. Lawson, K. Lunn, P. Marti, J. Shao, and P.R.S. Visser. KRAFT: Knowledge Fusion from Distributed Databases and Knowledge Bases. In R.R. Wagner, editor, Proceedings of the Eighth International Workshop on Database and Expert Systems Applications, pages 682–691, Toulouse, France, September 1997. IEEE Computer Society Press.Google Scholar
- 9.Kjell Orsborn. On Extensible and Object-Relational Database Technology for Finite Element Analysis Applications. PhD thesis, Linkoeping University, Sweden, 1996.Google Scholar
- 11.D.W. Shipman. The Functional Data Model and the Data Language DAPLEX. ACM Transactions on Database Systems, 6(1):140–173, March 1981.Google Scholar
- 12.E. Tsang, P. Mills, R. Williams, J. Ford, and J. Borrett. A computer aided constraint programming system. In Proc. First Int’l Conf’ce on the Practical Application of Constraint Technologies and Logic Programming(PACLP99), 1999.Google Scholar