Deckipedia
Freecell Kpatience Konqi

Part way through game of FreeCell on KDE.

FreeCell is a solitaire card game played with a 52-card standard deck. Although implementations vary, most versions label the hands with a number (derived from the random number seed used to generate the hand). FreeCell is fundamentally different from most solitaire games in that most deals can be solved (for example, see Windows versions).

Rules

Construction and layout:

  • One standard 52-card deck is used.
  • There are four open cells and four open foundations. Some alternate rules use between one to ten cells.
  • Cards are dealt evenly into eight cascades. Some alternate rules will use between four to ten cascades.

Building during play:

  • The top card of each cascade begins a tableau.
  • Tableaus must be built down by alternating colors.
  • Foundations are built up by suit.

Moves:

  • Any cell card or top card of any cascade may be moved to build on a tableau, or moved to an empty cell, an empty cascade, or its foundation.
  • Complete or partial tableaus may be moved to build on existing tableaus, or moved to empty cascades, by recursively placing and removing cards through intermediate locations. While computer implementations often show this motion, players using physical decks typically move the tableau at once.

Victory:

  • The game is won after all cards are moved to their foundation piles.

History

FreecellWinXP

FreeCell for Windows XP.

One of the oldest ancestors of FreeCell is Eight Off. In the June 1968 edition of Scientific American, Martin Gardener described in his "Mathematical Games" column a game by C. L. Baker that is similar to FreeCell, except that cards on the tableau are built by suit rather than by alternate colors. This variant is now called Baker's Game. FreeCell's origins may date back even further to 1945 and a Scandinavian game called Napoleon in St. Helena (not the game Napoleon at St. Helena, also known as Forty Thieves). [1]

Paul Alfille changed Baker's Game by making cards build according to alternate colors, thus creating FreeCell. He implemented the first computerised version of it in the Tutor programming language for the PLATO educational computer system in 1978. Paul managed to display easily recognisable graphical images of playing cards on the 512×512 monochrome display on the PLATO systems.[1]

This original FreeCell environment allowed games with 4–10 columns and 1–10 cells in addition to the standard 8×4 game. For each variant, the program stored a ranked list of the players with the longest winning streaks. There was also a tournament system that allowed people to compete to win difficult hand-picked deals. Paul Alfille describes this early FreeCell environment in more detail in an interview from 2000. [2]

The game gained worldwide popularity thanks to Jim Horne, who learned the game from the PLATO system and implemented a version of the game with color graphics for Windows. It was first included with Microsoft Win32s as a test program, then in the Microsoft Entertainment Pack Volume 2 and the later "Best Of Microsoft Entertainment Pack". However, FreeCell remained relatively obscure until it was made a part of Windows 95 and has been included with every version of Windows since[1] (though Windows Vista Business Edition does not include it by default. It must be specifically installed.)

Today, there are many other FreeCell implementations for every modern system, some of them as part of solitaire suites. However, it is estimated that as of 2003, the Microsoft version remains the most popular, despite the fact that it is very limited in player assistance features, such as retraction of moves. However, with the introduction of Windows Vista, the FreeCell implementation contains basic hints and unlimited move retraction.

Difficulty

The FreeCell game, by allowing a finite number of possible games, can be trivially solved in polynomial time. Like Minesweeper, a generalized version of the FreeCell game with 4×n cards is provably hard (NP-complete). This result was proven in 2000 and first published in 2001.[2] The result implies that writing a computer algorithm that finds solutions for arbitrary FreeCell configurations of the generalized version quickly would be a major scientific breakthrough. A perfect FreeCell playing program running in polynomial time would earn the discoverer a $1,000,000 prize for solving one of the Clay Mathematics Institute's wikipedia:Millennium Prize Problems. However, most researchers believe that no such efficient solution procedure exists.

Solvers

One of the passions of several FreeCell enthusiasts was to construct computer programs that could automatically solve FreeCell. Don Woods wrote a solver for FreeCell and several similar games as early as 1997. This solver was later enhanced by Wilson Callan and Adrian Ettlinger and was incorporated into their FreeCell Pro software.

Another known solver is Patsolve of Tom Holroyd. Patsolve uses atomic moves, and since version 3.0 incorporated a weighting function based on the results of a genetic algorithm that made it much faster.

Shlomi Fish started his own solver own solver simply dubbed "Freecell Solver" (with a lowercase "C") beginning in March 2000.

Gary Campbell wrote a solver for FreeCell for DOS (and compatible systems) in Assembly. This solver weighs in at 12 kilobytes, and is quite fast.

The most comprehensive list of solvers known contains links to other solvers. New solvers are constantly being written as part of assignments or projects for some university courses.

The Internet FreeCell Project

When Microsoft FreeCell became very popular during the 1990s it was not clear which of the 32,000 deals in the program were solvable. To clarify the situation, Dave Ring started The Internet FreeCell Project, took on the problem to try to solve all the deals using human solvers. Ring assigned 100 consecutive games chunks across volunteering human solvers and collected the games that they reported to be unsolvable, and assigned them to other people. This project used the power of multiprocessing, where the processors were human brains, to quickly converge on the answer. The project was finished in October 1995, and only one game defied every human player's attempt: #11,982, which has been shown to be unsolvable by several exhaustive-search software solvers.

Windows versions

FreeCell on Windows.

While there are actually 52!/8! (!=factorial), or approximately 2.00×1063, possible games, some games may be similar to others because suits assigned to cards are arbitrary. When a card is black, for example, it may be assigned to clubs or spades. (or, you may swap columns to create similar/equivalent games)

The original Microsoft FreeCell package includes 32,000 games, generated by a 15-bit random number seed. These games are known as the "Microsoft 32,000". Later versions of Microsoft FreeCell include more games, of which the original 32,000 are a subset. All hands in the Microsoft 32,000 have been beaten except for Game #11982.[1]. Many humans and several FreeCell solving programs have been unable to find a solution but without a mathematical proof, it (and the other unsolved games) can only be assumed to be unsolvable.

The original Help file remains through modern Microsoft versions: "It is believed (although not proven) that every game is winnable." This was known at the time to be untrue in its strictest sense. Games numbered -1 and -2 were included as a kind of easter egg to demonstrate that there were some possible card combinations that clearly could not be won. Nevertheless it started a flurry of interest in the question of whether all of the Microsoft 32,000 could be beaten. Smart players could win most games most of the time, but that wasn’t proof either way.

In later implementations of FreeCell in Microsoft Windows, there are at least 1,000,000 games.

One way to "win" at any Microsoft FreeCell game (prior to Windows Vista) was added as a way to help the original software testers; one must push the following key combination of Ctrl-Shift-F10 at any time during the game. When the dialog box appears on screen click 'Abort' to win, 'Retry' to lose, or 'Ignore' to cancel and continue playing the game as originally intended. Double-click any card for the results. However, this does not actually provide a correct solution to the game. Doing this combination on the unsolvable games however shows that there are decks that are not topped with Kings but instead with other cards, including Aces.

Another way is to open 'Select Game' and type -3 or -4 in the Select Game dialog box. When the game loads, simply drag an ace to the suit home pile, and the other cards will automatically follow onto the suit home pile, winning the game (Windows Vista only).

Unsolvable Combinations

Out of the Microsoft Windows games, there are believed to be 8 which are unsolvable. They are games No. 11,982, No. 146,692, No. 186,216, No. 455,889, No. 495,505, No. 512,118, No. 517,776, and No. 781,948. This conclusion was arrived at by the consensus of several authors of FreeCell solvers. The solvers of both Danny A. Jones and Gary D. Campbell have been run through the first million FreeCell games and have found solutions to all but these eight. Several other solvers have also failed to produce solutions to these games.[3]

Forecell

Forecell is an uncommon variant of FreeCell that appears on various software programs. It is the earlier variant of Solitaire similar to FreeCell which was uncovered.

References

  1. 1.0 1.1 1.2 Kaye, Ellen. "One Down, 31,999 to Go: Surrendering to a Solitary Obsession", New York Times, 2002-10-17. 
  2. Malte Helmert, Complexity results for standard benchmark domains in planning, Artificial Intelligence Journal 143(2):219-262, 2003.
  3. FreeCell FAQ and links. Retrieved on 2007-10-02.

External links