百万局对战教AI做人,技术解读FPS游戏中AI如何拟人化

news/2024/10/18 16:51:09/

作者:johnxuan,腾讯 TEG 应用研究员

FPS 游戏 AI 是腾讯 AI Lab 的一大重要研究方向,其拟人化 AI 也在 FPS 手游《穿越火线-枪战王者(CFM)》春节期间上线的全新剧情玩法「电竞传奇」中得到了应用。这些学习了 CFM 职业玩家行为方式的 NPC 引发了游戏圈的热议,甚至一些职业玩家也踏上战场与「自己」枪战了一把。

游戏已经成为了 AI 领域最重要的研究场景之一,国际象棋、围棋、Atari 游戏、《星际争霸》等 RTS 游戏和《王者荣耀》等 MOBA 游戏都被视为 AI 研究之路上的重要里程碑,而且这些里程碑的达成标准往往都是达到或超过人类水平。

但在《穿越火线》和《使命召唤》之类的 FPS 游戏(第一人称射击游戏)中, AI 研究却并不总以超越人类职业玩家水平为目标。毕竟以计算机程序的反应速度和精度,AI 在射击类游戏中达成枪枪爆头也实非难事。真正难的是让 AI 的行为表现与人类玩家不可区分。

AI 拟人化作为研究目标具有非常重要的意义。首先在游戏领域本身,更拟人化的 AI 可以显著提升玩家的游戏体验。对许多玩家来说,势均力敌的战斗之后的胜利才是最快乐满足的。为此 AI 既不能强如开挂,也不能呆若木鸡。试想一下,当你带着走位犀利的自信与一个 NPC(非玩家角色,俗称人机)遭遇而屡屡被一枪爆头时,你一定会产生一股想要摔手机或骂人的冲动。反过来,如果你正想表演一套犀利的操作时却发现 NPC 只是一动不动地站在那里或漫无目标地放空枪,那么就算你击败了它也不会有什么成就感。为了在强弱之间找到一个合理的平衡,需要对 AI 的开火率、命中率、击杀数/死亡数等指标之间进行调整,使之接近对应难度下玩家的水平。

同时在游戏领域之外,FPS 游戏拟人化 AI 也具有非常重要的研究价值。不同于总是通过俯视角进行的棋盘游戏和 MOBA 游戏等游戏类别,FPS 等第一人称游戏往往采用了三维立体的游戏场景,更类似于人类实际所处的真实世界。在这样的环境中训练出的拟人化 AI 更能反映人类在真实环境下的表现,从而可以帮助 AI 理解人类在真实环境中的行为,为以后的实际应用铺路。

FPS 游戏 AI 是腾讯 AI Lab 的一大重要研究方向,此前与清华大学 TSAIL 合作开发的 VizDoom AI 曾获得了该赛事历史上首个中国区冠军的好成绩。拟人化 AI 也在 FPS 手游《穿越火线-枪战王者(CFM)》春节期间上线的全新剧情玩法「电竞传奇」中得到了应用,这些学习了 CFM 职业玩家行为方式的 NPC 引发了游戏圈的热议,甚至一些职业玩家也踏上战场与「自己」枪战了一把。

观看视频:CF 职业玩家阿康对战 AI 阿康

腾讯 AI Lab 如何养成了这样的拟人化游戏 AI?下面我们就来一探究竟。

拟人化 NPC 养成之路

NPC 对游戏的重要性是不言而喻的,传统 NPC 的行为模式大都基于人工编写的规则,即在什么情况下给出怎样的反应都是预先设计好的。这样的 NPC AI 实现起来比较简单,但也让 NPC 的行为表现显得非常单调,玩家一旦摸索熟悉了它们的模式,就能通过「卡 bug」的方式轻松获胜,玩家甚至还能通过预测 NPC 的行为来「调戏」它们——这虽然也算得上游戏的乐趣之一,但这样的 NPC 终究行为单调,很容易让玩家生厌,无法持续获得良好的游戏体验。但同时,如果要通过人工编写规则的方式让 AI 具备拟人化的行为方式,将需要投入大量人力和时间成本才有可能实现,但这样的投入对于游戏行业而言是很不现实的。

近年来兴起的机器学习技术为游戏 AI 开发带来了新的思路:AI 可以通过学习人类玩家的数据来模拟人类玩家的操作,从而让 NPC 展现出更多样、更动态的行为模式。

方法选择

具体来说,腾讯 AI Lab 训练 CFM 游戏 AI 时采用了监督学习方法,即通过分析大量实际的游戏对局脱敏数据,分析人类玩家在不同的游戏场景输入下进行的操作(输出)。通过学习这些输入与输出之间的对应模式,AI 可以学会在不同的场景下以不同的概率采取不同的行为方式——有的行为模式更优,有的则是败笔,但它们综合起来却能让 NPC 表现得就像是另一个人类玩家一样。

由于腾讯 AI Lab 的目标不是打造竞技性 AI,而是拟人化 AI,所以没有必要使用游戏画面为图像的输入,直接接入游戏引擎会更加方便,因为游戏引擎可以提供地图、模式、玩家的操作、属性等关于游戏的全部信息。至于输出,很自然就对应于游戏界面上的各种操作(即动作空间),如下图所示:

动作空间

可以看到,CFM 游戏界面上存在多个可以同时进行的操作,包括左侧的移动和蹲伏操作,右侧的方向调整、开火、跳跃、扔雷等操作;因此,为了更优地同时完成各种任务,腾讯 AI Lab 采用了多任务学习方法。

输出有了,也确定了监督式多任务学习的方法,接下来就需要定义具体的特征,即输入数据中的各种变量。腾讯 AI Lab 将这些特征分成了两大类:属性特征和交互特征。游戏中的活动单元称为 unit(单位)。属性特征是指每个单位的状态,交互特征则用来描述单位之间的相互关系。特别地,单位与游戏中的环境之间的相互关系也归为交互特征。游戏中的掉落物,如敌人被击杀后掉到地上的武器,属于环境的一部分。

状态空间

最后也可能是最难的一步准备工作是确定拟人化的评估指标。不同于以胜负评定优劣的指标,拟人化并不存在单一的量化指标。为了让 AI 具备与人类玩家更相似的行为,腾讯 AI Lab 整合采用了多个维度的指标:

拟人化指标举例

模型学习

准备工作就绪之后,腾讯 AI Lab 首先在 1v1 对战模式验证了该思路的可行性。训练过程使用了几十万真实玩家对局数据(已脱敏),并采用了如下网络结构:

1v1模型结构

所得到的模型在行走、跳跃、开火方面的行为与人类相似,但是在同一环境下的表现总是一样,缺乏多样性。通过采用一种概率分布采样法,让 AI 在相同情况下也有不同的概率选择其它不同的操作,从而解决了这一问题。

1v1 对战模式取得了初步的成果后,战场被转移到 5v5 团战中。相比于 1v1,团战的环境更为复杂。主玩家有 4 个队友和 5 个敌人,涉及到攻击/躲避目标的选择,甚至还有和其它队友的协作。为此,腾讯 AI Lab 增加了队友、敌人特征(血量、位置等),玩家分别和队友、敌人的交互特征(与目标距离、视角角度等),期望模型可以学习到游戏数据中的真人操作。

模型的训练采用了上百万局训练数据(已脱敏),并使用了以下经过改进的网络结构:

5v5模型结构

可以看到,相比于 1v1 模型,5v5 模型增加了用于选择敌人的模块,该模块还添加了历史信息,使 NPC 能更加适当地应对当前的状况,比如重点关注当前视野内的敌人、在受到视野外敌人的攻击时会转身对敌。

模仿职业玩家的 NPC

在「电竞传奇」玩法中,你能看到一些 CFM 职业玩家的名字,比如国宝、蛮蛮、阿康,但当然你的对手自然不是真正的国宝、蛮蛮、阿康,而是学习了这些职业玩家玩法的 NPC。

不同于上面训练 1v1 和 5v5 模型使用了数十万乃至上百万局游戏脱敏数据,蛮蛮的替身 AI 只用到了几局数据。

首先,腾讯 AI Lab 分析了这几局数据中蛮蛮的行为特点,比如点位分布:

蛮蛮的点位分布,这是分属两边阵营时的情况

由于数据较少,腾讯 AI Lab 还从已有数据中选取了类似行为模式的数据而对其进行了扩充,使得扩充后的数据模式与蛮蛮的相似。然后再基于这些数据训练得到了「AI 蛮蛮」,下面是 AI 蛮蛮的实战表现:

观看视频:CFM 职业玩家蛮蛮对战 AI 蛮蛮

实战评价

在实战测评中,我们在体验服上组织核心玩家群体进行了“行为测试”,新 AI 在射击水平、走位、躲避等多样化的行为等纬度为玩家带来了惊喜,AI的综合行为表现击穿了玩家对于传统FPS机器人的刻板印象,带来的实际体验远超玩家预期。

2020 年春节,以新AI表现为基石,推出的全新的剧情玩法「电竞传奇」首日用户渗透率、首日留存创近两年新高。AI 国宝、AI 蛮蛮等话题也在 CF 手游社区成了热门讨论话题。

总结

CFM 的拟人化 NPC 虽然备受好评,但还远不够完美,不管是在训练方法还是指标选取上都有进一步的优化空间。另外,腾讯 AI Lab 也在探索能否在《使命召唤》等大型开放式地图中训练出拟人化 FPS 游戏 AI,这种 AI 不仅需要学会刚枪,还要学会观察地图地形、跑图、合理搭配装配、使用载具以及进行攻击或躲藏的策略等。也许未来带你猥琐发育、“狗”「吃鸡」的队友就是一个看起来与人类玩家别无二致的 AI。

今日直播预告《健康码背后,腾讯慧眼高可用架构设计》

腾讯“防疫健康码”于2月9日率先落地深圳后,一个月累计访问量破60亿。而民众申领健康码过程中的“人脸识别登录验证”,有着高准确率的要求。在如此大流量高准确率的要求下,腾讯慧眼高可用架构是如何设计的呢?架构如何分层?如何容灾兜底?如何提升引擎准确率?引擎中台在其中扮演着怎样的角色?

云+社区沙龙online将在4月23日晚上8点直播,为您揭晓答案!

点击图片进入直播间


http://www.ppmy.cn/news/533545.html

相关文章

贪婪算法简介-数据结构和算法教程

贪婪算法是一种算法范例,它遵循在每个阶段进行局部最优选择的问题求解启发式,希望找到全局最优值。换句话说,贪婪算法在每一步都选择最好的可能选项,而不考虑该选择对未来步骤的影响。 当一个问题可以被划分成更小的子问题&#…

6月12gta5服务器维护,gta520176月11日这会更新什么了 | 手游网游页游攻略大全

发布时间:2016-02-29 CF2016年8月11日对服务器进行例行维护.这次维护大家会感觉没什么可更新的呀.来看看99单机小编熊卜卜的CF8月11日服务器维护更新公告 修复火线币商城bug哈. 亲爱的穿越火线玩家: 为了进一步稳定服务质量,提高游 ... 标签: 游戏资讯 攻…

CF手游明日迎来重大更新:生化模式升级,新地图新武器登场

穿越火线手游生化:终极战场什么时候更新?继体验服之后,穿越火线:枪战王者手游终于将在7月5日也就是明天迎来重大更新!不仅有全新模式的生化3.0,还有新地图、新角色、新武器、全新收藏系统等也将同步上线。 …

CF手游转系统服务器繁忙,《CF手游》账号数据转移要求说明 跨系统角色转移卡什么数据不可转移...

CF手游跨系统角色转移卡哪些数据不可转移?在CF的游戏中,最近官方上线了一款新的道具,那就是跨系统角色转移卡,能帮助玩家实现ios和安卓设备的数据转移,接下来小编就为大家详细的介绍一下跨系统角色转移卡使的用规则说明…

cfm在哪些应用服务器可执行,CF手游体验服12月8日暂时关闭服务器公告

CF手游体验服一直为大家提供游戏版本体验,让各位CFer可以提前玩到游戏最新版本,为后续正式服更新优化提供宝贵经验。近期官方透露于12月8日开始暂时关闭进入CF手游体验服,预计会在2019年1月份重新开启进入。 CF手游体验服于12月8日开始暂时关…

cf12月9日服务器维护时间,CF手游12月9日版本周年庆版本更新公告 周年庆新版本即将上线...

CF手游在12月9日将会进行公测周年庆的更新,玩家们期待了好久的公测周年庆会更新哪些内容,下面一起来了解下本次CF手游周年庆新版本更新了哪些内容吧! 游戏将于12月9日进行更新,解释更新即可领取200钻石公测纪念M4A1-S(7天)公测纪念…

穿越火线枪战王者服务器维护,CF手游体验服6.10更新维护公告 六月版本来袭

亲爱的各位CFers, 为了增加体验服内容的丰富性和版本的稳定性,我们在6月7日开始对“枪战王者体验服”进行停机更新,停机期间无法更新,需要开放后才能进行更新。 目前版本已更新完毕,老版本无法正常更新的玩家请前往CF手…

cf体验服_CF体验服v9.4.5客户端下载_CF体验服v9.4.5下载-游戏下载

游戏介绍 《CF体验服》是为测试最新游戏内容而开放的服务器,在新测试版本v9.4.5中,游戏加入很多新内容,包括提升角色等级上线,每日任务抽奖,增加新模式、新武器、新地图、新活动等等,玩家可以使用赠送的点卷…