• ArcGIS 网络分析[2.5] VRP(车辆配送)【较难】


    什么是VRP?

    VRP就是车辆配送。

    大家有没有想象过一个城市的某个快递营业点,是怎么让各个快递员配送快递的?

    每个快递员针对那片区域的客户,如何走路线才最省时间?

    也许你会说,最短路径分析可以做到——那么,这可不能一个一个分开来分析呀?而且与最短路径有个最大的区别就是,VRP问题,车子出去走一圈最短的线路,还是要回来起点的。

    VRP就是讲究一个“一次设置”,全部计算的效率,而且还支持一些最短路径分析中不支持的特性,如停靠时间等,这是这几个网络分析里比较复杂的一个了。

    创建VRP图层所必须的——网络数据集的时间属性

    VRP图层比较特殊,特殊在哪里呢?

    以之前的网络数据集为例,新建一个VRP图层时提示:

    需要时间单位存在于网络数据集中的成本属性?

    其实,就是需要一个以时间为单位的属性,那么我们就设置一个时间属性:

    因为没有其他复杂的限制,其实时间=长度/速度,如果速度恒定,时间和长度没什么两样,都是线性变换,所以可以直接设置为Length字段。

    ps:假如道路对应时速不同,那么时间计算结果就不一样,那时候就不能这么设置了。

    作为示范,希望大家能看懂。

    这样,就能创建VRP图层了:

    输入

    VRP比较复杂,输入元素很多。为了演示最少需求元素,我画了一张图:

    基于网络数据集,才能创建VRP图层,创建了VRP图层,又需要最少设置途径点、站点、路径及路径的两个必备属性才能进行分析。

    什么意思呢?以快递配送举例:

    • 途经点:一个快递员一趟跑下来经过的快递地址;可以理解为:路过的地方。
    • 站点:快递配送中心;可以理解为:大本营。
    • 路径项目:可以认为一个路径项目就是一个快递员/一辆快递员的车。

    为了统一,我就以路径项目为名称继续写完VRP问题。

    ————————

    一个路径项目(快递员)总得知道从哪里出发,又回到哪里。一般起始点、终止点都会一样,当然也可以不一样。快递员可以配送完了回到配送点报道,也可以直接回家。

    分析举例

    手工添加途经点和站点

    首先,人工打点的方式设置15个途经点,5个站点。

    一般使用VRP的项目不会这样做,一般会用准备好的点要素数据(就是预先打好的点,点属性里有VRP所需的信息),直接用加载位置功能添加。

    创建路径项目并设置属性

    创建完后自动弹出路径属性,也可以在Network Analyst窗口双击路径项目。

    设置好起始点和终止点,起始点和终止点的类型是站点(大本营)。在这里,均选为第30号点。

    执行分析

    分析结果如下:

    当然,可以有多条路径,就意味着可以拥有n个快递员进行n条路线规划,这就是“车辆配送问题”了。不再赘述。

    如果提示分析需要时间属性,则打开图层属性中的分析设置,将时间属性选择为网络数据集的时间属性:

    结语

    VRP的复杂程度远远超过此例,还可以为其设置路径项目的成本、最大经过途经点个数、配送时间范围等属性。

    还可以为其添加障碍。

    还可以为其添加货物补给点。

    还可以为所有的元素添加他们可以设置的属性等,在此就请各位按需而设~

  • 相关阅读:
    扩展JSON
    字符串格式化---- String.prototype.format
    HigntChats应用举例--报表
    django Form组件之解决数据无法动态显示之BUG----以博客园添加新随笔页为主
    报错:jquery3.1.1报错Uncaught TypeError: a.indexOf is not a function
    HDU 6166 Senior Pan(多校第九场 二进制分组最短路)
    HDU 6069 Counting Divisors(区间素数筛法)
    hdu 6058 Kanade's sum (计算贡献,思维)
    HDU 6052 To my boyfriend(容斥+单调栈)
    HDU 6041 I Curse Myself(点双联通加集合合并求前K大) 2017多校第一场
  • 原文地址:https://www.cnblogs.com/onsummer/p/6900062.html
Copyright © 2020-2023  润新知