1、,第五章 空间查询与空间分析,环境地理信息系统Environmental Geographical Information System,第五章 空间查询与空间分析,第二节 缓冲区分析,第三节 空间叠置分析,第一节 空间查询,第三节 空间网络分析,一、空间分析的概念 1.空间分析的定义 2.空间分析的研究对象 3.空间分析的研究目标,空间分析(spatial analysis)是地理学的精髓,是为解答地理空间问题而进行的数据分析与挖掘。目前,比较典型的空间分析定义有多种。 定义:是集空问数据分析和空间模拟于一体的技术,通过地理计算和空间表达挖掘潜在空间信息,以解决实际问题的过程。,空间分析主要
2、通过对空问数据和空间模型的联合分析来挖掘空间目标的潜在信息。空间目标是空间分析的具体研究对象。,1)认知。有效获取空间数据,并对其进行科学的组织描述,利用数据再现事物本身。 例如绘制风险图。 2)解释。理解和解释地理空间数据的背景过程,认识事件的本质规律。 例如住房价格中的地理邻居效应。 3)预报。在了解、掌握事件发生现状与规律的前提下,运用有关预测模型对未来的状况做出预测,例如传染病的爆发。 4)调控。对地理空间发生的事件进行调控,例如合理分配资源。,一、空间分析的概念 4.GIS与空间分析 目前,空间分析一般采用专业分析模型与GIS集成方式。 GIS软件与空间分析软件相结合的方式可分为两种
3、:,紧耦合,即把空间分析模块作为一个高级应用模块嵌入GIS软件包中,GIS不仅可以为空间分析提供图形显示功能,而且GIS中的有关数据直接参与空间分析计算。 这种方式可以为用户提供方便、全面、有效的使用功能,但造价高,实现周期长。,松耦合,即在两个相对独立的GIS软件和空间分析软件之间增加数据交换接口,使空间分析数据及相关的影响因素和空间分析结果能够在GIS中以各种简单的或复杂的图形方式显示出来。 这种方式适用于短期且费用较小的情况。,一、空间分析的概念 5.GIS环境下空间分析框架 一般性空间分析框架(右图) (Anselin L,1998) 空间分析类型: A. Goodchild将空间分析
4、分为两大类: 产生式分析 (product model), 通过这些分析可以获取新的信息, 尤其是综合信息 咨询式分析 (query model), 旨在回答用户的一些问题。,一、空间分析的概念 5.GIS环境下空间分析框架 B. 从GIS应用角度看,空间分析大致可以归纳为如下两大类: 基于点、线、面基本地理要素的空间分析,通过空间信息查询与量测、缓冲区分析、叠置分析、网络分析、地统计分析等空间分析方法挖掘出新的信息 地理问题模拟,解决应用领域对空间数据处理与输出的特殊要求,地理实体和空间关系通过专业模型得到简化和抽象,而系统则通过模型进行深入分析操作。 C.以空间数据及其特点作为框架来构造空
5、间分析的体系,主要考虑不 同数据之间的空间关系,将空间分析界定为以下五个方面: 空间位置分析 空间分布分析 空间形态分析 空间关系分析 空间相关分析。,第1节 空间查询,空间数据库,查询条件,属性限制,空间拓扑限制,二者结合,GIS软件,查询结果,统计结果:图、表、文字,新图层,新的属性域添加到属性数据库,图形-属性,空间查询语言,闪烁、颜色等明显表示,查询方式,空间查询: 在GIS中根据一定的图形条件或属性条件或两者的结合条件,检索出对应的空间对象的属性或图形的一种工具。,一、空间查询定义,二、空间查询的方式 给出图形信息:如鼠标点取,拉框等方式。 1)检索其相应属性; 2)检索其空间拓扑关
6、系 给出属性特征条件 1)检索对应的空间实体 2)查询属性 单纯查询:单纯地查询属性,或只查询空间拓扑关系。 联合查询:将空间数据与属性数据联合查询。,第1 节 空间查询,三、空间查询的种类 几何参数查询 包括点的位置坐标,两点间的距离,一个或一段线目标的长度, 一个面目标的周长或面积等。 实现:查询属性库或空间计算 空间定位查询 给定一个点或一个几何图形,检索该图形范围内的空间对象及其属性。 1)按点查询: 给定一个鼠标点,查询离它最近的对象及属性-点的捕捉。 2)开窗查询-按矩形、圆、多边形查询 分为该窗口包含和穿过的区别。 实现:根据空间索引,检索哪些对象可能位于该窗口, 然后根据点、线
7、、面在查询开窗内的判别计算, 检索到目标。-空间运算方法,第1 节 空间查询,三、空间查询的种类 属性查询 1) 查找 仅选择一个属性表,给定一个属性值,找出对 应的属性记录或图形。在屏幕上已有一个属性 表,用户任意点取记录,对应的图形以高亮显示。 实现:执行数据库查询语言,找到满足 要求的记录,得到它的目标标识, 再通过目标标识在图形数据文件 中找到对应的空间对象,并显示出来。,第1 节 空间查询,三、空间查询的种类 属性查询 2)SQL查询 实现:交互式选择各项,输入后,系统再转换为标准的SQL,由数据库系统执行或ODBC C语言执行,得到结果,提取目标标识,在图形文件中找到空间对象,并显
8、示。 3)扩展SQL 空间数据查询语言在数据库查询语言上加入空间关系查询。 空间数据类型 增加 空间操作算子 空间概念 主要优点是:保留了SQL的风格,便于熟悉SQL的用户的掌握,通用性较好,易于与关系数据库连接。,第1 节 空间查询,邻近度(Proximity)描述了地理空间中两个地物距离相近的程度,其确定是空间分析的一个重要手段。 所谓缓冲区就是地理空间目标的一种影响范围或服务范围。从数学的角度看,缓冲区分析的基本思想是给定一个空间对象或集合,确定它们的邻域,邻域的大小由邻域半径R决定。因此对象Oi的缓冲区定义为:,第2节 缓冲区分析,即对象 Oi 的半径为R的缓冲区为距Oi的距离d小于R
9、的全部点的集合。d一般是最小欧氏距离,但也可是其它定义的距离。对于对象集合其半径为R的缓冲区是各个对象缓冲区的并,即:,第2节 缓冲区分析,第2节 缓冲区分析,另外还有一些特殊形态的缓冲区,如点对象有三角形,矩形和圈形等,对于线对象有双侧对称,双侧不对称或单侧缓冲区,对于面对象有内侧和外侧缓冲区。这些适合不同应用要求的缓冲区,尽管形态特殊,但基本原理是一致的。 缓冲区计算的基本问题是双线问题。双线问题有很多另外的名称,如图形加粗,加宽线,中心线扩张等,它们指的都是相同的操作。角分线法凸角圆弧法,第2节 缓冲区分析,角平分线法 :角分线法的缺点是难以最大限度保证双线的等宽性,尤其是在凸侧角点在进
10、一步变锐时,将远离轴线顶点。根据上图,远离情况可由下式表示:,第2节 缓冲区分析,凸角圆弧法:在轴线首尾点处,作轴线的垂线并按双线和缓冲区半径截出左右边线起止点;在轴线其它转折点处,首先判断该点的凸凹性,在凸侧用圆弧弥合,在凹侧则用前后两邻边平行线的交点生成对应顶点。这样外角以圆弧连接,内角直接连接,线段端点以半圆封闭。如图所示。,第2节 缓冲区分析,该算法非常重要的一环是折点凸凹性的自动判断。此问题可转化为两个矢量的叉积:把相邻两个线段看成两个矢量,其方向取坐标点序方向。若前一个矢量以最小角度扫向第二个矢量时呈逆时针方向,则为凸顶点,反之为凹顶点。具体算法过程如下:由矢量代数可知,矢量AB,
11、BC可用其端点坐标差表示(9-9):,第2节 缓冲区分析,3.缓冲区分析,矢量代数叉积遵循右手法则,即当ABC呈逆时针方向时,S为正,否则为负。若S0,则ABC呈逆时针,顶点为凸;若S0,则ABC呈顺时针,顶点为凹;若S=0,则ABC三点共线。,第2节 缓冲区分析,第2节 缓冲区分析,但当计算形状比较复杂的对象或多个对象集合的缓冲区时,就不得不处理边线自相交的情况。当轴线的弯曲空间不容许双线的边线无压盖地通过时,就会产生若干个自相交多边形。左图给出一个缓冲区边线自相交的例子。,第2节 缓冲区分析,第2节 缓冲区分析,自相交多边形分为两种情况:岛屿多边形和重叠多边形。岛屿多边形是缓冲区边线的有效
12、组成部分;重叠多边形不是缓冲区边线的有效组成,不参与缓冲区边线的最终重构。对于岛屿多边形和重叠多边形的自动判别方法,首先定义轴线坐标点序为其方向,缓冲区双线分成左右边线,左右边线自相交多边形的判别情形恰好对称。对于左边线,岛屿自相交多边形呈逆时针方向,重叠自相交多边形呈顺时针方向;对于右边线,岛屿多边形呈顺时针方向,重叠多边形呈逆时针方向。,第2节 缓冲区分析,第2节 缓冲区分析,第3节 空间叠置分析,空间叠置分析(spatial overlay analysis),又称叠置分析,是指在统一的空间参照系统条件下,将同一地区的两组或两组以上的要素 (地图)进行叠置,产生新的特征(新的空间图形或空
13、 间位置上的新属性的过程)的分析方法。 叠置分析是地理信息系统最常用的提取空间隐含信息的手段之一。 根据GIS数据结构的不同,分为下列矢量叠置和栅格叠置两类分析方法。,4.叠加分析,叠加分析是地理信息系统最常用的提取空间隐含信息的手段之一。该方法源于传统的透明材料叠加,即将来自不同的数据源的图纸绘于透明纸上,在透光桌上将其叠放在一起,然后用笔勾出感兴趣的部分提取出感兴趣的信息。地理信息系统的叠加分析是将有关主题层组成的数据层面,进行叠加产生一个新数据层面的操作,其结果综合了原来两层或多层要素所具有的属性。叠加分析不仅包含空间关系的比较,还包含属性关系的比较。地理信息系统叠加分析可以分为以下几类
14、:视觉信息叠加、点与多边形叠加、线与多边形叠加、多边形叠加、栅格图层叠加。,第3节 空间叠置分析,4.叠加分析,视觉信息叠加是将不同侧面的信息内容叠加显示在结果图件或屏幕上,以便研究者判断其相互空间关系,获得更为丰富的空间信息。地理信息系统中视觉信息叠加包括以下几类:点状图,线状图和面状图之间的叠加显示。面状图区域边界之间或一个面状图与其他专题区域边界之间的叠加。遥感影象与专题地图的叠加。专题地图与数字高程模型(DEM)叠加显示立体专题图。 视觉信息叠加不产生新的数据层面,只是将多层信息复合显示,便于分析。,一、视觉信息叠加,第3节 空间叠置分析,第3节 空间叠置分析,4.叠加分析,点与多边形
15、叠加,实际上是计算多边形对点的包含关系。矢量结构的GIS能够通过计算每个点相对于多边形线段的位置,进行点是否在一个多边形中的空间关系判断。 此外,还要进行属性信息处理。最简单的方式是将多边形属性信息叠加到其中的点上。当然也可以将点的属性叠加到多边形上,用于标识该多边形。,二、点与多边形叠加,第3节 空间叠置分析,4.叠加分析,线与多边形的叠加,是比较线上坐标与多边形坐标的关系,判断线是否落在多边形内。计算过程:计算交点;形成结点和链;建立拓朴;更新属性。,三、线与多边形叠加,第3节 空间叠置分析,4.叠加分析,多边形叠加是GIS最常用的功能之一。多边形叠加将两个或多个多边形图层进行叠加产生一个
16、新多边形图层的操作,其结果将原来多边形要素分割成新要素,新要素综合了原来两层或多层的属性。,第3节 空间叠置分析,四、多边形与多边形叠加,4.叠加分析,第3节 空间叠置分析,四、多边形与多边形叠加,叠加过程可分为几何求交过程和属性分配过程两步。几何求交过程首先求出所有多边形边界线的交点,再根据这些交点重新进行多边形拓扑运算,对新生成的拓扑多边形图层的每个对象赋一多边形唯一标识码,同时生成一个与新多边形对象一一对应的属性表。由于矢量结构的有限精度原因,几何对象不可能完全匹配,叠加结果可能会出现一些碎屑多边形(Silver Polygon)。通常可以设定一模糊容限以消除它。,第3节 空间叠置分析,
17、四、多边形与多边形叠加,第3节 空间叠置分析,四、多边形与多边形叠加,根据叠加结果最后欲保留空间特征的不同要求,一般的GIS软件都提供了三种类型的多边形叠加操作,如图所示:,第3节 空间叠置分析,四、多边形与多边形叠加,栅格数据结构空间信息隐含属性信息明显的特点,可以看作是最典型的数据层面,通过数学关系建立不同数据层面之间的联系是GIS提供的典型功能。空间模拟尤其需要通过各种各样的方程将不同数据层面进行叠加运算,这种作用于不同数据层面上的基于数学运算的叠加运算,在地理信息系统中称为地图代数。地图代数功能有三种不同的类型:基于常数对数据层面进行的代数运算;基于数学变换对数据层进行的数学变换(指数
18、、对数、三角变换等);多个数据层面的代数运算(加、减、乘、除、乘方等)和逻辑运算(与、或、非、异或等)。,第3节 空间叠置分析,五、栅格图层的叠加,设 x1,x2,x3xn,,,分别表示第1层至第n层上同一坐标属性值,f函数表示各层上属性与用户需求之间的关系,E为叠置后属性输出层的属性值,则,叠加操作的输出结果可能是: 各层属性数据的算术运算结果; 各层属性数据的极值; 逻辑条件组合; 其他模型运算结果。,第3节 空间叠置分析,(一)布尔逻辑运算 栅格数据可以按其属性数据的布尔逻辑运算来检索,即这是一个逻辑选择的过程。布尔逻辑为AND、OR、XOR、NOT。布尔逻辑运算可以组合更多的属性作为检
19、索条件,例如加上面积和形状等条件,以进行更复杂的逻辑选择运算。例如可以用条件:(A AND B) OR C进行检索。其中A为土壤是粘性的,B为PH值7.0的,C为排水不良的。这样就可把栅格数据中土壤结构为粘性的、土壤PH值大于7.0的、或者排水不良的区域检索出来。,第3节 空间叠置分析,五、栅格图层的叠加,第3节 空间叠置分析,五、栅格图层的叠加,(二)重分类 重分类是将属性数据的类别合并或转换成新类。即对原来数据中的多种属性类型,按照一定的原则进行重新分类,以利于分析。重分类时必须保证多个相邻接的同一类别的图形单元应获得相同的名称,并将图形单元合并,从而形成新的图形单元 。,重分类的过程,第
20、3节 空间叠置分析,五、栅格图层的叠加,(三)函数运算多层叠置分析是指将不同图幅或不同数据层的栅格数据叠置在一起,在叠置地图的相应位置上产生新的属性的分析方法。新属性值的计算可由下式表示:Uf(A,B,C,)其中,A,B,C等表示第一、二、三等各层上的确定的属性值,f函数取决于叠置的要求。多幅图叠置后的新属性可由原属性值的简单的加、减、乘、除、乘方等计算出,也可以取原属性值的平均值、最大值、最小值、或原属性值之间逻辑运算的结果等,甚至可以由更复杂的方法计算出,如新属性的值不仅与对应的原属性值相关,而且与原属性值所在的区域的长度、面积、形状等特性相关。,第3节 空间叠置分析,五、栅格图层的叠加,
21、例如利用土壤侵蚀通用方程式计算土壤侵蚀量时,就可利用多层面栅格数据的函数运算复合分析法进行自动处理。一个地区土壤侵蚀量的大小是降雨(R)、植被覆度(C)、坡度(S)、坡长(L)、土壤抗蚀性(SR)等因素的函数。可写成,第3节 空间叠置分析,五、栅格图层的叠加,土壤侵蚀多因子函数运算复合分析示意图,第3节 空间叠置分析,五、栅格图层的叠加,有一个森林地区融雪经验模型:M=(0.19T+0.17D) 式中,M是融雪速度(厘米/天),T是空气温度,D是露点温度。根据此方程,使用该地区的气温和露点温度分布图层,就能计算该地区融雪速率分布图。计算过程是先分别把温度分布图乘以0.19和露点温度分布图乘以0
22、.17,再把得到的结果相加。,第3节 空间叠置分析,五、栅格图层的叠加,第节 空间网络分析,对地理网络(如交通网络)、城市基础设施网络(如各种网线、电力线、电话线、供排水管线等)进行地理分析和模型化,是地理信息系统中网络分析功能的主要目的。网络分析是运筹学模型中的一个基本模型,它的根本目的是研究、筹划一项网络工程如何安排,并使其运行效果最好,如一定资源的最佳分配,从一地到另一地的运输费用最低等。,第节 空间网络分析,一、GIS网络分析的概念 概念: GIS的网络分析,是通过研究网络的状态以及模拟和分析资源在网络上的流动和分配情况,对网络结构及其资源等的优化问题进行研究的一种空间分析方法。 网络
23、分析的基础是图论和运筹学 网络图论基础 图论中的“图”并不是通常意义下的几何图形或物体的形状图,而是一个以抽象的形式来表达确定的事物,以及事物之间具备或不具备某种特定关系的数学系统。 由点集合V 和点与点之间的连线的集合E所组成的集合对(V,E)称为图,用G(V,E)来表示。 V中的元素称为节点,E中的元素称为边。 节点集V与边集合E均为有限的图称为有限图。这里只讨论有限图。,一、GIS网络分析的概念 网络图论基础 如果图中的边是有向的,则称为有向图。 在无向图中,首位相接的一串边的集合称为路。 在有向图中,顺向的首尾相接的一串有向边的集合称为有向路。 起点和终点为同一节点的路称为回路(或圈)
24、。 如果一个图中,任意两个节点之间都存在一条路,称这种图为连通图。 若一个连通图中不存在任何回路,则称为树 如果图中任一边(i,j)都赋一个数(i,j), 称这种数为该边的权数。 赋以权数的图成为赋权图。 有向图的各边赋以权数后, 成为有向赋权图。,第节 空间网络分析,二、网络的组成 1. 网络 是一系列联结的弧段,形式物质,信息流通的通道。 2. 网络基本要素 结点: 网络中任意两条线段的交点。 链: 连通路线,连结两点的段要素。 转弯: 从一条链上经结点转向另一条链。 停靠点(站点):网络中资源的上、下结点。 中心: 收发资源的结点处的设施。 障碍: 资源不能通过的结点。 3.属性 阻碍:
25、资源在网络中运行的阻力。 资源需求量:网络中与弧段和停靠点相联系资源的数量。 资源容量:网络中心为弧段的需求能容纳或提供的资源总数量。,第节 空间网络分析,二、网络的组成 4. 网络要素的表示 链弧 转弯 M条弧相连共有转弯个数N:N=M2,第节 空间网络分析,二、网络的组成 4. 网络要素的表示 停靠点、中心的属性 停靠点:直接在相应的结点上附上需求量 属性,负为下卸,正值为装载。 中心:资源最大容量、服务范围和服务延迟数。,第节 空间网络分析,三、网络分析 1.最短路径问题 最短路径的含义是指在网络中,找出从起点出发到终点的累计行程最短的路径。 1)“纯距离”意义上的最短路径 2)“经济距
26、离”意义上的最短路径 3)“时间”意义上的最短路径,单源点间最短路径,网络中某一点到其它点的最短路径.所有点对之间的最短路径,在整个运算过程中,求得所有点对之间的最短距离.,第节 空间网络分析,三、网络分析 1.最短路径问题 最短路径的算法Dijkstar算法 1959年由E.W.Dijkstar提出的标号法被认为是目前公认的最好的求解算法 该算法的优点是: 可以求出求出起点到终点的最短路径及其长度,而且可以求出起点到其它 任何一个顶点的最短路径及其长度。 不但适用于求解有向图上的最短路径问题,而且同样也适用于求解无向图上的 最短路径问题。 基本思想:首先从起点Vs开始,给每个顶点标一个数(成
27、为标号), T 标号表示从起点Vs到该点的最短路权的上界,称为临时标号; P 标号表示从Vs到该点的最短路权,称为固定标号。 已经得到 P 标号的顶点不再改变,凡是没有标上 P 标号的顶点,标上T标号。 算法的每一步就是把某一顶点的 T 标号改为变为 P 标号。那么,最多经过k -1 步,就可以求得从起点Vs ,到终点Vk的最短路径。,第节 空间网络分析,基本思想按最短路径长度递增的顺序,逐个产生各最短路径。,E.W.Dijkstra,狄克斯特拉算法(Dijkstra,1959),狄克斯特拉算法(Dijkstra,1959),距离矩阵的计算 为了求出最短路径,需先计算两点间的距离, 并形成距离
28、矩阵。若两点间没有路,则距离为。 最短路径搜索的依据 最短路径搜索的基本依据是,若从点S 到点 E 有一条最短路径, 则该路径上的任何点到S 的距离都是最短的。 为了进行最短路径搜索,令d(Vi, Vj)表示点Vi到Vj的距离, P(Vi)表示Vi到起始点S的最短距离。 最短路径搜索的步骤 (1) 对起始点S作标记,且对所有顶点令P(Vs) = 0, T(Vi) 。 (2) 对所有未作标记的点按以下公式计算距离, T(Vj) min T(Vj), d(Vi, Vj) P(Vi) 其中Vi是己确定作标记的点。取具有最小值的T(Vj),并对Vj作标记,令P(Vj)T(Vj) 。 若最小值的T(Vj
29、)为,则说明S到所有未标记的点都没有路,算法终止;否则继续。 (3) 如果Vj等于E,则已找到S到E的最短路径,算法终止;否则转(2)。,需搜索A到C的最短路径 对A作P标记,P(A)=0, 其它结点作T标号,T(V)= +, V为B、C、D、E。 因为A已经得到P标号,而与A关联的点有B、E、D, 且它们都是T标号,所以要修改它们的T标号 T(B) = minT(B),P(A)+d(A,B) = min+,0+4 = 4 T(E) = minT(E),P(A)+ d(A,E) = min+,0+2 = 2 T(D) = minT(D),P(A)+ d(A,D) = min+,0+1 = 1
30、在所有的T 标号中,T(D) = 1最小,于是令P(D) = 1 因为D已经得到P标号,而与D关联的点有E、C, 且它们都是T标号,所以要修改它们的T标号 T(E) = minT(E),P(D)+d(D,E) = min2,1+2 = 2 T(C) = minT(C),P(D)+ d(D,C) = min+,1+9 = 10 在所有的T 标号中,T(E) = 2最小,于是令P(E) = 2 因为E已经得到P标号,而与E关联的点有B、C, 且它们都是T标号,所以要修改它们的T标号 T(B) = minT(B),P(E)+d(E,B) = min4,2+1 = 3 T(C) = minT(C),P
31、(E)+ d(E,C) = min10,2+6 = 8 在所有的T 标号中,T(B) = 3最小,于是令P(B) = 3 因为B已经得到P标号,而与B关联的点只有C,且为T标号,所以要修改它们的T标号 T(C) = minT(C),P(B)+d(B,C) = min8,3+7 = 8 在所有的T 标号中,只有T(C) = 8最小,于是令P(C) = 8 根据顺序记录的标记点,以及最小值的取值情况,可得到最短路径为AEC, 最短距离为8。, Dijkstar算法应用举例 在下图所示的赋权图中,每一个顶点Vi ( i=1,2,)代表一个城镇;每一条边代表相应两个城镇之间的交通线,其长度用边旁的数字
32、表示。试求城镇 V1到 V6 之间的最短路径。,第节 空间网络分析,Disti:起始点到每个终点vi的最短路径长度 初始值: Disti=Costi0,i viV,V:网络节点集合, V=1,2,3,4,5,6 S:已确定最短路径的节点集合,S=1V-S:尚未确定最短路径的节点集合,Dijkstar算法应用举例,Costi,j=,Dijkstar算法应用举例,S=1,4V-S=2,3,5,6,第一步:选择Vj,使得Distj=Min Disti|ViV-S, S=SVi,Dijkstar算法应用举例,T(2) = minT(2),P(1)+d(1,2) = min+,0+17 = 17T(4)
33、 = minT(4),P(1)+ d(1,4) = min+,0+8 = 8,在所有的T 标号中,T(4) = 8最小,于是令P(4) = 8,S=1,4V=2,3,5,6,第二步:修改从Vj出发到集合V-S中任意一顶点Vk的最短路径长度。如果:Distj+Costj,kDistk, 则 Distk=Distj+Costj,k,Dijkstar算法应用举例,1,4,2,5,3,6,17,12,8,14,16,21,2,13,9,(17,1),(8,1),(24,4),(29,4),(, ),S=1,4,2V=3,5,6,j=2,重复第一步:选择Vj,Dijkstar算法应用举例,1,4,2,5
34、,3,6,17,12,8,14,16,21,2,13,9,(17,1),(8,1),(24,4),(26,3),(37,3),S=1,4,2,3V=5,6,j=3,Dijkstar算法应用举例,1,4,2,5,3,6,17,12,8,14,16,21,2,13,9,(17,1),(8,1),(24,4),(26,3),(35,5),S=1,4,2,3,5V=6,j=5,Dijkstar算法应用举例,S=1,4,2,3,5,6V=,Dijkstar算法应用举例,起点到其它所有点的最短路径,时间复杂度为:,任意两点之间的最短距离,时间复杂度为:,Dijkstar算法(时间复杂度),三、网络分析 2
35、.连通分析最小生成树 含义 连通图:如果一个图中,任意两个节点之间都存在一条路。 树:若一个连通图中不存在任何回路,则称为树。 最小生成树:生成树是图的极小连通子图。 生成树T 的权数:生成树中各边的权数之和。 应用 类似在n个城市间建立通信线路这样的连通分析问题。 图的顶点表示城市,边表示两城市间的线路,边上所赋的权值表示代价,第节 空间网络分析,三、网络分析 2.连通分析最小生成树 构造最小生成树的依据有两点: 1)在网中选择n1条边连接网的n个顶点; 2)尽可能选取权值为最小的边。,第节 空间网络分析,三、网络分析 2.连通分析最小生成树 算法(Kruskal,克罗斯克尔算法,也叫“避圈
36、”法) 1)先把图G中的各边按权数从小到大重新排列, 并取权数最小的一条边为T中的边。 2)在剩下的边中,按顺序取下一条边。若该边 与T中已有的边构成回路,则舍去该边,否则 选进T 中。 3)重复2),直到有m-1条边被选进T中,这m-1 条边就是G的图。,第节 空间网络分析,三、网络分析 3.资源分配定位与分配问题 含义 在一些候选点中选择给定数量的供应点以使预定的目标方程达到最佳结果。-最佳分配中心,最优配置。 所谓目标方程,是用数学方式表达满足所需求点到供应点的加权距离最小的条件方程,也称P中心定位问题 主要包括: 定位问题:指已知需求源的分布,确定在哪里布设供应点最合适的问题 分配问题
37、:确定这些需求源分别受哪个供应点服务的问题。,第节 空间网络分析,三、网络分析 3.资源分配定位与分配问题 算法 P中心的定位分配问题的Teitz-Bart算法 1)算法思想 是要在m个候选点中选择P个供应点为n个需求点服务,使得为这几个需求点服务的总距离(或时间或费用)为最少。 假设i记为需求点i的需求量, dij 记为从候选点j到需求点i的距离,则P中心问题可叙为: 并满足: i = 1,2,n 保证每个需求点 i 都被服务 pmn 其中,aij是分配的指数。如果需求点i受供应点j的服务,则其值为1,否则为0 上述两个约束条件是为了保证每个需求点仅受一个供应点服务,并且只有p个供应点,第节
38、 空间网络分析,3.资源分配定位与分配问题 算法 P中心的定位分配问题的Teitz-Bart算法 2)算法步骤 A、选定P个候选点作为起始供应点,并将所有需求点分配到最近的供应点,计算其目标方程,即总的加权距离。 B、作全局性调整 检验所有选择的供应点,选定一个供应点准备删除,它的删除仅引起最小的 目标方程的增值 从未选入的候选点中,寻找一个候选点来代替第一步中选定的供应点,这样可以 最大限度地减少目标方程的值 如果步骤中选定的点所减少的目标方程的值大于第一步中选定的点所增加的目标方程的值,就用步骤中的点代替步骤中选择的点,并更新目标方程的值,再回到步骤重复检验。否则,转入步骤C) C、对每一
39、个供应点依次作出区域性调整 如果不是固定的供应点,就用它邻近的候选点来代替检验 如果这一代替可以最大程度地减少目标方程的值,则进行这一替换,直到p-1个 供应点都被检验,并无新的替换为止 重复以上两步直到无新的替换为止,最后的供应点集就是最终的结果,第节 空间网络分析,三、网络分析 4. 选址(定位)问题举例 中心选址问题 质量判断依据:使最佳选址位置所在的顶点的最大服务距离为最小。 这类选址问题适宜于医院、消防站点等一类服务设施的布局问题 实质就是:求网络图中心点问题 假设某县下属的六个乡镇及其之间 公路联系如下图,图中每一个顶点 代表一个乡镇;每一条边代表连接 两个乡镇之间的公路,数字代表
40、该 公路的长度。现要设立一个消防站 为全县6个乡镇服务。试问该消防站 应该设在哪一个乡镇?,第节 空间网络分析,第一步,用标号法求出每一个顶点Vi到其它各顶点Vj的最短路径长度dij(i,j = 1,26),写出起距离矩阵 d11 d12 d13 d14 d15 d16 0 3 6 3 6 4 d21 d22 d23 d24 d25 d26 3 0 3 4 5 7 d31 d32 d33 d34 d35 d36 6 3 0 3 2 4 d41 d42 d43 d44 d45 d46 3 4 3 0 5 7 d31 d32 d33 d34 d35 d36 6 5 2 5 0 2 d41 d42 d43 d44 d45 d46 4 7 4 7 2 0 第二步,求每一个顶点的最大服务距离。显然,它们分别是矩阵中各行的最大值。即: e (V1) = 6, e(V2) = 7, e(V3) = 6, e(V4) = 7, e(V5) = 6, e(V6) = 7, 第三步,判定。 因为e (V1) = e (V3) = e (V5) =mine (Vi) =6 所以V1,V3,V5都是图中的中心点,也就是说消防站设在V1,V3,V5中的任何一个顶点上都是可行的,