Computer Chess Club Archives


Search

Terms

Messages

Subject: A piece of history: The Most Grotesque Chess Engine Ever Written?

Author: George Sobala

Date: 15:14:22 12/09/04


I want to take you back in time, to 1977 in fact. An undergraduate in Cambridge
(UK) had just learnt how to program by attending a FORTRAN course. About two
months after HELLO WORLD, and inspired by tic-tac-toe programs written by
friends, he embarked on a project which probably should figure in a history of
Chess Computing Disasters.

He decided to write a chess program.

In FORTRAN.

On the plus side, he had read David Levy's book on the topic, and his engine
included such features as a positional evaluation function, alpha-beta search,
and extensions for checks and captures.

However there were a few hurdles placed in his way, over and above those he
placed there himself.  A mere first year undergraduate had little allocation to
real-time access to University Computers, and it rapidly became obvious the
teaching computer did not really have the horsepower for this sort of project.
It was going to have to run on the University Mainframe, an Amdahl 470 clone of
an IBM/370 with a staggering 4 Megabytes of memory.

So the program was written out by hand onto reams of paper, and then it was
laboriously transferred to huge stacks of punched cards: real software, that
unfortunately could rapidly turn to tornware or crumpledware.

Finally a batch job was submitted to the mainframe: the initial position, and
the engine was to run until it ran out of CPU time. All 5 seconds of it.

After three days watching the batch job move up and down the queue
(undergraduates had what could best be described as negative priority), the job
finally ran in the dead of night. And it became obvious that not only must there
be a few bugs in the code, but also that even the mighty Amdahl could not search
very far in 5 CPU seconds (at least not with this crummy code).

The bugs were ruthlessly exterminated, and a novel pruning method was devised to
extend the search depth, one which I have certainly never seen described here.
Rather than choosing moves to exclude, the programmer decided to prune pieces.
And squares.

The following chess variant was born:

RNQKBR
PPPPPP
......
......
PPPPPP
RNQKBR

and many more batch jobs were submitted, and many days were spent waiting for
them to execute, and the programmer beheld the results. I think it would be true
to say that the engine played moves that were astonishing, and beyond the ken of
its author. Yup - it was crap.

That was SOBCHESS, and I claim that none of you can beat that story, and I claim
the chocolate brownie.




This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.