Научная статья на тему 'ОБЗОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ДЛЯ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ'

ОБЗОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ДЛЯ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1448
231
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / СИСТЕМНАЯ ДИНАМИКА / АГЕНТНОЕ МОДЕЛИРОВАНИЕ / NETLOGO / ANYLOGIC / ARENA

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Груданов Николай Алексеевич, Груданова Анна Алексеевна

В статье показан сравнительный анализ лидеров рынка инструментов имитационного моделирования. Моделирование является одним из способов решения практических задач. Зачастую решение проблемы невозможно найти путем проведения натурных экспериментов: строить новые объекты, разрушать или вносить изменения в уже имеющуюся инфраструктуру может быть невозможно. Кроме этого динамика поведения таких изменений может быть трудно предсказуема и при этом иметь высокие затраты. Для принятия адекватных управленческих решений лучше всего построить модель нужной системы, то есть описать ее на языке моделирования. Имитационное моделирование может применяться в самых различных сферах деятельности. Для более качественных моделей нужен хороший инструментарий.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPARATIVE ANALYSIS OF THE SIMULATION TOOLS

The article shows a comparative analysis of the market leaders of simulation tools. Modeling is one of the ways to solve practical problems. Often a solution to a problem cannot be found by conducting full-scale experiments: it may be impossible to build new facilities, destroy or make changes to an existing infrastructure. In addition, the dynamics of the behavior of such changes can be difficult to predict and at the same time have high costs. In these cases, it is best to build a model of the desired system, that is, describe it in a modeling language. Simulation can be applied in various fields of activity. For better models you need good tools.

Текст научной работы на тему «ОБЗОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ДЛЯ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ»

Научно-образовательный журнал для студентов и преподавателей «StudNet» №7/2021

ОБЗОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ДЛЯ ИМИТАЦИОННОГО

МОДЕЛИРОВАНИЯ

COMPARATIVE ANALYSIS OF THE SIMULATION TOOLS

УДК 519.876.2

Груданов Николай Алексеевич, аспирант, Национальный исследовательский ядерный университет «МИФИ», г. Москва Груданова Анна Алексеевна, бакалавр, Национальный исследовательский ядерный университет «МИФИ», г. Москва

Grudanov N.A. grudanov.nikolay@outlook.com Grudanova A.A. grudanova.an@yandex.ru

Аннотация

В статье показан сравнительный анализ лидеров рынка инструментов имитационного моделирования. Моделирование является одним из способов решения практических задач. Зачастую решение проблемы невозможно найти путем проведения натурных экспериментов: строить новые объекты, разрушать или вносить изменения в уже имеющуюся инфраструктуру может быть невозможно. Кроме этого динамика поведения таких изменений может быть трудно предсказуема и при этом иметь высокие затраты. Для принятия адекватных управленческих решений лучше всего построить модель нужной системы, то есть описать ее на языке моделирования.

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

1830

Abstract

The article shows a comparative analysis of the market leaders of simulation tools. Modeling is one of the ways to solve practical problems. Often a solution to a problem cannot be found by conducting full-scale experiments: it may be impossible to build new facilities, destroy or make changes to an existing infrastructure. In addition, the dynamics of the behavior of such changes can be difficult to predict and at the same time have high costs. In these cases, it is best to build a model of the desired system, that is, describe it in a modeling language.

Simulation can be applied in various fields of activity. For better models you need good tools.

Ключевые слова: имитационное моделирование, системная динамика, агентное моделирование, NetLogo, AnyLogic, Arena.

Keywords: simulation modeling, system dynamics, agent modeling, NetLogo, AnyLogic, Arena.

Модели могут быть разделены по критерию типов анализируемых объектов: материальные и идеальные. Материальные модели включают в себя физические и аналоговые. В первых (физических) присутствует отожествление физической сущности и модели. В аналоговых моделях стараются добиться схожести процессов, протекающих и в оригинале, и в моделе. Кроме этого, идеальные модели разделены на интуитивные (мысленные) и знаковые (семиотические). Интуитивные модели применяются с целью создания прогнозов. Для их построения используется анализ наблюдений за прошедший период. Одни из самых популярных показателей -экономические, например, прибыль, объем продаж, денежный поток и другие. Существуют показатели, которые не связанны с экономикой, но к ним могут быть хуже применимы предикативные методы прогнозирования. При этом причинные взаимосвязи, лежащие в основе интуитивной модели, в таком случае не объясняются.

1831

Также возможно разделение знаковых моделей на логические, геометрические и математические группы. Логическими являются модели, которые представляют разные варианты выбора действий, основанные на умозаключениях и анализе условий. Геометрическими моделями являются графические формы и объемные конструкции. Например, чертеж, рисунок, карта, пиктограмма, объемное изображение, план. Математические модели состоят из аналитических, алгоритмических (т.е. имитационных) и комбинированных.

Описанную выше градацию можно просмотреть в схематичном представлении на рисунке ниже (см. Рисунок 18)

Рисунок 18«Виды моделей»

Особым для аналитического моделирования моментом является применение систем алгебраических, интегральных и дифференциальных уравнений для того, чтобы описать процессы функционирования системы [1]. Возможно исследование аналитической модели ниже перечисленными методами:

1832

1. Численным - метод, используемый при невозможности решить уравнения в общем виде стараются получить числовые результаты при конкретных начальных данных;

2. Качественным, - метод, когда при отсутствии решения в явном виде некоторые свойства решения возможно найти (например, оценить устойчивость решения);

3. Аналитическим, - метод, когда для искомых характеристик стараются в общем виде получить явные зависимости;

Современные программные инструменты имитационного моделирования можно классифицировать на 4 группы по способу их создания:

1. Создание модели при помощи универсальных языков программирования (C++, Delphi, Pascal). Динамика системы описывается уравнениями, пишется необходимый программный код, проводится расчет уравнений и устанавливается связь выходных величин с входными.

2. Создание компьютерной модели с применением специализированных языков моделирования (как пример - GPSS, AnyLogic, NetLogo). Динамика системы отображается взаимодействием элементов модели во времени и пространстве.

3. Создание компьютерных моделей и осуществление имитационных экспериментов, используя специализированные компьютерные среды (например, Arena, AnyLogic, GPSS World, VisSim). Подобные программные средства имитационного моделирования не требуют программирования в виде кода. Вместо написания программы, пользователи собирают нужную им модель из уже имеющихся графических модулей, и заполняют их свойства в специальных формах. Такая имитационная среда даёт возможность визуализировать процесс имитации, допускает выполнение сценарного анализа и поиска оптимальных решений для определенных задач.

4. Включение средств имитационного моделирования в стандартные математические компьютерные системы (например Mathcad, Mathematica).

1833

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

На диаграмме (см. Рисунок 19 «WSC 2019») изображены лидеры инструментальных средств для имитационного моделирования.

Рисунок 19 <^С 2019»

На рисунке ниже (см. Рисунок 20) более свежая информация и как видно, что лидеры инструментов для моделирования не сдают позиций [2].

1834

Рисунок 20 «Процентное соотношение моделей WSC-2019»

Перейдём к рассмотрению более подробно и проведём сравнительный анализ. Семейство Logo

NetLogo - это агентно-ориентированный язык программирования и интегрированная среда разработки. NetLogo не первый в своём роде, он является преемником StarLogo, который создавался на базе языка Logo.

Logo появился в 1960-х гг. Изобретая язык программирования, они преследовали цель создать интуитивно понятный язык, который бы могли использовать не только программисты, но и люди, далёкие от программирования. Вследствие этого язык Logo используют для обучения школьников и студентов. StarLogo был разработан в середине 1990-х годов. Он является мультиагентной версией языка программирования Logo.

1835

Язык NetLogo не вызывает сложностей в освоении, школьники имеют возможность реализовывать в этой среде разнообразные модели. Помимо этого, существует библиотека моделей, доступных ученикам для изучения и наблюдения языка в действии. Несмотря на свою простоту NetLogo является массивной средой для солидных исследовательских работ.

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

Создавая модель в NetLogo, разработчик создаёт и виртуальный мир, состоящий из агентов. Все агенты параллельно выполняют свою роль. К основным элементам данного мира относятся:

1. Пятна (patches);

2. Черепахи (turtles);

3. Наблюдатель (observer);

4. Связи (links);

Основными элементами агентной модели NetLogo являются два типа агентов: пятна и черепашки. Пятна — это прямоугольные области, из совокупности которых складывается двумерный мир. Они не меняют свое местоположение. Черепахи, в отличие от пятен, являются мобильными агентами виртуального мира имитации. Черепахи двигаются по статичным пятнам. Таким образом, двумерный виртуальный мир агентов подобен шахматному полю, квадраты которого пятна, а шахматные фигуры - черепахи. Экранные формы черепах можно рассмотреть на рисунке ниже (см. Рисунок 21)

1836

А

who color heading хсог усог shape label label-color breed hi-ddlen?

size pen-size pen-rmode

Iturtie i::::::::::: :::::: :::::: :::::::::::::::: x

xcoj| -1.9890437907365466 ycof|oT2Ö9Ö569265353Ö77^

shspafaef aul t

1аЬе1-со1ог|9.9 breed turt hidden? fal s size[l

pen-size 1__

pen-mode up

jturtle

i

хсзг 5.Г814бгг56ЭГ854Г year l?84TÖÖä?ÖSM4^8Ö^

shape "datauIt label

brEEd turtles

Рисунок 21 «Примеры черепашек»

Черепахи (мобильные агенты имитации) имеют свойства, используемые для решения задач. В таблице ниже (см. Таблица 8) перечислены базовые свойства черепах. При работе со свойствами следует учесть ряд их особенностей. Нумеруются агенты в среде визуального моделирования с нуля. То есть: агент 0, агент 1 и так и далее до п-го агента.

Таблица 8 «Свойства черепах»

№ Свойство Описание

1 Who Номер агента

2 Color Цвет агента

3 Heading Угол поворота агента

4 xcor, ycor Координаты положения агента по осям

5 shape Идентификатор фигуры агента

6 Label Текст-метки агента

1837

№ Свойство Описание

7 Label-color Цвет текста метки

8 Hidden? Определяет, видим агент или нет

9 Size Размер агента

10 Pen-size Размер карандаша

11 Pen-mode Показывает, поднят карандаш или опущен

Ориентация агента (направление его последующего движения) зависит от свойства heading. Это значение задаётся в градусах. Turtle 0 показанный на рисунке 7 ориентирован головной частью на «Север», а Turtle 1 на «Запад». Так образом становится понятно, что это север, восток, юг и запад. При подаче команды движения на определённое число единиц - шагов - агенты будут перемещать в виртуальном мире по направлению головы. Если значение отрицательное, то агенты будут двигать в обратном направлении. Если характеристика pen-mode имеет значение «up», то карандаш поднят и агент не оставляет след за собой, в противном случае, то есть если будет иметь значение «down», агент будет оставлять за собой след.

Тип пиктограммы агента записывается в свойстве shape. Это значение задаётся в виде определённой строковой константы. По умолчанию используется константа default. Этот показатель говорит о том, что для отображения агента используется пиктограммы «Стрелочка». Создатель модели может сменить эту пиктограмму на любую другую представленную в редакторе (см. Рисунок 5). Для этого нужно записать нужное название пиктограммы в раздел shape. Так же разработчик может добавить свою пиктограмму. Выбирая новую пиктограмму для агента, следует учитывать, что не все пиктограммы могут менять ориентацию.

1838

Редактор форм черепах

X

default Р

oof) ^^ arrow

«о©0

□□пП

oiO

box bug

butterfly car arde arde 2 cow

Новая

Редактировать

Дублировать

Импорт из библиотеки... Импорт из модели...

(много других ф-орм доступно б библиотеке)

Рисунок 22 «Редактор форм черепах»

Агента можно временно «Скрыть» в визуальной среде. За видимость агента отвечает свойство hidden. По умолчанию в это свойство записано значение false. Агент видим.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Агентам можно менять цвет. Для кодирования цвета используют слова и цифры. Весь набор цветов представлен на рисунке ниже (см. Рисунок 6).

1839

Скопировать выбранный цвет |эЬск Числа |®1 О^ О 1 Приращение

Рисунок 23 «Образцы цветов»

12.1 AnyLogic

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

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

1840

в их естественном взаимодействии. Объектно-ориентированный подход, который предоставляет AnyLogic, делает более легким интерактивное поэтапное создание сложных систем [3].

Ниже на рисунке представлен пример экранной формы (см. Рисунок

24).

Рисунок 24 «Экранная форма AnyLogic»

Для создания различных моделей у AnyLogic есть так называемая «Палитра», в которой находится 15 библиотек:

1. Библиотека моделирования процессов

2. Библиотека производственных систем

3. Пешеходная библиотека

4. Железнодорожная библиотека

5. Библиотека дорожного движения

6. Библиотека моделирования потоков

7. Системная динамика

8. Агент

1841

9. Разметка пространства

10. Статистика

11. Элементы управления

12. Диаграмма состояний

13. Внешние данные

14. Картинки 15.3D объекты

Arena

Arena - это созданное компанией Systems Modeling Corporation программное обеспечение для имитационного моделирования. Оно дает возможность разрабатывать подвижные компьютерные модели, и кроме этого, адекватно показать многочисленные реальные системы. Наиболее ранний вариант данной системы появился в 1993 г. Arena обладает практичным объектно-ориентированным интерфейсом, а также поражает исключительными возможностями по адаптации к разнообразным предметным областям. Данная система очень удобна и легка в применении. На рисунке ниже представлен пример экранной формы данной программы (см. Рисунок 25)

1842

Рисунок 25 «Экранная форма Arena»

Программа использует сущности для работы модели. Сущностями являются индивидуальные элементы, которые претерпевают обрабатывание в системе. Это происходит с помощью двенадцати так называемых системных модулей. Перечисление и краткое описание модулей в таблице ниже (см. Таблица 9).

Таблица 9 «Модули Arena»

№ Модуль Описание

1 Create Начальная точка для сущностей в имитационной модели. Сущности создаются в модуле по расписанию. На выходе из модуля сущность обрабатывается системой

2 Process Главный модуль процесса обработки сущностей в имитационной модели. В модуле имеются опции

1843

№ Модуль Описание

использования ресурсов, т. е., как и при любой обработке, захватываются какие-то ресурсы.

3 Decide Модуль позволяет описать и задать логику модели, учитывая принятие решений. В нём есть опции принятия решений, основанных на условиях..

4 Batch Модуль ответственен за механизм группировки сущностей в имитационной модели. Возможна постоянная или временная группировка.

5 Separate Модуль может применяться для копирования элементов или разделения ранее сгруппированных.

6 Record Модуль нужен для сбора статистики в имитационной модели.

7 Dispose Модуль — выходная точка из имитационной модели.

8 Entity Модуль определяет тип сущности и ее анимационную картинку в имитационном процессе, также определяет стоимостную информацию.

9 Queue Модуль устанавливает тип сущности, ее анимационную картинку в имитационном процессе, и стоимостную информацию.

10 Resource Модуль нужен для определения ресурсов и их свойств в имитационном процессе.

11 Schedule Модуль применяется совместно с Resource для измерения вместимости ресурса и с модулем Create -для задания расписания прибытия сущностей.

1844

№ Модуль Описание

12 Set Модуль данных - модуль, описывающий группу ресурсов, применяющихся в модуле Process. В группе могут быть несколько ресурсов.

У Arena помимо блоков есть ещё один инструмент, являющийся языком моделирования SIMAN. Его функционал всё время обновляется, тем самым улучшая данный язык. Также присутствует система Cinema Animation, применяемая для выражения результатов моделирования на языке SIMAN. Само моделирование происходит поэтапно. Сначала постепенно выстраивается модель в визуальном редакторе системы Arena. Далее система формирует по ней нужный код на SIMAN, а затем происходит автозапуск Cinema animation [4].

Сравнение

Для сравнительного анализа инструментальных средств определен следующий набор характеристик:

1. Разрабочик

2. Язык интерфейса

3. Язык программирования

4. Программирование/ доступ к запрограммированным модулям

5. Системная динамика

6. Агентый подход

7. Дискретно-событийное моделирования

8. Поддержка большого числа агентов

9. 2D анимация

10.3D анимация

11. Просмотр в реальном времени

12. Связь с внешними приложениями

1845

13. Графическое построение модели В таблице ниже (см. Таблица 3) представлены результаты проведенного сравнительного анализа инструментов имитационного моделирования.

Таблица 10 «Характеристики инструментов»

Характеристик а инструментов ИМ Название

ЛпуЬо§ю Лгепа

1 ТИе ЛпуЬо§ю Сотрапу Коск^еП Бой^аге Ш Wilensky

2 Русский Английский Русский

3 1ауа БГМАК

4 + + +

5 + - -

6 + - +

7 + + -

8 + + +

9 + + +

10 + + +

11 + + +

12 + + +

13 + + -

Заключение

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

1846

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

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

Литература

1. Имитационное моделирование экономических процессов: Учебное пособие. Н.Н. Лычкина. - М.: НИЦ ИНФРА-М, 2014.

2. Anylogic [Электронный ресурс]/ Итоги WinterSim-2018: отчёт, фото и видео URL: https://www.anylogic.ru/blog/itogi-wintersim-2018-otchyet-foto-i-video/ (Дата обращения: 15.01.2020).

3. Anylogic [Электронный ресурс]/ Возможности URL: https://www.anylogic.ru/features/ (Дата обращения: 15.01.2020).

4. Имитационное моделирование процессов и систем в среде Arena. М.А. Рудникова, С.Ю. Стадниченко — Лабораторный практикум. - М.: МИИТ, 2011.

5. Имитационное моделирование. Кельтон В Лоу А. 3-е изд. — СПб.; Питер: Киев: Издательская группа BHV, 2004.

1847

6. Яковлева М.С. Имитационное моделирование: подходы, этапы, существующие программные средства // Актуальные проблемы авиации и космонавтики. 2016. №12. URL: https://cyberleninka.ru/article/n/imitatsionnoe-modelirovanie-podhody-etapy-suschestvuyuschie-programmnye-sredstva (Дата обращения: 25.12.2020).

7. ITteach.RU [Электронный ресурс]/Технологические этапы создания и использования моделей URL: http://itteach.ru/statisticheskoe-modelirovanie/technologicheskie-etapi-sozdaniya-i-ispolzovaniya-modeley#toc2. (Дата обращения: 21.12.2020).

8. Якимов И.М., Кирпичников А.П., Мингараева А.И., Буйнова Е.Л. Имитационное моделирование в системе NetLogo // Вестник Казанского технологического университета. 2017. №10. URL: https://cyberleninka.ru/article/Mmitatsionnoe-modelirovanie-v-sisteme-netlogo (дата обращения: 04.12.2020).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Literature

1. Simulation of economic processes: Textbook. N.N. Lychkin. - M .: NITs INFRA-M, 2014.

2. Anylogic [Electronic resource] / Results of WinterSim-2018: report, photo and video URL: https://www.anylogic.ru/blog/itogi-wintersim-2018-otchyet-foto-i-video/ (Date of access: 01/15/2020).

3. Anylogic [Electronic resource] / Possibilities URL: https://www.anylogic.ru/features/ (Date of access: 15.01.2020).

4. Simulation of processes and systems in the Arena environment. M.A. Rudnikova, S.Yu. Stadnichenko - Laboratory workshop. - M .: MIIT, 2011.

5. Simulation modeling. Kelton W Low A. 3rd ed. - SPb .; Peter: Kiev: BHV Publishing Group, 2004.

6. Yakovleva M.S. Simulation modeling: approaches, stages, existing software tools // Actual problems of aviation and cosmonautics. 2016. No. 12. URL:

1848

https://cyberleninka.ru/article/n/imitatsionnoe-modelirovanie-podhody-etapy-suschestvuyuschie-programmnye-sredstva (Date of access: 25.12.

7. ITteach.RU [Electronic resource] / Technological stages of creating and using URL models: http://itteach.ru/statisticheskoe-modelirovanie/technologicheskie-etapi-sozdaniya-i-ispolzovaniya-modeley#toc2. (Date of access: 12/21/2020).

8. Yakimov I.M., Kirpichnikov A.P., Mingaraeva A.I., Buinova E.L. Simulation modeling in the NetLogo system // Bulletin of Kazan Technological University. 2017. No. 10. URL: https://cyberleninka.ru/article/n7imitatsionnoe-modelirovanie-v-sisteme-netlogo (date of access: 04.12.

1849

i Надоели баннеры? Вы всегда можете отключить рекламу.