孙晓莉,钟 亮,田淑静,和万荣 ,郭朝元,景志雄
(1.云南国土资源职业学院 测绘地理信息学院,云南 昆明 650217; 2.云南省地图院 地理国情分院,云南 昆明 650034)
网络分析作为地理信息系统(Geographic Information System,GIS)最主要的功能之一,在电子导航、交通旅游、城市规划以及电力、通讯等各种管网、管线的布局设计中发挥了重要的作用,是目前研究的热点和难点[1~2]。生活中比较常用的路径寻优的方法主要有平行最短路径搜索算法[3],蚁群算法[4],EBSP*算法[5]和Dijkstra算法等。它们在空间复杂度、时间复杂度、易实现性及应用范围等方面各具特色[6]。陈少沛等以广州市城市交通网络系统为研究对象,提出了一种面向多模式城市交通网络拓扑集成模型[7];于大超等从避难转移的角度出发,分析洪灾避难过程中的主要影响因素,设计了避难最佳路径方案[8];杨英伟等建立了交通规则的路网模型,利用Dijkstra算法实现了两点之间最优路径分析和多点之间最优路径分析[9];最佳路径分析是交通网络分析中最基本最关键的问题,最佳路径不仅仅是一般地理意义上的距离最短,还可以引申到其他的度量,如时间、费用等多因素综合[10]。本文以昆明市中心城区为例,根据层次分析法(the Analytic Hierarchy Process, AHP)建立基于多因素综合因子影响的最优路径模型,并综合运用ArcObjects、VS2010及ArcGIS Engine软件在路径模型的基础上编写出路径寻优应用程序进行城市道路网最优路径探讨,以期为个人出行、交通堵塞等提供一定的参考依据。
研究区域为昆明市主城区范围,研究对象主要为主城区内道路,包括南北方向中心道路(北京路),南北方向次中心道路(龙泉路至青年路至官南大道),南北方向次中心道路(滇缅大道至环城西路、西昌路至海埂路),东西方向中心道路(人民西路至人民中路至人民东路),东西方向次中心道路(西坝路至金碧路至拓东路),东西方向次中心道路(滇池路至环城南路至环城东路),东西方向次中心道路(东风东路和东风西路)。此外,还有东绕城高速,二环快速A线,二环快速B线,昆明绕城高速等线路。随着社会经济的快速发展,昆明市目前已形成二环、三环、外环和绕城高速内环四条环线道路,并形成依托市中心向外连通的二十五条道路。
数据来源于GoogleEarth影像,获取时间为2017年11月28日,研究区范围约10 km2,影像分辨率为0.54 m,采用2000国家大地坐标系。研究区遥感影像图如图1所示。
图1 研究区遥感影像图Fig.1 Remote sensing image of the research area
根据研究区影像对其进行矢量化,并根据道路的地理位置、功能、重要性程度等划分为不同的等级,获得研究区道路等级矢量化成果并形成研究区路网数据,如图2所示。
图2 研究区路网数据Fig.2 The road network of the research area
2.2.1最优路径算法
最短路径算法中最常用的是Dijkstra算法,其首先以起点为中心,搜索出局部范围内成本最低或是最优的一个解,确定好起点到这个解之间的途径,然后再次运用上述的方法,一直向外逐层地扩展搜索,直到寻找到终点才截止。而最优路径,在本质上还是最短路径算法的寻优,只是在考虑影响因子和限制条件方面比最短路径要更进一步,更深一层,常常是通过综合考虑很多因素而得到。
2.2.2AHP
在构建路径模型时,需要选择路面质量、红绿灯数量、路段等级、限行状况等影响因子,本文主要基于AHP[11-12]建立路径模型。AHP为解决由众多影响因子一起组成的复杂分析系统提供了一种简单、全新的建模方法。文中最优路径的影响因子准则层主要包括路段快捷性、路段通达性、路段服务性三个方面。其中路段快捷性包括路径距离因子;路段通达性包括路径时间、路段等级、路段质量、限行状态因子;路段服务性包括红绿灯、停车场因子,采用AHP构造相应的判断矩阵后为各个影响因子赋予相应的权重,如表1所示。最后为每个影响因子赋予相应的分值。
根据选择的影响因子,在研究区路网数据拓扑错误检查与修改的基础上为每条道路添加相应的属性字段,比如路段名称、路段类型、路段距离、路段时间、路段等级、路面质量、限行状态、红绿灯、停车场、路段快捷性等属性内容,基于ArcGIS构建研究区交通数据库。
表1 各个影响因子权重分值表Tab.1 The weights of impact factor
基于ArcGIS构建交通数据库并利用AHP为每个影响因子赋权重的基础上,进行图论假设分析,如图3所示。其中,图中每条道路的各个路阻因子的综合分值如表2所示。现在求取一条顶点V1到顶点V3的最优路径。
图3 道路假设示意图Fig.3 The sketch map of Road hypothesis
路段路径距离路径时间路段等级路面质量限行状态红绿灯停车场V1-V26122沥青不限行无有V2-V35101沥青不限行有有V3-V47151沥青限行无有V4-V5282沥青不限行无无V5-V1151沥青不限行无无V5-V64203水泥不限行有有V6-V23182沥青不限行无有V6-V35253水泥限行无无V6-V44223水泥不限行无有
传统的最短路径搜索是以路径距离或者路径时间为成本计算,但本文的路径最优是以影响因子的综合分值计算,即所有的阻抗因子的综合得分计算得来的最优路径。在图3(a)中,若要求取顶点V1到顶点V3的最优路径,运用经典的Dijkstra算法以路径距离为成本计算,以点V1为起点,搜寻最短距离,寻得最短路径V1-V5-V4-V3;接下来,我们综合考虑各影响因子的得分情况,并运用Dijkstra算法求取顶点V1到顶点V3的最优路径。
计算每条路段的分值,如表3所示。
表3 路段各影响因子分值表Tab.3 Values table of influence factors on road section
计算过程(以表中第一条路段V1-V2举例,计算路段V1-V2的综合权值):
Wb1c1=1,Xb1c1=86,Qb1c1=86;
Wb2c2=(0.1457,0.0497,0.0497,0.3018),
Xb2c2=(48,90,100,100),Qb2c2=47;
Wb3c3=(0.0362,0.0723),Xb3c3=(100,100),Qb3c3=11;
Q=Wab×Xab
=0.3445×86+0.5469×47+0.1085×11=56。 式中:w为各影响因子权重,x为各影响因子分值,Q为综合分值。
由上可知路段V1-V2的综合分值为56。运用上述方法计算结果见表4。
表4 路段综合分值表Tab.4 comprehensive value table of road section
运用表4中的综合分值计算最优路径,按照权值分值之和越低越优原则,求得点V1到点V3的最优路径为V1-V2-V3;对比前面求得的V1到V3的最短路径V1-V5-V4-V3可以知道,基于单成本属性的最短路径和考虑了众多因子下的最优路径并不是同一条路径,路径V1-V2-V3是综合考虑了主客观因素求得的最佳路径,此条最优路径更符合道路的现实情况,令用户更加满意。
基于ArcGIS的城市道路网最优计算可以通过二次开发技术实现,采用C#语言编写程序,编写程序前先在VS2010中安装ArcGIS 10.2.2开发组件,通过调用ArcGIS组件完成本文道路最优的计算,在VS2010中编译运行计算代码,编译成功后加载数据,点击求解按钮,得到如图4、图5、图6所示结果。
图4 最短路径Fig.4 The shortest path
图5 最少时间Fig.5 The minimum time
图6 最优路径Fig.6 The optimal path
本文在昆明市静态城市交通道路网络数据的基础上,采用ArcGIS软件对道路路段进行预处理工作,根据AHP的思想建立基于多因素综合因子影响的最优路径模型,路径模型确定了7个影响因子,并按照AHP两两相互比较得到各个因子的权重值,建立了各个因子的评分模型,最后基于综合权值得分情况,按照分值越低路径越优原则求取最优路径。运用图论的知识证实了基于多因素综合因子考虑下的最优路径和传统的最短路径并不是同一条路径,因参与计算的因子属性与现实道路属性接近,故计算所得的路径更符合现实,令客户满意。最后基于ArcObjects、Visual Studio 2010及ArcGIS Engine软件编写出一个独立的应用程序,导入昆明市静态道路数据进行路径寻优,计算得到最优路径明显不同于其他两条传统路径(最短距离、最少时间)。本文最优路径探讨为个人出行、缓解交通拥挤等方面提供一定的参考依据。