Назначение и возможности инструментальной среды AnyLogic

Федеральное агентство по образованию Уральский государственный технический университет– УПИ

имени первого Президента России Б.Н. Ельцина

М. В. Киселева

ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ СИСТЕМ В СРЕДЕ ANYLOGIC

Учебно-методическое пособие

Научный редактор профессор, доктортехническихнаук Л. Г. Доросинский

Печатается по решению редакционно-издательского совета УГТУ-УПИ от 26.05.2009 г.

Екатеринбург УГТУ-УПИ

УДК 004.434:004.94(075.8) ББК 32.973.26-018.2я73

Рецензенты:

кафедра «Автоматизации и информационных технологий» – Уральский государственный колледж имени И. И. Ползунова (доцент, канд. техн. наук В. В. Кийко);

С. Н. Киселев, ген. директор ЗАО «Уральский региональный межотраслевой центр научно-технического развития».

Киселева М. В.

К44 Имитационное моделирование систем в среде AnyLogic: учебнометодическое пособие / М. В. Киселёва. Екатеринбург: УГТУ - УПИ,

Учебно-методическое пособие предназначено для изучения методов и средств построения имитационных моделей в инструментальной среде AnyLogic.

Содержит три лабораторные работы по созданию имитационных моделей – дискретно-событийной, системно-динамической и агентной. Для каждой модели приводится подробная постановка проблемы, разбирается структура и реализация модели в среде AnyLogic. Изучаются приемы наглядной визуализации исследуемого процесса, интерактивной анимации с возможностью изменения параметров системы по ходу моделирования процесса.

Библиогр.: 4 назв. Рис. 67.

УДК 004.434:004.94(075.8)

ББК 32.973.26-018.2я73

© УГТУ-УПИ, 2009

© Киселева М. В., 2009

ВВЕДЕНИЕ Имитационное моделирование

Моделирование – метод решения задач, при использовании которого исследуемая система заменяется более простым объектом, описывающим реальную систему и называемым моделью.

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

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

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

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

Назначение и возможности инструментальной среды AnyLogic

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

Пакет AnyLogic – отечественный профессиональный инструмент нового поколения, который предназначен для разработки и исследования имитационных моделей. Разработчик продукта – компания «Экс Джей Текнолоджис» (XJ Technologies), г. Санкт-Петербург; электронный адрес:www.xjtek.ru .

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

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

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

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

ных объектов.

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

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

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

, Linux

Энциклопедичный YouTube

    1 / 1

    BUY321 - Measuring time-in-system in AnyLogic

Субтитры

История

В начале 1990-х в компьютерной науке наблюдался большой интерес к построению математически трактуемого описания взаимодействия параллельных процессов. Что сказалось на подходах к анализу корректности параллельных и распределённых программ. Группа учёных из Санкт-Петербургского Политехнического университета разработала программное обеспечение для анализа корректности системы; новый инструмент назвали COVERS (Параллельная Верификация и Моделирование) . Анализируемая система процессов задавалась графически, с помощью описания её структуры и поведения отдельных параллельных компонентов, которые могли взаимодействовать с окружением - с другими процессами и средой. Инструмент использовался в исследовательских проектах компании Хьюлетт-Паккард (англ. Hewlett-Packard ).

В 1998 г. успех этого исследования вдохновил лабораторию организовать коммерческую компанию с миссией создания нового программного обеспечения для имитационного моделирования. Акцент при разработке ставился на прикладные методы: моделирование стохастических систем, оптимизацию и визуализацию модели. Новое программное обеспечение, выпущенное в 2000 г., было основано на последних преимуществах информационных технологий: объектно-ориентированный подход, элементы стандарта UML , языка программирования Java , современного GUI , и т. д.

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

А также любую комбинацию этих подходов в пределах одной модели. Первой версии был присвоен индекс 4 - Anylogic 4.0, так как нумерация продолжила историю версий предыдущей разработки - COVERS 3.0.

Огромный шаг вперёд был сделан в 2003 году, когда был выпущен AnyLogic 5, ориентированный на бизнес-моделирование. С помощью AnyLogic стало возможным разрабатывать модели в следующих областях :

Последней версией программы является AnyLogic 7. AnyLogic 7 написан на языке программирования Java в популярной среде разработки Eclipse . AnyLogic является кросс-платформенным программным обеспечением, работает как под управлением операционной системы Windows , так и под Mac OS и Linux .

AnyLogic и Java

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

Методы имитационного моделирования

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

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

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

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

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

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

Возможности программы

Среда моделирования

Графическая среда моделирования AnyLogic включает в себя следующие элементы :

  • Stock & Flow Diagrams (диаграмма потоков и накопителей) применяется при разработке моделей, используя метод системной динамики.
  • Statecharts (карты состояний) в основном используется в агентных моделях для определения поведения агентов. Но также часто используется в дискретно-событийном моделировании, например для симуляции машинных сбоев.
  • Action charts (блок-схемы) используется для построения алгоритмов. Применяется в дискретно-событийном моделировании (маршрутизация звонков) и агентном моделировании (для логики решений агента).
  • Process flowcharts (процессные диаграммы) основная конструкция, используемая для определения процессов в дискретно-событийном моделировании.

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

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

Библиотеки AnyLogic

AnyLogic включает в себя набор следующих стандартных библиотек:

Файл:3D Animation of a Grain Terminal Model.png

3D-анимация модели зернового терминала

Анимация моделей

AnyLogic поддерживает интерактивную анимацию моделей в 2D и 3D.

Так, AnyLogic позволяет импортировать чертежи САПР в виде DXF-файлов и использовать их для визуализации моделей. Эта функциональность чаще всего используется в дискретно-событийном моделировании для анимации процессов внутри заводов, складов, больниц и т.д.

Также программа поддерживает 3D-анимацию и включает коллекцию готовых 3D-объектов, имеющих отношение к разным видам деятельности, например, здравоохранению, производству, энергетике, логистике, пассажирским перевозкам и др.

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

Файл:GIS-Based Supply Chain Simulation Model.png

Имитационная модель цепи поставок с ГИС

Геопространственные модели, интеграция с ГИС

Модели AnyLogic могут использовать карты в качестве инструмента анимации, что часто требуется при моделировании цепей поставок и логистики. AnyLogic поддерживает традиционный shapefile-формат данных, SHP от Esri . Кроме того, AnyLogic использует тайловые карты от бесплатных провайдеров, включая OpenStreetMap . Тайловые карты позволяют разработчикам использовать в модели картографические данные и автоматически создавать маршруты для агентов. Основная функциональность тайловых карт в AnyLogic включает следующее:

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

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

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

Интеграция модели с IT-инфраструктурой

Модели AnyLogic экспортируются в виде Java-приложений, которые можно запускать отдельно от среды разработки или интегрировать с другими программами. В частности, экспортированная модель может быть встроена в другое ПО и работать в качестве дополнительного модуля для систем типа ERP, MRP или TMS. Модели также интегрируются с файлами TXT, MS Excel, MS Access и любыми базами данных (MS SQL, My SQL, Oracle, и др.). Кроме того, у каждой модели есть своя встроенная база данных на HSQLDB.

Бесплатная образовательная версия

Начиная с 2015 года, версия AnyLogic Personal Learning Edition (PLE) доступна бесплатно для целей образования и самообразования. Лицензия PLE не ограничена по времени, но модели, созданные в этой версии, ограничены по размеру.

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

anyLogistix – инструмент оптимизации цепей поставок

В AnyLogic нет отдельной библиотеки для моделирования цепей поставок, т.к. компания направила свои усилия на разработку отдельного инструмента для этой отрасли – anyLogistix. Этот родственный AnyLogic продукт был впервые представлен в 2014 под названием AnyLogic Logistics Network Manager и был переименован в anyLogistix в 2015 г.

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

AnyLogic - инструмент имитационного моделирования, с которым работают более 15000 пользователей в 60 странах мира. Программный продукт предназначен для проектирования и оптимизации бизнес-процессов или любых сложных систем, таких как производственный цех, аэропорт, госпиталь и т.д. Инструмент поддерживает все методы бизнес моделирования – системную динамику, дискретно-событийное (процессное) и агентное моделирование. Основной упор в разработке продукта сделан на его гибкость и простоту использования для неопытных в создании моделей пользователей. Среди пользователей крупные международные компании, государственные структуры, международные альянсы: НАТО, НАСА, Boeing , , IBM , General Motors , HSBS , PWC , Accenture , Jonson&Jonson.

2014: AnyLogic 7

1990-1998

В начале 1990-х годов в компьютерной науке наблюдался большой интерес к построению математически трактуемого описания взаимодействия параллельных процессов. Что сказалось на подходах к анализу корректности параллельных и распределенных программ. Группа ученых из Санкт-Петербургского политехнического университета разработала программное обеспечение для анализа корректности системы; новый инструмент назвали COVERS (Параллельная Верификация и Моделирование) . Анализируемая система процессов задавалась графически, с помощью описания её структуры и поведения отдельных параллельных компонентов, которые могли взаимодействовать с окружением - с другими процессами и средой. Инструмент использовался в исследовательских проектах компании Hewlett-Packard .

В 1998 году успех этого исследования вдохновил лабораторию организовать коммерческую компанию с миссией создания нового программного обеспечения для имитационного моделирования. Акцент при разработке ставился на прикладные методы: моделирование стохастических систем, оптимизацию и визуализацию модели. Новое программное обеспечение, выпущенное в 2000 г., было основано на последних преимуществах информационных технологий: объектно-ориентированный подход, элементы стандарта UML, языка программирования Java, современного GUI и т. д.

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

  • системная динамика;
  • дискретно-событийное моделирование|дискретно-событийное (процессное) моделирование;
  • агентное моделирование.

А также любую комбинацию этих подходов в пределах одной модели. Первой версии был присвоен индекс 4 - Anylogic 4.0, так как нумерация продолжила историю версий предыдущей разработки - COVERS 3.0.

Огромный шаг вперед был сделан в 2003 году, когда был выпущен AnyLogic 5, ориентированный на бизнес-моделирование. С помощью AnyLogic стало возможным разрабатывать модели в следующих областях :

AnyLogic & Java

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

Методы имитационного моделирования

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

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

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

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

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

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

Среда моделирования

  • Action charts (блок-схемы) используется для построения алгоритмов. Применяется в дискретно-событийном моделировании (маршрутизация звонков) и агентном моделировании (для логики решений агента).
  • Process flowcharts (процессные диаграммы) основная конструкция, используемая для определения процессов в дискретно-событийном моделировании.
  • Среда моделирования также включает в себя: низкоуровневые конструкции моделирования (переменные, уравнения, параметры, события и т.п), формы представления (линии, квадраты, овалы и т.п), элементы анализа (базы данных, гистограммы, графики), стандартные картинки и формы экспериментов.

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

    Библиотеки AnyLogic

    AnyLogic включает в себя набор следующих стандартных библиотек:

    • Enterprise Library разработана для поддержки дискретно-событийного моделирования в таких областях как Производство, Цепи поставок, Логистика и Здравоохранение. Используя Enterprise Library, Вы можете смоделировать системы реального мира с точки зрения заявок (англ. entity) (сделок, клиентов, продуктов, транспортных средств, и т. д.), процессов (последовательности операций, очередей, задержек), и ресурсов. Процессы определены в форме блочной диаграммы.
    • Pedestrian Library создана для моделирования пешеходных потоков в «физической» окружающей среде. Это позволяет Вам создавать модели с большим количеством пешеходного трафика (как станции метро, проверки безопасности, улицы и т. д.). Модели поддерживают учет статистики плотности движения в различных областях. Это гарантирует приемлемую работу пунктов обслуживания с ограничениями по загруженности, оценивает длину простаивания в определенных областях, и обнаруживает потенциальные проблемы с внутренней геометрией - такие как эффект добавления слишком большого числа препятствий - и другими явлениями. В моделях, созданных с помощью Pedestrian Library, пешеходы двигаются непрерывно, реагируя на различные виды препятствий (стены, различные виды областей) так же как и обычные пешеходы. Пешеходы моделируются как взаимодействующие агенты со сложным поведением. Для быстрого описания потоков пешеходов Pedestrian Library обеспечивает высокоуровневый интерфейс в виде блочной диаграммы.
    • Rail Yard Library поддерживает моделирование, имитацию и визуализацию операций сортировочной станции любой сложности и масштаба. Модели сортировочной станции могут использовать комбинированные методы моделирования (дискретно-событийное и агентное моделирование), связанные с действиями при транспортировке: погрузками и разгрузками, распределением ресурсов, обслуживанием, различными бизнес-процессами.

    Примечания

    Литература

    • Карпов, Ю. Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5. - СПб: БХВ-Петербург, 2006. - 400 с. -