Возможно, вы уже использовали веб-приложение, которое прокладывает маршрут между двумя точками или указывает объекты, например, больницы, в вашем районе на основе введенного адреса. Эти приложения используют функции сетевого анализа на сервере для поиска нужных маршрутов и пунктов обслуживания на основе предоставленных сведений. Вам не нужно специальное программное обеспечение для сетевого анализа на компьютере для получения результатов, так как сервер выполняет всю работу и возвращает результаты через веб-сервис.
С помощью ArcGIS Enterprise вы можете размещать подобные сервисы, выполняющие операции анализа транспортной сети, такие как поиск ближайшего пункта обслуживания, поиск оптимального маршрута для одного транспортного средства или парка транспортных средств, решение задачи размещение-распределение для пунктов обслуживания, расчет матрицы Источник-Назначение и определение областей обслуживания. Эти сервисы используют дополнительный модуль Network Analyst для анализа набора сетевых данных.
Примечание:
Сервисы сетевого анализа нельзя использовать для анализа геометрических сетей. В этом случае нужно использовать ArcGIS Desktop. Дополнительные сведения см. в разделе Что такое геометрические сети?
Первое, что вам нужно сделать для создания сервиса сетевого анализа, – использовать ArcMap для создания документа карты, содержащего слой сетевого анализа. Затем опубликуйте карту как сервис с включенной функцией Сетевой анализ. Вы можете использовать полученный сервис с помощью различных инструментов ArcGIS. В приведенных ниже разделах этот процесс описывается более подробно.
Создание документа карты
Перед публикацией сервиса сетевого анализа вы должны использовать ArcGIS Desktop для создания документа карты, который, как минимум, содержит один слой сетевого анализа, который будет использоваться в этом сервисе. Вы можете добавить существующий слой сетевого анализа с помощью диалогового окна Добавить данные (Add Data) или создать новый слой сетевого анализа (ссылающийся на набор сетевых данных), уже имеющийся на карте, с помощью панели инструментов ArcGIS Network Analyst. Если вы хотите, чтобы сервис возвращал изображение результатов анализа на карте, вы также должны добавить другие необходимые слои и настроить параметры условных знаков.
Вы также можете использовать ArcGIS Desktop для установки параметров, которые будут по умолчанию применяться при анализе. К этим параметрам относятся сетевые положения, такие как пункты обслуживания и барьеры, а также опции механизма расчета, например, число пунктов обслуживания для поиска и имеющиеся ограничения. Дополнительные сведения о работе со слоями сетевого анализа в ArcGIS Desktop см. в разделе Справки Network Analyst.
Публикация сервиса
После создания и сохранения документа карты вы можете создать сервис сетевого анализа, следуя действиям, приведенным в разделе Как опубликовать сервис. При публикации ресурса помните о следующем:
В ArcGIS Desktop существует два варианта публикации: с копированием данных на сервере при публикации либо без копирования. Если вы не будете копировать данные на сервер при публикации, вам будет необходимо предоставить учетной записи ArcGIS Server права на чтение любых данных, связанных со слоями в вашем документе карты перед тем, как вы его опубликуете. Если данные не будут копироваться на сервер, то и права доступа учетной записи ArcGIS Server предоставлять будет не нужно. Этот процесс подробно описан в разделе справки Как сделать данные доступными для ArcGIS Server.
При указании функций в Редакторе сервисов (Service Editor) убедитесь, что включена функция Сетевой анализ (Network Analysis).
Подробный пример публикации сервиса сетевого анализа описан в разделе Учебное руководство: публикация сервиса сетевого анализа.
Функциональные возможности Network Analyst
В следующем разделе приводится описание различных функциональных возможностей, которые можно настроить перед публикацией сервиса.
Общее
После включения Network Analysis в диалоговом окне Редактор сервисов можно задать следующие общие параметры.
Выходная директория: местоположение, в которое записываются результирующие слои.
Точность выходной геометрии по умолчанию:: это значение определяет точность по умолчанию выходной геометрии после генерализации. Когда это значение равно нулю или не указано, генерализация выходной геометрии не выполняется. Заданное положительное значение представляет параметр MaximumAllowableOffset. Генерализация выполняется в соответствии с IPolycurve.Generalize.
Разрешить пользователям сохранение получившихся слоев на сервере: это поле показывает, могут ли пользователи сохранять итоговые слои на сервере для их последующего использования.
Сохранять результирующий слой на сервере при возникновении ошибки: это поле показывает, должны ли результирующие слои автоматически сохраняться в выходной директории, если во время анализа произойдет ошибка. Если выбрана эта опция, она может помочь в устранении ошибки.
Сохранить получившийся слой на сервере при отладке: когда выбрана эта опция, результирующие слои будут автоматически сохраняться в выходной директории для каждого запроса, если задан уровень журнала DEBUG.
Игнорировать поля сетевых положений: Этот параметр указывает сервису не использовать поля местоположения во входных местоположениях анализа (остановки, барьеры, хозяйственные объекты, инциденты и т. д.), когда они переданы вместе с запросом. Если названия улиц часто меняются, целесообразно игнорировать поля сетевых положений, чтобы избежать передачи запросов с устаревшими полями положений.
Ограничения
Ограничения представляют собой набор свойств, с помощью которых механизмы расчета устанавливают параметры для выходных данных сервиса. Эти свойства можно задать на вкладке Ограничения. Общими для всех механизмов расчетов являются следующие ограничения:
- Макс. барьеров: максимальное число точечных барьеров, разрешенных для передачи по запросу.
- Макс. объектов, пересекающих линейные барьеры: максимальное число улиц, которое можно ограничить линейными барьерами по запросу.
- Макс. объектов, пересекающих полигональные барьеры: максимальное число улиц, которое можно ограничить полигональными барьерами по запросу.
- Принудительно задавать иерархию при превышении (экстент входных данных) и Единицы принудительного задания иерархии при превышении (экстент входных данных):Когда остановки находятся на большом расстоянии друг от друга, для разрешающих запросов может потребоваться много времени и ресурсов сервера, если эта опция не выбрана.
Для каждого механизма расчета могут быть заданы дополнительные ограничения:
Маршрут
- Макс. остановок: максимальное число остановок, которое пользователь может передать по запросу.
- Разрешить временные окна: Эта опция определяет, будет ли данный сервис поддерживать прохождение пользователя во временное окно на входных остановках.
Область обслуживания
- Макс. пунктов обслуживания: максимальное число пунктов обслуживания, разрешенных для передачи по запросу.
- Макс. разрыва: и Единицы макс. разрыва: значение максимального разрыва, которое может быть установлено для запроса области обслуживания.Единицы импеданса могут быть основаны на:
- Время
- Длина
- Другое
- Принудительно задавать иерархию при превышении (разрыв) и Единицы принудительного задания иерархии при превышении (разрыв): максимальное значение разрыва, которое может быть задано для запроса области обслуживания.После этого максимума сервер автоматически изменит запрос на использование сетевой иерархии.
Ближайший пункт обслуживания
- Макс. пунктов обслуживания: максимальное число пунктов обслуживания, разрешенных для передачи по запросу.
- Макс. пунктов обслуживания для поиска: максимальное число пунктов обслуживания от происшествия, которое сервис сможет находить по запросу.
- Макс. инцидентов: максимальное число инцидентов, разрешенных для передачи по запросу.
Матрица Источник-Назначение
- Макс. назначений: максимальное число пунктов назначения, разрешенных для передачи по запросу.
- Макс. назначений для поиска: максимальное число пунктов назначения от исходной точки, которое сервис сможет находить по запросу.
- Макс. начал координат: максимальное число исходных точек, разрешенных для передачи по запросу.
Задача выбора маршрута транспорта
- Макс. заказов: максимальное число заказов, разрешенных для передачи по запросу.
- Макс. маршрутов: максимальное число маршрутов, разрешенных для передачи по запросу.
Размещение-распределение
- Макс. точек требований: максимальное число точек требований, разрешенных для передачи по запросу.
- Макс. пунктов обслуживания: максимальное число пунктов обслуживания, разрешенных для передачи по запросу.
Использование сервиса
Вы можете использовать сервисы сетевого анализа для получения специальных или локальных функций маршрутизации в настольных приложениях. Например, исходные настройки диалогового окна Найти маршрут в ArcGIS Desktop и диалогового окна Маршрут в Explorer for ArcGIS обеспечивают доступ к сервисам сетевого анализа Esri. Если вы хотите использовать собственный сервис, потому что вы добавили специальные правила или данные, или потому что отсутствует подключение к сети Интернет, вы можете настроить эти команды для использования собственного сервиса сетевого анализа. Для этого не требуется писать код.
В веб-приложениях и других настольных приложениях для работы с сервисами сетевого анализа используются программные средства. Разработчики ArcGIS могут выбирать различные платформы, которые будут работать с сервисами сетевого анализа, например, веб-интерфейсы (API) ArcGIS, а также API протоколов SOAP и REST. Функции сетевого анализа на сервере также доступны в ArcObjects с помощью объекта NAServer.
Более подробно об API для доступа к сетевым сервисам.
Сетевой анализ с помощью сервисов геообработки
Если у вас навыков программирования, то вы можете добавить функции сетевого анализа в свои веб-приложения с помощью сервисов геообработки. Сервис геообработки обычно работает на основе модели, созданной в ModelBuilder, или отдельного инструмента, разработанного для публикации в качестве сервиса, например, Расчет задачи выбора маршрута транспорта или Создать области обслуживания. Пользователь отправляет входные данные на сервис геообработки, модель или инструмент производят сетевой анализ на стороне сервера, а результаты работы возвращаются на компьютер пользователя.
Вы также можете проводить сетевой анализ с использованием текущих данных о ситуации на дорогах (трафик). Для этого вы должны настроить собственный сервис трафика с помощью инструмента геообработки Обновить данные трафика и указать в наборе сетевых данных, что анализ должен выполняться с учетом данных этого сервиса трафика. Вы можете также связать набор сетевых данных с сервисом трафика, имеющимся в ArcGIS Online. Убедитесь, что в опциях анализа используется атрибут стоимости на основе ситуации на дорогах (трафика), например, TravelTime, и задано время начала маршрута.
Доступные функции
Некоторые веб-интерфейсы (API) компании Esri для разработки клиентских приложений отличаются уровнем сложности процесса работы с сервисами сетевого анализа. В следующей таблице указаны механизмы, доступные для каждого API:
ArcGIS API | Сервисы сетевого анализа | Сервисы геообработки |
---|---|---|
JavaScript, REST, Windows Phone, iOS | Route (маршрут), Service Area (область обслуживания), Closest Facility (ближайший пункт обслуживания) | Все |
SOAP | Все | Все |