Skip to content

Dolphin 2.7

Choose a tag to compare

@aiagentvn aiagentvn released this 10 Nov 08:41

Dolphin 2.7 comes with a new network (net8). The search, the time management and the Syzygy support are the same as in 2.6.

What's new

  • New network. It was trained on about 175 million positions from eight generations of Dolphin's own self-play games (2.6 used 91 million). The eighth generation (84.5 million positions) was played with the 2.6 network, using a soft limit of 2,500 nodes per move, a balance check of every starting position, more natural random openings (weighted=1), and a second set of starting positions taken from Dolphin's own games on the CCRL rating lists (book2). The network size is still 384. Every training position was played and scored by Dolphin itself; no data or networks from other engines were used.
    • Against the previous network, in the same engine: +25.3 ± 12.1 Elo at 20,000 nodes per move (1829 games, SPRT stopped) and +20.5 ± 12.7 Elo at 10+0.1 (1000 games, LOS 99.9%).
  • Engine name now reports Dolphin 2.7 NNUE. bench node count changed to 1410872 (new network).

Download

File Use it if
Dolphin-2.7.0-windows-x64.zip Recommended. Self-contained: includes its own .NET runtime, nothing to install. Keep all files of the folder together.
Dolphin-2.7.0-windows-x64-requires-dotnet.zip You already have the .NET Runtime 5.0 or newer. Keep Dolphin2.exe, Dolphin2.dll, Dolphin2.deps.json, Dolphin2.runtimeconfig.json (and fathom.dll for tablebases) together.

Unzip and load Dolphin2.exe into your GUI as a UCI engine. The network is embedded in the program. For Syzygy tablebases set SyzygyPath (see the README).

Testing

All games with cutechess-cli 1.5.1 on an i7-11800H, openings from tools/openings8.epd, against the Dolphin 2.6 release package. Both engines used Syzygy 3-4-5 piece tablebases.

Time control Settings Games Result (W-L-D) Elo vs 2.6
10+0.1 1 thread, 64 MB 500 109 - 93 - 298 +11.1 ± 19.3
5+0.05, engine restarted every game 1 thread, 64 MB 200 52 - 42 - 106 +17.4 ± 33.1
10+0.1, one game at a time 4 threads, 1 GB (both engines) 20 6 - 4 - 10 too few games
5+0.05, engine restarted every game self-contained 2.7 vs framework-dependent 2.7 100 26 - 18 - 56 (same engine)

820 games in total: no time losses, no crashes and no illegal moves. The 10+0.1 result against the 2.6 package (+11.1 ± 19.3) is smaller than the network match above (+20.5 ± 12.7), but the two agree within their error bars. These are self-play results, so the gain against other engines will most likely be smaller.

Verify

  • Dolphin2.exe perft 5 must print Nodes searched: 4865609
  • Dolphin2.exe bench must print Nodes searched : 1410872
  • SHA-256:
    • Dolphin-2.7.0-windows-x64.zip: D907ECC4F23947B7BDF5CFC160576E24B0B280D2C467076BA2575227D2DD6518
    • Dolphin-2.7.0-windows-x64-requires-dotnet.zip: 3EB7767736EDD645E0956F1D5FFC6EF71CE0BB28D941D6BC7B15946682C296CC

Build from source

git clone https://github.com/aiagentvn/dolphin.git
cd dolphin
dotnet build -c Release

The binaries in this release were built from the source at this tag.