AnyLogic

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

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

Разработчик

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

Написана на

Java SE

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

Microsoft Windows, Mac OS, Linux

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

7.0.2 (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 (525 дней)), 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.

См. также[править | править вики-текст]

Ссылки[править | править вики-текст]