2020年2月11日火曜日

MyShogi(『将棋神やねうら王』のオープンソース版)の導入方法

シャラン鴨
Ricoh GR

 以前から気になっていた将棋思考エンジン用GUIである「MyShogi」(市販ソフトウェアの『将棋神やねうら王』のオープンソース版)。
 プログラミングの知識はほぼゼロな自分がソースコードからビルドするのは大変だし、画像素材などは自力で用意しなくてはいけないし、ちょっとハードルが高いと思って使うのを諦めていたのですが、いろいろと検索してみると自分でビルドせずともそれなりに使用できる環境が整うことが判ったので、ご紹介。

 まぁ、「将棋所」とか「ShogiGUI」とか無料で高機能な将棋思考エンジン用GUIソフトがある中で、わざわざここまで苦労して使う必要があるのかというと、なかなか悩ましいところではありますが。

 なお、以下は将棋所やShogiGUIを自分でセットアップできる方を対象にした説明となります。

最終的なフォルダ構成(起動前)

MyShogi
│ MyShogi.exe
│ MyShogi.pdb
├─book
│  定跡ファイル
├─engine
│ ├各思考エンジンのフォルダ
│ │ 思考エンジンファイル
│ │ engine_define.xml
│ │ engine_options.txt
│ │ banner.png
├─eval
│ ├各評価関数のフォルダ
│ │ 評価関数ファイル
├─html
│  CommercialVersion2018.txt
├─image
│ ├game_effect
│ │ 画像ファイル
│ ├setting_dialog
│ │ 画像ファイル
│  画像ファイル
├─sound
│ ├koma
│ │ 音声ファイル
│ ├takemata
│ │ 音声ファイル

セットアップ手順

  1. 『将棋神やねうら王』update1.3とupdate2をダウンロードする。
    Releases · yaneurao/MyShogi · GitHub
  2. 『将棋神やねうら王』Update3までの遊戯施設その2 | やねうら王 公式サイト」からV1.40をダウンロードする。
  3. 適当なフォルダを作り、解凍したファイルを上のフォルダ構成を参考にファイルをコピーする(古いものから順に入れて新しいもので上書きしていく)。
  4. 画像素材をダウンロードし「image」フォルダに解凍したファイルをコピーする。
    GitHub - jnory/MyShogiImages: フリー画像のみで構成されたMyShogi用画像集
    「Clone or download」というボタンをクリックしてzipファイルをダウンロードする。以下GitHubからのダウンロードは同様に。
  5. 好きな思考エンジンと評価関数を用意して、それぞれ「engine」と「eval」フォルダ内にフォルダを作り(フォルダ名は半角文字のみ使用)、入れる。
  6. 「engine」フォルダ内の「komadoku2020」フォルダ(V1.40からコピーしたもの)内にある「engine_define.xml」と「engine_options.txt」を思考エンジンを入れたフォルダにコピーする。
  7. 「engine_define.xml」をテキストエディタで開き、<Description>~</Description>、<DescriptionSimple>~</DescriptionSimple>、<DisplayName>~</DisplayName>、<EngineExeName>~</EngineExeName>を用意した思考エンジンに合わせて書き換える。
  8. 「engine_options.txt」をテキストエディタで開き、option name EvalDir type string default ../../eval/qhapaq2018_kpptの”qhapaq2018_kppt”部分を用意した評価関数を入れたフォルダ名に書き換える。
  9. 思考エンジンのファイル名を自分のパソコンのCPUに合わせて書き換える。
    例:「YaneuraOu2018NNUE_tournament.exe」→「YaneuraOu2018NNUE_tournament_avx2.exe」
    (「komadoku2020」のフォルダ内をみるとCPUの世代に合わせて複数の実行ファイルが用意されている。MyShogiが使用環境に合わせて自動で判別して使い分けている様子)
  10. 定跡ファイルを用意し、「book」フォルダを作って入れる(上のフォルダ構成を参照)。

 以下はお好みに応じて。

  1. htmlというフォルダを作り、中に「CommercialVersion2018.txt」というファイルを作る(中身は空でOK)。
    このファイルがあると棋譜読み上げなどの機能が使えるようになる。棋譜読み上げなどが不要なら作らなくてよい。
  2. 音声素材をダウンロードし「sound」フォルダにコピーする。
    GitHub - matarillo/MyShogiSound: Sound files for https://github.com/yaneurao/MyShogi
  3. 「komadoku2020」内にある「banner.png」を参考に各思考エンジン用のバナーを作成する(なくても動く)。

使い方

 MyShogi.exeを実行すると起動。
 思考エンジンは「engine」フォルダ内にあるものが自動で読み込まれるので手動で追加する必要はありません。
 あとは適当にメニューをいじればわかると思います。
 対局開始してエラーが出たときは「engine_define.xml」、「engine_options.txt」の書き換えミスや、思考エンジンのファイル名の書き換えミスを疑ってみてください。検討ウィンドウのエンジン初期化時の表示などがエラー原因究明の参考になります。

MyShogiの感想

  • 思考エンジンのオプション設定の意味が記載されているのでわかりやすい。
  • 思考エンジンのオプション設定の際、全エンジン共通の設定と個別エンジン毎の設定の使い分けができるので(例えば使用する定跡ファイルだけ変えて後の設定は共通にするなど)、新規エンジンの追加が楽。
  • 将棋所のリーグ戦機能があるといいなぁ。

最後に

 開発者の皆様、画像や音声の素材を公開していただいた皆様に感謝いたします。

0 件のコメント: