王者峡谷可能马上要被AI支配了!
腾讯刚刚发布的一篇论文显示,王者荣耀AI在不声不响间,又掌握了新的技能:组团开黑。而且战绩不俗。
5个各自独立的王者荣耀AI学会开黑技能后,5v5对阵《王者荣耀》王者段位人类玩家,大战250局,一举拿下48%的胜率,几乎可算战成平手。
不得了。
上个月,王者荣耀体验服开启了困难等级的人机练习模式测试,据说机器人只有铂金段位的水平,然而已经让一票大牛觉得不好打。
现在王者段位水准的AI已经出现了,就问你怕了没。
王者荣耀AI难在哪里
腾讯去年就隐隐约约的透露在搞王者荣耀AI。
有时说得“明目张胆”,有时又显得有点“遮遮掩掩”。去年,腾讯高管就曾透露下围棋的绝艺,正在尝试学打王者荣耀。
在最新披露的论文里,腾讯表示虽然AlphaGo已经是AI里程碑,但下围棋与现实世界相比,仍然是一个非常简单的问题。
更复杂的问题是实时战略(RTS)游戏,而其中最受欢迎的分支是MOBA游戏,包括Dota、英雄联盟以及王者荣耀等等。
一局王者荣耀平均时长20分钟,大约相当于2万帧。
围棋一局通常不超过361手。
在每一帧画面中,玩家需要在数十个选项中作出决定,包括有24个方向的移动键,以及一些技能键,有的技能键还有方向。及时经过大幅简化和离散化,以及把响应时间增加到200ms,动作空间的数量级仍有101500。
而围棋的动作空间约为10250。
至于状态空间,王者荣耀地图的分辨率是130000×130000像素,每个英雄的大小是1000像素。在每一帧,每个英雄都有不同的状态,如血量、等级、经济等等。即便经过大幅简化,状态空间仍有1020000。
总结如下表,两个字:复杂。
王者局5v5开黑战绩亮眼
即便这么复杂,腾讯还是取得了突破。
来看看AI是怎么打农药的。
先看看开局,这是最重要的阶段之一。下面的四张注意力分布图,这些代表着AI学会的不同开局策略。四张图从左到右,分别是:貂蝉(法师)、韩信(刺客)、亚瑟(坦克)和后裔(射手)。
可以看到,AI貂蝉在开局阶段重点关注中路外塔,AI韩信关注本方上路野区蓝Buff,AI亚瑟和AI后裔关注本方下路野区红Buff。没有列入的第五个英雄AI宫本武藏,会去守卫本方上路的外塔。
这就是一个王者荣耀的常见开局。
随着游戏的推进,AI对走位的注意力也会逐渐发生变化。通过下面这个图表可以看到,随着时间的推移,AI各个英雄之间的走位也会越来越近。
这种分工联动是这次王者荣耀AI最大的提升之处。
说结果。升级之后的王者荣耀AI,为了验证自己的实力,开始找人类练手。五个AI组队开黑,与人类玩家5v5大战250局。最后,AI战队的胜率达到了48%。
这些玩家都是王者段位,属于人类玩家中Top 1%那一部分。
腾讯在论文中表示,AI战队取得的人头数,比人类战队少15%;而在推塔、团战率和经济获取方面,与人类战队相当。
在开局前10分钟,AI战队比人类战队要多推掉2.5个塔。10分钟之后,由于团战能力较弱,双方的推塔数量逐渐接近。这个特点被腾讯归纳为:AI在宏观战略的制订方面,已经接近甚至优于人类高手。
王者AI背后的算法
AI逼平人类王者,靠的是什么手段?
答案是,一个基于学习的分层宏观策略(Hierarchical Macro Strategy)模型。经过这个模型的熏陶,控制每个英雄的智能体就既能独立做出决策又不忘与队友沟通,成为顶尖选手。
名字里的“分层”,指的是这个模型分为注意力层(Attention Layer)和时期层(Phase layer),前者用来预测英雄该去哪儿,后者负责识别游戏进行到了什么阶段,是前期、对线还是后期。
我们先看注意力层,也就是AI怎样判断它的英雄该去哪儿。
培养这项能力,首先要有合适的训练数据,而在王者荣耀里,想判断英雄“到了这儿”,最合适的标准莫过于“在这儿打起来了”。
于是,腾讯在标注训练数据时,把下一次攻击发生的地点,定为英雄现在该去的地点。
比如说上图就以韩信为例,展示了游戏开局时英雄该往哪走。其中左侧显示的是游戏在初始阶段s-1时的状态,中间和右侧红框标出的ys、ys+1显示的是韩信进行第一、二次攻击的位置,也就是他在s-1、s两个阶段该去的位置。
AI的目标,就是学会在s-1阶段该准备去y位置,在s阶段该去ys+1位置。
用这样的数据训练注意力层,就能让AI掌握英雄移动的奥义。
知道了该去哪还不够,要想上王者,还得会判断局势,调整策略。这就是时期层的工作了。
想知道游戏进行到了前期、对线期还是后期,只靠时间当然不够。好在游戏里主要资源的状况和阶段密不可分。比如说,如果英雄还在以推外塔打暴君(小龙)为目标,那游戏一定刚刚开局;如果打到了敌方家里,那当然是后期了。
所以,教AI判断局势,根据的也是对敌方主要资源的打击状况,包括塔、暴君、主宰(大龙)和水晶(base)。
上图显示的就是时期层关注的敌方主要资源,模型要从中学会的,是根据资源状况来判断现在该打击什么主要资源了,并进一步判断要完成哪些小目标。
比如下图显示的偷蓝buff(野怪)、清下路兵线,就都是推一塔这个时期的小目标。
能分析局势、确定目标,还知道该往哪儿走,剩下的就是队友之间的沟通配合问题了。
不过要学沟通,真的没什么人类对战的数据能拿来训练。
于是,腾讯设计了一种全新的跨智能体沟通机制,用队友的注意力标签来训练AI,让它学会预测队友要往哪走,并据此做出决策。
就这样,一支队伍中的5个智能体就可以协作了,也算是一种“沟通”机制吧。腾讯称之为模仿跨智能体沟通(Imitated Crossagents Communication)。
论文
这篇论文名为:Hierarchical Macro Strategy Model for MOBA Game AI地址:https://arxiv.org/abs/1812.07887v1作者:Bin Wu、Qiang Fu、Jing Liang、Peng Qu、Xiaoqian Li、Liang Wang、Wei Liu、Wei Yang、Yongsheng Liu,来自腾讯AI实验室。
关于第一作者Bin Wu,量子位查了一下,他现在是腾讯AI实验室的高级研究员,也是王者荣耀AI算法设计和开发的技术负责人。
此前,他还还是腾讯一个量化交易项目的核心成员,负责机器学习算法的设计和开发。这个团队搞的模型,已经获取了70%的净收益,2017年在A股市场的回报率为5%。
公开的资料显示,Bin Wu于2016年12月加入腾讯至今。此前,他曾在百度供职一年,负责Duer相关的项目。
2011年,Bin Wu本科毕业于上海交大,2015年在香港科技大学获得博士学位。
好了,王者荣耀AI的故事就讲到这里。