Reckless v0.2.0
codedeliveryservice
released this
06 Oct 21:37
·
294 commits
to main
since this release
Elo Rating Improvements
Significant Elo rating improvements were achieved through the implementation of tapered evaluation with weights tuning and the introduction of Reverse Futility Pruning. Additionally, some minor gains are attributed to code refactoring and other improvements.
Code Refactoring and Organization
Efforts have been made to refine the codebase, focusing on enhancing organization and maintainability. Notably, the project has been merged into a single crate, and several bugs encountered during the refactoring process have been resolved.
Engine Approach Changes
In this release, some changes have been made to the engine's approach:
- Switched from Fail-Hard to Fail-Soft framework for Alpha Beta pruning.
- Switched from Make/Undo to Copy/Make for improved performance and simplified code.
UCI Protocol Improvements
The UCI protocol implementation now includes support for reporting seldepth
and hashfull
parameters.
Self-Play Benchmark Against v0.1.0
STC 10+0.1s
Score of Reckless v0.2.0 vs Reckless v0.1.0: 237 - 29 - 34 [0.847] 300
... Reckless v0.2.0 playing White: 120 - 15 - 15 [0.850] 150
... Reckless v0.2.0 playing Black: 117 - 14 - 19 [0.843] 150
... White vs Black: 134 - 132 - 34 [0.503] 300
Elo difference: 296.8 +/- 48.9, LOS: 100.0 %, DrawRatio: 11.3 %
LTC 60+0.6s
Score of Reckless v0.2.0 vs Reckless v0.1.0: 87 - 5 - 8 [0.910] 100
... Reckless v0.2.0 playing White: 44 - 3 - 3 [0.910] 50
... Reckless v0.2.0 playing Black: 43 - 2 - 5 [0.910] 50
... White vs Black: 46 - 46 - 8 [0.500] 100
Elo difference: 401.9 +/- 114.5, LOS: 100.0 %, DrawRatio: 8.0 %