游戲是智能應(yīng)用最好的平臺,可惜的是:只用了少部分計算AI,還沒有用到智能的計算計
1引言
從1950年香農(nóng)教授提出為計算機象棋博弈編寫程序開始,游戲人工智能就是人工智能技術(shù)研究的前沿,被譽為人工智能界的“果蠅”,推動著人工智能技術(shù)的發(fā)展。
2概念
如果我們知道了什么是人工智能,游戲人工智能的含義也就不言而喻了,那么什么是人工智能呢?比起人工智能更基礎(chǔ)的概念是智能,那么什么是智能呢?權(quán)威辭書《韋氏大詞典》的解釋是“理解和各種適應(yīng)性行為的能力”,《牛津詞典》的說法是“觀察、學(xué)習(xí)、理解和認(rèn)識的能力”,《新華字典》的解釋是“智慧和能力”,James Albus在答復(fù)Henry Hexmoor時說“智能包括:知識如何獲取、表達和存儲;智能行為如何產(chǎn)生和學(xué)習(xí);動機、情感和優(yōu)先權(quán)如何發(fā)展和運用;傳感器信號如何轉(zhuǎn)換成各種符號;怎樣利用各種符號執(zhí)行邏輯運算、對過去進行推及對未來進行規(guī)劃;智能機制如何產(chǎn)生幻覺、信念、希望、畏懼、夢幻甚至善良和愛情等現(xiàn)象”。而人工智能作為一門科學(xué)的前沿和交叉學(xué)科,至今尚無統(tǒng)一的定義,但不同科學(xué)背景的學(xué)者對人工智能做了不同的解釋:符號主義學(xué)派認(rèn)為人工智能源于數(shù)理邏輯,通過計算機的符號操作來模擬人類的認(rèn)知過程,從而建立起基于知識的人工智能系統(tǒng);聯(lián)結(jié)主義學(xué)派認(rèn)為人工智能源于仿生學(xué),特別是人腦模型的研究,通過神經(jīng)網(wǎng)絡(luò)及網(wǎng)絡(luò)間的鏈接機制和學(xué)習(xí)算法,建立起基于人腦的人工智能系統(tǒng);行為主義學(xué)派認(rèn)為智能取決于感知和行動,通過智能體與外界環(huán)境的交互和適應(yīng),建立基于“感知-行為”的人工智能系統(tǒng)。其實這三個學(xué)派從思維、腦、身體三個方面對人工智能做了一個闡述,目標(biāo)都是創(chuàng)造出一個可以像人類一樣具有智慧,能夠自適應(yīng)環(huán)境的智能體。理解了人工智能的內(nèi)涵以后,我們應(yīng)該怎么衡量和評價一個智能體是否達到人類智能水平呢?目前有兩個公認(rèn)的界定:圖靈測試和中文屋子,一旦某個智能體能夠達到了這兩個標(biāo)準(zhǔn),那么我們就認(rèn)為它具備了人類智能。
游戲人工智能是人工智能在游戲中的應(yīng)用和實踐。通過分析游戲場景變化、玩家輸入獲得環(huán)境態(tài)勢的理解,進而控制游戲中各種活動對象的行為邏輯,并做出合理決策,使它們表現(xiàn)得像人類一樣智能,旨在提高游戲娛樂性、挑戰(zhàn)智能極限。游戲人工智能是結(jié)果導(dǎo)向的,最關(guān)注決策環(huán)節(jié),可以看做“狀態(tài)(輸入)”到“行為(輸出)”的映射,只要游戲能夠根據(jù)輸入給出一個看似智能的輸出,那么我們就認(rèn)為此游戲是智能的,而不在乎其智能是怎么實現(xiàn)的(Whatever Works)。那么怎么衡量游戲人工智能的水平呢?目前還沒有公認(rèn)的評價方法,而且游戲人工智能并不是特別關(guān)心智能體是否表現(xiàn)得像人類一樣,而是更加關(guān)心游戲人工智能的智能極限——能否戰(zhàn)勝人類的領(lǐng)域?qū)<?,如:Waston在智能問答方面戰(zhàn)勝了 Jeopardy! 超級明星 Ken Jennings 和 Brad Rutter;AlphaGo在圍棋上戰(zhàn)勝了歐洲冠軍樊麾。
3游戲機理
3.1人類的游戲機理
游戲?qū)ξ覀儊碚f并不陌生,無論是小時候的“小霸王學(xué)習(xí)機”,還是五子棋、象棋等各種棋類游戲都是童年的美好回憶,但人類玩游戲的整個過程是什么樣的呢?
具體過程如圖1所示:首先玩家眼球捕捉顯示屏上的游戲畫面并在視網(wǎng)膜上形成影像;然后經(jīng)過視覺神經(jīng)傳至V1區(qū),并提取線條、拐點等初級視覺信息;初級視覺信息經(jīng)過V2區(qū)傳至V4區(qū),并進一步提取顏色、形狀、色對比等中級視覺信息;中級視覺信息經(jīng)過PIT傳至AIT,進而提取描述、面、對象等高級視覺信息并傳至PFC;在PFC進行類別判斷,并根據(jù)已有的知識制定決策,然后在MC的動機的促發(fā)下產(chǎn)生行為指令并傳至響應(yīng)器官(手);響應(yīng)器官執(zhí)行操作;至此,玩家的游戲機制已經(jīng)完成。計算機在接收到玩家的輸入(鍵盤、鼠標(biāo)等)以后,根據(jù)游戲的內(nèi)部邏輯更新游戲狀態(tài),并發(fā)送至輸出設(shè)備(顯示屏)展示給用戶,自此計算機游戲環(huán)境更新完成。然后玩家展開下一次游戲機理,并循環(huán)直至游戲結(jié)束或玩家放棄游戲。
圖1人類游戲機理
3.2計算機的游戲機理
游戲人工智能是創(chuàng)造一種代替人類操作游戲的智能體,想要讓機器玩好游戲,我們就需要了解“它”玩游戲的機理,這樣才能更好地改進它。
計算機的游戲機理如圖2所示:首先通過某種方式(讀取視頻流、游戲記錄等)獲得環(huán)境的原始數(shù)據(jù),然后經(jīng)過去重、去噪、修正等技術(shù)對數(shù)據(jù)進行預(yù)處理,并提取低級語義信息;然后經(jīng)過降維、特征表示(人工或計算機自動提?。┬纬筛呒壵Z義信息;然后通過傳統(tǒng)機器學(xué)習(xí)方法進行模式識別,進一步理解數(shù)據(jù)的意義;最后結(jié)合先前的經(jīng)驗(數(shù)據(jù)挖掘,或人工提取,或自學(xué)習(xí)產(chǎn)生的領(lǐng)域知識庫)決策生成行動方案,進而執(zhí)行改變環(huán)境,并進行新一輪的迭代。在每次迭代的過程中,智能體還可以學(xué)習(xí)新的經(jīng)驗和教訓(xùn),進而進化成更加智能的個體。
圖2計算機游戲機理
3.3游戲的一般性機理
從人類和計算機的游戲機理,我們可以總結(jié)出游戲玩家的一般性機理,如圖3所示:游戲玩家可以看做是一個態(tài)勢感知過程,接收原始數(shù)據(jù)作為輸入,輸出動作序列,在內(nèi)部進行了態(tài)勢覺察產(chǎn)生低級信息、態(tài)勢理解形成高級認(rèn)知、態(tài)勢預(yù)測估計將來的態(tài)勢,并根據(jù)已有的經(jīng)驗和規(guī)則,在目標(biāo)和動機的驅(qū)動下產(chǎn)生行動方案,從而指導(dǎo)游戲向更有利于玩家的方向進行,然后進入下一個循環(huán)序列。
圖3游戲一般過程機理(SA圖)
游戲的一般性機理還可以看做是一個“狀態(tài)”到“動作”的映射,游戲的環(huán)境狀態(tài)、玩家的目標(biāo)是自變量,玩家的操作是因變量,而映射關(guān)系是正是游戲一般機理的核心部分。它可以通過如神經(jīng)網(wǎng)絡(luò)這種技術(shù)來對自變量進行特征提取和表征,也可以直接使用自變量,利用公式計算獲得輸出值,進而映射到相應(yīng)的動作。
4里程碑
自香農(nóng)發(fā)表計算機象棋博弈編寫程序的方案以來,游戲人工智能已經(jīng)走過了半個多世紀(jì),在這65個春秋的風(fēng)雨兼程中,無數(shù)的科學(xué)家貢獻了自己的才華和歲月,所取得的成果更是數(shù)不勝數(shù),本文羅列了游戲人工智能的重大里程碑,意欲讀者能夠把握游戲人工智能的研究現(xiàn)狀,為今后的研究方向給予啟示,具體如表1所示:
表1游戲人工智能里程碑表
年份 | 名稱 | 作者 | 描述及意義 |
1950 | 計算機象棋博弈編寫程序的方案 | 克勞德·艾爾伍德·香農(nóng) |
機器博弈的創(chuàng)始; 奠定了計算機博弈的基礎(chǔ)。 |
1951 | Turochamp | 艾倫·麥席森·圖靈 |
第一個博弈程序; 使用了博弈樹。 |
1956 | 西洋跳棋 | 阿瑟·塞繆爾 |
第一個具有自學(xué)習(xí)能力的游戲; 使用了強化學(xué)習(xí)算法,僅需自我對戰(zhàn)學(xué)習(xí)就能戰(zhàn)勝康涅狄格州的西洋跳棋冠軍。 |
20世紀(jì)60年代 | 國際象棋弈棋程序 | 約翰·麥卡錫 |
第一次使用Alpha-beta剪枝的博弈樹算法; 在相同計算資源和準(zhǔn)確度的情況下,使得博弈樹的搜索深度增加一倍。 |
1980 | Pac-man | Namco公司 | 第一次使用了一系列的規(guī)則與動作序列及隨機決策等技術(shù); |
1989 | Simcity | Maxis公司 | 第一次使用了人工生命、有限狀態(tài)機技術(shù); |
1990 | 圍棋弈棋程序 | 艾布拉姆森 | 第一次將把蒙特卡洛方法應(yīng)用于計算機國際象棋博弈的盤面評估; |
1996 | Battlecruiser 3000AD | 3000AD公司 | 第一次在商業(yè)游戲中使用神經(jīng)網(wǎng)路; |
1996 | Creature | NTFusion公司 | 第一次引入“DNA”概念、遺傳算法 |
1997 | Deep Blue | IBM公司 |
第一個達到人類國際大師水平的計算機國際象棋程序; 使用了 剪枝的博弈樹技術(shù),以3.5:2.5戰(zhàn)勝世界棋王卡斯帕羅夫 |
2011 | Watson | IBM公司 |
第一次在智能問答方面戰(zhàn)勝人類; 使用了Deep QA技術(shù),戰(zhàn)勝了Jeopardy! 超級明星Ken Jennings 和Brad Rutter |
2013 | 玩“Atari 2600”的程序 | DeepMind團隊 |
第一個“無需任何先驗知識”“自學(xué)習(xí)”“可遷移”的游戲引擎; 使用了CNN+Q-learning的DRN技術(shù),輸入為“原始視頻”和“游戲反饋”,無需任何人為設(shè)置,可從“零基礎(chǔ)”成為7款“Atari 2600”游戲的專家。 |
2016 | AlphaGo | Google DeepMind團隊 |
第一個在全棋盤(19*19)無讓子的情況下戰(zhàn)勝人類專業(yè)棋手的“圍棋程序”; 使用了SL(有監(jiān)督學(xué)習(xí))+RL(強化學(xué)習(xí))+MCTS(蒙特卡羅樹搜索)方法,戰(zhàn)勝了歐洲圍棋冠軍Fan Hui。 |
5游戲人工智能實現(xiàn)技術(shù)
5.1有限狀態(tài)機
當(dāng)你設(shè)法創(chuàng)造一個具有人類智能的生命體時,可能會感覺無從下手;一旦深入下去,你會發(fā)現(xiàn):只需要對你所看到的做出響應(yīng)就可以了。有限狀態(tài)機就是這樣把游戲?qū)ο髲?fù)雜的行為分解成 “塊”或狀態(tài)進行處理的,其處理機制如圖4所示:首先接收游戲環(huán)境的態(tài)勢和玩家輸入;然后提取低階語義信息,根據(jù)每個狀態(tài)的先決條件映射到響應(yīng)的狀態(tài);接著根據(jù)響應(yīng)狀態(tài)的產(chǎn)生式規(guī)則生成動作方案;最后執(zhí)行響應(yīng)動作序列并輸入游戲,進入下一步循環(huán)。由圖4和圖2比較可知:有限狀態(tài)機方法是計算機游戲機理的一種簡單實現(xiàn):根據(jù)規(guī)則人為將原始數(shù)據(jù)映射到“狀態(tài)”完成“特征工程和識別”,根據(jù)產(chǎn)生式系統(tǒng)將“狀態(tài)”映射到響應(yīng)的動作完成“決策制定”。
圖4有限狀態(tài)機游戲機理
那么理論層次上的“有限狀態(tài)機”又是怎么描述的呢?有限狀態(tài)機是表示有限個狀態(tài)以及在這些狀態(tài)之間轉(zhuǎn)移和動作等行為的特殊有向圖,可以通俗的解釋為“一個有限狀態(tài)機是一個設(shè)備,或是一個設(shè)備模型,具有有限數(shù)量的狀態(tài),它可以在任何給定的時間根據(jù)輸入進行操作,使得從一個狀態(tài)變換到另一個狀態(tài),或者是促使一個輸出或者一種行為的發(fā)生。一個有限狀態(tài)機在任何瞬間只能處在一種狀態(tài)”。通過相應(yīng)不同游戲狀態(tài),并完成狀態(tài)之間的相互轉(zhuǎn)換可以實現(xiàn)一個看似智能的游戲智能引擎,增加游戲的娛樂性和挑戰(zhàn)性。
5.2搜索
圖5博弈樹游戲機理
“人無遠(yuǎn)慮,必有近憂”,如果能夠考慮到未來的所有情況并進行評估,那么只需要篩選最好的選擇就可以了。當(dāng)前棋類游戲幾乎都使用了搜索的方式來完成決策的,其中最優(yōu)秀的是 搜索樹、蒙特卡洛搜索樹。搜索的游戲人工智能更關(guān)注的是預(yù)測和評估,決策的制定只是挑選出預(yù)測的最好方式即可,如圖5所示。
5.3有監(jiān)督學(xué)習(xí)
分類是有監(jiān)督學(xué)習(xí)方法,旨在具有標(biāo)簽的數(shù)據(jù)中挖掘出類別的分類特性,也是游戲人工智能的重要方法。有些游戲人類就是通過學(xué)習(xí)前人經(jīng)驗成為游戲高手的,棋類游戲更是如此。進過幾千年的探索,人類積累了包括開局庫、殘局庫、戰(zhàn)術(shù)等不同的戰(zhàn)法指導(dǎo)玩家游戲。而數(shù)據(jù)挖掘就是在數(shù)據(jù)中挖掘潛在信息,并總結(jié)成知識然后指導(dǎo)決策的過程。Google DeepMind的圍棋程序AlphaGo就使用了有監(jiān)督學(xué)習(xí)訓(xùn)練策略網(wǎng)絡(luò),用以指導(dǎo)游戲決策;它的SL策略網(wǎng)絡(luò)是從KGS GO服務(wù)器上的30,000,000萬棋局記錄中使用隨機梯度上升法訓(xùn)練的一個13層的神經(jīng)網(wǎng)絡(luò),在測試集上達到57.0%的準(zhǔn)確率,為圍棋的下子策略提供了幫助。
5.4遺傳算法
遺傳算法是進化算法的一種。它模擬達爾文進化論的物競天擇原理,不斷從種群中篩選最優(yōu)個體,淘汰不良個體,使得系統(tǒng)不斷自我改進。遺傳算法可以使得游戲算法通過不斷的迭代進化,可以從一個游戲白癡進化成為游戲高手,是一個自學(xué)習(xí)的算法,無需任何人類知識的參與。
圖6遺傳算法游戲機理
在系統(tǒng)中,每個個體具有一串遺傳信息,這串信息代表了我們所要優(yōu)化對象的全部特征。算法維持一個由一定數(shù)量個體組成的種群,每一輪,算法需要計算每個個體的適應(yīng)度,然后根據(jù)適應(yīng)度選出一定數(shù)量存活的個體,同時淘汰掉剩余落后的個體。隨后,幸存的個體將進行“繁殖”,填補因為淘汰機制造成的空缺。所謂的繁殖,就是個體創(chuàng)造出和自己相同的副本。然而為了實現(xiàn)進化,必須要有模仿基因突變的機制。因此在復(fù)制副本的時候也應(yīng)當(dāng)使得遺傳信息產(chǎn)生微小的改變。選擇-繁殖-進化這樣的過程反復(fù)進行,就能實現(xiàn)種群的進化。
5.5強化學(xué)習(xí)
強化學(xué)習(xí)也是一種自學(xué)習(xí)的算法,1956阿瑟·塞繆爾的西洋跳棋程序僅通過算法自己和自己對戰(zhàn)就可以戰(zhàn)勝康涅狄格州的西洋跳棋冠軍。強化學(xué)習(xí)來源于行為主義學(xué)派,它通過Agent與環(huán)境的交互獲得“獎懲”,然后趨利避害,進而做出最優(yōu)決策。
圖7強化學(xué)習(xí)游戲機理
強化學(xué)習(xí)有著堅實的數(shù)學(xué)基礎(chǔ),也有著成熟的算法,在機器人尋址、游戲智能、分析預(yù)測等領(lǐng)域有著很多應(yīng)用?,F(xiàn)有成熟算法有值迭代、策略迭代、Q-learning、動態(tài)規(guī)劃、時間差分等學(xué)習(xí)方法。
5.6 DRN
DRN是Google DeepMind在“Playing Atari with Deep Reinforcement Learning”中結(jié)合深度學(xué)習(xí)和強化學(xué)習(xí)形成的神經(jīng)網(wǎng)絡(luò)算法,旨在無需任何人類知識,采用同一算法就可以在多款游戲上從游戲白癡變成游戲高手。首先使用數(shù)據(jù)預(yù)處理方法,把128色的210*160的圖像處理成灰度的110*84的圖像,然后從中選出游戲畫面重要的84*84的圖像作為神經(jīng)網(wǎng)絡(luò)的輸入;接著使用CNN自動進行特征提取和體征表示,作為BP神經(jīng)網(wǎng)絡(luò)的輸入進行有監(jiān)督學(xué)習(xí),自動進行游戲策略的學(xué)習(xí)。
圖8 DRN游戲機理
5.7深度學(xué)習(xí)+強化學(xué)習(xí)+博弈樹
Google DeepMind的AlphaGo使用值網(wǎng)絡(luò)用來評價棋局形式,使用策略網(wǎng)絡(luò)用來選擇棋盤著法,使用蒙特卡洛樹用來預(yù)測和前瞻棋局,試圖沖破人類智能最后的堡壘。策略網(wǎng)絡(luò)使用有監(jiān)督學(xué)習(xí)訓(xùn)練+強化學(xué)習(xí)共同訓(xùn)練獲得,而值網(wǎng)絡(luò)僅使用強化學(xué)習(xí)訓(xùn)練獲得,通過這兩個網(wǎng)絡(luò)結(jié)構(gòu)總結(jié)人類經(jīng)驗,自主學(xué)習(xí)獲得對棋局的認(rèn)知;然后使用蒙特卡洛樹將已經(jīng)學(xué)得的知識應(yīng)用于棋局進行預(yù)測和評估,從而制定著法的選擇。
圖 9 AlphaGo的游戲機理
6總結(jié)
與模糊人類與機器的邊界不同,游戲人工智能更關(guān)注挑戰(zhàn)智力極限,表征是游戲戰(zhàn)勝人類最強者;與教導(dǎo)人類成為領(lǐng)域?qū)<也煌?,游戲人工智能更關(guān)注培育自學(xué)習(xí)能力的智能體,表征是無經(jīng)驗自主學(xué)習(xí);所以當(dāng)前最先進的兩個游戲引擎均使用了深度學(xué)習(xí)和強化學(xué)習(xí)兩方面的知識,旨在培育具有自學(xué)習(xí)能力的高智能個體。
當(dāng)前大家最關(guān)注的莫過于2016年3月AlphaGo與李世石的圍棋之戰(zhàn)。那么一旦圍棋戰(zhàn)勝李世石之后,是否表示機器已經(jīng)突破人類最后的堡壘呢?是否表示達到智能極限,游戲人工智能下一步的研究關(guān)注點又應(yīng)該是什么呢?我認(rèn)為機器即使戰(zhàn)勝李世石也沒有達到人類智能的極限,與記憶和速算一樣,搜索與前瞻的能力也不能代表人類智能,人類還有情感、有思想、能快速學(xué)習(xí)等等能力,所以AlphaGo即使戰(zhàn)勝李世石也只是在某個領(lǐng)域里面比人類更強而已;游戲人工智能不能使用圖靈測試、中文屋子來衡量人工智能的程度,因為人類在游戲(特別是棋類游戲)上的智能并不突出,因為人腦的復(fù)雜度有限,并不能計算游戲的最優(yōu)值,只是在能力范圍內(nèi)做出較優(yōu)的決策,所以我認(rèn)為“游戲人工智能的關(guān)注點應(yīng)該是:同一游戲引擎作為雙方對戰(zhàn),總是同一方(先手或后手)取勝,而且能夠戰(zhàn)勝人類最強者”。所以即使AlphaGo戰(zhàn)勝李世石,那么棋類智能仍有探索的空間:游戲的最優(yōu)值!
游戲是智能應(yīng)用最好的平臺,可惜的是:只用了少部分AI計算,還沒有用到智能的計算計
審核編輯 :李倩
-
人工智能
+關(guān)注
關(guān)注
1804文章
48449瀏覽量
245059 -
數(shù)據(jù)挖掘
+關(guān)注
關(guān)注
1文章
406瀏覽量
24573
原文標(biāo)題:人工智能與游戲
文章出處:【微信號:CloudBrain-TT,微信公眾號:云腦智庫】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
光峰科技任人工智能與智能制造專業(yè)委員會委員
廣電計量中標(biāo)廣州市人工智能與數(shù)據(jù)治理支撐項目
嵌入式和人工智能究竟是什么關(guān)系?
《AI for Science:人工智能驅(qū)動科學(xué)創(chuàng)新》第6章人AI與能源科學(xué)讀后感
AI for Science:人工智能驅(qū)動科學(xué)創(chuàng)新》第4章-AI與生命科學(xué)讀后感
《AI for Science:人工智能驅(qū)動科學(xué)創(chuàng)新》第一章人工智能驅(qū)動的科學(xué)創(chuàng)新學(xué)習(xí)心得
risc-v在人工智能圖像處理應(yīng)用前景分析
人工智能ai4s試讀申請
名單公布!【書籍評測活動NO.44】AI for Science:人工智能驅(qū)動科學(xué)創(chuàng)新
報名開啟!深圳(國際)通用人工智能大會將啟幕,國內(nèi)外大咖齊聚話AI
FPGA在人工智能中的應(yīng)用有哪些?
中國移動舉辦世界人工智能大會人工智能與教育論壇

評論