The checkers program was developed over the years. The first running version was completed for the 701 in 1954 but it wasn't until 1955 that Samuel managed to implement a really effective learning scheme. The following year he appeared on TV with it where they pitted an expert against a 701.
He got computer time to develop the checkers program by using it to test the next generation of IBM's machines, the 704, as they left the production line:
"It wasn't until the 704 was developed that I got a lot of machine time. There were lots of machines on the factory floor ... and from midnight to the next morning they just sat there not being used. They let me go in and start my checkers program that I had fixed so that it would run continuously. I had as many as four machines working through the night playing checkers with themselves and accumulating statistics on their different playing schemes. This went on for several months, and they were glad to do it for it was a good way to test the machines"
Despite the TV appearance the whole thing was very low key and initially he published nothing on his amazing program. The reason was that IBM did not want to stir up trouble with the unions over the idea that the "electronic brain" might be just around the corner - with the consequent loss of jobs.
He eventually persuaded IBM to start the IBM Journal of Research and Development and in 1959 published the first academic account of machine learning, "Some Studies of Machine Learning Using the Game of Checkers", in which he presented the program's use of alpha-beta pruning:
(click to enlarge figure)
This paper was invited to be included in the collection of seminal works in AI, Computers and Thought edited by Edward A. Feigenbaum and Julian Feldman. Samuel used that request as an opportunity to challenge the Connecticut state checker champion, the number four ranked player in the nation. Samuel's program won. The annotated game was included in the book as an appendix to Samuel's paper.
Stanford and Recognition
In 1966 he retired from IBM but he wasn't ready to give up work. He went to Stanford University as a research associate and then professor. The work that he did carried on his interests in AI. He worked on speech recognition using Fourier transforms and, of course, on his checker program. It became so good that it could beat all comers - until it was outclassed in the 1970s.
At this point he gave up his work developing it but not programming in general. He seems to have done a remarkable amount of actual programming for someone at so late a stage in their career! He worked on a Pascal version of TeX with Donald Knuth and wrote a text editor and worked on the SAIL operating system. He also wrote a number of introductory texts on computing and on TeX.
He even got into video games! A company called Video Brain wanted to build a $500 games machine and Samuel was to provide the checkers program for it. He packed the game down from 40K to only 4K. Then he wrote an even better game of Othello.
By the time he was working on his third game, Atari had the market to itself and Video Brain gave up on games machines. He was approached by Atari and by Apple to convert his games but he turned them both down.
In 1987 Samuel was a recipient of the IEE Computer Pioneer Award:
"For Adaptive non-numeric processing"
a citation that recognises the way in which his checkers program used learning methods to adjust its criteria for choosing moves to correspond to those thought best by chess experts.
A Lifelong Programmer
Programming must have been a passion for Samuel as much as his checkers program. He programmed long after age forced him to give up research. He last logged on to the Stanford computer on February 2, 1990 and his home computer was used until he died in July of that year.
The first IBM System 360 was launched on 7th April 1964 and with it a new era of computing started - modular, upgradable and eventually a commodity item. The 360 architecture influences everything inc [ ... ]
In the mid 70s it was revealed that British Intelligence had been using machines to break the German coded communications - and one of the machines was an early electronic computer called Colossus. Ca [ ... ]