11/30、12/1に開催された文部科学大臣杯第5回世界将棋AI電竜戦にdlshogiとして参加しました。
結果
予選を1位で通過し、決勝リーグでは、1位と0.8勝差で準優勝という結果になりました。
dlshogiは、第2回から4年連続準優勝です。
今大会の感想
優勝した氷彗がNNUE系では飛躍的に棋力を伸ばしていたのが印象的です。
ここ数年NNUE系の棋力は頭打ち感があり、どのチームも定跡に力を入れて勝っていた印象がありましたが、氷彗は定跡だけでなく探索精度も向上していました。
dlshogiも昨年までは定跡に力を入れていましたが、今大会ではモデル精度を高めました。
精度を高めるためにモデルサイズを大きくしたことで、NPSが落ちることで終盤読み負けを心配していましが、結果としては終盤ミスがあったのは1局のみで、負けたのは主に後手で定跡負けした対局で、終盤も比較的安定していました。
以下は、今大会の工夫点についてです。
2.2億パラメータのモデル
今大会では、Resnet+Transformerの2.2億パラメータのモデルを学習しました。
モデルの詳細は、以前の記事を参照してください。
前大会では、Resnetの30ブロック384フィルタのモデルで、パラメータ数は約0.8億です。
約2.7倍のパラメータ数になっています。
このサイズのモデルでは、80GのGPUメモリでもバッチサイズ4096では学習できず、8GPUを使用してバッチサイズ512で分散学習を行いました。
分散学習できるように、dlshogiのPyTorch Lightning対応を行いました。
8GPU使用して、収束するまで学習するのに約1か月かかっています。
モデル精度
今回のモデル(pre55)と前大会のモデル(pre44)の精度を比較した結果を示します。テストデータには、2017年~2018年6月のfloodgateのR3500以上の棋譜からサンプリングした856,923局面(重複なし)を使用しています。
モデル | 方策損失 | 価値損失 | 方策正解率 | 価値正解率 |
---|---|---|---|---|
pre55 | 1.255327 | 0.433520 | 0.571877 | 0.781784 |
pre44 | 1.305959 | 0.440115 | 0.558544 | 0.776513 |
方策で1.3%、価値で0.5%正解率が向上しています。
強さ
方策のみで強さを比較した結果では、前大会のモデルからR+77.5だけ強くなっています。
同一持ち時間の対局では、R+28.6だけ強くなっています。
NPS
NPSは、前大会のモデルと比較して45.6%に低下しています。
定跡
第34回世界コンピュータ将棋選手権から続けて定跡の自動生成を行いました。
戦型
定跡の自動生成は、開始局面から自動で行っていますが、大会中に相手によって戦型を切り替えられるように、特定戦型からも作成しています。
しかし、先手番は角換わりの勝率が高いため、今大会ではすべて角換わりとしました。
dlshogiは、終盤でNNUE系に読み負けることがあるため、終盤で読みが重要になる角換わりは少しリスクがあると思っていましたが、角換わりは手が狭いため先手はかなり深くまで準備できていました。
決勝リーグのRyfamateとの対局では、先手角換わりで、137手(時間調整の4手除く)まで定跡で、定跡を抜けた時点で評価値4824でした。
懸念した終盤で読み負けしたのは、決勝リーグのDaigorillaとの対局でした。終盤の精度はまだ改善が必要だと思っています。
後手の対策
後手番は、先手が角換わりを選択した場合、角換わりを避ける有効な手は見つかっていないため、角換わりを受けることにしました。
第34回世界コンピュータ将棋選手権では、勝率が少し下がっても角換わりを避けるため、6手目に1四歩を指す作戦を取りましたが、結果は負けと千日手が多かったため、成功とは言えませんでした。
今大会では、後手番の角換わりも広く定跡を準備したため、相手の定跡を外して互角に持ち込める自信はありました。
しかし、決勝リーグで2局は定跡負けしました。
決勝リーグのポン太との対局では、dlshogiは60手で定跡を抜けた後もポン太は75手目まで定跡で、定跡を抜けた後、先手勝勢となっていました。
後で調べると、67手まではfloodgateに前例があり、先手が優勢であることは事前に調べておけばわかっていました。
自動生成にこだわっていましたが、floodgateの棋譜も事前に調査しておく必要がありそうです。
まとめ
第5回世界将棋AI電竜戦に参加しました。
今大会では優勝した氷彗の躍進が印象的でした。
dlshogiもモデルのパラメータ数を増やすことで着実に強くなっており、今大会でも準優勝という成績を残すことができました。
最後に、大会を運営してくださった主催者様、対局してくださった他のチーム、そして応援してくださった皆様にお礼申し上げます。