地理信息系统中的常规网络分析功能及相关算法

来源:http://www.legalsoft.com.cn  作者:曾 文 徐世文

摘 要 网络是GIS中一类独特的数据实体,网络分析是空间分析的一个重要方面.通用型GIS平台软件提供的网络分析功能有路径分析、资源分配、连通分析、流分析、选址等,其中的许多功能可以使用图论中的算法来实现.扼要介绍了实现这些功能的重要算法.

关键词 网络,网络分析,地理信息系统(GIS),图论.

0 引言
  
  网络分析是空间分析的一个重要方面,是依据网络拓扑关系(线性实体之间、线性实体与结点之间、结点与结点之间的连结、连通关系),并通过考察网络元素的空间、属性数据,对网络的性能特征进行多方面的分析计算.

  与GIS的其他分析功能相比,网络分析的研究一直比较少,但是近年来由于普遍使用GIS管理大 型网状设施(如城市中的各类地下管线、交通线、通讯线路等),使得对网络分析功能的需求迅速增长,GIS平台软件纷纷推出自己的网络分析子系统[1]①. 相对于国际上网络分析的研究不断升温的状况,国内几个较有影响的GIS系统已开始提供或多或少的网络分析功能.应该看到,国内的应用和需求也是相当广泛和 迫切的,这必将对网络分析的研究产生巨大的推动作用.

1 网络数据模型——几个基本概念
  
  网络是由若干线性实体互连而成的一个系统,资源由网络来传输,实体间的联络也由网络 来达成.网络数据模型是真实世界中网络系统(如交通网、通讯网、自来水管网、煤气管网等)的抽象表示.构成网络的最基本元素是上述线性实体以及这些实体的 连接交汇点.前者常被称为网线或链(link),后者一般称为结点(node).

  网线构成网络的骨架,是资源传输或通讯联络的通道,可以代表公路、铁路、航线、水管、煤气管、河流等;结点是网线的端点,又是网线汇合点,可以表示交叉路口、中转站、河流汇合点等.

  除了上述基本网络元素之外,网络还可能有若干附属元素,如在路径分析中用来表示途经地点的可以进行资源装卸的站点(stop);在资源分配中用来表示资源发散地点或资源汇聚地点的中心(cen_ter),对资源传输或通讯联络起阻断作用的障碍(barrier)等.

   针对网络分析的需要,作为网络基本元素的网线或结点除自身的常规属性外,还要具有一些特殊的属性数据.比如,为了实施路径分析和资源分配,网线数据应包 含正反两个方向上的阻碍强度(如流动时间、耗费等)以及资源需求量(如学生人数、水流量、顾客量等),而结点数据也应包括资源需求量.特别是在有些GIS 平台(如ARC/INFO,MAPGIS)中,结点还可以具有转角数据,从而可以更加细致地模拟资源流动时的转向特性.具体地说,每个结点可以拥有一个转 向表(turntable),其中的每一项说明了资源从某一网线经该结点到另一网线时所受的阻碍强度.

  由于通用性的不同以及网络 分析功能的侧重点不同,各个地理信息系统的网络模型也不尽相同,差异主要体现在对网络附属元素的分类和设定上.对于附属的网络元素,与中心相联系的数据包 括该中心的资源容量、阻碍限度(资源流出或流向该中心所能克服的最大累积阻碍),有些GIS系统还允许赋予中心一定的延迟量,以表达该中心相对于其他中心 进行资源分配的优先程度.与站点相关的数据一般有传输量(即资源装卸量)、阻碍强度.障碍一般无需任何相关数据.

2 常规的网络分析功能

2.1 路径分析

  路径分析是GIS中最基本的功能,其核心是对最佳路径和最短路径的求解.从网络模型的角度看,最佳路径求解 就是在指定网络中两结点间找一条阻碍强度最小的路径.最佳路径的产生基于网线和结点转角(如果模型中结点具有转角数据)的阻碍强度.例如,如果要找最快的 路径,阻碍强度要预先设定为通过网线或在结点处转弯所花费的时间;如果要找费用最小的路径,阻碍强度就应该是费用.当网线在顺逆两个方向上的阻碍强度都是 该网线的长度,而结点无转角数据或转角数据都是0时,最佳路径就成为最短路径.在某些情况下,用户可能要求系统能一次求出所有结点对间的最佳路径,或者要 了解两结点间的第二、第三乃至第K条最佳路径.

  另一种路径分析功能是最佳游历方案的求解.网线最佳游历方案求解,是给定一个网线 集合和一个结点,求解最佳路径,使之由指定结点出发至少经过每条网线一次而回到起始结点.结点最佳游历方案求解,则是给定一个起始结点、一个终止结点和若 干中间结点,求解最佳路径,使之由起点出发遍历全部中间结点而达终点.

2.2 资源分配

  资源分配就是为网络中 的网线和结点寻找最近(这里的远近是按阻碍强度的大小来确定的)的中心(资源发散或汇集地).例如,资源分配能为城市中的每一条街道上的学生确定最近的学 校,为水库提供其供水区,等等.资源分配是模拟资源如何在中心(学校、消防站、水库等)和它周围的网线(街道、水路等)、结点(交叉路口、汽车中转站等) 间流动的.根据中心容量以及网线和结点的需求将网线和结点分配给中心,分配是沿最佳路径进行的.当网络元素被分配给某个中心时,该中心拥有的资源量就依据 网络元素的需求而缩减,当中心的资源耗尽,分配就停止.用户可以通过赋给中心的阻碍限度来控制分配的范围.

2.3 连通分析

  人们常常需要知道从某一结点或网线出发能够到达的全部结点或网线.这一类问题称为连通分量求解.另一连通分析问题是最少费用连通方案的求解,即在耗费最小的情况下使得全部结点相互连通.

2.4 流分析

   所谓流,就是将资源由一个地点运送到另一个地点.流分析的问题主要是按照某种最优化标准(时间最少、费用最低、路程最短或运送量最大等)设计运送方案. 为了实施流分析,就要根据最优化标准的不同扩充网络模型,要把中心分为收货中心和发货中心,分别代表资源运送的起始点和目标点.这时发货中心的容量就代表 待运送资源量,收货中心的容量代表它所需要的资源量.网线的相关数据也要扩充,如果最优化标准是运送量最大,就要设定网线的传输能力;如果目标是使费用最 低,则要为网线设定传输费用(在该网线上运送一个单位的资源所需的费用).

2.5 选址

  选址功能涉及在某一指 定区域内选择服务性设施的位置,例如市郊商店区、消防站、工厂、飞机场、仓库等的最佳位置的确定[2].在网络分析中的选址问题一般限定设施必须位于某个 结点或位于某条网线上,或者限定在若干候选地点中选择位置.选址问题种类繁多,实现方法和技巧也多种多样,不同的GIS系统在这方面各有特色.造成这种多 样性的原因主要在于对“最佳位置”的解释(即用什么标准来衡量一个位置的优劣),以及要定位的是一个设施还是多个设施.

3 网络分析的相关算法
  
  从数学的观点,可以把GIS中的网络看作图(graph),因而可以利用图论的研究成果来解决 网络分析中的众多问题.图论中的术语“网络”,指的就是加权有向图,但GIS中涉及的网络与数学上探讨的图或网相比较,存在以下特殊性.(1)网线和结点 的空间位置是有意义的.(2)除了网线可以具有权值外,结点也可以具有权值,并且权值可能是多重的,例如网线可以有正向及逆向阻碍强度、需求、容量、耗费 等多种权值.(3)结点可能具有转角数据.(4)GIS中的网络并不总是有向图.对于水系、煤气管道系统等网络,由于内容物在网线中的流向是固定的,并且 作相关分析时流向也是重要依据,所以它们应该作为有向图来考察;但象城市道路网这样的网络就应被看作无向图,对其中的若干单行道,可以通过对网线阻碍强度 的设置来限定方向.
  尽管存在上述差异,图论中的许多算法仍然可以很好地用于网络分析,当然,某些算法要根据具体情况加以修正或扩展.

   最佳路径问题在图论中研究得最为彻底,求解算法有几十种[3].其中Dijkstra算法被GIS系统广泛采用,其基本思路是由近及远寻找起点到其他所 有结点的最佳路径,直至到达目标结点.在资源分配方案的求解中,Dijkstra算法也发挥着重要作用,因为其搜索过程正与资源从中心出发由近及远的分配 方式相吻合.对于两两结点间最佳距离的求解,则常使用Floyd算法或Dantzig算法,它们都从图的邻接矩阵开始反复迭代,最终得到距离矩阵.二重扫 除算法(double_sweep algorithm)可以求得一个结点和其他各个结点之间的第K条最短路径.

  网线最佳游历方案的求解在图论中称为中国邮路问题,它是一个既与Euler图又与最佳路径有关的问题,使用“奇偶点图上作业法”可以求得最佳闭合路径.

   结点游历问题类同于图论中著名的推销员问题(TSP,即寻找经过每个结点一次的最佳闭合路径).TSP的求解算法经适当修正一般可以用于结点最佳游历方 案的求解.TSP是一个NP完全问题[4],一般只能采用近似解法找近似最优解.较好的近似解法有基于贪心策略的最近点连结法、最优插入法,基于启发式搜 索策略的分枝限界法,基于局部搜索策略的对边交换调整法等,后两种方法常能得到相当满意的结果.

  连通分析问题对应与图的生成树求解.求连通分量往往采用深度优先遍历或广度优先遍历形成深度或广度优先生成树.最小费用连通方案问题就是求解图的最优生成树,一般使用Prim算法或Kruskal算法.

   图论中把用于流分析的网络称为带收发点的容量网络,对这种网络的研究形成了网络流理论,是图论的研究热点之一.当运送方案的最优化标准是运输量最大时, 可以使用由Ford和Fulkerson(据文献[5])提出的最大流算法来求解,它是依据最大流最小割定理,通过寻找可增广路,利用逐步增大流值的方法 找到最大流.Ford和Fulkerson将上述算法加以推广又得到最小费用流算法,可以用于其他最优化标准下的传输方案设计问题.

   选址问题随具体要求的不同,求解方法及其复杂程度差别很大.如果设施限定安放于结点处,而选址判据是离最远的结点距离最小(为了保证及时的反应,消防站 可能会据此标准选址),则只需求出任意结点对的距离,建立距离矩阵,定位点就是此矩阵每行元素最大值中的最小值所对应的结点.其他对单一设施定位的问题虽 然可能比上面的例子复杂,但总是能够最终解决的;相比之下,同时选择几个设施位置的问题就困难得多,几乎总要依靠整数规划来求解[3].

4 结语
  
  虽然图论研究中得到的大量算法可以为网络分析提供有力的理论支持,但是正如上面所述,GIS中的网络与图这种 数学模型存在一定差距,这种差距有时会对网络分析产生很大影响.另外,以上所讨论的大都是组合最优化问题,在实际的网络工程应用中还存在其他涉及大量计算 的问题,如系统稳定性分析、运行状态分析等,所以,在将图论算法进行推广修正以适应网络分析需要的同时,还应该考虑寻找更具广泛性的数学模型和数学方法. 例如,可以将图论与系统论相结合,把网络看作一个系统,将网络元素作为系统单元,用终端图以及包含终端变量的一组一阶微分方程或一组代数联立方程来表示网 络,求解相关问题[6].值得特别注意的是,电网络理论的迅速发展导致一系列分析方法的产生,如何将其应用于GIS的网络分析,也是一个很有意义的研究课 题.

参考文献
1 ESRI. Network analysis guide. Redlands, CA: Environmental Systems Research Institute, 1995. 12~22
2 ESRI. Location_allocation in ArcInfo. Redlands, CA: Environmental Systems Research Institute, 1995. 2~10
3 Minieka E;李家滢,赵关旗译.网络和图的最优化算法.北京:中国铁道出版社,1984. 36~73,277~302
4  Hopcroft J E, Ullman J D. Introduction to automatic theory, languages, and computation. Reading, Mass: Addison_Wesley Publishing Co, 1979. 332~336
5 王朝瑞.图论.北京:北京工业学院出版社,1986. 297~308 

原文地址:http://www.gisforum.net/show.aspx?id=761&cid=30