GAN版馬里奧創(chuàng)作家來(lái)了:一個(gè)樣本即可訓(xùn)練,生成關(guān)卡要素豐富 | 開源
僅需要一個(gè)示例,就可以進(jìn)行訓(xùn)練。
魚羊 發(fā)自 凹非寺
量子位 報(bào)道 | 公眾號(hào) QbitAI
對(duì)超級(jí)馬里奧的關(guān)卡太熟悉,想玩點(diǎn)刺激的?
現(xiàn)在,漢諾威大學(xué)的研究人員推出了一個(gè)新的GAN,能夠生成船新、可玩的超級(jí)馬里奧關(guān)卡。
畫風(fēng)完美統(tǒng)一,難點(diǎn)出其不意:
并且,僅需要一個(gè)示例,就可以進(jìn)行訓(xùn)練。
比起我這樣的馬里奧亂造家,看上去有邏輯多了。
并且,他們已經(jīng)把代碼開源啦。
GAN版馬里奧創(chuàng)作家
在《超級(jí)馬里奧制造2》這款游戲里,玩家可以組合不同的關(guān)卡零件,憑借自己的靈感創(chuàng)作超級(jí)馬里奧關(guān)卡。
事實(shí)上,這只名為TOAD-GAN的AI生成關(guān)卡的邏輯也與之類似。
TOAD-GAN是基于SinGAN架構(gòu)的擴(kuò)展,能夠生成基于token的超級(jí)馬里奧關(guān)卡。
所謂token長(zhǎng)這樣:
通過(guò)使用級(jí)聯(lián)的生成器和判別器,SinGAN可以僅憑單一圖像,訓(xùn)練生成模型。
基于這個(gè)架構(gòu),在訓(xùn)練中,一個(gè)關(guān)卡被采樣為N個(gè)不同的尺寸。
N的選擇標(biāo)準(zhǔn),是生成器和判別器中卷積濾波器的感受野能夠覆蓋最小尺寸下關(guān)卡高度的至少一半。
這樣一來(lái),既可以確保關(guān)卡中較大的結(jié)構(gòu)被正確建模,也能保障其全局位置的變化。
在空間下采樣的過(guò)程中,一些小但重要的結(jié)構(gòu)可能會(huì)丟失。為此,研究人員提出了一種保留重要token的下采樣方法。
具體步驟如下:
首先,在單樣本編碼的訓(xùn)練關(guān)卡上,使用雙線性下采樣來(lái)創(chuàng)建所選尺寸的基礎(chǔ)關(guān)卡。
針對(duì)每個(gè)尺寸中的每個(gè)像素,選擇值大于0的token。并從該列表中,保留層次結(jié)構(gòu)中等級(jí)最高的token,將其余token設(shè)置為0。
然后,在每個(gè)像素的所有通道上應(yīng)用Softmax。
接著,還需要對(duì)較小尺寸的輸出進(jìn)行雙線性上采樣。
這樣,TOAD-GAN就可以通過(guò)將預(yù)定義輸入注入到生成器級(jí)聯(lián)中,來(lái)執(zhí)行關(guān)卡編寫。
研究人員表示,這種應(yīng)用對(duì)于程序內(nèi)容生成而言十分有趣,因?yàn)榻o定token,設(shè)計(jì)者只需指定參考關(guān)卡或布局,生成器就會(huì)自動(dòng)創(chuàng)建其變體,對(duì)數(shù)據(jù)量的要求并不高。
實(shí)驗(yàn)結(jié)果
研究人員對(duì)TOAD-GAN生成的結(jié)果進(jìn)行了定性對(duì)比。
可以看出,與超級(jí)馬里奧的原生關(guān)卡相比,TOAD-GAN生成的關(guān)卡在保留了風(fēng)格的基礎(chǔ)上,產(chǎn)生了不同的元素組合方式。
與此前的其他方法不同的是,TOAD-GAN是一個(gè)生成器對(duì)應(yīng)一個(gè)關(guān)卡。這也就避免了不同類型的關(guān)卡風(fēng)格被混合到一起,造成混亂。
并且,也不會(huì)因?yàn)橐蕾囉谛颖镜膯?wèn)題,而導(dǎo)致(p)中出現(xiàn)的重復(fù)情況。
所以,TOAD-GAN生產(chǎn)成本的游戲關(guān)卡在視覺效果上,更加令人信服。
研究人員還用Baumgarten等人提出的馬里奧通關(guān)AI,驗(yàn)證了生成關(guān)卡的有效性。通關(guān)AI能在65%的隨機(jī)生成關(guān)卡中取勝。在原生關(guān)卡中,其勝率是52%。
不只是超級(jí)馬里奧
其實(shí),不只是超級(jí)馬里奧,研究人員也通過(guò)實(shí)驗(yàn)證明,TOAD-GAN可以生成任何基于token的游戲的關(guān)卡,比如超級(jí)馬里奧賽車。
TOAD-GAN只用原生賽道樣本進(jìn)行訓(xùn)練。
對(duì)布局進(jìn)行種子化處理,就可以保證賽車軌道的連接性和可玩性,還能讓軌道結(jié)構(gòu)與原始樣本產(chǎn)生明顯的不同。
研究人員還表示,下一步他們還會(huì)將游戲機(jī)制揉進(jìn)生成過(guò)程中,并將TOAD-GAN應(yīng)用于Minecraft這樣的像素游戲,或具有非線性關(guān)卡結(jié)構(gòu)的迷宮游戲。
傳送門
論文地址:https://arxiv.org/abs/2008.01531
GitHub項(xiàng)目地址:https://github.com/Mawiszus/TOAD-GAN



