约克大学利用AI预测Dota 2比赛中5秒内会死亡的角色,模型已开源
2019年06月14日 由 明知不问 发表
376075
0
如果可以通过持续的人工智能研究获得洞察力,那么许多曾经被认为是不可知的事件实际上可以以相对较高的准确度进行预测。
约克大学的研究人员发表了一篇论文“Time to Die: Death Prediction in Dota 2 using Deep Learning”描述了一个能够可靠地预测Dota 2玩家角色在5秒内将死亡的系统。
Dota 2是Dota的后续版本,这是暴雪公司为魔兽争霸3创建的一个社区mod,由5名玩家组成的两组,每组占据并保卫一个基地,试图摧毁地图两端的建筑。玩家拥有独特的能力,收集经验点和物品来解锁新的攻击和防御动作。
它比听起来要复杂得多。平均匹配包含8万个单独的帧,在此期间每个角色可以执行无数个可能的操作。棋盘上的玩家每帧平均完成10000次移动,从而使游戏的总体尺寸超过20000。
训练算法
血量等并不总是与死亡密切相关。这是因为一些角色具有治疗能力,并且因为玩家可以购买游戏中的物品来治疗它们或将它们传送远离危险。
考虑到这一点,该团队采购了Valve提供的公共Dota 2重播文件,这些文件来自最近的5000个专业(主要锦标赛)和5000个半专业(小型锦标赛和联赛)赛事。经过预处理和错误计算,语料库总共有7311个文件,他们从这些数据中提取数据,并通过记录带有4个滴答采样周期(相当于游戏时间的0.133秒)的属性集值,将其转换为时间序列。
根据这些数据,该团队为每个玩家角色提取了287个特征,其中一些是游戏对象属性的值,如英雄健康状况。导致玩家死亡的最重要因素包括时间,玩家的当前状态(力量和敏捷性),可激活物品,英雄能力,英雄位置,距离最近的敌人和盟友塔的距离以及能见度历史等,而相对强度和特定时间在当前地图位置位居榜首。
“这些行为确实取决于过去,例如,如果敌人刚刚消失,玩家仍然知道敌人在该区域。另一方面,如果敌人在几分钟前消失,那么从玩家的角度来看,敌人可能在任何地方。这就是我们添加可视性历史特性的动机。”
他们将训练数据输入机器学习算法,包括2870个输入和5760万个人数据点(287个特征乘以10个玩家的乘积),保留10%的数据用于验证,另外10%用于测试。
测试结果
在实验过程中,研究小组发现,当提示预测任何一支团队的10名队员中的哪一名将在5秒内死亡时,它的平均精确度为0.5447,精确度为0.377,最高为0.725。此外,该模型可以在指定的5秒窗口之前预测死亡,这表明它了解了构成死亡特征的固有属性。
这种方法有一定的局限性,即系统需要超过200个游戏数据点(包括那些看不见的玩家)进行预测,并且它可能无法很好地推广到较新的游戏版本。
研究人员表示,“电子竞技游戏非常复杂,包括快速移动的动作,游戏的平衡可以在几秒钟内改变,同时事件可以在比赛场地的多个区域发生。评论员和观众很容易错过一个事件,只观察事件的后续影响,在Dota 2中,被对方队员杀死的英雄是评论员和观众感兴趣的关键事件。”
开源:
github.com/adam-katona/dota2_death_prediction
论文:
arxiv.org/pdf/1906.03939.pdf