Skip to main content

2017 TGDF 筆記 – 遊戲人工智慧與關卡難易度

講者 | 臺灣科技大學資工系教授 | 戴文凱

現為臺灣科技大學資工系教授、遊戲研發中心(GAME Research Center)與遊戲實驗室(GAME Lab)成員。

多年來主要從事內容自動化生成(PCG: Procedural Content Generation)、遊戲設計自動化(Game Design Automation)、遊戲 AI 與玩家模式(Game AI and Player Modeling)、多媒體等應用相關的創新研究與開發工作,同時也持續參與業界的產學研發、顧問與政府相關的研究委託、規劃等專案。

─ 節錄自 TGDF 官方

 

本文章為個人理解之筆記,不一定能完全傳達原講者內容

 

本系列其他文章

 

AI 目標

  • 教學 (Tutorial)
    • 幫助新玩家學習
    • 提供不同難度設定
  • 訓練 (Training)
    • 有經驗和有競爭力的玩家通常想要練習
    • 策略性練習一定難度的項目
  • 可玩性 (Replayability)
    • 更動態的遊玩數值設定
  • 彈性變動 (Robust to change)
    • 遊戲中可能需要隨時間推移調整的屬性
    • 每次更新時都需要維護,為程序員節省寶貴的時間

 

遊戲進行過程

  • 遊戲 (Game)
    • 遊戲 = 目前遊戲狀態 + 規則/邏輯
    • 目前遊戲狀態 = (上一個遊戲狀態 + 上一個玩家) + 玩家集合
  • 狀態 (State)
    • 遊戲狀態 = 目前遊戲時間 + 多個玩家資料 (例:血量、兵力、國家….)
  • 玩家 (Player)
    • 玩家行動決策 = 玩家 + 遊戲狀態 + 玩家資料
    • 玩家行動決策 = 多個不同的行動組成
  • 玩家行動 (Partial Player)
    • 玩家行動 = 行動演算法 + 遊戲狀態 + 玩家資料
    • 例:生產時是否考慮成本? 是否考慮人口上限?
  • AI 投資組合 (Portfolio)
    • AI 投資組合 = 多個行動演算法組成

 

遊戲案例 8-ball

遊戲流程:

TGDF_AI_1

 

決策流程:

玩家投資組合 -> 打擊行動產生 -> 檯面狀態評估 -> 選擇球 -> 打擊球

TGDF_AI_2

 

玩家投資組合:

策略、技能

TGDF_AI_3

 

打擊行動產生:

選定可打球 -> 選定可進袋口 -> 打擊類型 -> 完善瞄準方向 -> 搜尋優化力道

TGDF_AI_4

TGDF_AI_5

 

檯面狀態評估:

打擊難度評估 -> 評估球 -> 評估球群 -> 打擊評估

TGDF_AI_6

TGDF_AI_7

 

選擇目標球:

  • 亂數
  • 規則資源大小
  • 蒙地卡羅樹搜尋 (Monte Carlo tree search, MCTS) 思考時間長度

 

AI 投資組合:

TGDF_AI_8

  • 打擊行動產生
  • 檯面狀態評估
  • 打擊評估
  • 選擇目標球

 

透過設定檔控制 AI

TGDF_AI_9

 

檯面狀態估計 – 打擊行為

TGDF_AI_10

 

檯面狀態估計 – 核心流程架構

TGDF_AI_11

 

檯面狀態估計 – 實驗結果

TGDF_AI_12

 

參考資料

 

歡迎轉載,並註明出處 !

 

Arkai

獨立遊戲開發、技術分享。 Indie Game development and technology sharing.

什麼?不懂! 那就提問吧!

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料