ミニマックス法とは

ミニマックス法とは、チェスや将棋のようなゲームで、「自分は最善手を選び、相手も最善手で応じてくる」と仮定して、最悪の場合の損失がいちばん小さくなる手を選ぶ意思決定の方法です。相手がこちらの嫌がる手を指してくる前提で先を読み、その中でいちばんマシな一手を選ぶ、という考え方です。

先を読んで「最悪の中の最善」を選ぶ

ミニマックス法は、「自分の手→相手の手→また自分の手」と、お互いが最善を尽くす前提でゲームの展開を枝分かれの形に読み進めます。相手が自分にとって最も不利な手を指してくると想定し、それでも結果が最も良くなる手を選ぶわけです。ただし、すべての展開をまじめに読むと手数が爆発的に増えるため、結論に影響しない読み筋を途中で切り捨てる「アルファ・ベータ法(αβ法)」という工夫で大幅に効率化します。

Deep Blueを支えたゲームAIの基礎

考え方のルーツは、数学者フォン・ノイマンが1928年に示したゲーム理論にあります。1997年にチェスの世界王者を破ったIBMDeep Blueも、このミニマックス法を高速化した探索が土台でした。いずれもChatGPTのような生成AIよりずっと前の話です。近年の囲碁AIであるAlphaGoは、ミニマックスではなく別の手法を組み合わせていますが、ミニマックス法は今もゲームAIを理解するうえでの基本になっています。

TopicDeep Blueは1秒間に約2億の局面を読んでいた

1997年にチェス世界王者カスパロフを破ったDeep Blueは、1秒間におよそ2億もの局面を評価していました。その土台になっていたのが、このミニマックス法を高速化した探索です。人間の直感やひらめきに対して、機械は「とにかく大量に先を読む」という力技で頂点に立った、というのが当時の象徴的な出来事でした。読みの量で人間を上回った最初の瞬間といえます。

ミニマックス法に関するよくある質問

ミニマックス法とはどういう考え方ですか?
チェスや将棋で「自分は最善手を選び、相手も最善手で応じてくる」と仮定し、最悪の場合の損失がいちばん小さくなる手を選ぶ意思決定法です。相手がこちらの嫌がる手を指してくる前提で先を読み、その中でいちばんマシな一手を選びます。
すべての展開を読むと手数が爆発しませんか?
そのとおりで、まじめに全部読むと手数が爆発的に増えます。そこで結論に影響しない読み筋を途中で切り捨てる「アルファ・ベータ法(αβ法)」という工夫で大幅に効率化します。読まなくてよい枝を早めに捨てることで、同じ結論にずっと速くたどり着けます。
ミニマックス法はどこで使われたのですか?
考え方のルーツは数学者フォン・ノイマンが1928年に示したゲーム理論で、1997年にチェス世界王者を破ったIBMのDeep Blueも、このミニマックス法を高速化した探索が土台でした。Deep Blueは1秒間に約2億もの局面を評価しており、機械が「とにかく大量に先を読む」力技で頂点に立った象徴です(近年のAlphaGoは別の手法を組み合わせています)。