ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS for Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

Выходные данные инструмента SolveVehicleRoutingProblem

  • out_stops
  • out_routes
  • out_directions
  • out_unassigned_stops
  • solve_succeeded

После успешного выполнения, сервис возвращает решение задачи выбора маршрута транспорта. Решение состоит из следующих выходных параметров:

out_stops

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

Ниже приведено описание атрибутов, возвращаемых для каждой остановки:

Имя поляОписание

ObjectID

Уникальный идентификатор остановки. Этот идентификатор автоматически генерируется сервисом.

Name

Имя остановки. Значение этого атрибута совпадает с атрибутом Name depots, orders, или с параметрами breaks из запроса. Вы можете использовать атрибут StopType, чтобы определить, что означает атрибут Name: станцию, заказ или перерыв.

PickupQuantities

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

Единицы измерения значения этого атрибута не сохраняются. Вы должны интерпретировать единицы измерения в соответствии со способом, которым вы задавали атрибут Quantities параметра routes в запросе, а также атрибуты PickupQuantities и DeliveryQuantities параметров orders запроса.

DeliveryQuantities

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

Единицы измерения значения этого атрибута не сохраняются. Вы должны интерпретировать единицы измерения в соответствии со способом, которым вы задавали атрибут Quantities параметра routes в запросе, а также атрибуты PickupQuantities и DeliveryQuantities параметров orders запроса.

StopType

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

  • 0: остановка является точкой заказа.
  • 1: остановка является станцией.
  • 2: остановка является перерывом.

RouteName

Имя маршрута, на котором выполняется остановка.

Sequence

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

FromPreviousTravelTime

Истекшее время в пути от предыдущей остановки маршрута до текущей остановки. Значения указаны в единицах, заданных параметром time_units.

FromPreviousDistance

Расстояние по маршруту от предыдущей остановки до текущей остановки маршрута. Значения указаны в единицах, заданных параметром distance_units.

ArriveCurbApproach

Указывает на сторону транспортного средства, с которой должен находиться бордюр при прибытии на остановку. Значение 1 соответствует положению справа от транспортного средства, а значение 2 – слева от транспортного средства.

DepartCurbApproach

Указывает на сторону транспортного средства, с которой должен находиться бордюр при отправлении с остановки. Значение 1 соответствует положению справа от транспортного средства, а значение 2 – слева от транспортного средства.

ArriveTime

Время дня, в которое маршрут прибывает на остановку. Значение времени дня этого атрибута относится к часовому поясу, в котором находится остановка.

DepartTime

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

ArriveTimeUTC

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

DepartTimeUTC

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

WaitTime

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

ViolationTime

Величина времени между окончанием временного окна остановки и прибытием транспортного средства по маршруту. Значения указаны в единицах, заданных параметром time_units.

out_routes

Используйте этот параметр для доступа к водителям, транспортным средствам и маршрутам транспортных средств для задачи выбора маршрута. Параметры populate_route_lines и route_line_simplification_tolerance оказывают значительное влияние на форму выходных маршрутов. Геометрия маршрута возвращается в пространственной привязке, заданной параметром env:outSR.

Ниже приведено описание полей, возвращаемых для каждого маршрута:

Имя поляОписание

ObjectID

Уникальный идентификатор маршрута. Этот идентификатор автоматически генерируется сервисом.

Name

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

PickupQuantities

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

Единицы измерения значения этого атрибута не сохраняются. Вы должны интерпретировать единицы измерения в соответствии со способом, которым вы задавали атрибут Количества параметра routes в запросе, а также атрибуты PickupQuantities и DeliveryQuantities параметров orders запроса.

ViolationConstraints

Содержит сводку нарушенных ограничений при выборе порядка следования для любого маршрута. Каждому нарушению сервис присваивает уникальное целочисленное значение. Значение атрибута ViolatedConstraints является целым числом, представляющим собой сумму всех ограничений, которые были нарушены маршрутом. Чтобы определить конкретные нарушенные ограничения, следует обработать атрибутивное значение как битовую маску и извлечь значения отдельных битов. Например, комбинация Превышение емкостей (2) и Жесткая зона маршрута (128) кодируется как 130 (2 +128).

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

  • MaxOrderCount exceeded (1): предварительно назначенные заказы нельзя назначить маршруту, поскольку это привело бы к превышению максимального числа заказов, которое можно назначить маршруту, как задается атрибутом MaxOrderCount для параметра routes.
  • Capacities exceeded (2): предварительно назначенные заказы нельзя назначить маршруту, поскольку это привело бы к превышению общей емкости маршрута, заданной атрибутом Capacities для параметра routes.
  • MaxTotalTime exceeded (4): время в пути от начальной станции к конечной плюс время обслуживания и ожидания на обеих станциях и всех перерывов превышает общее время маршрута, указанное атрибутом MaxTotalTime для параметра routes.
  • MaxTotalTravelTime exceeded (8): время в пути от начальной станции к конечной превышает общее время в пути для маршрута, указанное атрибутом MaxTotalTravelTime параметра routes.
  • MaxTotalDistance exceeded (16): расстояние пути от начальной станции к конечной превышает общее расстояние пути для маршрута, указанное атрибутом MaxTotalDistance параметра routes.
  • Hard time window (32): имеется нарушение жесткого временного окна на начальной станции, на конечной станции или в перерыве, связанном с маршрутом.
  • Unmatched speciality (64): специальные требования заказа не соблюдаются в целевом маршруте.
  • Hard route zone (128): заказ, предварительно назначенный маршруту, не попадает в пределы жесткой зоны маршрута.
  • Order pair MaxTransitTime exceeded (256): имеется предварительно назначенная маршруту пара заказов, и при назначении этой пары заказов было бы превышено максимальное время нахождения в пути, указанное атрибутом MaxTransitTime параметра order_pairs.
  • Order pair violation (512): заказ принадлежит к паре заказов и не может быть назначен предварительно назначенному маршруту.
  • Unreachable (1024): предварительно назначенный заказ расположен по адресу, который недостижим данным маршрутом.
  • Cannot insert required break (2048): перерыв на маршруте имеет пустое значение последовательности null при наличии предварительно назначенных заказов, и его нельзя вставить нигде, не вызвав других нарушений.
  • MaxTravelTimeBetweenBreaks exceeded (8192): механизму расчета не удалось вставить перерыв в пределах времени, указанного атрибутом MaxTravelTimeBetweenBreaks для параметра breaks. Причина зачастую в предварительном назначении последовательности для перерыва таким образом, что он становится недостижимым в пределах максимального времени в пути.
  • Break MaxCumulWorkTime exceeded (16384): механизму расчета не удалось вставить перерыв в пределах времени, указанного атрибутом MaxCumulWorkTime для параметра breaks. Причина зачастую в предварительном назначении последовательности перерыву таким образом, что он становится недостижимым в пределах максимального времени работы.

OrderCount

Число заказов, назначенных маршруту.

TotalCost

Общие затраты на эксплуатацию маршрута, которые являются суммой значений следующих атрибутов: FixedCost, RegularTimeCost, OvertimeCost, DistanceCost.

RegularTimeCost

Стоимость обычного рабочего времени, за исключением неоплачиваемых перерывов.

OvertimeCost

Стоимость сверхурочной работы, за исключением неоплачиваемых перерывов.

DistanceCost

Компонент стоимости расстояния, получаемый умножением значений атрибутов TotalDistance и CostPerUnitDistance.

TotalTime

Общая длительность маршрута. Она включает в себя значения времени в пути, а также времени обслуживания и ожидания на заказах, на станциях и в перерывах. Значения указаны в единицах, заданных параметром time_units. Значение TotalTime является суммой значений следующих атрибутов:

  • StartDepotServiceTime
  • EndDepotServiceTime
  • TotalOrderServiceTime
  • TotalBreakServiceTime
  • TotalRenewalServiceTime
  • TotalWaitTime
  • TotalTravelTime

TotalOrderServiceTime

Общее время обслуживания, потраченное на всех заказах по маршруту. Значения указаны в единицах, заданных параметром time_units.

TotalBreakServiceTime

Общее время обслуживания, потраченное на всех перерывах по маршруту. Значения указаны в единицах, заданных параметром time_units.

TotalTravelTime

Общее время в пути для маршрута. Значения указаны в единицах, заданных параметром time_units.

TotalDistance

Общее расстояние пути для маршрута. Значения указаны в единицах, заданных параметром distance_units.

StartTime

Время начала маршрута. Маршрут может начинаться до начала временного окна его начальной станции; в этом случае на начальной станции будет затрачено время ожидания. Значение времени дня этого атрибута относится к часовому поясу, в котором находится начальная станция.

EndTime

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

TotalWaitTime

Общее время ожидания на всех точках заказов, станциях и перерывах по маршруту. Значения указаны в единицах, заданных параметром time_units.

TotalViolationTIme

Общее время нарушения на всех заказах и перерывах по маршруту. Значения указаны в единицах, заданных параметром time_units.

RenewalCount

Для маршрута с обновлениями это аналогично количеству посещений станций, для обновления транспортного средства, например, его разгрузки или разгрузки.

TotalRenewalServiceTime

Для маршрута с обновлениями общее время обслуживания, потраченное при всех посещениях для обновления загрузки по маршруту. Значения указаны в единицах, заданных параметром time_units.

Shape_Length

Длина маршрута в единицах измерения пространственной привязки, заданной для маршрутов. Если параметр env:outSR не задан, длина по умолчанию сообщается в десятичных градусах.

StartTimeUTC

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

EndTimeUTC

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

out_directions

Используйте этот параметр для доступа к пошаговым инструкциям, которые помогают водителям следовать назначенным маршрутам. Параметр включает направления движения, а также геометрию объектов путевого листа, соответствующую тексту. Форма объектов путевого листа определяется геометрией улиц, лежащих в основе маршрута. Геометрия объекта возвращается в пространственной привязке, заданной параметром env:outSR. Объекты пусты, если параметр populate_directions имеет значение false. Параметры directions_language и directions_style_name оказывают значительное влияние на направления движения.

Ниже приведено описание полей, возвращаемых для объектов-направлений:

Имя поляОписание

ObjectID

Уникальный идентификатор объекта-направления. Этот идентификатор автоматически генерируется сервисом.

Name

Название маршрута, к которому применяется действие перемещения. Это значение совпадает с атрибутом Name из параметра out_routes.

ArriveTime

Время дня для начала заданного действия перемещения. Значение считается в миллисекундах, начиная с 1 января 1970 г.

Type

Обозначает тип маневра, представленного объектом-направлением или типом текста направления. Чтобы определить, обозначает ли Type тип маневра или тип строки направления, необходимо проверить значение поля SubItemType.

Type может использоваться, например, для присвоения другого значка тексту направления, в зависимости от типа маневра, или для применения специального стиля форматирования, основанного на типе строки направления, при отображении направлений движения в вашем приложениях

Значение Type является целым числом из таблиц Maneuver Types или Directions String Types.

Типы маневров

ЗначениеОписание

0

Неизвестен

1

Прибытие на остановку

2

Двигайтесь прямо

3

Возьмите левее

4

Возьмите правее

5

Поверните налево

6

Поверните направо

7

Резко поверните налево

8

Резко поверните направо

9

Сделать разворот

10

Переправьтесь на пароме

11

Проезжайте по кругу

12

Слияние шоссе

13

Съезд с шоссе

14

Следуйте по другому шоссе

15

На развилке держитесь центра

16

на развилке возьмите левее

17

На развилке возьмите правее

18

Станция отправления

19

Элемент Планирование движения

20

Конец паромной переправы

21

Съезд направо

22

Съезд налево

23

Поверните налево и немедленно поверните направо

24

Поверните направо и немедленно поверните налево

25

Поверните направо и немедленно поверните направо

26

Поверните налево и немедленно поверните налево

Типы строк направлений

ЗначениеОписание

0

Тип строки направления General

1

Тип строки направления Depart

2

Тип строки направления Arrive

3

Тип строки направления Length

4

Тип строки направления Time

5

Тип строки направления Time summary

6

Тип строки направления Time Window

7

Тип строки направления Violation Time

8

Тип строки направления Wait Time

9

Тип строки направления Service Time

10

Тип строки направления Estimated Arrival

11

Тип строки направления Cumulative Length

12

Тип строки направления Street name

13

Тип строки направления Alternate street name

14

Тип строки направления Sign branch information

15

Тип строки направления Sign toward information

16

Тип строки направления Cross street name

17

Тип строки направления Sign exit number

SubItemType

Указывает, содержит ли поле Type целое число из таблицы Directions String Types или Maneuver Types.

  • Если для параметра SubItemType указано значение 1, то значение Type относится к таблице Maneuver Types.
  • Если для параметра SubItemType указано значение 2, то значение Type относится к таблице Directions String Types.

Text

Текстовое описание направления движения.

ElaspsedTime

Время, прошедшее с начала текущего направления движения до начала следующего или до тех пор, пока маршрут не закончится на последнем направлении. Значения указаны в единицах, заданных параметром time_units.

DriveDistance

Расстояние, с которого началось текущее направление движения до начала следующего или до места, где маршрут закончится на последнем направлении движения. Значения указаны в единицах, заданных параметром distance_units.

Данное значение равно нулю для направлений движения, которые происходят том же положении, где начинается другое. Например, DriveDistance равно 0 для текста направлений в начале маршрута.

Shape_Length

Длина объекта-направления в единицах измерения пространственной привязки, заданной для маршрутов. Если параметр env:outSR не задан, длина по умолчанию сообщается в десятичных градусах.

out_unassigned_stops

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

Ниже приведено описание атрибутов, возвращаемых для каждой нераспределенной остановки:

Имя поляОписание

ObjectID

Уникальный идентификатор остановки. Этот идентификатор автоматически генерируется сервисом.

StopType

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

  • 0: остановка является точкой заказа.
  • 1: остановка является станцией.
  • 2: остановка является перерывом.

Name

Имя остановки. Значение этого атрибута совпадает с атрибутом Имя depots, orders, или с параметрами breaks из запроса. Вы можете использовать атрибут StopType, чтобы определить, что означает атрибут Name: станцию, заказ или перерыв.

ViolationConstraints

Содержит сводку нарушенных ограничений при выборе порядка следования для любого маршрута. Каждому нарушению сервис присваивает уникальное целочисленное значение. Значение атрибута ViolatedConstraints является целым числом, представляющим собой сумму всех ограничений, которые были нарушены маршрутом. Чтобы определить конкретные нарушенные ограничения, следует обработать атрибутивное значение как битовую маску и извлечь значения отдельных битов. Например, комбинация Превышение емкостей (2) и Жесткая зона маршрута (128) кодируется как 130 (2 +128).

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

  • MaxOrderCount exceeded (1): предварительно назначенные заказы нельзя назначить маршруту, поскольку это привело бы к превышению максимального числа заказов, которое можно назначить маршруту, как задается атрибутом MaxOrderCount для параметра routes.
  • Capacities exceeded (2): предварительно назначенные заказы нельзя назначить маршруту, поскольку это привело бы к превышению общей емкости маршрута, заданной атрибутом Capacities для параметра routes.
  • MaxTotalTime exceeded (4): время в пути от начальной станции к конечной плюс время обслуживания и ожидания на обеих станциях и всех перерывов превышает общее время маршрута, указанное атрибутом MaxTotalTime для параметра routes.
  • MaxTotalTravelTime exceeded (8): время в пути от начальной станции к конечной превышает общее время в пути для маршрута, указанное атрибутом MaxTotalTravelTime параметра routes.
  • MaxTotalDistance exceeded (16): расстояние пути от начальной станции к конечной превышает общее расстояние пути для маршрута, указанное атрибутом MaxTotalDistance параметра routes.
  • Hard time window (32): имеется нарушение жесткого временного окна на начальной станции, на конечной станции или в перерыве, связанном с маршрутом.
  • Unmatched speciality (64): специальные требования заказа не соблюдаются в целевом маршруте.
  • Hard route zone (128): заказ, предварительно назначенный маршруту, не попадает в пределы жесткой зоны маршрута.
  • Order pair MaxTransitTime exceeded (256): имеется предварительно назначенная маршруту пара заказов, и при назначении этой пары заказов было бы превышено максимальное время нахождения в пути, указанное атрибутом MaxTransitTime параметра order_pairs.
  • Order pair violation (512): заказ принадлежит к паре заказов и не может быть назначен предварительно назначенному маршруту.
  • Unreachable (1024): предварительно назначенный заказ расположен по адресу, который недостижим данным маршрутом.
  • Cannot insert required break (2048): перерыв на маршруте имеет пустое значение последовательности null при наличии предварительно назначенных заказов, и его нельзя вставить нигде, не вызвав других нарушений.
  • MaxTravelTimeBetweenBreaks exceeded (8192): механизму расчета не удалось вставить перерыв в пределах времени, указанного атрибутом MaxTravelTimeBetweenBreaks для параметра breaks. Причина зачастую в предварительном назначении последовательности для перерыва таким образом, что он становится недостижимым в пределах максимального времени в пути.
  • Break MaxCumulWorkTime exceeded (16384): механизму расчета не удалось вставить перерыв в пределах времени, указанного атрибутом MaxCumulWorkTime для параметра breaks. Причина зачастую в предварительном назначении последовательности перерыву таким образом, что он становится недостижимым в пределах максимального времени работы.
Более подробно:

Значение ViolatedConstraints заказа, которому не назначен маршрут, может описывать или не описывать все его нарушения. Если нарушение достаточно серьезно, чтобы немедленно исключить заказ из дальнейшего рассмотрения, сервис сделает это, что предотвратит обнаружение других нарушений этого заказа. Если обнаруженное нарушение не приводит автоматически к прекращению создания решения, нарушение заносится в поле ViolatedConstraints, и механизм расчета продолжает рассмотрение заказа. Любые дальнейшие подобные нарушения добавляются в поле ViolatedConstraints до тех пор, пока (а) сервис не найдет нарушение, которое досрочно прекращает процесс расчета для данного конкретного заказа, или (б) сервис не найдет общее решение задачи.

Status

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

  • 0: остановка была успешно оценена.
  • 3: улица, на которой находится остановка, не проходима. Это может произойти, если улица имеет ограничение, заданное параметром restrictions.
  • 4: атрибутивные значения остановки выходят за пределы домена кодированных значений или интервального домена, которые ожидаются сервисом. Например, существует отрицательное значение, когда необходимы только положительные значения
  • 5: сервис не может обеспечить прибытие на эту остановку.

Подсказка:

Параметр out_unassigned_stops не содержит геометрию остановок. Чтобы визуализировать нераспределенные остановки на карте, можно сделать следующее

  • Используйте атрибут StopType, чтобы определить, какому параметру соответствует объект остановки: orders или depots.
  • Используйте атрибут Name, чтобы найти объект с таким же именем в параметре orders или depots.

solve_succeeded

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

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог Esri
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2019 Esri. | Конфиденциальность | Правовая информация