Freecell Solver version 3.4.0
has been released. It is available in the form of a source tarball from
the
download page.
In this release, we've added the --set-pruning flag to turn on
the Horne's play prune, which improves performance. There are two new presets
- -l enlightened-ostrich (or -l eo for short), which makes
use of --set-pruning and is the fastest preset yet, and
-l maliciously-obscure (-l mo) which is slow but generates
especially short solutions.
We added a compile-time option to use
RCS-like
states storage which conserves a lot of RAM and allowed Freecell
Solver to scale to over 200 million positions on an x86-64 machine with
64 GB of RAM (which was utilised for that courtesy of Amadiro's university).
There are many other major and minor speed and memory optimisations in this
release.
The --ms and -M flags were added to
the make_pysol_freecell_board.py program, to generate Microsoft
deals even for numbers higher than 32,000, which are different in
PySol and PySolFC. Furthermore, the CMake configuration was updated to
use "lib${LIB_SUFFIX}", so it can be built on some 64-bit systems.
Finally, there's an experimental --trim-max-stored-states which
currently may crash the solver, but we decided to release it despite this fact.
All of these changes prove to be a huge step forward for Freecell Solver making
this release its best release yet.