Pierre is a chess engine. I began working on him in March of 1998 and am slowly modifying him as time permits. I run him regularly on both chess.net (Pierre) [rated approximately 1650] and FICS (PierreC). Pierre includes the following features: time based alpha-beta, PVS (minimal window) style searching; iteritive deepening with aspiration; bitboard move generation; a static opening repetoire without learning capabilities; and a positional evaluation based mainly on material. Immediate plans for the future include the implementation of hash (transposition) tables and other move ordering procedures, book learning, a much more detailed evaluation function (especially for the endgame) and quiescence searching. All of these things will be included in v2.0 when the time comes. Note that the interface is strictly text based but is compatible with the xboard/winboard protocal (See Tim Mann's Page). Xboard/Winboard is very easy to use and will give you a nice graphical interface to Pierre as well as the ability to run Pierre (or any other winboard compatible chess engine) on an Internet Chess Server such as ICC, FICS or ChessNet. |
March 18th, 1998 | Became inspired to write a chess program and began work. |
April 28th, 1998 | Completed the minimax algorithm & pierre played his first game, losing badly. |
June 8th, 1998 | Completed the alpha/beta pruning algorithm. Interfaced the program with xboard/winboard and released version 1.0. Began playing on ICS. |
June 26th, 1998 | Completed the basic opening book just to give a little bit more variation in the first few moves. Version 1.2. |
October 25th, 1998 | Improved endgame king positioning. Version 1.3. |
November 23rd, 1998 | Draw by repetition is now recognized. Version 1.4. |
January 16th, 1999 | Implemented underpromotion and algebraic notation |
April 15th, 1999 | Completed the conversion to bitboard move generation. |
April 24th, 1999 | Added support for PGN and FEN chess notation. |
June 5th, 1999 | Implemented iteritive deepening with aspiration and principal variation search. Switched from depth-based to time-based searching. |
pierre_wintel_1.4.zip | This is the 32 bit Windows version 1.4. I leave this here because many people prefer a weaker challenge. |
pierre_linux_1.4.tar.gz | This is the linux binary version 1.4. |
pierre_wintel_1.7.zip | Windows 95/98/NT 32 bit executable version 1.7. Much thanks goes to Dann Corbit for porting this. |
pierre_linux_1.7.tar.gz | Linux binary version 1.7. This is the current version running on ICS. |
pierre_source_1.4.zip pierre_source_1.4.tar.gz pierre_source_1.7.zip pierre_source_1.7.tar.gz | The source code is written in C. There is no makefile (yet). Just compile the file [pierre.c] and run the executable! Note that any file [*.pbf] is an opening book and must be present in the same directory as the compiled program in order to work properly. |
Test Name | min/pos | v1.71 | v1.72 |
WAC | 1:00 | 166/300 | ? soon |
Louguet2 | 10:00 | 4/35 | ? soon |
WCT | 5:00 | 29/45 | ? soon |
bt2630 | 10:00 | 2/30 | ? soon |