应用科学学报 ›› 2020, Vol. 38 ›› Issue (6): 955-965.doi: 10.3969/j.issn.0255-8297.2020.06.012

• 信号与信息处理 • 上一篇    

交通运输网络的二叉堆索引及路径算法优化

王亚1, 任燕1, 夏林元2   

  1. 1. 遵义师范学院 信息工程学院, 贵州 遵义 563000;
    2. 中山大学 地理科学与规划学院, 广东 广州 510275
  • 收稿日期:2019-10-30 发布日期:2020-12-08
  • 通信作者: 王亚,博士,研究方向为GIS及大数据应用.E-mail:1412560051@qq.com E-mail:1412560051@qq.com
  • 基金资助:
    国家自然科学基金(No.61562049);贵州省教育厅“125计划”重大专项项目基金(黔教合重大专项字No.[2015]044)资助

Index of Binary Heap for Transportation Network and Optimization of Shortest Path Algorithms

WANG Ya1, REN Yan1, XIA Linyuan2   

  1. 1. School of Information Engineering, Zunyi Normal College, Zunyi 563000, Guizhou, China;
    2. School of Geography and Planning, Sun Yat-sen University, Guangzhou 510275, Guangdong, China
  • Received:2019-10-30 Published:2020-12-08

摘要: 交通运输网络的最短路径分析是地理信息系统网络分析最常见的应用之一.该文在二叉堆索引结构的基础上改进了计算最短路径的Dijkstra算法和A*算法,采用了多种优化策略提高算法的运行效率.首先,应用二叉堆索引提高了交通运输网络存储结构的读取效率;其次,通过数据类型的低精度损耗简化和运算类型的简化,提高了算法的计算效率.另外,优化了A*算法中估计函数的计算方式,有效降低了搜索空间,提高了Dijkstra算法和A*算法的整体计算效率.实验结果表明Dijkstra算法的改进方法可使计算速度提高7倍以上,对A*算法的改进可使计算速度提高200倍以上.

关键词: 地理信息系统, 网络分析, 最短路径, 二叉堆, Dijkstra算法, A*算法

Abstract: Shortest path finding of transportation network is one of the commonest application scenes for geographic information system network analysis. This paper improves Dijkstra and A* algorithms based on binary heap index. It presents several optimal strategies to improve the efficiency of both algorithms. Firstly, it uses binary heap index to improve the access efficiency of storage structure in GIS networks. Then it simplifies the data types and operation types as keeping the precision of data calculation of algorithms. Additionally, it decreases searching space effectively by optimizing the estimation function of A* algorithm. Experimental results show that the improvement makes Dijkstra algorithm up to 7 times and A* algorithm up to 200 times faster than before.

Key words: geographic information system (GIS), network analysis, shortest path, binary heap, Dijkstra algorithm, A* algorithm

中图分类号: