(计算机软件与理论专业论文)计算机游戏中智能角色行为的研究与实现.pdf_第1页
(计算机软件与理论专业论文)计算机游戏中智能角色行为的研究与实现.pdf_第2页
(计算机软件与理论专业论文)计算机游戏中智能角色行为的研究与实现.pdf_第3页
(计算机软件与理论专业论文)计算机游戏中智能角色行为的研究与实现.pdf_第4页
(计算机软件与理论专业论文)计算机游戏中智能角色行为的研究与实现.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(计算机软件与理论专业论文)计算机游戏中智能角色行为的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 为计算机游戏设计智能的角色行为是一项艰巨的任务,也是目前 a i 应用领域所面临的一个挑战。随着计算机游戏图形技术发展成熟, 对视频游戏的开发商而言开发具有智能行为的游戏角色变得越来越 重要,因为这样能够牢牢地吸引玩家的注意力,从而延长这款游戏的 生命周期。因此,为了满足玩家的需求,现代游戏中智能角色行为的 复杂性急剧提高。而传统的限状态机来应对游戏中的事件的局限性在 于,它无法以种简单的方式设计复杂的智能角色行为,另一方面由 于基于硬编码的行为逻辑,从而也无法在动态的游戏环境中产生合理 的交互式角色行为。所以需要更加灵活的方法用来开发游戏中智能角 色的行为,以适应现代游戏的复杂性。 本文接下来将会讨论现今游戏中实现智能角色行为所亟需解决 的一系列问题。首先从研究智能角色体系结构开始,给出了一种基于 黑板的智能角色体系结构。随后分析了不同的行为建模方法,并提出 了一种通用的行为树方法,该方法能够应付更为复杂的角色行为。最 后实现了一个g o a p 规划系统,为智能角色实现动态的行为。 关键词:游戏人工智能,行为建模,行为规划,行为树 a b s t r a c t d e s i g ni n t e l l i g e n tc h a r a c t e r sb e h a v i o ri sad i f f i c u l t t a s kf o rc o m p u t e rg a m e s ,a l s oac h a l l e n g ef o rt h et r a d i t i o n a l a ia p p l i c a t i o n sf i e l d a st h ed e v e l o p m e n to fc o m p u t e rg a m e g r a p h i c st e c h n i q u e sb e c o m em a t u r e ,f o rt h ed e v e l o p e r so fv i d e o g a m e s ,t h e d e v e l o p m e n to fi n t e l l i g e n tc h a r a c t e r sb e h a v i o r b e c o m e sm o r ea n dm o r e i m p o r t a n t , b e c a u s ei tc a nf i r m l y a t t r a c t i n ga t t e n t i o no fp l a y e r s ,t oe x t e n dt h e1i f ec y c l eo f ag a m e s oi no r d e rt om e e tt h ed e m a n do fp l a y e r s ,i nt h em o d e r n g a m e s ,t h ec o m p l e x i t yo fi n t e l l i g e n tc h a r a c t e r sb e h a v i o r d r a m a t i c a l l yi m p r o v e d w h i l ef o r t h et r a d i t i o n a lf s m t e c h n o l o g y ,t oc o p ew i t ht h eg a m ee v e n t sh a v ei t s1i m i t a t i o n s , b e c a u s ei tc a nn o tt od e s i g nc o m p l e xi n t e l l i g e n tc h a r a c t e r s b e h a v i o ri nasi m p l ew a y o nt h eo t h e rh a n db e c a u s eo ft h e h a r d c o d i n gb e h a v i o rl o g i c ,i ta l s oc a nn o tg e n e r a t er e a s o n a b l e i n t e r a c t i v ec h a r a c t e r sb e h a v i o ri nd y n a m i ce n v i r o n m e n t s o w en e e dm o r ef l e x i b l em e t h o d su s e dt od e v e l o pt h ei n t e lli g e n t c h a r a c t e r sb e h a vi o rf o rg a m e si no r d e rt oa d a p tt ot h e c o m p l e x i t yo ft h em o d e r ng a m e i nt h i sp a p e rw ew i l ld i s c u s sas e r i e so fp r o b l e m st ob e s o l v e d u r g e n t l y f o r r e a l i z i n gi n t e l l i g e n t c h a r a c t e r s b e h a v i o r f i r s t ,w er e s e a r c ht h ea r c h i t e c t u r eo fi n t e l li g e n t c h a r a c t e r s ,a n dp r o p o s e daa r c h it e c t u r ew h i c hb a s e do nt h e b l a c k b o a r d a f t e r w a r d sw ea n a l y z e dd if f e r e n tm o d e li n gm e t h o d s , a n dp u tf o r w a r dag e n e r a lb e h a v i o rt r e em e t h o d ,i tc a nc o p ew i t h m o r ec o m p l e xc h a r a c t e r sb e h a v i o r f i n a l l yw ea c h i e v e dag o a p i i p l a n n i n gs y s t e m ,t or e a l i z et h ed y n a m i cb e h a v i o ro fi n t e l l i g e n t c h a r a c t e r s k e y w o r d s : g a m ea r t i f i c i a l i n t e l l i g e n c e ,b l a c k b o a r d a r c h i t e c t u r e ,b e h a v i o rm o d e li n g ,b e h a v i o u rt r e e s ,b e h a v i o r p l a n n i n g 湖南师范大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本 论文不含任何其他个人或集体已经发表或撰写过的作品成果。对本文 的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:多都哆叫矿年岁月乃日 湖南师范大学学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 研究生在校攻读学位期间论文工作的知识产权单位属湖南师范大学。 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权湖南师范大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 本学位论文属于 1 、保密口,在年解密后适用本授权书。 2 ,不保密酞 ( 请在以上相应方框内打“) 作者签名:多师彤日期:一年r 月砚日 锄擀:高她 嗍:冲年夕月籼 计算机游戏中智能角色行为的研究与实现 1 1 引言 1 绪论 随着社会的发展和技术的进步,计算机游戏逐步成为一种重要的 休闲娱乐和教育手段。目前游戏产业已经成为包含计算机软硬件技 术、网络技术以及无线技术等最新科技和各种文化艺术的新型娱乐产 业。 在中国,游戏产业正处在一个稳定上升的发展阶段,将成为全球 最大的网络游戏市场。数据显示,2 0 0 8 年底,我国网络游戏研发公司 达到1 3 1 家,研发专业人员超过2 4 万,自主研发网络游戏达至t 2 8 6 款, 较2 0 0 7 年增长了1 4 1 。自主研发网络游戏实际销售收入达1 l o 1 亿元,l l 2 0 0 7 年增长了6 0 ,占我国网络游戏出版市场总收入的5 9 9 ,表现出十分强劲的发展潜力。 从整体上来看,目前中国游戏产业的发展呈现出统一性和协调 性,并且逐渐形成了完整的产业链,其中网络游戏出版产业的价值链 涉及到了电信行业、i t 行业、媒体、传统出版行业、批发与零售行业 等。处于产业链上的这些行业也随着网络游戏的发展而飞速发展起 来,其中占据产业整体链条上最关键地位的网络游戏运营商,也更加 成熟和理智。 国家新闻出版总署副署长孙寿山指出,中国网络游戏出版产业取 得较快的发展,主要得益于中国网民用户逾3 亿人的基础。我国游戏 产业与世界上互联网普及率高的国家相比,无论是在研发层面、技术 层面,还是在运营理念上,都有不小的差距。 1 2 课题背景及意义 新千年开始的十年,中国网络游戏经历了引进、模仿、自主研发、 硕十学位论文 自主运营管理的过程。1 0 年问,中国网络游戏企业完成了从单纯代理 依赖国外公司到自主研发的转型。一批具有浓郁中华文化元素的原创 网络游戏积极参与市场竞争,深受广大玩家的喜爱和市场的认可。 自主研发网游虽然占据了主动,但在中高端的3 d 网络游戏市场, “进口”产品仍然占据着领先份额。在下一个十年即将开启的时刻, 无论是金山游戏推出国内首款自主研发3 d 网游大作剑侠情缘 o n l i n e 3 ) ) ,网易代理3 d 网游大作魔兽世界和推出自主研发3 d 网 游天下贰,盛大公司运营大型3 d 网游永恒之塔、巨人网络 首款3 d 游戏万王之王的推出,还是搜狐畅游高调宣布购买 c r y e n g i n e 3 游戏引擎,都无疑是在向中国网游的下一个战略高地 “3 d 网游 发起冲击,这也喻示着国内网游业必会在接下来的 几年呈现出风起云涌的新格局。 目前看来,国内游戏产品的研究主要集中于游戏的视觉表现方 面。而对游戏玩法和游戏人工智能方面的研究则显得较为稀少,且主 要集中在导航寻路技术的研究上。结果导致现在的游戏一味追求视觉 效果,如何使效果更绚烂,却较少的考虑到游戏的可玩性。以至于游 戏玩法创新不足,从而导致游戏品味底下、内容空洞,毫无可玩性。 反观日韩和欧美游戏产品,除了在游戏画面方面一如既往给人带 来强劲冲击感的同时,其在游戏玩法和游戏人工智能方面也普遍突破 了传统的确定性角色行为和线性故事情节的模式。 下面是国外游戏中运用人工智能技术的一个缩影: 1 9 8 9 年,s i mc i t y 最早采用了人工生命技术。 1 9 9 8 年,h a l f l i f e 采用脚本序列技术实现了卓越的战术智能。 1 9 9 8 年,t h i e f , , l j 极其逼真的模拟了角色的感知能力。 2 0 0 1 年,b l a c k & w h i t e 运用了至今为止最为先进的智能游戏技 术,是最早成功运用智能学习的典范。 2 0 0 5 年,f e a r 成功运用a i 规划器来处理敌人的行为。 计算机游戏中智能角色行为的研究与实现 2 0 0 1 2 0 0 6 年,h a l o1 ,2 ,3 中,当你打击不同种类的团队时将会 展现出不同的符合情节的团队行为,底层的“b e h a v i o rt r e e 技术在 业界变得流行。 2 0 0 7 年,h a l f - l i f e2e p i s o d e2 利用协作式a i 技术实现角色a l y x , 推动了角色交互,为广大玩家所肯定。 2 0 0 8 年,c r y s i s 运用沙盒技术,通过给玩家更多自由使得第一人 称射击游戏达到新的高度,整个游戏由设定的目标驱动。 这意味着在国外最近几年,计算机游戏的a i 技术得到了长足的进 步,从而使游戏产品比以前更加丰富有趣。而这些变化的产生是由于 计算机硬件设备以及计算机游戏的图形显示效果已日臻完美,从而使 人工智能上的表现成为了决定每个游戏成功与否以及相关游戏开发 工作室命运的重要因素。因此,如今游戏的人工智能表现已经从可有 可无上升到不可或缺的地位了,并将迅速得到重点发展从而推动整 个游戏产业的进一步发展,可以说游戏开发中人工智能的黄金时代正 在向我们走来。 在我国由于游戏行业起步相对较晚,游戏图形技术上已经明显的 落后于西方国家。而在游戏人工智能领域,目前国外已经迈出了第一 步并获得成功,我们没有理由停滞不前,可以说“智能游戏”必将成 为“3 d 游戏 后的下一个战略高地。谁最先站上去,谁就将会在下 一代游戏的竞争中掌握主导权。 1 3 课题研究现状 为计算机游戏设计智能的n p c 行为是一项艰巨的任务,也是目前 a i 应用领域所面临的一个挑战。对视频游戏的开发商而言开发具有智 能行为的游戏角色变得越来越重要,因为这样能够牢牢地吸引玩家的 注意力,从而延长游戏的生命周期。因此,目前已有各种技术和方法 被游戏开发者所采用,为的就是实现逼真的人工智能,给玩家带来更 硕士学位论文 丰富的游戏体验。然而目前的现实是,游戏中的角色行为往往过于单 调乏味,无法应对动态变化的游戏环境,在诸多情况下n p c 的行为很 容易被玩家所猜测到,从而令玩家丧失继续游戏的兴趣。 r e y n o l d s 在文献1 】【2 】中分别提出了群集行为和操控技术,用来对 自主角色的群体行为进行建模和控制单个角色的运动行为。这两项技 术都广泛的运用于电影制作和游戏角色的移动性行为控制中,例如: 蝙蝠侠归来中用来模拟群居的蝙蝠和企鹅群,魔界三部曲中 原来实现受人军队的移动。该技术的缺点是只能适用于智能体的移动 性行为,并且过于底层,使用时需要做繁重的参数微调工作,来达到 良好的模拟效果。通常把高层的行为控制技术与该技术相结合使用。 现今计算机游戏中的大多数n p c 禾i j 用f s m ( 有限状态机) 的设计来 应对游戏中的事件。就像j e f f o r k i n 在2 0 0 6 年g d c ( 游戏开发者大会) 指出的一样【3 】:“如果我问台下的听众,要你们投票选出现今应用于 游戏中的最普遍的a i 技术,那么其中得票最高的答案将会是f s m s 。 显然该方法的局限性在于,它无法以一种简单的方式设计复杂的多级 智能n p c 行为,另一方面由于基于硬编码的行为逻辑,从而也无法在 动态的游戏环境中产生合理的交互式角色行为。 f s m 的两个主要的缺点是【4 】:不支持状态的存储以及无法表达在 高层反复出现的模式,行为很难抽象,例如顺序执行和有条件执行等。 因此,f s m 技术无法应用于复杂行为。由于f s m 的不足,已有一系列 对f s m 的扩展用来支持更复杂的行为,包括基于栈的f s m ( 用于行为 中断和恢复) 、模糊状态机、层次有限状态机( h f s m ) ( 高层状态 被用来共享和重用状态转移) ,以及概率状态机。使用f s m 相关技术 的游戏包括雷神之锤系列,魔兽争霸3 ,刺客信条( 其 中警戒行为是可预测的) 。此外,另一个问题是,f s m 概念上它是“设 计师友好”的,但由于要求每一个状态明确地转换到另一状态,因此 实际上应用f s m 需要非常多的编程知识和细节。 计算机游戏中智能角色行为的研究与实现 o r k i n 于2 0 0 3 年1 5 1 提出了基于目标的行为规划( g o a l o r i e n t e d a c t i o np l a n n i n g ( g o a p ) ) 这一思想,并在其参与开发的f p s 游戏 f e a r 中使用了一个s t r i p s 规划器给敌人赋予智能行为【6 】。o r k i n 对 g o a p 的定义是:为实时控制游戏中自主角色的行为而特别设计的一 个简单的s t r i p s 风格的规划系统。g o a p 描述角色可以执行的动作, 基于给定的目标和游戏情境,该方法试图找出一个能达到目标的行为 序列,从而决定接下来哪个动作被执行。这就允许模块化的开发a i 行为,而不是明确的描述行为之间的交互,像编码f s m 所作的那样, 这些交互会在运行时确定。以g o a p 方式实现的角色在动态的游戏环 境中能够表现出合理的行为,并能处理在开发时没有考虑到的情况。 目前已有多款基于g o a p 技术开发的大型商业游戏,如f e a r 系 列,半神( 一款d o t a 风格的3 d 游戏) 。 h t n 是另外一种形式的规划,该方法在高层的任务上进行推理而 不是在行为层。h t n 规划分解高层的任务为更小的子任务,直到所有 的任务被分解为原子行动。相较于s t r i p s 规划,h t n 规划有两个主 要的优点。首先,它l 匕s t r i p s 规划更具有表达能力,这说明存在能够 用h t n 规划描述却无法以s t r i p s 的方式表达的问题。其次,多个研 究者都表明h t n 能够更自然地编码策略知识。h t n 舰划技术于2 0 0 5 年被h o a n g 用于游戏中的自主角色控制中【_ 7 1 ,在为虚幻竞技场开 发的机器人中,通过使用h t n 规划技术来选择行动策略。在 s q u a d s m a r t 项目中 8 】一个h t n 规划器( s h o p 2 ) 【9 】用来为小队从整 体上做行为规划,该工作表明层次实时规划技术可用于产生协作行 为。目前在商业游戏中还很难见到h t n 技术的身影( 学术上的研究项 目居多) ,杀戮地带2 ( k i l l z o n e2 ) 1 0 l 是唯一一款使用该技术的 商业游戏。 g o a p 和h t n 本质上都是基于目标的,它们通过前瞻的询问实施 该行为世界将会如何改变来提前规划好能实现目标的一个行动序列, 硕十学位论文 而这种脱离实际运行环境的过程,运用于游戏这样一个动态非确定的 环境时,某些不可预料的情形总是会发生,往往导致事先规划的动作 无法达成最终的目标。因此,执行监控是必要的,它通过检验感知信 息来观察是否每件事都根据规划进行。而当某些意外情况发生时将需 要进行重新规划。显然执行监控和重新规划是无法回避的,且这会使 得整个系统异常复杂,若进一步考虑行为的中断与恢复性等其它控制 机制时情况将会更糟糕。此外规划算法的效率也是制约该方法的一大 因素。在可创作性方面,规划方法基于陈述性的表达能够很自然的描 述行为,并且在系统中增加删除行为也很容易,具有良好的可扩展性。 但是这种陈述性表达方式往往太过形式化,需要专业人员才能掌握, 对于一般设计师而言并不友好,需要研究相应的设计辅助工具来帮助 设计师。 在人工智能和a g e n t 研究的领域中,把具有完全非确定性行为的 智能体称作基于推理的智能体,而基于纯预定义行为实现的智能体叫 做基于电路的智能体。这两种智能体的实现方式分别代表了智能体设 计中陈述性和过程性的两种极端。s t u a r tr u s s e l l 】的观点是单独的两 种方法都不充分,提倡实现混合体系结构的智能体。f u n g e c 眩】贝0 基于 情景演算,结合目标导向行为和预定义行为建立了自主角色认知建模 的方法,利用知识进行推理、制定行动规划。使角色不再按照简单的 刺激一反应规则来行为。 游戏中行为树可以作为这两种极端之问的粘合剂。行为树是从 h f s m 发展而来。它通过透明地逻辑封装来提高状态的模块化。此外, 行为树还是基于目标导向的,每一个树都与一个想要达到的不同的高 层目标相关联。行为树可以看作是一种反应性规划,h t n 通过前向考 察其子节点的执行能否达到目标来作为选择该节点的依据,而行为树 则是通过子节点的优先级来选择,这种优先级可以是事先确定的,也 可以是执行时动态计算的。相较于规划技术,行为树便于执行期监控, 计算机游戏中锢能角色行为的研究与实现 能实现各种复杂的行为逻辑。 作茭j f p s 游戏光晕2 ( h a l 0 2 ) 的a i 系统,i s l a 在文献 1 3 】中给 出了行为树的原型( 实际上是作为一种h f s m 技术提出的) 。此外, 应用行为树的游戏还包括:生命模拟游戏孢子( s p o r e ) ,以及 f p s 游戏孤岛危机 1 4 1 。 1 4 课题目标及内容 本课题的研究目标是在已有游戏人工智能方法的基础上,研究适 用于下一代在大型动态环境和非线性剧情条件下的逼真拟人的智能 角色行为,以满足广大游戏玩家对可交互游戏环境和更加拟人化的游 戏角色行为的期望,同时还要满足游戏开发人员对直观,灵活和自动 化的游戏逻辑系统的要求。 研究内容主要涉及以下三个方面: 1 建立适用于游戏的智能角色体系结构: 目前在传统a i 领域针对建立a g e n t 系统的b d i 模型的研究已经 取得一定成果,提出了多个系统体系结构用于各种不同应用场合,但 大多数不能适用于游戏中的自主角色。 f u n g e 通过以情景演算作为自主角色的行为理论,建立了自主角 色的目标导向行为和预定义行为相结合的体系结构,使角色的目标导 向行为与预定义行为相协调。 本课题将在此基础上对游戏角色的混合型体系结构在实际游戏 开发过程中的应用进行研究,建立适用于游戏中的智能角色混合型体 系结构。 2 研究自主角色的行为建模和行为控制方法 很长一段时间以来游戏人工智能开发者都使用f s m 来建立基于 状态的自主角色行为模型,也有不少游戏引入了脚本系统来帮助建立 7 硕十学位论文 更为复杂多变的角色行为,甚至少许游戏使用了目标导向的行为规划 系统。 事实表明,随着对建立复杂a i 行为的要求不断提高,“完全预 定义与“纯目标导向”这两种极端情况都是行不通的。我们将寻求 介于这两者之间的折衷方案,并以此来实现智能角色的复杂行为。 3 研究动态行为的规划方法 游戏本质上是一个角色与环境的实时动态交互过程,预先定义的 角色行为往往无法表现出良好的适应性,为了产生符合当前情景的角 色行为,往往需要在运行时根据实际的游戏环境来规划角色的行为, 以符合当前的需要。 1 5 论文的组织结构 本文共六章,论文结构及各章节的关系如图1 1 所示: 第一章:绪论。介绍了与课题研究方向相关的内容,主要包括: 本课题的背景及意义、课题的研究现状、本课题的研究目标以及相关 研究内容。 第二章:本课题相关知识点概述。本章主要介绍与课题相关的背 景知识点。包括游戏引擎的体系结构,人工智能领域的基本知识及相 关进展,以及游戏和人工智能研究的相关背景。 第三章:游戏中智能角色的体系结构。主要包括:智能体的基本 概念、智能体的抽象体系结构、以及基于黑板的决策体系结构。 第四章:智能角色的行为建模方法。主要包括:有限状态自动机 的相关介绍、行为树概述、最后介绍了一种通用的行为树实现方法。 第五章:智能角色的行为规划技术。本章中首先简要概述了智能 规划技术相关的内容,随后给出了应用于游戏中的g o a p 规划系统, 这其中包括g o a p 规划域的设计以及一个抽象规划算法一a 水机。 计算机游戏中智能角色行为的研究与实现 第六章:结语。本章中主要总结了本课题所做的相关工作,并分 析的所存在不足之处,提出了下一步的研究方向。 绪论 ( 第一章) 本课题相关知识点概述 ( 第一章) 上 l 游戏中智能角色的体系结构 ( 第= 童) 上 智能角色的行为建模方法 ( 第四章) 上 智能角色的行为规划技术 ( 第五章) 士 结语 ( 第六章) 图1 1 论文组织结构 硕十学位论文 本课题相关知识点概述 本章主要介绍与课题相关的背景知识点。包括游戏引擎的体系结 构,人工智能领域的基本知识及相关进展,以及游戏和人工智能研究 的相关背景。 2 1 游戏引擎 图2 1 中给出了一个典型游戏软件的主要模块及其相互关系的系 统结构图,该图只是一种关于游戏程序运行模式的抽象概括。每个模 块的作用可简要叙述如下。 新 息 息 信息 图2 1 游戏软件的抽象结构图 游戏状态:游戏状态代表当前游戏世界的状态,他描述游戏世界 中所有物体及其状态信息。其他模块可以通过“游戏状态”模块查询 游戏世界中任何物体的当前状态。 仿真器:仿真器制定游戏状态如何发生改变的法则,即“游戏物 计算机游戏中智能角色行为的研究与实现 理学。具体说,游戏角色控制器所选择的所有行动都是通过仿真器 调动相应的动画实现的。 渲染器:渲染器利用游戏中物体的几何关系及纹理提供对游戏状 态的描绘,其输出结果通常包括图形和音响。 控制器:每个游戏角色至少有一个控制器,控制器负责选择角色 的行动。对于玩家角色而言,控制器解释玩家游戏设备的按键。对于 非玩家角色,控制器就是它的“大脑”,即它的“智能”所在。 不同的游戏都有着不同的实现方式,但是不管是2 d 游戏还是3 d 游戏,也不管游戏类型和题材是什么,或者哪怕是一个很小很小的游 戏都会遵循这样一种抽象的运行体系结构。而游戏引擎就是“所有游 戏或一类游戏中抽象出来的共同的控制程序部分以及游戏开发过程 中所需要的一系列相应辅助工具的总称。 玩家在游戏过程中所体验 到的关卡、美术、音乐等内容一般都是由游戏引擎直接控制,它指挥 着游戏中所有的元素共同有序地工作。可以说游戏引擎直接决定了游 戏的性能以及稳定性,一切相关的游戏特性都建立在游戏引擎的基础 上。 如今经过多年不断的发展,包含3 d 建模、动画设计、光影特效、 a i 运算、碰撞检测、声效处理、网络模块等等多个子系统在内的涵盖 了游戏开发过程中所有重要环节的全功能、模块化、按需订购的游戏 引擎受到市场青睐,o h c r y e n g i n e 系列和u n r e a l 系列引擎。另一方面单 一而专业的引擎如物理引擎、声效引擎、植被引擎、人工智能引擎相 继出现,并都以中间件的形式集成在通用型游戏引擎里。有了游戏引 擎所提供的共同部分和一系列开发工具,游戏开发人员就可以直接使 用引擎来进行游戏开发,从而大大缩短游戏开发时间。 2 2 人工智能 让我们先对a i 做一个理论上的定义。在a i 的经典著作人工智 硕十学位论文 能:一种现代方法中,r u s s e l 和n o r v i g 指出,a i 就是设计计算机 程序,使得它可以像人一样行动和思考,同时也是理性地行动和思考。 这个定义包含了智能的认知学和行为学观点,并涵盖了理性和“人 性 。 最早的人工智能研究可以追溯到2 0 世纪4 0 年代。一些早期的成 功导致人们过于乐观,认为计算机很快就会变得像人一样智能。但是, 科学家们很快意识到,许多人工智能问题远比他们初始时的想象困难 得多。经过半个多世纪的发展,如今人工智能涵盖了大量不同的领域 和分支,其中与游戏密切相关的领域,包括:专家系统、基于范例的 推理、有限状态机、产生式系统、决策树、搜索方法、规划调度系统、 一阶逻辑、情景演算、多智能体系统、人工生命、群聚技术、机器人 技术、遗传算法、神经网络、模糊逻辑、置信网络等。 2 3 计算机游戏中的人工智能 术语“游戏人工智能 有时被用来区分计算机游戏中的人工智能 与学术界所研究的人工智能。用于游戏中的人工智能算法不一定要满 足通用性,它的目的并不是通过写学术论文来提高人们的认知水平。 通常,游戏人工智能算法只要能满足角色的行为在某些场合内是合理 的就足够了。当然,算法越具有普遍适用性,它所产生的经济效益就 越可观。 除了通用性要求的区别,游戏人工智能和学术人工智能的不同还 在于它们对人工智能所研究的范畴不同。特别是学术人工智能和游戏 人工智能有不同的关注焦点。学术界有句谚语:“一旦某个人工智能 问题被解决,它就不再被认为是人工智能问题。”而游戏人工智能常 泛指游戏中的各种控制问题,往往更注重设计,而非算法。 游戏中人工智能的目的是控制n p c 的每一个方面。例如,在各 种电脑游戏中不仅仅是第一人称射击游戏人工智能必须提 计算机游戏中智能角色行为的研究与实现 供如下几项功能: ( 1 ) 基本的行为动作,例如捡起物品、按开关、使用物品、有 目的的打手势等。 ( 2 ) 在游戏环境的不同地点之间移动,并能应对障碍物、门或 者平台等。 ( 3 ) n p c 要完成它的任务,必须要执行哪些行为? 这些行为动 作的先后顺序? 要能在这些方面做出较高阶的决策。 为了开发能提供这些控制功能的系统,最小数量限度的技术是必 不可少的。虽然标准的程序设计语言能够实现智能n p c ,但是来自 于人工智能领域的技术还是能提供以下功能: ( 1 ) 实现显式控制的一流解决方案。 ( 2 ) 有效地支持隐式控制的技术。 同标准的脚本编写技术相比,人工智能技术计算的效率更高,并 能产生出具有更高质量的行为。标准的人工智能技术能在以下方面改 善游戏中智能n p c 的编写: ( 1 ) 提供运动控制、模式识别、预测或者估值计算等功能。 ( 2 ) 将这些功能集成在系统内的设计模式。 ( 3 ) 用于设计和测试在理想环境中的行为动作的方法论。 这些人工智能方法论使得角色得以实现,除此之外,它们在游戏 中还起到了一个特殊的作用。 但在游戏开发过程中,设计人工智能系统时必须考虑到的一些普 遍的需求。在游戏中如下2 个特性是非常重要的: ( 1 ) 娱乐人工智能可以调动玩家的各种技巧,通过不断增 加难度向玩家提出挑战,并测试各种玩家的各种能力。人工智能还可 以带有感情色彩,用以增加娱乐效果。通过编排各种很酷的事件,它 会让你感到吃惊,或者通过制造紧张气氛来吓人。 ( 2 ) 可信性人工智能角色能够在不分散玩家( 在进行游戏 硕+ 学位论文 任务时的) 注意力的情况下完成自己的工作,这样就可以让玩家更加 投入其中。至于真实感,人工智能让每个n p c 以一种玩家看来十分 合情合理的方式来行动,以此来增加真实感。 总的来说,人工智能游戏开发就是通过控制n p c 来产生娱乐的 效果( 辅以可信性或者真实感) 。 计算机游戏中智能角色行为的研究与实现 游戏中智能角色的体系结构 本章主要研究游戏中智能角色的体系结构。这是智能体设计的中 心问题,任何智能体程序都必须有合适的体系结构作为支撑,设计良 好的体系结构能够为智能体程序设计带来巨大的便利。本章首先站在 主流人工智能的观点上,介绍智能体的概念,从抽象层次上分析智能 体、环境和它们之间的关系,并讨论不同目的的智能体所具有的通用 体系结构。最后我们结合游戏中智能角色的特点,给出了一种基于黑 板的混合型体系结构,并给出了两种不同的实现方法。 3 1 智能体的基本概念和抽象体系结构 想要了解什么是智能体,一个最为直接和有效地方法就是给出有 关智能体概念的准确定义。然而遗憾的是,到目前为止学术界和工业 界的众多专业人士对智能体的概念有众多不同认识、对其概念的定义 仍有许多争论,除了认为自主性是智能体的一个基本特征,人们尚未 就智能体概念的其他方面取得共识。 下面是有关智能体概念的一般性定义。该概念不针对任何特定研 究和应用领域,具有一定的普遍性;也不针对任何具体实现技术和开 发平台,具有一定的通用性【l6 i 。 所谓智能体是指驻留在某一环境下能够自主( a u t o n o m o u s ) 、灵 活( f l e x i b l e ) 地执行动作以满足设计目标的行为实体。 更具体一点我们可以从狭义和广义两个方面去理解智能体的特 性【1 7 】: ( 1 ) 智能体狭义概念: 自治性对自己的行为和内部状态具有控制权。 社会能力能与其他主体进行交互和通信,实现合作、协商、 硕十学位论文 竞争。 反应能力主体能感知环境,并对环境发生的事件作出适时反 应。 自发行为主体的适时反应应该是主动地,目标制导的行为, 而不是被动的预定义的。 ( 2 ) 智能体广义概念: 除了上面的特性外,还应该具有某些通常人类的特性。 例如:一个智能体是这样一个实体,它的状态可以看作是由信念 ( b e l i e f ) 、能力( c a p a b i l i t y ) 、选择( c h o i c e ) 、承诺( c o m m i t m e n t ) 等心智构件组成。 智能体可以被视为通过传感器感知所处环境并通过执行器对该 环境产生作用的东西。智能体的感知序列是该智能体所收到的所有输 入数据的完整历史。一般而言,智能体在任何给定时刻的行动选择取 决于到那个时刻为止智能体的整个感知序列。如果指定在每个可能时 刻的感知序列下该智能体的行动选择,则多少可以说我们了解该智能 体的一切。从数学上看,可以用一个把任意给定感知序列映射到智能 体的行动的智能体函数来描述智能体的行为。原则上可以通过实验用 一个列表来记录任何感知序列下智能体的行动响应,虽然这将是一个 很庞大的表格甚至得无限的,但是该函数表唯一的刻画了智能体函 数,它从外部反应了智能体的特性。而从智能体的内部来看,智能体 函数是通过智能体程序来实现的。在这里智能体函数是一个抽象的数 学表示,而智能体程序是一个具体实现,该程序在智能体自身的结构 上运行。 在最抽象层次上智能体有如图3 1 所示的体系结构: 计算机游戏中智能角色行为的研究与实现 感 出 图3 1 主体的顶级抽象视图 在该抽象视图中,智能体有一个动作决策部件。该动作决策部件 通过传感器感知环境,获取有关环境的感知输入,然后运行决策逻辑 选择一个或一组动作,并交给执行器执行。 可以用下面的数学模型来描述该系统: 一个系统可以定义为:s y s t e m = ,其中s y s t e m 表 示系统,a g e n t 表示系统中的智能体,e n v 表示智能体所驻留的环境。 系统中的环境是由一组离散化的有穷状态组成:e n v = , 其中,s = s 0 , s l ,一,s i ,) 是环境状态集合,s o s 表示环境的初始状 太 ,c o a g e n t = 。 a = a o , a 1 ,一,a i ,) 表示智能体的有穷动作集合,a i 表示智能体的 某个动作。 s e e :s p ,该函数刻画了智能体感知部件的功能,它将智能 体所在的环境状态映射为感知输入。 c h o o s e :p 卑一a ,该函数刻画了智能体动作决策部件的功能, 它根据感知信息的状态序列确定智能体待实施的动作。 c h a n g e :s a p ( s ) ,其中p 是幂集符号。该函数刻画了智 能体动作的执行对环境状态的影响。 硕十学位论文 该智能体的体系结构是极其抽象的,它只描述了智能体如何与环 境交互,而用动作决策部件抽象了智能体内部所有有关行为决策的逻 辑。下一节,重点将会集中在如何设计动作决策部件上,并给出游戏 中智能角色动作决策部件的体系结构的具体设计。 3 2 基于黑板的决策体系结构 3 2 1 黑板简介 黑板体系结构给出了协调不同物体之间行为的一种方法【l5 1 。它不 但易于实现,而且实践证明,这种体系结构能够有效解决各类协同问 题。实际上,从2 0 世纪7 0 年代黑板体系结构提出的那一天开始,它 就被作为规则推理和问题解决的一种技术,一直发展到今天。 顾名思义,黑板体系结构于传统意义上的黑板有着类似的功能。 在学校里,黑板是一个解决问题的工具。为了解答一道题,大家围在 黑板前面讨论与交流,这里,黑板提供了一块共享空间,方便大家分 解问题,并逐步给出解答。 我们可以这样定义黑板:一块公共的可读、写信息区,它为体系 结构中的其它参与者提供发布问题或者信息的地方,同时其他参与者 也能通过黑板对其感兴趣的信息作出反应。 3 2 2 基于黑板的体系结构设计 游戏中基于黑板的智能角色的体系结构如图3 2 所示: 计算机游戏中智能角色行为的研究与实现 图3 2 游戏中智能角色体系结构图 从图3 2 中可以看出该体系结构非常的简单,大体上由一块置于 智能体内部的黑板,以及感知器,行为系统和多个子系统组成。各个 子系统之间不存在任何的交互,它们与其他系统的通信都是通过黑板 来完成。 在黑板中分为两块共享区域,分别是感知记忆区和工作空间区, 之所以这样区分是因为它们信息的结构可能存在不同。这里智能角色 有必要维护一个感知历史的内部状态,感知器定期对该状态进行更 新,一方面该内部感知状态的存在有利于维护智能角色过去感知到的 而当前无法感知的信息,另一方面也不需要感知器在每次更新都进行 大量的感知,而只需进行定期更新,有利于提高系统的运行效率。 工作空间区记录了智能体内部各个子系统当前共同的工作信息, 这些信息非常的灵活,可以是某个子系统的计算结果,也可以是一条 需要执行的指令等。子系统可以把当前的计算结果放到黑板中供其他 系统使用或者是发出指令要求其他系统完成,也可以从黑板获得需要 的信息或者接受来自其它系统的指令。例如动作选择系统要求完成 硕十学位论文 “捡起一个物品 这个动作,这时导航系统会对该信息感兴趣,它获 得相关的位置参数,如果现在没处于该位置,则会规划出一条到达该 位置的路径,并作为指令放入黑板,比如:往哪个方向走多远,接着 转弯多少度,然后再朝哪个方向走多远等。随后运动系统将对这些指 令作出反应,并控制智能体移动。最后如果一旦到达目标位置,物品 拾取系统会判断该物品是否在拾取范围,如果在便会执行拾取动作。 在这里,某些子系统实际上同时充当动作的执行器,它通过黑板接受 相应行为的执行指令,并执行之。 在该体系结构下,子系统不需要知道它所产生的信息或者控制信 号在什么时间,以什么方式被谁使用。同时子系统也不需要知道它目 前所获得的信息或控制信号来自何处。具体来说,对于第一个要求, 假设一个控制信号表示执行某一个动作的命令,则发送该控制信号的 子系统不需要关心如何以及谁完成了这个命令,它只需要知道这个命 令最终是被完成了;同样地,对于第二个要求而言,如果一个控制信 号被传递到某个子系统,则该子系统不需要关心这个命令是谁发出 的,它只负责实现该命令。 如图3 3 所示:黑板的使用能够给智能角色的体系结构带来一系 列的好处。它有利于子系统之间的集中式交互,这样可以减少做系统 之间的耦合。假设一个智能角色想移动到目标的可开火区域。如果没 有黑板系统,导航系统就需要引用日标系统,反之亦然。但如果使用 黑板,两个系统仪仅需要一个关于黑板的引用就可以了。此外,当试 图扩展这个体系结构时,黑板的优势显露无遗。在黑板结构中增加子 系统,并不需要对原有的系统作出任何的改变,因为它们没有显示的 交互。 计算机游戏中智能角色行为的研究与实现 图3 3 带黑板和不带黑板的体系结构比较图 黑板体系结构的优点可以总结如下: 简单而易于实现 灵活并且可维护 能很好的处理协作 降低子系统之间的耦合 减少代码膨胀 有利于a i l o d 系统的实现 有利于重用和共享 3 2 2 黑板的两种实现方式 黑板体系结构定义的普适性,决定了它有着多种多样的实现方 式。这里我们将给出两种不同的黑板实现方式,分别是静态黑板和动 态黑板。不同的黑板实现,可以适合不同的应用场景。 ( 1 ) 静态黑板实现: 硕七学何论文 静态黑板是一种比较简单的黑板实现方法,在这种方式中黑板所 储存的信息是根据各个子系统的需要预先设计好的,一旦黑板设计完 后其容量大小将不会改变,因而具有静态大小的数据量。该方法实现 非常简单,可以用例3 1 所示的简单的类来实现: 计算机游戏中智能角色行为的研究与实现 在该类中黑板需要共享的数据都实现为私有的类成员,并通过提 供公有的g e t s e t 函数允许子系统访问这些成员。当然如果需要还会提 供更复杂的判断或测试方法,甚至推理方法。 静态黑板不但实现简单而且数据的访问方式非常的灵活,允许我 们以不同的方式访问不同的数据。它可以很好的应用于智能角色内部 模块之间的协调,在设计智能角色的时候,能提供一种思考的框架来 帮你思考问题和组织任务,分解出智能角色内部各个子系统的功能及 它们之间的交互。一旦静态黑板设计完成,各个子系统的功能和它们 之间的交互也随之确定下来了。 当然该方法也有局限性,由于共享的数据都静态给出,当系统变 得复杂时,共享数据量会急剧增加,整个黑板的可维护性将明显降低, 因为我们必须手动为每一个黑板成员设计访问方法。并且我们也无法 在不改变黑板的情况下,增加或改变各系统之间的功能与交互方式。 接下来将要介绍的动态黑板则较好的解决了这一问题。 ( 2 ) 动态黑板实现: 针对静态黑板的不足我们进一步给出了黑板的动态实现方法。在 该方法下黑板的数据不再预先定义,相反我们只是规定了黑板中共享 数据的格式,这使得其更像数据库中的表,而数据成员也演变成记录。 在运行时根据需要,各个子系统可以向黑板动态添加相应的记录。而 黑板则提供统一的数据访问与查询接口给各个子系统使用。不同于静 态黑板每增加一个数据记录,就需要提供相应的访问方法,这种方式 允许数据记录和访问这些数据记录的方法相互独立的发展。每增加一 硕+ 学位论文 个访问方法,就相当于静态黑板方法中对每条数据记录都增加该方 法。这允许我们在设计数据记录的访问方法时,不需要关心数据记录 的多少,而可以专注于数据访问的逻辑,这样就为我们设计出更为复 杂的数据访问方式和内部推理提供了便利。例3 2 给出了一种动态黑 板的实现: 计算机游戏中智能角色行为的研究与实现 f l o a t ; 黑板类 c l a s sb l a c k b o a r d d a t a ; t y p e d e fs t d :v e c t o r b b r e c o r d 趴b b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论