你好,歡迎來到川北在線
微信
騰訊微博
新浪微博
游戲行業(yè)的AI設(shè)計:人工智能的設(shè)計與實施
時間:2017-04-18 15:41   來源:GAD   責任編輯:毛青青

  在過去的幾十年中,游戲行業(yè)取得了巨大發(fā)展。 從《Pong》和《Pac-Man》等讓游戲玩家短暫逃離現(xiàn)實的簡單游戲發(fā)展為《魔獸世界》和《使命召喚》等讓游戲玩家真正喜愛的復(fù)雜游戲。娛樂軟件協(xié)會 (ESA) 曾指出,如今的游戲玩家平均有 13 年的游戲經(jīng)驗,已經(jīng)習慣于看到每款新游戲變得越來越復(fù)雜、吸引人且智能。

  如今,游戲開發(fā)人員的挑戰(zhàn)在于如何不斷突破極限,開發(fā)出越來越引人注目的游戲。 計算機控制的人工智能 (AI) 已經(jīng)發(fā)生了多種形式的演變,以滿足測試要求。 然而,為游戲玩家設(shè)計符合其動作并促進玩家數(shù)量增長的自適應(yīng)對手并非易事。

  第一部分: 設(shè)計和實施

  對于游戲行業(yè)而言,人工智能是什么?

  從最基本的層面而言,“人工智能”包括模仿其他玩家或玩家所代表實體(即可以響應(yīng)或付諸實踐的所有游戲元素——從玩家、飛彈到降皮卡)的行為。關(guān)鍵概念是模仿行為。也就是說,游戲行業(yè)的人工智能更加人工化,而智能程度較低。系統(tǒng)既可以是基于規(guī)則的簡單系統(tǒng),也可以是旨在挑戰(zhàn)玩家作為對立軍隊指揮官的復(fù)雜系統(tǒng)。

  游戲行業(yè)的人工智能與傳統(tǒng)的人工智能觀點有何不同

  對人工智能的傳統(tǒng)研究旨在創(chuàng)建真正的智能——盡管是通過人工手段。有些項目,如麻省理工學院 (MIT) 的Kismet項目,正在嘗試創(chuàng)建一種能夠進行學習、社交互動并表現(xiàn)情感的人工智能。 在本文撰寫之時,麻省理工學院正在創(chuàng)建一種有幼兒教師和可喜成果的人工智能。

  對于如今的游戲而言,真正的人工智能已經(jīng)超出了一款娛樂軟件的要求。游戲人工智能不需要具備感受力或自我感知能力(事實上沒有最好);它不需要了解除游戲之外的任何信息。游戲人工智能的真正目標是模仿智能行為,為玩家提供一種可信的挑戰(zhàn)——即玩家可以克服的挑戰(zhàn)。

  游戲人工智能的目標

  人工智能可以在游戲中扮演多種角色。它可以是一套用于管理游戲世界中實體行為的一般規(guī)則。您也可以考慮實體遵循一類人工智能的預(yù)制腳本事件。例如在游戲 F.E.A.R* 中, 用于恐嚇玩家和預(yù)示未來事件的令人毛骨悚然的小女孩就是一個預(yù)制腳本事件。提到人工智能和游戲時,大多數(shù)人都會想到多人游戲中由電腦控制的玩家。不過,所有這些都是人工智能能夠?qū)崿F(xiàn)的不同角色。

  F.E.A.R.(Vivendi Universal)在一類人工智能中使用腳本事件

  游戲人工智能的基本要素

  根據(jù)人工智能要實現(xiàn)的角色的性質(zhì),系統(tǒng)需求可能非常少。系統(tǒng)越復(fù)雜,人工智能的要求就越多;拘枨鬅o非是運行 AI 所需的處理時間。更復(fù)雜的系統(tǒng)需要一些感知人工智能環(huán)境的手段,玩家行為記錄和一些評估先前決策成功度的手段。

 ■策

  人工智能背后的核心概念是決策。為了執(zhí)行這些選擇,智能系統(tǒng)需要能夠使用人工智能系統(tǒng)影響實體。您可以通過“人工智能推送”或“實體推送”戰(zhàn)略管理這一執(zhí)行。

  人工智能推送系統(tǒng)通常將人工智能系統(tǒng)隔離為游戲架構(gòu)的獨立元素。此類戰(zhàn)略通常采取獨立線程或線程的形式,線程中的人工智能花時間計算給出游戲選項的 選擇。當人工智能制定決策時,這一決策將隨后傳播至涉及的實體。這一方法在實時戰(zhàn)略游戲中最有效,因為在這種游戲中,人工智能關(guān)注大局。

  實體推送系統(tǒng)最適合包含簡單實體的游戲。在這些游戲中,實體會在其“思考”或自我更新時調(diào)用人工智能系統(tǒng)。這種方法非常適合于包含大量不需要經(jīng)常思考的實體的系統(tǒng),如射手系統(tǒng)。這一系統(tǒng)還可以從多線程技術(shù)中受益,但需要一些額外的計劃(詳情請見Orion Granatir 的多線程人工智能上的文章)。

  基本感知

  為了使人工智能作出有意義的決策,它需要感知周圍環(huán)境的某種方式。在較簡單的系統(tǒng)中,這種感知可能只是對玩家實體的位置進行簡單的檢查。隨著系統(tǒng)的要求越來越苛刻,實體需要找出游戲世界的主要特點,如可行的穿行路徑、提供掩護的地形和沖突地區(qū)。

  設(shè)計人員和開發(fā)人員面臨的挑戰(zhàn)在于找出一種方法,以確定對智能系統(tǒng)至關(guān)重要的主要特點。例如,掩護可以由關(guān)卡設(shè)計師預(yù)先確定,或可以在加載或編譯地圖時進行預(yù)先計算。有些元素可以動態(tài)評估,如沖突地圖和緊迫威脅。

  基于規(guī)則的系統(tǒng)

  智能系統(tǒng)采用的最基本形式是基于規(guī)則的系統(tǒng)。這一系統(tǒng)延伸了“人工智能”這一術(shù)語。一組預(yù)設(shè)行為用于確定游戲?qū)嶓w的行為。對于各種行為,總體結(jié)果可以是一個雖然涉及的實際智能很少但并不明顯的行為系統(tǒng)。

  在基于規(guī)則的系統(tǒng)方面,Black Jack 莊家就是一個很好的例子(無論是視頻 Black Jack 還是真正的 Black Jack)。莊家遵循一個簡單規(guī)則:當牌點數(shù)為 17 或不到 17 時必須要牌。一般玩家的看法是莊家有競爭力。玩家會設(shè)想一個比其當前敵手更有能力的對手(除非賭抄營者公布莊家遵守的規(guī)則)。

  Pac-Man 是這一系統(tǒng)的典型應(yīng)用。 四個鬼糾纏著玩家。每個鬼都遵循一個簡單的規(guī)則集。一個鬼一直左轉(zhuǎn),另一個一直右轉(zhuǎn),一個以隨機方向轉(zhuǎn)彎,最后一個轉(zhuǎn)向玩家。每個鬼的移動方向很容易弄清楚,玩家能夠輕松避開他們。但作為一個集體,這些鬼的移動方式看起來就復(fù)雜的多,相互協(xié)調(diào)配合共同尋找玩家。事實上,檢查玩家位置的只有最后一個鬼。

 ∝制Pac-Man 鬼的規(guī)則集的直觀圖,其中的箭頭代表將作出的“決策”。

  正如本例所示,規(guī)則不需要硬編碼: 規(guī)則可以基于感知到的狀態(tài)(如最后一只鬼)或?qū)嶓w的可編輯參數(shù)。 進攻、勇氣、視線范圍和思考速度等變量均可以產(chǎn)生更多樣化的實體行為,即使是在基于規(guī)則的系統(tǒng)中。 基于規(guī)則的系統(tǒng)是最簡單的人工智能結(jié)構(gòu)。更復(fù)雜的智能系統(tǒng)基于一系列條件規(guī)則構(gòu)建并由這些規(guī)則管理。在戰(zhàn)術(shù)游戲中,規(guī)則控制著要使用的策略。在策略游戲中,規(guī)則控制著建造順序和應(yīng)對沖突的方式;谝(guī)則的系統(tǒng)是人工智能的基礎(chǔ)。

  有限狀態(tài)機作為人工智能

  有限狀態(tài)機 (FMS) 是一種概念化和實施在整個生命周期中擁有不同狀態(tài)的實體的方式。“狀態(tài)”可以代表實體所處的物理狀態(tài),或者也可以代表實體展示出的情感狀態(tài)。在本例中,情感狀態(tài)并不是真正人工智能的情感狀態(tài),而是融入游戲環(huán)境的預(yù)定行為模型。

  下面是一個人工智能系統(tǒng)的常見狀態(tài)示例,針對一個包含隱性元素的游戲:

  典型 FSM 中的狀態(tài)布局,其中的箭頭表示可能的狀態(tài)變化

  閑置。在這種狀態(tài)下,實體會被動地站著或沿固定路線走動。感知水平低。不常檢查游戲玩家的聲音。只有這一實體受到攻擊或“看到”玩家直接在其前面時,它的狀態(tài)才會更改為較高的認知水平。

  感知。這一實體主動尋找入侵者。它會經(jīng)常檢查游戲玩家的聲音,比閑置實體看得更遠更寬泛。如果這一實體注意到礙事的某物(在其檢查范圍之內(nèi)),如打開的門、無意識的尸體和用過的彈殼等,它將變?yōu)楹闷鏍顟B(tài)。

  好奇。這一實體意識到發(fā)生了不尋常的事情。為了證實這一行為,該實體將放棄其正常崗位或路線,移動到感興趣的區(qū)域,如前面提到的打開的門或尸體。 如果玩家被發(fā)現(xiàn),實體將變?yōu)榫錉顟B(tài)。

 ’戒。在這種狀態(tài)下,實體已經(jīng)注意到玩家并將開展追捕玩家的行動:移入攻擊范圍、提醒其他警衛(wèi)、發(fā)出警報并尋找掩護。當實體在敵人范圍內(nèi)時,它將切換到攻擊狀態(tài)。

  攻擊。在這種狀態(tài)下,敵人已經(jīng)參與到與玩家的戰(zhàn)斗中來。 實體會在可能時攻擊玩家,并在不同的攻擊回合之間尋找掩護(根據(jù)攻擊緩和時間或裝彈時間)。只有在消滅敵人后(恢復(fù)正常)、敵人移動到射程之外(回到警戒階段)或?qū)嶓w死亡(進入死亡狀態(tài))時,實體才會離開這個狀態(tài)。 如果實體的生命值很低,它可以切換為逃跑狀態(tài),這撒于特定實體的膽量。

  逃跑。在這種狀況下,實體會試圖逃離戰(zhàn)斗。根據(jù)游戲的不同,可能會有尋找生命值或離開游戲區(qū)域的次級目標。 當實體找到生命值后,它可能會返回到警戒狀態(tài)并恢復(fù)戰(zhàn)斗力。 “離開”的實體只是刪除了而已。

  死亡。在有些游戲中,死亡狀態(tài)可能不是完全閑置。死亡或瀕死的實體可能會“大聲呼叫”,從而提醒附近的實體,或進入神志不清的狀態(tài),醫(yī)師可使其復(fù)活(并返回到警戒狀態(tài))。

  在實體系統(tǒng)中實施 FMS 至少有兩種簡單方法。第一種是讓每種狀態(tài)成為一種可以檢查的變量(通常通過大量的開關(guān)語句)。第二種方法是使用函數(shù)指針(C 語言)或虛擬函數(shù)(C++ 和其他面向?qū)ο蟮恼Z言)。

  自適應(yīng)人工智能

  前面的章節(jié)討論了如何設(shè)計融入游戲預(yù)定義事件的智能系統(tǒng)。 對于大多數(shù)游戲而言,只要設(shè)計縝密且對智能實體的目標有清晰的認識,這就足夠了。如果游戲需要更多的變化并為玩家提供更好、更有活力的對手,人工智能可能需要具備增長和獨自適應(yīng)的能力。

  自適應(yīng)人工智能通常用于格斗游戲和策略游戲,這些游戲具有深層次的機制和無數(shù)的游戲選項。若要為玩家提供持續(xù)的挑戰(zhàn)且避免玩家最終找出打敗電腦的 策略,人工智能需要具備學習和適應(yīng)的能力。

  預(yù)測

  有效預(yù)測對手下一步行動的能力對于自適應(yīng)系統(tǒng)至關(guān)重要。可以使用不同的方法,如過去模式識別(在未來的文章中介紹)或隨機猜測,以確定要采取的下一步行動。

  適應(yīng)的一個基本方法是記錄過去的決策并評估成功程度。人工智能系統(tǒng)會記錄一個游戲玩家在過去所做的選擇。過去的決策必須以某種方式進行評估。 (如在格斗游戲中,獲得的優(yōu)勢或損失的生命值或時間優(yōu)勢可以作為成功的衡量指標。) 可以通過收集有關(guān)這種情況的更多信息來為決策提供一些背景,如相對生命值、以前的行為和關(guān)卡定位(當玩家走投無路時會采用不同的游戲方式)。

 ∩以通過評估這些歷史信息來確定以前行為的成功程度以及是否需要改變戰(zhàn)術(shù)。在構(gòu)建過去行為列表之前,可以使用一般戰(zhàn)術(shù)或隨機行為來引導(dǎo)實體的行為。這一系統(tǒng)可以與基于規(guī)則的系統(tǒng)和不同的狀態(tài)相結(jié)合。

  在戰(zhàn)術(shù)游戲中,過去的歷史可以決定用于對付玩家團隊的 戰(zhàn)術(shù),如防守、進攻、狂暴或一些平衡的游戲方法。在策略游戲中,可以基于玩家發(fā)現(xiàn)一個部隊中 的分隊組合。在由人工智能控制玩家支持角色的游戲中,通過了解玩家的行為方式,自適應(yīng)人工智能可以更好地補充玩家的自然風格。

  總結(jié)

  人工智能是一個復(fù)雜的研究領(lǐng)域。根據(jù)游戲需求的不同,游戲行業(yè)的人工智能會采用不同的形式,從計算機控制器實體的簡單規(guī)則集到更先進的自適應(yīng)系統(tǒng)。在游戲行業(yè)中應(yīng)用人工智能概念對于提高電子娛樂產(chǎn)品中虛擬人物的可信度必不可少,但它并不是一個不可能的挑戰(zhàn)。

   投稿郵箱:chuanbeiol@163.com   詳情請訪問川北在線:http://dstuf.com/

川北在線-川北全搜索版權(quán)與免責聲明
①凡注明"來源:XXX(非在線)"的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責,本網(wǎng)不承擔此類稿件侵權(quán)行為的連帶責任。
②本站所載之信息僅為網(wǎng)民提供參考之用,不構(gòu)成任何投資建議,文章觀點不代表本站立場,其真實性由作者或稿源方負責,本站信息接受廣大網(wǎng)民的監(jiān)督、投訴、批評。
③本站轉(zhuǎn)載純粹出于為網(wǎng)民傳遞更多信息之目的,本站不原創(chuàng)、不存儲視頻,所有視頻均分享自其他視頻分享網(wǎng)站,如涉及到您的版權(quán)問題,請與本網(wǎng)聯(lián)系,我站將及時進行刪除處理。



圖庫
合作媒體
金寵物 綠植迷 女邦網(wǎng) IT人
法律顧問:ITLAW-莊毅雄律師