Hostname: page-component-cd9895bd7-gxg78 Total loading time: 0 Render date: 2024-12-27T12:00:12.209Z Has data issue: false hasContentIssue false

Combining relational algebra, SQL, constraint modelling, and local search*

Published online by Cambridge University Press:  01 January 2007

MARCO CADOLI
Affiliation:
Dipartimento di Informatica e Sistemistica, Università di Roma “La Sapienza”, Via Salaria 113, 00198 Roma, Italycadoli@dis.uniroma1.it|tmancini@dis.uniroma1.it
TONI MANCINI
Affiliation:
Dipartimento di Informatica e Sistemistica, Università di Roma “La Sapienza”, Via Salaria 113, 00198 Roma, Italycadoli@dis.uniroma1.it|tmancini@dis.uniroma1.it

Abstract

The goal of this paper is to provide a strong integration between constraint modelling and relational DBMSs. To this end we propose extensions of standard query languages such as relational algebra and SQL, by adding constraint modelling capabilities to them. In particular, we propose non-deterministic extensions of both languages, which are specially suited for combinatorial problems. Non-determinism is introduced by means of a guessing operator, which declares a set of relations to have an arbitrary extension. This new operator results in languages with higher expressive power, able to express all problems in the complexity class NP. Some syntactical restrictions which make data complexity polynomial are shown. The effectiveness of both extensions is demonstrated by means of several examples. The current implementation, written in Java using local search techniques, is described.

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2007

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Aarts, E. and Lenstra, J. K. 1997. Local search in combinatorial optimization. Wiley-Interscience Series in Discrete Mathematics and Optimization. John Wiley & Sons, Chichester.Google Scholar
Abiteboul, S., Hull, R. and Vianu, V. 1995. Foundations of Databases. Addison, Reading, Massachussetts.Google Scholar
Beasley, J. E., Krishnamoorthy, M., Sharaiha, Y. M. and Abramson, D. 2000. Scheduling aircraft landings – the static case. Transportation Science 34, 180197.CrossRefGoogle Scholar
Cadoli, M. and Mancini, T. 2002. Combining Relational Algebra, SQL, and Constraint Programming. Proceedings of the International Workshop on Frontiers of Combining Systems (FroCoS 2002). Lecture Notes in Artificial Intelligence, vol. 2309. Springer, Santa Margherita Ligure, Genova, Italy, 147161.CrossRefGoogle Scholar
Cadoli, M. and Palopoli, L. 1998. Circumscribing datalog: expressive power and complexity. Theoretical Computer Science 193, 215244.CrossRefGoogle Scholar
Chandra, A. and Harel, D. 1980. Computable queries for relational databases. Journal of Computer and System Sciences 21, 156178.Google Scholar
Di Gaspero, L. and Schaerf, A. 2003. EASYLOCAL++: An object-oriented framework for flexible design of local search algorithms. Software – Practice and Experience 33, 8, 733765.Google Scholar
Fagin, R. 1974. Generalized first-order spectra and polynomial-time recognizable sets. In Complexity of Computation, Karp, R. M., Ed. American Mathematical Society, 4374.Google Scholar
Flener, P., Pearson, J. and Ågren, M. 2004. Introducing esra, a relational language for modelling combinatorial problems. Proceedings of International Symposium LOPSTR 2003: Revised selected papers. Lecture Notes in Computer Science, vol. 3018. Springer, Uppsala, Sweden, 214232.Google Scholar
Fourer, R., Gay, D. M. and Kernigham, B. W. 1993. AMPL: A Modeling Language for Mathematical Programming. International Thomson.Google Scholar
Garey, M. R. and Johnson, D. S. 1979. Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman, San Francisco, CA, USA.Google Scholar
Glover, F. and Laguna, M. 1997. Tabu search. Kluwer Academic, Boston, USA.CrossRefGoogle Scholar
Gottlob, G., Kolaitis, P. G. and Schwentick, T. 2004. Existential second-order logic over graphs: Charting the tractability frontier. Journal of the ACM 51, 2, 312362.CrossRefGoogle Scholar
ILOG-98 1998. ILOG optimization suite – white paper. Available at www.ilog.com.Google Scholar
ILOG-DBLINK 1999. ILOG DBLink 4.1 Tutorial. Available at www.ilog.com.Google Scholar
Kolaitis, P. G. and Papadimitriou, C. H. 1991. Why not negation by fixpoint? Journal of Computer and System Sciences 43, 125144.Google Scholar
Leone, N., Pfeifer, G., Faber, W., Eiter, T., Gottlob, G. and Perri, Simona abd Scarcello F. The DLV System for Knowledge Representation and Reasoning. ACM Transactions on Computational Logic. To appear.Google Scholar
Michel, L. and Van Hentenryck, P. 2000. Localizer. Constraints 5, 1, 4384.Google Scholar
Papadimitriou, C. H. 1994. Computational Complexity. Addison Wesley, Reading, MA.Google Scholar
Schaerf, A. 1999. A survey of automated timetabling. Artificial Intelligence Review 13, 2, 87127.CrossRefGoogle Scholar
Schaerf, A., Cadoli, M. and Lenzerini, M. 2000. LOCAL++: A C++ framework for local search algorithms. Software – Practice and Experience 30, 3, 233257.3.0.CO;2-K>CrossRefGoogle Scholar
Sicstus. SICStus Prolog home page. http://www.sics.se/sicstus/.Google Scholar
Simons, P., Niemelä, I. and Soininen, T. 2002. Extending and implementing the stable model semantics. Artificial Intelligence 138, 1–2, 181234.CrossRefGoogle Scholar
Ullman, J. D. 1988. Principles of Database and Knowledge Base Systems. Vol. 1. Computer Science Press.Google Scholar
Van Hentenryck, P. 1999. The OPL Optimization Programming Language. The MIT Press.Google Scholar
Van Hentenryck, P. and Michel, L. 2003. Control abstractions for local search. In Proceedings of the Ninth International Conference on Principles and Practice of Constraint Programming (CP 2003). Lecture Notes in Computer Science, vol. 2833. Springer, Kinsale, Ireland, 6580.Google Scholar
Vardi, M. Y. 1982. The complexity of relational query languages. Proceedings of the Fourteenth ACM Symposium on Theory of Computing (STOC'82). ACM Press, 137146.Google Scholar