I am excited to official release Ethereal8.00. With the time away from university, I have been able to complete my testing framework and start searching out positive patches, after a short hiatus.
Release can be found here https://github.com/AndyGrant/Ethereal/r ... /tag/V8.00
Normally I take a pretty good guess as to the ELO gains, but this new framework is self-testing, so I am not quite sure how accurate my guess will be. If I had to low-ball it, I would say about 20 ELO, but fingers crossed for more.
Summary of changes
A big thanks to the members of this community. I received a lot of help with some of the recent changes, and some very good information about implementing a testing framework.Cleaned up a large portion of the source code, removal of magic numbers + more
Resolved an issue which could cause problems with repeating time controls
Fixed an issue where not all squares could be connected (Thanks, Fernandotenorio)
Fixed an asymmetry issue with pawn connect evaluation (Thanks, Fernandotenorio)
Added Queen mobility into the evaluation function
Pawns can now be both stacked and isolated
Apply LMR to PV nodes but at a reduced depth
Factoring in pawns into attackerCounts and attackCounts
Lowered the threshold of attackers for the safety table
Greatly simplified the evaluation function, and merged most code together
Began saving passed pawn locations into the Pawn Structure transposition table
With that addition, we are now able to score passed pawns based on other features on the board
Extended a max depth limit from 32 to 64.
Factoring in all 'standard' terms into the zorbist hash
Fixed an issue where castle moves were generated when there were none
Cleaned up some code involving making null moves
Simplified the transposition table now that turn is factored into the zorbist key
Finally removed the damned -MATE scores
Finally created a nice testing framework, EtherealBenchmarking
Also, if anyone would be so kind as to provide a MAC binary, I will add it to the release.
Thanks,
Andrew Grant