AI-Pathfinding-OptimizeMultiple

optimize path finding searches for a large set of initial conditions (for better average performance).


Keywords
ansic, c, card-game, cards, floss, foss, freecell, freecell-solver, freesoftware, game, games, hacktoberfest, mit-license, opensource, patience, solitaire
License
MIT

Documentation

The Freecell Solver Repository Root README

Freecell Solver is an open source (distributed under the MIT/Expat licence) library, written in C, for attempting to solve several variants of card Solitaire/Patience, including Freecell , Baker’s Game , Seahaven Towers , and Simple Simon . Also contained are several command-line programs that use it, and the original project also span some other code for testing and for support.

Travis-CI Build Status AppVeyor Build status

Screenshots

PySol FC Running Freecell Solver

Videos

PySolFC Solving Freecell

Repository structure

This contains the source of the solver itself. One can use CMake to build it.

This is the Games-Solitaire-Verify CPAN module. For more information see:

This is a CPAN module for installing the various test dependencies that are found on CPAN.

This is a CPAN module for installing the various test dependencies that are found on CPAN. More comprehensive.

The Freecell Solver Architecture Document. Somewhat out-of-date, but may be studied for general enlightenment.

Some code that is used in order to calculate the built-in command-line presets, like “-l good-intentions” or “-l maliciously-obscure”. Not very documented. This code is written in parts in Perl, Bash and Mono.NET.

Contains code that is no longer used.

Contains various documents that are not part of the main source distribution. Mostly specifications and planning documents.

Logs of various benchmarks of the code.

How to use the library

The external API, which is provided by freecell-solver/fcs_user.h , freecell-solver/fcs_cl.h and some other headers, is not documented, but it corresponds to the command line interface that is documented in the USAGE and the README documents, has some examples in the code, and should not be hard to use.

Related repositories and links