What are the uses of a solver for Patience/Solitaire card games, such as Freecell Solver?

Node Link

Freecell Solver is unlikely to help in curing cancer, or solve world hunger, but it still has some uses. One use is determining whether an initial layout of a game, or a layout in mid-play is solvable or not so a human player can know whether he needs to return to an earlier position. The default configuration of Freecell solver may still report a small number of solvable positions as unsolved, but that can be mitigated by passing some command-line flags.

Another use of a Solitaire solver is to find solutions for difficult deals, or attempt to find shorter solutions. It can also be used to provide hints by giving the first leading moves, when a (human) player gets stuck.

Yet another use is to collect statistics from a large number of random deals (say, the Microsoft Windows Freecell deals or PySolFC’s deals), which is part of what Freecell researchers do.

Freecell 3D, a Freecell implementation for Windows, has also introduced a “Race against the computer” mode of Freecell, which is an interesting challenge.

Finally, we have more recently started to investigate some “human/computer collaboration”-based Freecell solving, where a human aided by a Solitaire suite with a good solver integration can attempt to solve some difficult deals (for both a human and a computerised solver), by pruning dead ends, and by finding whether reached states are solvable. This provides a combined solving technique, that is greater than the sum of both parts.