常见的游戏AI技术对比(FSM,HFSM,BT,ST,GOAP,HTN,Utilitay,机器学习)

1. ​​有限状态机(FSM)​​

  • ​​原理​​:将行为分解为离散状态(如巡逻、攻击、逃跑),通过事件触发状态转移
     
  • ​​优点​​:实现简单、执行效率高,适合线性逻辑(如角色动画控制)
     
  • ​​缺点​​:状态爆炸问题(N个状态需N×(N-1)条转移规则),难以维护复杂行为
     
  • ​​案例​​:《吃豆人》幽灵行为
     

2. ​​分层状态机(HFSM)​​

  • ​​原理​​:在FSM基础上嵌套子状态,形成树状结构(如“战斗”父状态包含近战/远程子状态)
     
  • ​​优点​​:逻辑分层管理,减少冗余代码;支持状态复用(如“休息”子状态可被多个父状态调用)
     
  • ​​缺点​​:深层嵌套时调试困难,需谨慎设计继承关系
     
  • ​​案例​​:《荒野大镖客2》NPC日常行为(如“工作→休息→娱乐”分层)
     

3. ​​行为树(BT)​​

  • ​​原理​​:树形结构组织节点(选择/序列/装饰/动作节点),通过轮询机制动态决策
     
  • ​​优点​​:模块化强,支持优先级抢占和并行任务;易扩展(新增行为只需添加子树)
     
  • ​​缺点​​:高频遍历消耗CPU,需依赖黑板(Blackboard)共享数据
     
  • ​​案例​​:《艾尔登法环》Boss战多阶段行为
     

4. ​​状态树(ST)​​

  • ​​原理​​:混合状态机与行为树特性,节点既是状态也是任务,支持双向驱动(事件+条件)
     
  • ​​优点​​:兼具状态边界清晰和行为灵活性的优势
     
  • ​​缺点​​:实现复杂度高,需平衡状态与任务逻辑
     
  • ​​案例​​:RTS游戏单位控制(如《星际争霸2》AI)
     

5. ​​目标导向行动规划(GOAP)​​

  • ​​原理​​:基于代价函数(如距离、伤害)规划最优行动序列,实现NPC目标驱动行为
     
  • ​​优点​​:动态适应环境变化,适合开放世界(如NPC自主寻路、资源收集)
     
  • ​​缺点​​:计算开销大,需预定义大量原子动作和效用函数
     
  • ​​案例​​:《辐射4》NPC生存行为
     

6. ​​分层任务网络(HTN)​​

  • ​​原理​​:分解高层任务为子任务(如“建造房屋”→收集木材+雇佣工人),通过递归求解实现复杂规划
     
  • ​​优点​​:更贴近人类决策逻辑,适合策略游戏(如《文明》系列AI)
     
  • ​​缺点​​:领域知识依赖性强,任务库需人工设计
     

7. ​​效用AI(Utility-Based AI)​​

  • ​​原理​​:量化行为收益(如攻击得分=伤害×命中率),动态选择最高效用行为
     
  • ​​优点​​:支持连续决策,适合动态场景(如《生化危机4》动态难度调整)
     
  • ​​缺点​​:需精细调参,效用函数设计影响平衡性
     

8. ​​机器学习(ML)​​

  • ​​原理​​:通过数据训练模型(如DQN、PPO)实现自适应行为,分为监督学习、强化学习等
     
  • ​​优点​​:能处理复杂非线性问题(如《GT赛车7》AI学习玩家驾驶风格)
     
  • ​​缺点​​:需大量训练数据和算力;黑箱特性可能导致不可预测行为
     
  • ​​前沿应用​​:
    • 生成式AI:自动生成剧情/角色(如网易伏羲AI NPC)
       
    • 多模态交互:语音/表情驱动虚拟角色(如米哈游《Whispers from the Star》)
       

​​对比总结表​​

​​技术​​​​复杂度​​​​执行效率​​​​适用场景​​​​2025年趋势​​
FSM 简单状态切换(动画、小游戏) 逐渐被HFSM替代
 
HFSM 中高 中规模AI(RPG敌人、载具) 仍是主流方案之一
 
BT 中高 复杂决策(Boss战、策略AI) 与ST结合使用增多
 
GOAP/HTN 开放世界/策略游戏 云端AI优化算力瓶颈
 
机器学习 极高 可变 自适应系统、生成内容 大模型+强化学习成焦点


posted @ 2018-08-18 22:40  JeasonBoy  阅读(2153)  评论(0)    收藏  举报