一种虚拟人群运动仿真框架的制作方法

文档序号:6559950阅读:235来源:国知局
专利名称:一种虚拟人群运动仿真框架的制作方法
技术领域
本发明涉及虚拟现实领域,特别涉及一种虚拟人群运动仿真框架。
背景技术
在虚拟现实领域中,逼真的群体运动仿真能够用来模拟各种场所(如大型体育场馆、地铁站等)各种情况(如火灾、海难、空难、地震等)下的人群流动情况,为突发事件应急预案的制定、评价和完善提供科学、直观的分析工具;也能够用来生成成千上万的虚拟兽群或虚拟军团的运动,从而可以降低影视制作成本、提高影视作品和游戏场景的视觉逼真性。因此,在公共安全、建筑设计评估、影视制作、游戏娱乐等虚拟现实相关领域具有广泛的应用前景。
在现实生活中,人群的运动由个体运动有机结合而成,受个体、环境等因素影响,具有一定的规律性、很强的复杂性,同时又伴随着一定的随机性。建立虚拟人群体运动仿真框架,并通过计算机进行逼真的虚拟人群运动仿真,是虚拟现实领域的研究热点和难点之一。现有的虚拟人群运动仿真方法,多针对某一特定的应用场景,通过对环境因素进行限定、对人群运动进行简化、抽象来实现群体运动的模拟,例如,文献1“D.Helbing,I.Farkas,T.Vicsek,Simulating Dynamical Features ofEscape Panic,Nature 407(2000)487-490”;参考文献2“Brogan,D.and Hodgins,J.“Group Behaviours for Systems with Significant Dynamics”.Autonomous Robots,4,137-153.1997”所介绍的仿真方法。这些方法及其相应的仿真工具不仅逼真性有限,通用性也较差,无法满足现实应用中遇到的各种复杂情况。
因此,研究通用的群体运动仿真框架,实现各种场景中,多环境因素影响下的逼真的虚拟人群运动仿真,不仅有重大的理论意义,也具有广泛的应用领域以及重要的实用价值。

发明内容
本发明的目的是克服现有的虚拟人群运动仿真方法及其相应的仿真工具逼真性有限、通用性较差,无法满足现实应用中遇到的各种复杂情况的缺陷,从而提供一种通用的虚拟人群运动仿真框架,实现各种场景中,多环境因素影响下虚拟人群体运动的逼真模拟。
为了实现上述目的,本发明提供一种虚拟人群运动仿真框架,包括总控台部分1、环境表示部分2和个体模拟部分3,其中所述的总控台部分1进行虚拟人群运动仿真的总体管理和控制,提供实现虚拟人群运动仿真所需要的各种配置,进行各部分的调度管理,监控仿真程序是否按照设定的方式正常运行;所述的环境表示部分2负责虚拟人群运动仿真中环境的表示和设定,组织和管理环境信息,支持对于环境信息的查询和更新;所述的个体模拟部分3负责个体运动仿真的实现,并通过对个体运动仿真的有机结合,实现群体运动的仿真;所述的总控台部分1分别与所述的环境表示部分2和所述的个体模拟部分3连接,所述的环境表示部分2与所述的个体模拟部分3间也相互连接。
上述技术方案中,所述的总控台部分1由显示控制子部分11、渲染管理子部分12、环境管理子部分13、群体管理子部分14、时钟更新控制子部分15组成;其中,所述的显示控制子部分11用于确定显示角度,提供仿真结果的显示模式;所述的渲染管理子部分12负责在仿真程序运行时根据显示模式对物体和个体的渲染管理,确定需要渲染显示的物体并调用相应的渲染函数进行渲染;所述的环境管理子部分13负责读取环境图纸和物体模型,加载环境,生成环境信息库,将环境中物体信息数据加入信息库,在程序结束时销毁信息库;所述的群体管理子部分14负责在程序需要时生成群体,并进行初始化,以及在程序运行结束时销毁群体;所述的时钟更新控制子部分15负责根据需要的方式进行系统时间的设定和更新,并根据时间进行环境和个体位置的更新。
上述技术方案中,所述的环境表示部分2由物体模型子部分21和环境信息库子部分22组成,所述的物体模型子部分21由包含三维信息的几何模型211和包含使用信息的功能模型212组成;所述的环境信息库子部分22由所述的环境管理子部分13在环境加载后创建。
上述技术方案中,所述的个体模拟部分3包括行为生成层31、行为执行层32和物理实现层33三个子部分,其中,所述的行为生成层31根据个体所处的情况查询获取环境信息,并基于获得的环境信息生成个体需要采取的行为,交予行为执行层32执行;所述的行为执行层32负责执行行为生成层31生成的行为,同时考虑各种行为的轻重紧急程度对同时并发的多种行为予以融合,得到一个合理的综合执行结果;所述的物理实现层33负责在具有特定运动属性的物理模型上实现行为执行层32得出的综合行为执行结果。
所述的行为生成层31在生成行为动作时采用基于if-then规则的方法或基于概率的方法或基于状态自动机的方法或是基于物理学的方法。
所述的行为生成层31包括感知单元311、行为规划及监督执行单元312、个体状态管理单元313,其中,所述的感知单元311根据需要的感知方式,从所述的环境信息库22中查询并提取所需的信息,将需要的信息传递给行为规划及监督执行单元312;所述的行为规划及监督执行单元312根据感知单元311感知得来的信息数据,同时考虑个体状态管理单元313提供的个体状态信息,给出需要执行的单个或多个行为以及执行所需的信息,并监控动作的执行,直到执行动作结束或者新情况出现;所述的个体状态管理单元313为规划及监督执行单元312提供个体物理层次和精神层次的状态信息,并根据执行情况对本身状态进行调整。
所述的行为执行层32包括单个行为执行单元321、多执行结果融合单元322和运动特性单元323;所述的单个行为执行单元321执行行为规划及监督执行单元312给出的需要同时执行的单个或多个行为,给出单个或多个执行结果;所述的多执行结果融合单元322将多个单个行为执行的执行结果按照一定的融合规则和方法进行融合,得出最终的行为执行结果;所述的运动特性单元323在需要时将运动特性提供给单个行为执行单元321和多执行结果融合单元322,以生成有特性的行为执行结果。
在所述的多执行结果融合单元322中进行行为融合时采用矢量运算法或平均融合法或权重融合法或公式计算法或概率投票法。
所述的运动特性包括最大速度、反应时间,所述的运动特性可根据个体状态进行调整。
本发明的优点在于1、本发明的虚拟人群运动仿真框架不受应用场景和环境因素的限定,也不特定于某种群体类型,通过不同个体行为的设定可以方便的模拟不同情境下虚拟人群的运动,因此,该框架具有很强的通用性。
2、本发明的虚拟人群运动仿真框架通过思考层、执行层和物理实现层分层次分任务来进行个体行为的模拟,充分考虑个体一个体之间的影响、环境因素对个体运动的影响,通过本框架中行为生成方式和物理实现方式的调整和设定,将个体运动有机的结合起来,实现虚拟人群的逼真运动仿真。
3、本发明的虚拟人群运动仿真框架设计个体本身状态调整和运动特性等部分均为可以拆卸部分,可以根据需要进行拆卸或增加,同时用来进行个体模拟的方式也有很大的选择空间,可以满足不同规模不同细度的群体模拟要求,因此,该框架具有很好的灵活性和伸缩性。


图1为本发明的虚拟人群运动仿真框架的结构图。
图面说明1总控台部分 2环境表示部分 3个体模拟部分11显示控制子部分12渲染管理子部分 13环境管理子部分14群体管理子部分15时钟更新控制子部分 21物体模型子部分22环境信息库子部分 211几何模型212功能模型31行为生成层子部分 32行为执行层子部分 33物理实现层子部分311感知单元 312行为规划及监督执行单元313个体状态管理单元 321单个行为执行单元322多执行结果融合单元323运动特性单元具体实施方式
下面结合附图和具体实施方式
对本发明作进一步的说明。
如图1所示,本发明的虚拟人群运动仿真框架由三部分组成,包括总控台部分1、环境表示部分2和个体模拟部分3。
总控台部分1进行程序运行的总体管理和控制,提供程序运行所需要的各种配置,进行各部分的调度管理,监控程序是否按照设定的方式正常运行。总控台部分1主要由显示控制11、渲染管理12、环境管理13、群体管理14、时钟更新控制15五个子部分构成。其中,显示控制子部分11用于确定显示角度,提供仿真结果的显示模式,它相当于一个照相机,负责根据需要调整程序仿真结果在屏幕上的显示方式。渲染管理子部分12负责在程序运行时根据显示模式对物体和个体的渲染管理,确定需要渲染显示的物体并调用相应的渲染函数进行渲染。环境管理子部分13负责读取环境图纸和物体模型,加载环境,生成环境信息库22,将环境中物体信息数据加入信息库,在程序结束时销毁信息库。群体管理子部分14负责在程序需要时生成群体,并进行初始化,以及在程序运行结束时销毁群体。时钟更新控制子部分15相当于系统时钟,主要负责根据需要的方式进行系统时间的设定和更新,并根据时间进行环境和个体位置的更新。
环境表示部分2主要负责环境的表示和设定,组织和管理环境信息,支持对于环境信息的查询和更新。环境表示部分2由物体模型子部分21和环境信息库子部分22组成。其中物体模型子部分21使用包含三维信息的几何模型211和包含使用信息的功能模型212来进行表示,几何模型211可用3DMax等建模软件获得,功能模型212可以通过功能函数进行实现。环境信息库子部分22由总控台1的环境管理子部分13在环境加载后创建,通过一定的数据结构和操作方式支持信息的查询和更新,比如现在经常采用的二分树、八叉树等结构。
个体模拟部分3主要负责个体运动仿真的实现,并通过对个体运动仿真的有机结合,实现群体运动的仿真。它具体包括行为生成层31、行为执行层32和物理实现层33三个子部分。
其中,行为生成层31将根据个体所处的情况查询获取环境信息,并基于获得的环境信息生成个体需要采取的行为,交予行为执行层32去执行。目前,可以用来进行行为生成的方法有很多,比如基于if-then规则的方法、基于概率的方法、基于状态自动机的方法或是基于物理学的方法等。行为生成层31还可以做进一步的划分,包括感知单元311、行为规划及监督执行单元312、个体状态管理单元313。所述的感知单元311根据需要的感知方式,从环境信息库22中查询并提取所需的信息,将需要的信息传递给行为规划及监督执行单元312。所述的行为规划及监督执行单元312根据感知单元311感知得来的信息数据,以及如果需要,同时考虑个体状态管理单元313提供的个体状态信息,给出需要执行的单个或多个行为以及执行所需的信息,并监控动作的执行,直到执行动作结束或者新情况出现。所述的个体状态管理单元313在需要的情况下,为行为规划及监督执行单元312提供个体物理层次和精神层次的状态信息,同时,根据执行情况对本身状态进行调整。
行为执行层32主要负责执行行为生成层31生成的行为,同时考虑各种行为的轻重紧急程度对同时并发的多种行为予以融合,最终得到一个合理的综合执行结果。目前,普遍采用的行为融合法有矢量运算法、平均融合法、权重融合法、公式计算法和概率投票法等多种。
所述的行为执行层32还可以进一步划分为单个行为执行单元321、多执行结果融合单元322和运动特性单元323。所述的单个行为执行单元321执行行为规划及监督执行单元312给出的需要同时执行的单个或多个行为,给出单个或多个执行结果。所述的多执行结果融合单元322将多个单个行为执行的执行结果按照一定的融合规则和方法进行融合,得出最终的行为执行结果。所述的运动特性单元323在需要时将运动特性提供给单个行为执行单元321和多执行结果融合单元322,以生成有特性的行为执行结果。所述的运动特性包括最大速度、反应时间等,可根据个体状态进行调整。
物理实现层33则主要负责在具有特定运动属性的物理模型上将行为执行层32得出的综合行为执行结果进行实现。其中的物理模型可以简单的视为质点,也可以为人或动物,还可以为机器人或自行车等可驱动运动的器物工具。通过对这些物体模型运动方式的建模,可以驱动不同的物理模型生成仿真运动。在每次运动更新后物理实现层33还负责更新个体在信息库中的信息。
下面就爆炸和火灾两个具体的例子对本发明的虚拟人群运动框架进行说明。首先确定模拟发生的环境,比如大型场馆,居民小区等,总控台部分1建立环境信息库22,将环境信息,添加到信息库22中,根据用户需要生成初始模拟的人群,同样要将人群的初始信息添加入信息库22。如突然在A点发生爆炸,则更新爆炸模型在信息库中的信息。同时,个体通过感知,查询信息库22,获得A点的爆炸信息,同时依据距离A点的远近程度和身边的情况通过行为生成层决定采取不同的措施。比如,情况一个体在场馆外,距离A点较远,则可能一时对爆炸的反应不明显,因此行为生成的结果是在原地朝爆炸地张望。情况二个体是在爆炸地附近但是没有受伤,则有可能惊慌失措的寻找逃生路线,因此行为生成结果是,先确定疏散目标,然后朝目标行进。行为生成后交付行为执行层执行,对于情况一,只有一个行为,则行为执行层依据个体的特性执行原地张望动作即可,对于情况二,在确定疏散目标后,朝目标行进时,需要同时考虑两种行为,一是不断朝目标前进,一是沿途避免和物体以及其他个体碰撞。所以行为执行层32考虑个体的运动特性融合这两种行为得出合理结果。再往后行为执行层32将结果交付物理实现层33合成人的动作。在这过程中,由总控台1不断通过时钟更新程序15,通过渲染管理12调用渲染函数进行整体渲染,直至模拟结束,模拟结束后程序关闭时再由总控台1将信息库22和人群销毁。同样,如果是火灾,则只需将爆炸模型换成火灾模型,同时更换个体行为生成层31的行为生成准则使之生成符合火灾行为规律的行为,比如逃散、灭火、匍匐前进等,并在行为执行层32执行、融合,其他则基本上不需改变。由此可见,该发明所述的框架是具有很好通用性,能灵活应用来满足各种需求。
权利要求
1.一种虚拟人群运动仿真框架,包括总控台部分(1)、环境表示部分(2)和个体模拟部分(3),其中所述的总控台部分(1)进行虚拟人群运动仿真的总体管理和控制,提供实现虚拟人群运动仿真所需要的各种配置,进行各部分的调度管理,监控仿真程序是否按照设定的方式正常运行;所述的环境表示部分(2)负责虚拟人群运动仿真中环境的表示和设定,组织和管理环境信息,支持对于环境信息的查询和更新;所述的个体模拟部分(3)负责个体运动仿真的实现,并通过对个体运动仿真的有机结合,实现群体运动的仿真;所述的总控台部分(1)分别与所述的环境表示部分(2)和所述的个体模拟部分(3)连接,所述的环境表示部分(2)与所述的个体模拟部分(3)间也相互连接。
2.根据权利要求1所述的虚拟人群运动仿真框架,其特征在于,所述的总控台部分(1)由显示控制子部分(11)、渲染管理子部分(12)、环境管理子部分(13)、群体管理子部分(14)、时钟更新控制子部分(15)组成;其中,所述的显示控制子部分(11)用于确定显示角度,提供仿真结果的显示模式;所述的渲染管理子部分(12)负责在仿真程序运行时根据显示模式对物体和个体的渲染管理,确定需要渲染显示的物体并调用相应的渲染函数进行渲染;所述的环境管理子部分(13)负责读取环境图纸和物体模型,加载环境,生成环境信息库,将环境中物体信息数据加入信息库,在程序结束时销毁信息库;所述的群体管理子部分(14)负责在程序需要时生成群体,并进行初始化,以及在程序运行结束时销毁群体;所述的时钟更新控制子部分(15)负责根据需要的方式进行系统时间的设定和更新,并根据时间进行环境和个体位置的更新。
3.根据权利要求2所述的虚拟人群运动仿真框架,其特征在于,所述的环境表示部分(2)由物体模型子部分(21)和环境信息库子部分(22)组成,所述的物体模型子部分(21)由包含三维信息的几何模型(211)和包含使用信息的功能模型(212)组成;所述的环境信息库子部分(22)由所述的环境管理子部分(13)在环境加载后创建。
4.根据权利要求1所述的虚拟人群运动仿真框架,其特征在于,所述的个体模拟部分(3)包括行为生成层(31)、行为执行层(32)和物理实现层(33)三个子部分,其中,所述的行为生成层(31)根据个体所处的情况查询获取环境信息,并基于获得的环境信息生成个体需要采取的行为,交予行为执行层(32)执行;所述的行为执行层(32)负责执行行为生成层(31)生成的行为,同时考虑各种行为的轻重紧急程度对同时并发的多种行为予以融合,得到一个合理的综合执行结果;所述的物理实现层(33)负责在具有特定运动属性的物理模型上实现行为执行层(32)得出的综合行为执行结果。
5.根据权利要求4所述的虚拟人群运动仿真框架,其特征在于,所述的行为生成层(31)在生成行为动作时采用基于if-then规则的方法或基于概率的方法或基于状态自动机的方法或是基于物理学的方法。
6.根据权利要求4所述的虚拟人群运动仿真框架,其特征在于,所述的行为生成层(31)包括感知单元(311)、行为规划及监督执行单元(312)、个体状态管理单元(313),其中,所述的感知单元(311)根据需要的感知方式,从所述的环境信息库(22)中查询并提取所需的信息,将需要的信息传递给行为规划及监督执行单元(312);所述的行为规划及监督执行单元(312)根据感知单元(311)感知得来的信息数据,同时考虑个体状态管理单元(313)提供的个体状态信息,给出需要执行的单个或多个行为以及执行所需的信息,并监控动作的执行,直到执行动作结束或者新情况出现;所述的个体状态管理单元(313)为规划及监督执行单元(312)提供个体物理层次和精神层次的状态信息,并根据执行情况对本身状态进行调整。
7.根据权利要求6所述的虚拟人群运动仿真框架,其特征在于,所述的行为执行层(32)包括单个行为执行单元(321)、多执行结果融合单元(322)和运动特性单元(323);所述的单个行为执行单元(321)执行行为规划及监督执行单元(312)给出的需要同时执行的单个或多个行为,给出单个或多个执行结果;所述的多执行结果融合单元(322)将多个单个行为执行的执行结果按照一定的融合规则和方法进行融合,得出最终的行为执行结果;所述的运动特性单元(323)在需要时将运动特性提供给单个行为执行单元(321)和多执行结果融合单元(322),以生成有特性的行为执行结果。
8.根据权利要求7所述的虚拟人群运动仿真框架,其特征在于,在所述的多执行结果融合单元(322)中进行行为融合时采用矢量运算法或平均融合法或权重融合法或公式计算法或概率投票法。
9.根据权利要求7所述的虚拟人群运动仿真框架,其特征在于,所述的运动特性包括最大速度、反应时间,所述的运动特性可根据个体状态进行调整。
全文摘要
本发明公开了一种虚拟人群运动仿真框架,包括1)总控台部分,由显示控制、渲染管理、环境管理、群体管理、时钟更新控制等子部分构成,提供程序正常运行所需要的各种配置和各部分调度管理;2)环境表示部分,组织管理群体所处环境的环境信息,支持对环境信息的查询和更新;3)个体模拟部分,由行为生成层、行为执行层和物理实现层三个子部分组成,提供对群体中单个个体运动行为的模拟,通过对群体中每个个体的行为模拟的有机结合,来实现群体的运动仿真。本发明提出的虚拟人群运动仿真框架,具有较好的通用性、逼真性和灵活性,可以仿真各种场景下、多环境因素影响下的虚拟人群运动。
文档编号G06F9/455GK1889044SQ20061009939
公开日2007年1月3日 申请日期2006年7月19日 优先权日2006年7月19日
发明者毛天露, 王洁, 李淳芃, 夏时洪, 王兆其 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1