论文部分内容阅读
近年来,随着计算机人群模拟技术的不断发展,其应用也越来越广泛,涉及的领域包括模拟训练、计算机游戏动画、影视特效和公共安全辅助设计等。例如,通过对正常情况或紧急情况下人群的运动过程进行模拟与分析,能为建筑物结构设计、大型活动客流管理、公共场所应急预案制定起到很好的指导作用。因此,对人群运动模拟方法的研究具有较大的应用价值和重要的现实意义。
本文以模拟复杂环境中人群的运动过程为目标,对计算机生成空间中复杂环境的语义表示、人群运动的逼真模拟方法和大规模人群运动的快速计算方法进行了深入的研究,取得如下研究成果:
1)提出一种面向复杂环境的虚拟环境语义模型在人群运动模拟中,虚拟人和虚拟环境的相互作用非常关键,人群在运动过程中需要不断感知周围环境信息并进行运动调整。当环境趋于复杂时,如何建立有效的环境语义模型,在合理分类的基础上对环境信息进行全面描述和组织,将极大地方便人群运动的模拟计算。但在人群运动模拟方法研究中,对环境的语义表示和组织方法的研究却往往被忽略,现有方法或不能精确地描述复杂环境,或只关心部分特定的环境信息。
本文在分析复杂环境中人群运动模拟需求的基础上,提出一种面向复杂环境的虚拟环境语义模型。首先,采用通用的环境划分和组织方式,可适用于不同类型的模拟场景;其次,通过定义功能区域描述特定的公共设施,支持模拟更丰富的个体行为;第三,提出双层拓扑图方法,可以更精确的描述分块复杂环境中各区域之间以及各区域内部的连通关系,支持快速的群体路径规划,1万个个体可在10ms左右完成全局路径的计算;最后,环境语义模型中,语义信息分为可重复使用的低层语义信息和自动生成的高层语义信息,可以快速完成一个复杂环境的语义建模。
2)提出一种基于个体规则和全局势能场的人群运动模拟方法对于复杂环境中的人群运动模拟,既要逼真模拟人群的全局运动趋势,引导个体前往目标,又要模拟局部的个体行为,识别局部环境并做出真实的反应。已有的人群局部控制方法虽然可以定义和模拟不同类型个体的运动,但是其控制模型或需要非常细心地设计其中的规则甚至规则的应用顺序,或较难获得平滑的运动轨迹。而全局控制方法因其在一个模拟框架内统一处理局部碰撞冲突和全局路径导航,群体运动轨迹更加平滑自然,但这类方法在环境状态映射中存在失真和不全面的问题,将导致严重的碰撞穿透现象等;而且缺乏人群行为控制手段,模拟的人群行为缺乏多样性。
针对复杂环境中人群运动模拟的特点,本文提出一种基于个体规则和全局势能场的人群运动模拟方法。首先,设计了自适应的密度映射方法和基于Max-norm距离的静态障碍不适场,以此计算全局势能场,与经典势能场方法相比,在模拟复杂环境中的拥挤人群时极大地降低了人群之间的碰撞冲突程度,且模拟个体能更准确的感知障碍物的轮廓并计算出更平滑的运动轨迹;其次,通过一组特定的个体运动规则控制个体的局部运动行为,从而使虚拟个体能正确识别特定环境并作出正确反应,实现了多样化的个体行为模拟。该方法既能较好地模拟人群在复杂环境中的全局运动趋势,又能逼真反应局部的个体行为,实验结果表明,通过真实视频数据的校正,该方法在楼梯等关键通道的人流量误差可控制在5%以内。
3)提出一种基于局部代价评估的人群运动模拟方法大场景中大规模人群的运动模拟具有重要的应用价值。由于具有场景规模大、模拟人群规模大和人群可达目标数目多的特点,导致运动模拟的计算量较大。因此,有必要研究适合并行处理的人群运动模拟方法,在保证较高的微观模拟精度的基础上,尽量减少模拟耗时。已知的基于个体的方法虽然适合并行处理,但模拟的效果往往不尽人意;而基于全局势能场的方法可以获得更平滑自然的人群运动轨迹,但在大场景中且目标较多的情况下计算效率较低,且难以进行任务划分和并行计算。
本文在分析各种模型计算特点的基础上,提出一种基于局部代价评估的人群运动模拟算法:首先,利用一组状态场保存全局环境信息;其次,模拟计算以自治个体和其周围的局部信息为基础,通过一组代价函数动态评估局部环境对个体运动的影响。实验结果表明:首先,该方法能较好地处理快速动态变化的场景,产生的碰撞冲突较少、人群的运动轨迹平滑自然,而且能模拟出常见的群体自组织现象,进一步说明该方法的有效性;其次,由于每个个体的计算独立且计算量较均衡,该方法具有较好的并行特性,通过GPU以及高性能计算平台可方便地实现并行计算,极大地提高了计算效率,并使可负载的人群规模达到五十万人级别。