管理信息化之人工智能.

上传人:精****库 文档编号:137886384 上传时间:2020-07-12 格式:DOC 页数:21 大小:1.88MB
返回 下载 相关 举报
管理信息化之人工智能._第1页
第1页 / 共21页
管理信息化之人工智能._第2页
第2页 / 共21页
管理信息化之人工智能._第3页
第3页 / 共21页
管理信息化之人工智能._第4页
第4页 / 共21页
管理信息化之人工智能._第5页
第5页 / 共21页
点击查看更多>>
资源描述

《管理信息化之人工智能.》由会员分享,可在线阅读,更多相关《管理信息化之人工智能.(21页珍藏版)》请在金锄头文库上搜索。

1、1.导论Virtools dev的AI软件包为电视游戏或虚拟现实带来了更高的仿真度。AI软件包提供一组扩展的行为模块,这些行为模块可以管理特定角色或物体。使用AI软件包提供的行为模块,用户可以定义角色或物体为AI物体(一般称为AIbot),这些物体可以对周围环境做出评测,并且作出行为上的选择,创建群体行为和独立角色,使那些角色可以寻找物体、守卫巡逻区或与其他角色格斗等等。AI行为模块首先赋予角色视听感觉能力以便侦测他们的环境,然后使用更高级的行为模块(例如follow、run away、hide等)管理角色对环境做出的反应。在virtools中提供四类AI行为模块,他们是:Initializa

2、tion(初始化行为模块组):在执行AI之前对场景进行测试、初始化AI引擎和场景中的AI物体、自动生成或输入AI引擎所需要的环境数据。Data Edition(数据编辑行为模块组):用户编辑环境信息的行为模块。AI Logic(逻辑行为模块组):测试条件,然后在复杂的环境中开启恰当的AI action。Action(动作行为模块组):这些行为模块是AI软件包的核心部分,这些行为模块可以使AIBots拥有相当智能的行为(例如射击、藏匿或跟随等等)AI行为模块和virtools标准的行为模块在使用方法上是相同的,通过参数调整诸如秘密行动、听觉能力和组队行为的标准。2. 流程AI过程包括三个主要任务

3、:定义场景、了解环境以、决策和行为。用户首先要对场景和要使用的角色进行初始化定义,ai软件包提供专门的行为模块可以进行该类工作。了解环境需要使用Graph Data。Graph Data需要用户使用特定的行为模块创建,并且保存到硬盘中。决策和行为需要使用AI的Action类行为模块配合Logic类行为模块。Logic类行为模块为AIbots提供决策,然后触发各种由Action类行为模块控制的格斗、射击、藏匿或徘徊等动作。Graph Data用于通过使用动态射线选择路线或寻找可以躲避目标AIBot的位置。所有的AI动作都通过消息驱动,消息被用户的脚本解释和处理并且一般会触发一个动作。2.1. A

4、I执行过程在使用AI功能之前,用户首先需要创建场景。用户需要保证所有的角色和动画的功能正常,并且在添加任何AI功能之前需要设置碰撞侦测和障碍物。障碍物和地板必须被声明为固定的障碍物,并且用户需要建立碰撞系统。用户需要添加PathObject属性到诸如门、梯子等一类物体上。这将影响到路径搜寻。首先有三个初始化行为模块需要在每一个场景中被运行:AI Level Settings行为模块需要出现在Level脚本中、Create AI Entity 行为模块和Set Personal Parameters行为模块需要出现在AIbot的脚本中。当用户的场景准备好,需要使用Test Agent行为模块测试

5、场景中的位移和碰撞然后使用create graph data行为模块,为AIbot勘测地形。Graph Data可以描述环境信息,主要的作用就是简化环境信息,使用graph data可以加快角色在环境中寻找路径的能力。graph data信息会在硬盘上面保存bin文件,并且可以被edit graph行为模块查看、编辑。graph data信息可以被import data行为模块导入并在场景中保存为一个数据阵列。注意,用户可以为不同的AIbots生成不同的graph data,不同角色的graph data会相同的环境进行不同的描述。例如个子较高的角色可能不能到个子教矮的角色可以到达的区域,这时

6、候两个角色虽然同处于同一个环境中,但是需要不同的graph data,以便定义不同的角色的活动区域。使用edit pathway行为模块创建或辑特定路径,路径独立于Graph Data。例如创建一个角色的巡逻区最后可以使用Actions类行为模块配合Logics类行为模块,添加AI功能到AIbots上面。3 使用AI软件包3.1. 准备工作AI基本上是工作的最后一个步骤。用户首先需要构建场景和脚本。然后确定所有的角色和动画功能正常,并且在添加AI功能之前需要确定碰撞监测和障碍物需要进行正确的设置。在使用AI之前,需要为场景中的特定物体添加AI (Path)Object和Collision Ma

7、nager这两类属性定义障碍物地板和障碍物需要被定义为固定的障碍物。首先需要打开物体的setup窗口,为物体添加Fixed Obstacle属性,之后可以通过属性值修改固定障碍物的属性。定义路径物体路径物体是场景中用于更改所访问的区域的元素。用户可以为诸如门、梯子、电梯和传送点一类的物体添加对应的属性,并且做出正确的设置,这样做之后则可以作为路径被搜寻到。定义避让区域AI的动作类大多数行为模块可以控制物体移动,这些行为模块中的array of points to avoid参数可以定义某些区域在物体移动的时候应该避让,我们称之为避让区域。用户需要创建一个数据阵列定义避让区域,数据阵列中列出所有

8、围成避让区域的点的Vector。行为模块中的displacement mode参数提供的Furtive displacement(隐秘行动)和avoid dangerous points(躲避)两种模式,会对避让区域做出反应。Furtive displacement(隐秘行动)模式会使物体在避让区的时候尽可能隐藏自身;avoid dangerous points(躲避)模式会使物体尽可能的远离避让点。很多时候,删除Graph Data中的点也可以使AIbots避让某些区域,这比创建避让点更加容易一些,但是这种方法生成的避让区域将是静态的,在避让区域时常需要更改的时候这种方法就无能为力了。有些行

9、为模块中会有referential for the points to avoid参数,当使用referential for the points to avoid参数的时候,描述避让区域的数据阵列中的点的Vector值,将不再使用世界坐标系统。创建角色群组AI Action类某些行为模块中会有Displacement Mode参数,当使用参数的furtive displacement considering the characters view angle选项的时候,物体会在角色的视觉范围内隐秘行动,这个时候用户需要设置Groups of characters to avoid参数为某个特

10、定的由角色组成的群组。3.2. 初始化AI与程序测试3.2.1.初始化AI用户需要使用一些AI Initialization类行为模块初始化AI,并且在脚本开始的时候这些行为模块必须被触发。AI Level Settings一般用于整个场景的AI初始化,而Create AI Entity行为模块和Set Personal Parameters行为模块用于单个物体的初始化。AI Level Settings 行为模块AI Level Settings行为模块必须使用在level script上,并且只需要也只允许在AI角色被初始化之前启动一次。在AI Level Settings行为模块里面有三

11、个重要的设置:Max entity:场景中允许出现的最大AI物体数量。比较大的参数值会占用更多的cpu和内存资源。allowed time per frame(ms):AI time将ai的计算任务分配到很多桢,以便保持桢速率。参数值为0代表着没有时间限制。参数值比较低的时候,计算会被分配到更多桢,aibot的响应速度会降低。参数值比较高的时候,桢速率会降低。这个参数值常被设置为1到5毫秒之间,设置这个参数需要考虑AIbots的数量、场景的复杂程度、aibots的响应速度和桢速率需求。value of a meter:用于变换创建模型的单位。如果模型所使用的单位是英寸,那么这个参数值应该设置为

12、39.37这个行为模块添加诸如AI_WALK、AI_RUN等消息。他允许AI Action类行为模块发送这些消息,这些消息将会作用于用户的脚本中。这些消息会触发类似Unlimited Controller一类的行为模块控制的角色动作。Create AI Entity行为模块在物体运行任何其他AI行为模块之前,用户需要为物体运行Create AI Entity行为模块,这会将物体添加到AI引擎的物体列表。任何需要被AI引擎计算的物体都必须使用create AI Entity行为模块进行定义。所有的路径物体同样需要使用create AI Entity行为模块进行定义。create AI Entit

13、y行为模块可以将物体定义为三种不同类型的AI物体。Player:有游戏者控制的物体,虽然这些物体不被AI引擎控制,但是这些物体会影响AI引擎内其他的物体。AIbot:这一类物体时被AI引擎控制的自动物体Path Object:这类物体只会对搜寻路径起作用,一般用于定义门、电梯、传送点或梯子一类的物体。注意:在create AI Entity行为模块必须是物体脚本中第一个被触发的行为模块,所以create AI Entity行为模块出口处的连接必须被设置延迟,这样才能保证所有的AI action类型为模块会在物体被初始化之后运行。因为很多的AI行为模块会需要物体作为参数输入,但这些作为参数输入的

14、物体必须是已经被初始化的物体,所以我们说,所有的AI action类型为模块必须在create AI Entity行为模块将物体初始化之后才可以被执行。另外当一个物体不再需要被ai引擎考虑的时候,可以使用Remove AI from Entity行为模块将物体设置为非ai物体,这样会减轻ai引擎的计算负担。Set Personal Parameters行为模块这个AI初始化行为模块可以在需要的时候动态的设置角色的技能和属性:视听敏锐度、视觉角度、组队信息、Graph Data信息使用和路径搜寻精度等。(例如如果一个AIbot进入了一个黑暗的房间,那么视觉敏锐度就应该降低,并且使用新的Graph

15、 Data)。这个行为模块同样需要在物体脚本的开始被触发。在Set Personal Parameters行为模块中会出现如下参数:Entity Direction:设置物体正前方的方向Team ID:组队的编号Hearing acuteness:角色听觉的敏锐度。设置角色和声音的距离,当角色和声音之间的距离小于这个参数的时候,角色就可以听到声音。Visual acuteness:角色视觉的敏锐度。设置角色和可视物体的距离,当角色和可视物体之间的距离小于这个参数的时候,角色就可以看到物体。 Angle of view cone:角色的视角大小,设置角色可以看到的范围Bot Max Speed:bot的行动速度(单位为 米/秒)Bot Height:角色的双脚和位置之间的y轴距离Bot Width:角色的宽度Distance Between two Goals:当角色在追寻一个活动的目标,并且这个目标移动超出了参数所设置的距离,角色将启动一次新的路径搜寻。比较大的参数值将会降低目标搜寻的精准度,但是会提高程序的执行速度。Minimum Distance to the goal:当角色与目标之间的距离小于这个参数的时候,角色会认为自己已经到达。Minimum Distance to an inte

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号