Belle (chess machine)

Belle was a chess computer developed by Joe Condon (hardware) and Ken Thompson (software) at Bell Labs. In 1983, it was the first machine to achieve master-level play, with a USCF rating of 2250. It won the ACM North American Computer Chess Championship five times and the 1980 World Computer Chess Championship. It was the first system to win using specialized chess hardware.

In its final incarnation, Belle used an LSI-11 general purpose computer to coordinate its chess hardware. There were three custom boards for move generation, four custom boards for position evaluation, and a microcode implementation of alpha-beta pruning. The computer also had one megabyte of commercial memory for storing transposition tables.

At the end of its career, Belle was donated to the Smithsonian Institution. The overall architecture of Belle was used for the initial designs of ChipTest, the progenitor of IBM Deep Blue.[1]

Origins

Following his work on the Unix operating system, Ken Thompson turned his attention to computer chess.[2] In summer 1972, he began work on a program for the PDP-11, which would eventually become Belle. In competition, this early version encouraged Thompson to pursue a brute-force approach when designing Belle's hardware.[3]

Design

Belle's design underwent many changes throughout its lifetime. The initial chess program was rewritten to utilize move-vs-evaluation quiescence search and evaluate positions by prioritizing material advantage. Belle also used a transposition table to avoid redundant examinations of positions.[3]

Hardware Move Generator

abcdefgh
8
Chessboard480.svg
d7 black bishop
c6 up-right arrow
b5 black bishop
e2 white rook
f2 right arrow
g2 white rook
8
77
66
55
44
33
22
11
abcdefgh
Defining a move.
Belle represents a move by defining a "from" square and a "to" square, using a ∆xy offset counter. The rook move above has an offset (2,0), while the bishop's is (2,2).

In 1976, Joe Condon implemented a hardware move generator to be used with software version of Belle on the PDP-11. His design had several steps:

  1. A 6-bit "from" register searches the board for friendly pieces.
  2. Once a friendly piece is found, a ∆xy move-offset counter provides a bit-code for the move offset, e.g (2,2) for a bishop or (2,0) for a rook.
  3. This offset is combined with the contents of the "from" register and moved to a 6-bit "to" register. These two registers fully describe a potential move.
  4. A test circuit compares the move to the existing board to determine whether the move is pseudo-legal. If it is, the "from" and "to" registers are output to software.[3]

A similar series of steps uses the move generator to test whether the pseudo-legal move is in fact legal. This ensures that the move does not place the moving side in check.[4]

Second Generation

Belle's second generation was completed in 1978. It implemented several improvements over its predecessor.

  • The move generator had its own stack, which it used to store moves, rather than outputting them to software.
  • A hardware implementation of the position evaluator was added.
  • A hardware implementation of the transposition memory.

These changes reduced the role of the PDP-11 software. Now, the software controlled these three devices and ran the alpha-beta pruning algorithm. The second generation of Belle could search 5,000 positions per second.[5]

Third generation

Belle's final incarnation was completed in 1980. It consisted of further improvements to the speed of move generation and evaluation.

  • The move generator now included 64 transmitter and receiver circuits. Each transmitter remembered the piece on its square and potential moves that piece could make. Each receiver detected incoming moves, or threats, from other pieces. Extra circuitry detected castling and en passant.[6]
  • The evaluator could now examine square control, using 64 specialized circuits, as well as pawn structure.
  • The transposition memory was increased to 1 Mb.
  • Belle's Alpha-beta algorithm was now implemented in microcode, controlling the move generator, evaluator, and transposition table.[7]

The third generation of Belle was controlled by an LSI-11 computer. Depending on the stage of the game, it examined 100,000 to 200,000 moves per second.[8]

Career

Early Competitions

Ken Thompson's software version of Belle competed in the 1972 U.S. Open Chess Championship and the 1973 ACM Computer Chess Championship. Over the next year, Belle played several UCSF games and finished 3-1 in the 1974 ACM Computer Chess Championship.

In 1978, the second generation of Belle competed at the ACM Computer Chess Championships, winning with a perfect 4/0.[5] In a pivotal game against Chess 4.7, the runner-up, Belle examined 5,000 positions per second, while Chess 4.7 examined 3,500.[9]

World Championship

In 1980, the third generation of Belle won the third World Computer Chess Championship in Linz, Austria. After four rounds, it had a score of 3.5/4, tied with the Chaos chess machine.[10] In a tie-breaker for the world-champion title, Belle broke through Chaos's Alekhine's Defense and went on to declare checkmate in 8, winning the game on turn 41.[11] During the game, Belle searched 160,000 positions per second.[12]

Master Rating

In 1983, Belle competed in the U.S. Open, where it finished 8.5/3.5 with a performance rating of 2363. Later that year, the USCF awarded Belle the rank of master.[13] Because it reached this level before any other chess computer, Belle was awarded the $5,000 Fredkin prize. Belle's reign ended when it placed sixth in the Fourth World Computer Chess Championship, despite being the favorite to win.[13] It managed one more win at the ACM Championships in 1986 before retiring.

Performance Analysis

Because of its ability to generate and analyze many chess positions, Belle represented the brute-force approach to chess computing. In the late 1970s, Thompson became interested in the limits of this method, playing different versions of Belle against one another. Using identical machines allowed him to minimize effects of the individual machine's play style while isolating the effects of search depth. For instance, if one Belle computer searches three levels deep, the other might search to 4. Thompson concluded that for each additional level of search, Belle improved by approximately 250 points.[14][15] This effect has been replicated in self-play experiments with different machines.[16] Beyond 2,000 points, however, Thompson found that improvements leveled off.[17]

See also

Notes

  1. ^ Newborn 1997 p. 147.
  2. ^ Newborn 1997 p. 91.
  3. ^ a b c Frey 1983 p. 202.
  4. ^ Frey 1983 p. 203.
  5. ^ a b Frey 1983 p. 204.
  6. ^ Frey 1983 p. 205.
  7. ^ Frey 1983 p. 206.
  8. ^ Frey 1983 p. 207.
  9. ^ Newborn 1997 p. 93.
  10. ^ Newborn 1997 p. 98.
  11. ^ Levy 1980 p. 663.
  12. ^ Levy 1980 p. 664.
  13. ^ a b Newborn 1997 p. 92.
  14. ^ Newborn 1997 p. 122.
  15. ^ Frey 1983 p. 209.
  16. ^ Heinz 2001 p. 76.
  17. ^ Newborn 1997 p. 123.

References

  • Dennis Ritchie (June 2001). "Ken, Unix and Games". ICGA Journal. 24 (2).
  • Condon, J.H. and K. Thompson, "Belle Chess Hardware", In Advances in Computer Chess 3 (ed. M.R.B.Clarke), Pergamon Press, 1982.
  • Computer History Museum
  • Levy, D.; Mittman, B.; Newborn, M. (1980). "3rd World Computer Chess Championship". Communications of the ACM. 23 (11): 661–664. ISSN 0001-0782. Retrieved 2017-04-20.
  • Heinz, E. A. (2001). "Self-play, deep search and diminishing returns - Ken Thompson". Icga Journal. 24 (2): 75–79. ISSN 1389-6911.
  • Condon, Joseph H.; Thompson, Ken (1983). "Chapter 9: Belle". In Frey, Peter W. (ed.). Chess Skill in Man and Machine. New York: Springer-Verlag. pp. 201–210. ISBN 978-0-387-90815-1.
  • Newborn, Monroe. (1997). Kasparov versus Deep Blue: computer chess comes of age. New York: Springer. ISBN 978-0-387-94820-1.
Belle

Belle may refer to:

Belle (given name), a list of people and fictional characters

Belle (surname), a list of people

Computer chess

Computer chess includes both hardware (dedicated computers) and software capable of playing chess. Computer chess provides opportunities for players to practice even in the absence of human opponents, and also provides opportunities for analysis, entertainment and training. Since around 2005, chess engines have been able to defeat even the strongest human players. Nevertheless, it is considered unlikely that computers will ever solve chess due to its computational complexity.

History of computing in the Soviet Union

The history of computing in the Soviet Union began during the late 1940s, when the country began to develop MESM at the Kiev Institute of Electrotechnology in Feofaniya. Initial ideological opposition to cybernetics in general was overcome during the Khrushchev era, and computer production was officially encouraged.By the early 1970s, uncoordinated work by competing government ministries left the Soviet computer industry lacking common standards in peripherals and digital capacity which led to a significant technological lag behind Western producers. The Soviet government decided to abandon the development of original computer designs and encouraged the pirating of Western systems.Soviet industry lacked the technology to mass-produce computers with acceptable quality standards, and locally-manufactured copies of Western hardware were unreliable. As personal computers spread to industries and offices in the West, the Soviet Union's technological lag increased.Nearly all Soviet computer manufacturers ceased operations after the breakup of the Soviet Union. The few companies which survived into the 1990s used foreign components and never achieved large production volumes.

Ken Thompson

Kenneth Lane Thompson (born February 4, 1943) is an American pioneer of computer science. Having worked at Bell Labs for most of his career, Thompson designed and implemented the original Unix operating system. He also invented the B programming language, the direct predecessor to the C programming language, and was one of the creators and early developers of the Plan 9 operating system. Since 2006, Thompson has worked at Google, where he co-invented the Go programming language.

Other notable contributions included his work on regular expressions and early computer text editors QED and ed, the definition of the UTF-8 encoding, his work on computer chess that included creation of endgame tablebases and the chess machine Belle.

Turochamp

Turochamp is a chess program developed by Alan Turing and David Champernowne in 1948. It was developed as part of research by the pair into computer science and machine learning. Turochamp is capable of playing an entire chess game against a human player at a low level of play, by calculating all potential moves and all of the potential player moves in response, assigning point values to each game state, and selecting the move with the highest average possible point value.

Turochamp is the earliest known computer game to enter development, but was never completed by Turing and Champernowne, as its algorithm was too complex to be run by the early computers of the time such as the Automatic Computing Engine. Turing attempted to convert the program into executable code for the 1951 Ferranti Mark 1 computer in Manchester, but was unable to do so. Turing played a match against computer scientist Alick Glennie using the program in the summer of 1952, executing it manually step by step, but by his death in 1954 had still been unable to run the program on an actual computer. Champernowne did not continue the project, and the original program design was not preserved. Despite never being run on a computer, the program is a candidate for the first chess program; several other chess programs were designed or proposed around the same time, including another one which Turing unsuccessfully tried to run on the Ferranti Mark 1. The first successful program in 1951, also developed for the Mark 1, was directly inspired by Turochamp, and was capable only of solving "mate-in-two" problems. A recreation of Turochamp was constructed in 2012 for the Alan Turing Centenary Conference. This version was used in a match with chess grandmaster Garry Kasparov, who gave a keynote at the conference.

Operating systems
Programming languages
Software
Other

This page is based on a Wikipedia article written by authors (here).
Text is available under the CC BY-SA 3.0 license; additional terms may apply.
Images, videos and audio are available under their respective licenses.