GIS分析题.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GIS分析题

地理信息系统分析题 一、有关最短路径问题 单源点间最短路径:网络中某一点到其它点的最短路径. 所有点对之间的最短路径:在整个运算过程中,求得所有点对 之间的最短距离. 1.最短路径问题 最短路径的含义——是指在网络中,找出从起点出发到终点的累计行程最短的路径。 1)“纯距离”意义上的最短路径 如需要运送一批物资从一个城市到另一个城市,选择什么样的运输路线距离最短? 2)“经济距离”意义上的最短路径 某公司在世界上10大港口C1,C2…C10设有货栈,为了更好地适应市场供需形势, 经常在各港口之间运送各类货物。从Ci到Cj之间的直接航运价格,是由市场动态决 定的。如果两个港口之间无直接航运路线,需要通过第三个港口转运。那么各个港口之间最廉价的货运路线是什么? 3)“时间”意义上的最短路径 某家经营公司有一批货物从急需要从一个城市运往另一个城市,那么,在由公路、 铁路、河运和航空运输四种运输方式和各个城市所构成的交通网络中,究竟选择怎样的运输路线最节省时间? ? 最短路径的算法——Dijkstar算法 1959年由E.W.Dijkstar提出的标号法被认为是目前公认的最好的求解算法 该算法的优点是: 可以求出起点到终点的最短路径及其长度,而且可以求出起点到其它任何一个顶点的最短路径及其长度。不但适用于求解有向图上的最短路径问题,而且同样也适用于求解无向图上的最短路径问题。 基本思想: 首先从起点Vs开始,给每个顶点标一个数(称为标号), T 标号——表示从起点Vs到该点的最短路径的上界,称为临时标号; P 标号——表示从Vs到该点的最短路经,称为固定标号。 已经得到 P 标号的顶点不再改变,凡是没有标上 P 标号的顶点,标上T标号。 算法的每一步就是把某一顶点的 T 标号改为变为 P 标号。那么,最多经过k -1步,就可以求得从起点Vs ,到终点Vk的最短路径。 ?(1). 距离矩阵的计算 为了求出最短路径,需先计算两点间的距离,并形成距离矩阵。若两点间没有路,则距离为∞ 最短路径搜索的依据 最短路径搜索的基本依据是,若从点S到点 E 有一条最短路径, 则该路径上的任何点到S的距离都是最短的。 为了进行最短路径搜索,令d(Vi, Vj)表示点Vi到Vj的距离, P(Vi)表示Vi到起始点S的最短距离。 最短路径搜索的步骤 对起始点S作标记,且对所有顶点令P(Vs) = 0, T(Vi) =∞。 对所有未作标记的点按以下公式计算距离, T(Vj) =min{ T(Vj), d(Vi, Vj) +P(Vi)} 其中Vi是己确定作标记的点。取具有最小值的T(Vj) ,并对Vj作标记,令P(Vj) = T(Vj) 。 若最小值的T(Vj)为∞,则说明S到所有未标记的点都没有路,算法终止;否则继续。 如果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) = min[T(B),P(A)+d(A,B)] = min[+∞,0+4] = 4 T(E) = min[T(E),P(A)+ d(A,E)] = min[+∞,0+2] = 2 T(D) = min[T(D),P(A)+ d(A,D)] = min[+∞,0+1] = 1 在所有的T 标号中,T(D) = 1最小,于是令P(D) = 1 因为D已经得到P标号,而与D关联弧段的结点有E、C, 且它们都是T标号,所以要修改它们的T标号 T(E) = min[T(E),P(D)+d(D,E)] = min[2,1+2] = 2 T(C) = min[T(C),P(D)+ d(D,C)] = min[+∞,1+9] = 10 在所有的T 标号中,T(E) = 2最小,于是令P(E) = 2 因为E已经得到P标号,而与E关联

您可能关注的文档

文档评论(0)

cuotian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档