Solving chess

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Solving chess means finding an optimal strategy for playing chess, i.e. one by which one of the players (White or Black) can always force a victory, or both can force a draw (see Solved game). It also means more generally solving chess-like games (i.e. combinatorial games of perfect information), such as infinite chess. According to Zermelo's theorem, a hypothetically determinable optimal strategy does exist for chess and chess-like games.

In a weaker sense, solving chess may refer to proving which one of the three possible outcomes (White wins; Black wins; draw) is the result of two perfect players, without necessarily revealing the optimal strategy itself (see indirect proof).[1]

No complete solution for chess in either of the two senses is known, nor is it expected that chess will be solved in the near future. There is disagreement on whether the current exponential growth of computing power will continue long enough to someday allow for solving it by "brute force", i.e. by checking all possibilities.

Partial results[edit]

a b c d e f g h
a7 black rook
h7 black knight
c6 white queen
f4 black king
d3 white king
h2 white knight
d1 black bishop
h1 black queen
7 7
6 6
5 5
4 4
3 3
2 2
1 1
a b c d e f g h
A mate-in-546 position found in the Lomonosov 7-piece tablebase. White to move. (In this example an 8th piece is added with a trivial first move capture).

Endgame tablebases have solved chess to a limited degree, determining perfect play in a number of endgames, including all non-trivial endgames with no more than seven pieces or pawns (including the two kings).[2]

One consequence of developing the 7-piece endgame tablebase, is that many interesting theoretical chess endings have been found. One example is a "mate-in-546" position, which with perfect play is a forced checkmate in 546 moves.[3]

Such a position is beyond the ability of any human to solve, and indeed no chess engine plays it correctly (unless the engine itself is designed to have access to the tablebase).

Finding positions such as this can make one speculate what other interesting chess situations will be found, as more chess positions are solved. Unfortunately, adding only one single new piece to a chess position expands the complexity of the game-tree by such a vast amount, that the development of an 8-piece endgame tablebase is currently considered an intractable problem.

Predictions on when/if chess will be solved[edit]

Grandmaster Jonathan Rowson has speculated that "in principle it should be possible for a machine to ... develop 32-piece tablebases. This may take decades or even centuries, but unless runaway global warming or nuclear war gets in the way, I think it will eventually happen."[4] However, information theorist Claude Shannon has argued that it is not feasible for any computer to actually do this, since it would either need to compare some 10120 possible game variations, or have a "dictionary" denoting an optimal move for each of the about 1043 possible board positions.[5] It is thus theoretically possible to solve chess, but the time frame required (according to Shannon, 1090 years on a 1 MHz processor) puts this possibility beyond the limits of any "feasible" (as of 1950) technology.

Hans-Joachim Bremermann, a professor of mathematics and biophysics at the University of California at Berkeley, further argued in a 1965 paper that the "speed, memory, and processing capacity of any possible future computer equipment are limited by specific physical barriers: the light barrier, the quantum barrier, and the thermodynamical barrier. These limitations imply, for example, that no computer, however constructed, will ever be able to examine the entire tree of possible move sequences of the game of chess." Nonetheless, Bremermann did not foreclose the possibility that a computer would someday be able to solve chess. He wrote, "In order to have a computer play a perfect or nearly perfect game [of chess,] it will be necessary either to analyze the game completely ... or to analyze the game in an approximate way and combine this with a limited amount of tree searching. ... A theoretical understanding of such heuristic programming, however, is still very much wanting."[6]

Recent scientific advances have not significantly changed that assessment. The game of checkers was (weakly) solved in 2007,[7] but it has roughly the square root of the number of positions in chess. Jonathan Schaeffer, the scientist who led the effort, said a breakthrough such as quantum computing would be needed before solving chess could even be attempted, but he does not rule out the possibility, saying that the one thing he learned from his 16-year effort of solving checkers "is to never underestimate the advances in technology".[8]

Larger chess-like games[edit]

The prospect of solving individual, specific, chess-like games becomes more difficult as the board-size is increased, such as in large chess variants, and infinite chess.[9]

See also[edit]

  • Shannon number (a calculation of the lower bound of the game-tree complexity of chess)
  • First-move advantage in chess (chess-players' speculations on whether white has a slight advantage due to making the first move)


  1. ^ Allis, V. (1994). "PhD thesis: Searching for Solutions in Games and Artificial Intelligence" (pdf). Department of Computer Science. University of Limburg. Retrieved 2012-07-14. 
  2. ^ "Lomonosov Tablebases". Retrieved 2013-04-24. 
  3. ^ "Who wins from this puzzle?" A mate-in-546 chess position, with discussion (Post 1: Position, Post 7: Playable).
  4. ^ Rowson 2005, pp. 205–06.[clarification needed]
  5. ^ Shannon, C. (March 1950). "Programming a Computer for Playing Chess". Philosophical Magazine. 7. 41 (314). Archived from the original (pdf) on 2010-03-15. Retrieved 2008-06-27. 

    "With chess it is possible, in principle, to play a perfect game or construct a machine to do so as follows: One considers in a given position all possible moves, then all moves for the opponent, etc., to the end of the game (in each variation). The end must occur, by the rules of the games after a finite number of moves (remembering the 50 move drawing rule). Each of these variations ends in win, loss or draw. By working backward from the end one can determine whether there is a forced win, the position is a draw or is lost. It is easy to show, however, even with the high computing speed available in electronic calculators this computation is impractical. In typical chess positions there will be of the order of 30 legal moves. The number holds fairly constant until the game is nearly finished as shown ... by De Groot, who averaged the number of legal moves in a large number of master games. Thus a move for White and then one for Black gives about 103 possibilities. A typical game lasts about 40 moves to resignation of one party. This is conservative for our calculation since the machine would calculate out to checkmate, not resignation. However, even at this figure there will be 10120 variations to be calculated from the initial position. A machine operating at the rate of one variation per micro-second would require over 1090 years to calculate the first move!"

  6. ^ Bremermann, H.J. (1965). "Quantum Noise and Information". Proc. 5th Berkeley Symp. Math. Statistics and Probability. Archived from the original on 2001-05-27. 
  7. ^ Schaeffer, Jonathan; Burch, Neil; Björnsson, Yngvi; et al. (14 September 2007). "Checkers Is Solved". Science. 317 (5844): 1518–1522. doi:10.1126/science.1144079. PMID 17641166. Retrieved 2009-03-21. (subscription required)
  8. ^ Sreedhar, Suhas. "Checkers, Solved!". Retrieved 2009-03-21. 
  9. ^ Aviezri Fraenkel; D. Lichtenstein (1981), "Computing a perfect strategy for n×n chess requires time exponential in n", J. Combin. Theory Ser. A, 31 (2): 199–214, doi:10.1016/0097-3165(81)90016-9 

External links[edit]