游戏AI研究(一):感知AI

AI百科6个月前更新 快创云
64 0

游戏AI概述

什么是游戏AI?

  游戏AI,即Artificial Intelligence在游戏中的应用,指的是通过编程和技术模拟智能行为,使游戏中的非玩家角色(NPC)能够做出合理且符合逻辑的反应和决策。尽管游戏AI与理论AI(如深度学习、机器学习等)有相似之处,但游戏AI更注重的是预先定义的行为和模拟,而非自我学习的能力。

游戏AI的特点

  游戏AI的核心是程序员预先定义的一系列可能行为,而不是像理论AI那样具备自我“学习”的能力。例如,游戏中的行人会避让车辆,小鸟会在天空中乱飞,守卫会巡逻,小兵会在兵线上移动等。这些行为都是通过编程实现的,而非通过机器学习或深度学习等技术。

  然而,当游戏需要自我学习和做出最优策略时,通常会采用理论AI技术,如围棋AI阿法狗和DOTA2的OPENAI。这些应用展示了理论AI在游戏中的强大能力。

游戏AI的应用实例

  1. 4X游戏的AI:以《群星》、《文明》和《王国风云》为代表的4X游戏,其AI必须足够聪明以提供挑战,但同时又要保持一定的“人性化”,以避免玩家感到无法胜利。例如,通过反应延迟、路径扭曲和模糊决策等手段,使AI行为更加符合人类预期。

  2. 《求生之路》系列:该系列游戏通过“导演系统”和AI Director来调控游戏节奏,包括怪物出现的地点、数量和道具刷新的位置等。这些AI控制元素配合动态音乐,为玩家提供了更真实的游戏体验。

  3. 角色扮演/沙盒游戏中的NPC:在《巫师3》等自由度较高的游戏中,NPC拥有详细的性格设定和会话数据库,可以进行丰富的动作和对话。这种设计增强了玩家的沉浸感。

游戏AI所需掌握的知识

  1. 感知:游戏AI应能获取有限的信息,通过“感知”概念模拟智能体的感官,如视觉、听觉等。
  2. 黑板:可访问的共享数据,用于多模块间的数据共享。
  3. 状态机:表示和控制状态切换的设计模式,常用于设计多个状态。
  4. 行为树:以树状结构表达的决策模式,也是现代游戏AI最常用的设计模式。
  5. 自治智能体:具有自治动作的智能体,如《看门狗》和《GTA》中的行人、车辆等。
  6. 群体智能:用于编队或集群的AI,如足球游戏中的球员配合和射击游戏中的小队战术。
  7. 寻路/搜索/规划:常用的寻路算法有A算法和B算法,搜索则常用于图搜索,规划则是游戏的预处理。
  8. 模糊逻辑:为了使游戏AI更人性化,常采用模糊逻辑条件。
  9. 脚本驱动:使用脚本可以极大减少修改逻辑的成本,常用的脚本语言包括Lua。

游戏AI的基本设计

  一个正常的智能体需要先感知到周围的事物,才能做出反应行为。基于这个原理,游戏AI可以分为以下三个模块:感知、决策和行为。感知模块负责获取信息,决策模块负责分析信息并输出行为结果,行为模块则执行相应的行为。这种设计使得游戏AI能够高效地模拟智能行为。

游戏AI之感知

视觉感知

  视觉感知是常见的感知方式,在即时战略游戏或类DOTA游戏中,一个单位的视觉感知往往是圆形范围的。而在大部分俯视角游戏中,智能体的视觉感知应类似现实人眼观看的扇形范围。对于空间更复杂的3D游戏,可能需要采用视锥体形状的检测方式。实现视觉感知时需要考虑阻挡问题,常用的解决方法包括在前方扇形范围发出若干条射线进行检测或在所在区域的所有潜在目标进行遍历。

听力感知

  听力感知一般比较简单粗暴,采用圆形/球形范围检测,且无需考虑阻挡问题。实现时一般需要获取声音来源、声音大小和距离等信息,这些信息可以作为额外数据交由决策使用。例如,一个警卫听到太大的声音会进入敌对状态,而小的声音则会进入警戒状态。

其它感知

  除了视觉和听力感知外,还有一些智能体可能需要知道各种杂项信息(如无线电消息)。这些感知方式可以根据具体需求进行实现。在实际应用中,感知可以做成一种类,提供检测函数和结果访问接口。

© 版权声明

相关文章