AnyLogic

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
AnyLogic
AnyLogic6.jpg
Тип

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

Разработчик

The AnyLogic Company
(бывшая XJ Technologies)

Написана на

Java SE

Операционная система

Microsoft Windows, Mac OS, Linux

Последняя версия

7 (2014)

Лицензия

Проприетарное

Сайт

anylogic.ru

AnyLogic — программное обеспечение для имитационного моделирования, разработанное российской компанией The AnyLogic Company (бывшая «Экс Джей Текнолоджис», англ. XJ Technologies). Инструмент обладает современным графическим интерфейсом и позволяет использовать язык Java для разработки моделей[1].

История[править | править исходный текст]

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

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

Три подхода имитационного моделирования

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

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

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

  • производство;
  • логистика[6] и цепочки поставок[7];
  • рынок и конкуренция;
  • бизнес-процессы и сфера обслуживания;
  • здравоохранение и фармацевтика;
  • управление активами и проектами;
  • телекоммуникации и информационные системы;
  • социальные и экологические системы;
  • пешеходная динамика;
  • оборона.

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

AnyLogic и Java[править | править исходный текст]

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

Методы имитационного моделирования[править | править исходный текст]

Подходы имитационного моделирования на шкале уровня абстракции

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

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

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

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

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

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

Среда моделирования[править | править исходный текст]

Конструкции среды моделирования AnyLogic

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

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

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

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

Библиотеки AnyLogic[править | править исходный текст]

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

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

Примечания[править | править исходный текст]

  1. Портал об имитационном моделировании gpss.ru
  2. Concurrent Verification and Simulation
  3. «Интервью с президентом компании XJ Technologies Карповым Юрием Глебовичем», Банки и риски, № 2(4), Апрель 2006
  4. 1 2 Карпов, Ю. Г., «Имитационное моделирование систем. Введение в моделирование с AnyLogic 5». — СПб: БХВ-Петербург, 2006. — 400 с. — ISBN 5-94157-148-8
  5. А. Борщев, «Применение Имитационного Моделирования в России», ИММОД 2007, октябрь 2007, Санкт-Петербург
  6. «Применение Имитационного Моделирования в области логистики перевозок и организации работы склада на примере сотрудничества компаний Gefco и XJ Technologies», Информационно-логистический портал Lexim.Ru, 24 сентября 2007
  7. Д. А. Иванов, Б. Соколов, А. Архипов, Й. Кэшель «Модель динамического структурно-функционального синтеза гибких цепей поставок на основе ключевых компетенций» (недоступная ссылка с 14-05-2013 (338 дней)), European Journal of Operational Research, Январь 2009
  8. Информация на официальном сайте разработчика.
  9. Онлайн инструмент для построения различных видов распределений - Probability Distribution, runthemodel.com
  10. «Обзор систем имитационного моделирования», OR/MS Today

Литература[править | править исходный текст]

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

См. также[править | править исходный текст]

Ссылки[править | править исходный текст]