问耕 发自 麦蒿寺
量子位 出品
王者峡谷,风云突变。
一场激烈的对战正在进行,左侧是五位人类职业电竞高手组成的赛区联队,另一方是……嗯?他们的对手没有出场?五个座椅空空荡荡?
不。他们的对手都在。
这是昨晚的吉隆坡,王者荣耀最高规格电竞赛事——世界冠军杯半决赛正在进行,期间有一场特殊的对决上演:五位电竞职业选手组成的赛区联队,对阵腾讯王者荣耀AI绝悟。
最终这场5v5的大战中,思路与人类迥异的AI战队耗时16分15秒,团灭电竞职业高手战队,推掉全部9塔和高地水晶。
这意味着,腾讯AI绝悟的能力,已经精进到王者荣耀电竞职业水平。
当然,对非职业玩家更是砍瓜切菜。
同日上海的ChinaJoy,绝悟向顶级业余玩家开放为期四天的1v1体验测试。首日的504场测试中,绝悟测试胜率为99.8%,仅输1场(对方为王者荣耀国服第一后羿)。
首次击败电竞职业队
这场比赛,五位电竞职业高手组成赛区联队。他们选择的阵容是:曹操(ESTARPRO.XIXI)、娜可露露(EMC.SUN)、武则天(NOVA.SEEK)、狄仁杰(KZ.NIGHT)、张飞(M8HEXA.MIKE)。
腾讯AI绝悟(Wukong)选择的阵容是:达摩(AI_001)、雅典娜(AI_011)、王昭君(AI_100)、虞姬(AI_000)、牛魔(AI_010)。
比赛开始,人类战队的水晶在左下角。
开局时,绝悟没选择传统人类对线走位策略,而是先放掉上路,由双C位英雄虞姬和王昭君先一起清理中路第一波兵线,压制敌方中辅。之后又转上路压制曹操血线。
这种分配,没有经济倾斜。两人吃线,经济收益最大化,每个人都能获得80%。现场解说表示,AI对中路抢线权理解的很透彻。
开局2分钟,绝悟率先推掉了赛区联队的上路1塔,扩大经济优势到5.1k:4.3k。开局2分半,赛区联队曹操击杀绝悟AI虞姬拿下一血,双方经济打平同为6.4k。
4分24秒,绝悟四人追击娜可露露,达摩一脚将娜可露露反踢入AI中群殴,最终达摩拿下AI首个人头。
这段时间,绝悟的雅典娜单带,而另外四个AI一直抱团。7分20秒,雅典娜反蓝成功,此时绝悟拿下3塔4人头20.9k经济,赛区联队拿下2塔3人头19.7k经济。
现场解说认为绝悟的效率和团队协作方面,都表现出色。“在4-1转线方面,几乎是做得完美。”
双方随即进入一段激烈交锋的阶段。
8分48秒,绝悟一波团战0换2,并在全员残血的情况下,主动追杀赛区联队血量健康的曹操。不过绝悟也损失了血量最少的达摩,1换1。接着绝悟顺势开主宰。随后复活的赛区联队玩家赶来,团灭了绝悟战队,并拔掉中路2塔、反蓝成功。
现场解说指出,AI的策略是“不想回家,打到弹尽粮绝。”这种方法,让带线效率更高。
9分48秒,绝悟拿下5塔8人头28.2k经济,赛区联队拿下4塔8人头28.9k经济。
又一分钟之后,绝悟连续拿下4个人头。其中包括10分25秒,赛区联队曹操在上路被残血的AI虞姬反杀。展现出绝悟1v1时良好的即时策略能力。
又一分钟,绝悟推掉赛区联队中路高地塔。然而,赛区联队曹操绕后,紧接着来了一拨反打,收掉绝悟四个人头,AI战队仅剩雅典娜脱逃。
但,赛区联队这一时间没能继续推塔,也没有拿下主宰。
14分钟,反让绝悟击杀主宰。此时,绝悟拿下7塔13人头45.1k经济,赛区联队拿下6塔12人头43.3k经济。接着,绝悟开始不断的清理各路兵线,
15分20秒,绝悟四人上路抱团,在主宰先锋的支持下,强开高地塔。双方爆发激烈团战,在AI王昭君和牛魔大招的加持下,绝悟最终打出一波1换5,赛区联队团灭。
然而~对手团灭+两条主宰先锋上高地的情况下,绝悟却没有选择直接推水晶,而是秀了一波操作……
绝悟四人,以轮流抗塔的方式,无兵线支持,推掉了还有三分之二血量的最后一座高地塔。现场解说高声喊:“太绝了。”
16分15秒,绝悟推掉水晶,战胜赛区联队。
最终,绝悟拿下9塔18人头56.2k经济,赛区联队6塔13人头48.0k经济。
双方的出装和数据如下:
问答绝悟团队
在这次历史性的对抗之后,量子位与绝悟团队进行了更进一步的交流。
量子位:这次绝悟的对手情况如何?
腾讯绝悟:5v5对战时最高规格电竞赛事——世界冠军杯半决赛的特设环节,是中国大陆/中国香港/韩国/马来西亚地区选手组成的赛区联队。世冠杯特别环节的水平测试,是5v5版本首次达到职业水平。
1v1版本的研发难度显著低于5v5版本。ChinaJoy上测试的是1v1版本,为首次公开对外测试,面向的是顶级业余玩家,AI总体实力十分强劲。
量子位:绝悟现在掌握多少英雄?BP也是自己完成么?
腾讯绝悟:5v5版本是此次固定的十个英雄,职业选手可以自由出装。未来希望能不断扩大英雄池规模。
量子位:绝悟的操作手速被限制在什么水平上?
腾讯绝悟:设定为跟人类极限手速类似,因为游戏本身普攻和技能都有攻速限制,因此总体是一个相对公平的测试。
量子位:绝悟此次训练了多久?投入了怎样的计算资源?
腾讯绝悟:训练使用384块GPU,8.5w核CPU,平均每天自对战局数相当于人类训练440年的量,训练周期持续训练半个月以上。
量子位:比赛过程中,绝悟需要怎样的网络和计算资源支持?
腾讯绝悟:网络解码不需要太大资源,正常服务器即可。1v1版本已经有手机版本,目前在ChinaJoy对顶尖选手开放测试。
量子位:绝悟有什么弱点?有什么还没玩家被解决的问题?
腾讯绝悟:有些我们不会称为弱点,但很有意思的行为。
比如在此次测试中,最后不推水晶,要奖励最大化?赛事尾声,人类赛区联队团灭后,绝悟并未直接推水晶,而是在计算整体收益后,选择先推完最后一个高地塔,再推水晶直至胜利。这是人类一般不会做的事情,但这符合 AI 的价值观设定,就是最大化经济效益。
量子位:人类对手,尤其是职业玩家怎么评价绝悟?
腾讯绝悟:前期策略上,很早就多个 AI 抱团,甚至愿意牺牲兵线,换取血量优势;中期超强的兵线运营策略;长期策略是一直保持游戏主动权;团战的目标选择和控制衔接也很完美,体现了很强的团队协作能力。
量子位:团队介绍一下吧。
腾讯绝悟:是长期致力于游戏AI和多智能体研究的团队,部分成员来自围棋AI绝艺的团队。
绝悟的研发是算法+算力高度结合,需要极致优化的算力平台和持续改进的优化算法,团队综合了AI Lab的科研与工程人才资源,还联合了我们所在的腾讯技术与工程事业部(TEG)旗下基础架构平台部人才。主要工作包括模型、特征、算力、数据的优化,机器虚拟化、搭建和优化数据处理、并行计算和机器学习训练的平台。
腾讯AI Lab一直是此类智能体研究的先行者。2016年起,研发的围棋AI绝艺(Fine Art),现担任中国国家围棋队训练专用AI;2017年,启动绝悟研发;2018 年,绝悟达到业余顶尖水平,腾讯还在射击类顶级 AI 竞赛VizDoom夺冠,并在《星际争霸2》首先研发出击败内置AI的智能体。
量子位:普通人怎么能和绝悟交手?
腾讯绝悟:目前绝悟只是实验阶段,没有在游戏内开放。
1v1版本在特定场合会做非常短期的测试,比如8月2日起在上海举办的国际数码互动娱乐展览会ChinaJoy,1v1版本会向顶级业余玩家开放为期四天的体验测试。
绝悟之路
绝悟,是腾讯AI Lab和与王者荣耀共同探索的前沿研究项目:策略协作型AI。
绝悟这个名字,寓意“绝佳领悟力”。这个AI的研发始于2017年12月。2018年12月,绝悟5v5对阵《王者荣耀》王者段位人类玩家,大战250局,拿下48%的胜率。现在,绝悟已经超越王者段位水准,达到职业电竞选手的层次。
这次在吉隆坡和上海发威的绝悟版本,建立了基于“观察-行动-奖励”的深度强化学习模型,无需人类数据,从白板学习(Tabula Rasa)开始,让AI自己与自己对战。
AI一天的训练强度高达人类440年。
据腾讯介绍,AI从0到1摸索成功经验,勤学苦练,既学会了如何站位、打野、辅助保护和躲避伤害等游戏常识。而且,AI还探索出了不同于人类常规做法的全新策略。在上面的对战实况中,我们已经可以感受到绝悟的不同之处。
绝悟的研发团队还创建One Model模型提升训练效率,优化通信效率提升AI的团队协作能力,使用零和奖惩机制让AI能最大化团队利益,使其打法果断,有舍有得。
游戏中测试的难点,是AI要在不完全信息、高度复杂度的情况作出复杂快速的决策。
在庞大且信息不完备的地图上,10位参与者要在策略规划、英雄选择、技能应用、路径探索及团队协作上面临大量、不间断、即时的选择,这带来了极为复杂的局面,预计有高达1020000种操作可能性,而整个宇宙原子总数也只是1080。
如果AI能在如此复杂的环境中,学会人一样实时感知、分析、理解、推理、决策到行动,就可能在多变、复杂的真实环境中发挥更大作用。
腾讯副总裁姚星表示,“电子竞技”将成为策略协作型AI“绝悟”未来短期内的主要应用场景。而长期应用上,绝悟将是腾讯攻克通用人工智能(AGI)的关键一步。
此前,腾讯另一个AI绝艺,在围棋赛场上大杀四方。当然对人工智能来说,王者荣耀是一个比围棋复杂太多的难题。
绝悟背后的技术
对于这次的绝悟,腾讯AI Lab表示将通过论文等形式进一步分享技术细节,通过开放研究,帮助和启发更多研究者。
在这我们回顾一下腾讯此前发布了一篇关于王者荣耀的论文。在这篇论文中,腾讯表示绝悟是一个基于学习的分层宏观策略(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)。
One More Thing
最后,视频对战全程如下,对战从3分55秒开始:
— 完 —