Releases: Eliagiac/lunarr-chess-engine
Lunarr 2.1.1
Fixed a major bug involving draws by repetition.
Previously, draws by repetition from positions before the root were not seen, because the position history was lost when making a copy of the board.
This issue is now fixed, resulting in a significant increase in playing strength, and an Elo difference of ~70 points in self-play against the previous version.
Lunarr 2.1.0
Significantly reduced memory usage of the engine by removing references to nodes of the search tree that are no longer useful. Now, children nodes are not stored in the parent, meaning they are deleted when the search moves on to another parent node.
The memory usage during a single long search went from upwards of 2 GB down to only ~400 MB. During a game, the memory usage is 30-40% lower: it fluctuates between 400 and 600 MB, with highs of ~700 MB, compared to the over 1 GB of the previous version.
These changes also resulted in an increase in nodes searched per second of around 40%, consequently improving playing strength significantly. In self-play against the previous version, it scored +42 Elo points.
Also added hashfull info to keep track of how many transposition table entries have been stored.
Lunarr 2.0.1
Updated name identification to "Lunarr" (in response to the "uci" command).
Also included version info in the name.
Lunarr 2.0.0
The project was renamed from White Widow to Lunarr.
This version is significantly more stable. There should be no more bugs with illegal moves being returned or other related issues: while the previous version would very often freeze or crash, this has not happened yet with the new version when testing.
There have been multiple optimizations and changes resulting in a significant performance increase. The engine is estimated to have an ELO of around 2000 in blitz.
There are still issues regarding the transposition table, both with its performance and with more specific bugs, such as failing to see a draw by repetition that would be caused by the ttMove (which was stored when the position hadn't yet been repeated).
Some of the features currently in development involve a better system for killer moves and improved draw by repetition detection, including finding draws one move before they happen (upcoming draw by repetition detection).
Other changes include draw by fifty-move rule detection, a correct implementation of null move pruning, as well as the new ability to write log files while in the Debug configuration. Moves are also now stored with just 16 bits in the Move struct, using a MoveValue with the first 4 bits used as a flag, middle 6 bits for the target square and last 6 bits for the start square.
White Widow 1.0.0
First usable release of White Widow, with an estimated rating of 1700-1900.
The engine is fully UCI-compliant and can be used with any chess GUI such as Arena.
It will soon have its own Lichess bot account as well!
Chess Engine
Initial Release
Currently used features are described in README.md.