第4回世界将棋AI電竜戦本戦 優勝記

先週末に開催された電竜戦本戦で、水匠チームが優勝した。私(やねうらお)も同チームのチームメンバーとして参加し、私は探索部の改良を行った。同チームのたややんさんは、定跡と評価関数(の機械学習)を担当した。

現代の将棋AIの大会で何が起きているのかについて手短に書く。

■ 定跡

まず、本大会の水匠チームの定跡部分に関しては、たややんさんの以下の配信に詳しい。

【#電竜戦 祝勝会】水匠電竜、連覇しました!!【将棋AI水匠/たややん】
https://www.youtube.com/watch?v=lsNoVMe_wdk

配信の内容で大事なところを簡単にまとめると、
・角換わり(38手目基本図)は定跡により先手優勢までは持っていける(これは1年ぐらい前からそう)
・相掛かりも定跡で先手有利
・おそらく将棋は先手勝ちのゲーム
・大会では、「わからん殺し」するしかない
とのこと。

結局、将棋は先手勝ちのゲームなので(我々はすでにそう考えている)、相手ソフトが定跡で持っていなさそうな局面に誘導してそこで戦うしかない。これは格闘ゲームの用語で「わからん殺し」と呼ばれている。(相手側が対策していない戦法で倒すことの総称)

大会でソフトに与えられた持ち時間は非常に限られているので、わずかに有利な局面(評価値で言うと+50ぐらい)からだと、そこから確実に正解手を指し続けられるほどはいまのソフトは強くないから、「わからん殺し」が有効なのだ。

・わからん殺しするために、floodgate(将棋ソフト同士の対局場)にその局面の前例がないかを(たややんは)確認している

私は定跡生成はノータッチだったので本動画を観るまで詳しいことは知らなかったのだが、floodgateでの前例を調べているとは思わなかった。定跡作成ってそこまでしないと大会を制することはできないのかと、たややんさんの執念に驚嘆した次第である。

また、上の動画では、オセロについての言及もある。
・オセロは最近、弱解決された(双方最善を尽くした時の結論が解明された)
・将棋は組み合わせが多いので(完全解明は不可能として)弱解決であってもいまの延長線上では無理だと思う
・しかし、オセロは弱解決するずいぶん前からその結論が引き分けであろうとは言われていたし、将棋も弱解決が無理だとしても、定跡で必勝まで持っていけるようになるのはそんなに先の話ではなさそう

また定跡生成については、
・いまさら定跡の手動生成には戻れない(それだと局面数が稼げないから、わからん殺しされる)
・かと言って完全自動生成は色々課題が多い
とのことである。

完全自動生成は私(やねうらお)も兼ねてよりチャレンジしていて、色々進展があったのでいずれこのブログで書く。

■ 大会出場マシンについて

本大会においては、スポンサーであるAMD様からマシンを貸し出していただいた。

やねうら王チーム、AMD様からマシンの貸出しを受けました
https://yaneuraou.yaneu.com/2023/12/01/yaneuraou-team-receives-a-machine-loan-from-amd/

このマシン、EPYC™ 9654 プロセッサー x2(96C/192T x2)なので、AWSなどクラウドでハイエンドマシンを借りてる他の上位チームの倍ぐらいの性能がある。

将棋AIの世界はマシンが持ち時間が倍になるとElo ratingで+R100~200程度上がると言われているので、この差は大きい。このマシン、購入するとおいくらするのかは私は知らない。

// ※ ただし、コア数が2倍と持ち時間2倍は違う。コア数が2倍になっても将棋AIにとっては√2倍ぐらいの実効しかないと言われている。今回のケースではマシンによる他チームとの差はR50~100程度だろうか。

機械学習の世界は札束での殴り合いになりやすいのだが、この規模のマシンを用意しようと思うとお金だけではどうにもならない。そうは言っても、1000万円ぐらいあれば買えるんだろうけど、それを買ってまで大会に参加しようと言う人はいまのところいないので、結局、スポンサーを探せるかという勝負になる側面はある。

優勝候補であったdlshogiチーム(本大会では準優勝)は、HEROZの社内の計算資源を(大会でも)利用していて、NVIDIAのA100×8 という以前大会に出場した時の構成のままであったらしい。

将棋AIの推論で用いるならA100とGeForce RTX 4090とを比べると、後者の方が1.7倍ぐらい速いので、A100×8 = 4090×5台程度の性能しかなく、クラウドで4090×8みたいなのを借りたチームはそっちの方が性能は上であったと言える。

機械学習を熱心に取り組んでいる企業は徐々にA100からH100に置き換えが進んでいるようなのだが、HEROZはまだ置き換えが進んでいないのだろう。(H100は品薄で買おうと思っても買えないと言う説もある)

A100×8は3年前のマシンである。いまでも買おうと思えば1000万円はくだらないが、それでもクラウドで4090×8はわりと簡単に調達できるので、他チームと比べてdlshogiチームにアドバンテージがあるわけでは決してない。そんななか、安定して上位に食い込んでくるdlshogiチームは、流石としか言いようがない。

■ 評価関数について

dlshogiはDeep Learning型の(GPUを活用する)将棋ソフトであるが、水匠はDeep Learningを用いない(と言うと異を唱える人がいるのだが、少なくともGPUは用いない)従来型の将棋ソフトであり、その評価関数としてNNUE評価関数というのを採用している。だから「(Deep Learning型と呼び分けるために)NNUE型」と呼ばれている。

・本大会のために、水匠チームでは、AMD様からお借りしたPCで教師データの生成をして強化学習を実施した。
・教師は水匠 1スレッド1局面1000万ノードでの対局で生成した。(生成局面数は1億局面弱)

従来は探索ノード数は1局面数万ノードが限界で、最後だけ数十万ノードで生成した教師を用いてファインチューニングしていたが、そこからはずいぶんと頑張った感じである。これにより、レートにして数十上がったとのことである。

頑張ったわりにはあまり上がってないのだが、これは、NNUE評価関数の表現力の限界近くに達しているからで、もうどうしようもない意味もある。Deep Learning型のソフトはまだそこが限界には達していなくて、教師データが足りないような状況であるので、ここは対照的である。

■ 探索部

本大会の優勝争い(水匠 VS dlshogi)は、NNUE型とDeep Learning型との戦い、CPUとGPUとの戦いであったわけだ。

近年、Deep Learning型の将棋ソフトがめきめき強くなってきて、それに対して、NNUE型はほとんど強くなっていなかったのだが、今回は探索部の改良を私(やねうらお)が頑張った。

私は、大会1.5ヶ月前ぐらいから探索部の改良に着手して、大会2週間ぐらい前までほとんど強くなってなかったのだが(むしろ以前のバージョンより弱くなっていたのだが)、最終的には、以前のバージョンに比べて+R60~80ぐらい強くなっていたと思う。

NNUE勢で探索部の改良が出来ている他のチームは実質的にいないような状況(だと思う)なので、ここも大きなアドバンテージがあったと言える。

これに関して詳しい話は長文になるので、また別の記事に書く。

■ まとめ

2023年版 将棋AIの大会で優勝する方法

・スポンサー探してマシンの調達をしろ
・評価関数の学習のために毎月電気代溶かせ
・定跡は自動作成に舵を切れ
・わからん殺しをするために執念を燃やせ
・探索部は血眼になって改良しろ

以上である。

第4回世界将棋AI電竜戦本戦 優勝記」への4件のフィードバック

  1. もしも先手で序盤から千日手を狙うソフトが出現したら相手が格下でも打開しないのが最善になってしまうのでしょうか?相手の棋力や大会での一勝の価値を推定して決定できればいいのですが。。

    • 千日手の評価値を0だと考えると-30よりは0のほうが良いので千日手を狙う定跡になってしまいますが、千日手の評価値を-50だと考えて定跡を生成すればこれは回避できるので、まあ、大会なら、そういう定跡にすると良いように思います。やねうら王の定跡コマンドでペタショック化コマンドというのがあり、そのコマンドで、このように千日手スコアを指定して既存の定跡ファイルを再編成することができます。

  2. uuuunuuunさんところの将棋ソフトレーティングに当てはめると今回の水匠のレーティングはいか程になるんでしょうか?
    あとdlshogiやふかうら王などのDeep Learning型で以前のKPPTのように年間でR500近いレーティングの上昇が起きることはあり得るのでしょうか?

    • > 今回の水匠のレーティング

      あの計測だと以前の水匠 +R60-80ぐらいじゃないですかね。many core時(192コア)なら、さらに+R30ぐらい。

      > 年間でR500近いレーティングの上昇

      dlshogiもここ近年は+R100上がってるかどうかぐらいですね…。GPUは2年で倍速ぐらいになるのでそれによる上昇はあるのですが。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です