Youichiro Miyake:數(shù)字游戲世界中角色的覺醒與意識
作者:Joni      更新:2017-03-06 16:45      字數(shù):3687
    2 月 16 日,星期四,我參加了在東京舉辦的第五屆意識俱樂部 (consciousness club)。這是一個由 Araya 腦成像公司 (Araya Brain Imaging) 的 CEO Ryota Ka* 博士組織的每周活動,這次的演講嘉賓是 Youichiro Miyake。他是一個因為在游戲人工智能(Game AI)方面的工作而聞名的設計師,曾提出在游戲人工智能和其他先進系統(tǒng)中創(chuàng)造人工意識的初始概念。

    以下是 Youichiro Miyake 的演講摘要:

    視頻游戲中的角色處在具有許多物體、復雜環(huán)境以及其他角色的 3D 環(huán)境中。自從家庭計算機 (FC) 和超級家庭計算機 (NES 1983、SNES 1990、以及任天堂) 時代以來,游戲角色是受游戲設計師所寫的腳本程序控制的,這使得游戲角色成為游戲中的演員。這被稱為「腳本化人工智能 (scripted AI)」。然而,隨著游戲關卡設計變得越來越復雜,腳本化人工智能的方法已經(jīng)不能適應這么復雜的情況了。3D 游戲的一個轉(zhuǎn)折點是索尼互動娛樂 (SIE) 公司在 1994 年推出的 PlayStation。在擁有 3D 環(huán)境的游戲中,需要采用人工智能技術來建立深層次的游戲角色的人工智能。在 3D 的層面,游戲角色將是具有自主性角色,使其能夠感知游戲世界的許多不同方面,做出決策,并且依靠自身采取實時的行動。游戲角色解決了它周圍的本地問題,發(fā)揮了作用。游戲角色不僅感知周圍的環(huán)境,還要感受它的身體和心靈。因而,游戲角色的意識模型在游戲行業(yè)中已經(jīng)被研究了多年。

    這一研究的歷史從 2000 年麻省理工媒體實驗室性格合成組 (MIT,Media Lab, Synthetic Group) 的心理模型 (Mind Model) 開始。這個模型已經(jīng)在許多不同主題的游戲角色中經(jīng)歷了多次演化。游戲角色的 AI 基礎就是機器人的代理結構。它包括三個部分:認知模塊、決策模塊以及行動模塊。隨著信息流入一個角色的心靈,它們被分析轉(zhuǎn)化成 AI 結構中的新知識。通過使用這些知識,決策模塊做出決策,行動模塊形成角色的動作以執(zhí)行這個決策。結合環(huán)境和人工智能代理 (agent),這個循環(huán)就形成了角色的心靈活動。通過這些模塊的流動和改變之后,信息就被存儲在了記憶中,因此角色的人工智能就被描述成了類似于信息的化學反應一樣的東西。數(shù)字游戲是測試意識模型的合適領域。許多關于意識的模型已經(jīng)被提出和在試驗當中。在本次研討會中,介紹了一些很多游戲角色意識模型及其結果。

    演講人簡介

    Youichiro Miyake 在參與視頻游戲主題開發(fā)的同時,還作為主要研究人員在 Square Enix(一家游戲開發(fā)公司)進行游戲人工智能技術的研究。他為很多游戲項目設計并開發(fā)了人工智能。他在大學和游戲開發(fā)者會議上做過很多次講座。此外,他是人工智能特殊利益集團 (SIGAI) 在國際游戲開發(fā)商協(xié)會 (IGDA) 日本分會的主席。他也是日本數(shù)字游戲研究協(xié)會和科學藝術協(xié)會的董事。他在 2016 年出版了 3 本日語專著:「人工智能的哲學故事 (Stories on Philosophy for Artificial Intelligence)」,「人工智能圖畫書 (Artificial Intelligence pictures book)」以及「制作游戲人工智能的方法 (Making a game AI method)」。

    游戲及其他人工智能系統(tǒng)的設計哲學

    關于人工智能的演講話題是基于最終幻想 15(FFXV)的設計示例展開的,但是讀者可以參考其他游戲系統(tǒng)。首先,Miyake 在游戲系統(tǒng)中介紹了人工智能的一般設計理念。

    第一個問題:人工智能在游戲中意味著什么?

    他定義了游戲中的人工智能就是通過角色的身體區(qū)感知來自環(huán)境的反饋,并通過游戲環(huán)境互動控制運動。通過這種方式,環(huán)境和角色的身體形成了一個反饋回路 (如下圖所示)。從這一點講,它和體現(xiàn)智能的具身性觀點是類似的。

    這就是為什么說隨著 3D 游戲的發(fā)展,其中的人工智能系統(tǒng)較之于 2D 游戲而言,也發(fā)生了很大的變化的原因。

    最終幻想 15(FF XV) 中的人工智能系統(tǒng)有三個子部分。我們將逐個作介紹:

    1. 元人工智能

    2. 角色人工智能

    3. 導航人工智能

    元人工智能

    在之前沒有元人工智能的游戲系統(tǒng)中,從根本上來說,代理 (agent) 上實現(xiàn)的單個的人工智能與通用游戲策略之間最大的問題,就是每一個角色的行動是由人工智能圖形編輯器 (AI Graph Editor) 在意識到每個情形和周圍環(huán)境,并考慮了下一步應該做什么之后自動決定的。然而,基于設計通用策略時的情況,角色有時候因為一個特定的事件需要集合在一起,或者需要以協(xié)作的方式執(zhí)行一個特殊的行動。在這種情況下,需要一個通用的指揮者。

    因此,最終幻想 15(FF XV) 中開發(fā)了統(tǒng)治游戲環(huán)境和進展的元人工智能 (Meta AI)。它就像整個人工智能系統(tǒng)的指揮者一樣控制著為敵人和非玩家角色 (NPCs) 設計的通用策略。元人工智能 (Mata AI) 的一個重要任務就是以一個集中的方式去協(xié)調(diào)代理 (agent) 的策略。因此它限制了團隊成員與玩家之間的許多互助。

    分配給元人工智能 (Meta-AI) 的任務是很多很廣的,所以它的策略由分離的互聯(lián)元素組成的不同狀態(tài) (level) 控制,這些分離的互聯(lián)元素包括實現(xiàn)任務管理的分層結構,過渡并合并一些功能以創(chuàng)建智能系統(tǒng),以及具體區(qū)域的不同元素之間的交流。

    在最終幻想 15 中,這些狀態(tài)包括:

    地圖和角色的位置

    事件定位,管理

    游戲均衡設置

    如圖所示,根據(jù)計算求出理想情況下敵人的數(shù)量,玩家的強度以及實際出現(xiàn)的敵人數(shù)量,這些是關鍵參數(shù)。

    具體分為四個狀態(tài):

    積累 (build up):讓敵人一直出現(xiàn),直到超過玩家緊張度的目標值;

    維持峰值 (sustain peak):為了讓玩家的緊張度維持 3 到 5 秒,維持敵人的數(shù)量;

    峰值衰減 (peak fade):把敵人的數(shù)目朝著最小限度減少;

    放松 (relax):維持最小數(shù)量的敵人數(shù)目 30 到 45 秒,以讓玩家放松。

    一個游戲人工智能的例子

    狀態(tài)機表示元人工智能是如何控制敵人數(shù)量和刷新頻率的。元人工智能對敵人數(shù)量的控制分為四個狀態(tài):積累 (build up),維持峰值 (sustain peak),峰值衰減 (peak fade),以及放松 (relax)。狀態(tài)變化的輸入?yún)?shù)可能包括玩家殺死的敵人數(shù)量、玩家的位置和時間間隔等。所以,從玩家的角度來看,貌似敵人每隔一段時間就會出現(xiàn),并且敵人的強度與玩家的作戰(zhàn)能力、游戲難度也有關系。

    角色人工智能

    角色人工智能 (character AI) 控制著訪客和非玩家角色 (NPCs) 的個體策略。對于角色人工智能 (Character AI) 而言,一個主要的任務就是在響應不同情況的時候在人工智能和角色之間進行協(xié)調(diào)。從主要團體成員到各地的非玩家角色,最終幻想 15(FF XV) 中的不同組別的非玩家角色都有不同水平和風格的人工智能。角色人工智能所做的基本上可解決每一個代理的決策問題。有不同的模型可以解決這個問題,但對于角色人工智能,在游戲設計界有如下 7 個簡單的算法:基于規(guī)則的人工智能,基于狀態(tài)的人工智能,基于行為的人工智能,基于目標的人工智能,基于任務的人工智能,基于效率的人工智能,以及基于模擬的人工智能。

    在最終幻想 15(FF XV ) 中,我們利用了兩種開發(fā)角色人工智能的方式:開發(fā)人員利用兩種針對人工智能的標準「經(jīng)典」設計作為參考:圍繞適應和決策的行為模型,和基于環(huán)境決策的狀態(tài)模型。這個最終幻想 15(FF XV) 的人工智能系統(tǒng)由自開發(fā)的「人工智能圖」系統(tǒng)實現(xiàn),它表示一個人工智能的多層結構。

    角色人工智能是一種結合行為樹和狀態(tài)機的混合方法。其中狀態(tài)機負責協(xié)調(diào)一般狀態(tài)的轉(zhuǎn)換,行為樹指定特定情況下的每種行為。所以,最終幻想 15(FF XV) 中的角色人工智能是以層狀托盤的方式形成的。

    包含一個行為樹和狀態(tài)機的混合模型

    一組結點以托盤的形式被管理

    分層的結構

    在混合模型中,狀態(tài)機的狀態(tài)是由關卡設計者考慮的動作,以使玩家運用通用術語來命令人工智能。它還由在運動單位中設置的行為樹模式組成。例如,如果角色選擇戰(zhàn)斗,它會有幾種行為可供選擇:

    移動:移動到指定位置

    引導:指導玩家

    襲擊:襲擊敵人

    空閑:讓角色處于空閑狀態(tài)

    在游戲中,關卡設計師只需考慮一些命令,切換到所需的模式,其余的可交由人工智能輕松處理。此外,在這些角色人工智能系統(tǒng)中,被期望的元素不僅是關卡設計者對人工智能動作改變的容易性和靈活性,而且還要允許人工智能規(guī)劃者有效地對每個人工智能角色進行編輯以及做出動作。在大規(guī)模的最終幻想 15(FF XV) 世界中移動的所有角色都在人工智能上運行。他們希望的是一個真正讓他們有效地制作這些不同種類人工智能的系統(tǒng)。

    導航人工智能

    最后,導航人工智能決定諸如角色和敵人這類移動元素的最佳路線和模式。最終幻想 15 中導航人工智能系統(tǒng)的兩大主要元素是點查詢系統(tǒng) (PQS) 和轉(zhuǎn)向系統(tǒng)。

    點查詢系統(tǒng) (PQS) 建立路徑的方法是這樣的:它在一些重要點周圍構建點陣,并且圍繞一些特定情況濾除一些點,以使得代理能夠被引向最佳點的路徑。PQS 主要涉及對人工對手的控制以便遵循跑道上的最佳路徑,并且可以并入更高級別的計劃以便成功地導航這一過程。

    如下圖所示是點查詢系統(tǒng)。

    轉(zhuǎn)向系統(tǒng)根據(jù)感知引導運動。例如,合適的非玩家角色 (NPC) 經(jīng)常需要避開障礙物的能力。導航期間的一個轉(zhuǎn)向行為允許代理 (agent) 向前看,跟隨目標并避開障礙。

    結論

    最后,為了與意識俱樂部的主要目標保持一致,Miyake 也表示他愿意在游戲人工智能系統(tǒng)中開發(fā)人工意識。并且,他還支持這樣的觀點,隨著游戲環(huán)境和角色的發(fā)展,將來可能需要更復雜的人工智能系統(tǒng)。

    一些想法:

    作為一個早期的游戲迷和現(xiàn)在的人工智能研究員,我確實從這個演講中感到一點驚訝,一個包含著簡單但是優(yōu)雅的規(guī)則的精密人工智能系統(tǒng)如何發(fā)展成一個復雜的游戲中。你可以從前面的幾張圖片推斷,實際上最終幻想 15(FF XV) 的游戲人工智能并沒有涉及復雜的機器學習。例如,也許敵人的強弱是由你殺死的人來決定的,但實際上這是預先定義好的。我認為這與一個事實有關:當下游戲平臺是如此的受限,以至于根本就沒有必要去學習復雜的場景和對象。在我看來,以下的方向可能學術界和產(chǎn)業(yè)界都比較感興趣:

    1. 設計不同水平的游戲人工智能會讓開發(fā)人員付出很多努力。那么,能否像現(xiàn)在的游戲引擎一樣,設計一個通用游戲人工智能系統(tǒng)能達到重用的效果?

    2. 有沒有必要在游戲人工智能系統(tǒng)中實現(xiàn)當前的一些機器學習技術?

    本文為機器之心原創(chuàng),作者:Joni,編譯參與:馬亞雄、黃小天。