Hostname: page-component-586b7cd67f-dsjbd Total loading time: 0 Render date: 2024-11-20T09:19:38.420Z Has data issue: false hasContentIssue false

D-FLAT: Declarative problem solving using tree decompositions and answer-set programming

Published online by Cambridge University Press:  05 September 2012

BERNHARD BLIEM
Affiliation:
Institute of Information Systems 184/2 Vienna University of Technology Favoritenstrasse 9–11, 1040 Vienna, Austria (e-mail: [email protected])
MICHAEL MORAK
Affiliation:
Institute of Information Systems 184/2 Vienna University of Technology Favoritenstrasse 9–11, 1040 Vienna, Austria (e-mail: [email protected])
STEFAN WOLTRAN
Affiliation:
Institute of Information Systems 184/2 Vienna University of Technology Favoritenstrasse 9–11, 1040 Vienna, Austria (e-mail: [email protected])

Abstract

In this work, we propose Answer-Set Programming (ASP) as a tool for rapid prototyping of dynamic programming algorithms based on tree decompositions. In fact, many such algorithms have been designed, but only a few of them found their way into implementation. The main obstacle is the lack of easy-to-use systems which (i) take care of building a tree decomposition and (ii) provide an interface for declarative specifications of dynamic programming algorithms. In this paper, we present D-FLAT, a novel tool that relieves the user of having to handle all the technical details concerned with parsing, tree decomposition, the handling of data structures, etc. Instead, it is only the dynamic programming algorithm itself which has to be specified in the ASP language. D-FLAT employs an ASP solver in order to compute the local solutions in the dynamic programming algorithm. In the paper, we give a few examples illustrating the use of D-FLAT and describe the main features of the system. Moreover, we report experiments which show that ASP-based D-FLAT encodings for some problems outperform monolithic ASP encodings on instances of small treewidth.

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2012

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

Bodlaender, H. L. 1993. A tourist guide through treewidth. Acta Cybernetica 11, 1-2, 122.Google Scholar
Bodlaender, H. L. 2005. Discovering treewidth. In Proceedings of SOFSEM. LNCS, vol. 3381. Springer, 116.Google Scholar
Bodlaender, H. L. and Koster, A. M. C. A. 2008. Combinatorial optimization on graphs of bounded treewidth. Computer Journal 51, 3, 255269.CrossRefGoogle Scholar
Bodlaender, H. L. and Koster, A. M. C. A. 2010. Treewidth computations I. Upper bounds. Information and Computation 208, 3, 259275.CrossRefGoogle Scholar
Brewka, G., Eiter, T. and Truszczynski, M. 2011. Answer set programming at a glance. Communications of the ACM 54, 12, 92103.CrossRefGoogle Scholar
Cai, L., Huang, X., Liu, C., Rosamond, F. A. and Song, Y. 2008. Parameterized complexity and biopolymer sequence comparison. Computer Journal 51, 3, 270291.Google Scholar
Courcelle, B. 1990. Graph rewriting: An algebraic and logic approach. In Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics (B), van Leeuwen, J., Ed. Elsevier and MIT Press, 193242.Google Scholar
Dermaku, A., Ganzow, T., Gottlob, G., McMahan, B. J., Musliu, N. and Samer, M. 2008. Heuristic methods for hypertree decomposition. In Proceedings of MICAI. LNCS, vol. 5317. Springer, 111.Google Scholar
Eisner, J. and Filardo, N. W. 2011. Dyna: Extending datalog for modern AI (full version). Available under http://cs.jhu.edu/~jason/papers/eisner+filardo.datalog11-long.pdf.Google Scholar
Gebser, M., Grote, T., Kaminski, R. and Schaub, T. 2011. Reactive answer set programming. In Proceedings of LPNMR. LNCS, vol. 6645. Springer, 5466.Google Scholar
Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T. and Thiele, S. 2010. A user's guide to gringo, clasp, clingo, and iclingo. Preliminary Draft. Available under http://potassco.sourceforge.net.Google Scholar
Gebser, M., Kaufmann, B., Kaminski, R., Ostrowski, M., Schaub, T. and Schneider, M. T. 2011. Potassco: The potsdam answer set solving collection. AI Communications 24, 2, 107124.Google Scholar
Gebser, M., Sabuncu, O. and Schaub, T. 2011. An incremental answer set programming based system for finite model computation. AI Communications 24, 2, 195212.CrossRefGoogle Scholar
Gelfond, M. and Lifschitz, V. 1991. Classical negation in logic programs and disjunctive databases. New Generation Computing 9, 3/4, 365386.CrossRefGoogle Scholar
Gottlob, G., Greco, G. and Scarcello, F. 2009. Tractable optimization problems through hypergraph-based structural restrictions. In Proceedings of ICALP (2). LNCS, vol. 5556. Springer, 1630.Google Scholar
Gottlob, G., Leone, N. and Scarcello, F. 2002. Hypertree decompositions and tractable queries. Journal of Computer and System Sciences 64, 3, 579627.Google Scholar
Gottlob, G., Pichler, R. and Wei, F. 2010. Monadic datalog over finite structures of bounded treewidth. ACM Transactions on Computer Logic 12, 1.CrossRefGoogle Scholar
Greco, G. and Scarcello, F. 2010. Structural tractability of enumerating CSP solutions. In Proceedings of CP 2010. LNCS, vol. 6308. Springer, 236251.Google Scholar
Guo, H.-F. and Gupta, G. 2008. Simplifying dynamic programming via mode-directed tabling. Software, Pract. Exper. 38, 1, 7594.Google Scholar
Jakl, M., Pichler, R. and Woltran, S. 2009. Answer-set programming with bounded treewidth. In Proceedings of IJCAI'09. AAAI Press, 816822.Google Scholar
Koster, A. M. C. A., van Hoesel, S. and Kolen, A. 2002. Solving partial constraint satisfaction problems with tree-decomposition. Networks 40, 3, 170180.Google Scholar
Larson, R. E. 1967. A survey of dynamic programming computational procedures. IEEE Transactions on Automat. Contr. 12, 6, 767774.CrossRefGoogle Scholar
Leone, N., Pfeifer, G., Faber, W., Eiter, T., Gottlob, G., Perri, S. and Scarcello, F. 2006. The dlv system for knowledge representation and reasoning. ACM Transactions on Computer Logic 7, 3, 499562.CrossRefGoogle Scholar
Marek, V. W. and Truszczyński, M. 1999. Stable models and an alternative logic programming paradigm. In The Logic Programming Paradigm – A 25-Year Perspective. Springer, 375398.CrossRefGoogle Scholar
Niemelä, I. 1999. Logic programming with stable model semantics as a constraint programming paradigm. Annals of Mathematics and Artificial Intelligence 25, 3–4, 241273.CrossRefGoogle Scholar
Robertson, N. and Seymour, P. D. 1984. Graph minors. III. Planar tree-width. Journal of Combinatorial Theory, Series B 36, 1, 4964.CrossRefGoogle Scholar
Samer, M. and Szeider, S. 2010. Algorithms for propositional model counting. Journal on Discrete Algorithms 8, 1, 5064.CrossRefGoogle Scholar
Wagner, D. B. 1995. Dynamic programming. The Mathematica Journal 5, 4, 4251.Google Scholar
Xu, J., Jiao, F. and Berger, B. 2005. A tree-decomposition approach to protein structure prediction. In Proceedings of CSB 2005. 247–256.CrossRefGoogle Scholar
Zhou, N.-F. 2011. The language features and architecture of B-Prolog. CoRR abs/1103.0812.Google Scholar