創(chuàng)業(yè)投資服務平臺

創(chuàng)投時報LOGO

視頻游戲為什么對于人工智能的發(fā)展如此重要?

415人瀏覽 / 0人評論

  對于人類來說,現(xiàn)在最重要的就是發(fā)明一個真正的人工智能:一個在絕大多數(shù)情況下可以獨立思考并采取行動的機器或者軟件。一旦這種人工智能出現(xiàn),它就能幫助我們處理其他形形色色的問題。

  幸運的是,有數(shù)千名研究者在進行人工智能方面的工作。雖然他們中的大多數(shù)都在嘗試用已知算法解決新問題,但是,有些人正在研究人工智能的首要問題。我兼顧兩者。在我看來,解決應用問題刺激了新算法的產(chǎn)生,而且有了新算法,我們就可能解決新問題。為了取得進步,有必要找一些試著用人工智能加以解決的具體問題;如果試著發(fā)明人工智能,卻沒有它適合用來解決的問題,你會感到無從下手。我選擇的領(lǐng)域是游戲,而且我也會解釋為什么這是最相關(guān)的研究領(lǐng)域,如果你認真對待人工智能的話。

  但是,首先,讓我們承認人工智能近期已然受到廣泛的關(guān)注了,尤其深度學習這方面的研究遭到熱捧,各大主流媒體爭相報道,大公司巨額收購相關(guān)的初創(chuàng)公司。這幾年人工智能也取得了許多令人矚目的成就:識別場景中的物件、理解演講內(nèi)容、名字和人臉的配對、翻譯文本。通過一些措施,近期ImageNet比賽的贏家在正確識別圖片中的物件方面甚至做的比人更好。有時我會覺得Facebook的算法比我更善于在照片中認出我的好友。

  深度神經(jīng)網(wǎng)絡(luò)的拿手絕活兒就是所謂的模式識別問題,鮮有例外?;旧暇褪禽斎氪罅繑?shù)據(jù)(一張圖片、一首歌、一段文字),輸出某些其他(通常小很多)的數(shù)據(jù),比如一個名字、分類、另一張圖或者其他語言的一段文字。為了學會這一技能,機器需要讀取極大量的數(shù)據(jù),找到其中模式。易言之,神經(jīng)網(wǎng)絡(luò)正在學習大腦感知系統(tǒng)所做的事:視覺、聽覺、觸覺等等。在較小范圍內(nèi),他們也能做一部分我們大腦語言中樞的工作。

  但是,這并不是智能的全部。人類并不會一天到晚坐在那里看東西。我們會有所作為:決策、執(zhí)行以解決問題。我們對周邊產(chǎn)生影響。(當然,我們有時候會在床上賴一天,但其他的大多數(shù)時候,我們總是以某種方式自主活動著的)。智能不斷進化,幫助我們在一個充滿危險的世界生存下去,而且做到這些需要與周邊環(huán)境互動,規(guī)劃行動復雜后果,也要不斷適應變化中的環(huán)境。模式識別——識別物件或人臉、理解演說等功能——是智能很重要的一部分,但這只是一個不斷思忖接下來怎么做的完整體系的一部分。想要研發(fā)人工智能,卻只專注于模式認知,如同研發(fā)汽車卻只專注輪胎。

  為了建立一個完整的人工智能架構(gòu),我們就要建立一個體系,這個體系會涉及某種環(huán)境下的對應措施。怎樣實現(xiàn)這一點呢?或許最顯而易見的方法就是用機器人具身化人工智能(embody AI in robots)。而且實際上,我們也看到了,哪怕是那些最平凡的事情,比如隨地形走路、拿起形狀奇怪的物品,對機器人來說,都是很難完成的任務。80年代,機器人研究再度大量關(guān)注這類「簡單」問題,也推動了應用領(lǐng)域的進步,也改善了人們對何為智能的理解。近數(shù)十年的機器人進步促使了自駕汽車的產(chǎn)生,這可能會成為人工智能在不久將來將要顛覆的社會領(lǐng)域之一。

  如今,機器人的研究接觸久了便清楚認識到它的局限。機器人價格昂貴,結(jié)構(gòu)復雜,推進很慢。當我剛開始攻讀博士學位時,我的計劃是研發(fā)一套從錯誤中自我學習的機器人系統(tǒng),加速復雜性智能性。但很快發(fā)現(xiàn),為了讓我的機器人從他們的經(jīng)驗中自我學習,很多的任務不得不重復上千次,每次又需要好幾分鐘。這意味著,一項簡單的任務就需要花上幾天的時間,這還是在機器運行良好、電池散熱正常的情況下。如果想要更近一步研發(fā)復雜的智能任務,我需要制造一個比以前更復雜的傳感器和致動器,這極大增加了系統(tǒng)崩潰的風險。我也需要研發(fā)一個復雜的環(huán)境從而讓復雜技能得以習得。以上種種很快就超出了能力范圍。 這大概就是為什么進化機器人還沒有能擴展到更復雜智能領(lǐng)域的原因。

  我這次太迫不及待了,我渴望看到能從經(jīng)驗中自我學習的智能系統(tǒng)。于是我把主要精力投入到了電腦游戲領(lǐng)域。

  游戲和人工智能有很悠久的淵源。早在人工智能被定義成一個專業(yè)范疇時,早期的計算機科學家就試圖通過游戲編程來測試計算機是否能通過某種形式的「智能」來解決游戲中的問題。阿蘭·圖靈,計算機科學論證的奠基人,(重新)發(fā)明了極值算法并用它來下國際象棋(當時他還是用紙筆演算因為那時候還沒有計算機);阿瑟·繆瑟爾(Arthur Samuel )第一個發(fā)明了學習機器的形式即現(xiàn)在的強化學習模型,他將這個程序用于跳棋游戲的自我對戰(zhàn)。后來,IBM的深藍計算機靠此戰(zhàn)勝了國際象棋的衛(wèi)冕冠軍卡斯帕羅夫。如今,很多研究者力圖研發(fā)更好的程序進行圍棋競技,但是仍舊沒辦法超過最好的人類選手。

  經(jīng)典棋盤類游戲,比如象棋,跳棋還有圍棋很適合也很容易用來做研究,因為很容易用代碼模擬它們,而且模擬速度也相當快——在一臺現(xiàn)代電腦上,你可以輕易實現(xiàn)每秒上百萬步棋招——對許多人工智能來說,這也是必不可少的。要玩轉(zhuǎn)這類游戲也需要思考,具有「學會僅需一分鐘,精通卻需一輩子」的特點。情況確實如此,游戲與學習密切相關(guān),而且好的游戲能夠不斷教會我們游戲技巧。實際上,某種程度上說,玩游戲的樂趣就是在于不斷學習它,當再沒什么東西可學之時,我們基本上就會對這款游戲失去興趣。這意味著,一款設(shè)計精良的游戲很適合作為人工智能的基準。但是,鑒于如今已經(jīng)出現(xiàn)(相對簡單的)會下棋的計算機程序,比人類還厲害,很明顯,玩轉(zhuǎn)這些游戲不需要你真的像人們普遍認為的那樣聰明。 當你下棋思考時, 它們鍛煉的只是人類思考技巧中非常小的一部分。

  但是,我們身邊的游戲遠遠不止這些,盡管祖父年代的人們可能一度這樣認為。除了我們熟知的棋牌類,角色扮演類游戲外,還有視頻游戲。視頻游戲很著廣大的粉絲,因為它能充分調(diào)動人們的各種感官。就拿超級瑪麗來說,這款游戲不僅要求你有敏捷的反應,視覺理解和動作協(xié)調(diào)性,還需要你對路徑的判斷力,對于風險獎勵的取舍能力,對敵人和角色接下來的預測能力,對在規(guī)定時間通關(guān)的掌控能力。還有一些游戲要求你對信息的獲取能力(比如星際);劇情的理解能力(比如天際);或者長久的規(guī)劃力(比如文明)。

  綜上所述,視頻游戲可以在計算機中的不同可控環(huán)境下運行,而且不少游戲可以在自身的速度上進行加速。開始一款游戲并不復雜也不昂貴,并且在極短的時間內(nèi)可以運行上千種變化,給學習算法創(chuàng)造了條件。

  因此,近期,人工智能研究人員逐漸將視頻游戲作為人工智能基準也就不足為奇了。研究人員,比如我自己,已經(jīng)采用了許多電子游戲作為人工智能基準。我們已經(jīng)組織過多次競賽,比賽中,研究人員可以提交他們最棒的游戲人工智能(game-playing AI),通過與其他研究人員最好人工智能競爭,測試自己作品的水平;基于同一款游戲反復競賽能夠讓參賽者們精煉自己的研究的進路和方法,以期來年獲勝。這些用來測試的游戲有超級瑪麗, 星際 (論文), TORCS賽車游戲 (論文), Ms Pac-Man (論文), 一款街頭霸王類的格斗游戲(a generic Street Fighter-style figthing game) (論文), 憤怒的小鳥(論文), Unreal Tournament (論文)和其他等。幾乎在所有比賽中,我們都發(fā)現(xiàn)每次比賽中,獲勝人工智能玩家的表現(xiàn)都有提高。在促進圈內(nèi)研究方面,這些競賽也發(fā)揮了重要作用,每年發(fā)表了許多論文,競賽軟件也被用來作為一些新人工智能方法基準。因此,我們通過游戲競賽來推進人工智能。

  剛才的描述中有個問題,你能指出來嗎?

  就是那個。游戲特殊性。問題在于,提高人工智能玩家玩某款特定游戲的表現(xiàn) ,并不必然有助于我們從總體上提升人工智能水平。事實是,在上述絕大多數(shù)以游戲為基礎(chǔ)的比賽中,我們已經(jīng)看到,參賽人工智能每次表現(xiàn)都更好了。但是,在絕大多數(shù)情況下,表現(xiàn)的提高并不是因為改善了人工智能算法,而是因為針對某些具體問題使用這些算法的方式更加聰明了。有時,這意味著人工智能的角色更加邊緣化。比如,在第一年的賽車比賽中,幾乎都是采用演化算法訓練神經(jīng)網(wǎng)絡(luò),讓汽車跑在賽道上的人工智能。后來,大多數(shù)最好的參賽者使用了手動的「笨」方法讓車跑在賽道上,但是使用了學習算法學習軌道的形狀,調(diào)整行駛。這是一個解決特殊工程問題的聰明方法,但是,幾乎沒有一般智能方面的建樹。

  為了確定這種競賽是在測試接近人工智能的對象,我們需要重塑問題。為此,定義我們試圖測量的對象——一般智能(general intelligence)——是個不錯的主意。Shane Legg與Marcus Hutter提出了一個非常有用的關(guān)于智能的定義,大致就是一個代理(agent)在所有可能問題上的平均成績。(在它們的最初方程中,每個對平均成績有貢獻的問題都會依據(jù)其簡易性而被賦予權(quán)重,但是,讓我們暫時忽略這一點)。很顯然,在所有可能的問題上測試人工智能并不可能,因為問題是無限的。但是,也許我們可以用大量不同的問題來測試人工智能。例如,用大量不同的電子游戲?

  想到的第一件事就是利用現(xiàn)有的一堆游戲機游戲,最好是能輕易模擬且能加速到實時速度許多倍的游戲,并搭建一個以此為基準的人工智能。這就是 Arcade Learning Environment (ALE)所做的事情。ALE可以讓你在一百多個上世紀七十年代為復古雅達利2600游戲機發(fā)布的游戲上測試你的人工智能。人工智能代以像素級別來認識屏幕,必須用操縱桿來回答。ALE被用于大量實驗,包括框架的最初研發(fā)人員做的實驗。也許,最著名的就是谷歌Deep Mind在《Nature》上所發(fā)表的一篇論文,介紹了他們?nèi)绾卫蒙疃葘W習這樣非凡的技能來學習不同游戲(基于深層卷積神經(jīng)網(wǎng)絡(luò)的Q型學習)。

  ALE是一個很好的人工智能基準,但是,有一個致命的局限性。利用Atari 2600電子游戲的問題在于,游戲數(shù)量是有限的,而且研發(fā)新游戲是一個麻煩的過程。Atari 2600編程之難,臭名昭著,而且游戲機的硬件局限性也妨礙了可加使用的游戲類別。更重要的是,既有游戲全部都是家喻戶曉的,每個人也可以弄得到。這就有可能針對每一個特定游戲來調(diào)適你的人工智能。不僅可以針對每個游戲訓練你的人工智能(DeepMind取得的成果就是靠每種游戲玩上成千上萬次來訓練系統(tǒng)),還可以為了在將要訓練的游戲上表現(xiàn)更好,調(diào)適整個系統(tǒng)。

  我們還能做得更好嗎?是的,可以。如果我們想要大概了解人工智能可能產(chǎn)生的任何問題,那么,最好的辦法就是對聞所未見的問題主動出擊,進行測試。也就是說,人工智能設(shè)計者在測試之前并不知道哪些問題是之前測試過的。至少,這是我們設(shè)計GVGAI(the General Video Game Playing Competition- 通用電玩競賽)的初衷。

  借助GVG,任何人都可以為他們最好的人工智能選手「報名」,在這個特殊的服務器上,人工智能選手可以「玩」十個從未見過的游戲(除了競賽組織者)。這些游戲的類型是八十年代早期個人電腦或者掌機上見過的類型;有些設(shè)計就是基于很多耳熟能詳?shù)挠螒颍热玢@石小子,吃豆人、太空侵略者、推箱子、導彈指令。比賽的獲勝者無疑是在這些沒有接觸過的游戲中表現(xiàn)最好的人工智能「選手」。因此,人工智能設(shè)計師沒辦法針對某個特定游戲調(diào)適他們的軟件。GVGAI大約有50個游戲可以用來訓練你的人工智能,每次迭代都會推出更多游戲。

  目前,50個游戲并不是一個大的數(shù)目;我們?nèi)绾潍@取新的游戲呢?首先,所有游戲必須經(jīng)過一種被稱為「電玩描述語言」的標準進行編程。我們設(shè)計出這種簡單的語言用來編寫游戲,同時滿足嵌入性和可讀性的條件,類似網(wǎng)頁編輯所用的HTML。這種語言的設(shè)計主要是為了可以解碼經(jīng)典的掌機游戲;這意味著所有游戲的設(shè)計都是基于動作和交互這兩個維度。在Wolfenstein3D面世前,這兩項是所有電玩設(shè)計中最重要的。無論如何,這種語言的簡單性方便了新游戲創(chuàng)作,不論是從頭開始制作或者是對現(xiàn)存游戲進行變化。(捎帶說下,作為此項目的分支,我們正在探索VGDL作為游戲開發(fā)的原型工具。)

  即使是將編寫游戲這件事簡單化了,仍然無法解決一個根本問題——還是需要有人進行編寫和設(shè)計。由于GVG-AI的定位是能夠最大可能的滿足人工智能測試,我們需要源源不絕的游戲產(chǎn)生出來。因此,我們需要自動生成,需要有軟件能夠?qū)崿F(xiàn):只需點一下,就有新游戲產(chǎn)生,而這些游戲也不能太過簡單,要是那種需要人工智能玩家具備一定技巧的好游戲。(副作用是,人類玩家可能也喜歡玩。)

  我知道,設(shè)計出可以設(shè)計新游戲的軟件聽起來非常困難。然而,我們已經(jīng)試圖攻克該領(lǐng)域多年,我堅信這件事是可行的。Cameron Browne已經(jīng)成功搭建了一個設(shè)計棋盤游戲的生成器,而我們最近的一些工作正致力于自動生成簡單的VGDL游戲,盡管距離成功仍需時日。并且,生成游戲的一部分明顯可行,比如游戲等級;過去五年,有很多研究專注于進度內(nèi)容生成——游戲內(nèi)容的自動生成。研究人員已經(jīng)證實,諸如演化算法,計劃以及回答設(shè)定編程之類的方法能夠自動創(chuàng)造等級、地圖、故事、項目和幾何圖形狀,基本上可以生產(chǎn)游戲的其他任何內(nèi)容類型?,F(xiàn)在,研究的挑戰(zhàn)在于泛化這些方法(意味著可以使用在任何游戲上,而不是針對某個特定游戲),讓這些方法更具綜合性,以便他們能夠生成各種游戲元素,包括游戲規(guī)則。大多數(shù)生成方法包括對正被生成的游戲進行某種形式的模擬,這意味著玩游戲和游戲生產(chǎn)的問題是錯綜復雜聯(lián)系在一起的,任何時候都應該一并思考。

  一旦用自動游戲生成擴展通用電玩競賽,我們就有好得多的辦法來測試玩游戲的水平。當然,在比賽之外,軟件也有用途,提供了一個簡單測試玩游戲的人工智能一般智能水平的辦法。

  到目前為止,我們只談到如何最好地測試或評估一種計算機程序的一般智能,而不是如何創(chuàng)造一個。嗯,這篇文章的主旨是闡述為何電玩游戲是創(chuàng)造人工智能必不可少的,我相信我已經(jīng)解釋的非常全面了: 作為衡量人工智能水平的一種公平且準確的基準。但出于完整性考慮,我們還是需要考慮創(chuàng)造出此類人工智能最有前途的方法。如上文所述,(深度) 神經(jīng)網(wǎng)絡(luò)最近吸引了大量關(guān)注是由于其圖形識別中獲得了驚人高的正確率。我相信,神經(jīng)網(wǎng)絡(luò)和類似的圖形識別方法在對游戲進行評估和提供改進建議方面可以發(fā)揮重要作用。在許多情況下,針對游戲訓練神經(jīng)網(wǎng)絡(luò)時,演化算法要比梯度方法更合適。

  但是,智能并不僅限于模式識別。(同樣,行為主義也不能完全解釋人類行為:人類并不僅僅是在刺激與反應之間建立起映射,他們也會思考。)智能也必須吸收一些計劃行為,在我們做出決定之前,行為的未來影響也會是刺激的一部分。最近,一種叫做Monte Carlo Tree Search的算法,通過對隨機行為進行統(tǒng)計,模擬長系列行為后果,這個算法已經(jīng)在棋盤游戲Go.中創(chuàng)造奇跡。在GVGAI中表現(xiàn)良好。最近在游戲計劃任務中展現(xiàn)出巨大潛質(zhì)的另一個算法家族是 rolling horizon evolution。這里,演化算法不僅被用于長期學習,還被用于短期行動計劃。

  我認為,通用電子游戲人工智能的下一波發(fā)展浪潮會來自神經(jīng)網(wǎng)絡(luò)、進化與樹搜索的創(chuàng)造性結(jié)合。重要之處在于,對各種不同功能來說,模式識別和計劃都是必須的。就像研究中經(jīng)常遇到的情況,我們無法預測研究結(jié)果會如何(否則,就算不上研究了),但是,我打賭探索這些方法的各種組合會為研發(fā)下一代人工智能算法提供靈感。

  現(xiàn)在,你可能會反對說,這是一個非常逼仄的智能和人工智能觀。那文本識別,聽力理解,講故事,肢體協(xié)調(diào),諷刺和浪漫呢?我們的游戲人工智能可做不到這些,無論它能否玩轉(zhuǎn)世上所有的電腦游戲。對此,我要說:耐心點!所有這些并不需要玩早期電腦游戲,這點沒錯。但是,當我們掌握了這些游戲并繼續(xù)玩其他類游戲時,比如角色扮演,冒險游戲,模仿游戲以及社交網(wǎng)絡(luò)游戲,玩好這些游戲需要掌握很多技巧。當我們掌握的游戲多樣性越來越多,玩轉(zhuǎn)游戲所需的認知技能廣度也會遞增。當然,我們的游戲人工智能必須進步更多才能應對地過來。理解語言,圖像,故事,面部表情以及幽默感都是必須的,也不要忘記,與通用視頻游戲挑戰(zhàn)緊密相隨的是來自生產(chǎn)通用視頻游戲的挑戰(zhàn),這需要足夠的其他類型智能。我確信,視頻游戲(一般意義上的)會對所有形式的智能構(gòu)成挑戰(zhàn),除了那些與身體運動密切相關(guān)的游戲,因此,視頻游戲(一般意義上)是人工智能最好的測試臺。無論采取何種標準,一個能玩幾乎所有游戲并能創(chuàng)作各種視頻游戲的人工智能就是智能的。

  這篇博文開始變得很長——我原來計劃的長度只是現(xiàn)在的一部分。但是,要解釋的東西也很多。如果你已經(jīng)讀到這里,可能已經(jīng)忘掉文章最開始的內(nèi)容了。我來重復一下:

  擁有好的測試臺對人工智能研究來說很關(guān)鍵。游戲就是人工智能的測試臺,因為它們?yōu)槿斯ぶ悄芴峁┝烁鞣N挑戰(zhàn),和機器人學一樣,而且非常吸引人。但是,它們也比較簡單,便宜和快速,許多用機器人學無法切實實踐的研究也都因此成為可能。這一領(lǐng)域最一開始,棋盤游戲就被用于人工智能研究中了,但是最近十年,越來越多的研究人員已經(jīng)進入視頻游戲領(lǐng)域中,因為游戲提供了更具多樣性的相關(guān)挑戰(zhàn)。(他們也更加有趣)。競賽在當中扮演了關(guān)鍵角色。但是,為了某個單一游戲,在人工智能上附注太多努力會在總體上限制人工智能的價值。因此,我們創(chuàng)造出通用電玩競賽( General Video Game Playing Competition ),以及與之相關(guān)的軟件框架。這意味著,它要成為針對通用智能的最全面的以游戲為基礎(chǔ)的基準。通過玩多種人工智能設(shè)計者之前沒有見過的游戲(而不是僅僅一種)來評估人工智能。通用電子游戲的下一個突破可能就會來自神經(jīng)網(wǎng)絡(luò),演化算法以及Monte Carlo樹搜索的組合。與玩這些游戲挑戰(zhàn)緊密相連的是生產(chǎn)新游戲和為這些游戲生產(chǎn)新內(nèi)容的挑戰(zhàn)。計劃的目的在于讓測試人工智能的游戲供給源源不斷。盡管玩游戲和生產(chǎn)簡單的電腦游戲?qū)Υ罅坎煌J知能力進行測試—— 比其他任何一種人工智能基準都要更具多樣性——但是,我們目前仍沒抵達測試所有智能的階段。不過,考慮到玩轉(zhuǎn)和設(shè)計現(xiàn)代視頻游戲所需的各種智能,也沒理由說我們到不了那里。

  如果你想更多了解這些課題,我已經(jīng)在上述部分對各種博文,文章以及書籍做了鏈接。我目前在做的大多數(shù)研究(以及我們在紐約大學游戲創(chuàng)新實驗室做的),是以某種方式與我在此處描繪的整體計劃聯(lián)系在一起的。最近,我將過去幾年研究回顧做了一個集合,并與自己最近研究做了鏈接。更多的文章可以在我的網(wǎng)頁找到。認識到這一工作中的大部分內(nèi)容都具有雙重目的—— 促進人工智能發(fā)展和讓游戲更有趣—— 很重要。我們正在研發(fā)的許多技術(shù)或多或少關(guān)注的是改善游戲。針對特定游戲提升人工智能這方面,仍有重要工作要做,這一點也很重要。在最近的另一篇博文中,我試著想象,如果我們已經(jīng)擁有真實人工智能,視頻游戲會是什么樣子?我最近寫了一篇論文試著勾勒出游戲當中整個人工智能領(lǐng)域的輪廓,但是,內(nèi)容很長和很復雜,我建議你先閱讀博文,再去閱讀文章。你也可以精讀 Computational Intelligence and Games 和Artificial Intelligence and Interactive Digital Entertainment conference series的會議記錄。

  最后,注意這一點很重要:這一路線的研究還有很大的空間,你們可以參與進來,因為還有很多很多的開放研究問題。如果你尚未從事這方面的研究,我認為你應該開始了。它讓人激動,因為它就是未來。你還等什么呢?

全部評論