大数跨境
0
0

GenAI 重塑游戏未来:LLM 游戏 Agent 深度调研报告

GenAI 重塑游戏未来:LLM 游戏 Agent 深度调研报告 RTE开发者社区
2025-01-02
0
导读:LLM 游戏如何模拟复杂和多样的现实环境。

  //  


这篇关于 LLMGAs(LLM-based game agents)的深度长文转自社区成员杨天翼的公众号「交互技术前瞻」,这个账号会分享 XR、生成式 AI、神经接口、具身智能等前沿领域的技术专利、论文、分析报告和实用资源, 探讨创新性的解决方案和未来发展趋势,也推荐你关注。




译者的话:最近在做 XR 和 AI 结合的游戏。在调研 LLM 行为控制方法时,查到一篇今年 4 月由乔治亚理工学院研究团队发表的综述报告,很系统、结构化的阐述了游戏 Agent 领域的研究现状,报告收集了目前各种方向的研究成果,很适合快速了解发展现状。有明确需求的朋友也可以像我一样据此按图索骥。

这篇报告不仅适合游戏从业者阅读,对于机器人学和实现更广泛的 AGI 目标也具有参考价值。因为游戏很适合模拟复杂和多样的现实环境。

报告发布至今已经过去 8个月了,很多研究已经有了新进展。研究团队也很贴心的在报告中附上了一个持续更新的追踪该领域研究进展的文档,方便我们获取最新动态。

🔗 文档链接:https://github.com/git-disl/awesome-LLM-game-agent-papers

文章中涉及的专业名词较多,不在文章中一一解释了。统一汇总在最后的名词表里。

 目录


  • 引言:介绍了LLM在自然语言理解和人工智能中的重要性,以及其在游戏Agent中的应用前景。
  • 统一架构:描述了LLMGA的六个核心功能组件及其工作流程。
    • 感知 perception:获取游戏状态信息,为智能体提供理解其当前环境所需的数据。
    • 记忆 memory:作为外部存储,保留过去经验、知识和精选技能,并可被检索用于未来使用。
    • 角色扮演role-playing:模拟特定角色,展现出与每个角色特征和目标相符的行为。
    • 思考 thinking:处理感知到的信息,基于推理、规划和反思生成思想,以进行明智的决策。
    • 行动 action:将生成的文本决策转化为可执行的动作,使智能体能够有效地与游戏元素互动和操作。
    • 学习 learning:通过在游戏环境中积累经验和互动,持续提高智能体的认知能力和游戏技能。
  • LLMGA在游戏中的应用:详细讨论了LLMGA在六种不同游戏类型中的应用和挑战。
  • 结论与未来方向:总结了LLMGA的研究现状,并提出了未来研究的潜在方向。

LLMGAs 的概念架构。
在每一步游戏过程中,感知模块从游戏环境中感知多模态信息,包括文本、图像、符号状态等。
智能体从记忆模块检索关键记忆,并将它们与感知信息一起作为思考(推理、计划和反思)的输入,使其能够制定策略并做出明智的决策。
角色扮演模块影响决策过程,以确保智能体的行为与其指定的角色相一致。
然后,动作模块将生成的动作描述转换为可执行和可接受的动作,以在下一游戏步骤中改变游戏状态。最后,学习模块通过累积的游戏经验不断改善智能体的认知和游戏能力。


感知 perception

感知类似于Agent的感官器官,例如眼睛,其主要作用是感知包括文本、视觉、声音、触觉等多种模态领域的输入。高效且稳健的感知功能对于使游戏Agent能够准确捕获重要的游戏状态信息以进行决策至关重要。
所有基于文本的游戏,无论是像《Zork I》这样的文字冒险游戏,还是像《Werewolf》这样的沟通游戏,都使用自然语言描述,可以直接由大型语言模型(LLM)处理。相比之下,对于视频游戏,使Agent感知游戏状态主要有三种方式:
  1. 状态变量访问:一些游戏环境支持通过内部API访问符号化的状态变量。例如,在《宝可梦战斗》中,一个宝可梦可以通过物种、统计数据、状态和招式等状态变量来表示,而不依赖任何视觉信息。在《我的世界》中,Mineflayer提供了高级API来访问本地环境状态,如位置、方块、库存。状态值被填充到设计好的提示模板中,形成游戏状态的文本描述。然而,并非所有游戏都支持内部API,仅用符号状态描述游戏可能会导致信息丢失,尤其是对于那些需要详细视觉信息才能完全捕捉游戏体验的游戏,如《荒野大镖客2》和《星际争霸II》。
Mineflayer 开源地址:https://prismarinejs.github.io/mineflayer/#/ Mineflayer Demo 演示:https://youtu.be/eZKId8ZdS0w
  1. 外部视觉编码器为了解决仅文本的问题,现有研究为LLM配备了外部视觉编码器,将视觉信息转化为文本观察。例如,CoELA和LLMPlanner采用目标检测器来识别Agent视野内的对象。CLIP视觉编码器及其变体被广泛用于将图像映射到预定义的文本描述中。例如,JARVIS-1使用MineCLIP从1000个《我的世界》文本数据条目中选择与图像最相似的文本描述;ELLM采用ClipCap作为视觉观察的标题生成器:它将CLIP嵌入映射到10个标记序列,这些序列作为前缀输入给GPT-2以生成整个标题。
JARVIS-1 技术架构

  1. 多模态大型语言模型(MLLM):视觉编码器在对未见场景或对象的泛化能力上存在不足,因为它们主要依赖于预定义的文本描述进行分类。相比之下,MLLM将视觉和文本信息在统一的表示空间中对齐,并将它们解码成自然语言,从而在未知场景中实现更好的泛化能力。像GPT-4V这样的通用MLLM被用于《荒野大镖客2》、《Doom》、《我的世界》和模拟具身家庭游戏中直接感知视觉观察以进行决策或作为感知模块生成文本数据,但通常需要错误纠正机制与环境反馈来解决不准确性问题;特定于游戏的MLLM涉及专家生成的多模态指令数据的监督学习,如GATO和SteveEye,或通过RL从环境反馈中学习,如Octopus。

总结来说,对于视频游戏,访问符号状态需要内部API的支持。外部视觉编码器由于泛化能力有限,无法完全覆盖所有场景或对象,尤其是那些没有预定义文本描述的场景或对象。尽管通用MLLM解决了上述问题,但它们在区分目标对象的细粒度细节,如相对位置,以及理解特定游戏概念方面仍然不足。通过游戏经验和反馈来基础化和规范MLLM是一个有前景的方法,可以更好地感知和理解游戏。
感知模块的思维导图

记忆 memory

人类依赖记忆系统来记忆先前的经验,以便在将来的场景中回忆、学习和应用知识。同样,基于 LLM 的游戏 Agent(LLMGAs)也需要记忆系统来确保操作的连贯性和效率,作为他们过去观察、思考、行动和技能的存储库,Agent从中检索策略制定和决策所需的关键信息。
从认知科学的角度来看,人类的记忆机制可以分为工作记忆和长期记忆,其中工作记忆存储Agent的当前上下文,长期记忆存储Agent过去的经历和思考。对于LLMGAs来说,工作记忆可以被视为LLMs的上下文,而这里所说的“记忆”指的是长期记忆,它充当外部存储。长期记忆存储情节记忆,如通过感知模块生成的观察流和以前的游戏轨迹;高层次的语义记忆,代表Agent对自己和游戏世界的了解,通过思考模块生成;以及程序记忆,这些是存储为代码或计划的策划技能。
检索:
随着时间的推移,记忆的积累,大部分记忆会分散决策的注意力。检索扮演着筛选和传递最相关记忆给Agent的重要角色。记忆记录通常存储为键值对。在语义检索中,该过程涉及计算查询和记忆键之间的语义相似性,并选择与查询对象相似度最高的记忆值。查询对象可以是多种形式,如自我指导的问题、任务触发的问题、预定义的问题或视觉观察。
具体来说,在Voyager的记忆系统中,键是程序描述,值是之前执行成功的程序代码。
Voyager技能库
上图:添加新技能。每次GPT-4生成并验证一个新的技能时,我们都会将其添加到技能库中,由向量数据库表示。关键字是程序描述的嵌入向量(由GPT-3.5生成),值是程序本身。
下图:技能检索。当面对自动课程提出的新任务时,我们首先利用GPT-3.5生成解决该任务的一般性建议,并将其与环境反馈结合作为查询上下文。随后,我们进行查询以确定前5个相关技能。

在JARVIS-1中,键由任务描述和图像中的观察配对组成,而值代表之前执行的计划。此外,为了模拟人类的遗忘机制,Generative Agents考虑到最近性和重要性,其中最近性是使用游戏小时数的指数衰减函数计算的,重要性由LLM评估,以区分一般细节和核心信息。
记忆模块的思维导图

角色扮演 role-playing

角色扮演功能使Agent能够在游戏内扮演多样化的角色,生成符合给定角色的可信对话和行为。许多游戏包含角色扮演元素,玩家扮演特定角色并从角色的视角参与游戏,从而获得沉浸式的游戏体验。角色扮演对于NPC和游戏助手以及生成对话也很重要。
已经证明,分配不同性格类型可以显著影响LLM的生成风格。角色扮演可以增强Agent的生动性、个性化和熟练度,而生成包含情感信息的对话可以使Agent的行为更加可信。在角色扮演中,最简单的方法是直接插入角色身份的自然语言描述,如性格特征、爱好、职业和社会关系,作为Agent的初始记忆。
评估显示,提供少量对话示例或微调可以进一步增强对话任务中的角色扮演表现。如CharacterLLM,从角色配置文件中构建想象经验,并用这些经验微调LLM,使Agent能够展现一致的性格和表达情感。

思考 thinking

思考是分析和整合信息的认知过程。推理涉及使用演绎、归纳和溯因来概括观察结果、得出结论和推断解释。相比之下,规划则需要策略化的决策步骤以实现复杂和长远的目标。
思考·推理
推理是一个从观察、事实证据和先前思考开始,通过分析和综合这些元素来从一般原则中演绎出具体结论(演绎)、从特定实例中归纳出一般原则(归纳)或构建最可能的解释(溯因)的过程。推理对人类认知至关重要,使个体能够理解世界、解决问题并做出明智的决策。
LLMGAs采用通用推理方法来逻辑分析信息,为决策提供有见地的洞察:ReAct引入推理以通过少量提示条件行动的生成;CoT和Zero CoT将整个思考过程分解为多个链式思考,使复杂问题能够逐步阐明;SC、ToT和GoT遵循多路径推理范式:SC进行多次独立推理并选择出现频率最高的结果作为最终输出;ToT和GoT将推理路径组织成树状和图状结构以增强推理能力。
反思可以被视为一种特殊的推理,通常在提供先前试验的反馈后发生。它涉及Agent分析自己的行动、决策和思考过程,并考虑如何根据收到的反馈进行改进。这种反思过程允许调整和完善策略和行为,有助于学习和长期发展。具体来说,Reflexion、DEPS、AgentPro、ProAgent通过自我反思识别过去失败尝试中的错误和低效,并重用这些思考以提高后续试验的表现。此外,RCI、Self-Refine和GPTLens展示了反馈不仅可以来自环境,还可以来自LLMs本身,并通过整合自我生成的反思来迭代完善结果。
在游戏玩法中,Hu等人发现,当遇到强大的对手时,CoT可能会引发 Agent 恐慌,导致行为不一致,例如频繁在回合中切换不同的宝可梦。相比之下,SC通过投票选择最一致的行动来缓解这个问题;心智理论(ToM)涉及从转变的视角推断他人的意图,并在扑克等不完全信息游戏中展示增强能力,并使LLMGAs能够在合作游戏中识别合作伙伴的协助意图。此外,反思表层观察或经验可以提供高层次、抽象的思考,这有助于Agent更合理和可信地行动。
思考·规划
人类利用规划作为应对和管理具有挑战性和长期任务的战略工具。对于LLMGAs来说,规划涉及将复杂任务分解为更简单、可执行的子任务集。现有的规划方法可以根据规划过程中是否需要预定义目标分为无目标规划和有条件规划。
无目标规划:开放式游戏通常没有为玩家实现的预设目标。生成目标计划可以避免Agent被众多可能的行动所淹没。现有的无目标规划方法主要指导LLM生成目标计划。Voyager、ELLM、SPRING和AdaRefiner提示LLM以Agent的状态(如饥饿、库存和装备)和当地观察来生成合适的下一个目标;
OMNI提示LLM为Agent选择有趣且可学习的任务以探索开放世界。在模拟游戏中,长期的日常计划可以有效地防止不一致的行为。Generative Agents利用自顶向下的方法为人类模拟Agent生成一天的计划,从一天的广泛初步计划开始,然后将其分解为更详细的行动计划。计划后,Agent可以选择继续执行计划或对其动态的本地环境做出反应。
有条件规划:有条件规划器递归地将目标、任务或指令转化为子目标,直到达到结构化行动。有条件规划用于解决长期和复杂的任务,如制作工具或执行任务。现有的研究主要指导LLM生成计划。ZeroShotPlanner和LLMPlanner提示LLM进行零次或少量示例规划;鉴于初次尝试生成正确计划的困难,GITM和JARVIS-1利用外部知识,如物品制作食谱来增强规划,并纳入环境反馈,如错误消息来完善初始计划;
DEPS通过整合计划执行的描述和遇到失败时的反馈自我解释来引入初始计划的错误纠正;Adapt和SwiftSAGE在遇到执行失败时适应性地分解任务;S-Agents、HAS和MindAgents在LLM规划器的层次合作结构中运作,规划器将子任务分配给多个Agent以高效执行。
思考模块的思维导图

行动 action

在人类做出决策后,他们会控制自己的身体,如,来执行这些行动,将认知决策转化为与周围世界互动的物理动作。行动模块充当LLMGAs的“手”,将语言描述的决策转化为游戏环境中可执行的行动,使Agent能够与环境互动并改变它们的状态或游戏状态。不同的游戏需要Agent输出行动的不同粒度。对于需要操控控制的游戏,如《荒野大镖客2》、《我的世界》和《胡闹厨房》,需要键盘或鼠标操作等低级行动。相比之下,没有操控控制的游戏,如文字冒险游戏、《宝可梦战斗》和《扑克》,直接促进了高级行动的执行。
LLM通常生成高级行动而不是低级行动。因此,对于需要操控控制的游戏,需要一个翻译模块将LLM生成的行动转化为低级行动。现有研究采用启发式方法或强化学习(RL)策略来将高级行动转化为低级行动序列。基于启发式的翻译使用寻路算法生成低级动作,以及操控动作。例如,在《胡闹厨房》中,给定高级行动“切番茄”,翻译模块使用广度优先搜索算法识别到达目标的最短路径,并识别一系列动作以及切动作;
在《我的世界》中,高级“靠近”动作使用A*算法进行寻路,并执行跳跃、移动和四个方向的下落等低级动作。相比之下,基于RL的方法训练以语言为条件的RL策略,这些策略以观察和高级行动为输入来生成低级行动,根据目标与Agent转换之间的语义相似性进行奖励。
没有操控控制的游戏可以分为解析器基础游戏和选择基础游戏。解析器基础游戏要求LLM逐字生成行动,而选择基础游戏只需要LLM从一组给定行动中选择。对于解析器基础游戏,ZeroShotPlanner提出了语义翻译,将LLM生成的自由形式行动映射到语义相似的可接受行动;SayCan使用链式法则通过乘以给定前一个字符串的每个连续字符串的条件生成概率来计算每个可接受行动的概率。

学习 Learning

人类通过与物理世界的互动能够提升认知能力并获取知识,通过与环境的直接参与获得实践经验。同样,基于 LLM 的游戏 Agent(LLMGA)的学习过程涉及基于从游戏环境中获得的经验和反馈,随着时间的推移提高其认知和游戏能力。
LLM包含了关于世界的大量语义知识,但缺乏在环境中的真实经验。大多数现有的LLMGA采用冻结权重的LLM进行游戏,依赖于精心设计的提示词或外部知识。相比之下,使LLMGA能够在环境中学习至关重要,因为这与人类通过与现实世界互动获取知识的方式非常相似。现有的学习方法可以分为三类:
上下文反馈学习 In-context feedback learning
反馈代表了对先前策略的一种评估。通过将环境反馈包含在上下文中,LLM能够迭代地“加强”策略生成而无需更新权重。具体来说,Reflexion和DEPS生成关于反馈的自我反思/解释,如失败信号,并重用这些思考进行下一次尝试;Voyager和GTIM迭代提示LLM用错误消息重新生成行动代码;Hu等人使用手动生成的反馈,如连续回合中的生命值变化,作为先前行动的评估;此外,现有工作表明反馈不仅可以来自游戏环境,还可以来自LLM本身。
有监督微调 Supervised fine-tuning
监督式微调收集高质量的经验来微调LLM,基于这样的假设:这些经验包含了环境知识。具体来说,E2WM在VirtualHome中通过蒙特卡洛树搜索和随机探索收集具身经验;LLAMARider通过反馈进行自我反思,在我的世界中收集经验。两者都表明,在收集的经验上进行微调增强了LLM解决环境中任务的能力。此外,基于模仿学习的GATO、LID、SwiftSAGE和Octopus等方法使用专家或神谕轨迹微调LM,以增强它们作为策略的性能。
LLAMARider
强化学习Reinforcement Learning
现有的基于RL的LLMGA可以分为三类:
(1) LLM作为行动者:GLAM在BabyAI-text环境中作为选择下一个行动(四种移动)的策略,通过在线RL进行训练;
GLAM方法:使用LLM作为交互式文本RL环境(BabyAI-Text)中的Agent策略,其中LLM通过在线RL(PPO)训练来实现语言目标,从而实现功能映射。
(a)BabyAI-Text为当前会话提供目标描述以及Agent观察描述,并为当前步骤提供标量奖励。
(b)在每个步骤中,将目标描述和观察描述组合成一个提示,并将其发送给LLM。
(c)对于每个可能的动作,使用编码器生成提示的表示,并计算给定提示的令牌组成的动作的条件概率。一旦估计出每个动作的概率,我们就对这些概率应用软最大值函数,并根据该分布采样一个动作。
(d)使用环境返回的奖励来使用PPO微调LLM。为此,在LLM(及其价值头)上添加一个价值头来估计当前观察的价值。最后通过LLM(及其价值头)反向传播梯度。
(2) LLM作为规划者:现有研究如SayCan、Plan4MC、RL-GPT、ELLM等,遵循将固定的LLM作为高级规划者与单独的低级RL策略执行行动的层次范式。另一研究方向涉及根据从环境中获得的奖励微调大型语言模型(LLM)规划者,如Octopus;
(3) LLM作为呈现者:LM可以与RL策略共同训练,产生反映策略模型意图的一致对话,特别是在沟通游戏如Diplomacy和Werewolf中;
(4) LLM用于奖励设计:LLM可以直接作为奖励模型,为训练奖励模型提供注释,或生成和优化用于指导RLAgent训练的奖励函数。
学习模块的思维导图

LLMGAs 在游戏中的应用

基于游戏支持的主要特征,将现有研究分为六类:冒险、沟通、竞争、合作、模拟和建造与探索。
六个游戏类别
冒险:冒险游戏强调以故事为驱动的游戏玩法,玩家在其中探索环境、解决任务并与角色和对象互动以推进游戏。代表性游戏:《Zork I》和《荒野大镖客2》(RDR2)。
沟通:沟通游戏通过多玩家之间的交流、谈判、推理甚至欺骗来进行。代表性游戏:《狼人杀》和《强权外交》。
竞争:竞争游戏将玩家置于对抗性挑战中,测试技能或策略,目的是超越他人以取得胜利。代表性游戏:《星际争霸II》和《宝可梦战斗》。
合作:合作游戏围绕玩家共同努力实现共同目标而设计,强调团队合作、协作解决问题和共享成就。代表性游戏:《胡闹厨房》。
模拟:模拟游戏详细复制现实世界事件,允许玩家体验和管理从建立文明或体验另一种生活的场景。代表性游戏:《模拟人生》和《文明》。
建造与探索:建造与探索游戏提供开放世界,玩家在其中收集资源、建造物品并在广阔环境中探索,鼓励创造力和发现。代表性游戏:《我的世界》和《Crafter》。


感知 perception

冒险游戏通常通过故事情节或任务来推进。根据模态将现有工作分为两类:基于文本的冒险游戏和视频冒险游戏。
基于文本的冒险游戏
基于文本的冒险游戏提供了一个文本环境,玩家使用文本命令与世界互动,探索并完成任务。
TextWorld是一个合成文本游戏生成器,通过调整房间和对象数量、任务长度和复杂性等参数来生成不同难度级别的游戏;
Jericho是56个人造游戏的集合,原本为人类玩家设计,涵盖《Zork系列》和《银河系漫游指南》等虚构作品;
ALFWorld与具身环境ALFRED对接,Agent需要完成六种家务任务;
ScienceWorld模拟小学科学课程,如热力学和电路。为了完成任务,Agent需要导航到特定房间,获取必要物品,进行实验并分析结果;
BabyAI-Text是BabyAI的文本扩展,是一个程序生成的迷你网格环境,Agent在其中导航并与对象互动。
由于缺乏图形,文本游戏依赖于常识知识作为与环境互动的先验。在基于解析器的文本游戏中,用1000个词汇生成一个三词句子会产生10亿种组合候选。预训练的语言模型(LM)具有人类知识,可以有效缩小行动空间,因此被广泛用作引导强化学习(RL)Agent的语言先验。
视频冒险游戏
《荒野大镖客2》(RDR2)是一款3D动作冒险游戏,玩家扮演一名亡命之徒,跟随他作为犯罪团伙一员的生活故事。游戏的一个主要特性是,它通过即时指令指导玩家接下来该做什么。Cradle是一个LLMGA,它使用GPT-4V感知游戏屏幕,分析指令,生成行动计划,并通过鼠标/键盘操作控制角色。

Cradle 总览和工作流

沟通游戏

沟通(或对话)游戏通过多玩家之间的沟通、谈判、推理和欺骗来进行。沟通游戏的挑战在于推断他人在含糊或误导性语言表述背后的意图,并在必要时隐藏自己的意图。
狼人杀:徐等人提出检索和反思历史沟通以增强游戏表现,并观察到GPT-3.5展现出信任、对抗、伪装和领导等战略行为。徐等人采用强化学习(RL)策略从LLM生成的多样行动中选择最优行动,旨在克服LLM对特定行动的先前偏好。吴等人引入一个RL策略,以LLM生成的推理作为输入来生成下一个行动,并使用另一个LLM生成与行动一致的描述。
阿瓦隆:这款游戏通过讨论和投票的轮次来决定谁参与任务。好团队的目标是成功完成任务,而坏团队则旨在秘密破坏这些任务或识别知道坏玩家身份的梅林。Light等人指出GPT-3.5在制定和执行简单策略上存在困难,有时会暴露自己的坏身份。王等人引入了一种推理方法,考虑到一阶和二阶视角转换,以对抗普遍的误信息。为了对抗幻觉,史等人提出以代码格式生成推理子步骤,这些子步骤随后被解释为行动。
强权外交:《强权外交》是20世纪50年代的第一个外交棋盘游戏,玩家扮演七个力争在一战期间征服欧洲的大国。每一轮都以玩家之间的私人谈判、建立信任和战术协调为标志。
Cicero是一个达到人类水平的《强权外交》Agent,它集成了一个用于规划的RL策略和一个基于计划的BART模型,以生成一致的谈判信息;
WarAgent模拟了一战和二战中参与国家、决策和后果;
CosmoAgent模仿了不同世界文明之间的沟通、冲突和合作。
其他:研究已经证明了LLM在各种游戏中的游戏能力,包括间谍游戏(谁是间谍)、猜谜游戏、豆腐王国和谋杀之谜游戏(中文称为剧本杀)。


竞争游戏

竞争游戏受严格规则约束,挑战Agent与不同水平的对手进行对抗,要求高级推理和技能。竞争游戏作为评估LLMGA推理和规划能力的基准,直接与人类玩家对抗。达到人类水平的表现是一个关键成就,突显了Agent在复杂决策和战略实施方面的能力。
星际争霸II:《星际争霸II》是一款实时战略游戏,玩家需要收集资源、建造基地、创建军队并进行战斗以击败对手。马等人的TextStarCraft II,这是一个自然语言界面,使LLM能够玩《星际争霸II》,并采用链式总结进行高效推理和决策;SwarmBrain引入了一个超级智能矩阵进行高级战略规划和一个群体反射网络进行快速战术响应。这些基于LLM的Agent在高难度级别上展现出与游戏内建AI相当的性能。
宝可梦战斗:宝可梦战斗是回合制战术游戏,两名玩家每回合各派出一只宝可梦,选择攻击或更换宝可梦。胡等人介绍了一个环境,使LLM能够玩宝可梦战斗,并开发了一个人类水平的AgentPokéLLMon,它消耗即时反馈来迭代优化策略,检索外部知识以对抗幻觉,并生成一致的行动以缓解由思维链(CoT)推理引起的恐慌切换问题。
国际象棋:冯等人介绍了一个大规模的国际象棋游戏数据集,存储在便携式游戏符号格式中,并针对混合国际象棋和语言数据集进行了ChessGPT的微调,以支持棋盘状态评估和国际象棋游戏;托什尼瓦尔等人和李等人发现,训练有素的LM能够预测下一步棋的LM能够追踪给定移动序列的棋盘状态,即LM能够蒙眼玩棋。这表明LM不仅记忆表面统计数据,还学习了序列生成过程的因果模型。
扑克:在德州扑克中,古普塔等人观察到GPT-4像一个高级但激进的玩家,在翻牌前以广泛的牌范围加注,避免跟注进入底池,并表现出非常规的玩法;
PokerGPT表明,经过监督式微调和RLHF的OPT-1.3B能够以显著较低的训练成本达到与基于RL的方法Alphaholdem相当的性能:9.5个GPU小时,相比之下Alphaholdem需要580个GPU小时。
郭等人和张等人证明,提示LLM预测对手的想法,即心理理论,能在德州扑克、二十一点和Leduc Hold'em中取得显著改进。


合作游戏

合作可以提高完成任务的效率和效果。游戏中主要存在三种类型的合作任务:
(1)合作烹饪:要求Agent合作在给定时间内烹饪并送达尽可能多的菜肴。例如,在《胡闹厨房-AI》中,两个Agent需要将三个洋葱装入烹饪锅,开始一个持续20个时间步的烹饪过程,并将汤转移到盘子中进行送达;
(2)具身家庭合作:要求Agent在具有部分观察的具身环境中协作完成尽可能多的任务,如将物体运输到目标位置;
(3)合作建造与探索:在《我的世界》中可以通过多个Agent之间的合作来加速。现有的合作游戏设置可以分为去中心化和中心化合作。
去中心化合作:去中心化结构是一种民主结构,其中没有中央任务调度器。在《胡闹厨房》中,基于历史行为推断合作伙伴的意图和下一个行动的能力,即心智理论,对于防止冲突至关重要。
Agashe等人表明GPT-4能够识别并协助需要帮助的合作伙伴,并在适应不同合作伙伴时表现出鲁棒性。ProAgent引入了一个信念修正模块来纠正对合作伙伴的错误信念,并持续超越强化学习方法。
此外,HLA集成了一个熟练的LLM和一个轻量级LLM,以平衡实时人机交互中的效能和效率;
在部分可观察的具身环境中,CoELA引入了一个高效的通信模块来决定何时进行沟通,与基于MCTS和基于规则的规划器相比,在Watch-and-Help和TDW Transport任务上表现更好。
中心化合作:在《我的世界》中,S-agents和MindAgents采用中央调度器/规划器将挑战性目标分解为子任务,并分配给Agent执行,形成层次结构。
MindAgents 总览
HAS引入了一个自动组织机制,在合作过程中动态调整关键角色和行动组,以及一个内部通信机制,以确保高效的协作。


模拟游戏

模拟游戏提供现实世界事件或场景的模拟环境,使玩家能够在开放式游戏玩法中体验真实的互动和决策。现有研究可分为人类与社会模拟、文明模拟和具身模拟。
人类与社会模拟:Generative Agents是首个基于LLM的人类模拟实验,利用LLM的先验知识模拟类似人类的日常生活和工作社交活动。具体来说,GPT-3.5扮演着25个具有独特个性和社会关系的生成Agent角色,居住在一个虚拟小镇中。引入了一种认知架构来支持Agent在动态环境中记忆、检索、反思、规划和行动。在为期两天的模拟中,观察到了交换信息、建立新关系和协调联合活动等涌现行为。
在Generative Agents的基础上,Humanoid Agents进一步考虑了基本需求(如饥饿、健康和能量)、情绪和关系亲密度等状态对Agent行为生成的影响;
对于其他模拟环境,AgentSims是一个可编程和可扩展的环境;
LyfeGame是一个位于日本的3D虚拟小镇。设计了三个实验场景来评估基于LLM的Agent的社会行为,包括一起谋杀谜案、高中活动博览会和病患紧急情况。

LyfeGame 总览
文明模拟:CivRealm是一个基于Civilization的游戏环境,每个玩家管理一个文明,模拟人类历史的进步。作为一个开放式游戏,它具有多样化的胜利条件,要求玩家战略性地发展其文明的经济、军事、外交、文化和技术。
Mastaba引入了一个顾问和一个AutoGPT风格的工人,顾问帮助生成特定于上下文的目标,而工人通过生成的行动来处理这些目标的执行。实验表明,顾问在游戏早期阶段带来优势,但随着游戏的进行,这种优势逐渐减弱。
具身模拟:在模拟的3D环境中,具身Agent从类似于人类的自我中心感知其周围环境,并与现实对象互动,按照指示执行一系列任务,如“冲洗杯子并放入咖啡机中”。现有的基准包括AI2-THOR、Virtual Home、ALFRED、iGibson、Habitat、ThreeDWorld、Behavior和Behavior-1K。现有方法主要采用LLM作为规划者,将指令分解为行动计划。具体来说,ZeroShotPlanner以零次提示的方式提示LLM进行规划;
SayCan使用学习到的可供性函数协助LLM在规划期间选择有效的行动;
LLMPlanner采用KNN检索器选择少量示例,并根据当前环境的观察动态重新规划;
E2WM通过行动空间搜索和随机探索收集的具身经验对LLM进行微调,以增强对环境的理解。


建造与探索游戏

《我的世界》和《Crafter》是两个被广泛研究的游戏环境,专注于建造与探索的游戏Agent。《我的世界》是一款3D沙盒游戏,提供给玩家极大的自由度,让他们在一个由方块和像素化景观组成的世界中探险,这个世界是通过程序生成的。基于资源的建造系统使玩家能够将收集到的材料转化为工具,建造复杂的结构和机器。
《Crafter》是一款2D开放世界游戏,模仿《我的世界》的生存模式。它挑战玩家仔细管理资源以确保有足够的水、食物和休息,同时还要防御僵尸等威胁。游戏的世界也是程序生成的,用于探索目的,并且包含了22个任务供玩家完成。
现有的Agent可以分为目标条件Agent和自主探索Agent。目标条件Agent根据给定的指令执行任务(建造),而自主探索Agent则根据自定的目标在开放世界中导航(探索)。
建造:建造任务的关键在于其复杂性:Agent必须收集分散在世界各地的多样化材料,并理解复杂的配方和涉及的顺序步骤。因此,规划被广泛用于解决建造任务。现有的Agent设计,如DEPS、GITM、JARVIS-1、Plan4MC、RL-GPT和S-agents,主要遵循采用LLM作为规划者将目标分解为子目标,并为每个子目标生成行动计划的范式。具体来说,DEPS通过整合计划执行的描述和在遇到失败时的自我解释反馈来引入初始计划的错误纠正;
GITM利用外部知识,如物品建造/熔炼配方,并配备长期记忆以维持对遇到的客观存在的共同参考计划;
JARVIS-1将MineCLIP和LLM结合起来,以感知多模态输入,并使用多模态记忆存储经验;
Plan4MC和RL-GPT将LLM规划者与低级RL策略整合以执行行动;
S-agents和HAS将子任务分配给多个Agent以合作执行任务。
探索:在没有特定目标的情况下导航程序生成的世界可能会让Agent面临众多可能的行动。以前的工作利用课程学习来识别合适的任务,而现在LLM可以直接作为目标生成器。在《我的世界》中,Voyager采用自动课程以自我指导的方式,即它要求LLM生成适应Agent当前状态、库存、获得的技能和环境的目标。在《Crafter》中,OMNI利用LLM确定课程设计的有趣任务,克服了以前量化“兴趣”的挑战。
ELLM、SPRING和AdaRefiner提示LLM为Agent生成目标。具体来说,ELLM查询LLM以获得Agent当前上下文的下一个目标,并在稀疏奖励设置中奖励Agent完成这些建议;
SPRING使用LLM总结《Crafter》论文中的有用知识,并逐步提示LLM生成下一个行动;
在ELLM的基础上,AdaRefiner级联一个可学习的轻量级LLM与固定的LLM以更好地生成目标计划。


评估

游戏Agent的评估指标因不同的游戏而异。下表中总结了几个代表性游戏的指标。
游戏
指标
Jericho
游戏得分
ALFWorld
任务成功率
ScienceWorld
任务得分
BabyAI/BabyAI-Text
任务成功率
RDR2
任务成功率
狼人杀
胜率,投票准确率
阿瓦隆
胜率
外交
玩家得分
星际争霸II
胜率
宝可梦战斗
胜率,战斗得分
国际象棋
Elo等级分,步数得分
德州扑克
胜率,赢/输筹码数,mbb/手
胡闹厨房
奖励值,成功率
人类模拟
人类评估
文明
任务成功率,游戏得分,科技和单位数量
ALFRED
任务成功率
虚拟家园
任务成功率,可执行性
我的世界
任务成功率,地图覆盖率,物品数量
Crafter
任务成功率


结论和未来方向

本文聚焦于游戏 Agent(LLMGAs)研究的两个主要方面:
(1) LLMGAs的构建,我们详细阐述了六个基本组件:感知、记忆、思考、角色扮演、行动和学习;
(2) LLMGAs在六种游戏类别中的应用,包括冒险、沟通、竞争、合作、模拟和制作与探索,详细描述了与每种类型相关的游戏环境和游戏Agent采用的常见策略。
最后确定了这个新研究领域的三个潜在未来方向:
使LLM在环境中落地:仅在文本语料库数据上预训练的LLM并未在真实环境中落地,即它们并不真正意识到它们的生成对物理过程的后果。因此,无经验的LLM会产生怪异的行动,展现出高级意图与复杂游戏控制之间的差距,特别是在缺乏视觉感知能力和反馈的情况下,因此表现很大程度上依赖于提示词。
已经通过多模态感知、采用外部可供性功能、环境反馈和环境体验等方式努力使LLM落地。然而,目前在落地技术方面的进展仍然有限,无法满足实际应用的要求。游戏作为可控和安全的环境,是开发可以使LLM更符合复杂环境要求的落地技术的理想的试验场。
通过游戏玩法进行知识发现:当前的研究主要停留在利用LLM中编码的先验知识进行游戏玩法的阶段。尽管一些研究提出利用游戏玩法体验来落地和增强基于LLM的Agent,但这些Agent仍然无法提取观察和表层体验下的深层知识。
知识发现不仅仅是学习有效行动,而是像人类一样理解游戏机制的根本原则和因果模型。我们认为,具有复杂外在知识的玩法机制是设计这类Agent的基本试验场,通过在环境中体验进行的知识发现可能是追求通用人工智能(AGI)的关键步骤。
Agent社会模拟:Generative Agents的社会模拟实验表明,基于LLM的Agent对于模拟人类行为是有希望的。观察到类似人类的社会行为,如信息传播、建立新关系和社会活动的协调,这得益于新的认知架构的支持。
然而,由于人类更加复杂,具有复杂的心理过程、情感深度和高级社交技能,未来研究的一个有趣途径是开发更好的认知架构和更细腻的社会互动与合作模拟,在现实游戏环境中促进对复杂人类互动的更深层次理解和表示。
词汇表:

1. LLMGAs (LLM-based Game Agents)|基于大型语言模型的游戏Agent|指运用大型语言模型作为核心组件的游戏Agent,能够进行类似人类的决策过程。

2. PPO (Proximal Policy Optimization)|近端策略优化|一种强化学习算法,用于训练策略网络,以提高决策过程中的样本效率。

3. E2WM (Embodied Experience to World Models)|具身经验到世界模型|指通过身体经验来构建对世界的模型,用于提高AIAgent的环境理解和决策能力。

4. LSTM (Long Short-Term Memory)|长短期记忆网络|一种特殊的循环神经网络(RNN),能够学习长期依赖信息。

5. MC-Reward (Model-based Curriculum Rewards)|基于模型的课程奖励|一种奖励机制,通过模拟环境来设计任务的奖励结构,以指导学习过程。

6. OPT (Open Pretrained Transformer)|开放预训练变换器|一种预训练的变换器模型,用于自然语言处理任务。

7. SOTA (State of the Art)|最新技术水平|指在特定领域或任务中表现最好的技术或方法。

8. KNN retriever|K最近邻检索器|一种基于KNN算法的信息检索方法,用于从数据库中检索最相关的信息。

9. Elo rating system|埃洛评分系统|一种衡量玩家相对实力的评分系统,常用于游戏和竞赛中。

10. AGI (Artificial General Intelligence)|通用人工智能|指能够执行任何智能任务的人工智能系统,具有类似人类的广泛认知能力。

11. LLM (Large Language Models)|大型语言模型|指具有大量参数,能够理解和生成自然语言文本的人工智能模型。

12. MLLMs (Multimodal Large Language Models)|多模态大型语言模型|指能够处理和理解多种模态输入(如文本和视觉信息)的大型语言模型。

13. RL (Reinforcement Learning)|强化学习|一种机器学习方法,通过与环境的交互来学习如何做出决策以最大化某种累积奖励。

14. API (Application Programming Interface)|应用程序编程接口|一套预定义的函数、协议和工具,用于构建软件和应用程序。

15. CLIP (Contrastive Language-Image Pretraining)|对比语言-图像预训练|一种多模态学习方法,通过训练模型识别和匹配语言描述和图像。

16. ToM (Theory of Mind)|心理理论|指理解和预测他人心理状态(如信念、意图、欲望)的能力,对于理解和参与需要策略和欺骗的游戏非常重要。

17. CoT (Chain of Thought)|思维链|一种推理方法,通过分解问题并逐步推理来解决复杂问题。

18. LoRA (Low-Rank Adaptation)|低秩适应|一种模型微调技术,通过改变模型权重的一小部分来适应新任务。

19. RLHF (Reinforcement Learning from Human Feedback)|来自人类反馈的强化学习|一种强化学习方法,通过人类的反馈来指导和优化模型的行为。



对该研究感兴趣的朋友可以点击“阅读原文”查看原论文,进一步研读。

【声明】内容源于网络
0
0
RTE开发者社区
RTE 开发者社区是聚焦实时互动领域的中立开发者社区。不止于纯粹的技术交流,我们相信开发者具备更加丰盈的个体价值。行业发展变革、开发者职涯发展、技术创业创新资源,我们将陪跑开发者,共享、共建、共成长。
内容 1122
粉丝 0
RTE开发者社区 RTE 开发者社区是聚焦实时互动领域的中立开发者社区。不止于纯粹的技术交流,我们相信开发者具备更加丰盈的个体价值。行业发展变革、开发者职涯发展、技术创业创新资源,我们将陪跑开发者,共享、共建、共成长。
总阅读1.6k
粉丝0
内容1.1k