游戲開發(fā)中的人工智能1_第1頁
游戲開發(fā)中的人工智能1_第2頁
游戲開發(fā)中的人工智能1_第3頁
游戲開發(fā)中的人工智能1_第4頁
游戲開發(fā)中的人工智能1_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

游戲開發(fā)中的人工智能--------簡介參考書人工智能游戲編程真言(美)SteveRabin游戲人工智能編程案例精粹(美)MatBuckland

現(xiàn)代電腦游戲簡介游戲AI定義定性與非定性AI目前或?qū)砼c游戲關(guān)系密切的AI技術(shù)現(xiàn)有的游戲AI技術(shù)游戲AI的未來一、游戲人工智能(AI)簡介現(xiàn)代電腦游戲簡介電子游戲從1971年誕生以來,越來越受到人們的喜愛。隨著現(xiàn)代計算機、網(wǎng)絡(luò)、虛擬現(xiàn)實、人工智能等技術(shù)的發(fā)展,游戲的擬人化越來越逼真。高度的擬人化使得現(xiàn)代電腦游戲能夠模仿人類社會中的各種情形,并把這些情形通過視覺、聽覺、甚至觸覺等多種感官反映到人的大腦,從而對人們的現(xiàn)實生活產(chǎn)生巨大沖擊?;谟螒蛑械倪@些反映人類社會的情形不同和游戲表示的方式不同,可以把電子游戲分為幾大類別:縱向卷軸和橫向卷軸類、棋牌邏輯類、文字冒險類、圖形冒險類、模擬類、戰(zhàn)略類、第一或第三人稱射擊類和角色扮演類。無論游戲?qū)儆诤畏N類別,游戲玩家都希望在游戲中能夠體驗到現(xiàn)實中無法體驗到的刺激,得到現(xiàn)實中無法得到的滿足。這些刺激和滿足主要表現(xiàn)在特定的挑戰(zhàn)、社會化、吹噓與幻想、情感等方面。游戲的開發(fā)過程構(gòu)想階段是游戲開發(fā)中最為重要的階段。一個好的游戲背景故事是整個游戲成功的一半。在準(zhǔn)備好游戲故事之后,就需要考慮游戲采用何種游戲類型,并把游戲故事分割成幕(Act),改編為游戲劇本(Gameplay)。在總體設(shè)計階段,要考慮每個幕中的角色和規(guī)則,同時也要考慮相關(guān)的技術(shù)問題。比如,游戲?qū)⒉捎煤畏N技術(shù)、準(zhǔn)備運行在什么平臺上等。在細(xì)節(jié)設(shè)計階段,要對每一幕中的焦點(Focus)進行設(shè)計,對每一幕的效果產(chǎn)生效果圖,選擇合適的音樂匹配到各個場景,設(shè)計各個角色和場景的細(xì)節(jié)。最后是建設(shè)階段。開發(fā)者要采用選定的技術(shù)對游戲進行開發(fā)。游戲制作包括編程和觸發(fā)器的制作。最后要進行游戲測試。游戲AI游戲AI包含在游戲的各個方面,從簡單的追逐和閃躲,到移動模式以及神經(jīng)網(wǎng)絡(luò)和移動算法。游戲AI可以看作是眾多專業(yè)子問題的集合,包括路徑搜索、操縱、群聚、部署、戰(zhàn)術(shù)、戰(zhàn)略規(guī)劃、資源分配、武器使用、目標(biāo)選擇、協(xié)調(diào)、模擬感知、場景分析、空間推理、基于環(huán)境的動作等。游戲AI比較偏向于“弱勢AI”(weakAI)。使用AI讓NPC(nonplayercharacter)表現(xiàn)出不同的人格特征或情緒、脾氣,給人以某種智能程度的“錯覺”,讓游戲更令人沉迷、更有挑戰(zhàn)性、更好玩。游戲AI一個游戲中人工智能的成功與否在很大程度上取決于開發(fā)人員對它的重視程度。此外硬件水平也嚴(yán)重制約了游戲中人工智能的發(fā)展。另外,游戲開發(fā)團隊對該領(lǐng)域認(rèn)識上得欠缺,即對開發(fā)智能模塊的挑戰(zhàn)性認(rèn)識不足或?qū)夹g(shù)的理解不足,也將導(dǎo)致開發(fā)失敗。游戲AI系統(tǒng)的工作機理

AI系統(tǒng)通過感知輸入子系統(tǒng)用于感知周圍的世界,并用這些信息作進一步的推理和分析。如在實時戰(zhàn)略游戲中,需要感知的數(shù)據(jù)包括每個子區(qū)域的軍事力量平衡、當(dāng)前戰(zhàn)術(shù)能力的狀態(tài)、地形信息以及各種軍隊的基本類型和建制,如步兵,騎兵等。

記憶存儲子系統(tǒng)負(fù)責(zé)將所有感知的信息、數(shù)據(jù)和知識等,以合適的方式在計算機內(nèi)表達和存儲。如游戲中各個智能體的位置、朝向、軍事力量的平衡、各種路徑信息等。分析推理子系統(tǒng)是AI系統(tǒng)的核心,它通過對感知到的數(shù)據(jù)與存儲記憶體中的知識分析比較,作出一個合理的決策,并采用排序確定最佳的決策次序。如在戰(zhàn)略游戲中,計算機角色一般會根據(jù)戰(zhàn)略情況依次選擇就近攻擊原則、最弱對象攻擊原則和最大攻擊力原則,即電腦角色會先向距離自己最近的對手攻擊,再向最弱的對象攻擊,一量選中目標(biāo),則會使用最大攻擊力去攻擊。決策行為輸出子系統(tǒng)主要負(fù)責(zé)把計算機做出的各種決策和行為,作用到游戲世界中的人物角色上。在游戲開發(fā)中,人工智能最終都要通過各種動作、行為和反應(yīng)表現(xiàn)出來,這樣玩家在游戲中才能實實在在地感受真實的智能。

游戲人工智能的目的和功能游戲人工智能的目的提高游戲的可玩性提高游戲的真實性提高游戲的趣味性提高游戲的人機對抗性游戲人工智能的功能為玩家提供適合的挑戰(zhàn)使玩家處于亢奮狀態(tài)提供不可預(yù)知性結(jié)果幫助完成游戲的故事情節(jié)創(chuàng)造一個生動的世界游戲AI的目標(biāo)游戲的可玩性很大程度上與游戲的平衡性相關(guān),玩家的對手通常就是計算機控制的角色,這些角色設(shè)計得太容易或太難對付都容易使玩家失去興趣。由于游戲AI本身與游戲的主體捆綁在一起,玩家和游戲AI之間天生出于不平等地位,使得在游戲中采用何種AI技術(shù),達到何種程度的AI就成為維持游戲平衡性的關(guān)鍵,也是游戲開發(fā)團隊所關(guān)注的關(guān)鍵問題之一?;陔娔X游戲的圖靈實驗

基于電腦游戲的圖靈實驗人們在娛樂電腦游戲的時候,往往希望游戲中的其他角色能夠擁有某些程度上的智能。這些智能可以使得人們能夠在玩游戲的同時得到滿足。然而,這種智能必須得到控制。如果游戲中的機器角色的智能明顯高于玩家的能力,使得玩家對勝利喪失信心,那么玩家會放棄這樣的游戲。所以,人工愚蠢(ArtificialStupidity)技術(shù)也是必不可少的。在游戲中,太強或太弱的人工智能都是不合適的。那何種程度的人工智能才是合適的呢?回答這個問題首先要考慮怎樣的機器可以算作智能機器。圖靈曾經(jīng)提出了“圖靈實驗”的概念。他認(rèn)為能夠通過圖靈實驗的機器是具有智能的。其實,在游戲中也是一樣的?!皥D靈實驗”在游戲中可以這樣描述:當(dāng)玩家和其他玩家同諸多機器在同時游戲時,如果這個玩家通過游戲規(guī)則中的任何方式都無法分辨游戲中的其他角色哪個是其他玩家,哪個是機器的線程,那么我們可以說這個游戲通過了“游戲中的圖靈測試”。一般來說,通過了“游戲中的圖靈測試”的游戲是最適合玩家娛樂的。游戲人工智能的分類游戲人工智能的類型按照功能分為:漫游AI行為AI策略AI也可分為個體智能系統(tǒng)和群體智能系統(tǒng)游戲人工智能的類型按照表現(xiàn)分為:定性AI非定性AI個體智能系統(tǒng)和群體智能系統(tǒng)電腦游戲中的人工智能從功能上可分為個體智能系統(tǒng)和群體智能系統(tǒng)。個體智能系統(tǒng)主要控制游戲世界中虛擬人物的活動,它們在游戲中充當(dāng)非玩家的各種角色,包括玩家的敵人、合作伙伴和其它人物角色等。對于這些類型的實體,要想比較真實地對它們進行模擬,必須通過人工智能控制它們的行為符合它們各自特定的身份。群體智能系統(tǒng)則主要為某個系統(tǒng)的多個個體或者環(huán)境活動提供控制和輔助決策。例如,戰(zhàn)略游戲中的戰(zhàn)斗形勢判斷、整個戰(zhàn)斗策略推理、各個戰(zhàn)斗部隊調(diào)動等。

定性與非定性AI定性AI的表現(xiàn)是特定的,而且可預(yù)測,沒有不確定性。實例:簡單的追逐算法定性AI技術(shù)是游戲AI的基礎(chǔ)。優(yōu)點:其結(jié)果是可預(yù)測的,效率高,易實現(xiàn)、理解、測試和調(diào)試。缺點:開發(fā)者需要預(yù)先考慮各種場景,明確寫出所有行為;無法幫助NPC學(xué)習(xí)或演化,玩家玩過一段時間就可以預(yù)測NPC的定性行為。定性與非定性AI非定性AI有某種程度的不確定性和不可預(yù)測性(不確定的程度與所采用的AI方法的理解的難易程度有關(guān))。實例:NPC學(xué)習(xí)玩家的作戰(zhàn)戰(zhàn)術(shù)。非定性AI優(yōu)點:能促進學(xué)習(xí),讓玩家在玩游戲時難以預(yù)測;開發(fā)者無需事先預(yù)想所有可能的場景,以及寫下所有確定的行為。缺點:很難測試和調(diào)試;開發(fā)者把注意力放在圖像的質(zhì)量上以及游戲的開發(fā)周期不斷縮短使得使用AI,特別是非定性AI技術(shù)變得更加困難。實現(xiàn)人工智能的關(guān)鍵虛擬現(xiàn)實與擬人化動畫效果與機器角色場景感知機器角色的機器學(xué)習(xí)和進化玩家與機器角色之間的平衡性人工愚蠢技術(shù)確定性人工智能技術(shù)與非確定性人工智能技術(shù)的互補。游戲AI的設(shè)計原則

游戲AI設(shè)計主要解決游戲中具有挑戰(zhàn)性的問題,如模擬某個角色的行為、軍隊找路、進攻和防御、建筑布置、危險估計、地形分析等。這些行為具有人類的特征,在設(shè)計時,應(yīng)遵循以下原則。

1.基于個人體驗進行漸進式的設(shè)計

在設(shè)計游戲AI時,應(yīng)根據(jù)自己玩游戲的想法去初步設(shè)計出游戲人物的各種決策和行為,并實現(xiàn)一個大致可以運行的系統(tǒng),然后讓游戲角色和玩家對抗,并通過不斷重復(fù)以下步驟完善游戲AI:

游戲角色做了什么“蠢事”?如果是人會怎樣做?是哪些信息使電腦角色做了這些“蠢事”?重新設(shè)計游戲AI。

通過這樣不斷嘗試和反復(fù)修改,使游戲AI具有相當(dāng)?shù)恼鎸嵭院妥匀恍浴?/p>

游戲AI的設(shè)計原則

2.使游戲AI具有靈活性和開放性。

如在戰(zhàn)略游戲中,當(dāng)游戲角色進攻敵人時,會采用以下規(guī)則:

若只有一名可以攻擊到的敵人,則目標(biāo)就是它;

若有數(shù)名可以攻擊到的敵人,那么選擇最弱的一種;

攻擊后,考慮到會陷入多少敵人的攻擊范圍中;

游戲AI能根據(jù)不同游戲角色的個性對上述規(guī)則排序,確定決策行為。如游戲角色的攻擊力很強,那么四條規(guī)則的排序為:B>A>D;如果為了避免遭到敵人的圍攻,則規(guī)則就成為:D>B>A。因為如果攻擊后即使將敵人擊斃,也會在下一回合被其他的敵人圍攻,這樣應(yīng)不會作出進攻的決定。游戲AI的設(shè)計原則

3.平衡性

平衡性包括真實性和娛樂性之間的平衡、挑戰(zhàn)性和娛樂性之間的平衡。

首先,游戲AI需要真實,玩家在游戲中的一舉一動都希望盡可能地貼近現(xiàn)實生活。例如,籃球運動中如果進攻隊員受到嚴(yán)密的防守,可能會由于生氣而出現(xiàn)進攻動作較大甚至進攻范規(guī)。只要“真實”比賽有的,就必須在游戲中出現(xiàn)。

另外,游戲AI需要在挑戰(zhàn)性和娛樂性之間找到平衡,因為有相當(dāng)一部分玩家是為了放松而玩游戲。玩家在玩游戲時,也希望面對的AI行為也會像人一樣犯錯誤,如把武器掉在地上,射擊時沒有打中目標(biāo)等,從而降低這類游戲的挑戰(zhàn)性,使玩家得到更多的樂趣。如果游戲角色具有很強的AI而不會出現(xiàn)任何失誤,就會使玩家失去玩游戲的興趣。游戲AI的設(shè)計原則

4.區(qū)分個體智能和群體智能。

游戲AI應(yīng)能合理地區(qū)分個體智能和群體智能。如在足球游戲中,當(dāng)球隊進攻時,對于有球隊員來說,它在每一瞬間是帶球突破,還是射門,還是傳球,都會受到游戲AI的控制。如果游戲開發(fā)時只注重個體AI,則隊員不會傳球,則在一定程度上會失去群體運動的意義。而合理的情況應(yīng)是每個球員能較為聰明合理地分析球場上瞬息萬變的賽況,通過不斷分析,并迅速地調(diào)整它的行為而得以使比賽向更有利的方向發(fā)展。群體運動游戲更注重群體智能的開發(fā),它賦于游戲人物在不同場景和不同群體的情況下的總體思考能力。游戲AI的設(shè)計原則

5.簡潔性

游戲AI的簡潔性是指用盡量少的資源去造成游戲智力水平高超的假象。游戲AI在實現(xiàn)時,算法越復(fù)雜,計算越多,處理器的壓力就會越大,從而會降低游戲中動畫幀的刷新頻率,并拖累AI的活力和整個游戲的吸引力。因此,在游戲的設(shè)計和實現(xiàn)上,可針對不同類型的游戲人物,分別采用不同的技術(shù)路線模擬。對于行為簡單的游戲角色,可使用簡單的確定性AI技術(shù);對于需要一點智能行為的次要角色,可以對其設(shè)定幾種模式,并加上一點隨機的因素擾動即可;對于比較重要的角色,可以使用有限狀態(tài)機技術(shù),并借助條件邏輯、概率、以及狀態(tài)回溯等技術(shù)控制狀態(tài)的遷移;只有對最重要的游戲人物,才需要利用一切可以利用的AI技術(shù)。目前或?qū)砼c游戲關(guān)系密切的AI技術(shù)專家系統(tǒng):一個專家系統(tǒng)代表了專家在某一知識庫范圍內(nèi)的專業(yè)知識和技能,并能夠基于該知識庫進行自動推理從而回答用戶的查詢。這樣的系統(tǒng)能夠提供接近于專家所能給出的專業(yè)意見?;诜独耐评恚悍治鰯?shù)據(jù)庫中存放的(歷史)輸入數(shù)據(jù)和相應(yīng)的最優(yōu)輸出結(jié)果,然后通過對比現(xiàn)有輸入數(shù)據(jù)和歷史數(shù)據(jù)來推算輸出結(jié)果。有限狀態(tài)機:一種簡單的基于規(guī)則的系統(tǒng)。它包含了有限個“狀態(tài)”和狀態(tài)之間的“轉(zhuǎn)移”。彼此連接成一個有向圖。有限狀態(tài)機某一個時刻都只能處于某一狀態(tài)。產(chǎn)生式系統(tǒng):該系統(tǒng)包含一個規(guī)則數(shù)據(jù)庫。每條規(guī)則含有一條具有任意復(fù)雜度的條件語句,以及若干滿足該條件語句后所需執(zhí)行的動作。本質(zhì)上是許多條if-then語句,加上用于處理多個條件同時被滿足時的沖突解決機制。目前或?qū)砼c游戲關(guān)系密切的AI技術(shù)決策樹:類似于一系列if-then形式的條件判斷。在決策過程中,從決策樹的根節(jié)點輸入一組數(shù)據(jù),在每個分叉處根據(jù)某個輸入值選擇其中的一個子節(jié)點,依次類推。搜索方法:在一張圖中找到滿足某個目標(biāo)(某個目標(biāo)狀態(tài)或某些目標(biāo)值最大化)的狀態(tài)或動作序列。規(guī)劃(調(diào)度)系統(tǒng):搜索方法的一種特例。研究在已知最初狀態(tài)和每個動作產(chǎn)生結(jié)果的條件下尋找能夠達到某一結(jié)果的最優(yōu)(最簡單)動作序列。一階邏輯:是對命題邏輯的一種擴展,用于在給定環(huán)境中推理智能主題的相關(guān)情況。目前或?qū)砼c游戲關(guān)系密切的AI技術(shù)情景演算:運用一階邏輯來計算給定情況下智能主體的應(yīng)有動作,使用自動推理來決定達到最優(yōu)狀態(tài)所需采取的動作序列。多智能體系統(tǒng):研究如何通過多個彼此競爭和協(xié)作的智能主體之間的交互來自然地產(chǎn)生智能行為。人工生命:多智能體系統(tǒng)的一種,研究如何為虛擬環(huán)境中的智能主體賦予某些生物體的共性。群聚技術(shù):人工生命技術(shù)的一個分支,研究如何協(xié)調(diào)多個智能主體的動作,使之在整體上看起來像逼真的動物群。目前或?qū)砼c游戲關(guān)系密切的AI技術(shù)機器人技術(shù):研究如何讓機器能夠在現(xiàn)實世界中與人類交互運行。遺傳算法:試圖直接模擬生物進化過程,在一系列的程序、算法和參數(shù)之間做出選擇、雜交以及隨機的變異和交叉。神經(jīng)網(wǎng)絡(luò):基于生物大腦和神經(jīng)系統(tǒng)中的神經(jīng)連接結(jié)構(gòu)的一系列機器學(xué)習(xí)算法的總和。通過反復(fù)調(diào)用神經(jīng)網(wǎng)絡(luò)中互連節(jié)點之間的參數(shù)值(權(quán)重)來獲得針對不同學(xué)習(xí)任務(wù)的最優(yōu)和近似最優(yōu)反饋值。目前或?qū)砼c游戲關(guān)系密切的AI技術(shù)模糊邏輯:采用實數(shù)值(而不是傳統(tǒng)的布爾值)來表示對象屬于集合的程度。與傳統(tǒng)邏輯相比,模糊邏輯的表達能力更為豐富和細(xì)致,因而能夠更好的推理。置信網(wǎng)絡(luò):提供了描述不同現(xiàn)象之間內(nèi)在因果關(guān)系的工具,特別是它的子領(lǐng)域貝葉斯推導(dǎo)。采用概率理論來解決現(xiàn)實世界中的不確定性和不完全知識等問題,以及現(xiàn)實世界的狀態(tài)和預(yù)測各種動作可能的結(jié)果。游戲中的人工智能VS主流的人工智能游戲中的人工智能和主流的人工智能在目標(biāo)上并不完全相同。學(xué)術(shù)界的人工智能的目的在于解決極端困難的問題,例如模擬人的認(rèn)識或理解自然語言。在游戲中加入人工智能是為了獲得游戲的樂趣。游戲AI設(shè)計得思路不同于學(xué)術(shù)研究,側(cè)重實際效果。往往采用成熟的技術(shù),用最簡單的方法,占用最少的資源,給玩家制造假象,讓玩家覺得游戲的AI水平高超?,F(xiàn)有的游戲AI技術(shù)作弊:游戲中使用最廣泛的AI技術(shù)有限狀態(tài)機(finitestatemachine,F(xiàn)SM):列舉出計算機控制的角色極其動作、狀態(tài),用if-then語句檢查各類情況和滿足條件,以執(zhí)行動作或狀態(tài),或在動作和狀態(tài)之間切換。模糊狀態(tài)機(fuzzystatemachine):用到模糊邏輯,讓最后執(zhí)行的動作難以預(yù)測,減少大量列舉條件的if-then語句。尋徑現(xiàn)有的游戲AI技術(shù)在電子游戲剛出現(xiàn)的時候,人工智能主要用于投幣式的大型游戲機,例如Pong、Pac-Man、SpaceInvaders和Joust等就使用了大量的簡單規(guī)則、動作序列的描述以及隨機決策技術(shù)來使游戲的發(fā)展變得難以預(yù)測。策略游戲是最早采用人工智能技術(shù)的一類游戲、例如Civilization和Civilization2就采用了欺騙的手段來幫助虛擬人物應(yīng)對復(fù)雜場面。實時策略游戲(RTS)WarCraft2及AgeofEmpire2:TheAgeofKings采用了強大的智能技術(shù),特別體現(xiàn)在實時運行能力上,例如可以同時為游戲中幾百個對象提供路徑搜索?,F(xiàn)有的游戲AI技術(shù)在第一人稱射擊游戲中,Half-Life具有卓越的戰(zhàn)術(shù)智能;Unreal:Tournament因其可擴展性和高超策略而聞名;Thief:TheDarkProject逼真地模擬了虛擬角色感知能力;SWAT3:CloseQuartersBattle很好地表現(xiàn)了擬人的動作和交互方式,并采用隨機化的智能行為。模擬類游戲,例如SimCity、Creatures最早成功采用了人工生命技術(shù)。神話類游戲,例如Populous、DungeonKeeper、Black&White命技術(shù)和實時策略技術(shù)。人工智能技術(shù)已經(jīng)廣泛應(yīng)用于各類游戲中,不同類型的游戲?qū)θ斯ぶ?/p>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論