位置分配分析
什么是位置分配?
位置通常被视为私营机构或公共组织获得成功的最重要因素。私营机构可因便利的位置而受益匪浅,不管是面向当地客源的小型咖啡店,还是拥有配送中心及遍布全球的零售出货商业链的跨国性工厂网络都是如此。良好的位置有助于保证经营成本固定且低廉,并维持较高的访问度。公共机构(例如学校、医院、图书馆、消防站和应急服务 (ERS) 中心)如果选择一个便利的位置,就可以以较低的成本为社区提供高质量的服务。
![]() |
在可提供货物与服务的设施点以及消费这些货物及服务的请求点已经给定的情况下,位置分配的目标就是以合适的方式定位设施点,从而保证最高效地满足请求点的需求。顾名思义,位置分配就是定位设施点的同时将请求点分配到设施点的双重问题。
乍看起来,所有位置分配分析似乎是解决相同的问题,但对于不同类型的设施点而言,最佳位置并不相同。例如,ERS 中心的最佳位置就不同于制造工厂的最佳位置。下面两个示例说明了当要定位的设施点类型不同时,位置分配问题的目标是如何变化的。
示例 1:定位 ERS 中心
在呼叫救护车时,我们希望能够立刻得到帮助,而紧急响应的时间很大程度上取决于救护车与病人之间的距离。通常,ERS 中心选址的目标就是要使救护车在规定的时间内可以到达尽可能多的人员所在的位置。具体问题可能为:要使救护车在四分钟内能到达的社区中人员所在位置尽可能的多,三个 ERS 设施点应设置在何处?
示例 2:定位制造工厂
许多零售商店从制造工厂接收货物。不论是生产汽车、设备,还是生产包装食品,制造工厂都可能将很大一部分的预算花费在运输上。位置分配可解答如下问题:为使总运输成本降至最低,制造工厂应位于何处?
位置分配问题类型
ArcGIS 的“位置分配”分析图层提供了七种不同的问题类型以解答特定种类的问题,这些问题类型与上面两个示例中陈述的问题类似。七种问题类型如下:
- 最小化阻抗
- 最大化覆盖范围
- 最大化有容量限制的覆盖范围
- 最小化设施点
- 最大化人流量
- 最大化市场份额
- 目标市场份额
各个问题类型的详细信息及示例在本文档的位置分配分析图层属性部分进行了描述。
执行位置分配分析的工作流程与 ArcGIS Network Analyst 扩展模块中其他所有分析的执行方式相似。
位置分配分析图层
位置分配分析图层可为给定的位置分配问题存储输入、参数和结果。
创建位置分配分析图层
可在 Network Analyst 中,通过单击 Network Analyst > 新建位置分配来创建位置分配分析图层。
![]() |
创建位置分配分析图层之后,该图层会与六个网络分析类(设施点、请求点、线、点障碍、线障碍和面障碍)一同出现在 Network Analyst 窗口中。
![]() |
同时,位置分配分析图层也会作为一个包含六个相应要素图层的复合图层,显示在内容列表 窗口中:设施点、请求点、线、点障碍、线障碍和面障碍。六个要素图层中的每一个图层都有默认的符号系统,可在图层属性 对话框中对其进行修改。
![]() |
位置分配分析类
位置分配分析图层由六种网络分析类组成,这些类都是存储于分析图层内的要素图层。它们包含了执行位置分配分析时所使用的网络分析对象。
网络分析类具有为给定的位置分配问题指定输入和输出的属性。这些属性可通过网络分析类属性表(类的所有对象及其属性都列在该属性表中)进行检查和编辑,也可通过对象的属性 窗口(一次只列出一个对象及其属性)进行检查和编辑。
在网络分析类的内部,可能有输入字段、输出字段以及输入/输出字段的组合。将数据输入到输入字段中,随后,位置分配求解程序会使用这些字段设置问题。相对的,输出字段则用于存储求解过程的结果,同时提供求解信息。最后,输入/输出字段将二者组合到一起:您可在求解前设置这些字段的值并让求解程序指定输出值。
设施点类
位置分配分析中的设施点是用于表示候选地点或必选地点的点要素,但在某些情况下,它也表示竞争设施点。位置分配求解程序会根据问题类型及所指定的条件,以最有效的方法选择最佳的候选设施点来分配请求。
候选设施点应处于适合要定位的事件或机构的位置上。例如,如果您要为多个配送中心选址,首先,可能需要查找待出售的宗地。宗地售价要在预算范围内,并经过适当分区,同时该宗地要足以容纳计划建造的配送中心。您可能还会考虑已建有可用作配送中心的建筑物的宗地。在确定设施点适宜性方面会考虑到的因素有无限多个。
选择恰当的因素并找到满足这些因素的地点,这就是适宜性分析的全部内容。适宜性分析应在设置位置分配问题之前执行。适宜性分析的详略程度可根据需要进行调整。但是,如果忽略了对理想的候选设施点的查找,位置分配求解程序可能会选择根本不可行的设施点。回头考虑配送中心的示例,如果未进行恰当的适宜性分析而将候选设施点随机散布到研究区域各处,则位置分配求解程序可能会选择位置不适当的候选设施点(如居民住宅区)。需注意的要点是,要将可能会满足需求的候选设施点提供给位置分配求解程序,然后位置分配求解程序会在候选设施点之间进行选择,以找到一个或一组设施点,这样就可以在不违反特定的位置分配类型约束的同时使成本降至最低,并分配最多的请求。
另一种类型的设施点就是必选设施点,它们必须包含在求解中。如果城市发展到一定程度,新的住宅区无法得到消防部门的足够保护时,则位置分配的目标可能就是要在不关闭现有消防站的前提下选址新的消防站。新的消防站的可能地点将成为候选设施点,而现有消防站将成为必选设施点。
竞争项设施点特定于最大化市场份额和目标市场份额问题类型,通常表示与您的业务争夺相同客户群体的竞争对手的业务设施点。
每个设施点都可具有表示其重要性或吸引力的权重。除 1 之外的设施点权重值只能与最大化市场份额及目标市场份额问题类型一同使用,其他问题类型将忽略此类值。例如,根据该值可认定某个大小两倍于普通销售区的百货公司对顾客的吸引力也是普通销售区百货公司的两倍。较大规模店铺的权重为 2.0,而普通规模店铺的权重为 1.0。确定何种因素影响设施点权重并将其量化需要进行周密的考虑。
设施点属性
输入字段 |
描述 |
---|---|
ObjectID |
系统管理的 ID 字段。 |
形状 |
指示网络分析对象地理位置的几何字段。 |
名称 |
网络分析对象的名称。 |
设施点类型 |
此属性可用于指定设施点是候选设施点、必选设施点、竞争项设施点还是已选设施点。它受到值的属性域约束,以下列表中括号内的整数值引用了该值属性域:
|
Weight |
设施点的相对权重,用于评定设施点的吸引力、有利条件或一个设施点较之另一个设施点的差异。 例如,一个值为 2.0 的权重更好地体现了客户的购物意愿,客户在高权重设施点处购物的意愿强于普通权重设施点处的购物意愿,差距达到 2 倍。可能影响设施点权重的示例因素包括建筑物面积、街区环境以及建筑物的使用年限。非 1 权重值仅适用于最大化市场份额与目标市场份额两种问题类型。 |
容量 | “容量”属性特定于“最大化有容量限制的覆盖范围”问题类型;其他问题类型会忽略“容量”。 此属性用于指定该设施点能够供应多少加权请求。即使请求在设施点阻抗中断范围内,求解程序也不会将超出容量的请求分配到设施点。 指定给该设施点的容量属性的任何值都会覆盖网络分析图层的默认容量;请参阅默认容量值。 |
网络位置字段
|
结合使用这四种属性可描述网络中对象所在的点。 |
CurbApproach |
CurbApproach 属性指定在到达设施点或离开设施点时应向哪个方向行驶。由于两点间的最短路径会因抵达目的地时所允许的行驶方向的变化而变化,因此在生成请求点与设施点间阻抗时将使用此属性。 该字段受值的属性域约束,默认情况下设置为车辆的任意一侧 (0),表示可从车辆的右侧或左侧访问设施点。在车辆应从特定方向到达或离开设施点的情况下,还有车辆的右侧 (1) 或车辆的左侧 (2) 两个选项。最后一个 CurbApproach 选项禁止 U 形转弯 (3),该选项对位置分配分析来说,其作用与车辆的任意一侧相同。 |
输入/输出字段 |
描述 |
---|---|
状态 |
该输入字段用于指示设施点的状态信息。 该字段受到下面列出的值的属性域(括号中是它们的编码值)的约束。
执行求解操作后,可以使用以下任一状态值修改状态:
|
输出字段 |
描述 |
---|---|
DemandCount: |
该字段包含了分配给设施点的请求点的计数。非零值表示设施点被选择作为解的一部分。 |
DemandWeight: |
该字段包含了分配给设施点的所有请求点的有效权重的总和。值为分配给设施点的请求点的所有 Weight 值的总和。在最大化人流量与最大化市场份额两种问题类型中,该值为 Weight 字段值按比例分配的总和,因为这些问题类型允许请求随距离而衰减或在多个设施点间进行拆分。 |
Total_[阻抗] (例如,Total_Miles,其中 Miles 是网络的阻抗) |
该字段包含了设施点与分配给设施点的每个请求点之间的网络成本总和。字段名称的 [阻抗] 部分可使用网络属性名称替换,例如,Total_Meters,其中 Meters 是网络属性的名称。 |
TotalWeighted_[阻抗] (例如,TotalWeighted_Miles,其中 Miles 是网络的阻抗) |
该字段存储设施点的累积加权成本。请求点的加权成本是将其权重乘以设施点与请求点之间的最小成本路径的乘积。设施点的加权成本是分配到该设施点的请求点的所有加权成本的总和。例如,如果将权重为 2 的请求点分配给距其 10 英里远的设施点,TotalWeighted_Miles 值即为 20 (2 x 10)。如果将权重为 3 的另一个请求点分配给距其 5 英里远的同一设施点,TotalWeighted_Miles 值将增加到 35 (3 x 5 + 20)。 |
请求点类
此要素图层用于存储给定位置分配分析图层的请求点。请求点通常是指对设施点提供的货物和服务有需求的人或物品的位置。请求点可以是根据居住在此处的人数进行加权的邮编区域的质心,也可以是根据这些人员产生的预计消费来加权的邮编区域质心。请求点也可以表示商业客户。如果您提供的业务具有很高的库存周转率,则它们将比低周转率的业务具有更高的加权值。
请求点可覆盖位置分配问题类型的距离中断。这在某些请求点具有不同需要或行为时非常有用。例如,当预先定位救护车时,在四分钟内到达各位置是可以接受的,但在老龄人口集中的区域(如老年人中心),需要将响应时间缩短到两分钟。
请求点属性
输入字段 |
描述 | ||||
---|---|---|---|---|---|
ObjectID |
系统管理的 ID 字段。 | ||||
形状 |
指示网络分析对象地理位置的几何字段。 | ||||
名称 |
网络分析对象的名称。 | ||||
GroupName |
请求点所在的组的名称。最大化有容量限制的覆盖范围、目标市场份额及最大化市场份额问题类型将忽略此属性。 如果请求点具有相同的组名称,则求解程序会将组的所有成员分配给同一设施点。
如果某些约束(如中断距离)阻止组中的任意请求点到达同一设施点,则不对任何请求点进行分配。 | ||||
Weight |
请求点的相对权重。权重值为 2.0 表示请求点的重要性是该值为 1.0 的请求点的两倍。 | ||||
ImpedanceTransformation |
指定给该请求点属性的任意值将覆盖网络分析图层的阻抗变换值。 | ||||
ImpedanceParameter |
指定给该请求点属性的任意值将覆盖网络分析图层的阻抗参数值。 | ||||
Cutoff_[阻抗] (例如,Cutoff_Miles,其中 Miles 为网络的阻抗) |
指定给该请求点属性的任意值将覆盖网络分析图层的中断 [阻抗] 值。 | ||||
网络位置字段
|
结合使用这四种属性可描述网络中对象所在的点。 | ||||
CurbApproach |
CurbApproach 属性指定在到达请求点或离开请求点时应向哪个方向行驶。由于两点间的最短路径会因抵达目的地时所允许的行驶方向的变化而变化,因此在生成请求点与设施点间阻抗时将使用此属性。 该字段受值的属性域约束,默认情况下设置为车辆的任意一侧 (0),表示可从车辆的右侧或左侧访问请求点。在车辆应从特定方向到达或离开请求点的情况下,还有车辆的右侧 (1) 或车辆的左侧 (2) 两个选项。最后一个 CurbApproach 选项禁止 U 形转弯 (3),该选项对位置分配分析来说,其作用与车辆的任意一侧相同。 |
输入/输出字段 |
描述 |
---|---|
状态 |
该输入字段用于指示请求点的状态信息。 该字段受到下面列出的值的属性域(括号中是它们的编码值)的约束。
执行求解操作后,可以使用以下任一状态值修改状态:
|
输出字段 |
描述 |
---|---|
FacilityID |
请求点被分配到的设施点对象 ID。 如果值为空,则说明没有将请求点分配给设施点,或将请求点分配给了多个设施点;后一种情况仅可能在市场份额的问题类型中出现。 |
AllocatedWeight |
这是分配给已选和必选设施点的请求数量。该值不包含分配给竞争项设施点的请求。该值可具有三种解释:
|
线类
线类是一种仅输出的网络分析类,因此,它包含了在求解操作过程中由求解程序生成的线要素。它还包含将请求点及所分配到的设施点相连的线要素。如果将一个请求点分配给多个设施点,则该请求点与分配到的每一个设施点都连有一条线。如果请求点未分配给任何设施点,它将没有任何对应的线。输出 shape 类型可以是“直线”,也可以是“无”;无论为哪种类型,线要素始终表示设施点与请求点之间最短的网络路径;因此,与成本相关的属性反映的是网络成本,而非直线距离。不输出网络路径实际形状的原因是在位置分配中极少需要它们,而且生成路径形状会大大增加求解时间,还可能会耗尽系统资源,对于一些大的求解问题而言,此弊端将更将明显。
线属性
输出字段 |
描述 |
---|---|
ObjectID |
系统管理的 ID 字段。 |
形状 |
指示网络分析对象地理位置的几何字段。 如果将分析图层的输出 Shape 类型属性设置为无,则不返回任何形状。将输出 Shape 类型属性设置为直线,会返回连接各请求点/设施点对的直线。 |
名称 |
线的名称。将对名称进行格式化,以使设施点名称和请求点名称按访问顺序列出。当将网络分析图层的行驶自属性设置为设施点到请求点时,名称格式为 [设施点名称] - [请求点名称];将属性设置为请求点到设施点时,名称格式为 [请求点名称] - [设施点名称]。 |
FacilityID |
与线关联的设施点的唯一 ID。一条线始终与一个设施点及一个请求点相关联。 |
DemandID |
与线关联的请求点的唯一 ID。一条线始终与一个设施点及一个请求点相关联。 |
Weight |
已连接的请求点 (DemandID) 分配给连接设施点 (FacilityID) 的权重。 |
TotalWeighted_[阻抗] (例如,Total_Miles,其中 Miles 是网络的阻抗) |
设施点与请求点间行驶的加权成本。该值是 Total_[阻抗] 值与分配给设施点的请求点的权重的乘积。所有累积属性,以及活动成本属性,都将拥有一个附带的 Total_[阻抗] 属性。 请注意,虽然线具有直线几何或空几何,但阻抗始终指的是网络成本,而非直线距离。 |
Total_[阻抗] (例如,Total_Miles,其中 Miles 是网络的阻抗) |
设施点与请求点间行驶的网络成本。所有累积属性,以及活动成本属性,都将拥有一个附带的 Total_[阻抗] 属性。 请注意,虽然线具有直线几何或空几何,但阻抗始终指的是网络成本,而非直线距离。 |
点障碍、线障碍和面障碍
障碍用于临时限制网络各部分、向网络各部分添加阻抗以及调整网络各部分的阻抗大小。创建新的网络分析图层时,“障碍”类为空。只有将对象添加到该类后,它们才不会为空 - 但不需要添加障碍。
障碍可用于所有网络分析图层;因此,将在一个单独的主题中对其进行介绍。
位置分配分析图层属性
可在分析图层的图层属性 对话框中设置分析参数。可通过不同的方式来访问该对话框:
“分析设置”选项卡
![]() |
位置分配分析图层的“分析设置” |
阻抗
该属性指定的网络成本属性用于定义通过网络元素时所要耗费的成本。
请注意,指定开始时间不需要启用流量的成本属性;但是,如果网络数据集包括流量数据,则将对与时间相关的位置分配分析进行求解。因此,您会看到结果会随不同的开始时间而变化。
使用开始时间
可以将使用开始时间与时间和星期或具体日期属性结合使用来指定从设施点或请求点开始的时间。
时间
在此输入的值表示您要对分析进行求解的时间。具体而言,行驶时间是从指定时间的设施点或请求点进行测量。行驶自属性将确定行驶时间是从设施点还是原点进行测量。
在时间参数中指定的时间必须与日期相关联。可以选择输入浮动日期(星期)或日历日期(具体日期)。
具体日期
对于日历日期,您需要输入与时间值相关联的年、月和日。
星期
对于浮动日期,可以选择相对于当前日期的今天或一周中的任意一天(星期日到星期六)。浮动日期用于配置可以重复使用的分析图层,而无需记得要更改日期。
选择星期时,可以相对于当前时间的前六天进行求解。
与流量数据和时区共同使用开始时间
如果使用以时间为基础的阻抗属性或累积属性,则开始时间和日期将参考位于开始设施点或请求点的边或交汇点的时区。
请注意,使用以时间为基础的阻抗属性跨越多个时区对分析进行求解时,所有的原点必须处于同一时区。
对横跨多个时区的位置分配分析进行求解时需要注意以下两个要求。
- 指定开始时间并且行驶方向为从设施点到请求点时,所有设施点必须处于同一时区。
- 指定开始时间并且行驶方向为从请求点到设施点时,所有设施点必须处于同一时区。
行驶自
当 Network Analyst 用于解决位置分配问题时,它可以计算从请求点到设施点或从设施点到请求点的网络成本。限制(例如单行道)和阻抗(例如行驶时间)可基于行驶的方向,因为方向会影响行驶时间。例如,从请求点驾车到达设施点可能需要 15 分钟,但从设施点行驶至请求点仅需 10 分钟。行驶自属性可影响请求点会分配到哪个设施点。
消防部门通常使用设施点到请求点设置,因为他们需要关注从消防站行驶到紧急救援位置所花的时间。零售商店则更关注顾客到达商店所花的时间;因此,商店通常使用请求点到设施点选项。
“行驶自”还决定了所提供的任何开始时间的意义。有关详细信息,请参阅上面的“使用开始时间”。
交汇点的 U 形转弯
Network Analyst 允许在任何位置、仅在死角(或死胡同 (cul-de-sac))或者仅在交点和死角处出现 U 形转弯,也可禁止在任何位置出现 U 形转弯。允许 U 形转弯表示车辆可以在交汇点处转向并沿同一街道往回行驶。
输出 Shape 类型
分析结果可以不使用线(无)或使用直线来表示:
- 无 - 地图上不返回或不显示表示请求点到设施点的分配状况的线。这在具有大量请求点或设施点,以及仅关注图表输出时非常有用。
- 直线 - 在地图上返回和显示连接请求点与设施点的线。
在这两种情况下,求解结果中与阻抗有关的成本均相同,并基于最短网络路径(不使用直线距离)。
应用等级
如果网络数据集具有等级属性,则可在分析时使用该等级。使用等级的结果是,求解程序更偏好高等级的边而不是低等级的边。分等级求解的速度更快,并且可以用于模拟驾驶员对在高速公路(而非地方道路)上行驶的偏好,即使这意味着行程更远。但是,如果不使用等级,则会为网络数据集生成精确的路线。
忽略无效的位置
该属性用于忽略无效的网络位置而仅通过有效的网络位置来求解分析图层。如果未选中该选项并且网络位置未定位,则求解操作可能会失败。无论在哪种情况下,分析都会忽略无效的位置。
限制
可以选择在求解分析时应遵守的限制属性。在大多数情况下,限制会使道路被禁止选择,但限制也可以使道路被避免选择或优先选择。为必须遵守单行道规则的车辆(例如,非紧急车辆)查找解决方案时,应使用“单向”等限制属性。其他常见限制属性包括:禁止某些车辆穿过特定道路或桥的高度或重量限制;要求危险品司机需要完全绕道或至少尽量避免的危险材料限制;及货车司机应该遵循的指定货车路线。可以选择在求解分析时应遵守的限制属性。(您可以进一步在属性参数选项卡中指定是否应该禁止、避免或首选使用限制条件的元素。)
“高级设置”选项卡
![]() |
在图层属性 对话框的高级设置选项卡中可选择问题类型并设置其属性。由于不同种类的设施点具有不同的优先级和限制,因此需要根据要定位的设施点的种类选择问题类型。例如,消防部门可能有一项规定,即其设施点所在的位置需要能在四分钟内到达社区中每一个请求位置。某个餐馆可能需要在合适的位置选址,以使尽可能多的人可以在 10 分钟内驾车到达,并且还要使这些人尽可能地靠近该餐馆。两个示例都可以使用位置分配分析来求解,但它们需要不同的问题类型。(最小化设施点数问题类型最适合消防部门的问题求解,而最大化人流量问题类型更适用于餐馆。)
当定位设施点时,在高级设置选项卡上所做的设置会更改各种限制条件,而且还会对求解程序的优先级产生影响。
问题类型
此问题类型属性可用于选择位置分配的问题类型。问题类型已在下面列出并进行描述。
问题类型 |
描述 | ||
---|---|---|---|
最小化阻抗 (P 中位数) |
将设施点设置在适当的位置,以使请求点与设施点的解之间的所有加权成本之和最小。下图中的箭头强调了一个事实,即位置分配是基于所有请求点之间的距离进行的。
此问题类型通常用于仓库选址,因为它可以减少将货物运送到各销售店的总运输成本。因为“最小化阻抗”可减少公众到达选定设施点所需行进的总距离,所以,通常认为对于某些公共机构(例如,图书馆、区域机场、博物馆、机动车辆管理部门及医疗诊所)的选址而言,选择不具有阻抗中断的最小化阻抗问题类型比其他问题类型更加合理。 下面描述了最小化阻抗这一问题类型对请求的处理方法:
| ||
最大化覆盖范围 |
定位设施点,以使尽可能多的请求点被分配到所求解的设施点的阻抗中断内。
“最大化覆盖范围”常用于定位消防站、警察局和 ERS 中心,因为紧急救援服务通常需要在指定响应时间内到达所有请求点位置。请注意,具有准确精密的数据,以确保分析结果能够准确的为真实世界建模,这对所有组织都十分重要,对紧急救援服务尤为关键。 与在店内就餐的比萨饼店相反,比萨外卖业务会试图将店址设在一定车程时间范围内可以覆盖最多人员的位置。定购比萨外卖的人通常不关心比萨饼店的远近;他们只关心比萨是否能够在店家所说的时间内送达。因此,比萨外卖业务会从其所说的送货时间中减去比萨制作时间,并针对最大化覆盖范围这一问题类型进行求解,以选出在覆盖区域中能够争取到最多潜在顾客的候选设施点。(在店内就餐的比萨饼店的潜在顾客受距离的影响更大,因为他们要前往餐馆就餐,因此人流量最大化或市场份额两种问题类型更适合于此种情况。) 下面描述了“最大化覆盖范围”这一问题类型对请求的处理方法:
| ||
最大化有容量限制的覆盖范围 | 定位设施点,以在设施点的阻抗中断内使尽可能多的请求点被分配到所求解的设施点;此外,分配给设施点的加权请求不可超过设施点的容量。 ![]() “最大化有容量限制的覆盖范围”的工作方式与“最小化阻抗”或“最大化覆盖范围”问题类型相似,但增加了容量限制。(如果将阻断中抗设置为<无>,那么它的工作方式就与“最小化阻抗”的有容量限制版本相似。)您可以通过为“容量”属性分配数值来指定设施点的容量。如果“容量”属性为空,则从分析图层的默认容量属性为设施点分配容量。 在下列情况下可使用“最大化有容量限制的覆盖范围”:创建包含给定人员数量或业务数量的区域;查找病床数量有限或可治疗的患者数量有限的医院或其他医疗设施点;或者查找未将其库存假定为无限的仓库。 下面描述了“最大化有容量限制的覆盖范围”这一问题类型对请求的处理方法:
| ||
最小化设施点数 |
定位设施点,以在设施点的阻抗中断内使尽可能多的请求点被分配到所求解的设施点;此外,还要使覆盖请求点的设施点的数量最小化。
除需考虑要定位的设施点数目(此数目由求解程序确定)外,最小化设施点数与最大化覆盖范围相同。如需考虑设施点建造成本这一限制因素,则原本使用“最大化覆盖范围”(如紧急响应)的组织可应用“最小化设施点数”来求解,以使所有可能的请求点全部都能得到设施点覆盖。在尚未提供更靠近学生住所的校车站点,学生们仍需步行一段路的情况下,“最小化设施点数”也可用于选择校车站点。 下面描述了“最小化设施点数”这一问题类型对请求的处理方法:
| ||
最大化人流量 |
在假定请求权重因设施点与请求点间距离的增加而减少的前提下,将设施点定位在能够将尽可能多的请求权重分配给设施点的位置上。
很少或没有竞争的专卖店适合该问题类型,但当缺乏有关市场份额这一问题类型分析所需的竞争对手的数据时,它也可以用于普通零售店和餐馆。其他适合该问题类型的业务包括咖啡店、健身中心、牙医及诊所、保龄球馆和电子商品店。公交车站的选址通常也使用“最大化人流量”进行分析。“最大化人流量”假定人们到达设施点所需行进的距离越远,他们就越不可能去利用它。这一假定的具体表现就是分配至设施点的请求数量会随距离的增加而减少。您可指定随阻抗变换而变化的距离衰减系数。 下面描述了“最大化人流量”这一问题类型对请求的处理方法:
| ||
最大化市场份额 |
选择一定数量的设施点,以保证存在竞争对手的情况下分配到最多的请求。其目标是利用您所指定数量的设施点占有尽可能多的市场份额。总市场份额是有效请求点的所有请求权重之和。
市场份额问题类型需要的数据最多,因为除了自己的权重之外,您还需要知道竞争对手设施点的权重。如果您已拥有包括竞争对手数据在内的全面信息,那么原先使用最大化人流量问题类型的设施点也可以使用市场份额这一问题类型。大型折扣店通常使用最大化市场份额来为少量的几个新店选址。市场份额这一问题类型将使用赫夫模型,该模型也称作重力模型或空间交互模型。 下面描述了“最大化市场份额”这一问题类型对请求的处理方法:
| ||
目标市场份额 |
“目标市场份额”可在存在竞争者的情况下,确定出占有总市场份额指定百分比所需的设施点的最小数量。总市场份额是有效请求点的所有请求权重之和。设置希望占有的市场份额的百分比,然后由求解程序确定满足该阈值所需的最小设施点数。
市场份额问题类型需要的数据最多,因为除了自己的权重之外,您还需要知道竞争对手设施点的权重。如果您已拥有包括竞争对手数据在内的全面信息,那么原先使用最大化人流量问题类型的设施点也可以使用市场份额这一问题类型。 当希望了解要占有指定的市场份额需要进行多大程度的扩张,或在出现新的竞争设施点的情况下需要采取何种措施来保证当前的市场额时,大型折扣店通常会使用“目标市场份额”这一问题类型。如果不考虑预算,求解结果通常可以作为商店应当采取的措施。在考虑预算的情况下,问题就回到了最大化市场份额的情况,这时只要以确定的设施点数争取到尽可能大的市场份额即可。 下面描述了目标市场份额这一问题类型对请求的处理方法:
|
要选择的设施点
使用要选择的设施点属性可指定求解程序应定位的设施点的数量。
当要查找的设施点多于所需设施点时,FacilityType 值为“必选项”的设施点将始终为解的一部分;要选择的任何额外设施点都将从候选设施点中选取。
在求解前所有 FacilityType 值为“已选项”的设施点在求解时都将视为候选设施点。
对于“最小化设施点数”问题类型,要选择的设施点属性不可用,因为求解程序需要确定实现覆盖范围最大化时所需的设施点的最少个数。
要选择的设施点属性在“目标市场份额”问题中也不可用,因为求解程序要确定占有指定市场份额所需的设施点的最少个数。
阻抗中断
阻抗中断指定请求点可分配给设施点的最大阻抗。最大阻抗以沿网络的最小成本路径进行测量。如果请求点位于中断外,则不会被分配。此属性可用于对人们为前往商店而愿意行进的最大距离,以及消防站到达社区中任一请求点所允许的最大时间进行建模。
![提示 提示](rsrc/tip.png)
如果设置请求点的 Cutoff_[阻抗] 属性,该属性将覆盖分析图层的阻抗中断属性。您可能会发现,乡村居民愿意走 10 英里远去往某个设施点,而城镇居民则只愿意走 2 英里的路程。此情况可以如下方式建模:将分析图层的阻抗中断值设置为 10,而将城镇地区中请求点的 Cutoff_Miles 值设置为 2。
阻抗变换
此属性可设置对设施点与请求点间网络成本进行变换的方程。它还可与阻抗参数结合使用,指定设施点与请求点间的网络阻抗对于求解程序选择设施点的影响的严重程度。
应用阻抗变换可使所有请求点到达最近设施点所需行进的总距离均等。图书馆和医疗诊所要关注服务的公平性,因此,它们通常使用最小化阻抗问题类型来定位设施点,处理过程采用幂阻抗变换,且阻抗参数为 2.0。这样,就不会有少数距离远的顾客或患者因为比别人更远的出行距离而感到担忧。
一些商店会收集顾客居住位置的相关数据;通过这些数据,可以了解距离对顾客行为的影响。这些数据的其中一点好处就是这些店可以建立及校准阻抗变换,日后便可使用它来选择更佳的地点。
要精确拟合阻抗变换和参数来描述您的优先级及/或为请求点行为建模还需要进行仔细的研究,包括对赫夫模型以及距离衰减等主题的研究。但是,研究的第一步始终是要了解成本变换的方式。在以下变换选项的列表中,d 指的是请求点,f 指的是设施点。所以阻抗df 即为请求点 d 与设施点 f 之间最短路径的网络阻抗,成本df 即为设施点与请求点间变换的网络阻抗。Lambda (λ) 表示阻抗参数。
阻抗变换 |
描述 |
---|---|
Linear |
成本df = λ * 阻抗df ![]() 因为更改线性变换中参数的值不会影响求解程序的结果,所以将阻抗变换属性设置为线性时,阻抗参数在内部始终设置为 1。 |
幂 |
成本df = 阻抗dfλ |
指数 |
成本df = e(λ * 阻抗df) 指数变换通常与阻抗中断结合使用。 |
下一组图形和表使用“最小化阻抗”来说明使用不同阻抗变换和参数的潜在影响。
![]() |
请求点位于两英里长的边的两端且候选设施点位于边中间位置的示例问题 |
线性变换始终使用值为 1 的参数,因此成本不变,设施点 B 可将该成本最小化。
设施点 |
总成本(线性) |
设施点解 |
---|---|---|
A |
3+3+5=11 | |
B |
7+1+1=9 |
选择设施点 B。 |
![]() |
使用线性变换时,设施点 B 的总变换成本低于设施点 A 的总变换成本。 |
参数为 2 的幂变换增加了足够长的距离,使得设施点 A 实现成本最小化。
设施点 |
总成本(幂变换,λ = 2) |
设施点解 |
---|---|---|
A |
32+32+52=43 |
选择设施点 A。 |
B |
72+12+12=51 |
![]() |
使用二次幂变换时,设施点 A 的总变换成本低于设施点 B 的总变换成本。 |
阻抗参数为 0.02 的指数变换更倾向于邻近的请求点,因此,在这种情况下,设施点 B 即为设施点解。(因为图形与线性变换图形相同,所以将其省略。)
设施点 |
总成本(指数变换,λ = 0.02) |
设施点解 |
---|---|---|
A |
e0.02*3+e0.02*3+e0.02*5=3.23 | |
B |
e0.02*7+e0.02*1+e0.02*1=3.19 |
选择设施点 B。 |
阻抗参数
通过此属性可设置一个参数 λ,以配合阻抗变换属性使用。但在将阻抗变换设置为线性时,将忽略阻抗参数值,而改用值 1。有关详细信息,请参见阻抗变换属性(上述内容)。
![提示 提示](rsrc/tip.png)
如果设置请求点的 ImpedanceParameter 属性,该属性会覆盖分析图层的阻抗参数属性。您可能要针对城镇居民和乡村居民使用不同的阻抗参数。可通过为分析图层设置阻抗变换以匹配乡村居民的阻抗参数,同时为城镇地区中的请求点设置阻抗参数以匹配城镇居民的阻抗参数,来执行建模。
目标市场份额
此属性特定于“目标市场份额”问题类型。它是您希望设施点解占总请求权重的百分比。求解程序会求出为占有该值指定的目标市场份额所需的最小设施点数。
默认容量
此属性特定于“最大化有容量限制的覆盖范围”问题类型。它是在分析中分配到所有设施点的容量。您可以通过在设施点“容量”属性中指定值来覆盖设施点的默认容量。
累积选项卡
在累积选项卡中,可以选择网络数据集中要对线对象进行累积的成本属性,它们表示沿网络的最小成本路径。这些累积属性仅供参考;求解程序仅使用分析图层的阻抗参数所指定的成本属性来计算结果。
对于每个累积的成本属性,均会向求解程序所输出的线要素中添加一个 Total_[阻抗] 属性,其中 [阻抗] 由累积的阻抗属性名称替代。
假设您将阻抗属性设置为“分钟”,因为您要根据能够实现最短行驶时间的路径进行分析。虽然最短的行驶时间对您最重要,但是您还想了解最快路径的长度。假设您在累积选项卡上选中了另一个成本属性“英里”。求解后,输出线要素将具有名为 Total_Minutes 和 Total_Miles 的字段,可分别提供沿最快路径行驶的时间以及沿该路径行驶的距离。
相反,您可以根据最短路径和累积行驶时间进行分析,从而确定在设施点和请求点之间完成每个行程所花费的时间。如果您具有启用流量的网络数据集,甚至可以找到有关具体时间的信息并对不同的行驶速度做出解释。为此,请为分析图层的阻抗选择基于距离的成本属性,使用开始时间,并通过与时间相关的成本属性累积时间。
对位置分配分析的结果进行求解和解释
在创建位置分配分析图层、填充所需网络分析对象并设置相应的分析属性后,可通过单击 Network Analyst 工具条上的求解按钮来求解位置分配问题的解。
求解后,如果将输出 Shape 类型属性设置为直线,则位置分配求解程序会在设施点解与分配到解的请求点之间绘制线,并将已成为解的候选设施点的 FacilityType 属性设置为“已选”。
Network Analyst 窗口还将更新“线”类的名称,以显示其包含的线对象的数目。
在求解操作过程中,位置分配求解程序将使用活动网络成本属性作为阻抗,创建一个由内部管理的设施点与请求点之间的起始-目的地 (OD) 成本矩阵。求解程序会在分析问题潜在的解时参考 OD 成本矩阵。
位置分配问题是组合优化中的一种,组合优化可使潜在解的数目快速增长。
候选设施点 |
要查找的设施点 |
潜在解的数目 |
---|---|---|
10 |
5 |
252 |
30 |
15 |
155,177,520 |
50 |
25 |
126,410,606,437,752 |
100 |
50 |
1.009 x 1029 |
500 |
250 |
1.167 x 10149 |
由于位置分配问题的组合特性,要在合理的搜索时间内找到理想的解,详尽的搜索技术不适合实际的应用(尤其对于大型问题集)。因此,启发式算法可实现更快的搜索。关于 Network Analyst 所使用的启发式算法的详细信息,可在下列主题中找到:
了解有关 Network Analyst 所用算法的详细信息
在成功选择设施点并分配请求点后,位置分配求解程序将在网络分析对象的相应输出字段中输出结果。
解释位置分配分析的结果
在对位置分配问题进行成功求解后,可通过查看设施点、请求点和线的属性来检查结果。也可能要在分析类中做出选择,以更透彻地理解结果。以下显示了两种通用的后分析选择:
- 对于除市场份额问题外的任意问题类型,要选择分配给特定设施点解的所有请求点,请选择 FacilityID 值与所关注的设施点 ID 值相等的请求点。
- 对于市场份额问题,要选择分配给特定设施点解的所有请求点,请以“请求点”中的 ObjectID 与“线”中的 DemandID 作为连接字段,将“线”属性表与“请求点”表相连接。然后,选择希望在 LALines.FacilityID 字段中检查的 FacilityID 值。