New version chess engine: Pingu 2.0.0
Pingu - UCI compatible chess engine built from scratch.
Author: William Ching Rating CEDR=2319
v.2.0.0:
I am pleased to announce the release of Pingu 2.0.0!
This version of Pingu has an estimated strength of ~2550-2600 elo at short time controls.
Several improvements have been made to search, evaluation and performance, of which the most significant are listed below.
Search
Staged move generation: save processing time in fail-high nodes by only generating moves when necessary
Null move pruning: scale the null move reduction linearly with depth, selectively disable null move based on transposition table info
Late move reduction depth: adjust late move reductions to scale logarithmically with depth and move count
Futility pruning: add futility pruning to prune quiet moves at low depth
Aspiration windows: search a smaller-than-infinite window at root to gain more cutoffs
Internal iterative reductions: reduce search depth in the absence of a hash entry in the transposition table
Improved time management: search for longer and do not discard partial but valid searches that raise alpha at the next depth
Insufficient material: detect and correctly evaluate a subset of draws by insufficient material
Evaluation
Tuning algorithm: total rewrite of the gradient descent algorithm and a retuning of the entire evaluation with larger dataset
Mobility: added middlegame and endgame mobility terms for rooks and bishops
Incremental updates: update material and piece-square tables incrementally
Comments
Post a Comment