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

Шаг 1. Создание дороги

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

Создайте новую модель

  1. Щелкните мышью по кнопке панели инструментов Создать . Появится диалоговое окно Новая модель.
  2. Задайте имя новой модели. В поле Имя модели введите Road Traffic Tutorial.

  3. Выберите каталог, в котором будут сохранены файлы модели. Если вы хотите сменить предложенный по умолчанию каталог на какой-то другой, вы можете ввести путь к нему в поле Местоположение или выбрать этот каталог с помощью диалога навигации по файловой системе, открывающегося по нажатию на кнопку Выбрать.
  4. Выберите секунды в качестве Единиц модельного времени.
  5. Щелкните мышью по кнопке Готово, чтобы завершить процесс.

Вы создали новую модель. В ней уже имеется один тип агента Main и эксперимент Simulation. Агенты - это главные строительные блоки модели AnyLogic. В нашем случае агент Main послужит местом, в котором мы зададим всю логику модели: здесь мы создадим дорожную сеть и зададим движение транспорта на диаграмме процесса.

В центре рабочей области находится графический редактор диаграммы типа агента Main.

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

В правой рабочей области будет отображаться панель Свойства. Панель Свойства используется для просмотра и изменения свойств выбранного в данный момент элемента (или элементов) модели. Когда вы выделяете какой-либо элемент, например, в панели Проекты или графическом редакторе, панель Свойства показывает свойства выбранного элемента.

Теперь мы можем настроить нашу модель.

Стандартный сценарий создания модели

  1. Добавьте спутниковый снимок местности, в которой находится интересующий нас перекресток.
  2. Нарисуйте дороги поверх спутникового снимка.
  3. Задайте движение автомобилей с помощью блоков

    Библиотеки дорожного движения

    .

Давайте создадим модель по вышеописанному сценарию.

Добавление спутникового снимка

Мы будем использовать следующий спутниковый снимок:

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

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

Теперь мы можем добавить этот снимок на графическую диаграмму модели.

Добавьте спутниковый снимок на графическую диаграмму модели

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

  2. Выберите палитру Презентация, чтобы открыть ее:

  3. Перетащите элемент Изображение из палитры Презентация на графическую диаграмму Main.

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

Создание дороги

Сейчас мы нарисуем дорогу (Tapiolavagen), разместив ее строго поверх той, что на снимке. Дорожные сети в AnyLogic задаются следующим образом: вы рисуете дороги, перекрестки и при необходимости добавляете другие элементы разметки пространства (автобусную остановку, стоп-линию и парковку).

Создайте дорогу

  1. Прежде чем нарисовать дорогу, следует отключить сетку в графическом редакторе. Щелкните по кнопке панели инструментов Включить/Отключить сетку . Она должна принять вид не нажатой кнопки: .
  2. В панели Палитра выберите палитру Библиотека дорожного движения:

  3. Сделайте двойной щелчок по элементу Дорога в секции Разметка пространства палитры Библиотека дорожного движения. Иконка элемента изменится на . Это означает, что активирован режим рисования, и теперь вы можете рисовать дорогу в графическом редакторе.

  4. Щелкните мышью в графическом редакторе, чтобы поставить первую точку дороги.

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

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

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

  8. Если это первая дорога в модели, вы увидите сообщение с предложением сменить масштаб модели на: 4 пикселя в 1 метре. Мы советуем согласиться, так как предлагаемый масштаб часто используется в моделях дорожного движения. После этого вы увидите нарисованную дорогу. Она должна быть похожа на дорогу, которая изображена на рисунке ниже:

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

    Кол-во полос основного движения

    и Кол-во полос встречного движения равным единице. Количество полос автоматически уменьшится до двух.

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

  1. Выделите дорожную сеть, сделав два последовательных щелчка по дороге (первый щелчок выделит саму дорогу, а уже второй - дорожную сеть). После этого откройте секцию свойств дорожной сети Внешний вид. Щелкните по элементу управления Цвет дороги, выберите Другие цвета... из списка и задайте для свойства Прозрачность значение 150, к примеру.
  2. Теперь можно увидеть, как созданная дорога накладывается на дорогу на карте. Если она шире или уже, нужно настроить масштаб модели. При необходимости можете перетащить холст немного ниже, чтобы над осью Х появился элемент Масштаб, в свойствах которого можно будет указать масштаб.

  3. В этом примере линейка масштаба соответствует 35 метрам.

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

Создание диаграммы процесса

Теперь мы зададим процесс движения транспорта, создав диаграмму из блоков Библиотеки дорожного движения.

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

Диаграмма процесса в AnyLogic создается путем добавления объектов библиотеки из палитры на графическую диаграмму, соединения их портов и изменения значений свойств блоков в соответствии с требованиями вашей модели.

Создайте диаграмму процесса

  1. Откройте палитру Библиотека дорожного движения и добавьте блоки из этой палитры на диаграмму, соединив их, как показано на рисунке ниже. Чтобы добавить блок на диаграмму, перетащите его из палитры в графический редактор:

  2. Когда блоки располагаются рядом друг с другом, между ними появляются соединительные линии. Будьте внимательны, эти линии должны соединять только порты, находящиеся с правой или левой стороны блоков.

Скажем пару слов об этих блоках.

CarSource создает автомобили. Обычно используется как начальная точка автомобильной диаграммы процесса.

CarMoveTo моделирует движение автомобиля к цели движения.

CarDispose удаляет поступающие на вход этого блока автомобили из модели. Обычно используется как конечная точка автомобильной диаграммы процесса.

За детальным описанием объектов Библиотеки дорожного движения обращайтесь к Справочному руководству по Библиотеке дорожного движения.

Настройте блоки диаграммы

  1. Чтобы изменить свойства элемента модели, выделите элемент в графическом редакторе, щелкнув по нему мышью. Откроется панель Свойства с настройками элемента.
  2. Выделите блок carSource. В панели Свойства укажите, как часто должны прибывать автомобили. В раскрывающемся списке Дорога выберите road, это дорога, которую мы только что создали. Таким образом мы указываем блоку carSource дорогу, на которую стоит поместить создаваемые автомобили.

  3. Внесите изменения в свойства блока carMoveTo. Оставьте заданную по умолчанию опцию Цель движения: дорога и выберите имя нашей дороги road в раскрывающемся списке Дорога. Этот блок будет моделировать движение автомобилей по указанной дороге до конца полосы основного движения (задается параметром Доехать до конца полосы).

  4. В блоке carDispose оставьте настройки по умолчанию.

Запуск модели

Мы готовы запустить созданную модель. Сначала постройте вашу модель с помощью кнопки панели инструментов Построить модель . Построение не будет завершено, если в модели присутствуют ошибки, информация о которых будет выведена в панель Ошибки. Чтобы перейти к месту ошибки и исправить ее, совершите двойной щелчок мышью по ошибке в этом списке.

После того, как все ошибки устранены и модель успешно построена, вы можете запустить её. Запуская модель, вы автоматически обновляете её.

Запустите модель

  1. Щелкните мышью по кнопке панели инструментов Запустить и выберите из открывшегося списка эксперимент, который вы хотите запустить. Эксперимент этой модели будет называться Road Traffic Tutorial/Simulation.

На момент запуска этого конкретного эксперимента наша модель - единственная открытая модель в рабочем пространстве. В дальнейшем будет запускаться тот эксперимент, который запускался вами в последний раз. Чтобы выбрать какой-то другой эксперимент, вам будет нужно щелкнуть правой кнопкой мыши по этому эксперименту в панели Проекты и выбрать Запустить из контекстного меню. После запуска модели вы увидите окно этой модели. В нем будет отображена презентация агента верхнего уровня модели. По умолчанию это тип агента Main. Выполнение модели начнется немедленно. На презентации модели вы увидите движение автомобилей в 2D анимации поверх добавленного снимка.

При необходимости, измените скорость выполнения модели, используя кнопки панели инструментов Замедлить и Ускорить.

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

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

Демо-модель: Road Traffic Tutorial — Phase 1 Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.
Как мы можем улучшить эту статью?