Слой анализа маршрута

В этом разделе описываются классы объектов и свойства анализа слоя анализа маршрутов.

Более подробно о механизме расчета маршрутов

Класс объектов Stops

Изначально в классе объектов Остановки сохранены местоположения, через которые будет проходить выходной маршрут или маршруты. После запуска анализа класс объектов Остановки сохраняет местоположения, через которые проходил маршрут, местоположения, через которые маршрут не прошел (и причины, по которым это произошло), а также порядок прохождения остановок и другую информацию.

В следующей таблице описываются входные поля, входные/выходные поля и выходные поля класса объектов Остановки:

Остановки: входные поля

Входное полеОписание

ObjectID

Управляемое системой поле ID.

Shape

Поле геометрии, показывающее географическое положение объекта сетевого анализа.

Name

Имя остановки.

Имя, которое можно изменить, присваивается автоматически при добавлении остановки на карту.

RouteName

Имя маршрута, к которому принадлежит остановка. Остановки с одинаковым значением RouteName группируются вместе.

При помощи этого поля можно группировать остановки в разные маршруты, на выходе должен быть построен один маршрут для каждой группы остановок.

  • Если некоторые остановки имеют имена маршрутов, они группируются в маршрут с тем же именем. Если у одних остановок имеется значение RouteName, а у других – нет, то последние (которые без имен маршрутов) указываются в списке результатов как не назначенные и исключаются из решения.
  • Если ни у одной из остановок нет значения RouteName, все остановки относятся к одному и тому же маршруту, и создается один маршрут.

TimeWindowStart

В этом поле хранится самое раннее время, когда может быть посещена эта остановка.

Если для TimeWindowStart задано значение 10:00 утра, и маршрут прибывает на остановку в 9:50 утра, то имеется 10 минут времени ожидания, которые добавляются к общему времени.

По умолчанию, если сетевой набор данных содержит атрибут часового пояса, дата и время, указанные в этом поле, соотносятся с тем же часовым поясом, что и ребро, или улица, на котором располагается остановка. Если вам необходимо получить дату и время в формате UTC, измените свойство timeZoneUsageForTimeFields слоя анализа маршрута, используя класс RouteSolverProperties в Python.

Часовой пояс для полей временного окна можно задать с помощью параметра time_zone_for_time_fields инструмента геообработки Создать слой анализа маршрута.

Как задать время для временного окна

TimeWindowEnd

В этом поле хранится самое позднее время для посещения остановки.

Вместе поля TimeWindowStart и TimeWindowEnd образуют временное окно, в пределах которого маршрут может пройти через эту остановку.

Если положение имеет значение TimeWindowEnd, равное 11:00 утра, и самый ранний маршрут может достичь остановки в 11:25 утра, фиксируется превышение в 25 минут. Кроме того, остановка обозначается символом, указывающим на нарушение временного окна.

По умолчанию, если сетевой набор данных содержит атрибут часового пояса, дата и время, указанные в этом поле, соотносятся с тем же часовым поясом, что и ребро, или улица, на котором располагается остановка. Если вам необходимо получить дату и время в формате UTC, измените свойство timeZoneUsageForTimeFields слоя анализа маршрута, используя класс RouteSolverProperties в Python.

Часовой пояс для полей временного окна можно задать с помощью параметра time_zone_for_time_fields инструмента геообработки Создать слой анализа маршрута.

Как задать время для временного окна

Attr_[Стоимость]

(например, Attr_Minutes, где Minutes – это стоимость перемещения)

В этом поле указывается, сколько дополнительного расстояния поездки или времени можно провести на остановке.

Для задания единиц измерения поля необходимо соотнестись с единицами сетевого атрибута стоимости, указанными в имени поля. Например, если указан атрибут стоимости (затрат) DriveTime, измеряющийся в минутах, то и Attr_DriveTime будет в минутах.

Нулевое значение или значение NULL указывают, что остановка не требует времени обслуживания или дополнительного расстояния для поездки.

Можно добавить дополнительное время на остановке для того, чтобы представить, как долго может занять на остановке доставка, установка оборудования или выполнение других задач. Аналогично, добавление дополнительного расстояния может пригодиться для принятия в расчет подъездной или иной дороги, не представленной в вашем наборе сетевых данных.

Если у вас несколько сетевых атрибутов стоимости (затрат), вы увидите несколько полей Attr_ [Стоимость]. Впоследствии у вас может быть более одного поля Attr_[стоимость] на основе времени или расстояния. Предоставляемые вами значения полей приводятся, только если атрибут стоимости, на который ссылается имя поля, используется в анализе, например, для минимизации общего времени или расстояния.

CurbApproach

Поле CurbApproach указывает направление, в котором транспортное средство может подъезжать или отправляться от сетевого местоположения Кратчайший путь между двумя точками может изменяться в зависимости от направления движения, разрешенного при прибытии в определенное место или выезде из него. Можно выбрать четыре варианта (их кодированные значения показаны в скобках):

  • Either side of vehicle (0) – Направление отправления транспортного средства из точки или прибытия в нее может быть любым. Развороты допустимы. Эту настройку следует выбирать в том случае, если транспортное средство может сделать в этой точке разворот, или если оно может съехать на подъездную дорогу или парковку и развернуться.
  • Right side of vehicle (1) – По прибытии в точку или отправлении из нее бордюр должен находиться с правой стороны от транспортного средства. Разворот запрещен.
  • Left side of vehicle (2) – По прибытии в точку или отправлении из нее бордюр должен находиться с левой стороны от транспортного средства. Разворот запрещен.
  • No U-Turn (3) – По прибытии транспортного средства в точку обочина может располагаться с любой стороны транспортного средства; но при отправлении транспортное средство не должно выполнять разворот.
Более подробно о разворотах и направлении подъезда

LocationType

Это поле описывает тип остановки.

  • Остановка (0) – Представляет место, через которое пройдет маршрут. Используется по умолчанию.
  • Точка пути (1) – Представляет место, через которое маршрут пройдет без остановки. Точки пути могут использоваться для прокладки определенного маршрута (через указанную точку) без назначения остановки в этом месте. Точки пути не отображаются в направлениях.
  • Перерыв (2) – место, где водитель останавливается на отдых.

Примечание:
Временное окно только указывает, когда транспортное средство может прибыть на остановку, а не когда Attr_[Стоимость] должен быть также завершен. Для расчета времени обслуживания и отправления до окончания временного окна, необходимо вычесть Attr_[Стоимость] из поля TimeWindowEnd.

Более подробно о временных окнах

Остановки: входные/выходные поля

Входное/Выходное полеОписание

Sequence

В качестве входного поля данное число представляет собой порядок, в котором будут пройдены остановки. Вы можете использовать параметр Последовательность на вкладке Слой маршрута, где можно выбрать, будет ли маршрут следовать согласно заданной в этом поле последовательности, или же вместо этого разработать оптимальную последовательность с минимальным возвратами.

В пределах маршрута (у остановок с одинаковым значением поля RouteName) порядковый номер должен быть больше 0, но не может превышать общее количество остановок, предусмотренных на данном маршруте. Кроме того, порядковый номер не должен дублироваться у остановок с одинаковым значением поля RouteName.

Status

Указывает статус точки относительно ее местоположения в сети и результат анализа. Возможны следующие значения:

  • 0 (OK)– Точка успешно найдена в сети.
  • 1 (Не найдено)—Точка не была успешно найдена в сети и, следовательно, не была включена в анализ.
  • 2 (Элемент сети не найден) – Невозможно найти элемент сети, определяемый полями сетевого расположения данной точки. Это может произойти, если элемент сети, где должна быть расположена эта точка, был удален, а перерасчет сетевого положения не выполнен.
  • 3 (Непроходимый элемент)—Сетевой элемент, на котором расположена точка, не является проходимым. Это может произойти, если элемент имеет ограничения, заданные с помощью атрибута ограничения.
  • 4 (Некорректные значения поля) – значения поля выходят за диапазон домена кодированных значений или интервального домена. Например, существует отрицательное значение, когда необходимы только положительные значения.
  • 5 (Не достигнуто)—Точка не может быть достигнута механизмом расчета. Точка может находиться на отдельном участке сети, который не соединяется с другими входными данными, либо перемещению в эту точку или из нее препятствуют барьеры или ограничения.
  • 6 (Нарушение временного окна)—Эта точка не могла быть достигнута в пределах установленных временных окон. Этот статус применяется только к типам сетевого анализа, которые поддерживают временные окна.
  • 7(не размещен на ближайшем) – ближайшее сетевое местоположение к точке не может быть пройдено из-за ограничения или барьера, поэтому вместо этого точка была расположена на ближайшем сетевом объекте.

Поля сетевого местоположения

  • SourceID
  • SourceOID
  • PosAlong
  • SideOfEdge
  • SnapX
  • SnapY
  • SnapZ
  • DistanceToNetworkInMeters

Вместе эти четыре свойства описывают точку в сети, где расположен объект.

Дополнительные сведения о способе размещения входных данных в сети

Остановки: выходные поля

Выходное полеОписание

ArriveCurbApproach

Указывает на сторону транспортного средства, с которой должен находится бордюр при прибытии на остановку. Если для остановки задано значение CurbApproach Справа от транспортного средства, то после расчета ArriveCurbApproach будет иметь значение Справа от транспортного средства. Однако, если задано значение CurbApproach С любой стороны транспортного средства (ТС) или Без разворота, то ArriveCurbApproach может быть как по левую, так и по правую сторону ТС в зависимости от того, которое из этих значений обеспечит в итоге кратчайший путь.

DepartCurbApproach

Указывает на сторону транспортного средства, с которой должен находится бордюр при отправлении с остановки. Если параметр CurbApproach имеет значение Справа от транспортного средства, то после расчета DepartCurbApproach будет Справа от транспортного средства. Однако, если задано значение CurbApproach С любой стороны транспортного средства (ТС) или Без разворота, то DepartCurbApproach может быть как по левую, так и по правую сторону ТС в зависимости от того, которое из этих значений обеспечит в итоге кратчайший путь.

Cumul_[Стоимость]

(например, Cumul_Minutes, где Minutes является стоимостью для сети)

Это поле общего времени, расстояния или другой стоимости перемещения для достижения остановки. Оно включает в себя стоимость перемещения, относящуюся к движению к остановке, стоимость остановки и стоимости всех предыдущих остановок.

Если слой анализа маршрута определяет, что для посещения двух остановок требуется 10 минут, а вторая остановка имеет значение Attr_Minutes, равное 5, то значение Cumul_Minutes будет равно 15 минутам.

Wait_[Стоимость]

(например, Wait_Minutes, где Minutes – это стоимость поездки)

В этом поле хранится значение времени, которое было потрачено в ожидании открытия временного окна (TimeWindowStart), при раннем прибытии маршрута на остановку.

CumulWait_[Стоимость]

(например, CumulWait_Minutes, где Minutes – это стоимость поездки)

В этом поле хранится суммарное время, потраченное в ожидании открытия временных окон (TimeWindowStart). Это значение времени простоя. Оно включает в себя время ожидания на текущей остановке и всех предыдущих остановках, посещенных на маршруте.

Violation_[Стоимость]

Это поле показывает, насколько поздно прибыл маршрут после закрытия временного окна (TimeWindowEnd). А именно, в нем хранится величина времени между окончанием временного окна и прибытием маршрута на остановку.

CumulViolation_[Стоимость]

В этом поле хранится совокупное время нарушений (Violation_[Стоимость]) от текущей остановки и всех предыдущих остановок, через которые проходил маршрут.

ArriveTime

Значение даты и времени, указывающее время прибытия на остановку.

При использовании данных трафика, охватывающих несколько часовых поясов, часовой пояс для данного значения времени дня берется из элемента сети, на котором расположен заказ.

DepartTime

Значение даты и времени, указывающее время отправления с остановки.

При использовании данных трафика, охватывающих несколько часовых поясов, часовой пояс для данного значения времени дня берется из элемента сети, на котором расположен заказ.

ArriveTimeUTC

Значение даты и времени, указывающее время прибытия в формате Всемирного координированного времени (UTC).

DepartTimeUTC

Значение даты и времени, указывающее время отправления в формате Всемирного координированного времени (UTC).

Класс пространственных объектов Routes

Класс объектов маршрутов хранит итоговый маршрут или маршруты, полученные при анализе. Это только выходной класс. Слой анализа маршрута перезаписывает или удаляет при запуске анализа любые объекты маршрутов.

В следующей таблице перечислены выходные поля класса объектов Routes:

Маршруты: выходные поля

Выходное полеОписание

ObjectID

Управляемое системой поле ID.

Name

Имя маршрута присваивается автоматически при расчете слоя маршрута либо посредством считывания значения из поля RouteName класса объектов Остановки или, если это значение равно нулю, либо создается путем объединения имен первой и последней остановок маршрута, например, Остановка 1 – Остановка 8.

Shape

Поле геометрии, указывающее географическое положение объекта сетевого анализа.

FirstStopID

Значение ObjectID первой остановки маршрута.

LastStopID

Значение ObjectID последней остановки маршрута.

StopCount

Количество остановок, посещаемых на маршруте.

Total_[Стоимость]

(например, Total_Minutes, где Minutes для сети – это стоимость поездки)

Общее расстояние, время или другая стоимость перемещения от начала первой остановки до окончания последней. В это значение входят общая стоимость поездки и Attr_[Стоимость] посещенных остановок.

TotalWait_[Стоимость]

(например, TotalWait_Minutes, где Minutes – это сетевая стоимость поездки)

В этом поле хранится общее время ожидания на маршруте, то есть время, проведенное на остановках в ожидании открытия временных окон.

TotalViolation_[Стоимость]

(например, TotalViolation_Minutes, где Minutes – это сетевая стоимость поездки)

В этом поле хранится общее время нарушений маршрута на остановках. Если маршрут прибывает на остановку уже после того, как временное окно будет "закрыто", добавляется время превышения (нарушения); оно представляет собой разницу между ArriveTime и TimeWindowEnd.

StartTime

Время начала маршрута.

EndTime

Время завершения маршрута.

StartTimeUTC

Время начала маршрута дается в формате Всемирного координированного времени (UTC).

EndTimeUTC

Время окончания маршрута в формате Всемирного координированного времени (UTC).

Свойства слоя анализа маршрута

Следующие подразделы перечисляют параметры, которые вы можете задать для слоя анализа. Они задаются на вкладке Слой маршрута, которая доступна только если на панели Содержание выбран ваш слой маршрута или один из его подслоев.

Вкладка Слой маршрута

Запустить

Кнопка Запустить Запустить находится в группе Анализ. Щелкните на ней, чтобы рассчитать анализ маршрута, если загрузили входные объекты и задали свойства анализа.

Импорт остановок

Импорт остановок Импорт остановок находится в группе Входные данные. Щелкните на ней, чтобы загрузить в класс объектов остановок объекты из другого источника данных, например, слоя точечных объектов.

Импорт барьеров

Щелкните Импорт точечных барьеров Импорт точечных барьеров, Импорт линейных барьеров Импорт линейных барьеров или Импорт полигональных барьеров Импорт барьеров, чтобы загрузить в классы объектов барьеров (точечных, линейных или полигональных) объекты из другого источника данных, например, другого слоя объектов.

Создать объекты

Щелкните кнопку Создать объекты Создать объекты, чтобы открыть панель Создать объекты. Выберите один из доступных шаблонов, чтобы создать объекты на текущей карте.

Мода

Ниспадающий список Режим позволяет выбрать режим перемещения, являющийся группой настроек, моделирующих перемещение пешком, на легковой машине, грузовике или иным способом. Варианты, доступные в ниспадающем списке, зависят от режимов перемещения, настроенных в наборе сетевых данных, на который ссылается слой сетевого анализа.

Последовательность

Механизм расчета маршрута всегда находит самый короткий путь между двумя остановками. Но вы можете сократить общий маршрут, рассчитав наилучшую последовательность остановок с помощью Network Analyst, при которой возвратные перемещения (холостые пробеги) будут сведены к минимуму. Оптимизация порядка остановок также известна как TSP.

Последовательность предоставляет следующие опции, чтобы сохранить все или некоторые из последовательностей остановок, либо не сохранять их вовсе:

  • Использовать текущий Использовать текущий – сохраняет относительный порядок остановок в поле Sequence остановок.

    Любые остановки с нулевыми значениями поля Sequence наносятся после остановок со значениями, отличными от нуля.

  • Найти наилучший (Find Best) Найти наилучший – не сохраняет последовательность остановок, то есть маршрут может начаться с любой остановки. Порядок всех остановок изменяется для поиска кратчайшего возможного маршрута.

  • Preserve First & Last Stop Preserve First & Last Stop – Маршрут начинается и заканчивается на первой и последней остановках соответственно. Порядок промежуточных остановок изменяется для поиска кратчайшего возможного маршрута.

    Если остановки имеют как нулевые, так и ненулевые значения поля Sequence, то маршрут начинается на остановке с наименьшим ненулевым значением и заканчивается на последней остановке в классе пространственных объектов, которая имеет нулевое значение.

  • Сохранить первую остановку Сохранить первую остановку – Маршрут начинается на первой остановке. Порядок последующих остановок изменяется для поиска кратчайшего возможного маршрута.

    Если остановки имеют как нулевые, так и ненулевые значения поля Sequence, то маршрут начинается на остановке с наименьшим ненулевым значением и продолжается до других остановок в оптимально подобранном порядке, вне зависимости от того, имеют ли они нулевые или ненулевые значения.

  • Сохранить последнюю остановку Сохранить последнюю остановку – Маршрут заканчивается на последней остановке. Порядок предыдущих остановок изменяется для поиска кратчайшего возможного маршрута.

    Если остановки имеют как нулевые, так и ненулевые значения поля Sequence, то маршрут заканчивается на последней остановке в классе пространственных объектов, которая имеет нулевое значение. Порядок всех предыдущих остановок оптимизируется вне зависимости от того, какие значения (нулевые или ненулевые) они имеют.

Дата и время

Ниспадающий список Тип даты-времени прибытия-отправления в группе Дата и время доступен, если единицы стоимости основаны на времени. Из ниспадающего списка выберите, будут ли заданы определенные значения времени и даты для обозначения времени отправления маршрута или маршрутов с первой остановки. Определенные время и дата задаются, главным образом, для расчета анализа с учетом динамической дорожной обстановки или расписаний общественного транспорта; для учета в анализе дорожных условий необходимо, чтобы данные о дорожных условиях или общественном транспорте содержались в наборе сетевых данных или в сервисе маршрутов.

В ниспадающем списке представлены следующие опции:

  • Нет использования времени – результаты основаны на статичном времени движения, вне зависимости от того, включает ли источник данных в себя данные трафика. Время перемещения по ребру сети не меняется в течение дня. Текстовые поля Время дня и Дата остаются недоступными.

  • Время & Дата – время указывается как время дня и календарная дата. Текстовые поля Время дня и Дата доступны для предоставления этой информации.

  • День недели – указываются время дня и день недели. Текстовые поля Время дня и Дата доступны для предоставления этой информации. Задайте день недели, введя одно из следующих значений в текстовое поле Дата:

    • Понедельник
    • Вторник
    • Среда
    • Четверг
    • Пятница
    • Суббота
    • Воскресенье

  • Сегодня – укажите время, при этом сегодняшний день принимается за текущую дату. Текстовое окно Время дня доступно для ввода времени дня, а в окне Дата указано Сегодня, и оно неактивно, то есть его значение не может быть изменено.

  • Сейчас – при запуске анализа в качестве времени и даты задаются текущие время и дата. Это удобно, если набор сетевых данных настроен на данные реального трафика, и после расчета анализа маршруты передаются водителям для немедленного применения. Текстовые поля Время дня и Дата недоступны, то есть их значения нельзя изменить.

Из ниспадающего списка Базовый часовой пояс вы можете выбрать часовой пояс, который будет использоваться при анализе. Можно выбрать следующие опции:

  • Местное время в местоположениях
  • UTC (Всемирное координированное время)

Линейный тип формы выходной геометрии

Этот элемент позволит вам выбрать отображение на карте выходных данных. Анализ маршрута всегда выбирает пути с наименьшей стоимостью вдоль сети, используя заданные вами настройки. Но помимо отображения на карте этих путей по сети вы можете также показать на карте маршруты прямыми линиями, соединяющими остановки, либо не показывать никаких линий вовсе.

  • Без линий – не будут созданы никакие линейные формы.
  • Прямые линии – создается выходная упрощенная геометрия в виде прямых линий.
  • Вдоль сети – создаются истинные пути вдоль сети на карте.

Стоимостные атрибуты накопления

Ниспадающее меню Стоимостные атрибуты накопления в группе Настройки передвижения используется для настройки атрибутов накопления стоимости. Ниспадающее меню не поддерживается, если источник сетевых данных является сервисом, в выходной тип геометрии не включены линии или нет стоимостных атрибутов. Атрибуты группируются по единицам домена, показанным в заголовке группы (например, Время или Расстояние). Установленная отметка указывает на то, что слой анализа будет накапливать выбранный атрибут во время расчета.

Ниспадающее меню Стоимостные атрибуты накопления

Если выбрано несколько слоев анализа с одинаковым типом слоя, чек бокс показывает смешанное состояние, если не все слои имеют одинаковое выбранное состояние для одного атрибута. В этом изображении для нескольких слоёв выбран атрибут WeekendFallbackTravelTime, поэтому стоит отметка.

Чек бокс указывающий на неодинаковое состояние

Если все выбранные слои имеют одинаковое состояние для атрибута, чек бокс показывает это состояние.

Для атрибутов установлены отметки.

Путевой лист

  • Выходные данные при выполнении расчета – включите, чтобы создать путевой лист при выполнении расчета для текущего слоя сетевого анализа.
  • Показать путевой лист Путевой лист – когда выбрана опция Выходные данные при выполнении расчета выбор опции Показать путевой лист на панели Путевой лист появятся пошаговые направления поворот за поворотом для каждого маршрута в расчете.

Опубликовать как слои маршрутов

Кнопка Слои маршрутов Опубликовать как слой маршрута в группе Опубликовать как позволяет публиковать результаты анализа как слои маршрутов. Эта кнопка открывает инструмент геообработки Опубликовать как слои маршрутов. После успешного выполнения результаты анализа публикуются как элементы слоев маршрутов на портале.