Professional Documents
Culture Documents
Programming A Computer For Playing Chess: by Claude E. Shannon
Programming A Computer For Playing Chess: by Claude E. Shannon
Programming A Computer For Playing Chess: by Claude E. Shannon
Playing Chess
By Claude E. Shannon
Programming a Computer for
Playing Chess
Published in
“Philosophical
Magazine”, in
1950.
Considered as an
important milestone
in computer chess
programming
About the paper
A won position for White. That is, White can force a win,
however Black defends.
A draw position. White can force at least a draw, however
Black plays, and likewise Black can force at least a draw,
however White plays. If both sides play correctly the game will
end in a draw.
A won position for Black. Black can force a win, however
White plays.
Von Neumann and Morgenstern,
1944
Nature of existence theorem
No practical method is known to
determine which of the three is correct
If would be determined, probably
would lose interest in chess
Altering the rules…
A slight change of the rules, guarantees at least a
draw for white.
Suggested change: A player may choose to “pass”.
Proof:
If white has a winning move – make it.
Otherwise – choose to “pass”.
By the symmetry Black is faced with the same position white just
had…
Since white had no winning move before, Black has none now.
Hence, black at best can draw
Evaluation function - f(P)
Sometimes a simple evaluation function can be
applied to any position P to determine whether it is a
won/lost/drawn position
Example: The game of Nim
If number of ones in each column binary
representation) is even, the player about to move
looses
-1 1 -2
MinMax Complexity
g(P) = 0 , Otherwise.
High value:
Check
Captures
Attack on major pieces
Medium value:
Developing moves
Defensive moves
should NOT eliminate moves that merely look bad at first sight (piece
en prise)
Further Developments..
Opening Book
Statistical variation – for position P,
create some distribution and play by it
Positional vs. Combination Player
Endgame Solver
Iterative Deepening
Recent Achivements
References
Claude E. Shannon , Programming a Computer Playing Chess,
Philosophical Magazine, Ser. 7, Vol 41, No. 312 – March 1950
The F.I.D.E. Laws of Chess, http://www.chessvariants.com/fidelaws.html
S. Russel, P. Norvig, Artificial Intelligence A Modern Approach, Prentice
Hall, 1995.
Lecture notes of Workshop in Reinforcement Learnning 2003/4 by Prof.
Yishay Mansour, TAU
ChessBase, A short history of computer chess,
http://www.chessbase.com/columns/column.asp?pid=102