Hello all!
Drofa 3.3.0 released
https://github.com/justNo4b/Drofa/releases/tag/3.3.0
As usual, it shows bout +100 elo improvement in the self-play.
STC 8'' + 0.08''
Code: Select all
ELO | 109.76 +- 3.63 (95%)
CONF | 8.0+0.08s Threads=1 Hash=8MB
GAMES | N: 20000 W: 8648 L: 2532 D: 8820
LTC 40'' + 0.4''
Code: Select all
ELO | 115.92 +- 3.40 (95%)
CONF | 40.0+0.40s Threads=1 Hash=64MB
GAMES | N: 20000 W: 8235 L: 1799 D: 9966
Overall there is about 40 elo-gaining patches since 3.2.0.
Complete list of the changes with elo-gains can be found in Drofa_changelog_6
Most important changes:
Evaluation (39+-5 elo in total)
- Improved definition of the doubled and isolated pawns
- Evaluate own pieces blocking pawns
- Evaluate distance of enemy knights to our passers
- Evaluate checks in king safety
- Count pawns with squares in front attacked by 2 enemy pawns as rammed
- Use PSQT for connected/supported pawns
- Evaluate candidate passing pawns
- Evaluate ability of the minors to jump in outposts
- Evaluate Rooks on Rammed line and Rook on line where our pawn is attacking another pawn
- Evaluate ability of the Queen to do `in-face` check
- Apply penalty if there is no pawns at all in 2 neighbour lines from our king
- Evaluate pawn push threats
Search
- Tweak history bonuses depending on position
- Use countermove history to adjust LMR
- Allow LMR to extend moves
- Behind NMP & Cutnode logic
Other
- BugFix: Start pre-loop pruning from the first move and not the second
- Timemanager now can stop search early/later depending on %nodes spent on the best move
- BugFix: Do not copy Movelist in search
- BugFix: Use very conservative time allocation for non-increment TC to prevent reporting no move
Hopefully with this release Drofa would surpass 3100 CCRL mark.
I`d like to thank Kim (Koivisto developer) for various discussions on search and evaluation.
Also as you can notice, several patches here are based on existing knowledge found in Koivisto, Ethereal and Stockfish;
ideas implemented in this engines contributed a lot to 3.3.0 developement.