Краткая информация
Инструмент Рассчитать Размещение-Распределение выбирает одно или несколько наилучших местоположений из входного набора.
Входными данными для этого инструмента являются пункты обслуживания, обеспечивающие товары или сервисы, и точки спроса, потребляющие их. Целью является поиск пунктов обслуживания, которые наиболее эффективно обеспечивают точки спроса. Инструмент решает эту проблему анализом различных способов назначения точек спроса тем или иным различным пунктам обслуживания. Решением является сценарий, который распределяет большинство точек спроса по пунктам обслуживания и минимизирует общую длину маршрута. В выходных данных содержатся выбранные пункты обслуживания, точки спроса, связанные с ними, и линии, соединяющие точки и пункты обслуживания.
Инструмент размещения-распределения можно настроить для решения специфических задач. Примеры:
Розничный магазин хочет найти возможные места для новых магазинов, чтобы захватить не менее 10 процентов розничного рынка в этой области.
Департамент пожарной охраны хочет определить, где следует разместить пожарные части, чтобы приезжать на место на четыре минуты для 90 процентов вызовов.
Департамент полиции хочет заранее разместить персонал согласно данным о правонарушениях за минувшую ночь.
После урагана, агентство по чрезвычайным ситуациям хочет определить наилучшие места для установки пунктов помощи пострадавшим с ограничением по числу пациентов в соответствии с количеством пострадавших.
Рисунок
Использование
В диалоговом окне инструмента есть разнообразные дополнительные параметры, сгруппированные для удобства управления ими в следующие семь категорий:
- Расширенный анализ
- Барьеры
- Пользовательский режим передвижения
- Настройки задачи Размещение-Распределение
- Набор сетевых данных
- Сетевые положения
- Выходные данные
- Возможности сервиса
Более подробно о выходных данных инструмента Размещение-Распределение
Синтаксис
SolveLocationAllocation_na (Facilities, Demand_Points, Measurement_Units, Network_Dataset, Output_Geodatabase, Output_Allocation_Lines_Name, Output_Facilities_Name, Output_Demand_Points_Name, Output_Route_Edges_Name, {Problem_Type}, {Number_of_Facilities_to_Find}, {Default_Measurement_Cutoff}, {Default_Capacity}, {Target_Market_Share}, {Measurement_Transformation_Model}, {Measurement_Transformation_Factor}, {Travel_Direction}, {Time_of_Day}, {Time_Zone_for_Time_of_Day}, {UTurn_Policy}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Time_Attribute}, {Time_Attribute_Units}, {Distance_Attribute}, {Distance_Attribute_Units}, {Use_Hierarchy_in_Analysis}, {Restrictions}, {Attribute_Parameter_Values}, {Accumulate_Attributes}, {Maximum_Snap_Tolerance}, {Feature_Locator_WHERE_Clause}, {Allocation_Line_Shape}, {Allocation_Line_Simplification_Tolerance}, {Maximum_Features_Affected_by_Point_Barriers}, {Maximum_Features_Affected_by_Line_Barriers}, {Maximum_Features_Affected_by_Polygon_Barriers}, {Maximum_Facilities}, {Maximum_Facilities_to_Find}, {Maximum_Demand_Points}, {Force_Hierarchy_Beyond_Distance}, {Save_Output_Network_Analysis_Layer}, {Travel_Mode})
Параметр | Объяснение | Тип данных |
Facilities | Укажите один или несколько пунктов обслуживания. Инструмент выбирает наилучшие местоположения из набора пунктов обслуживания, которые вы задаёте здесь. В конкурентном анализе, в котором вы пытаетесь найти лучшие местоположения в условиях конкуренции, конкурирующие пункты обслуживания указываются также здесь. При задании пунктов обслуживания, вы можете с использованием атрибутов установить свойства каждого из них, например такие, как имя пункта или тип. Для задания свойств пунктов обслуживания можно использовать следующие поля: OBJECTID – Системное поле ID. SHAPE – Поле геометрии, определяющее географическое местоположение пункта обслуживания. Name – имя пункта обслуживания. Имя включено в имя выходных линий распределения, если пункт обслуживания является частью решения. FacilityType – определяет, является ли пункт обслуживания кандидатом, обязательным или конкурирующим пунктом обслуживания. Значение поля указывается одним из следующих целых чисел (используйте числовой код, а не имя в скобках):
Weight – относительный вес объекта, используемый для ранжирования по привлекательности, предпочтительности или склонности. Например, значение 2,0 указывает на то, что предпочтения заказчика совершать покупки в этом магазине, а не в другом соотносятся как 2:1. Факторы, потенциально влияющие на вес, включают площадь, близость расположения и возраст здания. Отличные от единицы значения веса наследуются только такими типами задач, как максимизация доли рынке и доля на целевом рынке; они игнорируются в других типах задач. Capacity – поле Capacity задается только для типа задач Максимизировать покрытие емкостью; другие типы задач игнорируют данное поле. Свойство Capacity определяет, насколько пункт обслуживания может поддерживать взвешенный спрос. Излишние точки спроса не будут присвоены пункту обслуживания, даже если точки спроса находятся в пределах размеров пункта обслуживания по умолчанию. Любое значение, присвоенное полю Capacity, перезаписывает параметр Емкость по умолчанию (Default Capacity) (Default_Capacity в Python) для данного пункта обслуживания. CurbApproach – указывает направление, в котором транспортное средство может подъехать или отъехать от пункта обслуживания. Значение поля указывается одним из следующих целых чисел (используйте числовой код, а не имя в скобках):
Свойство CurbApproach было разработано для работы с обоими типами национальных стандартов дорожного движения: правостороннего (США) и левостороннего (Великобритания). Сначала рассмотрим случай, когда пункт обслуживания располагается с левой стороны транспортного средства. Это условие должно обязательно выполняться в независимости от того движется транспорт по левой или по правой полосе дороги. От национального стандарта дорожного движения будет зависеть ваше решение, с какой из двух сторон подъехать к пункту обслуживания, т.е. должен ли он находиться с правой или левой стороны транспортного средства. Например, если необходимо подъехать к пункту обслуживания так, чтобы он не был отделен от транспортного средства полосой движения, необходимо выбрать правую сторону транспортного средства (1) в США, и левую сторону транспортного средства (2) в Великобритании. | Feature Set |
Demand_Points |
Укажите одну или несколько точек спроса. Инструмент выбирает наилучшие пункты обслуживания, основываясь в значительной степени на том, как они обслуживают указанные здесь точки спроса. При задании точек спроса, вы можете с использованием атрибутов установить свойства каждого из них, например такие, как имя точки спроса или вес. Для задания свойств точек спроса можно использовать следующие поля: OBJECTID – Системное поле ID. SHAPE – Поле геометрии, определяющее географическое местоположение пункта обслуживания. Name – имя точки спроса. Имя включается в имя выходной линии или линий распределения, если точка спроса является частью решения. GroupName – имя группы, которой принадлежит точка спроса. Данное свойство игнорируется для моделей задач максимизирования покрытия емкостью, доли на целевом рынке и максимизирования доли на рынке. Если несколько точек спроса принадлежат одной группе, механизм расчета назначает всех членов группы одному объекту. (Если существуют ограничения, например, расстояние отсечения, это предотвращает доступ точек спроса к объектам и приводит к тому, что объекту не назначаются точки спроса.) Weight – относительный вес точки спроса. Значение 2,0 означает вдвое большую важность точки, чем значение 1,0. Если точки спроса представляют домохозяйства, вес может указывать на количество людей в каждом домашнем хозяйстве. Cutoff_Time – точка спроса не может быть выделена для пункта обслуживания, если превышено указанное здесь время в пути. Значение этого поля перекрывает значение параметра Отсекающее значение измерения по умолчанию (Default Measurement Cutoff). Единицы измерения для этого атрибута задаются параметром Единицы измерения (Measurement Units). Значение атрибута используется в процессе выполнения анализа только тогда, когда единицами измерения являются единицы времени. Значение по умолчанию является пустым, что означает, что переопределяемый срез отсутствует. Cutoff_Distance – точка спроса не может быть выделена для пункта обслуживания, если превышено указанное здесь расстояние. Значение этого поля перекрывает значение параметра Отсекающее значение измерения по умолчанию (Default Measurement Cutoff). Единицы измерения для этого атрибута задаются параметром Единицы измерения (Measurement Units). Значение атрибута используется в процессе выполнения анализа только тогда, когда единицами измерения являются единицы измерения расстояния. Значение по умолчанию является пустым, что означает, что переопределяемый срез отсутствует. CurbApproach – указывает направление, в котором транспортное средство может подъехать или отъехать от пункта обслуживания. Значение поля указывается одним из следующих целых чисел (используйте числовой код, а не имя в скобках):
Свойство CurbApproach было разработано для работы с обоими типами национальных стандартов дорожного движения: правостороннего (США) и левостороннего (Великобритания). Сначала рассмотрим случай, когда точка спроса находится с левой стороны транспортного средства. Это условие должно обязательно выполняться в независимости от того движется транспорт по левой или по правой полосе дороги. С учётом национальных стандартов дорожного движения, вы можете выбрать, с какой из двух сторон следует подъезжать к точке спроса, т.е. где будет находится точка заказа – справа или слева от транспортного средства. Например, если необходимо подъехать к точке спроса так, чтобы она не была отделена от транспортного средства полосой движения, необходимо выбрать правую сторону транспортного средства (1) в США, и левую сторону транспортного средства (2) в Великобритании. | Feature Set |
Measurement_Units | Укажите единицы, которые следует использовать для измерения продолжительности или протяженности пути между точками спроса и пунктами обслуживания. Инструмент выбирает наилучшие пункты обслуживания, которые могут быть достигнуты при наибольшей сумме взвешенного спроса и при наименьшей протяжённости поездок. Линии выходного распределения сообщают расстояние пути или время в пути в разных единицах, включая единицы измерения, которые вы указываете для этого параметра. Вы можете выбрать
Инструмент использует сетевой атрибут стоимости, заданный параметром Атрибут времени (Time Attribute) или параметром Атрибут расстояния (Distance Attribute), в зависимости от того, какие единицы измерения выбраны: времени или расстояния. Инструмент выполняет необходимые преобразования единиц в том случае, если значение параметра Единицы измерения (Measurement Units) отличается от единиц соответствующего атрибута стоимости времени или расстояния. | String |
Network_Dataset | Набор сетевых данных, который будет анализироваться. Наборы сетевых данных чаще всего представляют улично-дорожные сети, но могут представлять и другие типы транспортных сетей. Набор сетевых данных должен содержать хотя бы один атрибут стоимости, основанный на времени, и один, основанный на расстоянии. | Network Dataset Layer |
Output_Geodatabase | Выходная рабочая область. Рабочая область должна существовать. Выходная рабочая область по умолчанию – in_memory. | Workspace |
Output_Allocation_Lines_Name | Имя выходного класса пространственных объектов, содержащего линии, соединяющие точки спроса с назначенными им пунктами обслуживания. Схема выходного класса пространственных объектов описывается в разделе справки Выходные данные инструмента Рассчитать Размещение-Распределение. | String |
Output_Facilities_Name | Имя выходного класса пространственных объектов, содержащего пункты обслуживания. Схема выходного класса пространственных объектов описывается в разделе справки Выходные данные инструмента Рассчитать Размещение-Распределение. | String |
Output_Demand_Points_Name | Имя выходного класса пространственных объектов, содержащего точки спроса. Схема выходного класса пространственных объектов описывается в разделе справки Выходные данные инструмента Рассчитать Размещение-Распределение. | String |
Output_Route_Edges_Name | Имя выходного класса пространственных объектов, содержащего ребра маршрута. Ребра маршрутов представляют отдельные объекты улиц, вдоль которых проходит кратчайший путь между точками спроса и пунктами обслуживания, к которым они относятся. Эти выходные данные часто используются для определения сегментов улиц с наибольшим трафиком при перемещении к пунктам обслуживания. Данную информацию можно использовать, например, для размещения рекламы или расчистки дорог для поддержки интенсивности движения при эвакуации. Чтобы заполнить выходной класс RouteEdges (Ребра маршрутов) необходимо задать параметр Форма линии распределения (Allocation Line Shape) как истинные линии. Схема выходного класса пространственных объектов описывается в разделе справки Выходные данные инструмента Рассчитать Размещение-Распределение. | String |
Problem_Type (дополнительно) | Определяет цель анализа Размещение-Распределение. Целью по умолчанию является сведение к минимуму импеданса.
| String |
Number_of_Facilities_to_Find (дополнительно) | Задайте число пунктов обслуживания, которое решатель должен выбрать. Значение по умолчанию равно 1. Пункты обслуживания со значением поля FacilityType, равным 1 (требуется), всегда выбираются первыми. Любое превышение пунктов обслуживания в выборе выбирается из пунктов обслуживания – кандидатов, которые имеют значение поля FacilityType равным 2. Все пункты обслуживания, поле FacilityType которых имеет значение 3 (выбранный) перед выполнением решения, рассматриваются как кандидаты во время решения. Если число пунктов обслуживания для поиска меньше числа требуемых пунктов обслуживания, то отмечается ошибка. Число пунктов обслуживания для поиска (Number of Facilities to Find) отключено для типов задач Минимизировать пункты обслуживания (Minimize Facilities) и Доля на целевом рынке (Target Market Share), так как механизм расчета определяет минимальное количество пунктов обслуживания, требуемых для достижения целей задач. | Long |
Default_Measurement_Cutoff (дополнительно) | Задает максимальное время в пути или расстояние, разрешенное между точкой спроса и пунктом обслуживания, к которому она распределяется. Если точка спроса располагается за пределами зон импеданса пункта обслуживания, то она не может быть распределена данному пункту обслуживания. Значение по умолчанию является пустым, что означает, что срез не применяется. Единицами измерения значений данного параметра являются те же единицы, что указываются в параметре Единицы измерения (Measurement Units). Время в пути или предельное расстояние измеряются по кратчайшему пути по дорогам. Это свойство можно использовать для моделирования максимального расстояния, которые люди готовы преодолеть с целью посещения ваших магазинов или расстояния, на котором пожарная часть может обслуживать вызовы. Обратите внимание, что точки спроса имеют поля Cutoff_Time и Cutoff_Distance, которые, если установлены соответствующим образом, имеют приоритет над параметром Отсекающее значение измерения по умолчанию. Может оказаться, что люди в сельской местности готовы преодолевать расстояние в 10 миль, чтобы попасть к объекту, а городские жители согласны преодолевать не более 2 миль. Полагая, что Единицы измерения заданы в милях, вы можете моделировать данное поведение установкой отсекающего значения измерения по умолчанию равным 10 и значения поля Cutoff_Distance для точек спроса в городских территориях равным 2. | Double |
Default_Capacity (дополнительно) | Это свойство характерно для типов задач Максимизации покрытия емкостью (Maximize Capacitated Coverage). Это емкость, назначенная всем пунктам обслуживания в анализе по умолчанию. Вы можете переопределить значение емкости по умолчанию для пункта обслуживания, указав значение для поля Capacity для пункта обслуживания. Значение по умолчанию равно 1. | Double |
Target_Market_Share (дополнительно) | Данный параметр специфичен для типа задач Доля на целевом рынке (Target Market Share). Это процент от общего веса спроса, который хотите выбрать и захватить требуемые пункты обслуживания. Механизм решения выбирает минимальное число пунктов обслуживания, необходимое для обеспечения целевой доли рынка здесь. Значение по умолчанию – 10 процента. | Double |
Measurement_Transformation_Model (дополнительно) | Этот параметр задает уравнение для преобразования сетевой стоимости между объектами и точками спроса. Это свойство вместе со свойством Параметр импеданса (Impedance Parameter) задает, насколько сильно сетевой импеданс между объектами и точками спроса влияет на выбор объектов (пунктов обслуживания) механизмом расчета. В следующем списке представлены варианты преобразования; d обозначает точку спроса, f – объект. "Импеданс" рассматривается как кратчайшее расстояние пути или времени между двумя местоположениями. Таким образом, импедансdf – это кратчайший путь (по времени или расстоянию) между точкой спроса d и пунктом обслуживания f, а стоимостьdf – это трансформированные время и расстояние пути между пунктом обслуживания и точкой спроса. Лямбда (λ) обозначает параметр импеданса. Настройки Единицы измерения (Measurement Units) определяют будет ли анализироваться время пути или расстояние.
| String |
Measurement_Transformation_Factor (дополнительно) | Предоставляет значение параметра для уравнения задаваемое параметром Модель преобразования измерений. Если преобразование импеданса линейное, значение параметра игнорируется. Для преобразований POWER и EXPONENTIAL значение не должно быть равно нулю. Значение по умолчанию равно 1. | Double |
Travel_Direction (дополнительно) |
Укажите, следует ли измерять время в пути или расстояния (от точки спроса к пункту обслуживания или наоборот). Значение по умолчанию – измерять от пунктов обслуживания к точкам спроса.
Время и расстояние пути может меняться в зависимости от направления движения. Если движение происходит из точки A в точку B, то вы можете столкнуться с меньшим трафиком или иметь более короткий путь, из-за улиц с односторонним движением и ограничений поворотов, чем если бы вы ехали в противоположном направлении. Например, перемещение из точки А в точку Б может занять всего 10 минут, но перемещение в обратном направлении может занять 15 минут. Эти различные измерения могут повлиять на то, могут ли точки спроса быть отнесены к определенным пунктам обслуживания из-за отсекающих порогов, в типах задач, где спрос распределяется, а также повлиять на то, насколько охвачен спрос. Пожарные части, как правило, измеряют от пунктов обслуживания до точек спроса, поскольку их интересует, как быстро они смогут доехать от пожарной части к месту вызова. Для магазинов розничной торговли важнее то, насколько быстро покупатели смогут доехать до магазина; поэтому магазины, обычно, измеряют время и расстояние от точек спроса до пунктов обслуживания. Travel Directionтакже определяет значение указанного времени начала. Более подробно о параметрах см. раздел День и ночь (Time of Day). | String |
Time_of_Day (дополнительно) | Укажите время, с которого начинается движение. Это свойство игнорируется если только Единицы измерения (Measurement Units) не базируются на времени. Значение по умолчанию – no time or date (без времени и даты). Когда Время суток (Time of Day) не задано, решатель использует общие скорости-обычно те, которые установлены в качестве ограничений. В действительности трафик постоянно меняется, и по мере его изменений время в пути между пунктами обслуживания и точками спроса также колеблется. Поэтому, указание разного времени и значения даты для нескольких анализов может повлиять на то, как будет распределён спрос между пунктами обслуживания и какие пункты обслуживания будут выбраны в результате. Время дня всегда указывает на время начала. Тем не менее, движение может начаться от пунктов обслуживания или от точек спроса; это зависит от того, что вы выбираете для параметра Направление движения (Travel Direction). Параметр Часовой пояс для времени суток (Time Zone for Time of Day) определяет, как будут указываться время и дата, в UTC или в часовом поясе, в котором находятся пункт обслуживания или точка спроса. | Date |
Time_Zone_for_Time_of_Day (дополнительно) |
Указывает часовой пояс параметра Время суток (Time of Day). Значение по умолчанию – географически локальное.
Независимо от значения параметра Часовой пояс для времени суток (Time Zone for Time of Day), если ваши пункты обслуживания и точки спроса находятся в нескольких часовых поясах, то инструмент будет использовать следующие правила:
| String |
UTurn_Policy (дополнительно) | Правила разворота на соединениях. При разрешении U-образных разворотов неявно предполагается, что механизм расчета позволяет разворот на соединении и продолжение движения по той же улице в обратную сторону. Учитывая, что соединения представляют собой пересечения улиц и тупики, различные транспортные средства могут разворачиваться на некоторых соединениях, но не на всех – это зависит от того, является ли соединение перекрестком или тупиком. Для соответствия, параметр правил разворотов в неявном виде указывает количество ребер, или улиц, участвующих в соединении, что представляет валентность соединения. Ниже приведены допустимые значения для данного параметра; каждое из них сопровождается описанием значения в терминах валентности соединения.
Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение. | String |
Point_Barriers (дополнительно) | Определяет точечные барьеры, которые разделены на два типа: ограничения и дополнительной стоимости. Они временно ограничивают прохождение по сети или добавляют импеданс к точкам сети. Точечные барьеры задаются набором объектов, а значения атрибута, которые вы указываете для точечных объектов, определяют, являются ли они ограничениями или барьерами дополнительной стоимости. Ниже приведены поля в таблице атрибутов с описанием. ObjectID: Управляемое системой поле ID. Shape: Поле геометрии, показывающее географическое положение объекта сетевого анализа. Name: Имя барьера. BarrierType: Указывает, ограничивает ли барьер перемещение полностью или добавляет стоимость при прохождении через него. Существует две опции:
Используйте значение 0 для Ограничения и 2 для Дополнительной стоимости. Additional_Time: указывает, какое время поездки добавляется при прохождении барьера. Это поле действительно только для барьеров с дополнительной стоимостью, и только если используются единицы измерения времени. Значение этого поля должно быть больше или равно нулю, а его единицы измерения соответствуют заданным в параметре Единицы измерения (Measurement Units). Additional_Distance: указывает, какое расстояние добавляется при прохождении барьера. Это поле действительно только для барьеров с дополнительной стоимостью, и только если используются единицы измерения расстояния. Значение этого поля должно быть больше или равно нулю, а его единицы измерения соответствуют заданным в параметре Единицы измерения (Measurement Units). | Feature Set |
Line_Barriers (дополнительно) |
Определяет линейные барьеры, которые временно ограничивают прохождение через них. Линейные барьеры определяются набором объектов. Ниже приведены поля в таблице атрибутов с описанием. ObjectID: Управляемое системой поле ID. Shape: Поле геометрии, показывающее географическое положение объекта сетевого анализа. Name: Имя барьера. | Feature Set |
Polygon_Barriers (дополнительно) | Определяет полигональные барьеры, которые разделены на два типа: ограничения и полигональные барьеры масштабированной стоимости. Они временно ограничивают перемещение или масштабируют импеданс в покрываемых ими частях сети. Полигональные барьеры задаются набором объектов, а значения атрибута, которые вы указываете для полигональных объектов, определяют, являются ли они ограничениями или барьерами дополнительной стоимости. Ниже приведены поля в таблице атрибутов с описанием. ObjectID: Управляемое системой поле ID. Shape: Поле геометрии, показывающее географическое положение объекта сетевого анализа. Name: Имя барьера. BarrierType: Указывает, ограничивает ли барьер перемещение полностью или масштабирует стоимость прохождения через него. Существует две опции:
Используйте значение 0 для Ограничения и 1 для Масштабированной стоимости. ScaledTimeFactor: Это коэффициент, на который умножается время поездки по улицам, пересекающимся с барьером. Это поле действительно только для барьеров с масштабированной стоимостью, и только если используются единицы измерения времени. Значение поля должно быть больше нуля. ScaledDistanceFactor: Это коэффициент, на который умножается длина пути по улицам, пересеченным барьером. Этот атрибут действителен только для барьеров с масштабированной стоимостью, и только если используются единицы измерения расстояния. Значение атрибута должно быть больше нуля. | Feature Set |
Time_Attribute (дополнительно) | Определяет, какой сетевой атрибут стоимости используется, когда значением параметра Единицы измерения является единица времени. Инструмент выполняет необходимые преобразования единиц времени в том случае, если значение параметра Единицы измерения отличается от заданных здесь единиц атрибута стоимости. Другими словами, единицы времени параметра отсечки по умолчанию и сетевого атрибута стоимости не обязательно должны быть одинаковыми. Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не Пользовательское значение. | String |
Time_Attribute_Units (дополнительно) | Единицы атрибута времени. Вы можете явно задать единицы атрибута времени, однако рекомендуется оставить это поле пустым или ввести "#", чтобы механизм расчета определил их сам. Значение этого параметра перезаписывается, если для параметра Travel_Mode не установлено значение CUSTOM. | String |
Distance_Attribute (дополнительно) | Определяет, какой сетевой атрибут стоимости используется, когда значением параметра Единицы измерения является единица расстояния. Инструмент выполняет необходимые преобразования единиц расстояния в том случае, если значение параметра Единицы измерения отличается от заданных здесь единиц атрибута стоимости. Другими словами, единицы измерения и единицы расстояния сетевого атрибута стоимости не обязательно должны быть одинаковыми. Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не Пользовательское значение. | String |
Distance_Attribute_Units (дополнительно) | Единицы атрибута расстояния. Вы можете явно задать единицы атрибута расстояния, однако рекомендуется оставить это поле пустым или ввести "#", чтобы механизм расчета определил их сам. Значение этого параметра перезаписывается, если для параметра Travel_Mode не установлено значение CUSTOM. | String |
Use_Hierarchy_in_Analysis (дополнительно) | Укажите, должна ли использоваться иерархия при нахождении кратчайшего маршрута между точками.
Параметр не используется, если в наборе сетевых данных, используемом для выполнения анализа, не задан атрибут иерархии. В таких случаях используйте в качестве значения параметра "#". Вы можете использовать параметр Force_Hierarchy_Beyond_Distance для использования иерархии при нахождении маршрута, даже если для параметра Use_Hierarchy_in_Analysis установлено значение False. Этот параметр игнорируется, если для параметра Travel_Mode не установлено значение CUSTOM. При моделирования в режиме построения маршрута для пешехода рекомендуется выключить иерархию, поскольку она разработана для построения маршрутов автомобилей. | Boolean |
Restrictions [restriction,...] (дополнительно) | Определяет, какие сетевые атрибуты ограничения будут учитываться во время расчета. Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение. | String |
Attribute_Parameter_Values (дополнительно) | Определяет значения параметра для атрибутов сети, имеющих параметры. Набор записей имеет два столбца, которые используются вместе для уникальной идентификации параметров, а также другой столбец, который определяет значение параметра. Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение. Набор записей значений параметра атрибута имеет связанные атрибуты. Ниже приведены поля в таблице атрибутов с описанием. ObjectID: Управляемое системой поле ID. AttributeName: Имя сетевого атрибута, чей параметр атрибута задан строкой таблицы. ParameterName: Имя параметра атрибута, чье значение задано строкой таблицы. (Параметры типа объекта не могут быть обновлены с помощью данного инструмента.) ParameterValue: Значение, которое вы хотите задать для параметра атрибута. Если значение не указано, для параметра атрибута устанавливается значение NULL. | Record Set |
Accumulate_Attributes [attribute,...] (дополнительно) | Список атрибутов стоимости, который будет суммироваться во время анализа. Эти кумулятивные атрибуты служат исключительно для справки; механизм расчета использует для нахождения маршрута только атрибут стоимости, определенный параметром Атрибут времени (Time_Attribute в Python) или Атрибут расстояния (Distance_Attribute в Python) Для каждого кумулятивного атрибута стоимости к выходным маршрутам механизма расчета добавляется свойство Total_[attribute]. | String |
Maximum_Snap_Tolerance (дополнительно) | Максимальный допуск замыкания представляет собой самое дальнее расстояние, которое использует Network Analyst для поиска расположения или повторного расположения точки на сети. Выполняется поиск подходящих ребер или соединений, далее выполняется замыкание точки на ближайший объект. Если подходящее положение не было найдено в пределах максимального допуска замыкания, то объект обозначается, как неразмещенный. | Linear unit |
Feature_Locator_WHERE_Clause (дополнительно) | Выражение SQL, используемое для создания поднабора исходных пространственных объектов, определяющего элементы сети, на которых могут быть расположены пункты обслуживания и точки спроса. Синтаксис данного параметра состоит их двух частей: первая – имя источника класса пространственных объектов (после которого имеется пробел), вторая – выражение SQL. Чтобы записать выражение SQL для двух или более классов пространственных объектов, их необходимо разделить точкой с запятой. Чтобы пункты обслуживания не располагались на шоссе с ограниченным доступом, например, напишите выражение SQL, аналогичное следующему, с целью исключить такие источники объектов: "Streets" "FUNC_CLASS not in('1', '2')". Обратите внимание, что барьеры игнорируют Условие Where локатора объектов во время загрузки. | String |
Allocation_Line_Shape (дополнительно) | Укажите тип линейных объектов, получаемых на выходе инструмента. Параметр принимает одно из следующих значений:
Независимо от выбранного значения параметра Выделение линейной формы (Allocation Line Shape), наикратчайший маршрут определяется всегда на основе минимальной продолжительности или протяженности пути, а не на основе расстояния по прямой между точками спроса и пунктами обслуживания. То есть, этот параметр изменяет только формы выходных линий; он не меняет метод измерения. Когда параметр Форма линии распределения (Allocation_Line_Shape в Python) задан как Истинные линии без измерений, генерализацией формы маршрута можно дополнительно управлять, выбирая соответствующие значения параметра Допуск упрощения линии распределения (Allocation_Line_Simplification_Tolerance в Python). | String |
Allocation_Line_Simplification_Tolerance (дополнительно) | Определяет степень упрощения геометрии выделенных линий. Инструмент игнорирует этот параметр, если значение параметра Выделение линейной формы (Allocation_Line_Shape в Python) не соответствует выходным истинным линиям. При упрощении сохраняются важнейшие точки на маршруте, например, повороты и перекрестки, составляющую основную форму маршрута, а остальные точки удаляются. Указываемое вами расстояние упрощения является максимальным допустимым смещением упрощенной линии от исходной. Упрощение линии сокращает количество вершин в геометрии маршрута. Благодаря этому сокращаются время выполнения инструмента и время отрисовки линий. Значение этого параметра перезаписывается, если для Режима передвижения (Travel_Mode в Python) установлено не пользовательское значение. | Linear unit |
Maximum_Features_Affected_by_Point_Barriers (дополнительно) | Ограничивает количество объектов, на которые влияют точечные барьеры Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Например, вы можете присвоить низкое значение данному параметру для бесплатной версии созданного вами сервиса, и использовать более высокое значение для версии сервиса с оплачиваемой подпиской. Значение NULL соответствует отсутствию ограничений. | Long |
Maximum_Features_Affected_by_Line_Barriers (дополнительно) |
Ограничивает количество объектов, на которые влияют линейные барьеры Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Например, вы можете присвоить низкое значение данному параметру для бесплатной версии созданного вами сервиса, и использовать более высокое значение для версии сервиса с оплачиваемой подпиской. Значение NULL соответствует отсутствию ограничений. | Long |
Maximum_Features_Affected_by_Polygon_Barriers (дополнительно) |
Ограничивает количество объектов, на которые влияют полигональные барьеры. Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Например, вы можете присвоить низкое значение данному параметру для бесплатной версии созданного вами сервиса, и использовать более высокое значение для версии сервиса с оплачиваемой подпиской. Значение NULL соответствует отсутствию ограничений. | Long |
Maximum_Facilities (дополнительно) | Ограничивает число пунктов обслуживания, которых можно добавить к анализу ближайших пунктов обслуживания. Этот параметр связан с параметром Пункты обслуживания (Facilities). Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Например, вы можете присвоить низкое значение данному параметру для бесплатной версии созданного вами сервиса, и использовать более высокое значение для версии сервиса с оплачиваемой подпиской. Значение NULL соответствует отсутствию ограничений. | Long |
Maximum_Facilities_to_Find (дополнительно) | Ограничивает число пунктов обслуживания, которых можно добавить к анализу ближайших пунктов обслуживания. Этот параметр связан с параметром Число пунктов обслуживания для поиска (Number_of_Facilities_to_Find в Python). Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Например, вы можете присвоить низкое значение данному параметру для бесплатной версии созданного вами сервиса, и использовать более высокое значение для версии сервиса с оплачиваемой подпиской. Значение NULL соответствует отсутствию ограничений. | Long |
Maximum_Demand_Points (дополнительно) | Ограничивает число точек спроса, которых можно добавить к анализу ближайших пунктов обслуживания. Этот параметр связан с параметром Точки спроса (Demand_Points в Python). Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Например, вы можете присвоить низкое значение данному параметру для бесплатной версии созданного вами сервиса, и использовать более высокое значение для версии сервиса с оплачиваемой подпиской. Значение NULL соответствует отсутствию ограничений. | Long |
Force_Hierarchy_Beyond_Distance (дополнительно) | Определяет расстояние, при превышении которого механизм расчета использует иерархию при поиске кратчайших путей между пунктами обслуживания и точками спроса, даже если она не включена. Единицами измерения этого параметра являются единицы, заданные параметром Единицы атрибута расстояния (Distance_Attribute_Units в Python). Использование иерархии при поиске маршрутов между далеко расположенными пунктами обслуживания и точками спроса позволяет существенно сократить объем вычислений по сравнению с поиском без учета иерархии. Данный параметр помогает регулировать объем вычислений, необходимый для получения решения. Значение null означает, что иерархия никогда не будет учитываться, а значение параметра Использовать иерархию в анализе (Use_Hierarchy_in_Analysis in Python) будет всегда учитываться. Если входной набор сетевых данных не поддерживает иерархию, то указание значения для данного параметра приведет к ошибке. В этом случае необходимо использовать значение NULL. Этот параметр доступен только тогда, когда набор сетевых данных включает в себя атрибут иерархии. | Double |
Save_Output_Network_Analysis_Layer (дополнительно) |
В любом случае будут возвращены классы объектов, содержащие результаты. Администратор сервера может выбрать вывод слоя сетевого анализа, с тем чтобы настройку и результаты работы инструмента можно было отладить с использованием средств управления Network Analyst в среде ArcGIS for Desktop. Это намного упрощает процесс отладки. В ArcGIS for Desktop выходное местоположение слоя сетевого анализа по умолчанию – это временная папка. Вы можете определить местоположение временной папки по значению arcpy.env.scratchFolder параметра среды геообработки. Выходной слой сетевого анализа хранится в виде LYR-файла, имя которого начинается на _ags_gpna, а затем следует буквенно-числовое значение GUID. | Boolean |
Travel_Mode (дополнительно) | Выберите вид транспорта для анализа. Всегда можно выбрать CUSTOM. Чтобы появились другие режимы, они должны быть представлены в наборе сетевых данных в параметре Network_Dataset. (Функция arcpy.na.GetTravelModes содержит словарь объектов режима движения для класса сетевых объектов, а свойство name возвращает имя объекта режима передвижения.) Если режим определен в наборе сетевых данных и обеспечивает замещение значений параметров для моделирования маршруты передвижения легковых и грузовых автомобилей, пешеходов и других режимы передвижения. Выбрав режим здесь, вам не требуется указывать значения для следующих параметров, которые замещаются значениями, указанными в наборе сетевых данных:
| String |
Пример кода
SolveLocationAllocation, Пример 1
Выполните инструмент с использованием обязательных параметров.
facilities = arcpy.FeatureSet()
facilities.load("Stores")
demandPoints = arcpy.FeatureSet()
demandPoints.load("TractCentroids")
arcpy.na.SolveLocationAllocation(facilities, demandPoints, "Minutes",
"Streets_ND", "in_memory", "Lines",
"OutFacilities", "OutDemandPoints",
"RouteEdges", Number_of_Facilities_to_Find=2)
SolveLocationAllocation, Пример 2 (автономный скрипт Python)
Следующий автономный скрипт Python, показывает применение SolveLocationAllocation в автономном скрипте.
# Name: SolveLocationAllocation_Workflow.py
# Description: Find the two stores that are most convenient to your customers.
# The results show which stores were selected and which store is
# most convenient to each customer location.
# Requirements: Network Analyst Extension
#Import system modules
import arcpy
from arcpy import env
try:
#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")
#Set environment settings
env.workspace = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\SanFrancisco.gdb'
env.overwriteOutput = True
#Set local variables
inNetworkDataset = r'Transportation\Streets_ND'
inFacilities = r'Analysis\Stores'
inDemandPoints = r'Analysis\TractCentroids'
outGeodatabase = r'C:\arcgis\ArcTutor\Network Analyst\Tutorial\Output.gdb'
outLines = "Lines"
outFacilities = "Facilities"
outDemandPoints = "DemandPoints"
outRouteEdges = "RouteEdges"
measurement_units = "Minutes"
# Run SolveLocationAllocation. Find the best two stores, but don't consider
# stores beyond a 10 minute travel time for a given customer.
arcpy.na.SolveLocationAllocation(inFacilities, inDemandPoints,
measurement_units, inNetworkDataset,
outGeodatabase, outLines, outFacilities,
outDemandPoints, outRouteEdges,
Number_of_Facilities_to_Find=2,
Default_Measurement_Cutoff=10.0)
print "Script completed successfully"
except Exception as e:
# If an error occurred, print line number and error message
import traceback, sys
tb = sys.exc_info()[2]
print "An error occured on line %i" % tb.tb_lineno
print str(e)
Параметры среды
Информация о лицензировании
- ArcGIS for Desktop Basic: Требует Network Analyst
- ArcGIS for Desktop Standard: Требует Network Analyst
- ArcGIS for Desktop Advanced: Требует Network Analyst