HeavyChess

Home * Engines * HeavyChess



HeavyChess, an UCI compliant open source chess engine by Chispa author Federico Andrés Corigliano, written in C++, released in 2007.

=Description=

Board Representation
HeavyChess is a bitboard engine and uses compact rotated bitboards to determine sliding piece attacks. It performs eight byte lookups to count populations, and bitscan by conditional 64k lookups, where the most significant bit on the chess board maps the least significant arithmetical one : // Devuelve el Most Significant Bit de un Bitboard inline Casilla Bitboards::MSB(const Bitboard &b) { if (b&65535) return static_cast(TablaMSB[b&65535]); if (b&MSBMask1) return static_cast(TablaMSB[(b>>16)&65535]+16); if (b&MSBMask2) return static_cast(TablaMSB[(b>>32)&65535]+32); return static_cast(TablaMSB[b>>48]+48); }

Search
HeavyChess applies PVS alpha-beta with transposition table and null move pruning, mate theat and check extensions inside a fractional ply iterative deepening framework with aspiration windows.

Evaluation
The evaluation seems not that heavy as the program's name suggests. Beside obligatory, incremental updated material balance, HeavyChess utilizes piece-square tables and considers various piece terms, such as bishop pair, rook on (half) open file, and rook on 7th rank.

=See also=
 * Chispa

=Forum Posts=
 * HeavyChess by Ron Murawski, Winboard Forum, September 09, 2008
 * Heavychess by Mark Mason, CCC, August 09, 2009

=External Links=
 * Index of /fedecorigliano/ajedrez/heavychess
 * Index of /chess/engines/Norbert's collection/HeavyChess 0.13 beta/HeavyChess by Norbert Raimund Leisner, hosted by Kirill Kryukov
 * HeavyChess 0.13 beta in CCRL 40/2

=References= Up one Level