论文解读 | 3月最新用于游戏的大模型Agent综述
Title: A Survey on Game Playing Agents and Large Models: Methods, Applications, and Challenges
Institute: Beijing Academy of Artificial Intelligence (BAAI) ,Institute of Software, Chinese Academy of Science,University of Chinese Academy of Science,Dartmouth College,Beijing University of Posts and Telecommunications,Peking University
Authors: Xinrun Xu,Yuxin Wang,Chaoyi Xu,Ziluo Ding,Jiechuan Jiang,Zhiming Ding,Börje F. Karlsson
Arxiv Link: https://arxiv.org/abs/2403.10249
Date: 2024.3.15
介绍
大规模模型(LMs),包括语言模型和多模态模型,在许多重要领域取得了重大进展。这些进展促使研究者探索将LMs作为agent应用于执行复杂任务。与传统模型相比,基于LM的agent(LMAs)在许多情况下展现出与更强大的泛化能力。
基于LMs的agent表现出的能力,引起了人们将其应用于游戏的极大兴趣。这是因为游戏为agent提供了需要复杂推理和认知能力的虚拟挑战环境,是评估agent的理想Benchmark。相比于真实世界实验,在游戏环境中进行数据获取的过程在成本、可控性、安全性和多样性方面具有无可比拟的优势,同时也保留了一定的挑战性。
在思考如何让大模型玩游戏之前,让我们先来想一想人类是如何玩游戏的。
人类大脑作为一个复杂的信息处理系统,首先将感官信息转化为感知表征,然后利用这些表征构建关于世界的知识并做出决策,最后通过行动实施。这一序列可以抽象为agent的迭代过程:感知、推理和行动。
- 感知:将游戏过程中的观察到的原始信息转化为可操作的、对游戏的理解,以支持后续的互动。早期的工作将文本转化为语义信息,最近的工作尝试将视觉信息整合进来。
- 推理(Inference ):涉及agent的诸多关键能力,包括记忆、学习、 推理(reasoning)、反思和决策等。
- 记忆:指存储并检索学到的知识。
- 学习:通过经验和多智体系统中获得技能对策略进行调整。
- 推理:指通过处理、汇总信息,从而解决问题的过程。在复杂游戏中,决策需要多跳推理和长期规划,任务分解和协作决策,以应对游戏中的动态环境。
- 反思:指自我改进的过程,agent根据反馈评估和调整策略。
- 行动:涵盖了与游戏环境的互动,即agent对游戏状态和环境反馈的反应。
- 代码生成:agent的许多行为是通过生成编码来执行的,使用诸如迭代prompt、角色特定prompt和代码生成等技术。其实gpt-4也经常这么做。例如,我们命令gpt为我们分析一个表格,gpt会构建一段python代码来读取表格、分析表格、可视化表格,然后将结果以文本的形式回答给我们。
- 对话互动:对话交互不仅涉及agent与agent之间的通信,还包括人与agent之间的互动,这些交互行为通过协作框架和对话控制机制来实现动态且有效的沟通,这样做的目的是为了根据交互的需求和上下文灵活地调整对话行为。
- 行为一致性:行为一致性指的是agent在不同情境下按照可预测的、稳定的、一致的模式行动。为达到此目的,可以使用结构化的方法如DAG、反馈机制、强化学习等手段。
请注意上文中的两个推理虽然在中文中相同,但是在英文中一个是Inference一个是reasoning。“inference"侧重于从已有信息出发进行逻辑上的延伸和结论抽取,而"reasoning"则涵盖更广泛的思考和逻辑推理过程
上文所指的"世界模型"可以理解为人类大脑利用感知表征构建的关于世界的知识。此处的世界模型是大脑对外部环境的内部表示,包括对物体、事件、场景以及它们之间关系的理解和认知,然后帮助个体理解周围的环境,预测未来事件,并在此基础上做出决策和行动。
感知
感知游戏的原始场景并提取信息对于随后的步骤至关重要。感知的主要功能是将多模态空间(包括视觉、语义和音频)转化为agent的输入。
现代的数字游戏通过整合多模态感知通道,为人类玩家提供更丰富和更沉浸式的体验,使玩家能够更深入地沉浸游戏世界。然而,不幸的是,目前现有工作中并没有太多关于将音频数据整合到大型模型的训练中或优化游戏agent的工作。
语义感知
在语义方面的感知主要指的是,游戏中的文本元素和文本描述,包括从自然语言指令到对话。这意味着玩家通过阅读和解释文本来理解游戏环境中的各种元素和发生的事件,以及进行决策和行动。
语义感知可以被划分为四类:
- 简单的文本输入:指用户的简单想法或描述、基本游戏状态变量、人物之间的对话。
- 结构化或基于角色的输入:角色的属性、故事、相关的信息、技能等。
- 环境和特定上下文输入:详细的游戏描述和上下文信息等情况,以及任务的自然语言指令。
- 多模态输入:将视觉、听觉和文本数据整合用于决策,以及将对话、游戏状态和脚本的整合以实现更丰富的交互。
视觉感知
在上文中,我们提到可以将多模态信息如视觉信息转为文本信息。然而,在从多模态转换为文本格式时可能会丢失许多重要信息,这很可能会导致agent 难以理解其面对的情况或难以在游戏中导航。因此,LMAs需要更全面的感知数据。
利用多模态大语言模型(MLLMs)成为了解决上述问题的一种解决方案。 通过利用MLLMs,agent可以获得对周围环境更丰富的感知,从而促进更复杂的认知过程和类似于现实世界的环境中的决策能力。
关于这个视觉空间,目前有三种不同的感知方法:
- 通过特定的API来获取与游戏相关的信息,并将这些信息输入到agent中
- 使用图像和行动数据来对模型预训练
- 直接使用纯图像信息进行输入
推理(Inference)
在游戏的初始阶段,agent需要吸收基本常识和游戏特定背景知识(通过预训练或实时感知)。在游戏过程中,agent综合过去的游戏事件,管理知识存储和检索,以及进行核心认知功能,如学习、推理(Reasoning)、决策和反思。
记忆
为了正确地表示学习到的知识或过去事件,并在推理中使用这些信息,一个agent需要有效地操作这些"记忆”。如何设计一种高质量的记忆机制,使agent能够有效检索和存储记忆,同时充分利用背后的大型语言模型并遵守其约束条件,仍然是一个尚未解决的问题。
常识
常识知识是人们通常在早期生活中习得的、在特定情境下往往不需要明确表达的知识,对于推理和避免误解至关重要。
大型语言模型,通过在多样化的互联网文本上预训练,已经表现出高级的语言理解和推理能力,能够使用这种隐含的知识来适应新挑战。然而,这些知识可能不总是与特定的游戏场景等应用情境完全一致。因此,当前的研究旨在通过以下方式增强语言模型的常识性理解:
- 通过指令微调将结构化的知识嵌入。
- 使用SOP将常识集成到特定的角色和任务中。例如,如果一个模型被用于模拟医生的角色,SOP可能包含医疗常识、病人交流的指南,以及诊断和治疗的标准流程。这使得模型能够在模拟或实际情境中更加有效和适应性地行动,因为它利用SOP中的常识来指导决策和行为。
- 使用RAG(检索增强生成)。
游戏背景知识
在大型模型中的游戏背景知识指的是对游戏环境各个方面的理解。
当前的技术通过将基本游戏规则、 基本流程、 推理能力和ont-shot演示纳入prompt中。例如:
- 将详细的角色资料通过prompt输入大模型中。
- 使用知识图谱用于描述实体之间的关系。
- 使用来自模拟环境和角色扮演游戏(RPG)日志的详细场景显著增强了语言模型对游戏动态的理解。
- 根据Minecraft Wiki和物品制作/熔炼配方的文档构建外部知识库,为Minecraft世界创建了一个详尽的知识来源,供agent查阅。
检索
LMAs中的记忆检索是指通过回 忆学到的信息来增强推理和行动。
可以将LMAs的记忆检索方法分为三类:结构化记忆系统、动态自适应检索过程和高级记忆检索技术。
- 结构化记忆系统:该技术旨在高效地组织和索引信息,以便快速检索。例如,技能库、共享消息池、层次结构和结构化通信,都是为了让agent能够快速访问以前获得的技能和知识,促进有效的记忆管理。“总结并忘记"的记忆机制通过总结重要信息并丢弃其余部分来优先处理关键记忆项,从而降低计算成本。
- 动态自适应检索过程:该方法侧重于结合相关性、最近性和重要性来检索记忆,从而策略性收集则强调历史游戏信息的相关性和新鲜度。这个过程还包括根据新的情况不断调整计划,确保agent的行为能够适应游戏的变化。简单来说,该方法实时地更新和调整agent的记忆,以便做出更好的决策。
- 高级记忆检索技术:包括(1)使用长短期记忆(LSTM)来保持对过去事件的记忆、(2)生成更简洁的状态描述来帮助agent快速理解当前游戏情况、(3)压缩历史文本序列以节省空间和提高效率。简而言之,该技术帮助agent更精确和有效地管理和使用它们的记忆。
学习
在大模型(LMs)的背景下的学习涉及解释和整合来自各种来源的信息,包括训练数据、用户交互和环境反馈。
学习过程可以是显式的,例如通过在特定数据集上进行微调或专注于任务的训练;也可以是隐式的, 如在利用预先存在的知识来适应新场景。
-
迭代和基于反馈的学习:结合迭代提示、角色prompt、反馈机制和行为克隆,通过持续的反馈和适应来增强能力。
-
强化学习和离线学习:包括具有环境反馈的强化学习、离线学习和基于语言指令的强化学习。相比于迭代和基于反馈的学习侧重于通过连续的实时反馈来优化模型行为,本方法侧重于通过环境交互(实时或基于历史数据)来最大化长期奖励或达成特定目标。
-
基于经验和利用记忆的学习:侧重于利用过去的经验、记忆检索和经验池来指导当前和未来的行动。
-
协作和适应性学习:强调通过muti-agent合作、适应性策略和互动学习过程进行学习。
推理(Reasoning)
推理涉及将从学习阶段获得的基础知识抽象为更高级形式的理解,通过演绎、归纳或诱导推理。
决策
在游戏的广阔世界中,特别是在开放世和沉浸式环境中,玩家和人工智能agent面临复杂的决策和行动空间。
这些空间包含着大量可能的行动、互动和决策,具有广泛的角色、物品使用和技能组合。此外, 多智能体规划可能增加另一层复杂性,需要在信息不完整的环境中协调和协作多个agent。
多跳推理
多跳推理是指在做出决策之前考虑多层信息和依赖关系的认知过程。
例如,在战略游戏中,agent必须考虑当前的局势,预测对手的动作,评估各种行动的潜在结果, 然后决定最有利的行动方向。
长期规划
长期规划是指agent设定目标并确定在较长时期内通过行动实现该目标的战略过程。
有学者提出使用思维链(COT) 规划模仿人类推理,生成最终决策的中间步骤,其中每个步骤都建立在前一个步骤的基础上, 以得出达到目的。
反思
反思指的是大型模型agent(LMAs)评估、评估和可能调整其自身过程、决策或输出随任务进展的能力。
- 基于反馈的自我改进:利用外部反馈(如环境响应或代码执行结果)进行自我核实、分析和迭代增强的过程。
- 迭代优化计划和行动:基于反馈和新信息不断细化计划或行动以更好地实现或适应目标的方法。
- 协作与多智能体交互:强调在多智能体系统中协作重新评估和调整决策。
- 辩论和基于理论心智的反思:使用辩论或交流格式作为反思过程的模型。
行动(Action)
LMAs在游戏中操作的行动空间可以分类为三种不同类型。
- 基于文本互动
- 使用API互动
- 通过IO操作直接控制。如键盘、鼠标等。
行动( Behavior)
LMAs通过生成式编程技术执行特定操作。迭代prompt结合环境反馈、执行错误和自我验证,不断完善生成的程序,确保其对手头任务的有效性和相关性。
对话
LMAs通过考虑当前环境和过去经验与人类或其他agnet进行交互。
比如,agent-agent交互和人-agent交互。
在过去的研究中表明,LMAs在协作中展示了类似人类的社会行为,如团队合作、领导、说服、欺骗和对抗。
一致性(Consistency)
行动一致性指agent的行动需要保持连贯并与其目标一致。
为了维护这种一致性,agent通过考虑过去的经验和当前情境、利用反馈机制以及在必要时修改行动和计划。
具体策略包括:
- 前瞻检查机制:评估行为的可行性。
- 强化学习(RL):训练选择最合适行动的策略。
- 自我一致性(SC):生成多个行动预测并选择最常见的行动进行一致的决策,如PokéLLMon案例。
结构性方法包括:
- 使用有向无环图来控制行动进展。
- 利用技能库
- 以及定义具有清晰语义的结构化行动
- 为代理分配特定角色并遵循结构化工作流程
- 神经符号方法
挑战
幻觉
LM可以产生与原始或准确信息不符的输出, 这种情况通常被描述为幻觉,想解决起来非常困难。
通过引入critic agents(用于评价的agent)、SOP、角色特定prompt可以减少逻辑性的幻觉。
此外,还有学者尝试引入上下文强化学习(ICRL)、知识增强生成(RAG)、多智体辩论等方法解决幻觉问题。
错误校正
在此方面,许多研究采用迭代提示机制、反馈机制或agent之间的聊天链来识别和纠正错误。
使用critic agents进行选择和反馈、带环境反馈的迭代prompt等方法被用于错误校正。
泛化
泛化能力指agent将在过去环境中获得的知识、技能和能力,应用于新的、以前未遇到的环境中,以实现目标并执行任务。
解决的方法包括:上下文引导的COT推理方法 (Context-Oriented Thinking,COT)、Minecraft中利用长期规划和外部知识的GITM方法(Generalized Inverse Task Mapping,GITM),在多智体环境下的信息提取和协作规划等。
可解释性
一些研究利用COT过程(COT processes)、模块化决策过程、清晰的对话式编程范式等方法增强agent行为的可解释性。
发展
多模态感知
通过增强多模态能力,包括视觉和听觉感知,也许可以增加agent对更复杂的任务处理。
值得注意的是,游戏中的声音效果对于感知上下文、理解任务和接收反馈至关重要,但很少有文献探讨如何利用听觉信息来提升游戏agent的表现。
游戏体验的真实性
相比于由大型语言模型生成的对话和想法,人们更偏爱人类编写的内容。这表明未来的研究需要更好地将LLM生成的内容与游戏的叙事和状态联系起来。
外部工具
大模型agent无法掌握利用外部工具,来提升自己在游戏中的表现。
实时性
考虑到大模型固有的推理过程和计算需求, 掌握实时、高速游戏提出了一项艰巨的挑战。