人工智能在计算机上的实现有两种不同的方式。一是使用传统的编程技术,使系统显得智能,无论使用的方法是否与人类或动物有机体使用的方法相同。这种方法称为工程方法( ),在一些领域已经产生了成果,如文本识别、计算机下棋等。另一种是模拟方法( ),不仅要看效果,还需要实施方法与人类或生物体所使用的方法相同或相似。遗传算法(简称GA)和人工神经网络(简称ANN)都属于后一类。遗传算法模拟人类或生物体的遗传进化机制,而人工神经网络则模拟人类或动物大脑中神经细胞的活动。为了获得相同的智能效果,通常两种方法都可以使用。使用前一种方法需要手动详细指定程序逻辑,如果游戏简单,则比较方便。如果游戏复杂,人物数量和活动空间增加,相应的逻辑就会非常复杂(呈指数级增长),手工编程会非常繁琐,而且容易出错。一旦出现错误,就必须修改、重新编译、调试原来的程序,最后提供给用户新的版本或者新的补丁,非常麻烦。当使用后一种方法时,程序员需要为每个角色设计一个智能系统(一个模块)来控制。这个智能系统(模块)一开始什么都不懂,就像刚出生的婴儿一样,但是它可以学习,可以逐渐适应环境,应对各种复杂的情况。这种系统在开始时经常会犯错误,但它可以吸取教训并在下次运行时纠正它们。至少不会永远出错,也不需要发布新版本或者打补丁。使用这种方法来实现人工智能需要程序员具备生物思维方法,这使得上手难度加大。但一旦进入,它就可以广泛使用。由于这种方法在编程时不需要对角色的活动规则进行详细规定,因此在应用于复杂问题时通常比以前的方法更省力。