This release marks the one year anniversary of the Serendipity project. Compared to v0.4.1, this release introduces the following new features:
- Larger evaluation network with SIMD-accelerated inference through Java's Vector API. Due to this dependency, Serendipity will longer support JRE versions lower than 17.
- Improved time management
- 3x more compact transposition table
- Various search improvements
To run Serendipity, install the Java Runtime Environment (version >= 17), and make sure that the JRE is under system path. Then, run the program either through directly running the exe or through the command java --add-modules jdk.incubator.vector -jar Serendipity-1.0.jar
. On launch, Serendipity will produce the following warning:
WARNING: Using incubator modules: jdk.incubator.vector
This is expected and can be ignored.
Elo | 98.24 +- 10.22 (95%)
Conf | 8.0+0.08s Threads=1 Hash=8MB
Games | N: 2004 W: 848 L: 296 D: 860
Penta | [8, 105, 342, 421, 126]
https://chess.aronpetkovski.com/test/7130/
Elo | 71.38 +- 11.73 (95%)
Conf | 60.0+0.60s Threads=1 Hash=64MB
Games | N: 1002 W: 348 L: 145 D: 509
Penta | [2, 55, 195, 236, 13]
https://chess.aronpetkovski.com/test/7132/
Special thanks to @ArjunBasandrai, @aronpetko, @gab8192, @Haxk20, @Jochengehtab, @liamt19, @noobpwnftw, Styxdoto, @Vast342, @yl25946, @Yoshie2000, and the entirely of Stockfish discord.
P.S. For CCRL testers using ChessGUI, there is an issue that prevents Serendipity v1.0.0 from being run. To fix this issue, place SerendipityWrapper-0.0.1.jar
at the same folder as Serendipity-1.0.jar
, and choose SerendipityWrapper-0.0.1.jar
as the playing engine. For those interested, the source code for SerendipityWrapper can be found at https://github.com/xu-shawn/Serendipity-Wrapper.