機械学習理論研究室
← AI体験の一覧
勝った手を増やし、負けた手を減らすだけで、AIは強くなります。紙コップとおはじきでできた「学習するAI」と実際に対戦して、強化学習のしくみを確かめてみましょう。
最後の1個を取った方が負けです。再生ボタンを押すと、AIとあなたが交互に石を取る1ゲーム分が動きます。
石は7個から始まります。AIとあなたが交互に、山から 1個・2個・3個 のどれかを取ります。
最後の1個を取った方が負けです。AIがいつも先手です。
AIの手番になったら、山に残っている石の数を数えます。その数字のコップから、中を見ないでおはじきを1個引きます。出た色のとおりに石を取ります。コップの中に赤が多ければ、AIは1個取ることが多くなります。色の数の比率が、そのままAIの選ぶ確率です。
ルールが分かったら、実際にAIと12ラウンド戦ってみましょう。
手前に置かれたおはじきは「このラウンドでAIが選んだ手」の記録です。ゲームが終わるまで、コップには戻しません。
「対戦をはじめる」を押すと、AIが先手で1個目の手を指します。
—
—
正解がある4つの状態(残り7・残り4・残り3・残り2)について、コップの中でいちばん多い色が正解と一致しているかを数えています。
| 状態 | コップの中身 | いちばん多い色 | 判定 |
|---|
最後の1個を取ると負けなので、相手に「残り1個」を渡せば勝ちです。そこから逆算すると、自分の手番のあとで山を 1個または5個 にできればよいことが分かります。
| 状態(自分の手番の残り) | 正しい手 | 引くべき色 |
|---|---|---|
| 残り7 | 2個取って5個にする | 青 |
| 残り6 | 1個取って5個にする | 赤 |
| 残り5 | 正解なし(相手が正しく指せば負け) | — |
| 残り4 | 3個取って1個にする | 黄 |
| 残り3 | 2個取って1個にする | 青 |
| 残り2 | 1個取って1個にする | 赤 |
私たちがAIにしたのは、ゲームが終わったあとに 勝った手のおはじきを1個増やし、負けた手のおはじきを1個減らす、それだけです。必勝表も、石の数え方のコツも、一度も教えていません。
それでもコップの中身は、少しずつ必勝表の色に近づいていきます。うまくいった選択をしやすくするという操作を繰り返すだけで、正解にたどりつく。これが強化学習です。
| 状態 | コップの中身 | いちばん多い色 | 正解 | 判定 |
|---|
—
—
ここでは、AIに練習相手と自動で1000回対戦させます。勝ったら増やし、負けたら減らす。規則は、あなたが手でやったものと同じです。
| 対戦した回数 | 強さスコア | 必勝表との一致 |
|---|
ボタンを押すと、上のコップの中身が一気に変化します。
石が7個しかないこのゲームでも、12回では足りませんでした。このゲームのコップは6個で足りますが、囲碁で起こりうる盤面は数えきれません。コップにあたるものも、同じだけ必要になります。
だから囲碁のAI「AlphaGo」は、人と戦う前に自分自身と何百万回も対局して、勝った手を増やし負けた手を減らし続けました。やっていることは、いま皆さんがおはじきでやったことと同じです。