Skip to content

Releases: CGLemon/Sayuri

Release v0.8.1

24 Sep 18:20
Compare
Choose a tag to compare

This is a bugfix release for v0.8.0 that fixes the bug related to loading v2/v3 format network files and updates others. Please use the latest version instead of the v0.8.0 engine.

Changes in v0.8.1

  • Fixed network loader bug.
  • Corrected FPU bug for the Python engine.
  • The Python engine can now load and save SGF files.

4th Main Run, 2024-9-23

This new run supports a Japanese-like rule set since 2024-9-23. You may download the last weights from the google driver. The files in the weights directory are for cpp engine. The files in the checkpoint directory are raw PyTorch model which can be loaded by python engine. Please run the code at the train/torch/pysayuri.py. And here is training note.

Release v0.8.0 (Odd Eye)

05 Sep 19:05
Compare
Choose a tag to compare

The version 0.8.0 supports new network mixer block, a transformer-like structure. The basic ideal is based on the paper, Scaling Up Your Kernels to 31x31: Revisiting Large. The larger kernel should provide global view space and actually improve the policy head performance. What's more, the value head is more sharper. That probably means win-rate is better. Finally, The match result shows mix block could gain +72Elo without obviously overhead. The mixer block is almost as fast as old block. This network was used in the UEC 16 cup. We upload network file on the release page. Enjoy it!

Changes in v0.8.0

  • Add support for v4 network format.
  • Reimplement Japanese-like rule. Add the flag --scoring-rule territory to enable the rule. Supported network should be coming soon.
  • The python version engine is available now.
  • Update FPU formula.
  • Support for time manage. Add the flag --timemanage on/fast to enable it.
  • The engine will try to select a reasonable threads and batch-size when adding the flag --threads 0.
  • Fix the resign bug. Now engine will refuse to resign when resign threshold is 0.
  • Fix arguments parser bug. Now engine accept white space argument.

Weights

  • The third run, Main Run 2024-3-21, is here. Download the the weights from my google drive. And here is training note.
  • The UEC16 is the last network in the Main Run 2024-3-21. Download it from the release page.

Incompletely Support for v4 Weights

01 Jun 16:56
Compare
Choose a tag to compare
Pre-release

Note: This release is incompletely implementation. Only support for current v4 weights. Please update to last version if v0.8.0 engine is released.

Changes in Dev

This dev version engine incompletely supports for new mixer block. The ideal is from the paper, Scaling Up Your Kernels to 31x31: Revisiting Large. The match shows the mixer block is better than ResNet-only network. You may see the result and experimental weights here.

Current Run

The weights of third run, Main Run 2024-3-21. is available on my google drive. The training note is here. The 20bx256c weights will include mixer block. Please use current engine for last weights.

Release v0.7.0 (Ru-Rararu-Ra-Rurararu-Ra)

29 Feb 20:29
Compare
Choose a tag to compare

Since v0.7.0, we will provide the full Windows version exe file. The exe file should work well on the Windows 10/11. If you want to compile the code on you local device, please see this section.

Changes in v0.7.0

  • Support Japanese-like rule on theory. Add the flag --scoring-rule territory to enable the rule. However, current network does not support for the rule.
  • Support the rank AI style. Add the flag --relative-rank <int> to adjustment engine strength. The relative-rank should be higher than 0. The higher value should be stronger. The ideal is from the katrain. You may see the discussion here.
  • Some bugfixes, the self-play process should be better.

Weights

  • You could still use the v0.6.0 weights. Please see main page.
  • The Discarded Run 2024-3-1 is closed. The training note is here.
  • The third run, Main Run 2024-3-21. Download the the weights from my google drive. The training note is here.

Note

  • 2024-3-27: Update Main Rule information.

Release v0.6.1

11 Nov 18:44
Compare
Choose a tag to compare

The current version achieves superhuman level. Sayuri finally suppresses LZ173 and SAI project. We add the first release 20bx256c network above. Performance's detail is here.

Changes in v0.6.1

  • Add support for --capture-all-dead option.
  • Add support for --timemanange option
  • Reuse the tree in self-play.
  • Better pass heuristic in self-play.
  • Do random move when fast search phase in self-play.
  • Improve the dynamic PUCT.
  • Blend komi and resign threshold.
  • Fix visits/playouts cap.
  • Fix NN cache bug.

Weights

Download the last RL weights. This is main run since 2023-8-11.

Othello Weights For 2023 TAAI

03 Dec 10:12
Compare
Choose a tag to compare

The weights for othello branch.

Release v0.6.0 (Hachi to Misemono)

19 Aug 19:04
Compare
Choose a tag to compare

This version is more efficiently than KataGo g104 in the early training phase! KataGo g170 is unknown but it looks like that Sayuri is still better than g170 in the early training phase. Thanks for Gumbel AlphaZero and other KataGo methods. We cat train a high amateur level network on a single GPU device in a just one week.

Except for Sayuri default search mode, you may also select pure AlphaZero search mode or pure Gumbel AlphaZero search mode. Please see bash/sample. Hope that this project can help your research.

Changes in v0.6.0

  • Remove the SL pipe and non-DCNN mode.
  • Better time manager.
  • Add support for more output targets, such as optimistic policy, soft policy, short-term value/score...
  • Optimize the self-play process.

New Run

I start the new run since 8-11. Detail is here. Weights is here.

Network for 2023 CGF Open

15 Jul 01:12
Compare
Choose a tag to compare

Nothing special... just a network for CGF Open.

Release v0.5.0 (Furaregai Girl)

18 Jun 17:10
Compare
Choose a tag to compare

Main Updating

  • Add support for bottleneck block.
  • Add support for --gumbel-c-visit and --gumbel-c-scale options.
  • Add support for dynamic Cpuct.
  • Add support for GCC11 and CUDA12.
  • Add support for Windows version (CPU only).
  • Improve the global pooling kernel performance.
  • Forbid some bad pass moves in the self-play process.
  • Adjust the lag buffer during playing.
  • The analyze (GTP) command will output the string if the interval is zero.
  • New time manager.
  • Clean the code.
  • Use CUDA pinned-memory.
  • Fix the komi bug in the self-play process.
  • Fix the handicap bug.
  • Fix the segmentation fault of MCTS.
  • Fix the final_score (GTP) command bug.
  • Fix the policy temperature bug.

Weights

Download the last RL weights from here. This is main run since 2023-1-6.

Release v0.4.1

21 Feb 12:06
Compare
Choose a tag to compare

Main Updating

  • Add support for FP16, may speed up the performance depending on device.
  • Merge batch normalization layers with convolutional layers, may be 5% faster than before.
  • Use the Gumbel random move opening instead of old one.

Weights

Please see the v0.4.0 release page.