v2.0.0 - Search and evaluation improvements
·
1 commit
to release/2.0.0
since this release
The next release of byte-knight! This release sees improvements in both search and evaluation as well as some bug squashing. Overall ~250/265 elo gain for STC/LTC respectively over v1.0.0.
Search
- Implemented principle variation search
- History heuristic with history gravity
- Aspiration windows
- Reverse futility pruning
Evaluation
- Re-scaled and fixed minor issues related to MVV-LVA move ordering scoring
- Re-wrote most of the evaluation implementation
- Added an HCE tuner
- Tuned PSQT values for the engine using the
lichess-big-3data set
Other changes and fixes
- Fixed a bug related to king captures
- Moved to Rust 2024 (stable)
- Improved CI and added ability to generate code coverage metrics (integrated with CodeCov)
- Updated dev dependencies (mostly suggested by Dependi)
Comparison to 1.0.0
STC
Elo | 251.95 +- 12.77 (95%)
Conf | 8.0+0.08s Threads=1 Hash=16MB
Games | N: 3006 W: 2102 L: 238 D: 666
Penta | [6, 52, 245, 472, 728]
https://pyronomy.pythonanywhere.com/test/1831/
LTC
Elo | 264.99 +- 18.94 (95%)
Conf | 40.0+0.40s Threads=1 Hash=128MB
Games | N: 1500 W: 1070 L: 106 D: 324
Penta | [5, 24, 100, 244, 377]
https://pyronomy.pythonanywhere.com/test/1832/
These release notes are auto-generated by Github.
What's Changed
- chore: minor tweaks by @DeveloperPaul123 in #38
- feature: fast modulo for tt indexing by @DeveloperPaul123 in #39
- feat: principal variation search by @DeveloperPaul123 in #45
- fix: compare best to correct alpha by @DeveloperPaul123 in #46
- chore: simplify mvv-lva calculation by @DeveloperPaul123 in #47
- chore: rescale mvv-lva (again) by @DeveloperPaul123 in #48
- fix: mvv-lva scaling and minor issue with scoring for king captures by @DeveloperPaul123 in #49
- feat: add history heuristic by @DeveloperPaul123 in #50
- feat: use history gravity formula for history bonus by @DeveloperPaul123 in #51
- feat: implement aspiration windows by @DeveloperPaul123 in #53
- chore: re-write evaluation in preparation for tuning by @DeveloperPaul123 in #58
- chore: update deps and move to rust 2024 by @DeveloperPaul123 in #59
- fix: properly scaling eval and perspective by @DeveloperPaul123 in #65
- feat: tune on lichess big 3, from 0, 100k epochs by @DeveloperPaul123 in #66
- feat: add reverse futility pruning by @DeveloperPaul123 in #67
- feat: rework just file and add code coverage generation by @DeveloperPaul123 in #73
Full Changelog: v1.0.0...v2.0.0