Back to Col's Home Page Home

Beowulf Computer Chess Engine

Welcome to the homepage for the Beowulf chess engine, the game- playing brains behind the ChessBrain project.

The Beowulf project is headed by Dr Colin Frayn, in collaboration with a number of colleagues from across the globe, to produce a strong, versatile chess program with freely available, highly readable source code. Beowulf is published under GNU General Public Licence V2

Beowulf was designed to teach experienced programmers how to program a strong chess engine from a well-documented, clearly-written reference. The Beowulf chess engine is by no means finished: it's an ongoing project. Please have a look at the code and submit bug reports and patches. Your name will appear below in the acknowledgements list, and also in the game documentation.

Beowulf chess engine is under continuous development. Its strength is difficult to estimate, but estimates of version 2.0 have placed it around 2300 ELO (International Master Standard) on a fast computer. It has played on ICC with a rating over 2300 ELO, kindly operated by Jason Carley. The engine itself operates in text mode. If you want to see a graphical board then I suggest you use the highly popular XBoard/WinBoard by Tim Mann.


· Beowulf Download

Download Beowulf Chess Engine v2.4a source for Unix/Linux (.tgz file) [181k]
Download Beowulf Chess Engine v2.4a source for Windows (.zip file) [197k]
Download Beowulf Chess Engine v2.4a executable for Windows (.zip file) [180k]

Tiny Opening Book [1536 pos, 20k]   Windows   Unix
Small Opening Book [55121 pos, 84k]   Windows   Unix
Medium Opening Book [12350 pos, 200k]   Windows   Unix
Large Opening Book [43045 pos, 760k]   Windows   Unix
Huge Opening Book [135730 pos, 2Mb]   Windows   Unix

· Information Pages

Test Suite Results using Beowulf chess engine
Beowulf chess engine version history
Chess Programming Theory - How do Computers Play Chess?

· Utilities

Xboard and WinBoard by Tim Mann
UCI Interface
Download my Checkmate Test Generation Program    (Source Code)

· Chess Programming Links

Paul Verhelst's Chess Programming Page
Bruce Moreland's Chess Programming Theory Page

Winboard Engine NewsTicker
Winboard Forum
Ron Murawski's Winboard FAQ Site

The Rules of Chess

· Beowulf in Action

Here are some places where you can see software based on the Beowulf Chess Engine:

The ChessBrain project - The World's largest massively-distributed chess project
Horizon Chess, by Ron Murawski - A strong Chess Engine based on Beowulf
NetBlitz Chess - Chess engine environment
GeekBench - benchmarking tool
Chess Software for the Blind - Written by Programmers from GTL Limited


The following people have helped to varying extents on the Beowulf project.

Dann Corbit - Dedicated many many hours work to testing and gave me much invaluable advice.
Ron Murawski - Countless useful comments, mainly on the evaluation code, and a number of substantial rewrites of other sections of the code.
Carlos Justiniano - For his interest in Beowulf through the ChessBrain project.
Bob Hyatt - The source code to his strong program Crafty was an invaluable resource when I was in the preliminary stages of coding.
Ernst Heinz - His page on bitboard programming helped me to understand the concept.
Eugene Nalimov - For his incomprehensible, but yet vital endgame tablebase code
Andrew Kadatch - For the compression code which works with the EGTBs
Jim Monaghan - For a great many comments on Beowulf matches, and many tips on improving the engine's strategic play.
Tim Foden - Helped with one or two compatability problems and testing.
Gian-Carlo Pascutto - For many useful comments and suggestions on the code, especially the move ordering.
Remi Coulom - Many useful suggestions and tweaks to the code, especially concerning the hashtable.
Makoto Matsumoto, Takuji Nishhimura and Shawn Cokus - For the random number generation code used in some earlier versions.
Oliver Brausch - For the Bioskey() function, taken from his engine Olithink, with permission.
Jason Carley - For running Beowulf on ICC.
Alyona Sinkovich - For kindly providing a translation of this page into Belorussian
Published by
Last Modified 14/Dec/05