来自雪球æ关注 人VS机器Round Three:小心!你的dota队友,可能不是人来自背景
AI在Dota中的沉沦
日,OpenAI Five 战胜由5位Dota2职业玩家组成的战队(其中三位是Dota2顶级主播,一位前职业选手,一位现役职业选手),他们的匹配等级排名(Match Making Rating, MMR)均在全部游戏玩家的前0.05%之内。
这次比赛的胜利是AI在游戏领域上的一个重大突破。
AI之于游戏早已不是新鲜事,很多游戏都有AI角色的存在,不过最开始的时候,其目的多数是为了模拟一个游戏环境,让玩家较快地熟悉游戏而已。几年前,别说AI能否战胜职业选手,就算你说AI能和业余选手打的有来有回,都可能被沦为笑谈。
OpenAI的出现改变了这一切
OpenAI的首次亮相在2017年Dota2第七届国际邀请赛(TI7)的舞台上,在1v1的Solo比赛中,OpenAI战胜前世界冠军队的Solo选手Dendi,让全场观众哗然。但仍有很多玩家认为,1v1的比赛中,因为游戏元素相比正常的5v5团队比赛少了很多,机器可以通过其高人一等的反应力和准确的操作赢下比赛,很难有说服力。但不可否认的是,人们已经开始越发关注人工智能在游戏领域上的应用了。
一年之后,2018年6月,OpenAI Five在5v5 Dota比赛中战胜业余队,再次震惊整个游戏和AI界。OpenAI证明了在5v5的正常比赛中,AI仍然可以有出色的表现。
而8月5日,AI战胜职业队的消息一公布,OpenAI和人工智能技术再次被推到了议论的中心。
Dota2 & OpenAI
Dota2游戏简介
Dota2的前身Dota是魔兽争霸中的一张RPG(角色扮演类)地图,属于多人在线战术竞技游戏(Multiplayer Online Battle Arena, MOBA)。Dota2分成天辉和夜魇两个阵营,有上、中、下三条主要的作战道路相连接,中间以河道为界。每个阵营分别由五位玩家所扮演的英雄担任守护者,他们将以守护己方远古遗迹并摧毁敌方远古遗迹为使命,通过提升等级、赚取金钱、购买装备和击杀敌方英雄等手段达成胜利。
作为一款大型战术竞技类游戏,Dota2不仅需要玩家对游戏元素(比如英雄技能、物品等)了如指掌,还需要迅捷的反应力,准确快速的操作(俗称:手速)。更进一步,还需要对场上局势有很好的把握,对未知信息的良好预判(俗称:意识),以及优秀的团队协作能力。
正是因为Dota2游戏的复杂程度,OpenAI在5v5正常战斗中战胜职业玩家的意义在AI界才如此重大。
AI应用于游戏的挑战
对本文感兴趣的读者,应该对AlphaGo和AlphaGo Zero有所耳闻,由于围棋的复杂度,AI在围棋领域战胜职业选手震惊了整个世界。本文介绍的OpenAI和AlphaGo Zero作为各自领域的佼佼者,有相同也有不同之处。
不同之处主要源自于它们解决的问题不一样。
围棋是操作规则是静态的,你一手,我一手。一个人不能连续下子,也不能选择不下。而Dota2则是实时的,是连续的,每个英雄在同一时刻有多达170,000种不同的操作可能(英雄的操作可能是移动、攻击、使用技能或物品等,而这些操作又可以作用在英雄自己、或地面、或其他玩家、或建筑上等等),需要不断监测游戏内不同元素的情况,数据维度相当高
围棋问题是完全信息博弈(Full-Information Game),而Dota2则是不完全信息(每位玩家均有视野限制,只能捕捉到视野内的信息,无法知道视野外的情况)
决策数量多,下一盘围棋大约150手,而一盘Dota2 5v5比赛的平均时间为45分钟,考虑到人类玩家的操作和反应速度,游戏帧数大约为30帧/秒,OpenAI每4帧观察一次,平均一场比赛的决策数量高达20,000次
可见,从某种程度上来说,AI征服Dota2的难度可能会比围棋更大。
下图较为生动地展示了这帧画面下OpenAI所需要观测的数据。我们的视角为冥界亚龙(Viper,图中右下角绿色英雄),在当前时刻,OpenAI需要获取Viper视野范围内所有己方或者敌方英雄的信息,主要包括:
属性(生命值、魔法值、攻击力、护甲等)
OpenAI的技术革新
那OpenAI是如何做到的呢?
和AlphaGo Zero类似,OpenAI的核心技术也是强化学习(Reinforcement Learning),对每个英雄建立独立的长短期记忆网络(Long Short-Term Memory,LSTM),并通过自己和自己不断地对战,训练理想的模型参数,快速提升自己。
这种技术赋予了OpenAI强大的“自学能力”,普通的人类Dota2游戏爱好者一天大约会花2-4小时和其他玩家对战,职业选手一天的训练时间大约为10-12小时,而OpenAI在一天之内可以模拟和自己对战相当于180年的游戏训练量。简单来说,机器通过不断的训练,不停的决策,从错误中吸取教训,从而以让人难以置信的速度提升水平。
要知道,在最初的几场比赛中,OpenAI的英雄们只会在地图上“闲逛”,但之后就开始飞速成长,掌握游戏规则,使用技能和物品,甚至打起了战术配合,比如,Gank(有预谋的偷袭击杀)敌方英雄,集合摧毁敌方防御塔等等。
读者可能会好奇,强化学习,LSTM究竟为何物?为什么它们可以赋予AI如此强大的能力,而使得AI可以不断地战胜人类?其奥秘究竟何在?
以下将会以严谨且形象的方式为您解答。
OpenAI内核技术
RNN & LSTM的革新以及LSTM的优势
AI应用的发展必定受益于理论的革新。
传统的前馈神经网络(FNN),所有的测试都是相互独立的。而循环神经网络(RNN)则可以从序列数据中学习,它的优势是除了对当前的输入信息敏感之外,还对之前输入的信息敏感。在Dota2中, 英雄的每个主动技能都有一段冷却时间(Cooldown,CD),也就是说,在释放完某个技能后的一段时间内无法再次释放该技能。如果AI只考虑当前信息,它就无法知道敌方英雄的技能是否处于冷却时间,进而就无法准确判断敌方英雄对自己的潜在威胁有多大(是否能够一套技能连招秒杀自己,或是否能够使用技能配合队友击杀自己等等)。而如果AI更聪明一点,考虑了一段时间的历史信息,那么它就能准确地判断出这类信息,从而做出更为明智的决策。显然, 包含更多信息的循环神经网络,会比前馈神经网络(FNN)更有效。
随着发展,长短期记忆(LSTM)对于传统循环神经网络(RNN)进行了改进。
RNN只能应用于记忆短时间内的信息,如果要依据很久之前出现的信息进行预测,RNN就无能为力了。这里面的原因就是梯度消失。神经网络某一特定层的权重更新,基于该层的输入和前一层的误差,所以特定层的误差项,可以是前面所有层的误差积累,这种形式导致梯度表示为连乘积的形式,以至于梯度消失 - 粗略的说,很多个小于1的数相乘,很快就会趋近零。为了解决这个问题,LSTM出现了。
LSTM的独特架构
RNN的弊端在于,它通过一个函数,转换所有的信息。这就好比一个脑子“一根筋”的人,他不会安排任务的轻重缓急,有任务过来他就照单全收,当他的时间表排满之后,就不能再接受新的任务了;而LSTM则试图模拟一个更加“智能”的人,他会进行取舍,把重要的任务留下,把不那么重要的任务抛弃。假设一方阵营正在推进中路,集中火力攻击敌方的防御塔,“一根筋”的AI正在完成这个攻击防御塔的任务,这时候,敌方英雄从周围杀出,试图击杀本方英雄,从而守护防御塔。通常来说,这时候和敌方阵营拉开架势打一次正面团战是正确的选择,击杀敌方英雄从而赢得推塔时间是首要任务,但“一根筋”的AI不会把先前没有完成的任务抛弃,依然在不知疲倦地攻击敌方防御塔,这可能导致自己阵亡,甚至本方阵营团灭。
事实上,LSTM是通过加法和乘法的控制门对信息进行修改,达到选择性记住事物的目的。一个典型的LSTM结构如下:
这个看似复杂的网络结构,可以拆解为3个门:
忘记门(Forget Gate)
忘记门接受两个输入:前一个单元的隐藏状态ht-1
,和当前时间步的状态输入xt
. Sigmoid函数控制输出的变量取值范围从0到1,从而决定了要保留哪些值和丢弃哪些值(如果输出为0,意味着全部抛弃该信息;如果输出为1,意味着全部保留该信息;如果是一个0到1之间的数,意味着部分保留该信息)。
输入门(Input Gate)
输入门和忘记门非常类似,但多了一个tanh函数过滤器,该函数输出-1到1之间的值,用于生成需要更新的状态向量。将过滤器(sigmoid函数)的值乘以创建的向量(tanh函数),然后通过加法操作将这些有用的信息添加到单元状态。
有了忘记门和输入门,我们便可以将旧的神经元状态Ct-1
更新到新的状态Ct
,达到摒弃不必要信息、保留重要信息的目的:
输出门(Output Gate)
原则上,新的神经元状态Ct
可以直接作为输出,但LSTM会对这个状态进行一定的处理再输出,这主要是因为并非所有沿着单元状态运行的信息都适合在特定时间输出,我们只需要选择有用的信息输出即可。经常玩Dota2的玩家可能都有一个习惯,那就是会不时地选中正在与自己对线的敌方英雄身上,查看他的状态(血量、魔法值、装备等等)。这么做的目的在于能够修正自己的操作(决策),比方说,你忽然发现敌方英雄的血量到了一个可以被你击杀的程度,那么你的操作就应该会是让自己移动到离他较近的位置,从而释放技能击杀他。但对于距离你非常远的敌方英雄,比如你在下路而他在上路,多数情况下你就不会去在意这些数据,因为对你来说,这些信息就是无用的。从当前单元状态中选择有用信息并将其显示为输出的工作是通过输出门完成的。输出门主要分三步,首先是用tanh函数对神经元状态进行压缩,然后仍然是利用sigmoid函数去选择决定保留或抛弃的信息,最后通过乘法把这两步组合起来作为输出。
正是由于LSTM这种具有选择性记忆的机制,OpenAI具备了类似人类一样的“学习能力”,能够在自我对战中快速学习,即使对于dota2这样复杂的策略游戏,也能够短时间内掌握人类选手需要长时间训练才能摸索出来的策略,创造惊人的成绩。
事实上,OpenAI在Dota2上的成功不仅对游戏领域是一个巨大的冲击,其核心技术,强化学习,完全可以借鉴到其他领域,比如数据量同样庞大且决策复杂的金融领域。
就如前文中的例子,OpenAI在Dota2上吸收的数据是距离、血量、物品等游戏元素,如果运用在金融上,或许就是股价、成交量、利率等等。只要有想象力,这样的拓展可以做很多很多。这是机器赋予人类的力量,且看我们如何运用。
随着金融行业也掀起了智能投资的革命浪潮,AI让传统的交易市场走出“人”的局限。机器人进驻华尔街代替交易员,已经折射出了金融行业发展的大势。在未来,也许你难以预计在电脑背后与你交易***的到底是人还是还是机器。
机器不仅仅是一个为人完成的简单繁琐工作的替代品,更多的是作为突破人类大脑的边界的钥匙,为人们成就更多的可能性。相信人与机器的关系,也会从开始的相互对抗,渐渐走向相互拥抱。
8月15日,Dota2第八届国际邀请赛(TI8)主赛事将拉开帷幕,OpenAI将会参赛。不知OpenAI是否会像去年那样再次给观众带来惊喜,我们拭目以待。同时,我们也愈发期待AI在金融领域崭露头角的时刻。
参考资料:
OpenAI Five原理和图片来源:& Dota2介绍来源:Dota2官方网站&&LSTM图片来源:&&&&风险揭示本材料所探讨之投资和策略可能不适合所有投资者且不是弘量研究有限公司(下称“弘量研究”)或其联属机构的义务,也非弘量研究或其联属机构的义务,弘量研究或其联属机构亦不作出担保。弘量研究不就材料内容是否在一切地区均适用,本材料所探讨的交易丶证券丶产品丶工具或服务是否在所有司法管辖区或国家或被所有投资者或交易对手均可供或适合出售或使用作出任何陈述。通过本材料公布信息,弘量研究不就认为任何投资工具可供或适合任何个别使用者使用作出任何陈述。所有进入本材料的人士或实体 均出于自己的意愿并有责任遵守适用的当地法律法规。投资有一定风险且可能贬值。若您正在考虑投资,我们建议您取得独立专业建议并仔细考虑所有相关风险因素。与任何投资相关的单位或股份价格及其收入可能下跌,亦可能上升,而过往表现并非未来表现的指引。AQUMON不保证有关组合的表现。投资有关组合经常涉及投资国际市场。除一般投资风险外,国际投资亦会因货币价值的不利波动,公认会计原则的差异或其他国家的经济或政治局势动荡而承受损失全部或任何部分资金的风险。投资新兴市场亦会增加其他风险,例如波幅上升及交投可能淡静。若有关组合的投资目的是追踪某一指数,有关组合并不由相关指数的供货商赞助丶认可丶发行丶售卖或推广。这些公司亦不会为投资有关基金的适当性做出任何陈述。本材料仅供参考之用,并不能被视为一种预测丶研究或投资建议而加以依赖。尽管有关材料是基于弘量研究认为可靠并尽力确保是现时的信息,弘量研究并不保证有关材料是准确丶现时或完整的,有关材料也不应被视为准确丶现时或完整的而加以依赖。本材料的内容并未考虑任何特定个人或实体的投资目标丶财务状况或财富,且本材料也并未基于此,游说作出任何行动。任何本材料所表达的意见均可能根据随后情况的变化而改变。过往表现不是未来业绩的保证。本材料的信息和服务是以“现状”形式提供且不作任何形式之明示或暗示的保证。在适用法律所允许的最大程度上,弘量研究拒绝一切保证,包括但不限于不就不侵犯第三方权利做出保证以及不就适销性和对某特定用途的适用性作出任何暗示的保证。弘量研究不就本材料所含信息丶文字丶图片丶链接或其他内容的准确及完整性作出任何明示或暗示的保证,不保证本材料的功能不会中断或不会出错,不保证纠正材料缺陷,也不保证材料不含病毒或其他有害成分。弘量研究表明不会就本材料 所载材料的错误和遗漏以及其他人士对本材料所含信息的使用或解释承担任何责任。所有本材料所载的商标丶服务标记丶贸易名称和标志均为弘量研究有限公司(即Magnum Research Limited)或其各自所属者拥有。本材料所含一切内容均不得视为是以暗示丶禁止反言或其他方式授出任何未经弘量研究或其他任何可能拥有本材料所载商标的第三方之书面许可即使用上述商标的许可或权利。除此处规定外,您不得使用本材料所载之商标。游久电竞预告
最近共场比赛
游久电竞APP
看比赛更方便下载就送各种品牌外设
官方动态: |
| 游戏资料: |
| 专题: |
&>>&&>>&>>&探究真相:DOTA中存在风杖吹队友的版本?
探究真相:DOTA中存在风杖吹队友的版本?
[] 10:55:55&作者:风咒 来源:B站
导读DOTA中是否存在【风杖能够吹队友】的版本?..
完美大师赛专题报道:
更多内容:
游久直播一款直播聚合引擎,可获取各平台正在直播的内容,免除寻找的苦恼
回顾2017年比赛完美COMBO
DOTA中是否存在【风杖能够吹队友】的版本?
游久电竞APP二维码
游久电竞专区