AI速读:解锁LLM下Game Agent的奇妙世界

在 AI 浪潮中,大语言模型(LLMs)正重塑游戏智能体格局。想知道基于 LLMs 的游戏智能体如何运作,在各类游戏中有何惊艳表现,未来又将走向何方?

大型语言模型(LLMs)的兴起为游戏智能体的发展注入了强大动力,引发学界和业界广泛关注。这篇论文全面且深入地回顾了基于 LLMs 的游戏智能体相关研究,内容涵盖智能体框架、核心组件、应用实例以及未来发展趋势等多个关键层面。

论文标题:A Survey on Large Language Model Based Game Agents
来源:arXiv:2404.02039 [cs.AI] + 链接:http://arxiv.org/abs/2404.02039

基于 LLMs 的游戏智能体框架

游戏设定与策略表示

在游戏环境里,智能体与环境的交互常用马尔可夫决策过程(MDP)来描述。与传统智能体不同,基于 LLMs 的智能体依赖 LLMs 处理自然语言。它将游戏策略以文本形式呈现,依据观察到的游戏状态生成推理内容,进而决定采取何种行动,这种方式让智能体对复杂环境的理解和应对更具灵活性。

核心组件

  • 记忆模块:它如同智能体的 “大脑仓库”,存储着过去积累的丰富经验、各种想法以及掌握的技能。在游戏进程中,记忆模块帮助智能体快速回忆起有用信息,使智能体在不同情节中保持连贯的行动逻辑,不断优化自身游戏策略,以更好地应对各类复杂情况。
  • 推理模块:此模块堪称基于 LLMs 的智能体区别于传统 AI 的核心所在。通过语言进行策略规划,智能体能够在复杂多变的游戏潜在空间中展开探索,有效解决更为复杂的任务。不过,其初始推理能力源自预训练数据,所以在实际应用中,通过与环境积极互动来持续提升推理能力显得尤为重要。
  • 输入 / 输出模块:输入模块的作用是把游戏世界的各种信息转化为 LLMs 能够理解的自然语言形式,让智能体得以利用预训练所积累的知识,而不是像传统强化学习(RL)智能体那样一切从头开始学习。输出模块则负责将 LLMs 生成的行动决策转化为游戏环境可以执行的具体指令,实现智能体在游戏中的实际操作。

示例分析

  • 井字棋(Tic - Tac - Toe):输入模块把井字棋 3×3 棋盘上的符号状态转化为文本描述。记忆模块存储着过往游戏中的走法(情景记忆)以及通用的游戏策略(语义知识),比如 “形成双威胁(fork)可获胜” 这类策略。推理过程通过树状搜索对不同落子位置的后续结果进行评估,最终输出行动决策,再由输出模块转化为实际的落子操作,更新棋盘状态。
  • 宝可梦对战(Pokémon Battles):输入模块将对战中的各种状态信息,如宝可梦的属性、技能、生命值等,转化为文本形式。记忆模块不仅记录近期对战的具体情况,还从中提炼出属性相克等语义知识。推理时,智能体结合当前对战状态和记忆中的知识,选择最佳行动,比如根据对方宝可梦属性和自身宝可梦状态来决定是否切换宝可梦以及使用何种技能,最后输出模块将决策转化为游戏中的实际行动指令。

核心组件详细剖析

记忆系统

  • Working Memory:受限于预训练条件,LLMs 的上下文长度存在一定限制。为了有效处理长序列信息,可采用位置插值 / 外推(例如 PI、LongRoPE 等方法)以及并行上下文处理(如 PCW、PoSE 等技术)来扩展上下文窗口,增加智能体能够处理的信息长度。同时,通过软令牌压缩(像 AutoCompressor、ICAE 等)和分层总结(例如 Nugget、WDMM 等)等手段来解决信息过载问题,让智能体在有限的资源下高效处理信息。
  • Long-term Memory:长期记忆包含情景记忆(记录特定的游戏事件)、语义记忆(存储游戏相关的事实性知识)和程序记忆(掌握游戏中的任务执行技能)。其组织形式丰富多样,有文本块、键值对、树结构、知识图等,甚至还能将信息存储在模型参数之中。不同的组织形式对应着不同的检索方式,并且可以通过言语强化(即从失败和成功的经验对比中学习)来显著提升智能体的性能。
推理

  • Deliberate Prompting:包含思维链(CoT)、结构推理(如 Self - Consistency、GPTLens 等)和心理理论(ToM)思维等多种方法。思维链(CoT)能够促使 LLMs 在生成最终答案之前进行中间步骤的推理,显著提升智能体处理复杂任务的能力,不过可能会出现行动不一致的情况。结构推理则通过改进推理路径的选择,有效解决了这一问题。心理理论(ToM)思维帮助智能体更好地理解其他游戏参与者的意图,在各类游戏场景中都发挥着重要作用。
  • 监督微调:通过在收集到的游戏轨迹数据上对 LLMs 进行微调,使智能体能够学习到专家玩家的推理方式和行动策略。其中,行为克隆是直接模仿专家的游戏轨迹,拒绝采样微调则是挑选符合特定标准的样本进行训练,以提高智能体的学习效果。
  • 强化学习:基于策略的方法(例如 PPO)主要是训练 LLMs 作为智能体的决策策略,同时学习价值模型来评估行动的优势程度。价值 - based 方法侧重于学习估计状态 - 行动对的预期回报。过程奖励建模(PRM)则为智能体的推理步骤提供实时反馈,有效提升推理效率,让智能体在不断试错中优化策略。
  • 直接偏好优化:以 DPO 为例,它通过对比学习的方式,最大化优质生成结果与较差生成结果之间的差异,这种方法简化了训练过程,并且降低了内存成本,提高了训练的效率和效果。
输入 / 输出

  • 输入:根据游戏状态的模态不同,输入方式主要有文本观察(直接利用游戏中已有的文本描述信息)、符号状态描述(将结构化的游戏状态信息转化为文本提示)、视觉到文本转换(借助外部视觉模型将游戏画面等视觉信息处理为文本)和多模态 LLM 感知(直接运用多模态 LLMs 同时处理图像和文本等多种信息)。
  • 输出:LLMs 生成的高级文本行动需要转化为具体的游戏行动,实现方式包括直接使用高级行动(在合适的游戏场景中直接应用 LLMs 生成的高级指令)、通过低级控制器转换(将高级行动进一步细化为低级的控制序列)和程序性行动(输出结构化的代码来执行具体操作),但每种方式在实际应用中都面临着各自独特的挑战。

在各类游戏中的应用

  1. 冒险游戏:冒险游戏分为文本冒险游戏(像 TextWorld、Jericho 等)和视频冒险游戏(例如 Red Dead Redemption 2)。在文本冒险游戏中,游戏进程高度依赖常识知识,LLMs 可以作为强大的语言先验,有效引导智能体采取合理行动。在视频冒险游戏方面,如 Cradle 项目利用 GPT - 4V 来感知游戏屏幕画面,并据此控制游戏角色的行动。
  2. 交流游戏:包括狼人杀(Werewolf)、阿瓦隆(Avalon)和外交(Diplomacy)等游戏。这类游戏的难点在于需要智能体准确推断其他玩家的意图,同时巧妙隐藏自身意图。LLMs 通过推理和策略学习参与到这类游戏中,然而,像 GPT - 3.5 在某些复杂情况下,仍然存在难以制定有效策略以及准确执行策略的问题。
  3. 竞争游戏:例如星际争霸 II(StarCraft II)、宝可梦对战、国际象棋(Chess)和扑克(Poker)等。这些游戏是检验智能体推理和规划能力的重要基准。在这些游戏中,LLMs 能够实现与人类玩家相当的游戏表现,比如 PokéLLMon 在宝可梦对战中能够充分利用游戏反馈信息,不断优化自身对战策略。
  4. 合作游戏:涵盖合作烹饪、实体家庭合作和合作建造与探索等多种任务类型,并且分为去中心化合作(如在 Overcooked 游戏中,智能体需要推断伙伴的意图以实现有效协作)和中心化合作(例如在 Minecraft 游戏中,通过中央调度器来分配任务)两种模式。LLMs 的应用有助于显著提升团队协作的效率,促进智能体之间的协同配合。
  5. 模拟游戏:可细分为人类和社会模拟(比如 Generative Agents 模拟人类的日常生活场景)、文明模拟(如 CivRealm 模拟人类历史的发展进程)和实体模拟(例如在虚拟环境中执行各种实际任务)。在这些模拟游戏中,LLMs 主要用于模拟各种场景和进行决策,帮助玩家更好地体验和管理复杂的虚拟世界。
  6. 建造与探索游戏:以 Minecraft 和 Crafter 为典型代表,智能体在这类游戏中面临着收集材料、规划建造以及探索游戏世界等多重任务。在建造任务中,LLMs 可以作为规划器,将复杂的建造目标分解为具体的子目标和步骤。在探索任务中,LLMs 又可以充当目标生成器,例如 Voyager 在 Minecraft 中能够根据自身当前状态自动生成合理的探索目标。

未来研究方向展望

  1. 游戏基准:高质量的游戏基准对于提升基于 LLMs 的智能体能力起着至关重要的作用。不同类型的游戏能够有针对性地培养智能体的特定技能,例如包含丰富语义知识的游戏有助于智能体进行知识发现;具有复杂决策空间的游戏能够有效锻炼智能体的推理能力;动作类游戏可以用于评估智能体的视觉感知和低级控制能力;竞争与合作类游戏能够检验智能体的心理理论推理水平;模拟游戏则有利于促进智能体涌现行为的研究。
  2. 环境中的自我进化:智能体的自我进化可以通过基于模型的方法(比如利用强化学习技术来改进智能体的推理和决策过程,精心设计合适的奖励函数,并确保训练过程的稳定性)和基于记忆的方法(例如从过往经验中提取和存储有用的语义知识,进行言语强化学习,构建高效的记忆模块,以支持智能体的持续进化)来实现。
  3. 智能体社会模拟:未来在智能体社会模拟方面,可以从三个主要方向展开拓展研究。一是构建更为准确的认知框架,以更精准地捕捉人类认知的复杂性;二是创建更加逼真的建模环境,使其能够更好地反映现实世界的复杂性;三是开展大规模模拟,通过解决并行计算等技术挑战,实现对大量智能体的有效处理和模拟。

总结

本文系统全面地回顾了基于 LLMs 的游戏智能体相关研究,从智能体框架搭建到核心组件剖析,从多种游戏应用实例到未来研究方向展望,为该领域的研究人员提供了极为全面且有价值的参考,有力地推动了该领域的进一步发展。
本文由 AI 辅助完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/77750.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【每日八股】复习计算机网络 Day3:TCP 协议的其他相关问题

文章目录 昨日内容复习TCP 的四次挥手?TCP 为什么要四次挥手?在客户端处于 FIN_WAIT_2 状态时,如果此时收到了乱序的来自服务端的 FIN 报文,客户端会如何处理?何时进入 TIME_WAIT 状态?TCP 四次挥手丢了怎么…

学习笔记十五——rust柯里化,看不懂 `fn add(x) -> impl Fn(y)` 的同学点进来!

🧠 Rust 柯里化从零讲透:看不懂 fn add(x) -> impl Fn(y) 的同学点进来! 🍔 一、什么是柯里化?先用一个超好懂的生活比喻 假设你在点一个汉堡: 你说:我要点一个鸡腿汉堡! 店员…

深入理解 TCP 协议 | 流量、拥塞及错误控制机制

注:本文为 “TCP 协议” 相关文章合辑。 原文为繁体,注意术语描述差异。 作者在不同的文章中互相引用其不同文章,一并汇总于此。 略作重排,如有内容异常,请看原文。 TCP 三向交握 (Three-way Handshake) 2016-12-21 …

PCL库编译指南

PCL(Point Cloud Library)的编译过程会根据不同操作系统有所差异。以下是详细的编译步骤: Linux/Ubuntu系统编译 1. 安装依赖项 bash sudo apt-get update sudo apt-get install git build-essential linux-libc-dev sudo apt-get install cmake cmake-gui sud…

【Linux】条件变量、基于阻塞队列的生产者消费者模型

📚 博主的专栏 🐧 Linux | 🖥️ C | 📊 数据结构 | 💡C 算法 | 🌐 C 语言 进程是资源分配的基本单位,线程是调度的基本单位,线程是在进程内部运行的(是进程内部…

32-工艺品商城小程序

技术: 基于 B/S 架构 SpringBootMySQLvueelementuiuniapp 环境: Idea mysql maven jdk1.8 node 可修改为其他类型商城 用户端功能 1.系统首页展示轮播图及工艺品列表 2.分类模块:展示产品的分类类型 3.购物车:进行商品多选结算 或者批量管理操作 4.…

SLAM | 激光SLAM中的退化问题

在激光SLAM中,判断退化环境的核心是通过数学建模分析环境特征对位姿估计的约束能力。除了LOAM中提出的退化因子D外,还存在多种基于表达式和阈值设定的方法。以下是几种典型方法及其实现原理: 1. 协方差矩阵特征值分析 原理:通过分析点云协方差矩阵的特征值分布,判断环境中…

【2025最新版】火鸟门户v8.5系统源码+PC、H5、小程序 +数据化大屏插件

一.介绍 火鸟地方门户系统V8.5源码 系统包含4端: PCH5小程序APP 二.搭建环境 系统环境:CentOS、 运行环境:宝塔 Linux 网站环境:Nginx 1.2.22 MySQL 5.6 PHP-7.4 常见插件:fileinfo ; redis 三.测…

PHP腾讯云人脸核身获取NONCE ticket

参考腾讯云官方文档: 人脸核身 获取 NONCE ticket_腾讯云 前提条件,已经成功获取了access token。 获取参考文档: PHP腾讯云人脸核身获取Access Token-CSDN博客 public function getTxFaceNonceTicket($uid) {$access_token file_get_c…

多人3D游戏完整实现方案

以下是一份完整的代码实现方案,涵盖架构设计、核心模块实现和部署流程。我们以 多人3D游戏 为例,结合之前讨论的Nano服务端框架和Unity客户端: 技术栈 模块技术选型服务端Golang + Nano框架 + MongoDB客户端Unity 2022 + C# + Mirror Networking通信协议Protobuf + WebSock…

【Linux我做主】GDB调试工具完全指南

Linux下GDB调试工具完全指南:25个核心命令详解与实战示例 github地址 有梦想的电信狗 前言 GDB(GNU Debugger)是Linux开发中不可或缺的调试工具,尤其在定位代码逻辑错误和内存问题时表现卓越。本文基于实际开发经验&#xff0…

QT中栅格模式探索

1、Qt中选择了栅格模式,如下图所示: 2、在进行整个大的UI界面布局时,需了解每个控件所需要选择的属性sizePolicy。 sizePolicy包含如下几种选择: 3、举个例子:此时整个UI界面,我采用了栅格模式&#xf…

【计算机网络】3数据链路层①

这篇笔记专门讲数据链路层的功能。 2.功能 数据链路层的主要任务是让帧在一段链路上或一个网络中传输。 2.1.封装成帧(组帧) 解决的问题:①帧定界②帧同步③透明传输 实现组帧的方法通常有以下种。 2.1.1.字符计数法 原理:在每个帧开头,用一个定长计数字段来记录该…

[区块链lab2] 构建具备加密功能的Web服务端

实验目标: 掌握区块链中密码技术的工作原理。在基于Flask框架的服务端中实现哈希算法的加密功能。 实验内容: 构建Flash Web服务器,实现哈希算法、非对称加密算法的加密功能。 实验步骤: 哈希算法的应用:创建hash…

蓝桥杯之前缀和

一维前缀 解题思路 看到“区间之和”问题,直接想到“前缀和” 前缀和的核心公式: sum[i]sum[i−1]a[i] 利用前缀和求区间和 [l,r] 的公式: 区间和sum[r]−sum[l−1] 解题步骤模板 输入数组: 读取数组长度 n 和查询次数 m。 读…

【学习笔记】计算机网络(八)—— 音频/视频服务

第8章 互联网上的音频/视频服务 文章目录 第8章 互联网上的音频/视频服务8.1概述8.2 流式存储音频/视频8.2.1 具有元文件的万维网服务器8.2.2 媒体服务器8.2.3 实时流式协议 RTSP 8.3 交互式音频/视频8.3.1 IP 电话概述8.3.2 IP电话所需要的几种应用协议8.3.3 实时运输协议 RTP…

【WRF运行】解决metgrid生成文件太大无内存!

目录 方法:改变工作目录运行 metgrid.exe参考由于我的运行内存过小,当研究区较大时,metgrid生成文件内存太大,导致每次运行都报错,此时可更改工作目录(空余文件夹)以运行 metgrid.exe(并非必须在wrf安装目录下运行!!!)。 metgrid.exe 本身不支持直接通过参数或 nam…

基于 Django 进行 Python 开发

基于 Django 进行 Python 开发涉及多个方面的知识点,以下为你详细介绍: 1. Django 基础 项目与应用创建 借助django-admin startproject project_name来创建新的 Django 项目。利用python manage.py startapp app_name创建新的应用。项目结构 理解项目各文件和目录的作用,像…

【sylar-webserver】8 HOOK模块

文章目录 知识点HOOK实现方式非侵入式hook侵入式hook ⭐⭐⭐ 覆盖系统调用接口获取被全局符号介入机制覆盖的系统调用接口 具体实现C 模板成员函数继承 和 成员函数指针类型匹配 ⭐⭐⭐⭐⭐FdCtx 和 FdManager ⭐⭐判断socket的小技巧FdCtxFdManager connect hook ⭐do_io模板 …

SpringAI+DeepSeek大模型应用开发——1 AI概述

AI领域常用词汇 LLM(LargeLanguage Model,大语言模型) 能理解和生成自然语言的巨型AI模型,通过海量文本训练。例子:GPT-4、Claude、DeepSeek、文心一言、通义干问。 G(Generative)生成式: 根据上…