基于大型语言模型的游戏智能体

news2024/11/19 22:50:35

在人工智能领域,游戏代理的发展对于实现通用人工智能(AGI)至关重要。近年来,大型语言模型(LLMs)及其多模态版本(MLLMs)的进展为游戏代理的进化和能力提升提供了前所未有的机遇。这些模型不仅在自然语言理解(NLU)和生成式人工智能(Gen-AI)方面取得了重要里程碑,还使得游戏代理能够在复杂的计算机游戏环境中展现出类似人类的决策能力。

LLM驱动的游戏代理(LLMGA)的统一架构包含六个基本功能组件:感知(Perception)、记忆(Memory)、思考(Thinking)、角色扮演(Role-playing)、行动(Action)和学习(Learning)。这一架构旨在为构建和评估各种LLMGA提供一个统一的参考框架。

Figure 1 中的架构图通过展示这些模块之间的数据流和交互,说明了LLMGA如何在游戏中实现复杂的决策和行动。通过这种设计,LLMGA不仅能够处理复杂的游戏环境,还能够展现出适应性、学习和长期记忆等高级认知能力。

  1. 感知(Perception):感知模块被设计为游戏代理的“感官器官”,它的作用是接收来自游戏环境的多模态输入,包括文本、图像、声音和触觉信号等。这一模块的核心任务是捕捉游戏状态的关键信息,这些信息对于代理理解其所处环境并做出决策至关重要。例如,在文本游戏中,感知模块可能仅依赖于文本输入来理解玩家的指令和游戏的叙述;而在视频游戏中,感知模块可能需要集成视觉编码器来将视觉信息转换为文本描述,或者利用多模态LLMs来直接理解视觉输入。无论哪种方式,感知模块都必须高效且稳健,以确保代理能够准确获取游戏状态信息。

  2. 记忆(Memory):记忆模块在代理中扮演着至关重要的角色,它存储了代理的过去经验,包括观察结果、思考过程、行动以及技能,这些记忆对于策略的制定和决策至关重要。论文中将记忆分为三种类型:情景记忆、语义记忆和程序记忆。情景记忆存储了代理通过感知模块获得的观察流和游戏轨迹;语义记忆代表了代理对自身和游戏世界的理解;程序记忆则存储了代理通过经验学到的技能和策略。为了有效地使用这些记忆,代理需要一个检索系统,该系统可以根据当前的上下文和任务需求来筛选和提取最相关的记忆。记忆模块的设计模仿了人类的记忆机制,包括工作记忆和长期记忆,其中工作记忆存储当前上下文,而长期记忆存储过去的经验和知识。

  3. 角色扮演(Role-playing):角色扮演模块允许代理在游戏中扮演特定的角色,并根据这些角色的特征和目标展现出可信的行为。这一模块对于增强游戏的沉浸感和互动性至关重要,尤其是在那些具有角色扮演元素的游戏中。角色扮演不仅可以提升代理行为的丰富性、个性化和熟练度,还可以使代理生成包含情感信息的对话,使其行为更加真实可信。为了实现角色扮演,最简单的方法是将角色的身份描述,如性格特征、爱好、职业和社交关系等,作为初始记忆插入代理中。通过提供少量的对话示例或微调,可以进一步提高代理在会话任务中的角色扮演表现。一些更先进的方法,如CharacterLLM,通过构建角色的虚拟经历并用这些经历对LLM进行微调,使代理能够展现一致的性格并表达情感。

  4. 思考(Thinking):思考模块是LLMGA中的核心部分,它负责处理和分析由感知模块收集到的信息。这个模块的核心功能是基于推理、规划和反思来生成深入的思考,为代理的决策提供支持。推理过程涉及使用演绎、归纳和假设推理来概括观察结果、得出结论和推断解释。规划则涉及将复杂任务分解为更简单、可执行的子任务集,以实现长期和复杂目标。反思可以被视为一种特殊的推理,通常在收到先前尝试的反馈后发生,涉及代理分析自己的行为、决策和思考过程,并考虑如何根据收到的反馈进行改进。这种反思过程允许代理调整和完善其策略和行为,随着时间的推移促进学习和成长。

  5. 行动(Action):行动模块充当代理的“手”,它将思考模块产生的文本决策转化为可执行的游戏内行动。这个模块允许代理与游戏环境进行有效交互和操作,如移动角色、选择选项或与游戏对象进行交互。在需要精细控制的游戏中,行动模块可能需要将高级行动转换为低级行动,例如,将“砍番茄”的高级行动转换为寻找最短路径到目标、执行“砍”动作的一系列低级行动。在没有操纵控制的游戏中,行动模块可能只需要从一组给定的行动中选择,或者生成逐字的行动描述。

  6. 学习(Learning):学习模块是LLMGA持续进步的动力。它通过代理与游戏环境的互动和积累的经验来不断提升代理的认知和游戏能力。LLMGA通过在环境中的互动学习,这与人类通过与物理世界的互动获得知识的方式类似。学习可以通过多种方式进行,包括上下文反馈学习、监督式微调和强化学习。上下文反馈学习涉及将环境反馈纳入上下文,使LLM能够迭代地“加强”策略生成而无需更新权重。监督式微调涉及收集高质量的经验来微调LLM,基于这样的经验包含了环境知识。强化学习涉及训练LLM以根据从环境中接收到的奖励信号来改进其策略。通过这些学习方式,LLMGA能够逐渐适应并提高其在各种游戏环境中的表现。

LLMGA在多种类型的游戏中得到应用,每种游戏类型都提出了独特的技术挑战,并要求开发相应的优化策略来应对这些挑战。

冒险游戏中,故事是推动游戏进展的核心。在这类游戏中,玩家扮演主角,通过探索虚拟环境、解决谜题和与游戏世界中的人物及对象互动来推进故事情节。例如,像《Zork》这样的经典文本冒险游戏,玩家通过输入文本命令与环境互动,而像《Red Dead Redemption 2》这样的3D动作冒险游戏,则提供了更为丰富的视觉和交互体验。在冒险游戏中,LLMGA需要能够理解和回应复杂的叙事结构,以及生成连贯和有吸引力的故事情节。

通信游戏侧重于玩家之间的交流和互动,这类游戏通常涉及到沟通、谈判、推理甚至欺骗。例如,《Werewolf》和《Diplomacy》等游戏要求玩家通过语言交流来推断其他玩家的意图,并隐藏自己的策略。在这些游戏中,LLMGA需要具备高级的自然语言处理能力,以理解和生成符合游戏目标的对话。

竞争游戏考验玩家的技能和策略。在这类游戏中,玩家通常面对的是具有挑战性的对手,需要运用高级的推理和规划能力来取得胜利。例如,《StarCraft II》和《Pokémon Battles》等游戏中,LLMGA需要能够进行快速决策,制定战术,并适应不断变化的游戏环境。

合作游戏则强调团队合作和协作解决问题。在这类游戏中,玩家需要共同努力以达成共同目标。例如,在《Overcooked》这样的游戏中,玩家需要协同工作,以最快的速度准备和提供菜肴。LLMGA在合作游戏中需要能够理解和协调其他玩家的行动,并有效地分配任务。

模拟游戏提供了复制现实世界事件的环境,允许玩家体验和管理各种场景,如建设文明或体验另一种生活。例如,《The Sims》和《Civilization》等游戏要求玩家进行长期规划和管理,以确保他们管理的社会或文明的繁荣发展。在模拟游戏中,LLMGA需要能够处理复杂的模拟环境,并做出符合长期目标的决策。

制作与探索游戏提供了广阔的开放世界,玩家可以收集资源、制作物品并探索未知。例如,《Minecraft》和《Crafter》等游戏鼓励玩家发挥创造力和探索精神。在这些游戏中,LLMGA需要能够自主地探索环境,生成目标,并规划收集资源和制作物品的行动。

随着大型语言模型(LLM)技术的飞速发展,LLM驱动的游戏代理(LLMGA)在未来的研究和应用中展现出巨大的潜力。未来的探索将集中在以下几个核心方向:LLM的进一步环境融合,通过增强模型对物理世界影响的理解,将使得代理能够生成更符合实际的行动策略;知识发现的深化,通过游戏代理的互动体验,挖掘游戏机制背后的深层原理和因果关系,推动代理向更高层次的认知能力迈进;复杂人类交互的模拟,通过构建更精细的社会交互模型,促进代理在社交场景中的自然行为表现,为人工智能在更广泛领域的应用打下基础。

随着LLMGA在复杂环境中的决策能力不断提升,它们将能够更好地服务于人类,无论是在娱乐、教育还是专业领域。随着技术的不断成熟,我们期待LLMGA在未来能够展现出更加丰富、自然且富有创造性的智能行为,成为人类在数字世界中的得力伙伴。

论文地址:https://arxiv.org/abs/2404.02039

GitHub 地址:https://github.com/git-disl/awesome-LLM-game-agent-papers

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

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

相关文章

Django自定义模板标签与过滤器

title: Django自定义模板标签与过滤器 date: 2024/5/17 18:00:02 updated: 2024/5/17 18:00:02 categories: 后端开发 tags: Django模版自定义标签过滤器开发模板语法Python后端前端集成Web组件 Django模板系统基础 1. Django模板语言概述 Django模板语言(DTL&…

Elasticsearch 分析器的高级用法二(停用词,拼音搜索)

Elasticsearch 分析器的高级用法二(停用词,拼音搜索) 停用词简介停用词分词过滤器自定义停用词分词过滤器内置分析器的停用词过滤器注意,有一个细节 拼音搜索安装使用相关配置 停用词 简介 停用词是指,在被分词后的词…

巨亏22亿还能上市?瑞幸为何越亏越值钱?剖析资本破局的商业思维

瑞幸咖啡 18个月登上纳斯达克 13个月退市 19个月,粉单市场股价再次翻了8倍 这个技术性“上市”无常的产品是谁? 其实现在这个笑贫不笑娼的社会 如果我说:我们公司上市了,悲催又退市了。我朋友会说:工资没降吧?…

信创数据库有哪些?哪家好?堡垒机支持吗?

当今时代,数据已经成为了企业最宝贵的资产,因此数据库厂商也是不断增加。这不不少小伙伴在问,信创数据库有哪些?哪家好?堡垒机支持吗? 信创数据库有哪些? 1、达梦数据库 2、openGauss 3、人大…

Mac Pro中的开源虚拟机UTM安装ubuntu(Applce M1,M2芯片)(1)

UTM安装ubuntu(Applce M1,M2芯片)(2)链接: https://blog.csdn.net/qq_38382925/article/details/139158763?spm1001.2014.3001.5502 MacPro安装UTM 1 UTM 下载UTM虚拟机链接: https://mac.getutm.app/ 建议官网下载: 下载 U…

Codesys软件做EtherNET/IP主站与HT3S-EIS-MDN网关通讯步骤

Codesys软件做EtherNET/IP主站与HT3S-EIS-MDN网关通讯步骤 打开codesys软件,新建项目,选择标准项目进入界面后选择CODESYS Control Win v3 x64 ,点击确定。 3.在桌面找到显示隐藏图标,找到如下图所示图标,右击在弹出…

查看bond接口详细信息

cat /proc/net/bonding/bondX 命令用于查看 Linux 系统中的网络绑定(bonding)接口的详细信息。在该命令中,bondX 是网络绑定接口的名称,其中 X 是数字,表示具体的网络绑定接口编号。 输出内容详解: 1. E…

java面试框架篇(Spring常见问题、SpringBoot、SpringMVC、mybatis经典问题、SpringCloud组件)

文章目录 面试专题-java框架篇1. spring常见问题1.1. spring是什么?1.2. 谈谈你对AOP的理解1.3. 谈谈你对IOC的理解1.4. Spring Boot、 Spring MVC和Spring有什么区别1.5. spring bean 生命周期1.6. spring事务传播机制有哪些?1.7. 循环依赖1.8. spring框架中使用了哪些设计模…

并网逆变器学习笔记9---VSG控制

参考文献:《新型电力系统主动构网机理与技术路径》 “构网技术一般包含下垂控制,功率同步控制,虚拟同步机控制,直接功率控制,虚拟振荡器控制 等。其中,虚拟同步机技术,即 VSG,因其物…

webgl开发家居设计软件

WebGL是一种在网页浏览器中渲染3D图形的JavaScript API,它基于OpenGL ES标准,允许开发者创建和显示交互式的3D图形。开发基于WebGL的家居设计软件可以为用户提供一种全新的、沉浸式的家居设计体验。以下是开发此类软件的一些关键步骤和特点。北京木奇移动…

【问题记录】QT“类型强制转换“:无法从“ATL::CString“转换为“LPCWSTR“

一,问题现象 环境:VS2019QT 报错提示:“类型强制转换”:无法从"ATL::CString"转换为"LPCWSTR" 二,解决方法 打开项目属性,设置字符集,如下所示:

某勾求职网逆向分析

搜索目标: aHR0cHM6Ly93d3cubGFnb3UuY29tL3duL2pvYnM/cG49MSZweD1kZWZhdWx0JmZyb21TZWFyY2g9dHJ1ZSZrZD0lRTYlOTUlQjAlRTYlOEQlQUUlRTUlODglODYlRTYlOUUlOTA= 抓包分析 请求和返回都是加密的 请求头部也有未知参数 跟栈分析 请求和返回是一个AES加密,加密的KEY是session s…

ruoyi前端获取用户信息

vue中获取当前用户信息 :头像,用户名,id,权限,token等 // 获取当前用户信息 用户名等var user this.$store.state.user;console.log("用户信息####", user);

DLRover:蚂蚁集团开源的AI训练革命

在当前的深度学习领域,大规模训练作业面临着一系列挑战。首先,硬件故障或软件错误导致的停机时间会严重影响训练效率和进度。其次,传统的检查点机制在大规模训练中效率低下,耗时长且容易降低训练的有效时间。资源管理的复杂性也给…

Nginx(负载均衡,反向代理)

1.什么是nginx Nginx(“engine x”)是一个高性能的HTTP和反向代理服务器,特点是占有内存少,**并发**能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用Nginx网站用户有&#…

Codeforces Round 943 (Div. 3)

欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击。 Codeforces Round 943 (Div. 3) 题解 题目列表:https://codeforces.com/contest/1968 A https://codeforces.com/contest/1968/problem/A 题目大意 给…

【教学类-58-01】黑白三角拼图01(2*2宫格)256种

背景需求: 中班益智区素材:三角形变魔术 - 小红书自制益智区教玩具:三角形变魔术,共24题 玩法一:根据图示在空白格子里摆放。 玩法二:根据图示在空白格子里用黑笔涂。##自制玩具益智区 #幼儿园益智区 #中班…

Color预设颜色测试

"AliceBlue", "获取 ARGB 值为 的系统 #FFF0F8FF定义颜色。", "AntiqueWhite", "获取 ARGB 值为 的系统 #FFFAEBD7定义颜色。", "Aqua", "获取 ARGB 值为 的系统 #FF00FFFF定义颜色。", "Aquamarine"…

.NET File Upload

VS2022 .NET8 &#x1f4be;基础上传示例 view {ViewData["Title"] "File Upload"; }<h1>ViewData["Title"]</h1><form method"post" enctype"multipart/form-data" action"/Home/UploadFile"…

MacOS/Linux系统多Java环境切换

通常我们在进行Java项目开发时&#xff0c;会安装不同版本的JDK&#xff0c;那么这个时候又需要根据项目来使用不同的Java版本&#xff0c;那么怎么来切换昵 第一步&#xff1a; 首先找出系统中安装的所有版本的路径 /usr/libexec/java_home -V这里可以看出安装了三个java 版…