「十六式いろは」のあれこれ

コンピュータ将棋ソフトのエンジン「十六式いろは」の開発者のブログです。

AobaZeroの棋譜から、やねうら王形式の定跡ファイルつくってみた

どんなことをしたん?

自己対戦のみで棋力を高める将棋エンジン「AobaZero」が
残した棋譜から定跡ファイル(db形式)を作ってみたテストです。
←つまり人間が指していない棋譜。強いかどうかは今回は気にせず。
 ちょっとやってみたかったんですよ、以前から。

手順

1. AobaZeroの棋譜を手に入れたり

AobaZero
http://www.yss-aya.com/aobazero/
↑のリンク先のページ下方にある棋譜のリンクから
最初の方の棋譜を持ってこようかな、という感じで
「arch000047060000.csa.xz」をダウンロードします。

圧縮・解凍ソフト 7-Zip
https://sevenzip.osdn.jp/
↑の7-Zipでダウンロードしたファイルを解凍します。

出てきた棋譜ファイル(csa形式)を
メモ帳等のテキストエディタで開いちゃって。
←ファイルサイズが100メガ級なので、
 開くだけで何十秒かかかるかも、ひょえー。

2. AobaZeroの棋譜を書き変えたり

1行目に「V2.2」という文字列を追加して保存します。

'no000047060000 09/30/21
'w 3702 (crc64:358ea878f5e11fbe), autousi 1.8, usi-engine 15
'-q -r 0.0 -p 800 -n -m 30 -w ./weight-save/w000000003666.txt -e 0
PI
+
+6978KI,'v=0.579,800,2726FU,554,6978KI,197,9796FU,9,4958KI,9,4948KI,8,5948OU,7,3736FU,5,3938GI,5,2878HI,3,8786FU,3
-8384FU,'v=0.425,996,8384FU,720,4132KI,226,5162OU,38,8272HI,9,4142KI,3
以下略

↑のような感じものを↓のようにする。

V2.2
'no000047060000 09/30/21
'w 3702 (crc64:358ea878f5e11fbe), autousi 1.8, usi-engine 15
'-q -r 0.0 -p 800 -n -m 30 -w ./weight-save/w000000003666.txt -e 0
PI
+
+6978KI,'v=0.579,800,2726FU,554,6978KI,197,9796FU,9,4958KI,9,4948KI,8,5948OU,7,3736FU,5,3938GI,5,2878HI,3,8786FU,3
-8384FU,'v=0.425,996,8384FU,720,4132KI,226,5162OU,38,8272HI,9,4142KI,3
以下略

3. csa形式からsfen形式に変換したり

Blunder.Converter: 棋譜変換ツール
https://github.com/ak110/Blunder.Converter
↑将スタにも同梱している棋譜変換ツールで
やねうら王形式の定跡ファイルに変換するのに必要な
sfen形式に変換します。
←ファイル名はめんどいのでそのまま「arch000047060000.sfen」
←変換するために変換するとか、そんなもんですよネ、世の中。

4. やねうら王の定跡ファイルに変換したり

Release やねうら王 実行ファイル詰め合わせ v7.6.1+20220511b
https://github.com/mizar/YaneuraOu/releases/tag/v7.6.1%2B20220511b.master
↑「YaneuraOu-v7.6.1+20220511b.master-windows.7z (162.57 MB)」を
 ダウンロードしてファイルを解凍します。
←★注意★
 「Suisho5-YaneuraOu-v7.6.1+20220511b.master-windows.7z (94.44 MB)」
 じゃない方ですわ。Suisho5版だと変換できない。

で、↓あたりを見ながら黒いメモ帳(←コマンドプロンプトのこと)で
定跡ファイルを作ります。

定跡の作成 · yaneurao/YaneuraOu Wiki
https://github.com/yaneurao/YaneuraOu/wiki/%E5%AE%9A%E8%B7%A1%E3%81%AE%E4%BD%9C%E6%88%90

これも深い意味はないですが「YaneuraOu761_NNUE_KP256」フォルダの
「YaneuraOu_NNUE_KP256-evallearn-g++-avx2.exe」
を使い「20手目まで」で作成しました。 ←魚沼産やねうら王が使えるやつ。

5. 定跡を視覚化したり

Bookconvについて|くらっきぃ
https://note.com/spiritual_sh/n/n558bef75f31e
↑くらっきぃさんを見習って視覚化してみます。
←ちなみに、昨年の世界コンピュータ将棋選手権では
 十六式いろは煌(きらめき)は、くらっきぃさんの
 定跡ファイルを使わせてもらいました。

ai5/BookConv
https://github.com/ai5/BookConv
↑ShogiGUIの作者お手製の変換ツール
←違ってたらごめんなさい。

↑ほう?初手が幅広いですネ、ふふふ。

(追記)

←やねうら王の駒割りのみ評価関数で自己対戦したところ、
AobaZeroの棋譜の定跡がある方が勝ち越しましたわ!