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

Шаг 1. Моделирование простого потока пассажиров

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

Создание новой модели

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

  1. Щелкните мышью по кнопке панели инструментов Создать . Появится окно Мастера создания модели.

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

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

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

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

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

Добавление чертежа моделируемого здания

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

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

Сохраните рисунок - план на ваш компьютер

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

Добавьте рисунок с изображением плана павильона в модель

  1. Вначале откройте палитру Презентация. Эта палитра содержит элементы, которые вы можете использовать для рисования анимации модели.
  2. Чтобы открыть какую-либо закладку панели Палитра (именуемую в дальнейшем палитрой), нужно щелкнуть мышью по соответствующей иконке на вертикальной панели слева от палитры. Пока вы привыкаете к иконкам палитры, вы можете навести указатель мыши на панель и подождать, пока появится всплывающее окно, в котором вы увидите названия палитр.

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

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

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

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

Рисование границ здания

Теперь мы нарисуем на анимации объекты моделируемой среды. Вначале мы нарисуем границу моделируемого нами пространства, играющую роль стен здания.

Нарисуйте границы здания

  1. Откройте палитру Пешеходная библиотека.
  2. Нарисуйте стены, как показано на рисунке:

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

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

Рисование входа и цели движения для потока пешеходов

Теперь нужно задать области входа и выхода пешеходов.

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

Мы хотим нарисовать линию входа точно там, где на рисунке вход обозначен текстом - ENTRANCE:

Нарисуйте линию, где появляются пассажиры

  1. Перетащите элемент Целевая линия из секции Разметка палитры Пешеходная библиотека в графический редактор.
  2. Измените ее размер и расположите точно так, как показано на рисунке:

  3. Назовите линию entryLine.

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

Мы хотим, чтобы они шли к поездам метро, поэтому давайте расположим эту целевую линию у прохода к поездам - над текстом TO TRAINS.

Нарисуйте целевую линию

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

Все элементы разметки (целевые линии и др.) должны находиться внутри стены.

Создание диаграммы, задающей поток пешеходов

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

Мы начнем с самого простого процесса: пассажиры входят на станцию метро (там, где мы нарисовали entryLine) и затем двигаются в направлении поездов (к нашей targetLine).

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

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

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

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

  3. Переименуйте блоки. Назовите их inflowSource, goToTrains, inflowSink. Вы можете сделать это в свойствах блока.

Скажем несколько слов об этих блоках диаграммы.

  • Блок PedSource создает пешеходов. Обычно он используется в качестве начальной точки диаграммы процесса, формализующей поток пешеходов. В нашем примере он моделирует приход пассажиров в павильон.
  • Блок PedGoTo моделирует перемещение пешеходов из текущего местоположения в другое (заданное параметром этого объекта). С помощью этого блока мы будем моделировать то, как пассажиры перемещаются от входа в павильон к поездам метро.
  • Блок PedSink удаляет поступивших в блок пешеходов из моделируемой среды. Обычно блок используется в качестве конечной точки диаграммы процесса.

Детальное описание блоков Пешеходной библиотеки, их функций и параметров вы можете найти в Справочном руководстве по Пешеходной библиотеке.

Измените свойства блоков диаграммы

  1. Выделите блок inflowSource. В панели Свойства задайте место, где появляются пассажиры. Выберите entryLine (название нашей целевой линии, нарисованной ранее у входа) из выпадающего списка Целевая линия.
  2. Задайте 4000 в час в параметре Интенсивность.

  3. Теперь измените свойства объекта goToTrains. Укажите пункт назначения для пассажиров. После того, как пассажиры войдут в здание, они будут двигаться к той цели, которую вы здесь укажете. На данный момент мы хотим, чтобы пассажиры, вошедшие в павильон, сразу двигались к поездам метро. Укажите targetLine (название целевой линии, которую мы нарисовали второй) в списке Целевая линия.

  4. Оставьте все свойства объекта PedSink установленными по умолчанию.

Итак, готово! Давайте запустим нашу модель.

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

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

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

Можно увидеть, что пассажиры входят в павильон и движутся по коридору, ведущему к поездам метро.

Замечательно! В считанные минуты мы смогли создать простую модель.

Обратите внимание, что для каждого шага моделирования имеются контрольные модели. Вы можете использовать их, чтобы сравнить свою модель с контрольной. Далее приведена ссылка на контрольную модель для этого шага.
Демо-модель: Subway Entrance Hall — Phase 1 Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.

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

Как мы можем улучшить эту статью?