言語モデルを使ってゲームレベルを作る
LLMがメタボイダルのレベルデザインをどう手助けするかを発見しよう。
― 1 分で読む
大規模言語モデル(LLM)は、言語を理解し作成できるコンピュータプログラムだよ。もともとはテキスト関連のタスクのために作られたんだけど、これらのモデルは画像やゲームコンテンツにも対応できることがわかったんだ。この記事では、LLMを使って「Metavoidal」というゲームのレベルを作る方法について話すよ。
ゲーム概要
Metavoidalは、プレイヤーがモンスターでいっぱいの教会から逃げるドラムを叩く役割を担うローグライト・ブラウラーゲーム。ゲームは廊下でつながれた部屋で構成されたさまざまなレベルがあるよ。プレイヤーはこれらの部屋を通り抜けながらアイテムやパワーアップを見つけるんだ。レイアウトにはいろんな種類のタイルや壁が含まれていて、新しいレベルを作るときに考慮する必要があるんだ。
レベルの作り方
ゲームレベルを作るにはいろんな方法があるよ。従来の方法では、そのゲーム専用のルールが必要で、複雑で時間がかかることが多かったんだ。でも最近は、一部の開発者が機械学習を使い始めて、プロセスを効率化しているんだ。機械学習はデータを分析してパターンを見つけて、ユニークなレベルを作りやすくするんだ。
LLMはテキスト入力に基づいてゲームレベルを生成するツールとしても注目を集めているよ。シンプルな説明からレベルを作れるから、適応性が高いんだ。目標は、特定のルールを守りながら新しいゲームレベルを生成することなんだ。
レベルデザインの制約
Metavoidalのレベルを作るときは、守るべきルールがいくつかあるんだ。これらのルールは、レベルがプレイ可能でいい挑戦を提供するために必要なんだ。いくつかの重要な制約を挙げると:
- 部屋で使う主要なタイルは特定のタイプでなければならない。
- 歩けないタイルは間隔をあけて配置するべき。
- 壁タイルは本物の壁のように見えなきゃダメ。
- サポートパターンタイルのミックスが必要。
- ドアは特定の間隔ルールに従って配置しなければならない。
- 部屋のサイズは偶数である必要がある。
これらのルールに従うことが、楽しくバランスの取れたレベルを作るために重要なんだ。
プロセス
LLMを使ってゲームレベルを生成するプロセスはいくつかの段階があるよ。まずは少しのデータを集める。今回は手作りで60レベルをデザインしたんだ。このレベルは新しいレベルを作るための基盤になるんだ。
初期レベルが集まったら、そのデータを使ってLLMをトレーニングするよ。トレーニングでは、新しいレベルの望ましい特徴を説明するプロンプトをモデルに与えるんだ。これらのプロンプトには、タイルの種類、レイアウト、特定の要素の間隔についての具体的な情報が含まれているんだ。
プロセスを効率的にするために、データを強化するためのいろんなテクニックを使うことがあるよ。これはレベルをひっくり返したり、回転させたり、タイルを入れ替えたりして多様性を生み出すことを含むんだ。これらの方法は、モデルが既存のレベルのさまざまなバリエーションから学ぶのを助けるんだ。
トレーニングの後、LLMは新しいレベルを生成するよ。ただし、最初のレベルの多くは必要な制約を満たしていないかもしれない。そこで、ヒューマン・イン・ザ・ループが生成されたレベルをレビューするんだ。改善できるレベルがあれば調整して、さらにトレーニングのためのデータセットに戻すよ。
このループは、満足のいく数のレベルが作成されて洗練されるまで続くんだ。この場合、120の使えるレベルを作るのが目標だったんだ。
データセットの拡張
十分なレベルが作成されたら、データセットはさらに拡張できるよ。タイルをひっくり返したり回転させたり入れ替えたりするテクニックを再び適用して、既存のレベルの新しいバージョンを生成するんだ。これらの追加レベルは、LLMが学ぶためのデータのセットを豊かにするんだ。
データセットが拡大された後、再度微調整が行われるよ。モデルはさらにトレーニングされ、バリエーションがありつつもプレイ可能なレベルを生成できるようにするんだ。これはプロセスの重要な部分で、創造性と実用性のバランスを取るのに役立つんだ。
プレイ可能なレベルの生成
何度もトレーニングとデータ拡張を繰り返した後、LLMはプレイ可能なレベルを生成できるようになるんだ。各ラウンドで新しいレベルのセットが生成され、プレイ可能性や新規性が評価されるよ。レベルが前述の制約に従っているかどうかがチェックされるんだ。
これらのチェックを通過すれば、成長するデータセットに追加されるんだ。このプロセスを繰り返すことで、LLMは多くのプレイ可能なレベルを生み出すことができるよ。最終的には、確立されたルールに従ったかなりの数のプレイ可能なレベルを目指していたんだ。
結果と観察
生成プロセスが進むにつれて、成功を測るための指標が追跡されるんだ。プレイ可能性とレベルの新規性が主な焦点になるよ。これらの指標は、生成されたレベルが元のゲームデザインの原則にどれだけ合致しているかを判断するのに役立つんだ。
面白い観察の一つは、生成されたレベルの精度が時間と共に向上することだよ。データが増え、LLMがさらにトレーニングされると、レベルは指定された制約により近づいていくんだ。
生成のたびに、プレイ可能なレベルの数が増えるよ。この生成、評価、洗練するプロセスの繰り返しは、魅力的なゲームコンテンツの開発にとって重要なんだ。
結論と今後の作業
結論として、LLMを使ってゲームレベルを作ることは、ゲームデザインに新たな可能性を開くんだ。ここで話した方法は、構造化されたデータセットと制御されたプロンプトを利用して、バラエティに富んだ興味深いレベルを生成する実用的なアプローチを提供しているよ。
Metavoidalの進行中の開発は、特にゲームデザインにおいて、技術が創造プロセスを助ける方法を示しているんだ。この方法は2Dゲームだけじゃなく、3Dタイトルの未来の作業にも可能性があるんだ。
技術が進歩すれば、2Dと3Dのゲームに同時にレベルを作成できる適応可能なモデルを持つことが目標だよ。これは、レベルデザインにおける手続き型コンテンツ生成の分野での重要な進展になるだろうね。
タイトル: Practical PCG Through Large Language Models
概要: Large Language Models (LLMs) have proven to be useful tools in various domains outside of the field of their inception, which was natural language processing. In this study, we provide practical directions on how to use LLMs to generate 2D-game rooms for an under-development game, named Metavoidal. Our technique can harness the power of GPT-3 by Human-in-the-loop fine-tuning which allows our method to create 37% Playable-Novel levels from as scarce data as only 60 hand-designed rooms under a scenario of the non-trivial game, with respect to (Procedural Content Generation) PCG, that has a good amount of local and global constraints.
著者: Muhammad U Nasir, Julian Togelius
最終更新: 2023-07-02 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2305.18243
ソースPDF: https://arxiv.org/pdf/2305.18243
ライセンス: https://creativecommons.org/licenses/by/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。