路径分析
求解路径分析表示根据要求出的阻抗查找最快、最短甚至是景色最优美的路径。如果阻抗是时间,则最佳路径即为最快路径。因此,可将最佳路径定义为阻抗最低或成本最低的路径,其中,阻抗由您来选择。确定最佳路径时,所有成本属性均可用作阻抗。
累积属性在计算解时不起任何作用。例如,如果选择时间成本属性作为阻抗属性,并且希望累积距离成本属性,则仅使用时间成本属性优化解。
查找通过一系列停靠点的最佳路径将遵照与执行其他网络分析相同的工作流。
路径分析图层
路径分析图层将存储路径分析的所有输入、参数和结果。
创建路径分析图层
要通过网络分析工具条创建路径分析图层,可以单击网络分析 > 新建路径。
创建新路径分析图层后,该图层即会与它的五个网络分析类(停靠点、路径、点障碍、线障碍和面障碍)一起显示在网络分析 窗口中。
路径分析图层也会以名为 Route 的合成图层显示在内容列表 中(如果地图文档中已经存在名称相同的路径,则会以 Route 1、Route 2 等显示)。存在五种要素图层 - 停靠点、路径、点障碍、线障碍和面障碍。其中的每个要素图层都有默认的符号系统,您可在图层属性 对话框中对这些默认的符号系统进行修改。
路径分析类
路径分析图层由五种网络分析类组成。
下面各部分概述了每个类及其属性。
停靠点类
该网络分析类用于存储路径分析中用作停靠点的网络位置。“停靠点”图层包含四种默认符号:已定位停靠点、未定位停靠点、有错误的停靠点和有时间冲突的停靠点。您可以在图层属性 对话框中修改“停靠点”图层的符号系统,此对话框中包含停靠点的自定义符号系统类别,它位于网络分析 > 序列化的点中。
创建新路径分析图层后,“停靠点”类为空。仅当将网络位置添加到该类后,它才不为空。创建路径至少需要两个停靠点。
停靠点属性
一些停靠点属性仅在定义起始时间或启用时间窗后才可用,其中,起始时间和时间窗均是路径分析图层的图层属性 对话框的分析设置选项卡中的参数。
输入字段 |
描述 |
---|---|
ObjectID |
系统管理的 ID 字段。 |
Shape |
指示网络分析对象地理位置的几何字段。 |
名称 |
网络分析对象的名称。 向地图添加停靠点后将自动为其分配名称,并且可以对该名称进行编辑。 |
RouteName |
它表示停靠点所属路径的名称。通过使用该属性,可将单个路径分析图层中的停靠点分配给多个路径。
|
TimeWindowStart |
该属性存储了对网络位置的最早访问时间。 如果将 TimeWindowStart 设置为 10:00 AM,路径在 9:50 AM 到达停靠点,则需要将 10 分钟的等待时间添加到总时间中。 如果正在使用流量数据,则时间字段将引用与停靠点所在的边相同的时区。 该属性仅在对网络分析图层启用时间窗时可用。 |
TimeWindowEnd |
该属性存储了对网络位置的最晚访问时间。 TimeWindowStart 和 TimeWindowEnd 属性共同组成了路径可访问网络位置的时间窗。 如果位置的 TimeWindowEnd 值是 11:00 AM,而路径可到达停靠点的最早时间是 11:25 AM,则记录下 25 分钟的冲突。此外,将对停靠点进行符号化处理以显示这一位置具有时间窗冲突。 如果正在使用流量数据,则时间字段将引用与停靠点所在的边相同的时区。 该属性仅在对网络分析图层启用时间窗时可用。 |
Attr_[阻抗] (例如,Attr_Minutes,其中 Minutes 是网络的阻抗) |
该属性指定了路径访问网络位置所花费的时间。即,该属性存储网络位置的阻抗值。如果该字段值为零或为空,则网络位置不需要任何服务时间。 例如,如果您要通过将 Drivetime 作为阻抗来查找通过三个停靠点的最佳路径,则可以使用属性 Attr_Drivetime 存储在每个停靠点处所花费的时间。如果从停靠点 1 开始,10 分钟后到达停靠点 2,在停靠点 2 处花费 10 分钟后,又经过 10 分钟到达停靠点 3,那么即使到达停靠点 3 的行程只需要 20 分钟,到达停靠点 3 的总时间也会显示为 30 分钟 (10 + 10 + 10)。 |
网络位置字段
|
结合使用这四种属性可描述网络中对象所在的点。 |
CurbApproach |
CurbApproach 属性指定了车辆到达和离开网络位置的方向。有四种选择(它们的编码值显示在括号中):
|
输入/输出字段 |
描述 |
---|---|
顺序 |
作为输入字段,该数字表示访问停靠点的顺序。在路径中,序号应大于 0,但不得大于停靠点的最大数量。而且,序号不应重复。如果未选中分析图层参数重新排序停靠点以查找最佳路径,则生成的路径会以指定顺序访问停靠点。 如果允许求解程序对停靠点进行重新排序,则会找出最佳顺序,并会在求解过程中更新该字段。 更改顺序值的一种方法是在“网络分析”窗口中将停靠点拖动到其他停靠点的上方或下方。 |
状态 |
该字段受到下面列出的值的属性域(括号中是它们的编码值)的约束。
执行求解操作后,可以使用以下状态值之一修改状态:
如果使用时间窗,并且提前或延后到达,则值将更改为时间窗冲突 (6)。 |
输出字段 |
描述 |
---|---|
ArriveCurbApproach |
指示在车辆到达网络位置时路边位于车辆哪一侧。如果将网络位置的 CurbApproach 值设置为“车辆的右侧”,则求解后的 ArriveCurbApproach 是“车辆的右侧”。但是,如果将 CurbApproach 值设置为“车辆的任意一侧”或“禁止 U 形转弯”,则将“车辆的右侧”还是“车辆的左侧”作为 ArriveCurbApproach 的值取决于使用哪个值可生成最短路径。 |
DepartCurbApproach |
指示在车辆离开网络位置时路边位于车辆哪一侧。如果将网络位置的 CurbApproach 值设置为“车辆的右侧”,则求解后的 DepartCurbApproach 是“车辆的右侧”。但是,如果将 CurbApproach 值设置为“车辆的任意一侧”或“禁止 U 形转弯”,则将“车辆的右侧”还是“车辆的左侧”作为 DepartCurbApproach 的值取决于使用哪个值可生成最短路径。 |
Cumul_[阻抗] (例如,Cumul_Minutes,其中 Minutes 是网络的阻抗) |
该属性是到达停靠点将遇到的总阻抗。其中包括行驶到停靠点的过程中发生的阻抗、停靠点的阻抗以及所有先前停靠点的阻抗。 在上述输入属性 Attr_[阻抗] 的示例中,停靠点 2 的 Cumul_Drivetime 为 20 分钟(10 分钟行程时间 + 在停靠点 2 处花费的 10 分钟),停靠点 3 的 Cumul_Drivetime 为 30 分钟(停靠点 2 的 Cumul_Drivetime 的 20 分钟加上从停靠点 2 到停靠点 3 的行程时间 10 分钟)。 |
Wait_[阻抗] (例如,Wait_Minutes,其中 Minutes 是网络的阻抗) |
该属性存储路径提前到达时等待时间窗打开 (TimeWindowStart) 所花费的时间。 该属性仅在对网络分析图层启用时间窗时可用。 |
CumulWait_[阻抗] (例如,CumulWait_Minutes,其中 Minutes 是网络的阻抗) |
该属性存储等待时间窗打开 (TimeWindowStart) 所花费的时间总和。其中包括路径访问当前停靠点和所有先前停靠点花费的等待时间。 该属性仅在对网络分析图层启用时间窗时可用。 |
Violation_[阻抗] |
该属性用于衡量路径在时间窗关闭 (TimeWindowEnd) 之后到达的迟到时间。确切地说,它存储时间窗关闭与路径到达之间的时间间隔。 该属性仅在对网络分析图层启用时间窗时可用。 |
CumulViolation_[阻抗] |
该属性存储路径访问当前停靠点和所有先前停靠点时的累积冲突时间(Violation_[阻抗])。 该属性仅在对网络分析图层启用时间窗时可用。 |
ArriveTime | 指示到达停靠点的“日期和时间”值。 使用跨越多个时区的流量数据时,该时刻的时区将采用停靠点所处的网络元素所在时区。 |
DepartTime | 指示离开停靠点的“日期和时间”值。 使用跨越多个时区的流量数据时,该时刻的时区将采用停靠点所处的网络元素所在时区。 |
- “停靠点”类中的时间字段可以包含“仅时间”值或“日期和时间”值。如果时间字段(如 TimeWindowStart)具有“仅时间”值(例如 8:00 AM),则会忽略日期。使用日期和时间(例如 7/11/2010 8:00 AM)可以指定持续多天的时间窗。
- 时间窗仅表明车辆何时到达停靠点,而不表明 Attr_[阻抗] 何时结束。为了算入服务时间并在时间窗关闭前离开,请从 TimeWindowEnd 字段的值中减去 Attr_[阻抗] 的值。
路径类
路径类存储通过分析生成的路径。与其他要素图层相同,它的符号系统也可通过图层属性对话框进行访问和更改。
路径类是一个“仅输出”类,只有分析完成后它才不为空。找到最佳路径后,即会在网路分析 窗口中显示该路径。
路径属性
输出字段 |
描述 |
---|---|
ObjectID |
系统管理的 ID 字段。 |
名称 |
求解路径图层完成后将自动分配路径名称,命名方法是读取“停靠点”类的 RouteName 属性值;而如果该属性值为空,则可以通过合并路径中第一个停靠点的名称和最后一个停靠点的名称(例如,Graphic Pick 1 – Graphic Pick 8)来命名。您可以在网络分析 窗口中重命名路径。 |
FirstStopID |
路径中第一个停靠点的 ObjectID。 |
LastStopID |
路径中最后一个停靠点的 ObjectID。 |
StopCount |
路径访问过的停靠点数。 |
Total_[阻抗] (例如,Total_Minutes,其中 Minutes 是网络的阻抗) |
从第一个停靠点的起始到最后一个停靠点的结束的总阻抗。该值中包含总行驶阻抗和已访问停靠点的 Attr_[阻抗]。 |
TotalWait_[阻抗] (例如,TotalWait_Minutes,其中 Minutes 是网络的阻抗) |
该属性存储路径的总等待时间,即在停靠点处等待时间窗打开所花费的时间。 该属性仅在对网络分析图层启用时间窗时可用。 |
TotalViolation_[阻抗] (例如,TotalViolation_Minutes,其中 Minutes 是网络的阻抗) |
该属性存储路径中停靠点处的总冲突时间。如果路径在时间窗关闭之后到达停靠点,则将添加冲突时间,即为 ArriveTime 与 TimeWindowEnd 之间的差值。 该属性仅在对网络分析图层启用时间窗时可用。 |
StartTime |
路径开始时间。 该属性仅在对网络分析图层启用时间窗时可用。 |
EndTime |
路径完成时间。 该属性仅在对网络分析图层启用时间窗时可用。 |
点障碍、线障碍和多边形障碍
障碍用于临时限制网络各部分、向网络各部分添加阻抗以及调整网络各部分的阻抗大小。创建新网络分析图层时,“障碍”类为空。只有将对象添加到该类后,它们才不会为空 - 但不需要添加障碍。
障碍可用于所有网络分析图层;因此,将在一个单独的主题中对其进行介绍。
路径分析参数
可在分析图层的图层属性 对话框中设置分析参数。可通过不同的方式来访问该对话框:
“分析设置”选项卡
以下各小节列出了可为分析图层设置的参数。这些参数可在分析图层的图层属性 对话框的分析设置选项卡中找到。
约束条件
可以选择在求解分析时应遵守的约束属性。为必须遵守单行道规则的车辆(例如,非紧急车辆)查找解决方案时,应使用诸如“单向”等约束条件。如果网络数据集包含其他约束属性(如重量限制或高度限制),也可以使用这些约束条件。
约束属性也可以与动态属性结合使用。例如,如果车辆的高度高于隧道的高度,则可对边进行约束。
使用开始时间
可以将使用开始时间与具体日期或时间和星期属性结合使用来指定路径从第一个停靠点开始的时间。仅在将基于时间的成本属性选择为阻抗属性时,才能为路径指定开始日期和时间。
如果网络数据集包含流量数据,则分析结果将根据此处指定的开始日期和时间发生变化。例如,与非高峰时段相比,路径在高峰时段需要花费更长时间。此外,最佳路径会根据当时的交通状况发生变化。
可以选择输入浮动日期(星期)或日历日期(具体日期)。对于日历日期,您需要输入年、月和日。对于浮动日期,可以选择今天或一周中的任意一天(星期日到星期六)。浮动日期用于配置可以重复使用的分析图层,而无需记得要更改日期。
使用流量数据时,浮动日期特别有用。例如,如果选择星期和今天设置,则求解程序将基于当日(通过计算机操作系统确定)历史流量生成结果。例如,如果返回第二天(5 月 5 日),并再次求解同一个分析图层,则将基于该日期(5 月 5 日)的历史流量得出解。同样,如果选择星期属性中的星期一,然后进行求解,则将基于从当日到下一个星期一的历史流量得出解。但是,如果今天是“星期一”,则将使用今天的历史流量数据得出解。
如果使用流量数据,则开始时间将引用第一个停靠点所在边或交汇点的时区。存在一种可能导致求解失败的情况,即预先未确定时区。如果停靠点跨越多个时区并且选中了重新排序停靠点以查找最佳路径而不保留第一个停靠点,则将发生这种情况。可通过预分配第一个停靠点来避免此类失败的发生。
求解程序输出的路径要素具有 StartTime 和 EndTime 属性。StartTime 值将与路径分析图层的使用开始时间设置中输入的值匹配。EndTime 值将通过路径的开始时间和持续时间计算得出。也会在生成指示时使用这些开始时间和结束时间。默认情况下,开始时间为 8:00 AM。
应用时间窗
如果只能在特定时间段访问停靠点,则可将该停靠点的时间窗存储在网络位置(停靠点)的 TimeWindowStart 和 TimeWindowEnd 属性中。通过此复选框可启用或禁用那些时间窗的使用。如果启用了时间窗,则会修改路径以使其支持时间窗。如果路径不支持某些时间窗,则会将受影响的停靠点符号化为时间窗冲突。
重新排序停靠点以查找最佳路径
默认情况下,路径将按照您定义的顺序遍历各停靠点。但是,可能会通过网络分析查找最佳顺序来进一步缩短路径。该操作将对各种变量(例如,时间窗)予以考虑。您还可以选择在通过网络分析对中途的停靠点进行重新排序时,保留起始和目的地。
选中该属性后,路径分析将由最短路径问题变为流动推销员问题 (TSP)。
交汇点的 U 形转弯
ArcGIS 网络分析允许在任何位置、仅在死角(或死胡同 (cul-de-sac))或者仅在交点和死角处出现 U 形转弯,也可禁止在任何位置出现 U 形转弯。允许 U 形转弯表示车辆可以在交汇点处转向并沿同一街道往回行驶。
输出 Shape 类型
可以采用四种方法之一表示分析输出的路径要素。
无论选择何种输出 shape 类型,最佳路径始终由网络阻抗(而非欧氏距离)决定。这表示只是路径形状不同,而对网络进行的基础遍历则相同。
- 真实形状提供了生成路径的精确形状。
- 具有测量值的实际形状提供了生成路径的精确形状。而且,输出还包括线性参考的路径测量值。测量值从第一个停靠点增加并记录累积阻抗。
- 直线会在两个停靠点之间生成一条直线。
- 当输出 shape 类型设置为无时,将不返回任何形状。
应用等级
如果网络数据集具有等级属性,则可在分析时使用该等级。使用等级的结果是,求解程序更偏好高阶边而不是低阶边。分等级求解的速度更快,并且可以用于模拟驾驶员对在高速公路(而非地方道路)上行驶的偏好,即使这意味着行程更远。但是,如果不使用等级,则会为网络数据集生成精确的路线。
忽略无效的位置
该属性用于忽略无效的网络位置而仅通过有效的网络位置来求解分析图层。如果未选中该选项并且网络位置未定位,则求解操作可能会失败。无论在哪种情况下,分析都会忽略无效的位置。
指示
使用指示属性,可以设置距离和时间(如果具有时间属性)的显示单位。此外,还可以选择生成路线后自动打开指示。(如果未选择自动显示指示,可在网络分析 工具条上单击指示窗口按钮 来显示指示。)
累积选项卡
在累积选项卡中,可以选择网络数据集中要对路径对象进行累积的成本属性。这些累积属性仅供参考;求解程序仅使用分析图层的阻抗参数所指定的成本属性来计算路径。
对于每个累积的成本属性,均会向求解程序所输出的路径中添加一个 Total_[阻抗] 属性。
指示
在 ArcMap 中,路径分析生成路径后,即可显示指示。
要显示指示,请在网络分析 工具条上单击指示窗口按钮 。
- 指示窗口 可显示带有阻抗的转弯方向和转弯详图。
- 如果将阻抗设置为时间,则指示窗口 将显示每段路径花费的时间。此外,指示窗口 还可以显示每段路径的长度。
- 如果路径支持时间窗,则指示窗口 将显示 Attr_[时间] 和 Wait_[时间] 属性。但是,不支持 Violation_[时间] 和 Attr_[长度] 属性。