AnyLogic

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

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

Разработчик

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

Написана на

Java SE

Интерфейс

русский, английский, португальский, немецкий, китайский

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

Microsoft Windows, Mac OS, Linux

Первый выпуск

2000

Аппаратная платформа

Java Virtual Machine

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

7.3 (2016)

Лицензия

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

Сайт

anylogic.ru

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

История[править | править вики-текст]

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

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

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

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

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

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

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

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

AnyLogic и Java[править | править вики-текст]

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

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

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

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

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

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

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

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

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

Возможности программы[править | править вики-текст]

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

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

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

  • 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 (Железнодорожная библиотека) поддерживает моделирование, имитацию и визуализацию операций сортировочной станции любой сложности и масштаба. Модели сортировочной станции могут использовать комбинированные методы моделирования (дискретно-событийное и агентное моделирование), связанные с действиями при транспортировке: погрузками и разгрузками, распределением ресурсов, обслуживанием, различными бизнес-процессами.
  • Fluid Library (Библиотека моделирования потоков) позволяет моделировать хранение и перенос жидкостей, объёмного вещества или множества дискретных элементов, которые неудобно моделировать по отдельности. Библиотека призвана упростить использование AnyLogic в производстве, нефтегазовой отрасли и добыче полезных ископаемых. Она даёт возможность моделировать трубопроводы, нефтехранилища, конвейеры с насыпными материалами, производственные процессы с жидкостями и объёмными веществами (например, в производстве бетона).[12]
  • Road Traffic Library (Библиотека дорожного движения) движения позволяет детально имитировать физическое перемещение автомобилей по дорожной сети. Кроме того, она дает возможность моделировать движение с учётом ПДД, светофоры и приоритеты проезда на перекрестках, парковки и движение общественного транспорта. В библиотеке есть инструмент, позволяющий визуализировать плотность трафика в сети.[13]
3D-анимация модели зернового терминала
3D-анимация модели зернового терминала

Анимация моделей[править | править вики-текст]

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

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

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

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

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

Геопространственные модели, интеграция с ГИС[править | править вики-текст]

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

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

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

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

Интеграция модели с IT-инфраструктурой[править | править вики-текст]

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

Бесплатная образовательная версия[править | править вики-текст]

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

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

anyLogistix – инструмент оптимизации цепей поставок[править | править вики-текст]

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

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

Примечания[править | править вики-текст]

  1. Портал об имитационном моделировании gpss.ru
  2. 1 2 3 4 Сравнение версий — Инструмент имитационного моделирования AnyLogic. www.anylogic.ru. Проверено 3 июня 2016.
  3. Concurrent Verification and Simulation
  4. «Интервью с президентом компании XJ Technologies Карповым Юрием Глебовичем», Банки и риски, № 2(4), Апрель 2006
  5. 1 2 Карпов, Ю. Г., «Имитационное моделирование систем. Введение в моделирование с AnyLogic 5». — СПб: БХВ-Петербург, 2006. — 400 с. — ISBN 5-94157-148-8
  6. А. Борщев, «Применение Имитационного Моделирования в России», ИММОД 2007, октябрь 2007, Санкт-Петербург
  7. «Применение Имитационного Моделирования в области логистики перевозок и организации работы склада на примере сотрудничества компаний Gefco и XJ Technologies», Информационно-логистический портал Lexim.Ru, 24 сентября 2007
  8. Д. А. Иванов, Б. Соколов, А. Архипов, Й. Кэшель «Модель динамического структурно-функционального синтеза гибких цепей поставок на основе ключевых компетенций» (недоступная ссылка с 14-05-2013 (1162 дня)), European Journal of Operational Research, Январь 2009
  9. Информация на официальном сайте разработчика.
  10. Онлайн инструмент для построения различных видов распределений - Probability Distribution, runthemodel.com
  11. «Обзор систем имитационного моделирования», OR/MS Today
  12. The AnyLogic Company. Вебинар: новая функциональность AnyLogic 7.2 (16 сентября 2015). Проверено 3 июня 2016.
  13. AnyLogic 7.3 — Инструмент имитационного моделирования AnyLogic. www.anylogic.ru. Проверено 3 июня 2016.
  14. AnyLogic Professional — Инструмент имитационного моделирования AnyLogic. www.anylogic.ru. Проверено 3 июня 2016.
  15. AnyLogic 7 Simulation Software: New Features Overview. www.anylogic.com. Проверено 3 июня 2016.
  16. AnyLogic Professional — Инструмент имитационного моделирования AnyLogic. www.anylogic.ru. Проверено 3 июня 2016.
  17. The AnyLogic Company. Marriage of agents and GIS shapefiles: How to make your agents love GIS (17 марта 2015). Проверено 3 июня 2016.
  18. The AnyLogic Company. Webinar: Delivery Fleet Optimization with GIS (2 июня 2015). Проверено 3 июня 2016.
  19. The AnyLogic Company. История изменений в версиях AnyLogic.
  20. Supply Chain Optimization and Simulation Software – anyLogistix. www.anylogistix.ru. Проверено 3 июня 2016.

Литература[править | править вики-текст]

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

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

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