一年前に将棋の棋譜解析 水匠2の導入方法をアップしました。
この度『水匠4』が公開されたので、新たに『水匠4』の導入方法の記事をアップします。
『ShogiGUI』をインストールしていない場合は、こちらを参考にして導入してください。
ShogiGUIの導入方法
第2回世界将棋AI 電竜戦TSEC
『水匠4』は2021年7月に行われた『第2回世界将棋AI 電竜戦TSEC』で優勝した、たややんさん作成のコンピューター将棋ソフトです。
たややんさん、優勝おめでとうございます。
そして、公開ありがとうございます。
水匠4のダウンロード
まずは上記ダウンロードページをクリック。
右上のダウンロードボタンをクリック。
【ダウンロード】ボタンをクリック。
ZIPファイルがダウンロードされるので【すべて展開】ボタンをクリックして解凍。
【展開】ボタンをクリック。
『水匠4』というフォルダーが作成されるので、わかりやすい場所に保存します。
わたしはデスクトップに【将棋AI エンジン】というフォルダーを作っているので、そこへ保存しました。
わたしの【将棋AI エンジン】フォルダーには今まで使っていた『水匠2』と『水匠3改』のエンジンも保存されています。
【水匠4】フォルダーにはこのようなファイルが入っています。
水匠4の導入
ShogiGUIを立ち上げて、【ツール】の【エンジン設定】をクリック。
『エンジン一覧』ウインドウが開くので、【追加】ボタンをクリック。
保存した【水匠4】フォルダーを選択します。
『Suisho4-AVX2(新しいCPU用).exe』
『Suisho4-SSE4.2(古いCPU用).exe』
『Suisho4-ZEN2(RyzenZEN2CPU用).exe』
上記3種類のexeファイルがあります。
自分のパソコンのCPUに合わせたファイルを選択します。
わたしのパソコンはインテルの Core i7 8700 です。
とりあえず『Suisho4-AVX2(新しいCPU用).exe』を選びました。
試してみて、うまく動作しなかった場合は『Suisho4-SSE4.2(古いCPU用).exe』にしてみましょう。
※わたしの Core i7 8700 のパソコンでは『Suisho4-AVX2(新しいCPU用).exe』で正常に動作しています。
『エンジン設定』ウインドウが開くので、【Threads】を使うCPUに合わせます。
インテル Core i7 8700 は6コア12スレッドです。
【Threads】をクリックすると右側に印が表示されるので、ここをクリック。
上下の三角ボタンが表示されるので、CPUのコア数に合わせます。
Core i7 8700 の場合は6コアなので『6』にします。
わたしは分かりやすいようにエンジン名を『水匠4』に変えました。
設定が終わったら右下の【OK】ボタンをクリック。
エンジン一覧に『水匠4』が追加されました。
右下の【OK】ボタンをクリックすれば『水匠4』の導入は完了です。
『水匠4』による棋譜解析
ShogiGUIのメニューバーから【ファイル】→【開く】をクリック。
解析したい棋譜を選択。
将棋ウォーズの棋譜をShogiGUIに読み込む方法が分からない方は以下を参考にしてください。
将棋ウォーズの棋譜をShogiGUIに読み込む方法
【対局】→【棋譜解析】をクリック。
棋譜解析ウインドウが開くので、設定されているエンジン名部分をクリック。
【水匠4】をクリック。
エンジンが【水匠4】に設定されました。
時間や範囲を必要に合わせて設定して【解析開始】ボタンをクリックすれば、棋譜の解析が始まります。
水匠3改と水匠4を比較
わたしが将棋ウォーズで指した将棋を解析してみました。
水匠3改 一手1分で解析
水匠4 一手1分で解析
全体的な傾向は同じですが、一手一手微妙に評価値が違っています。
一手に1分掛けていては時間が掛かり過ぎます。
プロの研究ならいざ知らず、アマチュアの将棋の検討には実用的ではありません。
そこで、同じ将棋を一手1秒でも解析してみました。
水匠2 一手1秒で解析
水匠3改 一手1秒で解析
水匠4 一手1秒で解析
一手1分と一手1秒では35手目の評価値に大きく違いが表れています。
しかしどのグラフを見ても35手目が悪かったのだろうという事は判断できそうです。
では、どう指せば良かったのでしょうか。
水匠4で一人感想戦をする方法
まずは悪手と判断された35手目の一手前の局面を表示して、【検討】ボタンをクリック。
エンジンを水匠4に設定して・・・
【検討開始】をクリック。
この局面はすでに居飛車有利の形勢ですが、▲5七銀と我慢した方が良かったとわかります。
本譜の▲5五銀で一気に居飛車勝勢になったという事です。
わたしの勉強法
1)実戦の棋譜を保存
2)ShogiGUIで棋譜を開く
3)一手2秒で棋譜解析
4)疑問手や悪手と判断された手を時間無制限で検討
5)最善手を確認して次局以降に活かす
1から4は出来ているのですが5が出来なくて、わたしは万年級位者です。
これからも初段目指して頑張ります。
Threads の設定に関しての検証
やねうら王さんがThreads の設定に関して、ブログで以下のように述べています。
・Threadsを物理コア数に
※ 論理コア数に設定したほうが棋力は上がるけどもCPU発熱注意。
CPUの温度に注意すれば【Threads】の設定はコア数ではなくスレッド数に設定した方が強くなるという事です。
そこで、【Threads】の設定を変えて棋譜解析を行い、CPUの温度を比べてみました。
棋譜解析を行う前のCPU温度は43℃です。
【Threads】を12にして棋譜解析を行い、その後6に戻して同じ棋譜を解析しました。
【Threads】が12の時76℃でした。
【Threads】を6に戻した時も76℃でした。
このCPU温度は Core Temp で表示させています。
温度のデータ更新を5秒ごとに設定しているので違いが出なかったのかと思い、『HWMonitor』を起動して、再度棋譜解析時のCPU温度を調べてみました。
【Threads】を12に設定して棋譜解析した時の記録。
CPU使用率(Utilization)は100%になっていて、温度は90℃でした。
【Threads】を6に設定して棋譜解析した時の記録。
CPU使用率は下がりましたが、温度は12設定と変わりませんでした。
解析結果には多少違いが現れました。
この違いが棋力差に現れるのでしょう。
わたしの結論
ノートパソコンなど、CPUの温度が上がりやすい環境では【Threads】はコア数に設定して、性能の悪く無いCPUクーラーを搭載したデスクトップパソコンなら【Threads】をスレッド数に設定しても大丈夫だと思います。
この記事が皆さんの棋力向上に少しでも役立てば幸いです。
いやいや、皆さんが強くなってしまったら、わたしの初段免状取得の壁が更に高くなってしまうので、わたし以外の人の棋力向上には役立たない事を祈っています(笑)。