内発報酬だけで勝ちを目指せるのか断想

 ボードゲームで(ここでは具体的に将棋で)、最終的な勝ち・引き分け・負けに(+1, 0, -1)とか、(+1, 0.5, 0)とか、報酬を割り当てて最大化目指して強化学習するのがある程度上手くいくのはわかる。そういう明示的な報酬を与えずに、内発報酬のようなものだけで勝ちを目指すことは可能なのだろうか。

 とても強いエージェントを作りたいなら明示的な報酬を入れたほうが良いだろう。勝ちを目指すことが内発報酬だけで実現できるのか考えたいので、比較する対戦相手はランダム指しエージェントくらいで良い。「ランダム指しをするエージェントに対して有意に勝率の高いエージェントを内発報酬だけで作れるか?」という疑問になる。

 内発報酬としてある1つのシンプルな形は、その状態を訪れた回数に応じて、少ないほど大きい報酬を与えるというものになると思う。しかしそれで勝ちを目指すようになるとは思えない。将棋だと状態数が多すぎるの明示的に訪問回数を記録しておくことはできないが、もし仮にできたとして、単に新規な局面ばかりに行っても勝ちに方向づけられてはなさそう。


 局面だけじゃなくて結果は要りそうだ。1つの対局が終わったときに、その対局が「勝ち・引き分け・負け」の3種類のうちどれであったかという情報はもらえるとする。流石にそれがないと全くできない、ナンセンスな状況設定だとは思う。しかし、勝ちで+1という報酬は与えられない。言い換えれば、「1つの対局が終わったときに、謎のラベルA, B, Cのどれかがゲームの内容に応じてなんらかの法則にしたがってやってくるが、そのうちどれが目指すべきラベルなのかは教えられない」ということになる。

 勝ちと負けの非対称性は、負けることは簡単(すぐ投了すれば良い)が、勝つことは簡単ではないというところにあるのだと思う。対戦相手は投了を含まないランダム指しをするとして、こちらは投了を含めた合法手をとりあえずランダムに選びまくってみると、得られるラベルA, B, Cのうちに偏りが出てくる。負けに相当するラベルが多く出てくるはず。

 このラベル自体のカウントとして、得られにくいものを目指すとすればどうか。しかし、それだと最大でも勝率が5割にしかならない(勝ちが支配的になるとそれがたくさん得られるラベルになるので、勝ち、負けが逆転する)。「最初の方は投了しておいて勝ちラベルを確定させてからそれを目指す」とかそういうヒューリスティックなことを考えたいわけじゃないのでそれは無視する。(本質的に「投了」というのも一つの行動に過ぎず、なんか行動A_35を選んでみるとすぐ特定のラベルが返ってくるなぁという状況に過ぎない)

 なんらかの確率、あるいは量的指標みたいなものを最小化しようとすると自然と勝ちを最大化するようになってほしい。別にこの記事で結論は出ない。なんかできそうな気はするし、しかし下手をすると引き分けの方が実現が難しいので引き分けを目指すエージェントとかにもなりかねないのかもしれない。


 なにか有効なことを考えているのかどうかが自分でもわからない。ゲームが作られ、「勝ち」の状態が定義された時点で、もうその状態を目指すべきというだという情報が内包されている。「勝ち」とはどれか? ということ自体を探らなければいけないゲームとはいったいどういうことなのか。

 ただ、根本的に将棋というゲームを生み出すことを考えると(人工知能には人間にできることは全てできてほしいめ、「将棋というゲームを考案すること」もできないといけない)、勝ちというのがどういう状態であるかというのを内部側から考えないといけない瞬間は出てきそうだ。

 わざわざゲームなるものを考え出し、それで勝敗を競いたがる、という性質がどういう考え方をすれば出てくるのか、という点が最近ちょっと気になっている。