Back to [[Releases]]. = Fast Downward 22.12 = Fast Downward 22.12 was released on December 15, 2022. Highlights: * We now test more recent versions of Ubuntu Linux (22.04 and 20.04), macOS (11 and 12) and Python (3.8 and 3.10). * Most search algorithms are now faster. We fixed a performance problem related to state pruning, which also affected search configurations that did not explicitly select a pruning method. * All landmark factories now respect action costs. Previously, this was only the case when using admissible landmark heuristic or when using the `lm_rhw` landmark factory. Note that ignoring action costs (i.e., the old behaviour for landmark factories other than `lm_rhw`) often finds plans faster and is still possible with the `adapt_costs` transformation. The Apptainer and Docker distributions of the planner include LP support using the [[https://soplex.zib.de/|SoPlex]] solver. Thank you to ZIB for their solver and for giving permission to include it in the release. !SoPlex is licensed under the [[https://scipopt.org/academic.txt|ZIB Academic License]]. == Downloads == * source tarball: [[attachment:fast-downward-22.12.tar.gz||&do=get]] * Apptainer (formerly known as Singularity) container: [[attachment:fast-downward.sif||&do=get]] * Docker container: [[https://hub.docker.com/r/aibasel/downward|aibasel/downward:22.12 on Docker Hub]] * Vagrantfile: [[attachment:Vagrantfile||&do=get]] for Fast Downward 22.12 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: {{{#!bash tar -xvzf fast-downward-22.12.tar.gz cd fast-downward-22.12 ./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 [[https://github.com/aibasel/downward/blob/main/BUILD.md|the build instructions]]. == Limitations == For licensing reasons, the binary distributions of Fast Downward have limited support for commercial LP solvers (CPLEX and Gurobi). 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 22.12 == 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 22.12." 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 22.12 == Details: * driver: Planner time is now logged in a consistent format. <
> Previously, it would sometimes be logged in scientific notation. * driver, for developers: Skip `__pycache__` directory when collecting portfolios. <
> https://issues.fast-downward.org/issue1057 * translator: Allow importing `pddl_parser` without parsing arguments from command line. <
> https://issues.fast-downward.org/issue1068 * pruning methods: Fix a performance regression caused by spending too much time measuring elapsed time. This is now only done at verbosity level `verbose` or higher. Verbosity level parameter added to all pruning methods. <
> https://issues.fast-downward.org/issue1058 <
> Note that most search algorithms in Fast Downward always use a pruning method (a trivial method pruning nothing is used by default) and were therefore affected by this performance problem. * pruning methods, for developers: We cleaned up the internal structure of stubborn set pruning. <
> https://issues.fast-downward.org/issue1059 * landmarks: All landmark factories are now sensitive to action costs. <
> https://issues.fast-downward.org/issue1009 <
> When using the `lmcount` heuristic in inadmissible mode (option `admissible=false`), previously only the `lm_rhw` landmark factory considered action costs. Now, all landmark factories do. (This was already the case with `admissible=true`.) Experiments show that ignoring action costs is often beneficial when we are more interested in planner speed or coverage than plan quality. This can be achieved by using the option `transform=adapt_costs(ONE)`. * landmarks: Reduce verbosity of h^m landmarks. <
> The `lm_hm` landmark factory is now less verbose by default. Use verbosity level `verbose` or higher to enable the previous output. * infrastructure: Update tested OS versions and clang-tidy version. <
> https://issues.fast-downward.org/issue1067 <
> * The tested Ubuntu versions are now 22.04 and 20.04. * The tested macOS versions are now macOS 11 and macOS 12. * The tested Windows version remains Windows 10. * We now test Python 3.10 (Ubuntu 22.04, macOS 12) and Python 3.8 (Ubuntu 20.04, macOS11, Windows 10). * We now use clang-tidy-12. See `README.md` for details. * infrastructure: Update `delete-artifact` version number in !GitHub action, update `zlib` version in Windows build.