The Bernstein Chess Program

From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * The Bernstein Chess Program

The Bernstein Chess Program,
was the first complete chess program, developed around 1957 at Service Bureau Corporation, Madison & 59th Street, Manhattan, New York City [2], by chess player and programmer at IBM, Alex Bernstein with his colleagues Michael de V. Roberts, Timothy Arbuckle and Martin Belsky, supported by chess advisor Arthur Bisguier [3], who became IBM employee at that time and in 1957 international chess grandmaster, and supervised by Nathaniel Rochester [4]. Pamela McCorduck, who was married to Joseph F. Traub, interviewed Alex Bernstein as published with several details given on the development of the program in her seminal book Machines Who Think [5].



Quotes by Pamela McCorduck from Machines Who Think [6]

Bernstein drew upon not only his own experience with chess, but began to study Modern Chess Openings, which came out then every two years, and spent six months going through some five hundred chess openings. He assigned scores to various positions, scores that depended not only on the pieces retained, but also on area control of the board and mobility. He also developed a fourth measure, what he called a “greens area” around the king, meaning that the more squares outward from the king controlled by his own side the better. But after six months of this he gave it up. He couldn’t make any sense out of it.
At this time, Bernstein was unaware of Shannon’s seminal papers, and did not know that chess had caught the interests of a group at Los Alamos, including J. Kister, P. Stein, S. Ulam, W. Walden, and M. Wells, who were working on a limited 6x6 board, rather than the regulation 8x8. Nor did he know that Allen Newell, J. C. Shaw, and Herbert Simon together, and John McCarthy independently, were also pondering chess-playing machines. Alex Bernstein only knew that the problem was hot ... 
It was now that Bernstein became aware of Turing’s work and read at least one of Shannon’s papers. When he finally began to see how he might codify some of the principles he felt were essential, he telephoned Claude Shannon at MIT. “I went up to MIT and spent a day or two with him, telling him what I was planning to do, and he said he thought it was intelligent, and a good way of proceeding. Essentially I felt I’d received his blessings, which was pleasant.”
Bernstein also mentioned that he was working on the problem to Dr. Edward Lasker, a well-known chess writer, who introduced him to Stanislaw Ulam of the Los Alamos group. Bernstein had the advantage that the Los Alamos group didn’t have, of a machine with a large amount of memory, although the four thousand words of memory the IBM 704 had to begin with were insufficient for Bernstein’s program in the end. The 704’s memory was to have doubled by the time Bernstein finished his program, and he still came within two hundred words of overflowing memory.
So Bernstein’s chess program selected what seemed to be the likeliest fruitful moves, and these it examined in considerable depth, comparing one to another among a number of dimensions. The program contained a large data base, which allowed it to examine any particular piece or square at any time. In descending order of importance, the program asked such questions as, Is the king in check? If the king is in check, there is nothing else to do. Is the king in double check? If he is, merely to capture one piece that threatens the king will be insufficient; the king must be moved. The next question had to do with material: is there any to be gained, or any in danger of capture? And clearly it is more important to rescue or capture a rook than to rescue or capture a pawn, and this was factored into the program. 


As mentioned by John McCarthy [7], the Bernstein Chess Program under construction was presented at the 1956 Dartmouth workshop:

Alex Bernstein of IBM presented his chess program under construction. My reaction was to invent and recommend to him alpha-beta pruning. He was unconvinced. 

Shannon Type B

The Bernstein Chess Program was the prototype of a selective forward pruning, Shannon Type B program. On an IBM 704, one of the last vacuum tube computers, it searched four plies minimax in around 8 minutes, considering seven most plausible moves from each position and evaluated material, mobility, area control and king defense [8].



External Links


Up one Level