このマリオ、AIでステージ攻略を学習するんです! 敵やブロックの位置から割り出された“最適行動”でゴールを目指す姿に「俺より上手いな」
ニコニコニュース / 2021年2月19日 18時15分
今回紹介する、ToMoMoTo Factoryさんが投稿した『決定木でマリオが学習してみた』という動画では、音声読み上げソフトを使用して、マリオを決定木で学習させていく方法について解説していきます。
投稿者メッセージ(動画説明文より)
ニューラルネットワークでマリオを教育してみた ( sm20467957 )
に引き続いて、決定木でやってみました。
ニューラルネットワークのときと違って、今度こそちゃんと考えている風に行動しています。
ご興味あれば、ご覧ください!
この動画のマリオAIの目標を説明します。状況を判断して行動するマリオAIの作成を目指しています。
つまり、敵やブロックの位置などからどの行動がベストなのかを考え、行動するAIの実現を目指しています。これにより究極的にはマリオ1で復習したモデルでマリオ2をクリアすることができるのです。
今回のマリオAIは、ゲーム情報から分析モデルに必要なメモリデータを取り出し、その分析モデルに適用してアクションを決めてアクションの結果からフィードバックを得て分析モデルを更新するという仕組みで作っています。
お手本プレイからの学習は行わず、マリオ自身が学ぶ仕組みとなっています。
この仕組みで重要となるのがどんな分析モデルにするかとどんなメモリデータを利用するかです。今回の分析モデルには、決定木を利用します。簡単に説明すると決定木とは、名前の通り木の形のような分析モデルでデータの値の条件に従って、二つに別れていき最終的に根元まで行って答えを決めるモデルです。学習データからデータの値の種類やデータの値の条件内容と木の形を作っていきます。
木が大きければ大きくなるほど複雑な条件を考えられるようになりますが、同時に複雑になりすぎて過学習といった汎用的なルールが作れない状態に陥いることもあります。過学習とは、要はガリ勉しすぎて頭デッカチになっちゃうと考えれば大体合っています。
ちなみに今回は、Jumpをする、しないを判定する決定木とJumpをしない場合に右に進む、左に進むを判定する決定木の二つを利用してマリオのアクションを決めています。
最初のマリオのAIは、シンプルな決定木のモデルでとてもバカです。しかし、マリオは学習するためにそのモデルを利用してゲームをプレイしてデータを集めていきます。
そして、マリオが死んだときに集めたデータを良いアクションと悪いアクションに分けてそのデータを使って分析モデルを更新して賢くなっていきます。これを繰り返すことによってマリオはどんどん賢くなっていきます。
次にメモリデータについて説明します。まずはブロック情報の表現について説明します。マリオのステージのブロックは、16ドット×16ドットのマス目になっています。説明のために今回は白い枠の中のブロック情報だけ考えていきます。
普通にブロック情報のデータ化を考えるとブロックのあり、なしを0、1で表現する方法が考えられます。しかし、データの種類が多くなりすぎてまともな学習ができなくなります。例えば、この例だと変数が56個になるので2の56乗イコール7京のパターンを学習しないといけなくなります。
そこで、ブロック情報のデータ化をマリオとの距離で表現することにしました。上のブロック距離は、各列のブロックがマリオと同じ高さから何マス目にあるのかで表現します。ブロックがない場合は、すごく遠くにあるという意味にするために十分に大きな値を設定します。下のブロック距離も同様にします。
これによって0、1で表現する場合と比較して変数の数が減ってパターン数を減らすことができました。ちなみに実際の距離はドットを利用して、より細かな判断を可能にしています。それに加えて範囲ももっと広いので左と下もちゃんと見ています。
最後に敵情報の表現について説明します。敵情報の表現は、マリオと敵との距離で表現します。また把握する敵はマリオに近い三匹までにします。これは変数の数を減らすためです。三匹未満の場合は、ブロック同様にすごく遠くにいるという意味にするため十分に大きな値を設定します。
ちなみに、マリオの敵はメモリの構造上五匹までしか出られないようになっています。ブロックや敵の情報以外にもマリオの加速度状況などの情報も使っていますが今回は割愛します。ただもちろんステージの位置や時間とかは使っていません。
マリオの学習成果を紹介します。やっと1-2まではクリアすることが出来ました。そこそこ状況を判断しているように見えました。ただ一部はステージの形を覚えて行動しているかもしれません。
学習させたマリオの結果は、ステージの1-1、1-2をクリアすることができましたが、1-3はクリアすることが出来ませんでした。ただ状況を判断しているように見えたのでまだまだ可能性を感じさせます。
学習の様子をノーカットで楽しみたい方はぜひ動画をご視聴ください。
視聴者のコメント
俺より上手いな
プログラミングのレベルじゃねぇよなw
人間ってすごいな
すごい人間っぽいね
めっちゃ敵から逃げんの笑う
外部リンク
この記事に関連するニュース
-
EAGLYS、長瀬産業とALCHEMISTAの代理店契約締結。化学メーカーへのサービス展開を通じてR&D促進
PR TIMES / 2025年1月8日 13時15分
-
R&D向けMIツールの国内販売 長瀬産業とEAGLYSが代理店契約締結
共同通信PRワイヤー / 2025年1月8日 11時0分
-
より多くの人にAIを学んでもらいAIの活用が進むよう尽力 - 日本ディープラーニング協会 松尾理事長
マイナビニュース / 2025年1月7日 11時15分
-
想像以上に仕事が変わるAIボイスレコーダー PLAUD NOTEの実力と活用法
東洋経済オンライン / 2024年12月29日 9時30分
-
1月15日、日本の最新AI研究の成果がここに集う!
ASCII.jp / 2024年12月28日 9時0分
ランキング
-
1これは合理的だわ!完全ワイヤレスと翻訳機が融合したぞ
&GP / 2020年10月23日 19時0分
-
2「マジかよ」 “ぷよぷよ”グッズが突如販売中止…… “衝撃的な理由”に「こんな悲しいことある?」
ねとらぼ / 2025年1月15日 20時18分
-
3『黒岩メダカ』OP映像の謎ダンス話題「中毒性ある」「バズるための戦略だと思う」
ORICON NEWS / 2025年1月15日 19時35分
-
4「ドムドムハンバーガー」、“衝撃ビジュアルのハンバーガー”を発売 「まだエイプリルフールじゃない」「すげえのきた」と反響
ねとらぼ / 2025年1月15日 15時4分
-
5マイクロソフト、GPT-4o搭載の新サービス「Microsoft 365 Copilot Chat」発表
ASCII.jp / 2025年1月15日 23時0分
記事ミッション中・・・
記事にリアクションする
記事ミッション中・・・
記事にリアクションする
エラーが発生しました
ページを再読み込みして
ください