接上篇内容,小智发现内容非常受游戏开发者们的欢迎,今天给大家带来方案(二)内容,没看过第一篇的伙伴可以戳以下链接查看~~码住!
游戏AI智能体模仿学习技术方案(附方案详情),沉浸式玩家体验秘诀,看《梦三国2》游戏AI智能体!-CSDN博客
进入正文部分:
近几年,全世界都见证了大模型和 AIGC 技术的爆发式增长,游戏行业也在全面拥抱 AI 。从游戏研发到游戏发行、运营的各个环节,AI 技术在游戏行业的落地应用逐步走向大众的视野,亦为游戏体验带来革命性颠覆。
《梦三国2》大家应该都不会陌生,它是杭州电魂网络科技股份有限公司自主研发并推出的一款融合了实时战略(RTS)元素的角色扮演游戏(RPG),该游戏自 2015 年 3 月 26 日起正式投入运营。早在 2021 年,《梦三国2》凭借其卓越的游戏品质和广泛的玩家基础,入选为第 19 届亚洲运动会的电子竞技比赛项目,标志着其在电子竞技领域的重要地位和影响力。
接下来,我们谈谈为什么要在《梦三国2》加入 AI 智能体?
在游戏领域中,AI 智能体扮演着至关重要的角色,它们不仅仅是技术的展现,更是提升游戏玩家体验的关键因素。
对于新手玩家而言,相对于传统的行为树机器人,AI 智能体以其卓越的技巧和协作能力,能够更有效地帮助玩家快速提升游戏水平。无论是作为并肩作战的强力伙伴还是充满挑战的对手,它都能为玩家带来前所未有的游戏体验,极大地增加了游戏的多元性和挑战性。
在保证游戏公平竞技方面,AI 智能体同样发挥着不可或缺的作用。它们能够填补玩家数量的不足,确保每场比赛的公平性,同时根据玩家的实力水平匹配相应难度的 AI,增强了游戏的竞争性和公正性。此外,AI 智能体还能优化冷门时段的匹配体验,通过智能填充,缩短玩家在玩家数量较少时段的匹配时间,为玩家提供更加流畅和愉快的游戏体验。
在日常生活中,玩儿游戏时,相信在座的游戏人都希望自己可以把把赢,如果遇到“逆风局”,五连败会造成很差的游戏体验,对于经历连败的玩家,AI 智能体的引入同样具有积极意义。它们不仅能够提升连败玩家的游戏体验,还能有效提升用户留存率,确保每位玩家都能在游戏中找到属于自己的乐趣和成就感。
可见,AI 智能体的价值在于它们不仅提升了游戏的技术层面,更在玩家体验和游戏社区的建设上发挥了重要作用。而模仿学习技术对 AI 智能体有着关键作用,通过模仿学习技术,AI 智能体可以学习从人类行为中获取知识和技能,并将其应用到不同的情境中。
模仿学习技术通过精准捕捉并解析真人玩家的游戏操作,赋予 AI 模型以高度的拟人化特性。这一过程主要依赖于对线上高水平玩家比赛录像的深入分析,从中提取关键的游戏状态和相应的动作决策。在这里,"状态"描绘了玩家所处的游戏环境和当前游戏状态的描述,而"动作"则记录了玩家在该状态下的具体操作。通过游戏的标准化接口,我们能够捕获这些数据,进而训练出能够模拟人类玩家行为的 AI,提升游戏的互动性和真实感。
前段时间,美国 GDC 大会的机器学习峰会上,网易数智游戏行业部 CTO 陶建容的精彩分享《为“街球全明星”训练高拟人和高强度的篮球 AI 智能体》中,也为游戏开发者展示了 AI 智能体从设计、训练到实际部署的完整过程,并向全球游戏开发者展示了如何将游戏 AI 技术成功应用于实际场景。
游戏 AI 智能体解决方案已经完整落地在网易游戏中,大规模预训练模型, 深度强化学习,深度模仿学习等技术开发的智能竞技机器人,带来更加真实的游戏体验,助力提升游戏品质。立即查看详情或✉V:LTT936,立马详细咨询~:
游戏AI竞技机器人 - 网易智企大规模预训练模型, 深度强化学习,深度模仿学习等技术开发的智能竞技机器人,为游戏玩家带来更加真实的游戏体验,助力提升游戏品质https://grow.163.com/solution/combat-robot?from=csdn_yxzy_0422
今天,小智带大家从游戏 AI 算法专家李浩的视角,跟大家以《梦三国2》AI 智能体模仿学习技术方案角度切入,从数据集构建流程、状态动作定义、游戏场景定义、意图定义、数据分析、模型训练、模型部署、效果评估这 8 大方面来向大家详细介绍《梦三国2》AI 智能体模仿学习技术方案,一起谈谈 AI 技术是怎么为游戏行业创新和变革赋能,换言之,来看看游戏公司们如何为陪玩 AI 注入“灵魂”。
(👇全文长约 8000 字,阅读大约需要 15 分钟)
01 02部分内容详见👇
游戏AI智能体模仿学习技术方案(附方案详情),沉浸式玩家体验秘诀,看《梦三国2》游戏AI智能体!-CSDN博客
03
游戏场景定义
游戏场景(scene)实现了对数据集进行具体场景的归类,通过标记主英雄的重要动作节点赋予操作的目的性。具体而言,按照动作优先级排序,可以将游戏场景分为以下五大类:
1、推塔/守塔
我方英雄和己方小兵处于敌方防御塔一定范围内即定义为推塔;我方英雄位于我方防御塔内且该范围内同时存在敌方小兵/英雄时为守塔;我方英雄位于我方基地 3200 范围内且该范围内同时存在敌方小兵/英雄时为守基地;我方英雄和己方小兵处于敌方基地 3200 范围内即定义为推基地。
2、对抗
只要敌我英雄距离过近,我们就认为发生对抗。对抗按照参与人数进一步划分为solo、gank /被 gank、小型团战和大型团战;如果我方至少参战两位英雄,且敌方只有一位英雄,这时定义 gank,被 gank 同理;如果双方均至少参与两位英雄且有一方不足四人,我们认为是发生了一场小型团战;如果交战双方均参与四人及以上,我们认为是发生了大型团战;如果是一对一,定义为 solo。
3、清线发育
如果我方英雄绕过防御塔提前清掉兵线,那么划分为断线,其他情况下清线则为正常发育。
4、野区发育
主英雄在攻击野怪被划分为打野发育。
如果攻击目标为我方野怪,划分为打自家野;如果攻击目标为敌方野怪,划分为反野;如果攻击目标为中立 Boss,划分为打 Boss。
5、寻路
以上所有事件如果均未发生,那么统一标为寻路环节。
为了进一步对数据集进行更细致的划分,根据下一个游戏场景的变动,将寻路拆分为以下游戏场景:
去推塔/去守塔;
去 solo /去 gank /去小型团战/去大型团战;
去清线/去断线;
去打野/去反野/去打 Boss;
去泡泉水/泡泉水(泉水恢复/泉水购物);
去野外购物/去插眼/去排眼/去控符/死亡等。
04
意图定义
前面我们定义了详细的场景,首先对于一局比赛,找到符合场景的帧,如上图中 T1 泡泉水、T3 清线等(图中的 T1、T2 不代表连续帧,仅用于示例),那么有个这些有场景定义的帧之后,就可以对一局进行场景划分,对于两个场景帧中的剩余帧,定义为"去"下一个场景,如 T2 帧没有找到符合的场景,由于 T3 为清线,那么 T2 定义为去清线。经过上述操作后,每帧都会赋予一个场景的定义。
在每一帧都有场景定义之后我们再来构建 scene intent,分为 global scene、global intent、local scene 和 local intent,其中 scene 表示的意图(干什么)信息,intent 表示的是位置(在哪里干)信息。
local scene, 假设当前帧为非寻路场景,即不包含“去xxx”,那么该帧local scene 为当前场景一致,比如当前帧为泡泉水,那么 local scene 也为泡泉水。如当前帧为寻路场景,那么该帧 local scene 为最近的下一个非寻路场景,如当前场景为 T2 去清线,那么 local scene 为清线。
local intent,假设当前帧为非寻路场景,即不包含“去xxx”,那么该帧 local intent 为当前场景结束所对应的位置,把小地图映射为 544x544 的二维矩阵,然后把该位置映射到二维矩阵上,然后把 544x544 的矩阵 pool 成 16x16 的矩阵,位置在 16x16 矩阵中的 index 作为 local intent,比如当前帧为泡泉水,那么 local intent 也为T1泡泉水结束对应位置。如当前帧为寻路场景,那么该帧 local intent 为最近的下一个非寻路场景开始的位置,如当前场景为 T2 去清线,那么 local intent 为 T3 清线开始对应的位置。
global scene,定义为当前帧往后找,直到下一个非寻路场景作为当前帧的global scene,如上图中 T1 的场景为泡泉水,往后找,可能经过多个泡泉水帧,直到找到 T3 帧为清线场景,那么 T1 帧的 global scene 为清线。
global intent,假设当前帧为非寻路场景,即不包含“去xxx”,那么该帧 global intent 为下一个非寻路场景开始所对应的位置,同理映射到 16x16 的矩阵中,对应的 index 作为 global intent,比如当前帧为泡泉水,那么 global intent 也为 T3 清线开始位置。如当前帧为寻路场景,那么该帧global intent 为最近的下一个非寻路场景结束的位置,如当前场景为 T2 去清线,那么 global intent 为 T3 清线场景结束对应的位置。
current scene,代表玩家的当前帧状态下所处的场景。
以上的五个定义也会作为我们在训练模型时候的五个辅助任务,帮助我们的模型更好的学习和掌握真人玩家数据中的宏观策略。
在完成 scene intent 的定义之后,我们构建了一个 render,一方面可以校验我们的一些基础数据是否合理,也可以观察我们构建的辅助任务 scene intent 是否合理。
render 由四张子图构成,分别表示全局地图、主英雄视角(局部地图)、local intent 位置和 global intent 位置示意图。
第一个为 544*544 的全局地图,显示游戏内基本信息。蓝色阴影是游戏内地形;红蓝双方建筑处对应颜色的矩形表示塔;大圆形(有黑线描边)表示英雄,主英雄填充色为绿色,其他英雄填充对应阵容的颜色(红/蓝);小圆形(无黑线描边)表示小兵,填充对应阵容的颜色(红/蓝);橙色三角形表示野怪。
第二个是以主英雄为视角中心的小地图,维度是 36*36。在小地图里面不仅包含了全局地图在该区域显示的所有信息,还额外加入了其他与战斗有关的数据。在该区域内的英雄和小兵会按照百分比血量填充颜色表示当前帧的状态,主英雄在攻击时会有黑色箭头指向对应单位,其中紫色框表示第六部分中介绍的 current intent 位置。
第三个、第四个图同样为 544*544 的全局地图,其中紫色方框表示第六部分介绍的 local intent 和 global intent 的位置。同时在对应图片上还会显示current scene、local scene 和 global scene。
完整文章内容,请先关注小智,下期分享~
游戏 AI 智能体解决方案已经完整落地在网易游戏中,大规模预训练模型, 深度强化学习,深度模仿学习等技术开发的智能竞技机器人,带来更加真实的游戏体验,助力提升游戏品质。立即查看详情或✉V:LTT936,立马详细咨询~:
游戏AI竞技机器人 - 网易智企
—— END——
今天先聊到这里,看到这里的游戏人,期待下次为大家分享更多游戏行业洞察!
我来自网易~ 是你最得力的游戏行业战略家,也是最硬核的游戏技术布道师,一起让技术发光~ 欢迎各位游戏人一起探讨交流~
tips:《游戏 AI 实践指南》免费领取方式——评论区留言【指南】或 ✉V:LTT936,立即get√