[論文レビュー] MarioGPT: Open-Ended Text2Level Generation through Large Language Models
MarioGPT はテキスト入力で指示された、遊べるマリオのレベルを GPT-2 に微調整し、ノベルティ探索と組み合わせて、多様でオープンエンドな内容を生み出し、約88% の遊 playable を実現します。
Procedural Content Generation (PCG) is a technique to generate complex and diverse environments in an automated way. However, while generating content with PCG methods is often straightforward, generating meaningful content that reflects specific intentions and constraints remains challenging. Furthermore, many PCG algorithms lack the ability to generate content in an open-ended manner. Recently, Large Language Models (LLMs) have shown to be incredibly effective in many diverse domains. These trained LLMs can be fine-tuned, re-using information and accelerating training for new tasks. Here, we introduce MarioGPT, a fine-tuned GPT2 model trained to generate tile-based game levels, in our case Super Mario Bros levels. MarioGPT can not only generate diverse levels, but can be text-prompted for controllable level generation, addressing one of the key challenges of current PCG techniques. As far as we know, MarioGPT is the first text-to-level model and combined with novelty search it enables the generation of diverse levels with varying play-style dynamics (i.e. player paths) and the open-ended discovery of an increasingly diverse range of content. Code available at https://github.com/shyamsn97/mario-gpt.
研究の動機と目的
- ゲームにおける制御可能で多様なPCGのニーズに動機づけられて。
- 微調整された言語モデルを用いたテキストプロンプト条件付きのレベル生成器を提案する。
- ノベルティ探索駆動の進化と統合することでオープンエンドのコンテンツ発見を可能にする。
- 生成されたレベルの遊び性とプロンプト制御性を示す。
提案手法
- Marioレベルのトークン上で蒸留型GPT-2(DistilGPT-2)をファインチューニングし、レベル列全体で次のトークンを予測させる。
- レベルをByte Pair Encoding でトークン化したタイル文字列として表現し、50列のウィンドウでサンプリングする。
- 凍結されたBARTエンコーダの平均隠れ状態を通じてプロンプト情報を取り込み、MarioGPT内でクロスアテンションに供給する。
- 変異後の経路一貫性を保つためにMarioBertモデルでレベルの境界をインペイントする。
- MarioGPT をノベルティ探索(NS-MarioGPT)と組み合わせてエリートを突然変異させ、予測されたプレイヤー経路の挙動多様性を促進する。
- タイル予測精度、A*エージェントによるレベルの遊び性、プロンプト制御性を評価し、記憶化と多様性を評価する。
実験結果
リサーチクエスチョン
- RQ1自然言語プロンプトで条件付けされた微調整済みの言語モデルは、遊べる・制御可能なスーパーマリオブラザーズのレベルを生成できるか?
- RQ2LLMベースの突然変異演算子とノベルティ探索ループを統合すると、多様でオープンエンドなレベル内容を生み出すか?
- RQ3プロンプト記述は生成されたレベル特性(パイプ、敵、ブロック、高低差)にどれくらい適切に対応するか?
- RQ4モデル予測経路とエージェントの軌跡との遊び性と経路類似性はどうか?
- RQ5モデルは学習データをどの程度記憶しているか、サンプリング戦略は記憶化を緩和しつつ品質を維持できるか?
主な発見
- MarioGPT が生成したレベルの 88.4% は標準的な A* エージェントで遊べる。
- MarioGPT を使用した場合、非空タイルの予測精度は検証で93%に達する。
- プロンプト条件付き世代は大半のケースでプロンプトと一致する(例:パイプ81%、ブロック92%、高度76%)。
- MarioGPTとノベルティ探索は、経路とレベルのアーカイブ全体にわたるオープンエンドで多様なレベル生成を可能にする。
- NS-MarioGPT によって生成されたレベルは、挙動空間のより広い領域をカバーし、300レベル後には約78% の経路座標が埋められる。
- 記憶化ダイナミクスが存在し、より高いサンプリング温度は多様性を高めるが品質を低下させる。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。