|
Pierre & Chess Programming
Last updated on Wednesday, April 5th, 2000
General Information
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.
|
History
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.
|
You can also view a much more detailed log.
Files

Test Suites
1: P166MMX 48M Linux 2.0.35 system
2: P500 128M Windows NT 4.0 system
Chess (Programming) Links

|