|Devel (Chess Engine)|
The static evaluation function in Devel resembles that of classical Chess 4.5, the distant ancestor of modern chess programs. That program was described in detail by David J. Slate and Lawrence R. Atkin: Chess 4.5-The Northwestern University chess program in the book "Chess Skill in Man and Machine", by Peter W. Frey (ed.), Springer-Verlag, 1983.
Devel is written in C++. The internal data structure is quite straight-forward. The chess board is embedded within a convenient 16x16 integer array. In the reverse direction there are arrays giving the placement of pieces on the board. This data structure is similar to that of Fruit. King safety evaluation resembles that of Fruit and Stockfish. Evaluation of passed pawns is nearly the same as in Stockfish.
The search is standard recursive with an expectation window (alpha-beta pruning) and quiescence search for nodes beyond nominal depth. The common techniques are used, including razoring, futility pruning at child node ("static null move pruning"), null move pruning with verification search, interal iterative deepening, futility pruning at parent node (including "move count pruning"). Extension one ply for check moves with a non-negative SEE. Configurable hash table up to max 2048 MB. Principal variation search (PVS) with multi-PV option. Supports all common time controls The program never use pondering (thinking on opponent's time).
|Version||CCRL 40/15||CCRL Blitz|
I am grateful to Graham Banks, Gábor Szõtz and Sergio Martinez at CCRL for taking the time to test Devel!
Last update: January 11, 2021