觀看5萬(wàn)個(gè)游戲視頻后,英偉達(dá)AI學(xué)會(huì)了自己開(kāi)發(fā)「吃豆人」
今天是吃豆人40歲生日
曉查 發(fā)自 凹非寺
量子位 報(bào)道 | 公眾號(hào) QbitAI
AI學(xué)會(huì)玩游戲已經(jīng)不是什么新鮮事了,無(wú)論是星際爭(zhēng)霸還是王者榮耀,AI的水平都已經(jīng)超過(guò)了頂級(jí)選手。
現(xiàn)在,AI不僅能玩游戲,還學(xué)會(huì)了造游戲。
在觀看了5萬(wàn)個(gè)的吃豆人(Pac-Man)游戲視頻后,英偉達(dá)的AI終于自己“山寨”了一個(gè),而且事先沒(méi)有看過(guò)一行原始游戲代碼。
來(lái)自英偉達(dá)的研究人員說(shuō):通過(guò)觀察細(xì)節(jié),AI學(xué)會(huì)了規(guī)則。
這些細(xì)節(jié)包括:吃豆人的速度、移動(dòng)能力;四個(gè)鬼魂的運(yùn)動(dòng)方式;吃豆人吃下大力丸會(huì)怎樣;當(dāng)鬼魂碰到吃豆人時(shí),會(huì)發(fā)生什么。
知道這些細(xì)節(jié)后,AI完成了逆向工程,從中悟出了游戲邏輯,有模有樣地仿制出來(lái):
英偉達(dá)這個(gè)逆向游戲的AI叫GameGAN,顧名思義,就是用來(lái)生成游戲的GAN。GAN之前的用途主要是生成圖片。
5月22日是吃豆人這款游戲的40歲生日,英偉達(dá)在這一天推出GameGAN,是和吃豆人的游戲開(kāi)發(fā)商萬(wàn)代南夢(mèng)宮合作的紀(jì)念活動(dòng)。
GameGAN制造的游戲,連萬(wàn)代南夢(mèng)宮工程師堤光一郎看到后都大吃一驚:“很難想象這是在沒(méi)有游戲引擎的情況下重新創(chuàng)造出吃豆人。”
不知道這位游戲開(kāi)發(fā)者會(huì)不會(huì)有某一天被AI替代的恐懼。
英偉達(dá)是如何做到的
GameGAN在訓(xùn)練過(guò)程中會(huì)讀取游戲畫(huà)面和鍵盤(pán)操作,通過(guò)限制操作(如玩家按下的按鈕)來(lái)預(yù)測(cè)下一幀。它直接利用圖像和動(dòng)作對(duì)進(jìn)行學(xué)習(xí),而無(wú)需訪問(wèn)底層的邏輯或引擎。
解碼器要學(xué)習(xí)如何解開(kāi)幀中的靜態(tài)和動(dòng)態(tài)分量,從而使GameGAN的行為更易于解釋。
要做到這一點(diǎn),研究人員需要克服巨大的設(shè)計(jì)挑戰(zhàn),要讓模擬物理引擎并保持長(zhǎng)期一致性(保證模擬場(chǎng)景不隨事件編號(hào)),還必須確保GameGAN在創(chuàng)建游戲過(guò)程中模擬的可預(yù)測(cè)性與隨機(jī)性(在一定規(guī)則內(nèi)設(shè)計(jì)出不同關(guān)卡)。
GameGAN由3個(gè)部分組成:記憶模塊,動(dòng)力學(xué)引擎和渲染引擎。
動(dòng)力學(xué)引擎負(fù)責(zé)了解在游戲環(huán)境中哪些行為是“不允許的”(比如吃豆人無(wú)法穿墻而過(guò)),并負(fù)責(zé)對(duì)行為結(jié)果的反應(yīng)方式進(jìn)行建模。
內(nèi)存模塊負(fù)責(zé)建立長(zhǎng)期一致性,讓模擬場(chǎng)景不會(huì)隨時(shí)間而變化,這部分是通過(guò)“記住”每個(gè)生成的場(chǎng)景來(lái)實(shí)現(xiàn)的。
渲染引擎負(fù)責(zé)渲染給定對(duì)象和屬性貼圖的模擬圖像,并通過(guò)遮擋對(duì)象自動(dòng)考慮深度。
GameGAN是生成對(duì)抗網(wǎng)絡(luò),當(dāng)然也會(huì)有生成器和鑒別器,在這套模型中,系統(tǒng)嘗試“欺騙”鑒別器來(lái)生成逼真的、連貫的游戲。鑒別器有三個(gè):?jiǎn)螆D像鑒別器,行動(dòng)條件鑒別器和時(shí)間鑒別器。
訓(xùn)練GameGAN的游戲數(shù)據(jù)由萬(wàn)代南夢(mèng)宮提供,包括5萬(wàn)個(gè)游戲視頻,總共有幾百萬(wàn)幀。為了訓(xùn)練AI,英偉達(dá)的研究人員動(dòng)用了4臺(tái)DGX系統(tǒng),每臺(tái)均配備了Quadro GV100工作站級(jí)GPU。
英偉達(dá)并未透露訓(xùn)練時(shí)間,但是可以預(yù)測(cè)訓(xùn)練費(fèi)用一定不菲。
訓(xùn)練AI的硬件
Nvidia的最新實(shí)驗(yàn)以類似的方式開(kāi)始,因?yàn)槠銩I研究團(tuán)隊(duì)在50,000小時(shí)的“ 吃豆人”游戲中訓(xùn)練了四臺(tái)計(jì)算機(jī)場(chǎng)(每臺(tái)計(jì)算機(jī)均配備了Quadro GV100工作站級(jí)GPU)。
在實(shí)驗(yàn)中,Nvidia團(tuán)隊(duì)在四天內(nèi)為GameGAN提供了50,000集(共幾百萬(wàn)幀)的《吃豆人》
不僅僅是吃豆人
除了吃豆人外,英偉達(dá)還在Doom的基礎(chǔ)上開(kāi)發(fā)出了另一款《毀滅戰(zhàn)士》。
比吃豆人負(fù)責(zé)的是,毀滅戰(zhàn)士是一款3D游戲,GameAI還需要處理游戲前景和背景的遮擋關(guān)系。
當(dāng)然,無(wú)論是吃豆人還是毀滅戰(zhàn)士,英偉達(dá)GameGAN生成的畫(huà)面都比較粗糙。研究人員承認(rèn)現(xiàn)有模型存在著保真度問(wèn)題。GameGAN生成的吃豆人游戲最大可達(dá)到128×128像素的分辨率,每秒約50幀。
但是這項(xiàng)技術(shù)有希望幫助游戲開(kāi)發(fā)者加快開(kāi)發(fā)新關(guān)卡、角色甚至代替部分游戲的創(chuàng)作過(guò)程。
對(duì)于一些用戶可以自定義的游戲,比如《超級(jí)馬里奧創(chuàng)造家》,AI是不是可以幫我們?cè)O(shè)計(jì)一下關(guān)卡呢?
傳送門(mén)
論文地址:
https://cdn.arstechnica.net/wp-content/uploads/2020/05/Nvidia_GameGAN_Research.pdf
項(xiàng)目主頁(yè):
https://nv-tlabs.github.io/gameGAN/
- 腦機(jī)接口走向現(xiàn)實(shí),11張PPT看懂中國(guó)腦機(jī)接口產(chǎn)業(yè)現(xiàn)狀|量子位智庫(kù)2021-08-10
- 張朝陽(yáng)開(kāi)課手推E=mc2,李永樂(lè)現(xiàn)場(chǎng)狂做筆記2022-03-11
- 阿里數(shù)學(xué)競(jìng)賽可以報(bào)名了!獎(jiǎng)金增加到400萬(wàn)元,題目面向大眾公開(kāi)征集2022-03-14
- 英偉達(dá)遭黑客最后通牒:今天必須開(kāi)源GPU驅(qū)動(dòng),否則公布1TB機(jī)密數(shù)據(jù)2022-03-05