游戏非玩家型角色的行为自建模.docx

上传人:b****4 文档编号:11589490 上传时间:2023-03-19 格式:DOCX 页数:20 大小:377.27KB
下载 相关 举报
游戏非玩家型角色的行为自建模.docx_第1页
第1页 / 共20页
游戏非玩家型角色的行为自建模.docx_第2页
第2页 / 共20页
游戏非玩家型角色的行为自建模.docx_第3页
第3页 / 共20页
游戏非玩家型角色的行为自建模.docx_第4页
第4页 / 共20页
游戏非玩家型角色的行为自建模.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

游戏非玩家型角色的行为自建模.docx

《游戏非玩家型角色的行为自建模.docx》由会员分享,可在线阅读,更多相关《游戏非玩家型角色的行为自建模.docx(20页珍藏版)》请在冰豆网上搜索。

游戏非玩家型角色的行为自建模.docx

游戏非玩家型角色的行为自建模

基于游戏行为系统的研究和实现

绪论

引言

当前视频游戏的技术提升往往趋向于图像表现方面,而随着硬件技术的迅猛发展、3D技术的日趋完善,视频游戏的画面表现力已经达到了与电影相媲美的高度,随之带来了对游戏的可玩性的要求相应提高。

视频游戏主要包括FPS(第一人称射击)、RPG(角色扮演类型)和RTS(即时战略游戏)等几种类型,这些不同类型的游戏都需要玩家与非玩家角色(NPC)进行行为交互,交互的方式直接影响到玩家对游戏的兴趣度。

这也促使越来越多的玩家和学者将目光注视到游戏人工智能,并相信游戏人工智能的革新有能力带领我们超越那些令人炫目的特效画面和熟悉的游戏类型,到达一个令人激动、从未体验过的新领域。

然而游戏人工智能未形成一个较为成熟的理论体系架构,并且不同研究人员对其的认识也不一样,对一些研究学者来说,游戏人工智能意味着游戏角色能够像人一样进行思维,而对于大部分人工智能开发人员来说,它只不过就是一段根据自我经验事先写好的脚本。

研究和实现两者的脱节,这也无形中导致了人工智能在逼真的图像和音效的反衬下显得相对滞后。

国内外许多研究人员为了协调这两方面的矛盾,开发了一系列基于中间件技术的游戏人工智能引擎来提升NPC(非玩家角色)的决策能力。

但是游戏人工智能引擎使用上的复杂性,让许多开发人员望而却步。

本文总结当前游戏中人工智能的成熟技术,并针对其中的方法进行改进,最后建立一个简洁实用的游戏智能模型。

研究背景

中国互联网经历一系列的风雨,仍然顽强地生长着,截止2009年12月,我国的网民的规模已达到了3.84亿。

而网络游戏作为互联网领域的一个神话,伴随着互联网的成长逐步壮大,从2001年3亿元的市场规模增长到2009年271亿元,同时网游行业在过去几年里保持了52%的年复合增长率。

这样巨额的利润让国内大部分互联网开发商垂涎三次,纷纷转向网络游戏的研发中。

纵观我国网络游戏的发展历程,不难发现在现实和利益的驱动下,我国网游产业在不断升级,由最初的引进代理模式转向了自主研发的方向,并且开发出了受广大玩家欢迎具有中华传统文化特色的网络游戏。

完美时空作为国内网游3D技术研究的先驱,推出了风靡一时的《完美世界》,较为精致的画面以及引人入胜的故事情节为公司带来了几十亿的纯利润,引起全球游戏市场关注,在全球30多个国家得到了广泛推广。

金山游戏在政府的支持下开发了国内首款3D网络游戏引擎,并顺势推出了国内首款自主研发的3D网游大作《剑侠情缘Online3》,为中国游戏进入国际高端市场开辟了新的道路。

随着游戏引擎技术的逐步成熟,国内大部分公司大多引进国外优秀引擎进行游戏开发,如腾讯公司使用GamebryoLightSpeed3D引擎开发了《御龙在天》、《轩辕传奇》、《QQ飞车》等网游,网易公司则利用BigWorld引擎推出了百万用户同服的《天下贰》、《创世西游》等网游,搜狐畅游改进Ogre3D自主研发了《天龙八部》、《成吉思汗》、《中华英雄》等网游,盛大公司作为以代理为主的游戏公司同样也推出了《星辰变》等自主研发的网络游戏……这也预示着国内游戏开发商不断向全球中高端3D网游市场进军。

虽然国内自主研发的网络游戏在国内乃至全球占据一定市场,但是相对于国外的中高端3D网络游戏的独领风骚,它们也只能望而却步。

究其原因,不得不提到一点就是当前的国内自主游戏开发延续了国外游戏最初发展的模式——过度的追求在游戏视觉表现方面,却忽略了国外游戏的真正出彩点。

而反观日韩和欧美游戏产品,除了在游戏画面上一如既往的给人带来强劲的视觉冲击外,还在游戏的玩法方面突破了传统确定性角色行为和线性故事情节的模式,带给玩家身临其境之感。

游戏玩法上的突破,并不仅仅需要策划的宏伟蓝图,同时还需要游戏开发者采用更为先进的人工智能技术来实现游戏中非玩家角色的模拟过程,完成角色间的正常交互。

游戏中的人工智能这一领域在20世纪70年代视频游戏刚出现的同时就已经兴起。

但接下来很长一段时间内,学术界往往将大量时间利用棋类游戏来进行人工智能的研究中,从最初的西洋棋程序到击败特级大师加里·喀什帕洛夫的国际象棋程序“深蓝”,这些都不免俗套的重复着游戏搜索树策略的改进。

另外,学术界为了鼓励人工智能和智能机器人技术研究于1995成立了著名的RoboCup(RobotWorldCup)机器人世界杯组织,它为许多大学以及研究机构提供了一个展示和评估各种智能技术的平台。

在比赛中,由于各个团队采用的理论和技术不同的机器人进行同场竞技,进一步给予各种人工智能技术以实验和比较。

清华大学、浙江大学、中国科技大学等国内著名院校每年也会派出队伍参与当中,并取得了可喜的成绩。

然而,使用人工智能技术进行游戏开发和通过游戏来进行人工智能研究是完全不同的两个概念。

上个世纪七八十年代,随着视频游戏中二维图像技术的引入,游戏中出现大量使用二维画面表示的具有一定智能行为的角色,开发人员通过研究出一些简单但非常高效的算法来完成这些角色的智能性设计,如Pong、Pac-Man、SpaceInvaders以及Joust等游戏中就使用了大量的简单规则、动作序列的描述以及随机决策等相关技术。

这些技术也为将来的游戏人工智能的发展奠定了一定的基础。

RTS(即时战略游戏)作为最早开始应用人工智能技术的一类游戏。

它的正常运行,不仅仅需要图像渲染技术,还要求具有对象级(unit-level)的人工智能和具有相当战术策略的虚拟人物。

这样就对人工智能技术提出了新的挑战。

从1989年由HerzogZwei在DuneⅡ游戏中简单寻路算法和基本的三态状态机的成功应用,带动了如Warcraft:

Orcs&Humans、Command&Conquer、StarCraft、TotalAnnihilation等RTS游戏中采用更为强大且有趣的智能技术来解决大型场景中的不同角色的行为决策。

这当中如有限状态机、A*算法以及角色行为规划的相关算法等技术在今后大部分游戏中得到沿用和改进。

随着3D技术的成熟,如Warhammer40000:

DawnofWar、StarWars:

EmpireatWar、WarcraftⅢ、HaloWars等RTS游戏中就合理的采用了以上的技术,并发展出游戏神经网络算法、遗传算法、行为树等等一些先进的人工智能技术。

游戏人工智能技术不仅在RTS(即时战略游戏)上有长足的发展,在FPS(第一人称射击游戏)中也有所突破。

ValveSoftware公司的Half-Life采用脚本序列技术实现了战术智能,这也是第一次将游戏智能脚本化,为开发人员提供了更为简洁的编程要求,随后在Half-Life2中又引入协作的观念提高了角色间的交互性。

而由LookingGlass工作室开发的Thief:

TheDarkProject则极为逼真地模拟了虚拟角色的感知能力,让游戏中的非玩家角色具有喜怒哀乐等拟人情绪,并引入了分级警报技术让玩家体会到不同水平虚拟角色的智能。

还有最近几年异常火爆的Crysis系列和FarCry2中基于目标驱动技术的应用给玩家在游戏中带来更大的自由空间。

除了以上提到的技术,还不得不提到EA公司开发的Black&White,它不仅综合实施策略游戏和第一人称射击游戏中的先进智能技术,同时还综合SimCity中人工生命技术以及ColinMcRaeRally2.0中的机器学习方法,促使该款游戏成为当时游戏人工智能研究的主要风向标并为接下来智能技术的发展奠定坚实基础。

研究意义

据艾瑞调查机构《2009年中国游戏产业报告》显示(如图1所示),中国网络游戏在接下来几年将继续以20%以上的年复合增长率进行增长,但较前几年50%以上的发展势头有了很大程度上的减缓,并且游戏数量从最初的2款游戏激增到现在300多款,如何在当前的激烈的游戏市场上取得成功成为很多开发商共同探讨的问题。

报告还指出,中国网络游戏存在着严重的同质化,这也成为中国网络游戏发展的绊脚石。

再加上日韩以及欧美3D网络游戏的冲击,中国网游3D图像处理技术虽然依靠成熟游戏引擎得到一定的弥补,但是仍然显得相对滞后。

图1中国游戏市场规模

游戏人工智能作为最近几年国外视频游戏发展的新方向,已经先行一步,没理由我们继续落后于他们。

尤其是最近几年社区休闲类游戏的火爆,让业内人士不得不将目光越来越注意在游戏的交互性和挑战性上。

游戏人工智能的主要目标就是使得用户沉浸在游戏中,解决游戏交互性和挑战性的问题,“智能游戏”也将成为中国游戏进军国际高端游戏市场的一柄利器。

研发出一个成熟的游戏人工智能架构应用于游戏中,对于开发游戏者来说是一件费时费力且不一定取得成效的工作。

最近几年的GDCAISummit也将如何搭建起一个实用的游戏AI架构作为会议的首要议题。

国外有研究人员根据AI架构提出游戏AI引擎(AISDK)的概念,通过综合已有的成熟人工智能技术,设计成通用接口,做成方便游戏开发人员使用的一个基于中间件技术的软件。

当前确实已经存在了少数这样的游戏AI引擎,如DirectAI、Spark、OpenAl,但是它们由于架构和实用性方面的问题促使其并在实际游戏中得到应用。

虽然由密歇根大学人工智能实验室开发的一个名为Soar的智能引擎不仅为QuakeⅡ添色不少,还为当前游戏AI研究提供一个智能平台,但是Soar引擎的开发并不是为了设计出一个通用的游戏AI引擎,而是为了利用QuakeⅡ引擎来进行一些智能算法的实验。

游戏AI引擎和游戏引擎的目标都是使得游戏开发过程变得更加简单快速,因此对设计游戏AI引擎就有如下几方面的考虑:

(1)良好的AI架构;

(2)丰富的AI模块;

(3)广泛适用的AI接口。

综合以上几方面问题,这当中AI架构起到了决定性的作用。

一个合理的AI架构并不是将当前所有先进的AI技术进行一一罗列并以接口的形式提供给用户使用,而是通过互补协调的方式根据当前智能技术,整理出一套新的体系架构,并应用于AI引擎的设计中,来满足游戏开发人员的方便性需求,加快开发进度。

研究目标及内容

游戏AI主要针对的是游戏中智能角色的行为和规划的设计。

因此智能角色行为的“真实性”在很大程度上决定了AI体系架构是否成功。

本文研究目标是,通过分析当前游戏人工智能中行为建模的方法,研究出一套适用于任何动态场景以及复杂非线性故事情节的虚拟角色的行为模型,带给用户以实时交互并包含拟人化智能角色的“真实”游戏环境。

同时在保证实现预期智能行为效果的前提下,该模型还为开发人员提供了更为简单、直观、灵活的AI设计系统。

研究内容主要涉及到以下两个方面:

(1)智能角色的行为模型

基于规则的AI系统自20世纪70年代就已经存在,由于其容易实现并使智能角色的行为可理解易操控而沿用至今,并随之衍生出由Orkin提出的基于目标的行为规划系统这一思想。

然而这样确定的行为往往无法体现角色的自主性,而且还会导致角色行为单调乏味,其行为很容易被玩家所预测,降低了游戏的可玩性。

为此,本文提出一种基于模型的AI系统,使智能角色能通过自我和环境的变化做出针对性反应。

(2)智能角色的决策系统

FSM作为典型基于规则的AI系统的技术,在很长一段时间里乃至现在都有大部分游戏人工智能开发人员应用其进行智能角色的行为决策。

然而随着当前游戏场景不断变化扩展,让整个FSM系统变得非常复杂并且不易在编码,更重要的一点就是智能角色的行为不具自主性。

为了体现动态性,在HaloⅡ中首先提出了行为树这一概念来适应变化的环境。

本文结合当前游戏发展现状以及对智能角色行为决策的需求,综合现有的行为决策技术,设计了一个自动决策的AI行为系统。

文章结构

 

游戏行为架构简介

游戏需要一种能够可直接创建并复用复杂角色行为的AI架构。

然而大部分游戏设计非角色性玩家(NPC)的行为都只是对部分情节必须角色进行脚本化编程,这样就导致了其他角色的行为出现大量的重复现象。

尤其是在面对角色协作行为复杂化时,当初设计的游戏AI行为架构很难实现角色间行为的相互作用,并且角色行为在很大程度上受游戏引擎的影响。

因此,随着视频游戏对角色行为越来越追求现实化,导致相应的行为也变得更为复杂,当前的AI架构已经无法满足开发者的需求。

本章依据游戏人工智能的发展现状,介绍当前游戏中使用的较为成熟的游戏行为架构,从最简单的决策树,到使用最为广泛的状态机,以及从状态机基础上发展形成的HTN(hierarchicalTaskNetworks,分层行为网络)以及BT(BehaviorTrees,行为树)。

决策树

行为系统就是要求我们从一系列的可能的行为中选择一个以应对当下现状的行为。

一棵决策树正是将用属性集合描述的事物或情景作为输入,并返回一个“决策”——针对输入的预测输出值。

决策树通过布尔分类的形式将属性进行关联作为树的内部节点,而将树的叶子节点设置为角色行为。

每一次决策都是通过执行一个属性测试序列来完成的。

由于决策树的结构决定了每次决策都必须从决策树的根部开始,由于树中每个内部节点对应于一个属性值的测试,从节点出发的分支被标记上可能的测试值,如此递归访问,最终到达叶节点,并返回执行叶节点对应的角色行为,完成决策。

决策树作为一种快速、易用并易于理解的行为架构,它虽然能够非常简单的作出相应决策,但是其基本算法的实现却让整个AI系统变得非常复杂。

如图2表示了一个简单的决策树的决策过程。

从图可以分析出,决策树的表示和实现方法对人而言看起来确实很自然,但是要将一个游戏系统中的每一个角色的行为架构设计成决策树的形式,将使得每一个角色都需要数千页的单一决策树,因此,决策树经常应用于简单且快速的决策机制。

图2简单决策树

从另一个层面来分析,由于树的每个内部节点都是一个决策的过程,如果将忽略现实情况对树的剪枝过程,根据组合定理,如图3所示,决策树中只涉及到四个决策过程,将产生16种结果,这样就导致决策树中的节点数远远大于决策的数目。

在面对游戏系统中特殊场景、案例、角色、行为等等的引入,这样的产生的决策将不计其数,决策树也变得臃肿复杂。

图3决策树的决策枚举

决策树虽然存在一些构建上的问题,但是其决策的效率让它仍然为游戏开发者所钟爱,特别是随机决策树的应用为游戏增添了更大的不确定性和娱乐性。

随机决策树通过在某些非关键情节决策过程中引入随机因子影响NPC的决策结果,带给游戏不一样的变幻。

这样的技术也被广泛的应用于遗传算法的基因变异中。

状态机

当前游戏中角色的行为都是由一组既定的限制条件先产生的,任何一个角色的行为在没有触发性事件发生的同时将不会发生改变,而重复执行先前的动作。

当然我们可以使用决策树这样的行为架构来支持这样的行为决策,然而在大部分情况下,游戏开发者更加愿意使用一种更为简单的行为架构达到这样的目标:

状态机。

状态机是游戏人工智能中被普遍承认的最有用的软件模型。

状态机被广泛使用是因为它们拥有编程简单、容易理解、容易调试并且普遍适用于任何问题。

它们也许并不能总是提供最优的解决方法,但很少有人能否认它们以对项目最小的风险完成工作。

然而,由于状态机往往没有统一的架构,当开发循环不断推进时,它们往往以无法控制的方式增大。

糟糕的结构加上无限制的增大使许多状态机的应用维护起来如同噩梦一样。

状态机的基本模型

在状态机中的每一个成员都表示一种状态,一般来说,这些状态都关联着相应的动作。

因此当场景中某个角色保持某种状态时,它也会持续执行相同的动作。

状态间通过相关的情形进行关联,当游戏满足某种状态将使得角色的当前状态转换到目标状态,并将角色的行为设置为目标状态所对应的行为。

如图4就是表示一个简单的状态机模型。

图4简单的状态机模型

通过观察上图不难发现,状态机模型是一种基于UML状态图的架构,其中正方形框表示对象模块化所固有的状态,而状态间的通过带条件转换标注的有向箭头进行连接。

在图中,最初始的实心圆作为状态机模型的入口,每次执行状态机时都需要从此初始化状态开始进行轮询。

这样一个架构并不需要开发者对UML有很深入的了解,却可以清晰地了解整个规划的过程,因此广泛被游戏AI开发人员使用。

FSM

在游戏AI中,大部分使用以上状态机基本模型的架构被称为FSM(有限状态机)。

FSM(有限状态机)也自从在早期游戏设计中得到很好应用以来,持续至今FSMs仍然是当今世界游戏AI编程中使用最为普遍的技术之一。

最初,FSM在计算机科学中被作为一种语法分析的算法,其通过特有的编译器来检验用户输入的数据信号完成语法分析。

而在游戏设计中,它作为一种简单却功能强大的AI架构,却能帮助编程人员将最初的大型问题分解为可控的子问题,并能从根本上实现架构的可扩展和实用。

FSM架构的核心是从整个大型游戏系统中分解出来一系列的状态,每一个状态作为一个独立的模块都包含了更新逻辑、转换逻辑以及一部分进入和跳出状态的方法。

每次游戏世界发生变化都需要更新状态机,此时架构会调用全局更新方法通过更新当前角色的状态模块来实现角色状态的迁移,如此反复来实现游戏角色的实时决策。

下面我们以一个Pac-Man中魔鬼的有限状态机为例解释有限状态机的基本执行过程。

从图5中我们可以发现FSM中重生状态为其的起始状态。

当魔鬼在中心房间时,将触发FSM更新,从而改变当前角色的状态为跟踪玩家状态直到出现玩家死亡和玩家吃了大力丸才发生变化。

下次场景更新时,如果出现玩家死亡,魔鬼的状态将转换到随机移动的状态,而出现玩家吃了大力丸,玩家状态将发生改变,魔鬼的状态则将转换到逃离玩家的状态。

当然游戏中还有如玩家重生、魔鬼被吃、大力丸使用完毕等状态,将会同样对角色的状态转移产生影响。

在这样的图解下我们可以很一目了然角色的状态以及状态装换的触发条件。

当一个游戏系统中需要对不同NPC进行AI控制时,这样的架构就将变得非常适用。

但是FSM同样存在着不足:

(1)由于FSM无法存储角色状态,导致角色行为无法实现中断恢复。

(2)无法表示在高层反复出现的模式,导致顺序执行和有条件执行的行为很难抽象。

图5Pac-Man中魔鬼的有限状态机模型

FSM的改进技术

由于FSM存在着一些不足,在此基础上发展了一系列用于解决游戏角色的复杂行为,如基于栈的FSM(用于行为的中断和恢复)、模糊状态机(用于处理模糊触发机制)、分层有限状态机(高层状态被用于共享和重用状态转移)以及概率有限状态机等。

Simbionic作为一款采用FSMs架构的可视化AI编辑工具,集合了当前FSMs及其FSMs扩展技术包括:

决策评估技术、基于分层或堆栈技术的行为执行技术、行为中断技术以及行为多样性设置等等。

这样让开发者对角色行为设置时将更加简便并且可以通过图形化的设置完成行为模块间的关联。

虽然该工具包含了如上的改进技术能够满足开发者的设计复杂行为的苛刻要求,但是在面对角色间协作行为时,由于FSMs架构都是硬编码实现设计好的,如若出现队友状态发生改变时,自己的架构要做出相应的改变,从而导致无法实现角色间的正常协作。

除了上面介绍的基于FSMs技术的AI工具,还不得不提到HFSM(分层有限状态机),它自从1987年由Harel提出后就在很多领域等到了应用。

HFSMs允许设计者将角色状态按照一定的设计规范分层,每层内的状态按照初始的FSMs架构进行设计。

比如以图4为例如果角色引入一个补充体力的状态,也就是说无论在什么状态下(除初始状态),都需要对当前角色的体力值进行测试并作出决策,这样如图6所示重新生成一个FSMs模型。

从图中我们可以看见补充体力状态重复的出现,此时补充体力状态被称为“警钟行为”,根据HFSMs理论我们应当将补充体力状态抽离出来,而将另外三个状态单独设置为一层,这样构建成最终的HFSM模型(如图7所示)。

这样将简化系统避免系统复杂化带来的状态机的无限扩展,而变得更加具有条理,这样的技术也为行为网络以及BT(行为树)的形成奠定了坚实的理论基础。

图6增加补充体力的FSMs模型

图7HFSMs模型

BNs(行为网络)

当前视频游戏中的角色大部分处于一个三维的虚拟空间中,并同时受到了来自外界各种实体的不同的作用,造成角色面对的环境越来越多样且复杂,这样对应的角色要处理这些问题所采取的行为自然也千差万别。

行为网络正是作为一种在复杂动态环境中选择充分有效的行为的机制被提出的。

行为网络集中了传统计划系统(比如:

基于先决条件和效果的行为之间的连接)和连接系统(比如激活传播)的特点,以行为选择作为网络的各个节点,通过网络链路实现节点之间行为的选择。

自从行为网络出现以后一直在不断地发展,并广泛的应用于动物模拟、交互式的故事讲述、机器人世界杯以及虚幻竞技场游戏中。

EBNs(扩展的行为网络)

扩展的行为网络作为行为网络的新进展,是另一种不断发展基于行为的结构。

一个扩展的行为网络可以被看作一个相互连接的模块和目标的集合,从目标开始接着流向模块,通过激活的传播,模块之前相互抑制或激发。

在每一步,被选择执行的模块是那些具有最高执行值的模块,并且它们都具有执行时所需要的所有资源。

其中模块的执行值指的是模块的激活性和可执行性的乘积(比如用模糊逻辑中的“与”操作它的各个条件)。

如图8所示表示的是一个简单的扩展行为网络。

其中圆角矩形表示行为网络的目标值,而行为则被描述成一个包含有条件、行动、效果列表以及资源的直角矩形。

图8简单的扩展性为网络

这样一个行为架构综合了前面架构中快速、模块化、稳定的基本特点。

同时其基于目标的网络模型以及激发式的行为特点,让整个架构具有了健壮性(底层个别行为出现问题时能够自调整)、并发性(多个行为并发执行)、可渐进性以及高适应性等的特点。

整个架构模块间关联紧密且每个模块的各个信息的设置量大,虽然它能够更加真实的处理复杂动态环境,并能够解决复杂行为的中断和协作问题,但是对设计人员来说为每一个关键角色设计一个这样的行为网络的工作量实在是不可以估量的。

HTN(分层任务网络)

由于HTN架构在游戏Killzone2中的成功使用,并令该游戏能够在每秒钟的时间内做500次准确的决策,这样一个惊人的处理效率以及处理效果,让HTN成为2009年GDCAI会议上最受关注的一项规划技术。

HTN是一个能够为AI系统高效的提供决策信息的分层的行为架构。

虽然HTN在1975年Sacerdoti就在学术界提出这一个概念,但是在不同领域的应用和发展造成HTN的最终架构不为形成统一。

在游戏开发中,HTN集合了行为网络的特点,同时将行为网络中的各个子模块设计成FSMs架构中的目标状态,从而HTN架构不仅能够很好的处理FSMs中不能处理的复杂行为问题,同时其分层管理的理论以及模块化的重新设计都在一定程度上减轻了设计人员设计HTN的工作量。

复杂的行为在这样的架构下得到了简化,这当中不可忽视的一点就是网络架构和分层理论混合在一块容易造成层次间的关系变得模糊,以至为了保证决策的真实性,最后大部分HTN架构退化成HFSMs架构。

BT(行为树)

前面介绍的几种架构,如决策树和状态机大部分用于处理游戏世界中一些预设的行为规划和设计,而行为网络架构则大部分是基于目标的模式,所以所有的行为都是通过前瞻的形式推理出来的,比较这两种类型架构我们可以发现,它们在处理大型复杂动态环境的行为时,都存在着不同的问题,前一种类型由于所有变化都在设定范围内而造成行为模式化,后一种可以保证行为动态性,但在面对实时变化的场景前瞻的行为队列无法产生设想的效果。

BTs集中了有限状态机的直接性和高响应性、脚本语言的灵活性和全面性、行为网络中的自治性和目标性以及规划系统的真实感等其他AI技术的特点,让该行为架构能够使智能角色高效的处理复杂环境并快速作出真实的反应。

行为树基于目标导向,下层分支采用多种选择策略、不同的装饰模式、以及基本构造子模块共同协调实现目标。

图9中表示的为一棵简单的行为树,可以从中发现行为树在很大程度上和HFSMs在许多地方有类似的地方,然而行为树将各个执行模块设计成任务模块而非状态模块。

每一任务架构

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 生产经营管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1