AnyLogic
Развернуть
Размер шрифта

Задание маршрутов на карте ГИС

Реализация ГИС в AnyLogic содержит существующие на карте маршруты, готовые для использования. Агенты будут двигаться по этим маршрутам при запуске модели, вам только нужно указать точки отправления и прибытия. Эти маршруты запрашиваются с веб-сервера, а значит, вам необходимо иметь активное соединение с сетью Интернет при разработке модели. Когда вы запустите модель, используемые маршруты будут сохранены в папке модели для улучшения скорости выполнения модели в дальнейшем.

Если у вас есть конкретная сеть маршрутов, вы можете разметить маршруты на карте специальными объектами и, возможно, создать потом из них сеть. Вы можете получить существующие маршруты с сервера и сохранить их в модели с помощью объекта ГИС Маршрут, чтобы не запрашивать постоянно маршруты онлайн.

Также вы можете построить маршруты из файла или задавать маршруты просто как прямые линии между точками.

Чтобы использовать готовые маршруты

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Маршруты. Под опцией Маршруты: Загружаются с сервера OSM вы найдете несколько вариантов построения маршрутов.
  3. AnyLogic поддерживает получение маршрутов с трех серверов: AnyLogic (мы рекомендуем использование именно этого сервера, поскольку мы гарантируем стабильность его работы), YOURS и BRouter. Вы можете выбрать любой из них в списке опции Сервер маршрутов. Все серверы работают на основе данных OSM (OpenStreetMap).
  4. Для сервера YOURS вы можете выбрать, какой выбирается маршрут: кратчайший или быстрейший.
  5. Далее, вы можете изменить тип сети дорог. По умолчанию, мы предлагаем вам использовать автомобильную сеть, но также поддерживаются велосипедная и пешеходная сети маршрутов.
  6. Теперь вам необходимо только расположить агентов на карте, например, с помощью поиска или объектов разметки. Если вы отправите агента из одного местоположения в другое, он будет двигаться по готовым маршрутам, которые получит с сервера маршрутов.

Чтобы добавить маршрут в модель

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

  3. Специальные обозначения появятся в этих точках на карте и начнется построение маршрута:

  4. Вы увидите, как ГИС Маршрут появится на карте.

  5. Вид и тип маршрута будут зависеть от настроек, заданных в секции Маршруты свойств ГИС карты. Если вы используете сервер или граф, чтобы получать маршруты, вам будет предоставлен существующий маршрут между этими точками в соответствии с выбранной сетью дорог. Если AnyLogic не сможет получить маршрут, то либо построит маршрут по прямой линии, либо выдаст ошибку. Также, если маршрут был построен по прямой линии, вы, возможно, используете режим Маршруты: строятся по прямой.
  6. После того, как маршрут был создан, вы можете отредактировать его точки. Также вы можете закрепить его на карте с помощью свойства маршрута Заблокировать местоположение.
  7. Соединяя маршруты с точками ГИС, вы сможете создать сеть.

Также вы можете вручную нарисовать маршрут с помощью объекта разметки ГИС Маршрут .

Создание маршрута с помощью кода

Существует несколько способов создать маршрут с помощью кода:

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

Чтобы узнать больше, ознакомьтесь с документацией API по ссылкам, предложенным выше.

AnyLogic поддерживает получение маршрутов из онлайн и оффлайн источников со следующими различными опциями.

Чтобы задать тип маршрута

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Маршруты и найдите параметр Выбирается маршрут. Эта опция доступна для маршрутов, получаемых с сервера YOURS, либо из графа маршрутов.
  3. Здесь вы можете выбрать, какой будет создаваться маршрут: кратчайший или быстрейший.
  4. При построении кратчайшего маршрута учитывается только длина пути.
  5. Если вы выбираете построить быстрейший маршрут, то при построении будут учитываться ограничения скорости на различных участках сети дорог.

Чтобы выбрать сеть дорог

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Маршруты. Вы можете задавать маршруты в одной из следующих сетей: автомобильной, велосипедной, пешеходной.
  3. Если маршруты в вашей модели загружаются с сервера OSM, вы можете выбрать Сеть дорог для этих маршрутов ниже в этой секции свойств.
  4. Если же маршруты в модели считываются из файла PBF, вы можете выбрать Сеть дорог в мастере создания графа маршрутов, щелкнув по кнопке Загрузите граф маршрутов > Создать новый.

Чтобы задать отсутствующий маршрут

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Маршруты и найдите параметр Если маршрут не найден. Здесь вы можете выбрать предпочитаемое действие в случае, если запрашиваемый маршрут не может быть построен.
  3. Выберите одну из двух опций: Строить маршрут по прямой или Отображать сообщение об ошибке.
  4. Если вы выберете первую опцию, все недоступные маршруты будут задаваться как прямые линии. В таком случае, модель будет работать беспрерывно.
  5. Выберите опцию Отображать сообщение об ошибке, если хотите всегда контролировать наличие и отображение маршрутов.

Загрузка маршрутов из файла

По умолчанию мы предлагаем вам использовать сервер для построения маршрутов. Но вы можете также построить маршруты из файла на своем компьютере. Вы можете найти и загрузить файлы типа .osm (файл данных Open Street Map формата .xml) и .pbf (сильно сжатый, оптимизированный бинарный формат файла OSM) из сети Интернет для какой-то определенной области или всего мира (например, с таких сайтов как GIS-Lab.info (территория СНГ), GeoFabric.de, BBBike.org). Возможно, вы найдете работу с файлами формата .pbf более удобной, ведь они имеют меньший размер и AnyLogic быстрее создаст из них граф маршрутов.

GraphHopper — это маршрутизационный исполняющий модуль для работы с (дорожными) сетями, разработанный на основе данных OpenStreetMap (см. веб-сайт GraphHopper).

Чтобы создать новый граф маршрута

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Маршруты и выберите Маршруты: Считываются из файла PBF.
  3. Вы можете задать, какой выбирается маршрут: кратчайший или быстрейший, а также выбрать алгоритм построения маршрутов как до загрузки графа, так и после.
  4. Щелкните по кнопке Загрузите граф маршрутов. Откроется мастер загрузки графа маршрутов. На первой странице мастера выберите опцию Создать новый граф маршрутов.

  5. На второй странице мастера создания графа в поле Файл укажите файл формата .pbf или .osm. Вы можете добавить файл, щелкнув кнопку Выбрать.
  6. Далее задайте папку. По умолчанию Папка для хранения графа маршрутов называется Routing graph. Щелкните по кнопке Выбрать, чтобы выбрать папку для построенных маршрутов. Если вы введете имя папки в это поле, эта папка будет использоваться, если она существует в папке модели, иначе папка с таким именем будет создана. Если указанная папка уже содержит готовые маршруты, вы увидите предупреждение рядом с ее именем. Вы все равно можете использовать эту папку, но существующий граф будет удален.
  7. Далее выберите сеть дорог (автомобильную, велосипедную или пешеходную), в которой нужно построить маршруты, и уровень детализации графа для автомобильной сети.

    • Низкий уровень детализации — автострады, магистральные, второстепенные дороги и дороги, которые их соединяют.
    • Средний — все вышеназванное, а также третьестепенные дороги.
    • Высокий — все вышеназванное, а также улицы, служебные и проселочные дороги. Тип дороги задается с помощью специального тега highway. Вы можете найти подробную информацию о типах дорог на странице вики Open Street Map (на русском языке).
  8. Щелкните по кнопке Готово, чтобы начать создавать маршруты. Этот процесс может занять какое-то время в зависимости от размера файла. Вы можете щелкнуть кнопку Выполнять в фоновом режиме в диалоговом окне создания маршрутов. Вы сможете пользоваться маршрутами из графа только после того, как процесс его создания будет полностью завершен.
  9. После того, как маршруты будут построены, при необходимости вы можете выбрать другой файл для их обновления, снова открыв мастер и выбрав опцию Создать новый.

Чтобы загрузить готовый граф маршрута

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Маршруты и выберите Маршруты: Считываются из файла PBF.
  3. Щелкните по кнопке Загрузите граф маршрутов и на первой странице мастера выберите опцию Загрузить существующий.
  4. Выберите папку с графом маршрутов, щелкнув кнопку Выбрать или введите имя папки в редактируемое поле Папка для хранения графа маршрутов и щелкните Готово. Готовый граф маршрутов представляет из себя набор следующих файлов:

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

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

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

Чтобы задать другого поставщика маршрутов

  1. Выделите ГИС карту в графическом редакторе и перейдите в панель Свойства.
  2. Откройте секцию свойств Специфические. Поставьте флажок опции Другой поставщик маршрутов.
  3. Появится параметр Поставщик маршрутов и редактируемое поле с заданной основой кода, которую вы можете использовать, чтобы определить своего поставщика маршрутов. Методы, которые вам необходимо определить, вы можете найти в Справочнике классов AnyLogic.
  4. Поддерживаемые поставщики маршрутов будут недоступны, пока вы используете эту специфическую опцию.
Демо-модель: Product Delivery Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.
Как мы можем улучшить эту статью?