游戏AI在做决策的时候,最重要的参考依据就是当前游戏世界信息,这其实和人做判断的时候是一样的,我们在做出一个决定的时候,脑中会闪过很多我们已经收集的信息,包括所见,所听,直觉(基于以往的经验)等等。所以,我们如何去抽象游戏世界信息,并收集起来以供AI使用,也是非常值得我们去思考和探讨的问题。 当然[……]
目标导向(Goal-Oriented)的AI架构
关于AI难度变化的设计
游戏AI和游戏设计紧密相关,我也经常说,一个好的游戏AI,不在于算法的艰深和行为的完全拟真,而在于和整体游戏性的契合,在平时工作中,也是和游戏设计师打交道的最多,有这样一句话,一个好的AI程序员相当于半个游戏设计师:),所以这次就来谈谈关于AI难度的设计问题。 谈到游戏设计,有些人觉得可能是灵光[……]
层次化状态机的讨论
最近和一个同事讨论状态机的问题,记录一下。 我们知道状态机是AI(当然,不光是AI了)中常用的一种架构,有很多中实现方式,总体来说对于表达简单逻辑,还是很有帮助的,而且实现简单,甚至用一个switch-case就可以了,但在实践中状态机有一个致命的缺点,当状态一旦多了之后,它的跳转就会变的不可维护[……]
此AI非彼AI–写在同学聚会后
前段日子,和以前大学的同窗们聚会,很多人都是好久未见,有些人也是难得从国外回来一次,大家相聊甚欢,说说近况如何云云。
正巧,有个人现在在美国某著名大学读PHD,而且主要研究的是人工智能相关,那我作为一个AI程序员,对她研究的东西自然也就要打听一番。聊了一点之后,发现学术的东西还真是学术,和我现[……]
对动画的选择和控制系统的讨论
用类来表示逻辑运算–关于行为树前提的一种实现方式
我们在学习程序的时候,都会提到一些逻辑计算方面的事情,像与(and),或(or),非(not)等,在编程语言层面也提供了相关的符号来表述逻辑的计算。我们都知道,对于AI来说,逻辑是非常重要的,一些简单的AI系统,就是由if-else搭起来的一个庞大的逻辑网,里面包含了各种预设好的可能性,最后得到一个[……]