Back to [[Releases]]. = Fast Downward 19.12 = Fast Downward 19.12 was released on December 20, 2019. Highlights: * Fast Downward no longer supports Python 2.7, which reaches its end of support on January 1, 2020. The minimum supported Python version is now 3.6. * Fast Downward now supports the [[https://soplex.zib.de/|SoPlex]] LP solver. == Downloads == * source tarball: [[attachment:fast-downward-19.12.tar.gz||&do=get]] * Singularity container: [[https://www.singularity-hub.org/collections/3944|aibasel/downward:19.12 on Singularity Hub]] * Docker container: [[https://hub.docker.com/r/aibasel/downward|aibasel/downward:19.12 on Docker Hub]] * Vagrantfile: [[attachment:Vagrantfile||&do=get]] for Fast Downward 19.12 For Singularity, 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-19.12.tar.gz cd fast-downward-19.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, features related to LP solvers are unavailable in the released version if you use Docker, Singularity or Vagrant. We hope to improve integration of LP solvers into the releases in the future. The source tarball release will use an LP solver if it has been appropriately configured at build time. See [[https://github.com/aibasel/downward/blob/main/BUILD.md#optional-linear-programming-solvers|LP build instructions]] for more information. == Referencing Fast Downward 19.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 19.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 19.12 == * general: raise minimum supported Python version to 3.6 <
> http://issues.fast-downward.org/issue939 <
> Fast Downward now requires Python 3.6 or newer; support for Python 2.7 and Python 3.2-3.5 has been dropped. The main reason for this change is Python 2 reaching its end of support on January 1, 2020. See https://python3statement.org/ for more background. * LP solver: add support for the solver [[https://soplex.zib.de/|SoPlex]]<
> http://issues.fast-downward.org/issue752 <
> The relative performance of CPLEX and !SoPlex depends on the domain and configuration with each solver outperforming the other in some cases. See the issue for a more detailed discussion of performance. * LP solver: add support for version 12.9 of CPLEX<
> http://issues.fast-downward.org/issue925 <
> Older versions are still supported but we recommend using 12.9. In our experiments, we saw performance differences between version 12.8 and 12.9, as well as between using static and dynamic linking. However, on average there was no significant advantage for any configuration. See the issue for details. * LP solver: update build instructions of the open solver interface<
> http://issues.fast-downward.org/issue752 <
> http://issues.fast-downward.org/issue925 <
> The way we recommend building OSI now links dynamically against the solvers and uses zlib. If your existing OSI installation stops working, try installing zlib ({{{sudo apt install zlib1g-dev}}}) or re-install OSI ([[LPBuildInstructions]]). * merge-and-shrink: remove trivial factors<
> http://issues.fast-downward.org/issue914 <
> When the merge-and-shrink computation terminates with several factors (due to using a time limit), only keep those factors that are non-trivial, i.e., which have a non-goal state or which represent a non-total function. * tests: use pytest for running most tests<
> http://issues.fast-downward.org/issue935 <
> http://issues.fast-downward.org/issue936 * tests: test Python code with all supported Python versions using tox<
> http://issues.fast-downward.org/issue930 * tests: adjust style of Python code as suggested by flake8 and add this style check to the continuous integration test suite<
> http://issues.fast-downward.org/issue929 <
> http://issues.fast-downward.org/issue931 <
> http://issues.fast-downward.org/issue934 * scripts: move Stone Soup generator scripts to separate repository at https://github.com/aibasel/stonesoup. <
> http://issues.fast-downward.org/issue932