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.

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.