完成、オセロロボ

最近の戦隊シリーズものではロボの合体が完了しても完成なんて叫ばないのかな? まあいいや。ミニマックス法を使ったオセロ先読み思考ルーチンが完成してまともに動くようになりました。いや・・・「まともに」なんて言える立場ではない。だっておいらがこいつに勝てないんだから。
先読みができるようになるまでは、静的評価関数と言って「この盤面はどのくらいいい状態か」を点数付けできるようにしておいて、その点数がもっとも良くなるようなところに打ってくるだけのコンピュータでした。これは、まあまあ弱い。テストプレイしていて「おいおいそこは違うだろ(^^;)」と思ったらそれは大抵バグなので、改めてプログラムを検査しに行く状態。
でも先読みが入ると全然違います。今度は「お互いに最善手を打ったとして何手か先にどのくらいいい状態になっているか」を評価してきます。「おいおいそこは違うだろ」というところに打ってきたとしても、最終的にはこっちが負かされちゃうんだからバグともどうとも言い切れない。「彼なりの考えがあったんだろうなあ」としか言えないわけ。作り手より思考ルーチンが強くなっちゃうと、それ以上はチューニングしようにも強さを検証できないのが痛いですね。
一応それにも解決法はあって、いくつかの異なる思考ルーチン同士で対戦させながら負けた方が勝った方を参考に自分をチューニングするという自己学習を使えばより高みは目指せるはずです。これもできればレポートのネタとしては面白いことこの上ないんだけどな。間に合うかな。