Agent AI: Surveying the Horizons of Multimodal Interaction---游戏代理、机器人
游戏代理
游戏为测试 LLM 和 VLM 的代理行为提供了一个独特的沙盒环境,不断拓展它们的协作和决策能力的边界。以下三个领域突显了代理与人类玩家和其他代理互动的能力,以及在环境中采取有意义行动的能力。
NPC 行为
在现代游戏系统中,非玩家角色 (NPC) 的行为主要由开发者编写的预定义脚本控制。这些脚本涵盖了一系列基于游戏环境中各种触发条件或玩家行为的反应和互动。然而,这种脚本化的特性往往导致 NPC 行为的可预测性和重复性,无法根据玩家的行为或游戏环境的动态变化进行调整。这种僵化性妨碍了在动态游戏环境中创造沉浸式体验的目的。因此,目前对使用 LLM 来提高 NPC 行为的自主性和适应性,进而使互动更具细腻感和吸引力的兴趣日益浓厚。
图8:具身代理用于用户互动式游戏动作预测和互动编辑,通过 GPT-4V 实现 Minecraft Dungeons 游戏场景的模拟与生成。
LLM 可以通过处理大量文本,学习模式并生成更加多样和类似人类的响应,显著推动 NPC 行为的发展。它们可以用于创建动态对话系统,使与 NPC 的互动更具吸引力和不可预测性。此外,LLM 可以根据玩家的反馈和游戏内数据不断改进 NPC 的行为,使其更加符合玩家的期望和游戏的动态。
人类与 NPC 互动
人类玩家与 NPC 的互动是游戏体验的关键方面。传统的互动模式主要是单向的,NPC 以预设的方式对玩家输入作出反应。这种限制阻碍了更自然和丰富的互动,难以在虚拟世界中模拟人类之间的互动。LLM 和 VLM 技术的出现有望改变这一互动模式。通过运用这些技术,游戏系统可以分析并从人类行为中学习,以提供更类人化的互动。这不仅提升了游戏的真实感和参与度,还为在一个复杂但受控的环境中探索和理解人机互动提供了平台。
基于代理的游戏分析
游戏已成为日常生活中不可或缺的一部分,据估计吸引了全球约一半人口参与。此外,它对心理健康具有积极影响。然而,当今的游戏系统在与人类玩家的互动方面存在不足,其行为主要由游戏开发者手工设计,这些预编程的行为常常无法适应玩家的需求。因此,游戏领域亟需新的 AI 系统来分析玩家行为并在必要时提供适当支持。智能交互系统有潜力彻底改变玩家与游戏系统的互动方式。
图9:当提供“动作历史”和“游戏目标”作为提示时,GPT-4V 能有效预测高层次的下一个动作。此外,GPT-4V 准确识别出玩家手中拿着木材,并能将这一感知信息纳入未来动作规划中。尽管 GPT-4V 似乎具备预测某些低层次动作(如按下“E”键打开背包)的能力,但模型的输出并不完全适用于原始低层次动作预测(包括鼠标移动),可能需要额外的模块来控制低层次动作。
通过结合玩家互动与反馈、像素输入以及自然语言的规划和理解,代理模型可以帮助不断改进游戏动态,从而推动游戏环境更以玩家为中心的演进。
游戏中的场景合成
场景合成是创建和增强沉浸式游戏环境的重要组成部分,涉及在游戏中自动或半自动生成三维 (3D) 场景和环境。此过程包括地形生成、物体放置、创建逼真的光照效果,有时还包括动态天气系统。
现代游戏通常包含广阔的开放世界环境。手动设计这些景观既耗时又耗费资源。自动地形生成通常使用程序化或 AI 驱动的技术,可以减少手工劳动,生成复杂逼真的景观。LLM 和 VLM 可以利用互联网规模的知识来制定规则,以设计出视觉效果令人惊叹且独特的非重复景观。此外,LLM 和 VLM 还可以确保生成的素材在语义上的一致性和多样性。
在场景中放置建筑物、植被和其他元素,以一种现实且美观的方式布置是增加沉浸感的关键。通过使用 LLM 和 VLM,开发人员可以自动化场景元素的布置,使得生成的场景更加逼真,为玩家提供更具沉浸感的体验。这些技术有助于将对象自然地整合到虚拟环境中,从而创造出具有深度和吸引力的游戏世界。
对象放置和照明效果
VLM 和 LLM 可以通过遵循预定义或学习的规则和美学原则来辅助对象放置,从而加速关卡设计过程。它们还可以被进一步训练以理解设计和美学的原理,从而帮助进行程序化内容生成。它们可以帮助制定程序算法遵循的规则或指导方针,以生成既符合视觉吸引力又具有情境适用性的对象和场景。
逼真的光照和气氛效果对于创建可信且吸引人的游戏环境至关重要。高级算法可以模拟自然光照条件和动态天气效果,增强场景的真实感和氛围。LLM 可以帮助开发系统,从多个创新角度实现更逼真的光照和气氛效果。VLM 可以分析大量真实世界的光照和大气条件数据集,以帮助开发更逼真的算法,从而在游戏中模拟这些效果。通过了解自然光照和天气的模式和细微之处,这些模型可以推动模拟逼真效果的算法的开发。此外,LLM 和 VLM 还可以用于开发实时调整光照和气氛效果的系统,基于玩家的行为、游戏状态或外部输入进行调整,从而提供更具互动性和沉浸感的体验。
实验与结果
零样本/少样本学习使用 LLM 或 VLM。如图 8 和图 9 所示,我们使用 GPT-4V 进行了高级描述和动作预测。图 8 展示了一些使用 GPT-4V 进行动作描述生成和编辑的定性示例。增强文本生成提供了一种新方法,通过使用游戏动作先验生成3D场景,从而提高场景的自然性。因此,GPT-4V 可以为游戏视频生成相关的高级描述,这些描述与游戏内容高度匹配并适当。
图10:在未见过的 Minecraft 视频上进行的遮罩视频预测。从左到右依次为:原始帧、遮罩帧、重构帧和带有补丁的重构帧。
小型代理预训练模型。为了展示我们的代理视觉-语言架构,我们首先通过在 Minecraft 数据上预训练来研究其在游戏代理中的应用。如图 7 所示,给定输入动作代理、视频关键帧和相应文本,标准的编码器-解码器可以将代理动作和图像转换为动作文本标记和图像块标记,然后使用代理-视觉-语言解码器将其转换为动作预测句子。整体架构如图 7 所示。我们通过多个 Minecraft 示例对我们的方法进行了评估。Minecraft 视频数据包含 5 分钟的剪辑,用于预训练的数据包含 78,000 个视频,我们使用了其中的 5,000 个视频(预训练数据的 6%)进行第一轮预训练。我们在 16 个 NVIDIA V100 GPU 上训练了一个 2.5 亿参数的模型,训练时间为一天,并在图 10 和图 11 中展示了模型的输出。图 10 表明我们的小型代理架构可以对训练过程中未见过的 Minecraft 场景生成合理的输出。图 11 展示了模型的预测与人类玩家的真实操作对比,显示出该小型代理模型具有潜在的低层次理解能力。
图11:使用小型代理预训练模型在 Minecraft 游戏场景中进行低层次的下一步动作预测。
多代理基础设施。如图 5 所示的代理范式中,我们设计了一种新型基础设施用于一个名为“CuisineWorld”(Gong et al., 2023a)的新游戏场景。我们的方法详细展示在图 12 中。
图12:MindAgent 的游戏环境中上下文学习基础设施。规划技能与工具使用:游戏环境需要多样化的规划技能和工具使用来完成任务。系统生成相关的游戏信息,并将游戏数据转换为 LLM 可处理的结构化文本格式。LLM:作为基础设施的主要执行者,负责决策,充当多代理系统的调度器。记忆历史:用于存储相关信息的实用工具。动作模块:从文本输入中提取动作,并将其转换为特定领域的语言,验证 DSL(领域特定语言),以确保在执行过程中不出错。
该基础设施通过将 GPT-4 用作中央规划器,实现了跨多个游戏领域的多代理协作。我们对系统的多代理规划能力进行了研究,并将该基础设施部署到真实视频游戏中,以展示其在多代理和人机协作中的有效性。此外,我们还提出了“CuisineWorld”,一个基于文本的多代理协作基准,提供了一个新的自动指标协作评分(CoS)来量化协作效率。有关游戏描述、高级动作预测和 GPT-4V 提示的更多示例和详细信息,请参见附录。我们在图 32 和附录 B 中展示了《Bleeding Edge》的示例,图 33 和附录 C 展示了《Microsoft Flight Simulator》,图 34 和附录 D 展示了《ASSASSIN’s CREED ODYSSEY》,图 35 和附录 E 展示了《GEARS of WAR 4》,图 36 和附录 F 展示了《Starfield》。我们还在附录 A 的图 31 中提供了用于生成 Minecraft 示例的 GPT-4V 提示过程的详细截图。
机器人
机器人是典型的需要与环境进行有效交互的代理。在本节中,我们将介绍实现高效机器人操作的关键要素,回顾应用了最新LLM(大语言模型)/VLM(视觉语言模型)技术的研究课题,并分享我们最新研究的发现。
视觉运动控制。视觉运动控制指的是在机器人系统中将视觉感知与运动操作结合,以有效执行任务。这种整合对于机器人解释环境中的视觉数据并据此调整其运动操作与环境准确互动至关重要。例如,在装配线上,配备视觉运动控制的机器人可以感知物体的位置和方向,并准确地调整其机械手与这些物体进行交互。这种能力对于确保机器人操作在各种应用中(从工业自动化到辅助老年人日常事务)具有精确性和有效性是必不可少的。此外,视觉运动控制使机器人能够适应动态环境,当环境状态可能迅速变化时,需要根据视觉反馈实时调整运动操作。
此外,在安全操作的背景下,视觉信息对于检测执行错误以及确认每个机器人动作的前提和后置条件至关重要。在不受控制的环境中(例如未知的家庭环境),机器人可能会由于家具形状变化、光照变化、物体滑动等不可预测的因素而遇到意外结果。在这种环境中,单纯依靠预先规划的前馈动作计划可能带来显著风险。因此,通过视觉反馈在每个步骤持续验证结果,是确保机器人系统稳健和可靠运行的关键。
基于语言的条件操作。基于语言的条件操作指的是机器人系统能够理解并根据语言指令执行任务的能力。这在创建直观且用户友好的人机交互界面方面尤为重要。通过自然语言指令,用户可以用类似人类之间交流的方式为机器人指定目标和任务,从而降低了操作机器人系统的难度。例如,用户可以指示服务机器人“从桌子上拿起那个红苹果”,机器人会解析这一指令,识别目标物体并执行拿起任务(Wake等人,2023年)。开发稳健的自然语言处理和理解算法,以准确解读从直接命令到更抽象指令的多种指令,并将这些指令转换为可执行的任务,是该领域的核心挑战。此外,确保机器人能够在不同任务和环境中泛化这些指令,对于提高其在现实世界应用中的多功能性和实用性至关重要。使用语言输入来指导机器人任务规划在任务和运动规划(Task and Motion Planning, TAMP)框架中受到了关注(Garrett等人,2021年)。
技能优化。最新研究显示LLM在机器人任务规划中表现出高效性。然而,任务的最佳执行,尤其是涉及物理交互(如抓取)的任务,需要对环境有更深入的理解,超越了单纯解读人类指令的范围。例如,机器人抓取任务需要精确的接触点(Wake等人,2023年)和手臂姿势(Sasabuchi等人,2021年),以便高效地执行后续操作。尽管互联网规模的VLM取得了进展,但从场景中捕捉这些间接的细微线索并有效转化为机器人技能,仍然是一个重要的挑战。为应对这一问题,机器人领域越来越关注增强数据集的收集(如Wang等人,2023年;Padalkar等人,2023年),或开发从人类示范中直接获取技能的方法(Wake等人,2021年)。学习示范(Learning-from-Demonstration)和模仿学习(Imitation Learning)框架在物理技能优化方面发挥着关键作用。
用于机器人领域的LLM/VLM代理
最新研究展示了LLM/VLM在机器人代理中与人类环境交互的潜力。以下是一些旨在利用最新LLM/VLM技术的研究主题:
- 多模态系统。最近的研究集中在开发将最新的LLM和VLM技术作为输入信息编码器的端到端系统,尤其是对这些基础模型进行修改以处理多模态信息(Jiang等人,2022;Brohan等人,2023,2022;Li等人,2023d;Ahn等人,2022b;Shah等人,2023b;Li等人,2023e)。这一改进旨在基于语言指令和视觉线索引导机器人动作,从而实现高效的身体化智能。
- 任务规划与技能训练。与端到端系统不同,任务和运动规划(TAMP)系统首先计算高级任务计划,然后通过低级别的机器人控制(称为技能)来实现这些计划。LLM的高级语言处理能力展示了将指令解析并分解成机器人动作步骤的能力,极大地推动了任务规划技术的发展(Ni等人,2023;Li等人,2023b;Parakh等人,2023;Wake等人,2023c)。对于技能训练,已有研究探索了使用LLM/VLM设计奖励函数(Yu等人,2023a;Katara等人,2023;Ma等人,2023)、生成数据以支持策略学习(Kumar等人,2023;Du等人,2023)或作为奖励函数的一部分(Sontakke等人,2023)。结合RL和IL等训练框架,这些研究将有助于高效机器人控制器的开发。
- 现场优化。由于环境条件的不可预见性和不确定性,机器人执行长任务步骤时可能遇到困难。因此,机器人领域的一个重要挑战是通过将任务计划与实时环境数据相结合,动态调整和改进机器人技能。例如,Ahn等人(2022b)提出了一种方法,通过视觉信息计算动作的可行性(即可供性),并将其与计划任务进行对比。此外,还有一些方法关注于使LLM输出任务步骤的前提条件和后置条件(如对象状态及其相互关系),以优化其执行过程(Zhou等人,2023c)并检测前提条件错误以便对任务计划进行必要的修订(Raman等人,2023)。这些策略旨在通过整合环境信息并在任务计划或控制器层面调整机器人的动作,实现基于环境的机器人执行。
- 对话代理。在创建对话机器人方面,LLM可以促进与人类的自然、上下文敏感的交互(Ye等人,2023a;Wake等人,2023f)。这些模型能够处理和生成类似人类对话的响应,使机器人能够参与有意义的对话。此外,LLM在评估话语的概念(Hensel等人,2023;Teshima等人,2022)和情感属性(Zhao等人,2023;Yang等人,2023b;Wake等人,2023d)方面也发挥了重要作用。这些属性有助于理解人类意图并生成有意义的手势,从而增强了人机通信的自然性和效果。
- 导航代理。机器人导航有着悠久的研究历史,重点是基于地图的路径规划和同时定位与地图构建(SLAM)等核心方面,以创建环境地图。这些功能已经成为广泛使用的机器人中间件(如机器人操作系统ROS)中的标准(Guimarães等人,2016)。
虽然传统的导航技术在许多机器人应用中仍然很常见,但它们通常依赖于静态或预创建的地图。最近,在更加挑战性环境中使用先进技术使机器人导航的兴趣有所增加,利用了计算机视觉和自然语言处理等领域的突破。一个典型任务是对象导航(Chaplot等人,2020a;Batra等人,2020;Gervet等人,2023;Ramakrishnan等人,2022;Zhang等人,2021),其中机器人使用对象名称进行导航而不是地图坐标,要求将对象名称与环境中的视觉信息对接。此外,近来对零样本对象导航(zero-shot object navigation)技术的关注有所增加,这种技术基于基础模型,使机器人在完全陌生的新环境中进行导航(Gadre等人,2023;Dorbala等人,2023;Cai等人,2023)。此外,视觉语言导航(VLN)也是一个代表性任务,其中任务涉及通过自然语言指令在以前未见过的现实环境中引导代理进行导航(Shah等人,2023a;Zhou等人,2023a;Dorbala等人,2022;Liang等人,2023;Huang等人,2023b)。VLN解析句子而不是对象名称,例如“去你左边的浴室。”因此,它需要更高的功能来解析输入文本(Wang等人,2019)。基础模型的出现有助于这些自适应、即时导航技术的发展,通过增强对人类语言指令的理解和环境信息的视觉解读。更详细的代表性VLN研究说明见6.2.2。
实验与结果
大量证据表明,近期的视觉语言模型(VLM)和大语言模型(LLM)在符号任务规划(例如“要做什么”)方面具有良好的潜力。然而,要实现与环境的成功交互,每个任务还需要低级控制策略(例如“如何做”)。虽然强化学习和模仿学习是通过数据驱动来学习策略的有效方法,另一种前景广阔的方法是通过现场演示直接从人类获取策略,这种方法称为“观察学习”(Wake等,2021a;Ikeuchi等)。在本节中,我们介绍了一项研究,该研究使用ChatGPT进行任务规划,并通过提供可供性信息参数化任务计划,以便实现更有效和精确的执行(见图13)。
图13:集成了 ChatGPT 驱动的任务规划器的机器人教学系统概览。该过程包括两个步骤:任务规划,用户使用任务规划器创建动作序列,并根据需要通过反馈调整结果;演示,用户视觉演示动作序列,为机器人操作提供所需信息。视觉系统收集用于机器人执行的视觉参数。
该流程由两个模块组成:任务规划和参数化。在任务规划阶段,系统接收语言指令和工作环境的描述。这些指令连同预定义的机器人动作和输出规格一起,形成一个提供给ChatGPT的综合提示,ChatGPT随后生成一系列分解的任务及其文本描述(图13左侧面板)。值得注意的是,我们采用了少样本方法,这意味着ChatGPT并未专门为此任务训练,具备无需硬件依赖的数据采集和模型训练的优势。此外,输出中的文本描述使用户能够检查并在必要时调整结果,这对于安全可靠的操作至关重要。
图14展示了在VirtualHome(Puig等,2018)上进行的代理模拟实验的定性结果。结果显示了任务计划的合理性及其输出调整的灵活性,表明了该方法的广泛适用性。
图 14:通过自动生成的反馈调整输出序列的示例。我们在实验中使用了开源的模拟器 VirtualHome。给定指令“拿起桌上的派并用炉子加热它。”任务规划器会规划出 VirtualHome 中提供的一系列功能。如果在执行过程中检测到错误,任务规划器会根据自动生成的错误消息来纠正其输出。
尽管任务规划确保了任务序列的连贯性,但在现实操作中仍需详细的参数。例如,抓取类型对于保持容器内容不洒出非常重要,而在模拟器中通常忽略了这类参数(见图14中的派抓取示例)。因此,在我们的机器人系统中,用户需要视觉演示每个动作(图13右侧面板)。任务中预定义了执行所需的参数,视觉系统则从视频中提取这些参数(Wake等,2021b)。值得注意的是,我们的机器人系统并非设计用于精确复制人类的动作(即远程操作),而是为了应对现实世界中对象位置变化等各种情况。因此,从人类演示中提取的参数不仅是精确的运动路径,更是用于指导有效环境交互的可供性信息(例如碰撞规避的路径点(Wake等,2023a)、抓取类型(Wake等,2023e)以及上肢姿态(Sasabuchi等,2021;Wake等,2021a))。上肢姿态对于高自由度的机器人至关重要,旨在为共存的人类提供可预测的姿态。带有可供性的任务序列最终转化为通过强化学习获得的可复用机器人技能,并由机器人执行(Takamatsu等,2022)。
图 15:多模态任务规划器的概览,该规划器利用了 GPT-4V 和 GPT-4。该系统处理视频演示和文本指令,生成用于机器人执行的任务计划。
通过与VLM集成,基于LLM的任务规划可以扩展为更通用的机器人系统。这里我们展示了一个示例,使用GPT-4V(ision)扩展上述任务规划器,以支持多模态输入(图15),其中人类执行的动作旨在由机器人复现。在本文中,仅显示了部分提示,完整提示可在microsoft.github.io/GPT4Vision-Robot-Manipulation-Prompts上获取。该流程接收演示视频和文本,并输出一系列机器人动作。视觉分析器旨在理解视频中人类执行的动作。我们使用GPT-4V并提供了提示,以生成类似人类沟通风格的文本指令。图16展示了文本输入如何允许用户对GPT-4V的识别结果进行反馈,以便修正识别结果的准确性并增强操作的可靠性。
图16:视频分析器输出示例。五帧图像按固定间隔提取并输入 GPT-4V。整个流程在第 6.2.2 节中描述。
接下来,场景分析器基于指令和视频数据的首帧(或环境图像)将预期的工作环境编译为文本信息。此环境信息包括GPT-4V识别的对象名称列表、对象的可抓取特性及对象之间的空间关系。尽管这些计算过程在GPT-4V中是一个黑箱,但输出的信息基于GPT-4V的知识和图像/文本输入。图17展示了场景分析器的示例输出。如图所示,当人类将罐头容器放置在桌上时,GPT-4V成功选择了与操作相关的对象(例如桌子);而在冰箱开启任务中则忽略了桌子。这些结果表明,场景分析器根据人类的动作对场景信息进行编码。我们提示GPT-4V解释对象选择过程的结果和原因。在实践中,这种方法产生了合理的输出。
图 17:场景分析器输出示例,使用了 GPT-4V。我们在第 6.2.2 节中描述了整个流程。
面向机器人导航的具身代理。视觉语言导航(VLN)指的是让具身代理在真实的3D环境中执行自然语言指令的导航任务。在3D环境中的导航(Zhu等人,2017a;Mirowski等人,2016;Mousavian等人,2018;Hemachandra等人,2015)是一个移动智能系统在物理世界中执行任务的关键能力。在过去几年中,提出了大量任务和评估协议(Savva等人,2017;Kolve等人,2017;Song等人,2017;Xia等人,2018;Anderson等人,2018a),并在(Anderson等人,2018b)中进行了总结。VLN(Anderson等人,2018a)专注于真实3D环境中的语言引导导航。
为了解决VLN任务,Anderson等人(2018a)建立了一个基于注意力的序列到序列基准模型。随后,Wang等人(2018)提出了一个混合方法,结合了无模型和基于模型的强化学习(RL),以提高模型的泛化能力。最后,Fried等人(2018)提出了一种“说者-跟随者”模型,该模型采用数据增强、全景动作空间和修改后的束搜索来实现VLN,在Room-to-Room数据集上确立了当前的最佳性能。
在前人的工作基础上,我们在Wang等人(2019)中提出了用于VLN的强化跨模态匹配(RCM)方法。RCM模型基于Fried等人(2018)的模型,但在多个重要方面有所不同:(1)RCM结合了一种新颖的多重奖励RL与模仿学习,而“说者-跟随者”模型(Fried等人,2018)仅使用监督学习(与Anderson等人,2018a相同);(2)RCM推理导航器执行跨模态的场景理解,而不是在单一模态输入上使用时间注意力机制;(3)RCM匹配评估器在架构设计上与说者类似,但前者用于在RL和SIL训练中提供循环重建内在奖励,而后者用于增强监督学习的训练数据。
在Wang等人(2019)的研究中,我们探讨了如何解决该任务的三个关键挑战:跨模态的场景理解、不良反馈以及泛化问题。正如图18所示,我们提出了一种新颖的强化跨模态匹配方法,通过强化学习在局部和全局范围内加强跨模态的匹配。特别地,匹配评估器用于提供内在奖励,以鼓励指令和轨迹之间的全局匹配,而推理导航器则在局部视觉场景中执行跨模态的场景理解。
图 18:用于 VLN 任务(Wang 等, 2019)的嵌入式智能体演示。展示了指令、局部视觉场景和俯视视角中的全局路径。智能体无法访问俯视视角。路径 A 是按照指令的演示路径,路径 B 和 C 是智能体执行的两条不同路径。
在VLN基准数据集上的评估显示,我们的RCM模型在SPL指标上比之前的方法提升了10%,并达到了新的最先进性能。为了提高学习策略的泛化能力,我们进一步引入了一种自监督模仿学习(SIL)方法,通过模仿其过去的良好决策来探索未知环境。结果表明,SIL可以近似一个更好且更高效的策略,从而大大缩小了在已知环境和未知环境之间的成功率表现差距(从30.7%降至11.7%)。
此外,在Wang等人(2019)的研究中,我们引入了一种自监督模仿学习方法用于探索,以明确应对泛化问题,这是以前的研究中未得到充分研究的问题。同时,Thomason等人(2018)、Ke等人(2019)和Ma等人(2019a, b)从多个方面研究了VLN任务,而Nguyen等人(2018)引入了VLN任务的一个变体,以在需要时通过请求语言协助来寻找对象。值得注意的是,我们是首个提出在VLN任务中探索未知环境的研究。
原文地址:https://blog.csdn.net/weixin_43961909/article/details/144301619
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!