- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于WebGIS传输网络最优路径选择研究与设计
基于WebGIS传输网络最优路径选择研究与设计
摘要:在通信网络中,基站与基站之间、基站与传输节点之间以及传输节点与传输节点之间的连接都是利用传输线缆连接。在实际工程应用中,经常需要对这些传输线路进行规划以及路由选径。而传统的人工选择方式往往会造成传输线路选择的不合理,造成光纤资源浪费。本文为提高传输线路规划的高效性和合理性,对基于WebGIS的最优路径选择方法进行了研究,并开发出了相应的功能模块。
关键词:WebGIS 传输线路 最优路径
中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2015)08-0000-00
传统的传输线路规划方式是网络管理员根据经验进行人工选择路由,这种方式在网络规模庞大时就会带来传输路由分配的不合理,造成光纤资源浪费[1]。因此需要有一个直观的、科学的管理平台,为传输线路的选径工作提供辅助决策。
网络地理信息系统(WebGIS) 是互联网技术与GIS技术相结合而产生的新产物,它利用互联网技术将GIS服务发布到网络上。用户可以借助WebGIS系统提供的功能组件在线地对空间数据进行管理、分析和规划。考虑到基站以及传输线路的分布具有明显的空间性,本文将WebGIS技术引入到通信网络的管理中,并对传输线路的最优路径选择功能进行了研究和设计。
1 基于WebGIS的网络数据模型分析
WebGIS系统中的网络数据模型是真实世界中网络系统的抽象表示,本文分析与研究所涉及到的传输网络在WebGIS中主要抽象为节点和线路,这些元素分别以点要素和线要素的形式被存储于空间数据库中。其中点要素的存储由点的横纵坐标和相关联的线路数据组成,而线要素的存储是由起始点、终止点以及线路权值组成[2]。
传输网络最优路径选择性能的优劣主要与两个因素有关,即所使用的最短路径选择算法和所选择的线路权值。其中最短路径选择算法是选择路径的搜索工具,而线路权值则是路径选择的搜索指标。传输线路的线路权值并非指真正意义上的线路长度,而是根据实际要求,并综合动态传输线路信息和静态传输线路信息后所得到的权值参数[3]。
2 最短路径选择算法
2.1 Dijkstra算法的分析
传统的Dijkstra算法在进行最短路径选择时采用的是基于全网络的邻接矩阵存储结构,对于大型稀疏网络而言,例如本文的分析对象传输线路网,采用邻接矩阵的方式进行存储时就会造成空间的浪费。同时,算法在实现过程中采用的是将未标记点无序的存放在一个数组中,系统在进行最小权值线段选择时需要把数组中所有的点都遍历一遍,在数据量很大的情况下,这种方式显然效率很低。针对传统Dijkstra算法所存在的不足,国内外的研究人员从多个方面对其进行了优化和改进,并出现了性能比较优良的改进算法。
2.2 Dijkstra算法的改进
传统Dijkstra算法采用 邻接矩阵存储网络数据,其中 表示网络的节点数。矩阵中第 行第 列的值代表节点 与节点 之间的权值,矩阵中的数值0代表起点和终点相同,矩阵中的数值 表示两节点间无连接。采用这种邻接矩阵的方式来存储网络数据会造成矩阵中存在大量的0和 ,在运行时就造成了大量的内存空间浪费。
针对邻接矩阵存储方式的不足,目前较为有效的解决方案是采用邻接表来存储网络数据。邻接表是对每个节点建立一个表示邻接关系的链表,在每个节点的邻接表中都包含一组边节点。边节点中包含三个域,分别是邻接点域(adjvex)、权值域(Length)、链域(next)。邻接点域用于保存节点 的邻接节点 的序号,权值域用于保存边 的权值,链域用于保存邻接表中 的下一个边节点。这种存储结构在表示网络数据时只需用到很少的边节点,因此对于稀疏图来说非常节省存储空间,相对于邻接矩阵来说运行效率非常高。
在传统Dijkstra算法中,除了源节点,其他所有的节点都需要进行权值比较,以选取一个权值最小的节点作为中间节点。每次比较都需要将大量的无序的节点遍历一遍,当网络规模很大的时候系统的计算效率肯定会很低。针对这个问题最有效的方法就是对这些待遍历的节点进行优先级排序,节点经过排序后只需循环一次就可以获得所搜索的节点,算法的计算效率也就能得到极大的提升[4]。
目前实现节点优先级排序的方法较多,本文选用的是二叉堆来实现节点的优先级排序。初始排序时,定义一个数组用以保存待排序的节点,然后对这个数组进行堆排序,将其调整为小根堆。与传统的最短路径节点选择方式相比,这种方法能明显地提高算法效率。
本文采用邻接表和二叉堆对传统Dijkstra算法进行改进后的算法实现步骤如下:
(1)初始化,首先搜索源节点 的邻接点 ,然后初始化节点列表 中节点的权值矩阵 ,并调用 方法初始化二叉堆 ,同时创
原创力文档


文档评论(0)