スタブ POKELLMON: LLM とのポケモンバトルのための人間同等エージェント - Unite.AI
私達と接続

Artificial Intelligence

POKELLMON: LLM とのポケモンバトルのための人間同等エージェント

mm

公開済み

 on

POKELLMON: LLM とのポケモンバトルのための人間同等エージェント

大規模言語モデルと生成 AI は、さまざまな自然言語処理タスクで前例のない成功を収めています。 NLP 分野を制覇した後、GenAI と LLM の研究者にとっての次の課題は、大規模な言語モデルがテキストからアクションまでの世代間ギャップを拡大して現実世界でどのように自律的に動作できるかを探ることであり、これは汎用人工知能の追求における重要なパラダイムを表します。 。オンライン ゲームは、人間が行うのと同じ方法で視覚環境と対話する、大規模な言語モデルを具体化したエージェントを開発するための適切なテスト基盤であると考えられています。 

たとえば、人気のあるオンライン シミュレーション ゲーム Minecraft では、意思決定エージェントを採用して、プレーヤーが世界を探索するのを支援するとともに、ツールを作成してタスクを解決するスキルを開発することができます。 LLM エージェントが視覚環境と対話するもう 1 つの例は、別のオンライン ゲームであるザ・シムズで体験できます。そこではエージェントが社会的対話において目覚ましい成功を収め、人間に似た行動を示しています。ただし、既存のゲームと比較すると、戦術バトル ゲームは、仮想ゲームをプレイする大規模な言語モデルの機能をベンチマークするのに適した選択肢であることが判明する可能性があります。戦術ゲームがより良いベンチマークとなる主な理由は、勝率を直接測定でき、人間のプレイヤーや AI を含む一貫した対戦相手がいつでも利用できるためです。 

これを基にして、POKELLMON は、ポケモンの戦いで目撃されるのと同様の、戦術ゲームで人間レベルのパフォーマンスを達成する世界初の具現化エージェントになることを目指しています。 POKELLMON フレームワークの中核には、3 つの主要な戦略が組み込まれています。

  1. 戦闘から得られたテキストベースのフィードバックを瞬時に消費して、ポリシーを繰り返し改良するインコンテキスト強化学習。 
  2. 幻覚に対抗するために外部の知識を取得する知識拡張生成により、エージェントが必要なときに適切に行動できるようになります。 
  3. エージェントが強いプレイヤーに遭遇し、対戦を避けたい場合に、パニックに切り替わる状況を最小限に抑えるための一貫したアクション生成。 

この記事は、POKELLMON フレームワークを深くカバーすることを目的としており、最先端のフレームワークとの比較とともに、フレームワークのメカニズム、方法論、アーキテクチャを探ります。また、POKELLMON フレームワークがどのように人間らしい戦闘戦略と即時意思決定能力を発揮し、ほぼ 50% という立派な勝率を達成しているかについても説明します。それでは始めましょう。

POKELLMON: ポケモンバトル用の LLM を備えた人間同等エージェント

過去数年間の大規模言語モデルと生成 AI フレームワークの機能と効率の向上は、特に NLP タスクにおいては驚くべきものでした。最近、開発者と AI 研究者は、物理世界で自律的に動作する機能を備えた生成 AI と LLM を現実世界のシナリオでより目立たせる方法に取り組んでいます。物理的および現実世界の状況でこの自律的なパフォーマンスを実現するために、研究者と開発者は、ゲームが、人間の行動に似た方法で仮想環境と対話する機能を備えた LLM を体現したエージェントを開発するための適切なテストベッドであると考えています。 

これまで、開発者は Minecraft や Sims などの仮想シミュレーション ゲームで LLM を体現したエージェントの開発を試みてきましたが、これらのエージェントを開発するにはポケモンのような戦術ゲームの方が良い選択である可能性があると考えられています。ポケモンバトルにより、開発者は有名なポケモンゲームで戦うトレーナーの能力を評価することができ、他の戦術ゲームに比べていくつかの利点があります。動作空間と状態空間は離散的であるため、損失なくテキストに変換できます。次の図は、典型的なポケモンの戦いを示しています。プレイヤーは、両側のポケモンの現在の状態を考慮して、各ターンに実行するアクションを生成するように求められます。ユーザーは 5 種類のポケモンから選択することができ、アクション スペースには合計 4 つの動きがあります。さらに、ターンベース形式により集中的なゲームプレイの必要性がなくなるため、このゲームは LLM の推論時間と推論コストのストレスを軽減するのに役立ちます。その結果、パフォーマンスは主にユーザーの推論能力に依存します。 大規模な言語モデル。最後に、ポケモンのバトル ゲームはシンプルに見えますが、実際はもう少し複雑で、非常に戦略的です。経験豊富なプレイヤーは、戦闘用のポケモンをランダムに選択するのではなく、戦場の内外でのポケモンのタイプ、ステータス、能力、種、アイテム、動きなどのさまざまな要素を考慮します。さらに、ランダムバトルでは、ポケモンは千を超えるキャラクターの中からランダムに選択され、それぞれが推理能力とポケモンの知識を備えた独自のキャラクターセットを持っています。 

POKELLMON : 方法論とアーキテクチャ

POKELLMON フレームワークの全体的なフレームワークとアーキテクチャを次の図に示します。 

各ターン中、POKELLMON フレームワークは以前のアクションとそれに対応するテキストベースのフィードバックを使用して、能力/技の効果や有利/弱点の関係などの外部知識で現在の状態情報を強化するとともに、ポリシーを繰り返し改良します。入力として与えられた情報に対して、POKELLMON フレームワークは複数のアクションを個別に生成し、最も一貫性のあるものを最終出力として選択します。 

インコンテキスト強化学習

人間のプレーヤーやアスリートは、現在の状態だけでなく、以前の行動からのフィードバックや他のプレーヤーの経験も反映して意思決定を行うことがよくあります。ポジティブなフィードバックは、プレーヤーが間違いから学び、同じ間違いを何度も繰り返さないようにするのに役立つと言っても過言ではありません。適切なフィードバックがなければ、次の図に示すように、POKELLMON エージェントは同じエラー アクションに固執する可能性があります。 

ご覧のとおり、ゲーム内エージェントは「ドライスキン」能力を持つポケモン キャラクターに対して水ベースの動きを使用し、水ベースの攻撃に対するダメージを無効化できます。このゲームは、画面上に「免疫」というメッセージを点滅させてユーザーに警告しようとします。これは、人間のプレイヤーが「乾燥肌」について知らなくても自分の行動を再考し、変更するよう促す可能性があります。ただし、これはエージェントの状態説明に含まれていないため、エージェントは再び同じ間違いを犯すことになります。 

POKELLMON エージェントが以前の間違いから確実に学習できるように、フレームワークはインコンテキスト強化学習アプローチを実装しています。強化学習は機械学習における一般的なアプローチであり、アクションを評価するには数値的な報酬が必要であるため、開発者がポリシーを洗練するのに役立ちます。以来 大規模な言語モデル LLM には言語を解釈して理解する能力があるため、テキストベースの説明が新しい形の報酬として登場しました。以前のアクションからのテキストベースのフィードバックを含めることにより、POKELLMON エージェントはそのポリシー、つまりインコンテキスト強化学習を反復的かつ即座に改良することができます。 POKELLMON フレームワークは 4 種類のフィードバックを開発します。

  1. 連続2ターンのHPの差に基づいて、攻撃技によって与えられる実際のダメージ。 
  2. 攻撃技の有効性。フィードバックは、効果がない、免疫がない、無効である、または能力/移動効果またはタイプの利点による超効果的であるという観点から、攻撃の有効性を示します。 
  3. 移動を実行する際の優先順位。相手のポケモン キャラクターの正確な統計情報は入手できないため、優先順位のフィードバックから速度の大まかな推定値が得られます。 
  4. 対戦相手に実行された技の実際の効果。攻撃動作とステータスの両方により、HP の回復、ステータスのブーストやデバフ、凍結、火傷、毒などの状態を引き起こす可能性があります。 

さらに、インコンテキスト強化学習アプローチを使用すると、次の図に示すようにパフォーマンスが大幅に向上します。 

GPT-4 の元のパフォーマンスと比較すると、勝率は 10% 近く急上昇し、戦闘スコアも 13% 近く向上します。さらに、次の図に示すように、前の動きで実行された動きが期待と一致しなかった場合、エージェントは分析を開始し、アクションを変更します。 

知識拡張生成 (KAG)

コンテキスト内強化学習の実装は、幻覚にはある程度役立ちますが、エージェントがフィードバックを受け取る前に致命的な結果を招く可能性があります。たとえば、エージェントがほのおタイプのポケモンと草タイプのポケモンと戦うことにした場合、おそらく前者が 1 ターンで勝つ可能性が高くなります。幻覚をさらに軽減し、エージェントの意思決定能力を向上させるために、POKELLMON フレームワークは、外部知識を利用して情報を収集する技術である知識拡張生成 (KAG) アプローチを実装しています。 生成を増強する

さて、モデルが上で説明した 4 種類のフィードバックを生成すると、ポケモンの動きと情報に注釈が付けられ、エージェントが独自にタイプ有利関係を推測できるようになります。推論に含まれる幻覚をさらに減らす試みとして、POKELLMON フレームワークは、タイプの利点、相手のポケモンの弱点、およびエージェントのポケモンに適切な説明を明示的に注釈付けします。さらに、ポケモンの数が多いため、独特の効果を持つ技や能力を覚えるのは大変です。次の表は、知識拡張生成の結果を示しています。注目に値するのは、知識拡張生成アプローチを実装することにより、POKELLMON フレームワークの勝率が既存の 20% から 36% に約 55% 増加する可能性があるということです。 

さらに、開発者は、次の図に示すように、エージェントにポケモンに関する外部知識が提供されると、適切なタイミングで特別な動きを使い始めることを観察しました。 

一貫したアクションの生成

既存のモデルは、プロンプトと推論のアプローチを実装すると、複雑なタスクを解決する際の LLM の能力を強化できることを示しています。 POKELLMON フレームワークは、ワンショット アクションを生成する代わりに、CoT (思考連鎖)、ToT (思考ツリー)、自己一貫性などの既存のプロンプト戦略を評価します。 Chain of Thought の場合、エージェントは最初に現在の戦闘シナリオを分析する思考を生成し、その思考に基づいたアクションを出力します。自己一貫性を実現するために、エージェントは 3 倍のアクションを生成し、最大投票数を受け取った出力を選択します。最後に、Tree of Thought アプローチの場合、フレームワークは自己一貫性アプローチと同様に 3 つのアクションを生成しますが、それらをすべて単独で評価した後、最適と考えられるアクションを選択します。次の表は、プロンプト アプローチのパフォーマンスをまとめたものです。 

各ターンのアクションは 1 つだけです。これは、エージェントがスイッチを決定し、対戦相手が攻撃を決定した場合でも、スイッチインしたポケモンがダメージを受けることを意味します。通常、エージェントは戦闘外のポケモンをタイプ有利に切り替えたいために切り替えを決定します。したがって、切り替えたポケモンは相手のポケモンの技に対してタイプ耐性を持っていたため、ダメージを耐えることができます。ただし、上記のように、CoT 推論を備えたエージェントの場合、たとえ強力な相手のポケモンがさまざまなローテーションを強制したとしても、そのポケモンではなく数匹のポケモンに切り替えたくない可能性があるため、ミッションと矛盾した動作をします。パニックスイッチ。パニックスイッチにより移動のチャンスがなくなり、敗北します。 

ポケモン : 結果と実験

結果について議論する前に、戦闘環境を理解することが不可欠です。ターンの開始時に、環境はサーバーからアクション要求メッセージを受信し、最後にこのメッセージに応答します。このメッセージには、最後のターンの実行結果も含まれています。 

  1. まずメッセージを解析してローカル状態変数を更新し、2. 次に状態変数をテキストに変換します。テキストの説明は主に 1 つの部分で構成されます。 XNUMX. 自分のチーム情報。フィールド内とフィールド外のポケモン (未使用) の属性が含まれます。
  2. 相手チーム情報。フィールド内およびフィールド外の相手ポケモンの属性が含まれます(一部の情報は不明)。
  3. 天気、進入の危険、地形などの戦場情報。
  4. 過去のターン ログ情報。両方のポケモンの以前の行動が含まれ、ログ キューに保存されます。 LLM は、変換された状態を次のステップの入力および出力アクションとして受け取ります。その後、アクションはサーバーに送信され、人間が行うアクションと同時に実行されます。

人間プレイヤーとの戦い

次の表は、人間のプレイヤーに対する POKELLMON エージェントのパフォーマンスを示しています。 

ご覧のとおり、ポケモン エージェントは、招待されたプレイヤーと比較して勝率が高く、豊富な戦闘経験を持つラダー プレイヤーに匹敵するパフォーマンスを発揮します。 

バトルスキル分析

POKELLMON フレームワークは、知識拡張生成戦略により、効果的な動きの選択を誤ることはほとんどなく、別の適切なポケモンに切り替わります。 

上の例に示されているように、エージェントはさまざまな攻撃の動き、つまりその状況で相手にとって最も効果的な動きを選択できるため、敵チーム全体を倒すために 1 つのポケモンだけを使用します。さらに、POKELLMON フレームワークは人間らしい消耗戦略も示します。一部のポケモンは、各ターンに追加ダメージを与えることができる「どく」技を持っていますが、「回復」技ではHPを回復できます。それを利用して、エージェントはまず相手のポケモンに毒を与え、回復の動きを使用して気絶を防ぎます。 

最終的な考え

この記事では、大規模な言語モデルが人間と自律的にポケモンの戦いをプレイできるようにするアプローチである POKELLMON について説明しました。 POKELLMON は、ポケモンの戦いで見られるのと同様の、戦術ゲームで人間レベルのパフォーマンスを達成する世界初の具現化エージェントになることを目指しています。 POKELLMON フレームワークでは、3 つの主要な戦略が導入されています。テキストベースのフィードバックを「報酬」として消費し、トレーニングなしでアクション生成ポリシーを反復的に改良するインコンテキスト強化学習、幻覚と闘い、エージェントの行動を保証するために外部の知識を取得する知識拡張生成タイムリーかつ適切に、そして強力な敵に遭遇したときのパニック切り替えの問題を防ぐ一貫したアクション生成。 

「職業はエンジニア、心は作家」。 Kunal は、AI と ML に対する深い愛情と理解を備えたテクニカル ライターであり、魅力的で有益なドキュメントを通じてこれらの分野の複雑な概念を簡素化することに専念しています。