最近、ボードゲームのAIに取り組んでるんだ。参考までに言うと、「ゲームロジックを完全に実装する(めっちゃ大変)上に、いくつかのヒューリスティックで50手先を見越す」ってのが一番効果的だよ。これがチェスエンジンの動き方で、良いターン制ゲームのAIもこうやって動いてる。最新のPyTorchモデルに大量のゲーム状態データを投げてみたけど、使い物にならなかった。すごくバカな手を指すんだよね。実際、大きな問題は、無効な手を提案することが多いってこと。これを避けるには、ボードゲームのロジックを完全に実装して検証するのが一番なんだ。そうなると、手動で世界モデルを構築するつもりなら、最初からX手先を見越してやった方がいいじゃんって思う。今のAIが役立ってるのは、先を見越すときの最善手を評価するためのヒューリスティックそのものに関してだね。いろんなゲーム状態を入力して、最終的にプレイヤーが勝ったかどうかを使ってヒューリスティックの値をトレーニングできる。ただ、ヒューリスティックを使うには世界モデルを実装して先を見越す必要があるんだよね!囲碁やチェスにニューラルネットワークが使われてるって聞くけど、そういうところで使われてるんだ。世界モデルを構築して、力技で先を見越すのは必要だよ。もっと試してみたい道があるんだけど、理論的にはコーディングアシスタントがルールブックを読んで、そのルールを表現するコードを動的に生成できるはずなんだよね。それができれば、あとは簡単なはず。つまり、ルールブックをAIに投げてゲームをプレイさせることも可能になるかも。ルールブックからコーディングアシスタントを通じて世界モデルを生成して、人間にはできないほど先を見越して、試行錯誤でトレーニングしたヒューリスティックを使って評価するって感じ。もちろん、コーディングアシスタントはまだルールブックを投げてゲーム状態の内部表現を生成できるレベルには達してないけどね。自分も、コーディングアシスタントを使ってゲームモデルを構築するのに数週間かかったから。