ShogiArena ドキュメント

ShogiArena は、USI 将棋エンジンの自動対局、トーナメント管理、SPRT 検定、SPSA チューニングを実行するためのプラットフォームです。

主な用途

  • 複数エンジンの round_robin / gauntlet トーナメントを実行する
  • 2 エンジンの強さ差を GSPRT / SPRT で検定する
  • SPSA でエンジンパラメータを自動調整する
  • 実行中の対局、棋譜、順位表、Book 利用状況、チューニング状況をダッシュボードで監視する
  • エンジン内蔵定跡の preflight、provenance、remote 配布を扱う
  • Python から USI エンジン操作やトーナメント実行を自動化する

インストールから dry-run まで

pip install shogiarena
shogiarena config init
# tournament.yaml を用意(雛形は下記リポジトリの examples/ にあります)
shogiarena run tournament tournament.yaml --dry-run

設定の雛形はリポジトリの examples ディレクトリにあります。 最小構成はクイックスタートに載せています。

実際に対局を動かすには USI エンジンの設定ファイルが必要です。 初めて使う場合は クイックスタート から進めてください。

公開 API

利用者向けに後方互換性を保つよう努めているモジュールは次の 4 つです。

  • shogiarena.engine
  • shogiarena.tournament
  • shogiarena.cli
  • shogiarena.composition

shogiarena._core 配下は内部実装です。 本ドキュメントでも開発者向けの説明では登場しますが、通常の利用で直接 import することは想定していません。

目的別の読み進め方

基本コマンド

# トーナメント
shogiarena run tournament config.yaml

# SPRT
shogiarena run sprt config.yaml

# SPSA
shogiarena run spsa config.yaml

# 自己対局による棋譜生成
shogiarena run generate config.yaml

# 保存済み run のダッシュボード表示
shogiarena dashboard serve --run-dir /path/to/run

# 結果集計
shogiarena results summary /path/to/run --format text