當(dāng)我昨天看到OpenAI的人工智能,在一項(xiàng)獎(jiǎng)金2400萬美元的電子競(jìng)技賽事上,擊敗DotA2人類頂級(jí)高手時(shí),整個(gè)人感覺超興奮。
這是因?yàn)?,一方面我是一個(gè)電子競(jìng)技的粉絲。盡管沒玩過DotA 2,但我經(jīng)常在Twitch上觀看其他其他電競(jìng)賽事,高中時(shí)我還當(dāng)過一陣半職業(yè)選手。
更重要是的,像DotA這類多人在線戰(zhàn)術(shù)競(jìng)技游戲(MOBA),以及星際2這類實(shí)時(shí)策略游戲(RTS),通常被認(rèn)為遠(yuǎn)超目前人工智能的駕馭能力。因?yàn)檫@兩類游戲需要長(zhǎng)期戰(zhàn)略決策、多人合作,比國(guó)際象棋、圍棋有著更復(fù)雜的狀態(tài)和動(dòng)作空間。
DeepMind已經(jīng)在星際2上研究了一段時(shí)間,前不久剛剛發(fā)布了新的進(jìn)展,但目前為止,相關(guān)研究還沒有取得重大突破。大家普遍認(rèn)為,距離人工智能在星際2上吊打人類頂級(jí)玩家,至少還有一兩年的時(shí)間。
這就是OpenAI這個(gè)成果如此令人震驚的原因。這是怎么回事?最有有什么人工智能方面的突破是我沒有注意到的么?于是我開始研究這個(gè)DotA 2人工智能到底干了什么,它是如何訓(xùn)練的,以及在什么樣的游戲環(huán)境中運(yùn)行。
我的結(jié)論是:這是一個(gè)令人印象深刻的成就。但不是一次AI上的突破。
通過這篇文章,我想提供一個(gè)關(guān)于此事的清醒解釋。實(shí)際上,過度炒作人工智能的進(jìn)步才是真正危險(xiǎn)的事情。例如,下面這位在推特上的發(fā)言,才是真正的誤導(dǎo)。
這是伊隆·馬斯克的推特,這位硅谷鋼鐵俠不單創(chuàng)辦了特斯拉,而且創(chuàng)辦了OpenAI。上面這篇推特中,馬斯克大意是說:OpenAI搞出了史上首個(gè)擊敗電子競(jìng)技頂級(jí)玩家的人工智能。這比搞國(guó)際象棋和圍棋什么的復(fù)雜多了。
在第二條推特中,馬斯克再次發(fā)表曾被AI屆猛轟的觀點(diǎn):沒人喜歡被管制,但對(duì)公眾構(gòu)成危險(xiǎn)的一切(汽車、飛機(jī)、食品、藥物等)都應(yīng)該受到管制。AI也是一樣。
當(dāng)然,馬斯克還發(fā)了一條,就不翻譯了,貼圖如下
首先要聲明的是,我今天要談及的炒作或者誤導(dǎo),并不是OpenAI研究人員的錯(cuò)誤。OpenAI一直在研究方面都有諸多貢獻(xiàn)。目前,OpenAI還沒有公布他們解決方案的細(xì)節(jié),所以外界很容易就會(huì)得出錯(cuò)誤的結(jié)論。
現(xiàn)在開始切入正題。我們先來看看DotA 2的人工智能程序,到底解決了一個(gè)多困難的問題?尤其是與AlphaGo相比。
1v1不能與5v5相提并論
在正常的DotA 2游戲中,兩個(gè)對(duì)抗的隊(duì)伍各由五名玩家組成。游戲過程中需要高級(jí)策略、團(tuán)隊(duì)溝通和協(xié)調(diào),一局比賽通常要45分鐘。
而這次人工智能擊敗人類的比賽,采用了1v1的模式,這種模式有太多限制。例如雙方基本上只能沿著單線前進(jìn),并嘗試擊殺對(duì)方,游戲過程幾分鐘就結(jié)束了。
在1v1模式中,擊敗對(duì)手主要靠機(jī)械技能和短期策略,并不涉及長(zhǎng)期規(guī)劃和協(xié)調(diào),而后者才是對(duì)當(dāng)前AI技術(shù)來說最具挑戰(zhàn)性的部分。
事實(shí)上,在這次的人機(jī)DotA 2對(duì)抗中,可以采用的有效動(dòng)作數(shù)量,少于圍棋人機(jī)大戰(zhàn);有效的狀態(tài)空間(目前局面情況),如果以智能的方式表示,應(yīng)該比圍棋要小。
AI可以獲取更多信息
OpenAI的人工智能程序,極有可能是構(gòu)建在DotA 2原有的機(jī)器人接口之上,可以獲取更多人類玩家看不到的信息。即使OpenAI的研究人員限制了這些信息的獲取,人工智能仍然能夠得到比人類更精準(zhǔn)的信息。
例如技能的施放,人類玩家必須緊盯屏幕,并且估算與對(duì)手之間的距離。而AI知道確切的距離,并且能立即決定是否施放技能。獲得精準(zhǔn)的數(shù)字信息是一個(gè)很大的優(yōu)勢(shì)。其實(shí)對(duì)戰(zhàn)過程中你就能看到,AI有幾次攻擊都是在最大距離上展開。
反應(yīng)時(shí)間
AI可以立即作出反應(yīng),人類不行。再加上剛才說的信息優(yōu)勢(shì),AI的優(yōu)勢(shì)進(jìn)一步擴(kuò)大了。比方,一旦對(duì)手逃離攻擊范圍,AI可以立刻取消攻擊命令。
使用單一英雄
DotA 2中有上百種不同的英雄角色,各具不同的能力和優(yōu)勢(shì)。而AI掌握的只是其中一個(gè)英雄:Shadow Fiend(影魔)。影魔通常會(huì)立刻展開攻擊,而不是在一段時(shí)間內(nèi)學(xué)習(xí)掌握更復(fù)雜的攻擊技能,這更加有利于發(fā)揮AI在信息和反應(yīng)方面的優(yōu)勢(shì)。
所以,鑒于1v1主要比拼機(jī)械技能,AI擊敗人類玩家并不奇怪。鑒于游戲環(huán)境被嚴(yán)格限制,造成一些列戰(zhàn)術(shù)和策略也被限制,而且對(duì)戰(zhàn)中幾乎沒有必要進(jìn)行長(zhǎng)期規(guī)劃或協(xié)調(diào)。
再次重申我的結(jié)論:這次AI擊敗DotA玩家,比在圍棋中擊敗人類冠軍要容易得多。人類沒有在AI領(lǐng)域突然取得突破。
這次在DotA對(duì)抗中之所以AI獲勝,是因?yàn)檠芯咳藛T聰明的設(shè)置了問題,使得AI可以繞過目前人工智能的技術(shù)限制。
據(jù)說這個(gè)OpenAI訓(xùn)練這個(gè)AI打DotA花了2周。與之相比,AlphaGo在Google的GPU集群上進(jìn)行了數(shù)月的分布式大規(guī)模訓(xùn)練。兩個(gè)程序之間的計(jì)算要求有著數(shù)量級(jí)的區(qū)別。
最后夸夸這個(gè)會(huì)玩DotA的AI,到底有何精彩之處?
完全通過自學(xué)訓(xùn)練
AI不需要任何訓(xùn)練數(shù)據(jù),也不會(huì)從人類的比賽中學(xué)習(xí)。整個(gè)學(xué)習(xí)過程隨機(jī)開始,并且通過和自己對(duì)抗進(jìn)行學(xué)習(xí)。雖然這不是什么新技術(shù),但令人驚訝的是,AI學(xué)會(huì)了人類玩家已經(jīng)在使用的技術(shù)。這很酷。
AI可能還有其他技術(shù),甚至人類都不知道。這與我們?cè)贏lphaGo中看到的類似,圍棋選手已經(jīng)開始學(xué)習(xí)AI的下棋方式。
AI+電競(jìng)的重要一步
在具有挑戰(zhàn)性的環(huán)境中(例如DotA 2和星際2)來測(cè)試AI技術(shù)是非常重要的。AI可以為游戲提供更多的價(jià)值,游戲也會(huì)助推AI更快發(fā)展。
不完美信息
在DotA對(duì)決中,人類玩家智能看到地圖的一小部分,視線受到妨礙。AI可能也一樣,雖然還不清楚OpenAI如何處理這個(gè)問題的細(xì)節(jié)。
這意味著與圍棋、國(guó)際象棋、Atari游戲機(jī)等環(huán)境不同,AI在DotA中處于一個(gè)部分可觀察的環(huán)境,而無法獲知關(guān)于游戲當(dāng)前狀態(tài)的完整信息。這類問題通常難以解決,話雖如此,但目前還不清楚1v1的DotA 2比賽中,視野的重要性到底幾何。
不管怎樣,非常期待看到OpenAI關(guān)于這次比賽的技術(shù)報(bào)告。