別的AI還在打遊戲,這個AI已經當上「超級馬里奧」遊戲策划了
來自專欄量子位38 人贊了文章
郭一璞 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
AI打遊戲已經不是什麼新鮮事了,「沉迷」Dota 2、星際爭霸、LOL的AI一個接一個的出現。
但是你也許不知道,相比這些「遊戲玩家」AI,還有一位優秀的AI,直接當起了「遊戲策劃」,做的還是膾炙人口的「超級馬里奧」。
超級馬里奧:無限關卡
這位「策劃大大」誕生在由一個六位研究者組成的團隊中,成員來自多特蒙德大學、美國西南大學、倫敦大學瑪麗皇后學院、加利福尼亞大學及哥本哈根IT大學,它能用生成對抗網路(GAN)自動「設計」海量的超級馬里奧關卡。
並且,這個超級馬里奧關卡策劃AI還能充分保證新關卡的可玩性,讓每個關卡在開始的時候都相對簡單,而後逐漸增加難度,保證玩家「沉迷遊戲,無法自拔」。
馬里奧策劃AI成長史
馬里奧GAN的工作流程大概長這樣:
首先,GAN學習現有的超級馬里奧關卡(圖上黃色部分),get到關卡策劃這一技能後,生成網路開始生成關卡,然後將「作業」案例提交給判別網路,由判別網路進行把關,判斷「作業」是否為一個合格的馬里奧關卡。
不合格的「作業」將被打回去重做,直到這一關合格為止。
神經網路如何識別遊戲
GAN學習的並不是每一關的畫面,而是用專有符號系統表示的「遊戲地圖」。地圖以「方塊」為單位——有金幣的方塊、可以頂碎的磚塊、當地基的磚塊、管道的磚塊等,遊戲地圖中的每個方塊都有獨特的表示方式,比如怪物方塊編號為5,用大寫的E來代指。
這樣,所有的遊戲地圖都可以用一個符號的矩陣來表示,比如,下面這個遊戲地圖中:
我們按照方塊把每個元素劃分開,並且加以不同的表達方式:
地板是0,怪物是0,右側的「山上」可以被頂壞的「天梯」則是1。另外,由於管道佔了不只一個方塊,所以管道口的左右半截分別用單引號代指,用6、7表示,而管道身體的左右半截用方括弧代指,用8、9表示。如果某個格子是空氣,什麼都沒有,則用2表示。
所有的學習和生成系統,都是基於這樣的矩陣進行的。這套系統又被稱作視頻遊戲關卡語料庫(Video Game Level Corpus,VGLC),每一個方塊都像圖像處理中的像素一樣,能夠被神經網路解析或生成。
難度升級大法——LVE
正常的關卡遊戲都有一個特點——每一關都比前面那一關難一點。
超級馬里奧也不例外。人類遊戲策劃可以控制每一關的大致難度,但AI怎麼控制呢?這要倚仗**潛變數進化(latent variable evolution,LVE)的方法。
LVE由紐約大學的Philip Bontrager等人在2017年提出,具體可以跳轉arXiv:1705.07386。
在LVE的幫助下,機器可以生成越來越難的關卡,比如,像下面這張圖一樣(關卡略長,請把手機橫過來看):
像這樣,從開頭的「一馬平川」到出現管道、山溝、山丘和怪物,直到怪物密布、溝壑縱橫,整個過程是越來越難的。
送進DCGAN訓練
訓練的過程使用的是深度卷積生成對抗網路(Deep Convolutional GAN,DCGAN),使用WGAN演算法進行訓練。
然而,生成結果並不100%完美
訓練後的GAN生成的結果究竟如何呢?
好壞參半。
有的部分歲月靜好,除了個別小困難之外,玩家可以輕鬆通過:
但是,也有下面這種奇葩地形,蜀道之難難於上青天啊!
甚至還會出現讓人退游的神秘管道:
請問管子君是異次元穿越來的嘛?
沒辦法,GAN一直都是這麼皮。所以,研究者們還準備做進一步的優化,以期待在未來可以讓GAN生成永遠玩不完的超級馬里奧。
不完美,一樣拿獎
雖然馬里奧GAN的生成結果並不完美,但這並不妨礙它拿獎啊。
畢竟,在人類用計算機生成馬里奧遊戲關卡的歷史上,這可是個巨大突破呢。
馬里奧AI錦標賽(http://www.marioai.org/)是一個在2009-2012年期間舉辦過幾屆的比賽,專門生成馬里奧關卡。在這項賽事中,雖然科學家們一直致力於創造出最好的自動生成馬里奧關卡的演算法,但實際絕大多數時候,參賽者依然需要手動設置一些參數。
而GAN興起後,AI生成馬里奧關卡再也不需要進行任何手動了,程序員們可以和手動設置參數說bye-bye了。
因此,這篇論文也拿到了GECCO 2018的最佳論文。
傳送門全家桶
馬里奧GAN已經開源,量子位照例附上arXiv和github地址,歡迎自取~
論文:Evolving Mario Levels in the Latent Space of a Deep Convolutional Generative Adversarial Network
作者:Vanessa Volz, Jacob Schrum, Jialin Liu, Simon M. Lucas, Adam Smith, Sebastian RisiGECCO 2018 Best Paper AwardarXiv:https://arxiv.org/abs/1805.00728data:https://github.com/TheVGLC/TheVGLCgithub:https://github.com/TheHedgeify/DagstuhlGAN— 完 —
歡迎大家關注我們的專欄:量子位 - 知乎專欄
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。
量子位 QbitAI· 頭條號簽約作者
?? ? 追蹤AI技術和產品新動態
推薦閱讀:
※吳恩達Coursera機器學習
※為卷積模型執行加入循環和遠程反饋,更完整地擬合生物視覺
※kaggle屠龍技--模型融合的學習小結
※梳理梯度下降
※FastText的內部機制