Skip to content

Compiler from PDDL tasks with state-dependent action costs to tasks with state-independent costs using EVMDD-based action compilation

License

Notifications You must be signed in to change notification settings

robertmattmueller/sdac-compiler

Repository files navigation

SDAC-Compiler

This compiler takes a PDDL problem with state-dependent action costs and generates a PDDL problem with constant costs, based on the action-compilation with edge-valued multi-values decision diagrams (EVMDDs), as described in Delete Relaxations for Planning with State-Dependent Action Costs.

An example PDDL domain file can be found here and the BNF grammar for cost functions can be found here. Note that the compiler currently does not support real numbers and the forall/exists language constructs.

We also have a working plugin for the Planning.Domains editor, thanks to Christian Muise. This link immediately loads the compiler plugin and changes the underlying planner to Fast Downward with lm-cut. Note that the online compiler has a 15 seconds timeout, keep this in mind for complex cost functions.

Disclaimer

This project is still in a very early stage and therefore is not stable and bug-free. It is currently built into the translator tool of Fast Downward. While we definitely need the translator tool, we plan to decouple the first major version of our compiler. We are currently rewriting most parts of the code and hope to ship the first fully functional version around July.

Requirements

Usage

./compile.py path/to/domainfile path/to/problemfile [--viz]

This generates domain-out.pddl and problem-out.pddl, the compiled PDDL files with constant action cost.

Optional arguments:

  • --viz: EVMDD visualization for action cost functions

Example:

  • ./compile.py example/domain-sdac.pddl example/prob02.pddl --viz

External tools

This compiler uses the following external tools:

Copyright

Copyright (C) 2016 Florian Geißer and Robert Mattmüller

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/

About

Compiler from PDDL tasks with state-dependent action costs to tasks with state-independent costs using EVMDD-based action compilation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published