徐成达
摘要:公路路网极易受到自然灾害和敌方打击的破坏,研究路网中的关键节点对安全高效地完成公路军事运输具有重要意义。该文提出了基于GISDK公路路网关键节点计算步骤,设计和实现了基于GISDK公路路网关键节点分析系统。试用表明,该系统具有一定的有效性和实用性。
关键词:GISDK 公路路网;关键节点;拓扑结构
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)26-0210-02
Abstract: Highway network is vulnerable to natural disasters and enemy attack and consequently research on the key nodes in the road network is of great significance for completing the military transport task efficiently and safely.In this paper, A GISDK-based method for finding key nodes of highway network is proposed, and An application system for finding key nodes is designed and realized Based on GISDK.The trial shows that the system is effective and practical.
Key words: GISDK; Highway network;Key nodes; topological structure
在公路军事交通运输中,道路网络中节点起着重要的连通作用,节点是否畅通关系着整个路网能否正常运行,甚至影响着运输保障任务的按时完成。通常将对整个路网起着核心作用的节点称之为关键节点。关键节点的判断是通过其重要性度量值为衡量的,一个节点的重要性是指该节点与网络中其他节点相连后具有的不同于其他节点的显著性特征。这些评价节点关键度的显著特征称为测度指标,例如,节点的度、介数、特征向量、瓶颈点、累计提名等。
TransCAD作为被广泛使用的主流交通规划软件,不仅提供了强大的表格处理和路网分析能力,而且为用户提供了GISDK(Geographic Information System Developers Kit)二次开发工具。用户编写基于GISDK应用程序,就可以在利用其强大数据处理和图形分析功能,高效开发满足各种要求的GIS应用系统, 已在城市公交线网优化、OD数据合成、路网功能优化以及期望交通量显示等方面得到了使用[1,2]。
利用GISDK环境可以充分利用GISDK提供的路网底层分析方法,提高路网关键节点分析效率。本文首先提出基于GISDK的路网关键节点计算方法,最后通过实例对该方法加以验证。
1 路网关键节点计算方法
1.1 基于连接度的关键节点计算
节点的连接度是最常用的节点重要性评价指标。节点的连接度为网络拓扑中与此节点连接的边数,节点的重要性和其连接度成正比[2]。节点的连接度是网络拓扑的一个局部特征,可以简单直接的刻画和衡量节点的连接复杂程度,也能在一定程度上反映节点的重要性,在网络评估中具有一定的价值[3]。
通常路网中道路等级是不一样,例如国道、省道和县道等。在道路连接数相同的情况下,对于连接高等级道路的节点,比连接低等级道路节点来说,其在路网中的重要性更大。道路的等级通常用权值来度量。因此,我们将路网中节点的连接度定义为:
节点的连接度仅是路网局部特征,因此该指标具有一定的片面性,有些节点虽然不具有较大的连接度,但是却在整个路网中起着重要的连接作用;而有些连接度大的节点在路网中所起的作用很小。
1.2 基于最短路径数的关键节点计算
其中,Di 为节点i的重要性度量值,V为路网中所有节点集合,[Sijk]为节点j与节点k之间经过节点i的最短路径数。
在组织公路军事运输车辆调度时,通常将运输起点与终点间最短路径作为运输线路选择的重要指标之一,因此,最短路径指标在路网的节点重要度评估中具有一定的现实依据和实用性。经过一个节点的最短路径数越多,那么该节点在路网中就越重要,如果它被堵塞或者遭到敌方破坏,那就会对军事运输任务的完成产生严重影响。
2 基于GISDK的路网关键节点计算
GISDK提供了一系列路网分析的关键函数,可以用來辅助分析路网关键节点。例如,使用ChooseFile()和OpenMap()来选择和装载数字地图;使用CreateNetwork()创建路网拓扑结构;使用GetNodeLinks()可以获取与指定节点相连的路段;使用GetEndpoints()获取与当前道路相连的节点;通过GetRecordValues()/SetRecordValues()可以读取或设置当前道路图层指定道路的等级值。利用ShortestPath ()可以读获取两点间的最短路径长度以及最短路径所包含的路段;使用CreateContinuousTheme()函数,创建专题图形象直观地显示路网中关键节点重要性大小。
在GISDK底层函数的支撑下,基于节点连接度的关键节点计算步骤如下:
步骤1 读入公路网数字地图;
步骤2 选择节点图层作为当前图层;
步骤3 计算节点数N;
步骤4 i从1 到N,循环:
(1) Di=0;
(2) 计算与第i个节点相连的道路数ni;
(3) j从1 到ni,循环:endprint
①获取与第i个节点相连的道路权值wij;
②Di=Di+wij;
步骤5 输出各个节点连接度;
步骤6 在数字地图上标注关键节点。
基于最短路径数的关键节点计算步骤如下:
步骤1读入公路网数字地图;
步骤2 创建路网拓扑结构;
步骤3 计算路网中的节点个数N;
步骤4 i从1 到N,循环:
(1) D[i]=0;
(2) j从1 到N-1,循环:
k从j+1 到N,循环:
如果 k<>i 且 j<>i 则:
①计算节点j到节点k之间的最短路径;
②如果该最短路径经过节点i,则D[i]=D[i]+1;
(3) D[i]=2* D[i];
步骤5 输出各个节点重要性度量值;
步骤6 在数字地图上标注关键节点。
3 实例研究
我们研制了基于GISDK公路路网关键节点分析系统。路网采用安徽省蚌埠市、淮南市和滁州市三市范围内的国道省道的数字地图,GIS开发平台为TransCAD 4.5和GISDK语言开发包。为了形象直观,路网上节点的重要性度量值通过实心圆点表示,圆点越大,其重要性越大。
在基于連接度的关键节点分析中,国道与省道的等级值分别设定为2和1,各节点的重要性如图1所示。节点重要性度量值最大为7,有两个节点,其节点ID值分别为112和122。
图2显示了基于最短路径数的关键节点分析结果。节点重要性度量值最大为3020,节点ID值为119。
表1显示了两种分析方法所产生的度量值最大的10个关键节点。
从分析结果可以看出,由于度量值定义标准不同,不同的关键节点分析方法计算出的节点重要性度量值也不同,随即对应于不同的关键节点。虽然基于节点连接度的关键节点分析方法计算简单,但结果实际指导性不强;而基于最短路径数的关键节点分析方法计算较为复杂,但分析结果具有很强的现实性。
4 结束语
借助GISDK提供的底层分析工具,本文探讨了基于GISDK的路网关键节点的分析方法,并以实例进行了研究。由于节点的重要性不仅受路网拓扑结构的影响,而且还有受路网上交通流量的影响,因此,进一步工作是综合考虑影响节点重要性的因素,设计和实现更加贴近实际应用的公路网关键节点评价方法。
参考文献:
[1] 许云,王薇. 基于Transcad平台二次开发的城市公共交通线网优化决策支持系统[J].交通与运输,2012,28(7):77-81.
[2] 尹旭日. 基于GISDK路网拓扑结构的构建与应用[J].军事交通学院学报,2016,18(8):90-93.
[3] 何大韧. 复杂系统与复杂网络[M].北京:高等教育出版社, 2009.
[4] 钟茹. 路网中关键节点和重要路段的分析研究[D].北京邮电大学, 2013.endprint