一种应用于虚拟仿真的分层动态路径规划方法

文档序号:8259011阅读:481来源:国知局
一种应用于虚拟仿真的分层动态路径规划方法
【技术领域】
[0001]本发明涉及虚拟仿真中的路径规划,具体涉及基于地理信息系统真实数据的虚拟仿真、虚拟仿真中的路径规划和多线程编程。
【背景技术】
[0002]路径规划是虚拟仿真等应用领域的一个重要研究内容。常用的路径规划方法主要有状态空间探索和启发式搜索两类。
[0003]状态空间搜索将问题的求解过程表示为从初始状态直到目标状态的全过程。由于求解过程中求解条件的不确定性和不完备性,一般会出现多条求解路径,所有求解路径构成的图即所谓的状态空间。问题的求解过程实际上是要在状态空间中寻找一条从起点到目标点的路径,称该寻找过程为状态空间搜索。常见的状态空间搜索方法有深度优先搜索和宽度优先搜索。状态空间搜索法存在着一个自身缺陷就是需要在一个给定的状态空间中实施穷举。
[0004]启发式搜索与状态空间搜索有着密切联系但又有一定的区别。启发式搜索的主要思路是在宽度优先搜索的同时,先将下一层的所有节点通过一个估价函数进行过滤,然后再决定搜索方向。该方法在一定程度上缩小了搜索范围,从而在整体上提高了搜索速度。启发式搜索的核心是估价函数F (x),设F (x) =G (x) +H(X),其中G (x)为从初始状态到当前状态的实际代价,而H(X)则是从当前状态到目标状态的估计代价,即估计需经过多少步才能到达目标点。扩展节点时,先将所有节点的F(X)值从小到大进行排序,然后对F(X)值较小的节点进行扩展。就地图寻径问题而言,可将H(X)定义为节点到目标点的直线距离。显然,如此定义的H(X)可以完全满足上述估价函数值达到最小值的要求,即保证了所寻找到的路径为最短路径。
[0005]与状态空间搜索算法存在穷举局限性相比,启发式算法计算效率高,已成为路径搜索算法的主流。随着计算机硬件性能的提高,其在虚拟智能等领域取得了很大的成就。然而,当前虚拟仿真中的地图数据规模迅速增长,导致启发式算法的搜索空间急剧扩展,算法时间复杂度呈指数膨胀,严重影响系统运行的效率。

【发明内容】

[0006]本发明的目的是提供一种高效的适用于大规模地形数据的虚拟仿真动态路径规划方法,能够为各种相关应用中的路径规划提供解决方案和性能加速。
[0007]为实现上述目的,一种分层的虚拟仿真动态路径规划方法,包括数据预处理和运行时实时动态路径规划两个阶段。
[0008]数据预处理阶段步骤如下:
[0009](I)将大规模地表属性数据划分为小数据块;
[0010](2)预处理每一小数据块,生成分块地图代价文件、分块路径规划文件以及粒度较粗的高层地图代价文件;
[0011](3)以配置文件的形式组织管理预处理数据块文件的索引路径,以便于高效映射访问。
[0012]实时运行阶段步骤如下:
[0013](I)使用高层次地图代价文件进行粗粒度的路径规划;
[0014](2)基于运动趋向进行数据预测,并采用LRU算法对分块路径规划文件进行多线程异步调度;
[0015](3)针对每一数据块路径规划文件所记录的预计算路径,动态选择相对较优的路径进行拼接完成大规模地形环境下的路径规划。
[0016]与以往路径规划算法不同,本发明利用分层的思想优化了启发式搜索的数据访问,在保证仿真系统实时平稳运行的同时,可以较好地解决虚拟实体在大规模地域范围内的路径规划问题,算法性能优越,在虚拟仿真等领域中具有重要的应用价值。
【附图说明】
[0017]图1地形总体配置文件示意图
[0018]图2分块地图代价文件代价预处理流程图
[0019]图3分块路径规划文件示意图
[0020]图4地形分块路径规划预处理过程示意图
[0021]图5运行时分层路径规划策略处理流程图
[0022]图6顶层路径规划结果中的地形块相对关系图
[0023]图7分块文件多线程异步调度流程示意图
[0024]图8基于运动趋势的LRU页面置换算法流程图
[0025]图9分层动态路径规划总体示意图
[0026]图10系统运行框架图
[0027]图11性能测试的运行效率折线图
【具体实施方式】
[0028]本发明的核心思想是建立一种可适用于大规模地理信息系统数据的动态路径规划方法,使用其在虚拟仿真等应用中智能选择最佳的路径,同时提供良好的执行性能,满足应用系统稳定流畅运行的需要。
[0029]下面结合附图详细描述本发明中的系统框架、工作原理和文件格式等。
[0030]一、数据预处理
[0031]数据预处理阶段主要根据原始的地表文化特征数据按分块的形式生成如下分块文件:(1)地形总体配置文件,该文件实现了对预处理数据进行处理前对数据的配置功能;
(2)预计算地图代价分块文件,该文件主要用于针对每个地形分块进行路径规划的预计算;
(3)分块路径规划文件,该文件时是实现运行时大规模动态路径规划的基础。
[0032]I原始地表文化特征数据预处理
[0033]国内较为通用的地表文化特征数据一般都是以EOO格式存储的,而该文件往往将河流、沟壑、道路等各类地表文化特征数据耦合在一起,不便于单层属性的信息查询。我们首先通过ARCGIS软件对分层后的地表属性数据进行分块处理,将原始数据进行分层转换,即将原始综合存储的数据信息,分别按照河流、沟壑、道路及草地等属性性质进行分层存储,然后将分层后的文件均以Shp和dbf等通用GIS格式进行存储。
[0034]2地形总体配置文件内容定义
[0035]地形总体配置文件对整个大地形的文件分块信息、各类分块文件外存索引信息、各层地表文化属性的权重参数进行了整体性的概括描述。地形总体配置文件在系统运行时应常驻内存,以便在进行路径规划时对预计算好的分块地图代价文件和分块路径规划文件进行快速映射。同时,在地图代价分块文件和分块路径规划文件的预计算过程中也需要通过该配置文件对相应的分块文件进行映射索引。
[0036]如图1所示,地形总体配置文件在格式上大致分为3个段,其中[General]段是对整体信息的描述段;rowblocknumber项表示整个大地形每行分为多少块;colIumblocknumber项表每列分为多少块;filesizex项表每个分块文件在X轴上所包涵的采样点的多少;fiIesizey项表示每个分块文件在Y轴上所包涵的采样点的多少,Ieftbottomx项表示整个大地形左下角起始点的实际X坐标值,Ieftbottomy项表示整个大地形左下角起始点的实际y坐标值;rawdatafiIepath项、costfilepath项、toplevelcostmapfiIepath 项以及 precomputedpathfiIepath 项分别表不原始数据文件、预处理过程中生成的地图代价文件、预计算生成的顶层地图代价文件以及预计算生成的路径记录文件的外存存放路径。
[0037][FILEINDEXID]段是分块文件的索引管理段,分块文件从左下角开始,自左向右、自底向上的方式进行排列。如:f00=00项表示最左下角的第一块分块文件的后缀索引号00,这样便可以动态确定出该块地形所对应的各类文件的文件名,如demO0.dem、slopeO0.bmp、roadO0.shp、riverO0.dbf 以及 costO0.1ni 等,再通过[General]段所描述的路径信息,便可以得到文件的外存存储地址。
[0038][SL0PEFILEGENERAL]段对地形坡度分析的一些参数进行了描述,UNIT项表示每个采样点坡度分析所考虑的范围,如5m*5m,各个level项分别记录了坡度的分级表示阈值,如10度以下的坡度可统一用Ievell的值来表示。这样更便于快速解析某个采样点处的坡度信息。
[0039][WEIGHTGENERAL]段描述了在进行地图代价预计算时各层地表属性数据对最终权重的惩罚系数,SLOPE项、ROAD项、RIVER项、DIRECT1N项分别表示坡度、道路、湖河深度以及坡向等属性的代价计算权重因子。使用地形配置文件,可以方便的进行各类参数的修改而无需改变程序,并且可随时增加数据段或数据项而无需修改配置文件的解析程序,方便了程序的进一步扩展和调试。
[0040]3分块地图代价文件生成方法
[0041]分块地图代价文件记录了每块地图的每个采样点的代价权值。图2给出了每个采样点的代价权值
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1