Back to Releases.
Fast Downward 23.06
Fast Downward 23.06 was released on July 31, 2023.
Highlights:
The option parser of the search component has been completely reimplemented. The new option parser has full error reporting where the old code crashed on errors or silently accepted them. This is also an important stepping stone towards a future use of Fast Downward as a library. With the change, the --evaluator, --heuristic and --landmarks options are now deprecated in favor of a new let syntax. For example,
--evaluator h=EVALUATOR --search SEARCH_ALGORITHM
is deprecated in favor of the expression--search let(h, EVALUATOR, SEARCH_ALGORITHM)
We now compile using the C++20 standard, so all modern C++ features can be used as long as they are supported by all main compilers Fast Downward supports (see README.md).
The linear programming and mixed integer programming features of Fast Downward now communicate directly with the LP/MIP solvers (SoPlex or CPLEX) rather than using the open solver interface OSI as an intermediary. This has also allowed us to move to more modern versions of these solvers.
The lmcount heuristic has been split into two separate heuristics called landmark_sum and landmark_cost_partitioning. The former corresponds to the old lmcount with the option admissible=false, the latter to the old lmcount with the option admissible=true.
The two new landmark heuristics (landmark_sum and landmark_cost_partitioning) compute preferred operators more efficiently than before. On average, this improves performance of LAMA-style planner configurations.
- The merge-and-shrink heuristic now stores labels and their transitions more efficiently, resulting in improved speed for merge-and-shrink heuristic construction.
The MIASM merge strategy for merge-and-shrink (more precisely, the sf_miasm merge scoring function) now has an option to cache scores. Caching is enabled by default and greatly speeds up construction of MIASM-based merge-and-shrink heuristics.
The Apptainer and Docker distributions of the planner include LP support using the SoPlex solver.
Downloads
source tarball: fast-downward-23.06.tar.gz
Apptainer (formerly known as Singularity) container: fast-downward.sif
Docker container: aibasel/downward:23.06 on Docker Hub
Vagrantfile: Vagrantfile for Fast Downward 23.06
For Apptainer, Docker and Vagrant, see QuickStart for instructions on how to run the planner. That page explains how to run the latest release of Fast Downward, so you have to amend the instructions if you want to run an older release.
For the tarball, if you have satisfied all dependencies, the following should build and run the planner with configuration alias lama-first on PDDL files /path/to/domain.pddl and /path/to/problem.pddl on a Linux or macOS system:
tar -xvzf fast-downward-23.06.tar.gz cd fast-downward-23.06 ./build.py ./fast-downward.py --alias lama-first /path/to/domain.pddl /path/to/problem.pddl
For dependencies and more advanced information (including Windows builds), see ObtainingAndRunningFastDownward.
Limitations
For licensing reasons, the binary distributions of Fast Downward have limited support for commercial LP solvers (like CPLEX). The Docker and Apptainer distributions only support SoPlex. The Vagrant version supports SoPlex and/or CPLEX if they are available at provisioning time. See QuickStart for more information.
Referencing Fast Downward 23.06
If you use this version of Fast Downward in a scientific publication, we encourage you to mention the version number, as in "We ran experiments with Fast Downward 23.06." The canonical reference for citing Fast Downward is the following journal paper:
@Article{helmert-jair2006, author = "Malte Helmert", title = "The {Fast} {Downward} Planning System", journal = "Journal of Artificial Intelligence Research", year = "2006", volume = "26", pages = "191--246" }
Changes in Fast Downward 23.06
Details:
TODO