【G検定】MiniMax法について(※初心者向け)

資格

シラバス「人工知能をめぐる動向」の「探索・推論」の勉強をしていて、「MiniMax法」探索法についてすっと入ってこなかったので、まとめます。

MiniMax法とは

ささぼう
ささぼう

Wikipedia先生に聞いてみると、こう教えてくれたよ。

ミニマックス探索とは、想定される最大の損害が最小になるように決断を行う戦略のこと

https://ja.wikipedia.org/wiki/ミニマックス法
ささぼう
ささぼう

ふむ。

オセロや将棋等のゲームをするときに、”2手先”、”3手先”を読んで打つ場所を決めるよね。それを予測するための探索法だと思えばいいね。

なるほど。どうやって予測するの?

ささぼう
ささぼう

相手は自分のスコアが小さくなるような手を打つ(相手が嫌がる手を打つ)」と仮定して、その上で自分が有利になるような手を予測するんだ。

いや、だからどうやって予測するのよ。

ささぼう
ささぼう

(うるさいな…。)

オセロが単純明快でわかりやすいので、オセロを使って説明をしますね。

とりあえず、2手先読みをした場合の例を以下の図に示すよ。

ちなみに、2手先のパターンは他にもあるけど、便宜上2パターンずつだけ記載しているので、そのへんよろしくね!

ふむふむ。下に書いてある数字は何?

評価値」って書いてあるけども。

ささぼう
ささぼう

評価値」はその手のスコアを表すよ。

数字が大きければ、有利な手と考えていいよ。

それはわかったけど、この評価値って誰がどうやって決めてるの?

この盤面が有利かどうかなんてわからないじゃない!

ささぼう
ささぼう

うるさいだまれ!

評価値は評価値なんだ!評価値が何点であろうと説明には関係ない!

とりあえず今は

「この盤面だと、このスコアなんだ。へー。」

くらいに思っておけ!

(本当はしらない)

ささぼう
ささぼう

すまん。取り乱した。

とりあえず、この図の中でどれが一番いい手なのかを探索していくんだけど、

まず、2手先の評価値を比較して、”小さい方”を白のターンに設定するよ!

図に表すとこんな感じ

相手は自分のスコアが小さくなるような手を打つ」からだね!

ささぼう
ささぼう

そういうこと!

黒のターン後の盤面の3パターンで同じことをするとそれぞれのパターンの評価値は以下のようになるよ。

ささぼう
ささぼう

あとは、簡単!

評価値は左から”2”、”3”、”6”

3パターンの中で自分(黒)が有利になるのはどーれだ!

一番右の評価値が”“になる手だ!

ささぼう
ささぼう

正解

ささぼう
ささぼう

ということで、MiniMax法はこんな感じです!

MiniMax法は「相手は自分のスコアが小さくなるような手を打つ」と仮定して、予測された手の中から最善の手を予測するための探索手法

ささぼう
ささぼう

(ネットで調べたりしたとき、すっと入って入ってこなかったけど、まとめてみたらすっごい単純だった…。なんか恥ずかしい…。)

コメント

タイトルとURLをコピーしました