Changes in Arasan 21.1:
1) Fix bug in generateCaptures.
2) Change depth resolution and check extension.
3) Use improving status to adjust LMR values (like Stockfish). Adjust LMR
logic.
4) More depth-dependent reduction in null move search.
5) Improvements to time management.
6) Add move overhead option.
7) Do see pruning at higher depths, with a margin (idea from Stockfish).
8) Don't use conditional variable/mutex for handling the wait for
all threads to complete at search end. Instead, just poll in the
main thread.
9) Major cleanup of UCI/Winboard protocol code. Fix some race conditions
that could cause engine to not respond in rare cases.
10) Enable singular extensions.
11) Restructure history code and implement "follow up history" (Ethereal's
term), similar to Stockfish continuation history.
12) Convert main history table to butterfly boards.
Test results, blitz (5:0+1) against 21.0 (Linux, 1 core, no ponder):
Code: Select all
Rank Name Elo + - games score oppo. draws
1 Arasan 21.1 2421 4 4 8000 58% 2379 64%
2 Arasan 21.0 2379 4 4 8000 42% 2421 64%