求解车辆配送 (VRP) (Network Analyst 工具)
汇总
创建车辆配送 (VRP) 网络分析图层,设置分析属性,并求解分析,是设置 VRP Web 服务的理想方法。 VRP 分析图层用于查找车队的最佳路径。
旧版本:
此工具已弃用。 该功能已被替换为创建车辆配送分析图层工具和分析功能区的网络分析下拉菜单中的车辆配送按钮。
用法
在地理处理窗格中,工具将各种可选参数分组为以下类别,以便于管理:
高级分析
障碍
自定义出行模式
网络位置
输出
服务功能
参数
| 标注 | 说明 | 数据类型 |
|---|---|---|
|
停靠点 |
VRP 分析的路径将访问的停靠点。 停靠点可以表示送货(例如配送家具)、接收(例如机场巴士接送乘客)或某种类型的服务或检查(例如,树木修剪作业或建筑物检查)。 停靠点要素集具有一个关联的属性表。 下面介绍了属性表中的字段。
系统管理的 ID 字段。
指示网络分析对象地理位置的几何字段。
停靠点的名称。 名称必须唯一。 如果该名称为空,则求解时会自动生成一个名称。
该属性指定了路径访问网络位置所花费的时间;也就是说,它存储了网络位置的阻抗值。 零值或空值指示网络位置不需要任何服务时间。 该字段值的单位由时间字段单位参数(Python 中的
网络位置的第一时间窗开始时间。 该字段可以包含空值;空值表示没有开始时间。 注:
网络位置的第一时间窗结束时间。 该字段可以包含空值;空值表示没有结束时间。
网络位置的第二时间窗开始时间。 该字段可以包含空值;空值表示没有第二时间窗。 如果第一时间窗为空,正如 如果两个时间窗都为非空,则二者不可以重叠。 而且,第二个时间窗必须在第一个之后出现。
网络位置的第二时间窗结束时间。 该字段可以包含空值。 如果 如果
如果到达时间出现在时间窗结束后,则认为与时间窗发生了冲突。 该字段为停靠点的第一个时间窗指定允许的最长冲突时间。 它可包含零值,但不能包含负值。 零值表示停靠点的第一个时间窗不能接受时间窗冲突;即,第一个时间窗是硬性的。 另一方面,空值表示对允许的冲突时间没有限制。 非零值指定最长延迟时间;例如,路径可在第一个时间窗结束之后最多 30 分钟内到达停靠点。 该字段值的单位由时间字段单位参数(Python 中的 时间窗冲突可通过求解程序进行追踪和加权。 因此,您可指示 VRP 求解程序采用以下三种方法之一:
指定时间窗冲突重要性参数(Python 中的
停靠点的第二个时间窗允许的最长冲突时间。 该字段与
定义要配送到停靠点的项在起始站点准备就绪的时间。 仅当入站到达时间早于路径的最晚开始时间值时,才能将该停靠点分配给此路径;这样,在项已准备就绪,可以进行装载之前,路径无法离开站点。 此字段有助于对涉及入站中转的情景进行建模。 例如,停靠点的某项作业需要一些特殊材料,但该站点当前并不具备这些材料。 现在正从另一位置运送这些材料,预计将在上午 11:00 到达该站点。为了确保不会将在货物到达之前离开的路径分配给此停靠点,停靠点的入站到达时间被设置为上午 11:00。 这些特殊材料在上午 11:00 到达后会被装载到车辆上,随后车辆离开该站点,驶向指派的停靠点。 注:
定义要在停靠点接收的货物必须到达终止站点的时间。 仅当路径能够访问停靠点且到达终止站点的时间早于指定的出站离开时间时,才能将该停靠点分配给路径。 此字段有助于对涉及出站中转的情景进行建模。 例如,货运公司派出运货车去接收停靠点的包裹,并将其运送至采用其他设施的转运站点,然后将其送往最终目的地。 每天下午 3:00 会有一辆半挂车停靠在该站点,接收高优先级包裹并将其直接送往中转站。 为了避免将这些高优先级包裹的配送延迟至第二天下午 3:00 的行程,货运公司尝试让运货车在下午 3:00 之前接收停靠点的高优先级包裹,同时在该截止时间之前将其运送至中转站。 这完全可以通过将出站离开时间设置为下午 3:00 来实现。 注:
配送量。 可以按任何度量单位(如重量、体积或数量)来指定大小。 也可以指定多个度量单位,例如,重量和体积。 输入未指明单位的配送量数值。 例如,如果需要将一个 300 磅的对象配送到某个停靠点,请输入 300。 您需要记住,该值的单位是磅。 如果您正在追踪的是具有多个维度的对象,请以空格分隔各维度的值。 例如,如果您在记录一次重 2,000 磅,体积为 100 立方英尺的配送业务的重量和体积,请输入 2000 100。 同样地,您需要记住单位,在这种情况下,单位分别是磅和立方英尺。 您还需要记住值及其对应单位的输入顺序。 确保以同样的方式指定路径的 空字符串或空值相当于所有度量单位值均为零。 如果字符串中值的个数相对于容量计数或追踪的度量单位来说不足,则其余的值将被视为零。 配送量不能为负。
接收的大小。 可以按任何度量单位(如重量、体积或数量)来指定大小。 也可以指定多个度量单位,例如,重量和体积。 但是,不可以使用负值。 该字段与停靠点的 注:
解决方案中包含停靠点时产生的收入。 该字段可包含空值(空值表示收入为零),但是它不能具有负值。 Revenue 会包含在优化目标函数值的过程中,但并不属于解决方案的运行成本。 也就是说,路径类中的
一个以空格分隔的字符串,其中包含了停靠点特性要求的名称。 空值表示停靠点没有特殊要求。 Orders 和 Routes 类中列出的所有特性的拼写必须完全匹配,这样 VRP 求解程序才能将它们链接起来。 为了说明什么是特殊要求及其工作方式,假设草坪护理及树木修剪公司都有一部分停靠点需要使用斗式铲车来修剪所有树木。 公司可以在
该字段指定将停靠点分配给路径时所要遵循的规则。 该字段受到下面列出值的属性域的约束(括号中是它们的编码值)。
该字段不能包含空值。
向其分配停靠点的路径的名称。 该输入字段用于将停靠点预先分配给特定的路径。 它可包含空值,空值表示停靠点未预先分配给任何路径,而求解程序会为停靠点确定可能的最佳路径分配。 如果将该字段设为空,则顺序字段也必须设为空。 完成求解操作后,如果已为停靠点分配路径,则
该字段表示停靠点在其分配的路径上的顺序。 该输入字段用于指定停靠点在路径上的相对顺序。 该字段可包含空值,空值表示停靠点可位于路径上的任意位置。 输入顺序值应为非负数值且对于各路径均唯一(在站点访问、停靠点和休息点之间分配),但是不需要从 0 开始,也不需要连续。 执行求解操作后, |
Feature Set |
|
站点 |
站点是指车辆在工作时间开始时离开并在工作时间结束后返回的位置。 在求解路径开始时,车辆在站点装货(对于配送)或卸货(对于接收)。 在某些情况下,站点还可以作为一个货物补给或货物更新的位置,车辆可以在此处卸货或重新装货,然后继续进行配送和接收。 站点具有打开时间和关闭时间,这由硬性时间窗指定。 车辆不能在该时间窗以外的时刻到达站点。 站点要素集具有一个关联的属性表。 下面介绍了属性表中的字段。
系统管理的 ID 字段。
指示网络分析对象地理位置的几何字段。
站点的名称。 路径记录集的 站点名称不区分大小写,但必须非空且唯一。
网络位置的第一时间窗开始时间。 该字段可以包含空值;空值表示没有开始时间。 注:
网络位置的第一时间窗结束时间。 该字段可以包含空值;空值表示没有结束时间。
网络位置的第二时间窗开始时间。 该字段可以包含空值;空值表示没有第二时间窗。 如果第一时间窗为空,正如 如果两个时间窗都为非空,则二者不可以重叠。 而且,第二个时间窗必须在第一个之后出现。
网络位置的第二时间窗结束时间。 该字段可以包含空值。 如果 如果
点移动的方向。 单位为度,并且从正北方向开始按顺时针方式进行测量。 该字段与 方位角数据通常会从配有 GPS 接收器的移动设备自动发送。 如果正在加载移动停靠点(例如行人或车辆),请尝试包括方位角数据。 使用该字段可以防止将位置添加到错误的边上,例如,车辆刚好在交叉路口或天桥附近时。 方位角也可帮助 Network Analyst 确定点所位于的街道侧。 有关详细信息,请参阅方位角和 BearingTol。
使用 单位为度,默认值为 30。 值必须大于零且小于 180。 值为 30 表示:当 Network Analyst 尝试在边上添加网络位置时,会在边两侧(左侧和右侧)以及边的两个数字化方向上,生成可接受的方位角范围值,该值为 15º。 有关详细信息,请参阅方位角和 BearingTol。
如果 |
Feature Set |
|
路径 |
可用于给定的车辆配送 (VRP) 问题的路径。 路径指定了车辆和驾驶员的特征。 求解后,它还表示站点和停靠点之间的路径。 路径可以具有开始和结束站点服务时间、固定或灵活的起始时间、基于时间的运行成本、基于距离的运行成本、多个容量、对驾驶员工作时间的各种约束等等。 路径记录集具有多个属性。 下面介绍了属性表中的字段。
路径的名称。 名称必须唯一。 如果该字段值为空,则 Network Analyst 会在求解时生成唯一的名称。 在大多数情况下,可自行选择是否输入值。 但是,如果分析中包括向路径预分配的休息点、路径货物补给点、按区域配送或停靠点,则您必须输入名称,因为在这些情况下路径名称将用作外键。 路径名称不区分大小写。
路径的起始站点名称。 该字段是站点参数中 如果 如果停靠点或站点跨多个时区,则不允许使用虚拟起始站点。 如果路径正在进行配送并且
路径的终止站点名称。 该字段是站点参数中
在起始站点的服务时间。 该字段可用于为车辆装货所用的时间建立模型。 该字段可以包含空值;空值表示没有服务时间。 该字段值的单位由时间字段单位参数(Python 中的 注:
在终止站点的服务时间。 该字段可用于为车辆卸货所用的时间建立模型。 该字段可以包含空值;空值表示没有服务时间。 该字段值的单位由时间字段单位参数(Python 中的 注:起始和结束站点处的服务时间是固定值(由
路径允许的最早开始时间。 求解程序通过将该字段与起始站点的时间窗结合使用来确定可行的路径开始时间。 该字段不能包含空值,其默认“仅时间”值为上午 8:00。 默认值被解释为默认日期参数(Python 中的 当任一时间窗字段包含当时的日期时,将忽略默认日期。 为避免在这种情况下出现错误,请将站点、路径、停靠点和休息点中的所有时间窗格式化为同时包含日期和时间。 将网络数据集与跨多时区的流量数据结合使用时,
路径允许的最晚开始时间。 该字段不能包含空值,其默认“仅时间”值为上午 10:00。 默认值被解释为分析图层的“默认日期”属性所指定日期的上午 10:00。 将网络数据集与跨多时区的流量数据结合使用时,
该字段存储将车辆加速到正常行驶速度、减速到停止状态以及离开和进入网络(例如,出入停车场)所需的行驶时间。 通过包含 该属性的成本是因为对不重合的停靠点、站点和货物补给点进行访问而产生的。 例如,如果路径从站点处开始,然后访问第一个停靠点,则总的到达/离开延迟会计入行驶时间。 这同样适用于从第一个停靠点行驶到第二个停靠点的情况。 如果第二个停靠点与第三个停靠点重合,则不会在它们之间添加 尽管车辆需要减速、停下来休息,然后再加速,但 VRP 求解程序也不能将 为了说明,假设在一幢高层建筑物中有五个重合停靠点,而且可通过三条不同的路径来为它们提供服务。 这意味着将产生三个到达/离开延迟;也就是说,三名驾驶员需要分别寻找停车位并进入同一栋建筑物。 不过,如果可以仅通过一条路径来为这些停靠点提供服务,则只有一名驾驶员需要寻找停车位并进入该建筑物,这样只会产生一个到达/离开延迟。 由于 VRP 求解程序会尝试将成本降至最低,所以它将尝试限制到达/离开延迟,因而会选择使用单一路径。 (请注意,特殊要求、时间窗或容量等其他约束可能要求发送多条路径。) 该字段值的单位由时间字段单位参数(Python 中的
车辆的最大容量。 可以按任何度量单位(如重量、体积或数量)来指定容量。 也可以指定多个度量单位,例如,重量和体积。 输入未指明单位的容量。 例如,如果车辆的最大载重为 40,000 磅,输入 40000。 您需要记住,该值以英镑为单位。 如果您正在追踪的是具有多个维度的对象,请以空格分隔各维度的值。 例如,如果您要记录重量和体积,而车辆最大载重为 40,000 磅,最大容量为 2,000 立方英尺,则请输入 40000 2000。 同样地,您需要记住单位。 您还需要记住值及其对应单位的输入顺序(在本例中,前者是磅,后者是立方英尺)。 记住单位和单位顺序非常重要,因为其可以用于在后续重新解释信息以及确保在停靠点参数的 空字符串或空值相当于所有值均为零。 容量值不能为负。 如果 注意:VRP 求解程序仅执行简单的布尔测试来判定是否超出容量。 如果路径的容量值大于或等于装载总量,则 VRP 求解程序将假定货物适宜用该车辆装载。 这可能并不正确,但具体要取决于货物和车辆的实际形状。 例如,VRP 求解程序允许将 1000 立方英尺的球形物装到容积为 1000 立方英尺、宽为 8 英尺的货车中。 但实际上由于球形物的直径为 12.6 英尺,所以它无法装到 8 英尺宽的货车中。
仅当解决方案中使用路径(即,路径分配有停靠点)时才产生的固定货币成本。 该字段可以包含空值;空值表示没有固定成本。 该成本是路径总运行成本的一部分。
路径总持续时间(包括行驶时间以及在停靠点、站点和休息点的服务时间和等待时间)中每单位工作时间产生的货币成本。 该字段不能包含空值,其默认值为 1.0。 该字段值的单位由时间字段单位参数(Python 中的
路径长度(总行驶距离)中每单位行驶距离产生的货币成本。 该字段可以包含空值;空值表示成本为零。 该字段值的单位由距离字段单位参数(Python 的
开始计算加班时间之前的规定工作时间。 该字段可以包含空值;空值表示没有加班时间。 该字段值的单位由时间字段单位参数(Python 中的 例如,如果路径总持续时间超过八小时的时候要为驾驶员支付加班费,且时间字段单位参数设置为分钟,则
每单位加班工作时间产生的货币成本。 如果
路径上允许的最大停靠点数。 该字段不能包含空值,其默认值为 30。
允许的最长路径持续时间。 路径持续时间包括行驶时间以及在停靠点、站点和休息点的服务和等待时间。 该字段可以包含空值;空值表示对路径持续时间无限制。 该字段值的单位由时间字段单位参数(Python 中的
路径允许的最长行驶时间。 行驶时间仅包括在网络上行驶花费的时间,不包括服务或等待时间。 该字段可以包含空值;空值表示对允许的最长行驶时间无限制。 该字段值不能大于 该字段值的单位由时间字段单位参数(Python 中的
路径允许的最长行驶距离。 该字段值的单位由距离字段单位参数(Python 的 该字段可以包含空值;空值表示对允许的最长行驶距离无限制。
一个以空格分隔的字符串,其中包含路径所支持的特殊要求的名称。 空值表示路径不支持任何特殊要求。 该字段是停靠点参数中 为了说明什么是特殊要求及其工作方式,假设草坪护理及树木修剪公司都有一部分停靠点需要使用斗式铲车来修剪所有树木。 公司可以在
该字段指定解决问题时是否可以使用路径。 该字段受值的属性域约束,可能的值如下:
|
Record Set |
|
休息点 |
车辆配送 (VRP) 问题中路径的休息时段或中断。 一个休息点仅与一条路径相关联,而且可在以下情况下获得:完成停靠点服务后、去往停靠点的途中或在为停靠点提供服务之前。 中断具有一个起始时间和持续时间,该时间段内可能会为驾驶员支付报酬,也可能不支付。 中断开始时可通过三种方式来建立:使用时间窗、最长行驶时间或最长工作时间。 休息点记录集具有关联的属性。 下面介绍了属性表中的字段。
系统管理的 ID 字段。
休息点所应用到的路径的名称。 一个休息点仅分配给一条路径,但可将多个休息点分配给同一路径。 该字段是路径类中
Precedence 值用来指定休息点在给定路径上的顺序。 优先级值为 1 的休息点会出现在优先级值为 2 的休息点之前,依此类推。 无论休息点是时间窗休息点、最长行驶时间休息点还是最长工作时间休息点,所有休息点都必须具有优先级值。
休息点的持续时间。 该字段不能包含空值,其默认值为 60。 该字段值的单位由时间字段单位参数(Python 中的
休息点时间窗的开始时间。 半开放时间窗对于休息点无效。 如果该字段中存在值,则 如果路径具有时间窗相互重叠的多个休息点,求解时将出错。 休息点的时间窗字段可以在日期字段中包含仅时间值或日期和时间值,但不能是表示自新纪元以来的毫秒数的整数。 时间窗字段的时区可以使用时间字段的时区使用情况参数(Python 中的 当任一时间窗字段包含当时的日期时,将忽略默认日期。 为避免在这种情况下出现错误,请将站点、路径、停靠点和休息点中的所有时间窗格式化为同时包含日期和时间。
休息点时间窗的结束时间。 半开放时间窗对于休息点无效。 如果该字段中存在值,则
该字段为时间窗休息点指定允许的最长冲突时间。 如果到达时间不在该时间范围内,则认为与时间窗发生冲突。 零值表示不能与时间窗发生冲突;即时间窗是硬性的。 非零值指定最长延迟时间。 例如,休息点可在其时间窗结束后最多 30 分钟内开始,但会按照时间窗冲突重要性参数(Python 中的 该属性可以为空; 该字段值的单位由时间字段单位参数(Python 中的
休息之前可累积的最长行驶时间。 行驶时间从上一个休息点的结束时间开始累积,或者从路径的起始点开始累积(如果还未休息过)。 如果这是路径的最后一个休息点,则 该字段用于限制可在驾驶多长时间之后才需要休息。 例如,如果分析的时间字段单位参数(Python 中的 如果该字段中存在值,则要成功求解分析, 该字段值的单位由时间字段单位参数(Python 中的
休息之前可累积的最长工作时间。 工作时间始终从路径的起始点开始累积。 工作时间等于行驶时间加上在停靠点、站点和休息点的服务时间。 不过请注意,该时间不包括等待时间,等待时间是指路径(或驾驶员)在停靠点或站点处等待时间窗打开所用的时间。 该字段用于限制可在工作多长时间之后才需要休息。 例如,如果时间字段单位参数(Python 中的 继续以上一个示例来进行说明,假设工作了三个小时之后又需要休息。 那么,要指定该休息点,需要输入 315(5 小时 15 分钟)作为第二个休息点的 如果该字段中存在值,则要成功求解分析, 该字段值的单位由时间字段单位参数(Python 中的
用来指示是否为休息点支付报酬的布尔值。 值为 True 表示在计算路径成本和判定加班时间时将包括在休息点处所花费的时间。 值为 False 表示的情况与 True 值相反。 默认值为 True。
该输入字段用于指示休息点在其路径上的顺序。 该字段可包含空值。 输入顺序值应为正且对于各路径均唯一(在货物补给点、停靠点和休息点之间共享),但是不需要从 1 开始,也不需要连续。 求解程序会修改 sequence 字段。 执行求解后,该字段会包含休息点在其路径上的 sequence 值。 路径的输出 sequence 值在货物补给点、停靠点和休息点之间分配;从 1 开始(在起始站点处);并且是连续的。 |
Record Set |
|
时间字段单位 |
指定分析中所有基于时间的字段值所使用的时间单位。 VRP 分析中的许多要素和记录都包含用于存储时间值的字段,例如用于停靠点的 基于时间的输出字段使用此参数指定的相同单位。 此时间单位无需与网络时间属性参数(Python 中的
|
String |
|
距离字段单位 |
指定分析中所有基于距离的字段值所使用的距离单位。 VRP 分析中许多要素和记录都包含用于存储距离值的字段,例如路径的 基于距离的输出字段使用此参数指定的相同单位。 此距离单位无需与网络距离属性参数(Python 中的
|
String |
|
网络数据集 |
将对其执行车辆配送 (VRP) 分析的网络数据集。 由于 VRP 求解程序要尽量缩短配送时间,因此网络数据集必须具有基于时间的成本属性。 |
Network Dataset Layer |
|
输出地理数据库工作空间 |
将创建输出要素类的文件地理数据库或内存工作空间。 此工作空间必须已经存在。 默认输出工作空间位于内存中。 |
Workspace |
|
输出未分配的停靠点名称 |
输出要素类的名称,其中包含任何无法到达的车站或未分配的停靠点。 |
String |
|
输出停靠点名称 |
包含了路径所访问的停靠点的要素类的名称。 该要素类包括站点、停靠点和休息点。 |
String |
|
输出路径名称 |
包含分析路径的要素类的名称。 |
String |
|
输出方向名称 |
包含路径方向的要素类的名称。 |
String |
|
默认日期 (可选) |
指定一天中的时间(不包含日期)的时间字段值的默认日期。 |
Date |
|
U 形转弯策略 (可选) |
指定将在交汇点处使用的 U 形转弯策略。 允许 U 形转弯表示求解程序可以在交汇点处转向并沿同一街道往回行驶。 考虑到交汇点表示街道交叉路口和死角,不同的车辆可以在某些交汇点转弯,而在其他交汇点则不行 - 这取决于交汇点是交叉路口还是死角。 为适应此情况,U 形转弯策略参数由与交汇点连通的边数隐性指定,这称为交汇点原子价。 此参数可接受的值如下所列;每个值的后面是根据交汇点价对其含义的描述。 如果您需要定义更加精确的 U 形转弯策略,可以考虑在网络成本属性中添加一个通用转弯延迟赋值器,或者如果存在的话,调整其设置,并特别注意反向转弯的配置。 还可以设置网络位置的 将出行模式(Python 中的
|
String |
|
时间窗冲突重要性 (可选) |
指定在支持时间窗时使用的重要性级别。
|
String |
|
空间聚类路径 (可选) |
指定是否将对停靠点进行空间聚类。
|
Boolean |
|
路径区 (可选) |
描绘给定路径的工作区域。 路径区属于面要素,用来对路径施加约束,以使路径仅为某一指定区域内或附近的停靠点提供服务。 以下示例说明了路径区非常有用的情况:
路径区要素集具有一个关联属性表。 下面介绍了属性表中的字段。
系统管理的 ID 字段。
指示网络分析对象地理位置的几何字段。
该区域所应用到的路径的名称。 按区域配送最大可覆盖一条关联路径。 该字段不能包含空值,而且是 Routes 要素图层中
用来指示按区域配送中的区域是硬性还是软性的布尔值。 值为 True 表示区域是硬性的;也就是说,落在区域面以外的停靠点不能分配给该路径。 默认值为 True (1)。 值为 False (0) 表示这样的停靠点仍可进行分配,但是为停靠点提供服务的成本要根据一个函数进行加权得到,该函数基于与区域的欧氏距离。 实际上,这意味着,随着软性区域到停靠点的直线距离的增加,停靠点被分配给路径的可能性将会降低。 |
Feature Set |
|
货物补给点 (可选) |
路径可以访问的中间站点,以重新装载或卸载正在配送或接收的货物。 具体而言,货物补给点将把路径链接到站点。 这一关系表明路径可在关联的站点处进行更新(在途中重新装载或卸载)。 货物补给可用于为以下情景建立模型:车辆在起始站点接收满载的配送量、到各停靠点提供服务、返回到该站点更新配送量,然后继续为更多停靠点提供服务。 例如,在丙烷气配送中,车辆可能需要进行多次交货才能将气罐排空,而且需要访问加气点并继续进行配送。 以下是使用路径补给点时要考虑的几项规则和选择:
货物补给点记录集具有关联属性。 下面介绍了属性表中的字段。
系统管理的 ID 字段。
进行该更新时所在站点的名称。 该字段不能包含空值,而且是 Depots 要素图层中
该更新所应用到的路径的名称。 该字段不能包含空值,而且是 Routes 要素图层中
更新的服务时间。 该字段可以包含空值;空值表示没有服务时间。 该字段值的单位由分析图层的“时间字段单位”属性指定。 注:在补给站点处装载车辆所花费的时间可能取决于车辆大小和车辆已有装载量。 不过,货物补给点的服务时间是固定值,并且不考虑实际载荷。 因此,为补给点服务时间指定的值应与货车满载量、平均装载量或所选的其他估计时间相对应。 |
Record Set |
|
停靠点对 (可选) |
将接收停靠点和配送停靠点配对,使其可由同一路径提供服务。 有时,要求停靠点的接收和配送是成对的。 例如,快递公司可能需要让路径从一个停靠点接收高优先级包裹并送往另一个停靠点,而不返回站点或分拣站,以减少送货时间。 可以通过使用停靠点对,按照相应的顺序将这些相关的停靠点分配给同一路径。 还可以分配包裹在车辆中的停留时间限制。 例如,包裹可能是血液样本,必须在两小时内从医生办公室运送到实验室。 停靠点对记录集具有关联属性。 下面介绍了属性表中的字段。
系统管理的 ID 字段。
停靠点对中第一个停靠点的名称。 该字段是 Orders 要素图层中
停靠点对中第二个停靠点的名称。 该字段是 Orders 要素图层中 停靠点对中的第一个停靠点必须为取货停靠点;即其 注:停靠点数量在站点处不进行装货或卸货。
停靠点对的最长行驶时间。 行驶时间是指离开第一个停靠点至到达第二个停靠点的持续时间。 该约束限制两个停靠点之间的车上时间(或行驶时间)。 车辆携带人员或易腐烂货物时,行驶时间通常比携带包裹或不易腐烂的货物的时间要短。 该字段可以包含空值;空值表示对行驶时间无限制。 该字段值的单位由分析图层的“时间字段单位”属性指定。 求解程序可对额外行驶时间(相对于停靠点对之间的直线行驶时间来测量)进行追踪和加权。 因此,您可指示 VRP 求解程序采用以下三种方法之一:不考虑车队行程成本的增加,将总的额外行驶时间缩至最短;找出一种可平衡总冲突时间和行程成本的解决方案;或者不考虑总的额外行驶时间,而将车队的行程成本降至最低。 为额外行驶时间重要性参数(Python 中的 |
Record Set |
|
额外行驶时间重要性 (可选) |
指定减少停靠点对的额外行驶时间的重要性级别。 额外行驶时间是指超出停靠点对间直线行驶所需时间的数量。 额外时间可能由司机休息或前往中间停靠点和站点造成。
|
String |
|
点障碍 (可选) |
指定点障碍,包括两种类型:禁止型和增加成本型。 它们可以暂时限制网络上的穿越或在网络的点上增加阻抗。 点障碍由要素集定义,为点要素指定的属性值决定它们是禁止型障碍还是增加成本型障碍。 下面列出了属性表中的字段及其描述。
系统管理的 ID 字段。
指示网络分析对象地理位置的几何字段。
障碍名称。
指定障碍是完全禁止通行还是在穿过障碍时增加成本。 共有两个选项:
如果 该字段值的单位由分析图层的时间字段单位属性指定。
如果 该字段值的单位由距离字段单位参数指定。 |
Feature Set |
|
线障碍 (可选) |
指定线障碍,用于暂时限制穿过线障碍。 线障碍由要素集定义。 下面列出了属性表中的字段及其描述。
系统管理的 ID 字段。
指示网络分析对象地理位置的几何字段。
障碍名称。 |
Feature Set |
|
面障碍 (可选) |
指定面障碍,包括两种类型:禁止型和成本按比例增加型。 它们会暂时限制穿越所覆盖的网络部分或调整阻抗。 面障碍由要素集定义,为面要素指定的属性值决定它们是禁止型还是成本按比例增加型。 下面列出了属性表中的字段及其描述。
系统管理的 ID 字段。
指示网络分析对象地理位置的几何字段。
障碍名称。
指定障碍的存在将完全禁止通行还是按比例增加行程成本。 共有两个选项:
障碍下方边的时间阻抗值乘以此字段中设置的值。 此字段仅在障碍为成本按比例增加型时有用。
障碍下方边的距离阻抗值乘以此字段中设置的值。 此字段仅在障碍为成本按比例增加型时有用。 |
Feature Set |
|
时间属性 (可选) |
确定网络元素的行驶时间时将使用的网络成本属性。 将出行模式(Python 中的 |
String |
|
距离属性 (可选) |
确定网络元素的距离时将使用的网络成本属性。 将出行模式(Python 中的 |
String |
|
在分析中应用等级 (可选) |
指定是否将等级属性用于分析。 如果未在用于执行分析的网络数据集中定义等级属性,该参数将不可用。 将出行模式(Python 中的
|
Boolean |
|
约束条件 (可选) |
表示求解时应遵循的网络限制属性。 将出行模式(Python 中的 |
String |
|
属性参数值 (可选) |
指定具有参数的网络属性的参数值。 记录集具有两个共同唯一识别参数的列以及另一个指定参数值的列。 将出行模式(Python 中的 属性参数值记录集具有关联的属性。 下面列出了属性表中的字段及其描述。
系统管理的 ID 字段。
网络属性的名称,其属性参数由表行设置。
属性参数的名称,其值由表行设置。 (无法使用此工具更新对象类型参数。)
属性参数的期望值。 如果未指定值,则该属性参数为空。 |
Record Set |
|
最大捕捉容差 (可选) |
最大捕捉容差是指在网络上定位或重新定位点时,Network Analyst 将搜索的最远距离。 该搜索将查找适合的边或交汇点,并将点捕捉到最近的边或交汇点。 如果在最大捕捉容差内没有找到合适的位置,对象将标记为无法定位。 |
Linear Unit |
|
排除网络的受限部分 (可选) |
指定将在何处放置网络位置。
|
Boolean |
|
要素定位器 WHERE 子句 (可选) |
将用于选择源要素子集的 SQL 表达式,该子集对可以定位停靠点和站点的网络元素设定了限制。 例如,为确保停靠点和站点不定位在限制出入的公路上,编写一个排除这些源要素的 SQL 表达式。 注意,加载时,其他网络分析对象(例如障碍)将忽略要素定位器 WHERE 子句。 值表列:
|
Value Table |
|
填充路线 (可选) |
指定是否将生成显示路径真实形状的线。
|
Boolean |
|
路线简化容差 (可选) |
路径几何的简化距离。 简化将保留路径上定义路径基本形状所需的关键点(例如交点处的转弯)而删除其他点。 指定的简化距离为简化线偏离原始线的最大允许偏移。 对线进行简化将减少折点的数量,并且往往能够减少绘制时间。 将出行模式(Python 中的 |
Linear Unit |
|
填充方向 (可选) |
指定是否将生成行驶方向。
|
Boolean |
|
方向语言 (可选) |
将用于生成行驶方向的语言。 下拉列表中可用的语言类别取决于您的计算机中所包含的 ArcGIS 语言包。 如果要将此工具作为独立服务器服务的一部分进行发布,那么必须确保与您所选语言相对应的 ArcGIS 语言包已经安装到服务器上,这样才能够保证工具正常工作。 此外,如果您的计算机未安装语言包,则该语言将不会出现在下拉列表中;但是,可以输入语言代码。 |
String |
|
方向样式名称 (可选) |
指定用于方向的格式样式。
|
String |
|
保存输出网络分析图层 (可选) |
旧版本:此参数失效,已在 ArcGIS Pro 中忽略。
|
Boolean |
|
服务功能 (可选) |
指定将此工具作为地理处理服务运行时所发生的最大计算机处理量。 使用此参数,可以避免让服务器求解超出预期资源或处理时间的问题;使用不同的 VRP 功能创建多个服务,以支持业务模型。 例如,如果您具有一个分级服务业务模型,您可能想提供一个每次最多只能求解五个路径的免费 VRP 服务,以及一个每次可求解五个以上路径的收费服务。 除了限制路径的最大数量之外,您还可以限制向分析中添加的停靠点或点障碍的数量。 控制问题大小的另一种方法是设置要素(通常为街道要素,即线或面障碍相交的要素)的最大数量。 当地理上分散的停靠点的直线距离超出给定值时,还可以强制进行分级求解,即使用户选择不使用等级。 值表列:
|
Value Table |
|
忽略无效的停靠点位置 (可选) |
指定在求解车辆配送问题时是否忽略无效停靠点。
|
Boolean |
|
出行模式 (可选) |
选择用于分析的交通模式。 自定义始终是一个选项。 要显示其他出行模式名称,必须使其显示在网络数据集参数指定的网络数据集中。 出行模式在网络数据集上定义,并为多种参数提供覆盖值,这些参数共同用于对汽车、货车、步行或其他出行模式进行建模。 在此处选择出行模式后,您将无需为以下参数提供值,这些参数值会由网络数据集中指定的值覆盖:
|
String |
|
忽略网络位置字段 (可选) |
当在网络中定位停靠点、站点或障碍时,指定是否考虑网络位置字段。
|
Boolean |
|
时间字段的时区使用情况 (可选) |
为工具支持的以下输入日期时间字段指定时区: 如果不知道停靠点或站点所在的时区,或者停靠点或站点处在多个时区内并且您想要所有的日期时间值同时启动,那么在 UTC 中指定日期时间值非常有用。 UTC 选项仅在您的网络数据集定义了时区属性时才可用。 否则,会始终将所有的日期时间值视为地理定位(Python 中的
|
String |
|
覆盖 (可选) |
注:此参数仅供内部使用。 |
String |
|
保存路径数据 (可选) |
指定是否保存含有某文件地理数据库的 此输出文件的默认输出位置位于临时文件夹内。 可通过使用
|
Boolean |
派生输出
| 标注 | 说明 | 数据类型 |
|---|---|---|
|
已成功输出求解结果 |
指示是否成功求解车辆配送问题分析的布尔值。 |
Boolean |
|
输出未分配的停靠点 |
该表列出了任何路径都无法访问的停靠点。 |
Table |
|
输出停靠点 |
该表提供了有关在站点、停靠点及休息点停靠的信息。 |
Table |
|
输出路径 |
要素类表示车辆配送中的司机、车辆及车辆路径。 |
Feature Class |
|
输出方向 |
帮助司机按照指定的路径驾驶车辆的转弯说明。 |
Feature Class |
|
输出网络分析图层 |
该网络分析图层可用于在地图中进行进一步分析或调试,其属性可在工具参数中进行配置。 |
File |
|
输出路径数据 |
包含特定路径的所有信息的 |
File |
环境
许可信息
- 基本: 需要 Network Analyst
- 标准: 需要 Network Analyst
- 高级: 需要 Network Analyst