死亡也是可以预测的吗?如果可以预见未来,那么最远能预测多久以后呢?约克大学的研究人员最新研究结果表明,通过AI模型提取游戏角色特征,如当前状态、装备、英雄技能、位置等因素,可在5秒内预测该角色的死亡时间,准确率最高为0.725。
如果能够预知死亡,哪怕只有5秒,你会做什么呢?
近日,约克大学的研究者用AI预测死亡。不过不是人类的死亡,而是Dota 2中英雄的阵亡概率。
论文标题:Time to Die: Death Prediction in Dota 2 using Deep Learning
论文地址:
https://arxiv.org/pdf/1906.03939.pdf
Dota 2由Valve公司发行,是一款5v5在线竞技游戏。每个玩家操控一个英雄,分为敌对双方进行厮杀。终极目标是在对方没有推倒己方塔之前,推倒对方的塔。在推塔过程中,不可避免的会发生击杀对方英雄、或者被对方英雄击杀的情况。
击杀是一个被鼓励的行为,也是观众最愿意看的环节。它体现了一名Dota选手的操控力、判断力以及反应敏捷度。通常不会出现追到天涯海角、不弄死对方不罢休的情况。玩家会根据敌我双方的血量、己方输出和对方承受力、回血速度等进行预判,争取秒杀。
Dota 2平均每场比赛包含80000帧,每个英雄能执行170000个可能的动作;游玩家在每帧上平均会完成10000个动作;玩家可以捡起、购买上百种装备。
成功完成一次击杀,不仅要考虑己方输出值和对方的血量。因为攻击输出是在一定的范围内波动的,针对不同的甲、回血速度、装备的道具等,输出会有不同程度的折扣。
比如一个英雄的回血速度是每秒1点,他刚好装备了一件加速回血的装备,可以将回血速度提升10%,那么就有可能出现本来刚刚好能够秒杀、但由于回血速度加快,导致技能放在对方英雄身上的同时对方回上了一点血,顺利逃脱。
最终,AI面对的是一个超过20000维度的复杂状况。
而AI解决这种复杂问题的方式也很简单粗暴,就是获取尽可能多的数据。研究人员想办法获取了Valve公司12月5日之前5000场职业比赛,以及5000场半职业比赛的replay。
他们的语料库在预处理和误差计算后共包含7311个文件,并通过在4-tick采样周期(对应0.133秒的游戏时间)内记录属性集数值,然后又从语料库中提取数据并转化为时间序列。
基于语料库中的数据,研究者为每个英雄提取了287个特征,比如血量、输出值等。研究人员最终得出结论:时间、玩家当前状态(如血量和护甲)、可激活装备、英雄技能、走位、与最近的敌人和己方防御塔的距离、以及可见性历史是导致玩家死亡的重要因素。其中英雄的相对力量值和特定时间内在地图上的位置,是能否被秒杀的最关键因素。
那么接下来,就是创建一个能够捕获相关数据的特征集。研究者首先从相对力量值和在特定时间内在地图上的位置开始,慢慢构建并完善特征集,最终为每个英雄集齐287个特征的特征集。
下表给出了一些重要特征的详细描述。
可见性,指的是游戏双方均需知道对方的英雄是否在视野内,或者是否在攻击范围内。一旦脱离视野,对方英雄就可能出现在地图的任何位置,所以需要给英雄加上这个特征。
10个英雄共产生2870个输入和5760万个单个数据点,将其相乘后喂给机器学习算法,分别保留10%的数据用于验证和测试,然后开始预测英雄的阵亡概览。
实验表明,预测的时候越短,成功率越高,0-5秒内的平均预测精确度达到了0.5447,预测的时间越往后,精度越低。参看下图:
模型详解
研究者使用具有权重共享的深度前馈神经网络作为模型,输入包含每位英雄的特征。在最大的特征集中,每位英雄具有287个特征,因此10位英雄共有2870个输入;同时具有10个独立的持续输出,对应表每个英雄在未来5秒内死亡的概率。
网络架构
本质上是创建一个子网络,为英雄特性学习一个新的、更密集的表征。连接层附带来自每个共享层的输出,为网络结构的最后一部分(一个全连接网络)创建一个输入张量。每个隐藏层的输出都使用RELU函数,网络的最后一个激活函数是Sigmoid。
特征集
由于游戏复杂度高,研究者不确定该网络是否可以利用所有的特征类别。为了深入了解,研究者创建了三个独立的特征集,并利用三个独立的超参数搜索运行三个训练步骤:
最小的特征集(每个英雄15个特征)只包含当前HP、钱、位置、英雄和塔的距离特征
中等特征集(每个英雄109个特征)包含除了英雄ID和能力特征之外的所有特征
大型特征集包含全部的特征,全部287个特征
训练网络
对于每一个特征集,研究者使用基于随机搜索的探索来确定最佳超参数,用于:层数、每层的神经元数、学习率和批大小。
结果
表现最佳的模型达到了0.5447的平均精度。
但是聪明的新智元读者肯定会问了,5秒时间一眨眼就过去了,这么短的时间内能做什么?够我扼住命运的喉咙让他反转吗?
预测英雄死亡可能对增加游戏的趣味性或者竞技性没什么用,对Dota玩家貌似也没有什么实质的作用。但是对于游戏解说就非常关键了!5秒的提前量已经可以基本不漏掉任何精彩击杀镜头了。
-
算法
+关注
关注
23文章
4601浏览量
92684 -
AI
+关注
关注
87文章
30276浏览量
268508 -
机器学习
+关注
关注
66文章
8382浏览量
132455
原文标题:别推塔了快回城,AI预测你的英雄5秒后就要死了!
文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论