基于空間分布特征的最短路径算法研究.docVIP

基于空間分布特征的最短路径算法研究.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于空間分布特征的最短路径算法研究

基于空间分布特征优化的最短路径算法研究 刘作才 (无锡市城市规划信息中心) 【摘 要】 地理信息系统中的空间网络分析有最短路径分析、资源分配分析、等时性分析等等,而最短路径分析是其中关键的环节,因而对其算法进行优化很有必要,为此在传统的最短路径算法,即Dijkstra算法的基础上,从网络结构的以及的实现,一种最短路径算法的高效实现方法。 最短路径算法Dijkstra;网络分析; 0引言 路径规划是车辆监控调度系统的一个基本功能,它为监控调度系统中的所有车辆提供基于距离、旅行时间、旅行速度、转弯阻抗、交通灯延迟以及动态交通信息等因素的最短距离路线、最短时间路线以及最低花费等最优路线。各种最优路线的算法本质是相同的,区别仅在于选择不同的旅行费用函数,如果选择距离为旅行费用,则规划的为距离最短路线,其基础是基于最短距离算法。在交通网络中,将道路交叉路口抽象为图的顶点,路段抽象为图的边,边的权可以表示路段的长度、旅行时间以及交通费用等,这样交通网络就抽象为一个图(在这里以有向图来表示),可以利用有关图论中的最短路径的算法求解交通网络中的最短路径了。但是交通网络图除具有一般数学中的抽象图的特性外,还有其特有的属性: 在交通网络图中,各顶点出度较少,一般在2至5之间,也就是说如果用邻接矩阵来表示交通网络时,其为稀疏矩阵; 在交通网络图中,各顶点和各边与交通信息和交通规则密切相关,并且具有很强的时态特征。如路段分时段禁止通行、路口分时段禁止转弯,以及交通灯延迟的影响; 交通网络图具有很强的空间分布特征和方位特征; 交通网络图是非负权网路。 在图论、运筹学中,提出了许多求解最短路径的算法,如迪杰斯特拉(Dijkstra)、弗洛伊德(Floyd)、矩阵算法及动态规划算法等。这些算法虽然充分考虑了抽象网络的拓扑关系,但是忽略了实际的城市交通网络的空间分布特性、方位特性、时态特性以及网络的稀疏性。本章正是从交通网络的特性出发,构造了基于交通网络的空间分布特征的限制搜索空间的改进Dijkstra算法。 1 迪杰斯特拉(Dijkstra)算法的基本思想 Dijkstra算法是目前公认的求解单源点的最短路径问题的最好算法,它采用贪心策略,即在每一步都选择一个局部最优解以期望产生一个全局最优解。 在Dijkstra算法中,给定一个有向图,用邻接矩阵cost记录节点间的关联信息,其中表示弧段上的权值。如果弧段不存在,则置为。 是按路径长度递增的次序产生最短路径的。引入辅助向量,它的每个分量表示当前找到的从起始点到每个终点的最短路径的路程长度。它的初始状态是当到有边时,为边上的权值,否则置为。显然从出发长度最短的一条路径的长度为: 再假设长度次短的最短路径的终点是,则这条路径或者是,或者是。它的长度或者是从到的权值,或者是和从到的边上的权值之和。 记为已求得最短路径的终点的集合,则下一条最短路径(设其终点为)或者是边(如果边存在),或者是中间点只经过中的顶点而最后到达的路径。这一结论可以用反证法来证明。假设这条路径上有一个顶点不在中,则说明存在一条路径终点不在而长度比此路径短的路径,但实际是按路径长度递增的次序产生最短路径的,因此长度比此路径短的所有路径均已产生,它们的终点必在中,原假设不成立。因此下一条长度次短的最短路径必是。根据上述分析,算法描述如下: 初始化和,即,; 选择,使; 修改从出发到集合上的任一顶点的最短路径的长度。即若,则令; 重复2、3步共次。求得的从到网络其余各顶点的最短路径是按路径长度递增的序列。 2 基于空间分布特征的改进Dijkstra算法 用Dijkstra算法解决交通网络中的最短路径问题时,存在以下几点不足: 一个城市的交通网络中节点数目较多而连通度却不高,当采用邻接矩阵表示时会占用大量的内存空间而同时却保存了大量的无用信息,另一方面也会增加算法的搜索复杂度; Dijkstra算法采用的是全向搜索算法,而并未考虑交通网络中最短路径的方向性,同样会增加算法的搜索深度和宽度,造成算法效率低下; 用邻接矩阵无法表示道路交通网络中两节点之间存在两条以上的通路的情况。如图1中,节点3与节点4之间存在两条路径。 Dijkstra算法仅给出了最短路径的长度,而没有给出最短路径,这在实际应用系统中是没有实际意义的; Dijkstra算法没有考虑道路交通网络特有的交通规则、道路的时态属性。 本文提出的基于空间分布特征的改进Dijkstra算法正是基于以上几点,从网路的数据结构、限制搜索空间以及算法等方面对Dijkstra进行改进。 2.1 交通网络的数据结构 根据交通网络的特点,设计节点-弧段表NodeArc、节点索引表NodeIndex和弧段属性表来表示网络的结构,如图1。NodeArc维护节点与弧段的拓扑关系,并且以弧段的起点编

文档评论(0)

cwhs + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档