Материал: Разработка модуля имитационного моделирования элементов транспортной инфраструктуры Межрайонной Инспекции Федеральной Налоговой Службы №7 по Чувашской Республике

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

имитационный моделирование программный обеспечение

Рисунок 14. Диаграмма состояний

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

Рисунок 15. Три подхода имитационного моделирования

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

Области применения AnyLogic:

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

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

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

) аэропорты, вокзалы, торговые центры (оценка пропускной способности зданий и отдельных объектов внутри них, нахождение «узких мест» для пешеходных потоков, оптимизация бизнес-процессов в пунктах обслуживания, создание и обоснование планов эвакуации при ЧС, оценка плотности потока посетителей торговых зон, оценка доступности парковок, дорожной сети и общественного транспорта.)

) склад и перевозки (долгосрочное планирование складской инфраструктуры на основе динамики бизнеса, ежедневное управление ресурсами склада, детальное моделирование складов на основе физических размеров зданий, конфигурации стеллажей, специфики продукции, перемещения погрузчиков, направленное на поиск оптимальной политики управления, стратегическое и оперативное управление транспортировками и автопарком на основе накопленных статистических данных, а так же мониторинга данных в режиме реального времени, оптимизация управления автопарком - планирование технического обслуживания, закупки, аренды или лизинга грузовых автомобилей, вагонов, судов, самолетов, оценка риска и управление рисками в транспортной логистике)

) финансы и управления активами (анализ и оценка финансовых и инвестиционных рисков, управление портфелем проектов и инвестиций, оценка и прогнозирование финансовых результатов)

) бизнес-процессы и системное обслуживание (анализировать и оценивать эффективность бизнес-процессов компании, улучшать их, разрабатывать совершенно новые бизнес-процессы, основываясь на имитационных экспериментах)

) железные дороги

) оборона

) IT-инфраструктура (анализ необходимости и эффективности инвестиций в развитие информационной инфраструктуры, оценка влияния модернизации ИТ на бизнес-процессы и финансовые показатели компании, прогнозирование воздействия ИТ инфраструктуры компании на уровень обслуживание клиентов, разработка структуры и характеристик локальных сетей и сетей сотовой связи

) стратегическое планирование и менеджмент

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

Клиентами AnyLogic являются многие известные фирмы, такие как: Vimpelcom, Gazprom, Sberbank, Toyota, NEC, Xerox, NASA, Rolls-Royce, Intel и другие.

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

)        Уменьшение стоимости издержек (допустим, нужно принять какого-либо решения, неизвестно какие последствия будут из-за этого, при использованием имитационного моделирования в AnyLogic можно найти оптимальный вариант, при котором издержки будут минимальны)

)        Уменьшение потраченного времени (при использование имитационного моделирования в AnyLogic можно сэкономить большое количество времени при исследования какого-либо объекта, например, узнать как будет продаваться новый товар на рынке)

)        Повторяемость (при использовании имитационного моделирования в AnyLogic можно проводить исследования с разными параметрами, например, прогнозировать продажу различных товаров на одном рынке или продажу товара на разных рынках)

)        Точность (при использовании имитационного моделирования в AnyLogic можно описать структуру какой-либо системы без помощи различных сложных математических формул)

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

)        Универсальность (использования имитационного моделирования в AnyLogic позволяет решать задачи из разных областей, таких как производство, логистика, здравоохранение, оборона, железные дороги и прочее)

Глава 3. Результаты имитационного моделирования

.1 Описание и реализация имитационной модели


Создаем имитационную модель на основании шаблона «Дискретно-событийное моделирование» (рис. 16).

Рисунок 16. Шаблон «Дискретно-событийное моделирование»

В данном модуле имитационного моделирования элементов транспортной инфраструктуры автомашины прибывают с четырех начальных состояний, поэтому и описывать будем четыре разных элемента (рис. 17-20).

Рисунок 17. Разработанная имитационная модель для первого элемента (как есть)

Рисунок 18. Разработанная имитационная модель для второго элемента (как есть)

Рисунок 19. Разработанная имитационная модель для третьего элемента (как есть)

Рисунок 20. Разработанная имитационная модель для четвертого элемента (как есть)

Для движения автомобилей был нарисован перекресток (рис. 21).

Рисунок 21. Перекресток

Автомобили едут по перекрестку по правилам светофора. Для этого был использовав стейтчарт (рис. 22).

Рисунок 22. Стейтчарт светофора

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

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

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

) CarSource (рис. 23) - создает машины, помещает их на одну из дорог и вставляет заявку типа Car в диаграмму процесса, задающую автотрафик. "Времена прибытий" машин, т.e. времена возникновения машин в модели, задаются аналогично временам появления заявок в объекте Source Основной библиотеки - согласно заданной интенсивности, либо с помощью расписания прибытий или расписания интенсивностей, либо же путем задания времен между прибытиями. Кроме того, есть "ручной режим" создания, при котором объект CarSource будет создавать машины только в моменты вызова его функции inject().

Рисунок 23. CarSource

) SelectOutput (рис. 24) - объект направляет входящие заявки в один из двух выходных портов в зависимости от выполнения заданного (детерминистического или заданного с помощью вероятностей) условия. Условие может зависеть как от заявки, так и от каких-то внешних факторов. Поступившая заявка покидает объект SelectOutput в тот же момент времени. (рис. 25) - объект направляет входящие заявки в один из пяти выходных портов в зависимости от выполнения заданных (детерминистических или заданных с помощью вероятностей) условий.

Рисунок 24. SelectOutput

Рисунок 25. SelectOutput5

) CarMoveTo (рис. 26) - объект, который управляет движением машины. Для каждой машины-заявки объект CarMoveTo высчитывает маршрут от текущего местоположения машины до заданной точки назначения и направляет машину по этому маршруту. При достижении машиной точки назначения, она может как остановиться, так и продолжить движение без заданного маршрута.

Рисунок 26. CarMoveTo

)Queue (рис. 27) - объект моделирует очередь заявок, ожидающих приема объектами, следующими за данным в потоковой диаграмме, или же хранилище заявок общего назначения. При необходимости можно задать максимальное время ожидания заявки в очереди. Также можно программно извлекать заявки из любых позиций в очереди.

Рисунок 27. Queue

) Hold (рис. 28) - блокирует/разблокирует поток заявок на определенном участке блок-схемы. Объект Hold используется, например, когда объект может принимать заявки, но в данный момент не нежно продолжать их обработку или когда нужно заблокировать поступление заявок только от какого-то определенного объекта, в то же время принимая заявки, приходящие с выходных портов других объектов.

Рисунок 28. Hold

)        CarDispose (рис. 29) - удаляет машины из модели.

Рисунок 29. CarDispose

) RoadNetwork (рис. 30) - объект задает сеть дорог, основываясь на нарисованной пользователем графике, проверяет правильность сети и отображает сеть дорог на анимации во время выполнения модели. Этот объект должен присутствовать в любой модели дорожного трафика. В модели может быть несколько независимых (не соединенных) сетей дорог - в этом случае должно быть несколько объектов RoadNetwork - по одному на каждую сеть.

Рисунок 30. RoadNetwork

) View area (область просмотра). С помощью этого элемента можено выделить на диаграмме активного объекта некоторые области, содержащие логически обособленные группы элементов или участки диаграммы. 10) Сamera (рис. 31). Камера используется для определения того, какой именно участок презентации будет отображаться в окне трехмерной анимации. Она как бы "снимает" то, что "показывает" окно трехмерной анимации (3D окно)

Рисунок 31. Сamera

) Slider (бегунок) (рис. 32). Элемент управления, позволяющий пользователю графически выбирать число из заданного диапазона значений путем перетаскивания рукоятки.

Рисунок 32. Slider

) Сhart (рис. 33). График отображает зависимость Y-составляющих значений набора данных от соответствующих им X-составляющих

Рисунок 33. Chart

) Параметры. Параметры обычно используются для задания статических характеристик агента.

Большинство объектов в AnyLogic соединены «соединителем». Соединитель - это линия, соединяющая два порта или две переменные. Соединение двух портов означает, что между этими портами могут посылаться сообщения. Соединение переменных означает, что эти переменные будут иметь одно и то же значение в любой момент времени (изменения одной переменной будут немедленно приводить к изменениям другой, объявленной как внешняя).

Для каждого объекта движения автомобилей построены графики. (рис. 34).

Рисунок 34. Графика движения автомобилей.

Полученную имитационную модель можно просматривать в двух режимах: 2D (рис. 35) и 3D (рис. 36).

Рисунок 35. 2D режим модели

Рисунок 36. 3D режим модели

На рис. 37 расположено изображение движения автомобилей по вертикали в виде элементов AnyLogic.

Рисунок 37. Движение автомобилей по вертикали

На рис. 38 расположено изображение движения автомобилей по горизонали в виде элементов AnyLogic.

Рисунок 38. Движение автомобилей по горизонтали

3.2 Тестирование эксперимента имитационной модели и анализ полученных результатов с измененными параметрами


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

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

Рисунок 39. Настройка интенсивности автомобилей

Соответственно, чем меньше интенсивность движения, тем меньше загруженность дороги, и наоборот, чем больше интенсивность движения, тем больше загруженность дороги.

Можно настроить задержку желтого цвета у светофора (рис. 40).