Belle (chess machine)

From Wikipedia, the free encyclopedia
  (Redirected from Belle (chess))
Jump to: navigation, search

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 a 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[edit]

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[edit]

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[edit]

a b c d e f g h
8
Chessboard480.svg
d7 black bishop
c6 up-right arrow
b5 black bishop
e2 white rook
f2 right arrow
g2 white rook
8
7 7
6 6
5 5
4 4
3 3
2 2
1 1
a b c d e f g h
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[edit]

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[edit]

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 a LSI-11 computer. Depending on the stage of the game, it examined 100,000 to 200,000 moves per second.[8]

Career[edit]

Early Competitions[edit]

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[edit]

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[edit]

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[edit]

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[edit]

Notes[edit]

  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[edit]