Abstract

Summary form only given. As FPGA technology has reached maturity such that complex designs are possible, the border between hardware and software has vanished. It is now possible to develop fine grained parallel applications without long-lasting chip design cycles. Simultaneously, by the help of message passing libraries like MPI it is easy to write coarse grained parallel applications. The chess program Brutus is a high level application, which profits from both worlds. When playing board games like chess, checkers, othello etc., computers use game tree search algorithms to evaluate a position. The most spectacular success of a game playing program so far, has been the victory of the chess machine 'Deep Blue' vs. G. Kasparov, the best human chess player in the world at that time. The world has now reached a point such that a chess program can not only win one match against a human top player, but they are just getting stronger than the best human players. We describe the design philosophy, general architecture and performance of the chess program Brutus, which has just won an International Grandmaster Tournament with seven wins and four draws. Brutus is split up into a hardware and software engine. The hardware (FPGA simulated hardware) calculates the time critical part of the search tree near the leaves. The part near the root is done by software, because it is much easier to to develop sophisticated algorithms. The FPGA cards allow the implementation of sophisticated chess knowledge without decreasing the computational speed. Thus, Brutus follows its famous predecessors Belle and Deep Blue.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call