LLMは強力な生成AIで能力高い。しかし、それでも、マリオのステージ1-1のクリアもすんなりできなかった。
そこで、Kazuhito00さんによるMobileVLMを使ってLLMマリオをプレイするnotebookはサクサク動いていたので、これを強化学習と組み合わせた。なお、強化学習を使ったコードは8-3をクリアしたNotebookをベースにした。ただし、ライブラリが古いので、ダウングレードを加えて、現行のColabでも動作をさせた。
報酬設計を、基本的にLLM判断で与え、ゴール時の報酬と死亡時のペナルティだけを固定で与えるようした。スクリーンショットを参照して状況の良しあしを0~10の数値でLLMに評価させ、それを報酬とした。進行方向へ進んだ時の報酬もない。LLMは10点満点を出したがる傾向。果たしてうまく行くのだろうか・・・。
とりあえず・・・5万ステップ。3時間21分ほど。一度はGOALしたようなので、この学習結果を使ってテストをすると・・・77回目でゴール。


無事に成功した。だが、LLMを使わなくてもゴールはするわけで(笑)以前のチャレンジと比較すると50000ステップでの学習結果としては悪くはない。報酬の与え方に苦労した他のステージもやってみて、LLMが良い働きをしているのか・・・は見てみたい。
マリオの強化学習で苦労した報酬設計をLLMに任せられるのであれば、それはそれで楽だ。繰り返し練習と状況判断の積み重ねがゲームプレイなんだなと改めて考えさせられました。
次は8-3に挑戦します。
リンク付け忘れてました・・・。
今回使ったコードです。