こんにちは。前回の記述から更新分が出来たので投稿します。
今回はDLSHOGI、ふかうら王、それとLiのお話です。
Li
まずはCPUのみですぐ使える将棋AIのLiから
Liのダウンロードページ
https://github.com/nodchip/tanuki-/releases
tanukiの文字列があるからピンとくる方もいるかもしれません。
マイナビから販売された「将棋神やねうら王」にも収録されたエンジンtanukiの流れをくむAIです。
https://book.mynavi.jp/yaneura/
Liの実力はというと、以前紹介した「HAO」「BLOSSOM」のいずれも上回る棋力をもっています。
それでいて導入はいたって簡単です。
ダウンロードページから
tanuki-wcsc33-2023-05-04.7z
を入手し、解凍します。
見つからなければ Assetsの中に隠れているかもしれません。
各CPU向けのエンジンが収録されているので、それを登録すればいいだけです。
Intelをお使いだと末尾がavx2もしくはavxvnniを使用するといいと思います。どちらかは動くはず。
AMDだとZEN3まではそれぞれの末尾のものを。ZEN4以降(AM5ソケット)はavx512もしくはavx512vnniを使用するといいでしょう。
「FV_SCALE の最適値は 20 です。」
と記述されているので、設定でこの項目を20に変更しておきましょう。
DLSHOGI
ここまで紹介してきたAIは、CPUのみで動作するAIでした。
ここからはGPU、つまりグラフィックカードの機能を利用して動作するAIです。
最先端の研究だと、このDL系のAIとCPU系のAIを組み合わせて研究することが多いようです。
DLSHOGIダウンロードページ
https://github.com/TadaoYamaoka/DeepLearningShogi/releases
グラフィックカードの前提として、NVIDIA (エヌビディア)のRTXシリーズを使用する事が推奨されています。
詳しく解説すると読む気が失せると思うので、簡単に言えば「これでしか使えない機能を使って計算させてる」のだと思ってください。
ただそれだとあまりに不便なので、効率は落ちるけどそれ以外のグラフィックカードでも扱えるようにしたプログラムもあります。これを「OnnxRuntime版 」といいますが、これの導入を解説していきます。
dlshogi-wcsc32.zip
このファイルをダウンロードします。
OnnxRuntime版の実行には、Visual C++ランタイムが必要
とあるので、こちらも入手します。
Visual C++ランタイム
https://support.microsoft.com/ja-jp/help/2977003/the-latest-supported-visual-c-downloads
vc_redist.x64.exeをダウンロードしてインストールしてください。
https://github.com/TadaoYamaoka/DeepLearningShogi/releases/tag/dr2_exhi
にある、モデルファイルを入手します。
モデルファイルの利用にはライセンスに同意することが必要になりますので、よく読んで入手してください。
model-dr2_exhi.zip
を入手できるはずです。ライセンスに同意していれば解凍方法もわかるはず。
dlshogi-wcsc32.zipを解凍すると、
dlshogi_onnxruntime_double.exe
というファイルがあります。これがエンジンです。今回はこれを使用します。
またこのフォルダの中に、model-dr2_exhi.zipを解凍して入手した
model-dr2_exhi.onnx model-dr2_exhi.onnx.ini
をコピペしておきます。
エンジンを登録したら、設定で
DNN_Model の項目を、今入手したmodel-dr2_exhi.onnxに変更します。
ついでに
DNN_Batch_Sizeの項目を256に変更しておきます。
これで動くようになったはずです。
ノートPCの内蔵GPUでも動作します。でも非常に遅いです。
ただ遅いだけなので、プロ棋士が長考してる間に読ませるとかすれば、参考になるかもしれません。
ちなみに使用するのがGPUであるため、CPUを用いるAIと共存させやすいのも長所ですね。
それぞれ違うパーツで計算するので、二つを並べて思考の違いを比較してみるのもいいかもしれません。
ふかうら王
やねうら王の開発者がDLSHOGIからの派生で開発しているAIです。
出来ることは同じですが、導入時のいくつかの違いがあるので解説をしておきます。
https://github.com/mizar/YaneuraOu/releases/tag/v7.6.3
このページの
YaneuraOu-v7.6.3-deep-windows.zip (113.14 MB)
を入手します。
これを解凍すると
Deep-ORT-CPU
Deep-ORT-DML
Deep-ORT-TRT
とフォルダがあると思います。
TRTはNVIDIAのグラフィックカードが必要です。
DMLはWindows 10 DirectML (DML) 対応のGPU向け とあります。
これは現行製品だとほとんどが対応してるはずなので、まずはこれを試してみてください。
CPUは上記いずれでも動作しなかった場合に使用します。
別途 Microsoft Visual C++ 2015-2022 Redistributable (x64), VC_redist.x64.exe をダウンロード・実行してインストールして下さい。
とありますが、すでにDLSHOGIを導入している場合はインストール済みです。
Deep-ORT-DMLのフォルダ内に、「HAO」などからコピーした「eval」をフォルダごとコピペします。
DLSHOGIで入手したモデルmodel-dr2_exhi.onnxもここに入れます。
ここ以外だと初期化エラーがでるみたいです。
設定項目はDLSHOGIと同じように変更していきます。
フォルダを指定しなくても、そのままファイル名を指定すればモデルを認識してくれます。
ただしこちらはdoubleがないので、演算速度はその分低下すると思います。
現状だとモデルは古いままなので、最新とは言えないかもしれません。
ただ個人でモデルを作ろうとすると、それなりの計算リソースが必要なので結構大変だと思います。
一応自動で学習モデルを生成するソフトも公開されています。
「将スタ -将棋ソフトスタジオ-」
https://16-168.hatenablog.jp/entry/2022/01/16/012826
最新の棋譜はこちらで入手できそうです
http://wdoor.c.u-tokyo.ac.jp/shogi/
http://wdoor.c.u-tokyo.ac.jp/shogi/x/wdoorxxxx.7z
xxxxを2008から2024の範囲で変更すれば入手できるかも?
解説されている記事もあるので合わせて参考にしてみてください。
https://engineerblog.mynavi.jp/technology/shogi-ai/
「やねうら王」「ふかうら王」はいずれも古いバージョンしか公開されていません。
https://yaneuraou.yaneu.com/
ただし寄付をした方には定期的に(その時点での)最新版を公開しているとか。
いつかは無料版が公開されると思いますので、それまで待つか、応援したい方は寄付をして最新版を入手するといいかもしれません。
※コメント投稿者のブログIDはブログ作成者のみに通知されます