王朝网络
分享
 
 
 

专家浅谈人工智能 - Brian Reynolds & Mario Grimani(1)

王朝other·作者佚名  2006-01-08
宽屏版  字体: |||超大  

人工游戏机游戏中,就会使玩家感到

他所面对的敌人是同现实中一样拥有智能的。当然,这也是游戏编程中极具挑战性的问题之一。因此,本章内容仅

仅是针对AI的,并不涉及程序设计一章中的所提到的其他问题。

把AI单独设为一章的另一个理由就是应该对单人游戏引起足够的重视。随着多人游戏的不断发展,许多玩家担

心制作者把大量的时间,财力和精力花费在如何协调游戏对多人游戏对多个人的支持的问题上,而不是去尽力的提

高游戏的AI。但是如果游戏中的人工智能是可以预料的,或者做的一团糟的话,那么多数玩家宁愿在网上与真人对

站了。游戏的关键就是要既能多人对战,又具有真实的AI,这样才能引起那些不能上网或更愿意独自战斗的玩家的

兴趣。接下来是一些AI方面的专家,他们都在不同的方面有所研究,在他们的指导下,本章将讨论各种类型的AI以

及游戏设计者应该如何逐步解决这个问题。

1、Firaxis Games公司的 Brian Reynolds

Brian Reynolds是Sid Meier的高徒,他一直致力于PC上的热门策略游戏的开发,例如Colonization和 Civili

zation2。现在,他在Firaxis Games公司任软件开发部的副经理。Reynolds的最新成果是Firaxis Games公司的Alp

ha Centauri第一版。“与通常的观点截然相反,要为电脑游戏做AI并不需要具有魔法,”Reynold这样说道,“你

不需要有新奇的算法,不需要有网上的那些最新资料。你需要的只是一点创造力和恒久的毅力。”接下来将讲述他

最喜欢的一些技巧与经验。

1.1 不断重复的设计过程

在游戏AI的设计中,首先要用到“交互设计过程”,以一种惯用的方式开始你的程序设计,例如让你的游戏中

敌人的部队可以移动,尽管这样使用的算法也许会很简单。然后开始玩这个游戏,让它和你的AI进行对抗,由此观

察它的动作。直到他做了一些蠢事(开始时应该用不了多长时间),接着就考虑以下问题:

1、电脑做了什么蠢事------不如说,让坦克慢慢的穿过森林,或者只建造炮兵,其他什么都不做

2、如果是你的话,会怎样做(让坦克沿着公路走;建造一个完整的军队,包括步兵,炮兵,以及空军)

3、是什么样的信息使(或帮助)你做这样的决定的(进入公路费用最小;你已经有了一个炮兵部队, 但是没

有步兵)。之后返回去重新设计算法来组合这些数据

现在,再次开始你的游戏,观察其AI;直到他做了其他的蠢事,然后重复这个过程。不断的重复,再重复,这

样这个游戏的AI就会变得越来越好的。“AI就是通过纠正错误不断学习的”,这是可怜人的名言。在你不断玩游戏

和修改它的过程中,AI实际上是在积累经验以便在游戏中表现的越来越好。

为了说明他的观点,Reynolds向我们讲述了他的一件轶事。那时他还是一个年轻的程序员,正在设计他的第一

个游戏(Colonization)。他回忆道:第一次开始面临制作AI时,我有一点害怕。我的意思是,我的这个游戏,你

会玩,知道如何移动部队, 但是AI不知道怎样去做。我应该从哪里开始呢?我还记得Sid Meier建议我:我先教它

如何玩一个回合开始。然后教它如何玩两个小时,再后来就该考虑教它如何玩10个回合了。

1.2 从简单的开始

从构造一些简单的模块开始。例如,策略游戏中一个非常有用的算法是告诉一个部队怎样从A点到B点,这叫做

找路或过路算法。过去算法是一个非常适合于作为开始的工作,所要做的只是教一个部队从这里到那里,以后再考

虑怎样决定目的地的真实位置。我并不是说写一个出色的移动算法是很简单的,只是说它是一个非常适合开始时做

的一个简单的却也有足够难度的程序,这样使你以自己的方式来做以后那些更复杂的工作。一旦你完成过去算法的

程序,你便可以做另一段程序了,用以决定部队应该移动到场景的什么地方,但不必担心他们将怎样到达那里。

1.3 加倍或减半某些值

当刚开始做游戏时我还从Sid Meier那里学到了另一个精巧的技巧(就像我们所有的技巧一样, 它既适合游戏

设计,也适合AI),它是这样的:如果你有一个值或效果,需要调整,那么就将其加倍就减半吧。举个例子来说,

比如你认为坦克的建造费用太便宜了,就将这个费用加倍。不要把费用从10加到11,然后使自己陷入根本无法辨别

前后两者区别的苦恼中,从中解放出来吧。把它加到20,虽然这看起来有些荒谬,但是游戏中就这样做。这种方法

会让你对效果的变化有非常清晰的感受,同时也显示出坦克费用变贵时游戏的变化。如果这时坦克费用显得太贵了

,就把它调整到15。如果你认为电脑AI建造了太多的步兵部队时,就把它的建造能力减半。我记得我对某些东西不

多的次数做了加倍与减半,本来认为这样的变化过大了,但是当再次加倍或减半后我竟然得到了我想要的效果。所

有这一切又一次归功于使用了上面所讲的交互的过程。

Reynolds以一个简单的建议来结束这次讲解:“试着运行游戏,看它如何运转,修改再重复这个过程。”

2、Ensemble Studios公司的Mario Grimani

在去Ensemble Studios公司之前,Mario Grimani曾在Dominion的第7版:Storm Over Gift3中做某些方面的工

作。现在,他即将推出的Age of Empires 2:The Age of Kings的常任AI专家。对一个AI专家来说,最重要的是什

么呢?Grimani作了回答:

1、永远要记住,在做AI时的工作量并不总是直接和用户所感受到的成比例。

2、用重复的过程来完善AI。先实现一个大致可以运行的系统,测试它,改进它做得最差的方面。

3、使设计具有灵活性。如果你想不断的完善正在为游戏所做的AI,那么你必须能在这个过程中修改它。

Age of EmpiresⅡ:Age of Kings的AI允许通过一种易于使用的外部语言来控制计算机玩家的行为。计算机玩

家能够与人对抗,也能够相互对抗。这样在游戏设计阶段让我么在修改AI的行为上有了更大的灵活性。也使得可以

把AI的特色加入到最新发展阶段中。

Grimani论述了几种不同的AI和在编程中遇到的一些问题:

在游戏术语中,AI大致上是用来描述一类问题很广的解决方法, 这类问题即可以是角色扮演类游戏(RPG)中

去模拟人作为某个角色的行为,也可以是即时战略游戏(RTS)中的找路算法。在RTS类游戏中的主要的AI问题除了

找路,团体AI和计算机对手的AI外,还有部队找路和部队的AI。计算机对手的AI本身也有好几部分:策略AI,战术

AI,建筑布置,危险估计,地形分析等多方面。

一些AI的问题是非常具有挑战性的。任何一个有明确的数学解决的问题,都要比那种仅仅基于概念和抽象的问

题更容易解决。不幸的是,人类的想法更像是去寻找那些能解决基于抽象问题的答案。

Grimani用一个在制作RTS游戏中常见的障碍作为例子:

对于人来说,判断一块地区时候容易防守简直是轻而易举的,对计算机玩家却不是一个小问题。然而计算机玩

家能记住每个独立的部队的踪迹,而且它的统计能力远远高于人类。

那么Grimani是不是认为基于万维网或局域网的游戏的发展会降低人们对更好的AI的需要呢? 他是这样回答的

:“多人游戏正在飞速发展。这是因为现在越来越多的人能够享受到快速的因特网。但是并不意味着多人游戏将会

取代AI。这实际上是两种不同的游戏体验。我个人很喜欢多人游戏,而且已经玩了好几年了。然而,这并没有使我

对单人游戏失去兴趣。”

Grimani和Ensemble Studios公司的其他成员正在为Age of EmpiresⅡ: Age of Kings在2000年冬天即将发行

的版本做准备。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有