A short history of computer chess
The first chess machine
In 1769 the Hungarian engineer Baron Wolfgang von Kempelen built a chess
playing machine for the amusement of the Austrian Queen Maria Theresia. It
was a purely mechanical device, shaped like a Turk. Naturally its outstanding
playing strength was supplied by a chess master cleverly hidden inside the
device. The machine was a fake.

Turing's "paper machine"
It is an amazing fact that the first chess program was written before computers
were actually invented. It was written by a visionary man who knew that programmable
computers were coming and that, once they were invented, they would be able
to play chess.
 |
The man was Alan Turing, one of the greatest mathematicians
who ever lived. Turing led the project group that broke the German "Enigma"
code and so helped decide the outcome of the Second World War. He was
very interested in chess, but in spite of having a brilliant intellect
and putting a lot of effort into learning the game he remained a fairly
weak player. Soon after the war he wrote the instructions that would enable
a machine to play chess. Since there was as yet no machine that could
execute the instructions he did so himself, acting as a human CPU and
requiring more than half an hour per move. One game is recorded, which
Turing's "paper machine" lost to one of his colleagues. |
Here's the historic game: Turing's paper machine Alick Glennie,
Manchester 1952: 1.e4 e5 2.Nc3 Nf6 3.d4 Bb4 4.Nf3 d6 5.Bd2 Nc6 6.d5 Nd4
7.h4 Bg4 8.a4 Nxf3+ 9.gxf3 Bh5 10.Bb5+ c6 11.dxc6 0-0 12.cxb7 Rb8 13.Ba6 Qa5
14.Qe2 Nd7 15.Rg1 Nc5 16.Rg5 Bg6 17.Bb5 Nxb7 18.0-0-0 Nc5 19.Bc6 Rfc8 20.Bd5
Bxc3 21.Bxc3 Qxa4 22.Kd2? [22.h5 would have trapped the bishop] 22...Ne6
23.Rg4 Nd4? [23...Rxb2! 24.Bxb2 Rxc2+] 24.Qd3 Nb5 25.Bb3 Qa6 26.Bc4
Bh5 27.Rg3 Qa4 28.Bxb5 Qxb5 29.Qxd6 Rd8 0-1.
Shannon's strategies
Around the same time as Turing another great mathematician,
Claude Shannon of the Bell Laboratories, was thinking about teaching
a computer to play chess. He realized that the problem would be the
very large number of continuations, so he differentiated between an
"A-Strategy" which looks at all continuations and a "B-Strategy"
which cuts off certain lines. Today we differentiate between "brute
force" and "selective" programs, although all strong
programs belong more or less to the former category.
|
|
Chess instead of atomic bombs
During the war the United States built a giant laboratory in Los Alamos in
the deserts of New Mexico. Its purpose was the development of atomic weapons.
Working out the correct shape of the implosion charges that trigger the chain
reaction required a very large number of calculations.

In 1946 the Hungarian/American mathematician John von Neumann was given the
task of designing a powerful calculation machine to speed up the task. In 1950
a giant machine called MANIAC I was delivered. It was filled with thousands
of vacuum tubes and switches and could execute 10,000 instructions per second.
It was also programmable.
Instead of immediately getting to work on the bombs the scientists started
experimenting with the machine. And one of the first things they did was to
write a chess program. It was for a reduced 6 x 6 board without bishops. In
spite of this the program needed twelve minutes to search to a depth of four
ply (with the bishops it would have required three hours).
The program played three games in the mid fifties. The first was against itself
(White won), the second against a strong player who spotted it a queen. The
game lasted ten hours and the master won. Finally it played against a young
lady who had learnt the game a week earlier. The program won the game in 23
moves. It was the first time a human had lost to a computer in a game of intellectual
skill.
Here's the second historic game (6 x 6 board, no bishops, no double-step for
pawns, no castling)
MANIAC 1 Human, Los Alamos 1956: 1.d3 b4 2.Nf3 d4 3.b3 e4
4.Ne1 a4 5.bxa4? [5.Nd2 and 6.Nd2-c4+ Nbcxc4 7.b3xc4 with a good game] 5...Nxa4
6.Kd2? Nc3 7.Nxc3 bxc3+ 8.Kd1 f4 9.a3 Rb6 10.a4 Ra6 11.a5 Kd5 12.Qa3 Qb5 13.Qa2+
Ke5 14.Rb1 Rxa5 15.Rxb5 Rxa2 16.Rb1 [to prevent 16...Ra1 mate!] 16...Ra5
17.f3 Ra4 18.fxe4 c4 19.Nf3+ Kd6 20.e5+ Kd5 21.exf6Q Nc5 22.Qf6xd4+ Kc6 23.Nf3-e5
mate.
Chess and mathematics
The main problem of chess programming is the very large number of continuations
involved. In an average position there are about 40 legal moves. If you consider
every reply to each move you have 40 x 40 = 1600 positions. This means that
after two ply (half-moves), which is considered a single move in chess 1600
different positions can arise. After two moves it is 2.5 million positions,
after three moves 4.1 billion. The average game lasts 40 moves. The number of
potential positions is in the order of 10128 (10 to the power of
128), which is vastly larger that the number of atoms in the known universe
(a pitiful 1080).

It is clear that no computer or any other machine will solve the game by looking
at all possible continuations. But human beings are also imperfect players.
It is only a question of what depth of search is required for a machine to match
human strategic skill. Early computers were able to generate and evaluate about
500 positions per seconds, or 90,000 in three minutes that are available per
move in a tournament game. This means they could search only three ply (one
and a half moves) deep. That led to extremely weak play the level of
a chess novice. To go one ply deeper required about 15,000 positions per second,
a thirty-fold increase. But even four ply is very shallow. So it seemed unlikely
that computers would ever play master-level chess.
Alpha-beta
A first breakthrough came in 1958 when three scientists of the Carnegie-Mellon
University in Pittsburgh (Newell, Shaw and Simon) made an important discovery.
You can chop off large parts of the search tree without affecting the final
results. They called this the alpha-beta algorithm. It is important to note
that is a purely mathematical technique and works without the use of any additional
chess knowledge.
This is, very roughly, how alpha-beta works: say the computer has finished
evaluating a move and started working on a second move. As soon as a single
line shows that it will return a lower value than the first move we can immediately
terminate the search. We do not need to know exactly how much worse the second
move is. The program will definitely prefer the first move.
Alpha-beta produces exactly the same result as a full search, while looking
at only about the square root of the number of positions otherwise required.
Suddenly the early computers were able to look five and six ply ahead. In the
seventies the world's fastest computers (e.g. the CDC Cyber series) were able
to search seven ply deep and had achieved a respectable playing strength. But
even with alpha-beta you need a five-fold increase in speed to go one ply deeper.
The exponential explosion of numbers once again caught up with the programmers.
The hardware machine Belle
Ken Thompson was a computer scientist who couldn't wait for the million-dollar
super-computers to become five or twenty-five times faster in order to get stronger
at chess. He and a colleague at the Bell Laboratories decided to build a special
purpose machine, using many hundreds of chips worth about 20,000 dollars.
They called the machine "Belle", and it could only play chess.
But it was able to search at about 180,000 positions per second (the super-computers
at the time were doing 5000 positions). Belle could go down eight to nine
ply in tournament games, which enabled it to play in the master category.
It won the world computer chess championship and all other computer tournaments
from 1980 to 1983, until it was superseded by giant Cray X-MPs costing a thousand
times more.

Chess chips
In the middle of the eighties Prof. Hans Berliner, a computer scientist
at the Carnegie-Mellon university, picked up where Ken Thompson had left
off. Berliner, who had also been world correspondence chess champion, built
a hardware-driven chess machine called HiTech. He and his graduate student
Carl Ebeling developed a hardware move generator chip. With 64 chips in
parallel HiTech narrowly missed winning the world computer chess championship
in 1986 (it was won by a Cray).

Soon after that Berliner's students Feng-hsiung Hsu, Murray Campbell and
others developed their own machine called ChipTest and later Deep Thought.
It cost about 5000 dollars and ran at 500,000 positions per second. Hsu and
Campbell subsequently broke with their teacher and joined IBM. Together with
Joe Hoane they built IBM's current Deep Blue.

Deep Blue
The machine Garry Kasparov played against in Philadelphia and New York
consisted of a IBM SP/2 server equipped with a large number of special-purpose
chips which do the fast calculations. Each chip is capable of processing
two to three million positions per second. By using over 200 of these chips
the overall speed of the program could be raised to 200 million positions
per second.

Depth vs playing strength
What does a speed of 200 million positions per second imply in a chess machine?
Ken Thompson, the father of Belle (as well as Unix and the computer language
C) conducted some very interesting experiments in the 80s to correlate depth
of search with increase in playing strength.
Thompson played Belle against itself with one side computing progressively
deeper. On an average a single ply of search depth translated to around 200
Elo points at four ply Belle was playing around 1230, at nine ply it
had reached 2328 Elo points.

By extending the curve, which flattens at the top end, one could conclude
that a search depth of 14 ply is required to achieve world championship strength
(2800).
The conclusion of experts: you need to build a computer that runs at one
billion nodes per second (and searches 14 ply deep) if you wish to challenge
the human world champion for his title. Deep Blue comes close, but isn't there
yet.
The micros
Naturally the quality of programming also plays an important role. Today's
top PC programs like Fritz and Junior run at 500,000 and more positions per
second. They realistically have a playing strength of over 2600 and are a
match for all but the top 100 players in the world. In rapid chess only the
top dozen or so can compete, in blitz chess probably only two or three players
could survive.
Assault on both fronts
An important role in the strength of computers is played by extensive openings
books. The collective knowledge and experience of generations of human masters
can easily be stored on hard disk and accessed during the opening phase of
the game. Even the PC programs know tens of millions of openings positions
and have access to full statistics on each of them (which moves were played,
with what success, by what calibre of players, etc.). Very often a program
will play fifteen or twenty moves of a game before it begins to compute for
the first time. Without the benefit of this human knowledge in the openings
the programs would be considerably weaker.
While computers are gaining a substantial advantage from the vast amount
of openings knowledge that has accumulated in the history of chess, they also
profit from a research at the other end of the game.
Endgame databases
Once again it was the ubiquitous Ken Thompson who pioneered this development.
In the 80s he began to generate and store all legal endgame positions with
four and five pieces on the board. A typical five-piece ending, like king
and two bishops vs king and knight, contains 121 million positions. With a
pawn, which is asymmetric in its movements, the number rises to 335 million.
Thompson wrote programs that generated all legal positions and worked out
every forcing line that is possible in each endgame. He also compressed the
resulting data in a way that allowed one to store about 20 endgames on a standard
CD-ROM.
Using these databases a computer will play each of the endgames absolutely
perfectly ("like God"). In any position with the given material
on the board it knows instantly whether it is a win, draw or loss and in how
many moves. Often it will announce a win or mate in over fifty moves. On the
losing side it will defend optimally. Deep Blue uses Thompson's endgame databases,
and even the PC program Fritz is now implementing them in its search tree.
How this will affect its playing strengths remains to be seen.

Ken Thompson with Garry Kasparov
Some of the five-piece endings are notoriously difficult or even impossible
for human beings to master. A prime example is queen and pawn vs queen, in
which no human has the slightest chance against a computer. But these five-piece
endgames are tic-tac-toe compared to the six-piece endings which Thompson
is currently generating. In some six-piece positions you need to play over
200 accurate moves to win. Often it is impossible for the strongest players
in the world to even tell what progress has been made after 100 moves which
the computer tells us are absolutely essential. Naturally the development
of hardware is working in favour of the computers. Thompson's six-piece endings,
which contain 8 to 20 billion positions each, can be compressed to fit nicely
on a DVD.
Luckily seven-piece endings, which contain half a trillion positions each,
are still a long way off. And even more luckily the two ends openings
research and endgame databases will never meet. It is highly unlikely
that anyone will ever see a computer which plays 1.e4 and announces mate in
40. But it is probably only a matter of time, of a few years or a decade,
before a computer will consistently beat the human world champion in the game
of chess.
When will it happen?
When exactly will that happen? When will a computer beat the world champion
in a regular match? Here are the predictions of some leading experts, made
in the years 1991 to 1994:
|
1992
|
Prof. Monty Newborn
|
|
1993
|
John McCarthy
|
|
1994
|
Hans Berliner, Feng-hsiung Hsu
|
|
1995
|
Murray Campbell, Donald Michie, Mike Valov
|
|
1999
|
Claude Shannon, Frederic Friedel
|
|
2001
|
John Nunn
|
|
2010
|
Garry Kasparov
|
|
2018
|
Ken Thompson
|
Frederic Friedel