DynASP2.5: Dynamic Programming on Tree Decompositions in Action

被引:0
|
作者
Fichte, Johannes K. [1 ]
Hecher, Markus [2 ,3 ]
Morak, Michael [4 ]
Woltran, Stefan [2 ]
机构
[1] Univ Calif Berkeley, Simons Inst Theory Comp, Berkeley, CA 94720 USA
[2] TU Wien, Inst Log & Computat, A-1040 Vienna, Austria
[3] Univ Potsdam, Inst Comp Sci, D-14482 Potsdam, Germany
[4] AAU Klagenfurt, Inst Artificial Intelligence & Cybersecur, A-9020 Klagenfurt, Austria
基金
奥地利科学基金会;
关键词
parameterized algorithms; fixed-parameter linear time; semi-incidence graph; tree decompositions; multi-pass dynamic programming; ANSWER; OPTIMIZATION; TREEWIDTH;
D O I
10.3390/a14030081
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Efficient exact parameterized algorithms are an active research area. Such algorithms exhibit a broad interest in the theoretical community. In the last few years, implementations for computing various parameters (parameter detection) have been established in parameterized challenges, such as treewidth, treedepth, hypertree width, feedback vertex set, or vertex cover. In theory, instances, for which the considered parameter is small, can be solved fast (problem evaluation), i.e., the runtime is bounded exponential in the parameter. While such favorable theoretical guarantees exists, it is often unclear whether one can successfully implement these algorithms under practical considerations. In other words, can we design and construct implementations of parameterized algorithms such that they perform similar or even better than well-established problem solvers on instances where the parameter is small. Indeed, we can build an implementation that performs well under the theoretical assumptions. However, it could also well be that an existing solver implicitly takes advantage of a structure, which is often claimed for solvers that build on SAT-solving. In this paper, we consider finding one solution to instances of answer set programming (ASP), which is a logic-based declarative modeling and solving framework. Solutions for ASP instances are so-called answer sets. Interestingly, the problem of deciding whether an instance has an answer set is already located on the second level of the polynomial hierarchy. An ASP solver that employs treewidth as parameter and runs dynamic programming on tree decompositions is DynASP2. Empirical experiments show that this solver is fast on instances of small treewidth and can outperform modern ASP when one counts answer sets. It remains open, whether one can improve the solver such that it also finds one answer set fast and shows competitive behavior to modern ASP solvers on instances of low treewidth. Unfortunately, theoretical models of modern ASP solvers already indicate that these solvers can solve instances of low treewidth fast, since they are based on SAT-solving algorithms. In this paper, we improve DynASP2 and construct the solver DynASP2.5, which uses a different approach. The new solver shows competitive behavior to state-of-the-art ASP solvers even for finding just one solution. We present empirical experiments where one can see that our new implementation solves ASP instances, which encode the Steiner tree problem on graphs with low treewidth, fast. Our implementation is based on a novel approach that we call multi-pass dynamic programming (M-DPSINC). In the paper, we describe the underlying concepts of our implementation (DynASP2.5) and we argue why the techniques still yield correct algorithms.
引用
收藏
页数:28
相关论文
共 50 条
  • [1] Practical Access to Dynamic Programming on Tree Decompositions
    Bannach, Max
    Berndt, Sebastian
    [J]. ALGORITHMS, 2019, 12 (08)
  • [2] ASP for Anytime Dynamic Programming on Tree Decompositions
    Bliem, Bernhard
    Kaufmann, Benjamin
    Schaub, Torsten
    Woltran, Stefan
    [J]. KI 2016: ADVANCES IN ARTIFICIAL INTELLIGENCE, 2016, 9904 : 257 - 263
  • [3] Dynamic Programming on Tree Decompositions with D-FLAT
    Abseher, Michael
    Bliem, Bernhard
    Hecher, Markus
    Moldovan, Marius
    Woltran, Stefan
    [J]. KUNSTLICHE INTELLIGENZ, 2018, 32 (2-3): : 191 - 192
  • [4] Tree decompositions of graphs: Saving memory in dynamic programming
    Betzler, Nadja
    Niedermeier, Rolf
    Uhlmann, Johannes
    [J]. DISCRETE OPTIMIZATION, 2006, 3 (03) : 220 - 229
  • [5] The D-FLAT System for Dynamic Programming on Tree Decompositions
    Abseher, Michael
    Bliem, Bernhard
    Charwat, Guenther
    Dusberger, Frederico
    Hecher, Markus
    Woltran, Stefan
    [J]. LOGICS IN ARTIFICIAL INTELLIGENCE, JELIA 2014, 2014, 8761 : 558 - 572
  • [6] Dynamic Programming on Tree Decompositions in Practice - Some Lessons Learned
    Woltran, Stefan
    [J]. 2015 17TH INTERNATIONAL SYMPOSIUM ON SYMBOLIC AND NUMERIC ALGORITHMS FOR SCIENTIFIC COMPUTING (SYNASC), 2016, : 22 - 22
  • [7] The D-FLAT system for dynamic programming on tree decompositions
    Abseher, Michael
    Bliem, Bernhard
    Charwat, Günther
    Dusberger, Frederico
    Hecher, Markus
    Woltran, Stefan
    [J]. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2014, 8761 : 558 - 572
  • [8] Dynamic Programming on Tree Decompositions Using Generalised Fast Subset Convolution
    van Rooij, Johan M. M.
    Bodlaender, Hans L.
    Rossmanith, Peter
    [J]. ALGORITHMS - ESA 2009, PROCEEDINGS, 2009, 5757 : 566 - +
  • [9] Improving the Efficiency of Dynamic Programming on Tree Decompositions via Machine Learning
    Abseher, Michael
    Dusberger, Frederico
    Muslin, Nysret
    Woltran, Stefan
    [J]. PROCEEDINGS OF THE TWENTY-FOURTH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE (IJCAI), 2015, : 275 - 282
  • [10] Improving the Efficiency of Dynamic Programming on Tree Decompositions via Machine Learning
    Abseher, Michael
    Musliu, Nysret
    Woltran, Stefan
    [J]. JOURNAL OF ARTIFICIAL INTELLIGENCE RESEARCH, 2017, 58 : 829 - 858