Описание продукта
AnyLogic используется для разработки имитационных исполняемых моделей и последующего их прогона с целью анализа.
Разработка модели выполняется в графическом редакторе AnyLogic с использованием многочисленных средств поддержки, упрощающих работу. Построенная модель затем компилируется встроенным компилятором AnyLogic и запускается на выполнение. В процессе выполнения модели пользователь может наблюдать ее поведение, изменять параметры модели, выводить результаты моделирования в различных формах – словом, проводить компьютерный эксперимент с моделью.
AnyLogic™ предлагает на порядок больше средств описания структуры, поведения и данных моделируемой системы, чем любой другой инструмент имитационного моделирования. Объекты, интерфейсы и иерархия, блочные диаграммы, диаграммы состояний, таймеры, порты и передача сообщений, переменные и алгебро-дифференциальные уравнения, а также возможность добавить выражение, оператор, функцию или библиотеку на языке Java™ в любом месте модели предоставляют мощный арсенал средств моделирования для «симуляциониста» любого уровня и специализации.
Системные требования
Оборудование
Открытая архитектура
Модели, построенные в AnyLogic™, имеют открытую архитектуру и могут работать с любым офисным или корпоративным ПО, а также с пользовательскими модулями, написанными на различных языках. Модель может динамически читать и сохранять данные в электронных таблицах, базах данных, системах планирования корпоративных ресурсов (ERP) и управления взаимоотношениями с клиентами (CRM), а также быть встроена в производственный или контур управления.
Агентное моделирование
Активные объекты AnyLogic могут создаваться и уничтожаться динамически, перемещаться, общаться друг с другом, иметь поведение, знания, цели, стратегию — то есть обладают всеми свойствами агентов.
При помощи агентов моделируют рынки (агент — потенциальный покупатель), конкуренцию и цепочки поставок (агент — компания), население (агент — семья, житель города или избиратель) и много другое.
Только агентные модели позволяют получить представление об общем поведении системы, исходя из предположений о поведении её элементов при отсутствии знания о глобальных законах — то есть в наиболее общем случае.
Одним из наиболее важных преимуществ AnyLogic является возможность быстрого построения многоагентных моделей, которую не даёт ни один из существующих инструментов.
Окно редактора AnyLogic
Окно классов
Окно свойств
Инструментальная
панель
Окно редактора структуры
Окно редактора поведения
Окно редактора анимации
Кнопка компиляции и запуска модели
Окно редактора структуры
Структурные блоки
Active object class
Взаимодействие между объектами классов осуществляется посредством входных и выходных переменных (непрерывно), а также через механизм портов, обеспечивающий связь благодаря передаче сообщений (дискретно)
X – вход
MyClass
Переменные состояния
Функции поведения
Внутренняя структура
Параметры
Y – выход
(переменные на входе)
(переменные на выходе)
Порты
Объекты
При разработке модели в AnyLogic вы разрабатываете классы активных объектов
Объекты могут содержать в себе другие объекты
При запуске модели экземпляры объектов представляют из себя дерево, где вершиной является объект “root”
Объекты имеют простые, динамические и глобальные параметры
Можно создавать совокупности объектов одного класса (replication), связанные в произвольной топологической схеме
Динамическое изменение структуры (можно создавать и удалять объекты, связи между ними и т.д.)
Карты состояний (Statecharts)
State
Transition
Initial State Pointer
Final State
Branch
History State
Text Box
- создать диаграмму состояний
Условия перехода
Signal event
Описание внутреннего языка
Язык моделирования поддерживает относительно не большое множество алгоритмических конструкций
Язык моделирования создается как расширения какого-нибудь языка программирования (С, Fortran, Simula Java)
В AnyLogic использован второй подход:
Модели AnyLogic – 100% Java
Модели AnyLogic можно не только запускать на многих платформах, но и помещать на web-сайты в виде аплетов. Это уникальное свойство позволяет удалённым пользователям запускать интерактивные модели в web-браузере без необходимости устанавливать какое-либо ПО.
Пользователь имеет возможность присоединять к проекту AnyLogic внешние файлы на языке Java
Затруднено создание интерактивного инкрементного транслятора
Пакет становится профессиональным – для реализации многих задач требуется знание языка Java и принципов объектно-ориентированного программирования
Анимация
Поддержка 2D и 3D анимации
Модульность, масштабируемость,иерархическая структура
Анимация привязывается к объекту, а не к модели
Логически отделена от модели
Код анимации не связан с кодом модели
Интерактивное вмешательство
Возможность изменять параметры и контролировать исполнение в режиме реального времени
100% Java, интеграция с Web
Можно запускать интерактивные модели в web-браузере в виде апплетов
Библиотеки
AnyLogic имеет исключительно развитый базовый язык дискретного и смешанного дискретно/непрерывного моделирования, на основе которого разработаны стандартные библиотеки:
Enterprise Library
Dynamic Systems Library (системная динамика)
Material Flow Library (потоки материалов)
Модель и анимация быстро строятся в стиле drag-and-drop и очень гибко параметризуется.
Реализация стандартных объектов открыта для пользователя, их функциональность может быть как угодно расширена, вплоть до создания собственных библиотек.
Используя иерархию и регулярные структуры объектов, можно создавать масштабирумые модели.
Библиотека Enterprise Library
С помощью библиотеки Enterprise Library пакета AnyLogic можно быстро создавать сложные дискретно-событийные модели, такие как:
Модели производственных процессов;
Модели систем обслуживания (банки, аэропорты и т.д.);
Модели бизнес-процессов с оценкой затрат операций;
Модели логистики и цепочек доставки.
Библиотека объектов Enterprise Library позволяет создавать гибкие модели с наглядной визуализацией моделируемого процесса и возможностью сбора необходимой статистики.
Анализ модели
AnyLogic позволяет сроить как стохастические, так и детерминированные модели и проводить анализ результатов моделирования.
Поддерживается более 35 стандартных вероятностных распределений, можно также определить свои.
С моделью могут быть проведены различные эксперименты:
Моделирование (simulation)
Оптимизация (optimization)
В AnyLogic встроен оптимизатор OptQuest. Комбинируя эвристики, нейронные сети и математическую оптимизацию, OptQuest позволяет находить значения дискретных и непрерывных параметров модели, соответствующие максимуму или минимуму целевой функции, в условиях неопределённости и при наличии ограничений.
Эксперименты Монте-Карло
Анализ чувствительность
Эксперименты по сценарию пользователя
Можно задать план эксперимента, используя код на языке Java
Список литературы
AnyLogic User’s Manual. XJ Technologies Co (http://www.xjtek.com).
AnyLogic Tutorial. XJ Technologies Co (http://www.xjtek.com).
Бенькович Е.С., Колесов Ю.Б., Сениченков Ю.Б. Практическое моделирование динамических систем – СПб.: БХВ-Петербург, 2002. – 464 с.
http://www.xjtek.ru/anylogic/
http://www.xjtek.ru/download/papers/
Alexei Filippov. Anyogic Technical Overview. http://www.xjtek.ru/download/papers/presentation.pdf
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.