【ArcGIS Pro实操第二期】最小成本路径(Least-cost path)原理及实操案例

本文主要是介绍【ArcGIS Pro实操第二期】最小成本路径(Least-cost path)原理及实操案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ArcGIS Pro实操第一期:最小成本路径原理及实操案例

  • 概述(Creating the least-cost path)
    • 1.1 原理介绍
    • 1.2 实现步骤
    • 1.3 应用案例
  • 2 GIS实操
    • 2.1 工具箱简介
      • 2.1.1 成本路径(Cost path)
      • 2.1.2 成本距离(Cost distance)
      • 2.1.2 路径距离(Path Distance)
    • 2.2 案例:
  • 参考

概述(Creating the least-cost path)

最小成本路径(Least Cost Path, LCP)是从起点到终点的最经济有效的路径。从起点到终点,选择的路径累积的“成本”最少。
在这里插入图片描述
这种分析在线性基础设施和路由应用中非常实用。例如,管道、电力线和轨迹规划在很大程度上依赖于这种类型的路线选择分析。

在寻找成本最低的路径时,您通常会比较不同路径的成本,并选择成本最低的路径。这可以是时间、金钱或任何其他指标。

1.1 原理介绍

案例说明:在下图中,可以看到新道路的两条可能路径(紫色和红色)。紫色线表示使用成本栅格创建的路径,其中每个输入栅格(土地使用和坡度)具有相同的影响。红线表示使用成本栅格创建的路径,其中坡度输入栅格的权重(影响)为66%。通过给斜率输入栅格一个更高的权重,更多地注意避免在红色路径上出现更陡的斜率。
在这里插入图片描述
重要的是要考虑如何对构成成本栅格的栅格进行加权。光栅的权重取决于你的应用程序和你想要达到的结果。

如果有多个单元或区域作为输入目的地,则可以从每个单元(产生多条路径,每个单元有一条路径)、每个区域(每个区域有一条路径)或最佳单个路径(只有一条路径,任何区域中最便宜的路径)计算代价最小的路径。工具中的参数指定应该使用哪个过程。

在下面的示例中,将使用不同的Path类型选项来演示成本路径。
在这里插入图片描述

  • 单个区域(Each zone)
    使用Each zone选项,将为每个From目标位置生成不同的路径。
    在这里插入图片描述
  • 单一路径(Single path)
    在下面的例子中,成本路径将使用最佳单路径选项进行演示。当存在一个最小代价路径时,它将被编码为输出光栅上的值3。路径起源的源区域中的单元格被分配值为1。
    在这里插入图片描述
  • 每个区域都有收敛路径(Each zone with converging paths)
    当来自不同区域的两条或两条以上的代价路径在到达一个源的路上汇合,并一起继续剩余的距离时,由于无法确定路段的所有者,因此将到源的联合路径赋值为2,如下面的每个区域的代价路径示例所示。
    在这里插入图片描述

1.2 实现步骤

进行此分析时,有三个主要步骤:

  • 成本距离(Cost distance)-首先,你必须计算与你的起点相关的成本。
    对于一条徒步路线,你的成本矩阵就是坡度。斜率越高,成本就越高。
  • 成本反向链接(Cost backlink)——第二,你需要计算栅格反向链接。
    在这种情况下,它将是路径的方向,从一个细胞到下一个细胞的所有8个可能的基本方向。
  • 成本路径(Cost path)——最后,您可以使用成本距离、成本反向链接和目的源来计算成本路径。
    无论走哪条路线,任何到达目的地的路径都等于相同的净高程变化。但它累积的斜率最小。

1.3 应用案例

使用这种光栅分析的一些领域是考古学,动物走廊和工程。

以下是关于最低成本路径分析及其工作原理的两个深入例子:

  • 管道路由——如果你想为管道找到最划算的路线,你可能会想在成本最低的地方设计它。
    例如,成本距离层将包括来自人口密度、环境地点和靠近水的加权值。障碍物是任何你不能穿过的东西,比如墓地、禁区或圣地。

  • 远足路线规划-规划适合家庭的远足路线的“成本”将会非常不同。
    在这种情况下,你会想把它建在最小的斜坡上,这样就可以安全攀爬了。当你从起点走到终点时,你想要“购买”最低的“成本”,也就是最小的斜率。任何通往山顶的路线都等于相同的净海拔变化。但成本最低的路径从头到尾累积的斜率最小。

2 GIS实操

2.1 工具箱简介

成本路径(Cost path) 工具确定从目标点到源点的最低成本路径。
除了要求指定目的地之外,成本路径(Cost path)工具还使用从成本距离工具派生的两个光栅:最小成本距离光栅和反向链接光栅。
这些栅格是由成本距离(Cost distance)或路径距离工具路径距离(Path Distance)创建的。反向链路栅格用于在成本距离表面上从目的地到源的成本最低的路线。

2.1.1 成本路径(Cost path)

2.1.2 成本距离(Cost distance)

2.1.2 路径距离(Path Distance)

2.2 案例:

参考

1、GISGeography-Least Cost Path Analysis in GIS
2、ArcGIS Pro-Creating the least-cost path

这篇关于【ArcGIS Pro实操第二期】最小成本路径(Least-cost path)原理及实操案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1143006

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

利用Python把路径转为绝对路径的方法

《利用Python把路径转为绝对路径的方法》在Python中,如果你有一个相对路径并且想将其转换为绝对路径,你可以使用Path对象的resolve()方法,Path是Python标准库pathlib中... 目录1. os.path.abspath 是什么?怎么用?基本用法2. os.path.abspat