From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * Golch

Perceptron [1]

an experimental chess engine by Artem Pyatakov. Initially written in early 2001 [2] during his freshman year at Princeton University, it was a conventional chess program written in C, using a 0x88 board representation [3], alpha-beta, iterative deepening, transposition table [4], killer- and history heuristic, along with all the domain dependent tricks in move ordering (i.e searching captures first), selectivity and evaluation. In 2001, Golch was active at ICC [5]. The program was later used as test-bed for Pyatakov's senior thesis Improving Computer Chess through Machine Learning [6] under advisor Robert Schapire [7]. The aim was to narrow the claimed gap between artificial intelligence methods and computer chess methods and tricks, manifested as human-generated, domain dependent ideas that happened to work without a good theoretical justification and cannot be easily generalized to other games [8].


The online-learning approach to replace classical evaluation by a single layer perceptron, combining a feature vector, representing the board, with a set of adjustable weights, trained by supervised move adaption with some test-positions such as the Bratko-Kopec Test produced slightly disappointing results. The feature-vector used had 64 binary elements of an occupied bitboard, and a 16x16 attack map [9], which hopefully distinguished attacked but sufficiently defended pieces or pawns from pieces or pawns en prise.

History Heuristic

More promising results was due to an advanced implementaion of history heuristic, where a table was not only indexed by its [from][to] coordinates of a move, but a much larger table with additional context of the moving piece along with a bitmask of pieces attacking the from square, which was reported to work about 3% better than the pure history heuristic in terms of node counts on the Bratko-Kopec problems [10]:

history[piece][from][to][attack_bit_vector] += (1 << depth);

See also


Forum Posts

External Links


Up one level