Научная статья на тему 'Имитационное моделирование в системе NetLogo'

Имитационное моделирование в системе NetLogo Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1035
152
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АГЕНТЫ / ЧЕРЕПАХИ / ТОЧКИ / СВЯЗИ / НАБЛЮДАТЕЛЬ / ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ (ИМ) / АНАЛИТИЧЕСКОЕ МОДЕЛИРОВАНИЕ (АМ) / СИСТЕМА МАССОВОГО ОБСЛУЖИВАНИЯ (СМО) / МАКРОУРОВЕНЬ / МИКРОУРОВЕНЬ / AGENTS / TURTLES / PATCHES / LINKS / OBSERVER / SIMULATION MODELING (SM) / ANALYTICAL MODELING (AM) / QUEUING SYSTEM (СМО) / MACROLEVEL / MICROLEVEL

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Якимов И.М., Кирпичников А.П., Мингараева А.И., Буйнова Е.Л.

Приводится краткое описание системы структурного и имитационного моделирования NetLogo. Приведены структурные модели систем массового обслуживания: М/М/1, М/М/5, М/М/5/2, М/М/5/0 на 10000 реализаций, результаты их имитационного и аналитического моделирования и сравнения результатов между собой. Отмечены достоинства и недостатки системы NetLogo.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Якимов И.М., Кирпичников А.П., Мингараева А.И., Буйнова Е.Л.

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

Текст научной работы на тему «Имитационное моделирование в системе NetLogo»

УДК 338.2

И. М. Якимов, А. П. Кирпичников, А. И. Мингараева, Е. Л. Буйнова

ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ В СИСТЕМЕ NETLOGO

Ключевые слова: Агенты, черепахи, точки, связи, наблюдатель, имитационное моделирование (ИМ), аналитическое моделирование (АМ), система массового обслуживания (СМО), макроуровень, микроуровень.

Приводится краткое описание системы структурного и имитационного моделирования NetLogo. Приведены структурные модели систем массового обслуживания: М/М/1, М/М/5, М/М/5/2, М/М/5/0 на 10000 реализаций, результаты их имитационного и аналитического моделирования и сравнения результатов между собой. Отмечены достоинства и недостатки системы NetLogo.

Keywords: Agents, turtles, patches, links, observer, simulation modeling (SM), analytical modeling (AM), queuing system (CMO),

macrolevel, microlevel.

A brief description of the NetLogo structural and simulation modeling system is given. Structural models of queuing systems are given: MM/1, MM/5, MM/5/2, MM/5/0 for 10,000 realizations, the results of their simulation and analytical modeling and comparison of results between by yourself. The advantages and disadvantages of the NetLogo system are noted.

Введение

В обзоре систем имитационного моделирования (СИМ) [1], среди 12 названных, СИМ NetLogo [2] по применимости 7% в 2014 годы занимает пятое место. Поэтому она вполне заслуженно достойна внимания специалистов по имитационному модели-ровнию (ИМ).

Основные сведения о СИМ NetLogo

Программные имитационные модели в СИМ пишутся на специализированном языке NetLogo. Язык NetLogo был разработан Ури Виленским в 1999 году как дальнейшее развитие языка Logo. В разработке принимали участие специалисты Масса-чусетского технологического института и корпорации BBN (Bolt Beranek & Newman). Первая СИМ для общего доступа создана в 2002 году, она называлась NetLogo1. С тех пор вышло множество версий, последняя из них в марте 2017 - NetLogo 6.0.1. СИМ NetLogo функционирует на виртуальной машине Java, поэтому она может работать на всех основных платформах (Mac, Windows, Linux и др.).

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

В СИМ NetLogo эффективно реализован метод агентного моделирования. Можно сказать, что из агентов и состоит мир NetLogo. Агенты исполняют полученные ими задания к действию. Каждый агент ориентирован на выполнение предписанного задания, и все агенты функционируют параллельно во времени [3].

Мир NetLogo представлен четырьмя типами агентов:

1. Передвигающимися в модели черепашками;

2. Точками, представляющими собой квадратные элементы территории моделирования (земли) для передвижения черепашек;

3. Связями, соединяющими двух черепашек;

4. Наблюдателем, обладающим возможностью создавать черепашек.

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

На рис. 1 приведено рабочее поле моделирования в СИМ NetLogo на примере модели «Очередь».

Интерфейс - область, предназначенная для регистрации параметров модели. В центре, чёрного по умолчанию рабочего поля, взаимодействуют черепашки, точки и связи. В область рабочего поля легко добавляются разнообразные кнопки и переключатели. Кнопки привязываются к именам процедур.

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

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

Обычно в любой модели NetLogo присутствуют две основные кнопки:

1. «Setup», связанная с одноимённой процедурой, которая очищает экран, удаляет агентов и запускает процедуру создания нужных для работы модели агентов.

2. «Go», связанная с запуском модели.

В нижней части экрана расположена строка «Командный центр», представляющая собой наблюдателя, который задаёт инструкции структурным частям моделируемой системы.

Рис. 1 - Рабочее поле моделирования

Моделирование систем массового обслуживания

Для оценки достоверности результатов ИМ в СИМ NetLogo посредством сравнения с результатами аналитического моделирования (АМ) приведём результаты моделирования четырёх однофазных СМО: М/М/1, М/М/5, М/М/5/0 и М/М/5/2 с количеством реализаций 10000 продуктов. Аналитическое моделирование СМО было осуществлено по формулам, приведённым в [4].

Моделирование данных СМО в СИМ NetLogo осуществляется с помощью библиотечной модели «Очередь», в которой агенты типа черепашки визуально представлены в виде упрощённых изображений людей. Обслуживающий аппарат изображается как человек, заключённый в красный квадрат. Очередь визуально представлена в виде линии из нескольких людей. Наличие или отсутствие отказов задаётся с помощью кнопок управления и не отображается на графическом представлении данной модели, что приводит к однообразному изображению для СМО М/М/5, М/М/5/0, М/М/5/2 (рис. 2).

В <> $ SD

Структурная модель СМО М/М/1 в СИМ NetLogo приведена на рис.3.

и

if Й

ш

458,519

Рис. 3 - Структурная модель СМО М/М/1 в системе NetLogo

Результаты АМ и ИМ СМО и оценка их разности в процентах приведены в таблице 1 для СМО М/М/1, М/М/5 и в таблице 2 для М/М/5/0, М/М/5/2.

Проведенное сравнение результатов ИМ в СИМ Netlogo с результатами АМ для четырех СМО показало, что средние значения по шести/семи показателям для четырех моделируемых СМО не превышает 2%. Такой результат следует считать вполне приемлемым [5] для практического применения СИМ Netlogo. Работать в СИМ NetLogo удобно и довольно просто. Наличие специализированных библиотек позволяет снизить трудоёмкость создания имитационных моделей.

Ш 1780.336

Ш 1790.133

ttittüWt ш 1782.476 и 17B0.03 ш 1780333

Рис. 2 - Структурная модель СМО М/М/5 в СИМ NetLogo

Таблица 1 - Результаты АМ и ИМ СМО с ожиданием (без отказов)

№ Код Наименование Результаты моделирования М/М/1

АМ ИМ Разница Разница в %

1 1 Среднее количество продуктов в очереди 0.900 0.879 0.021 2.38

2 т Среднее количество продуктов в ОА 0.600 0.597 0.003 0.5

3 к Среднее количество продуктов в системе 1.500 1.476 0.024 1.62

4 1 ожид Среднее время ожидания продуктов в очереди 9.000 8.866 0.034 1.51

5 1обсл Среднее время задержки продуктов в ОА 6.000 6.023 0.023 0.38

6 1 преб Среднее время пребывания продуктов в системе 15.000 14.892 0.108 0.72

Среднее значение разницы в процентах по шести показателям 1.185

№ Код Наименование Результаты моделирования М/М/5

АМ ИМ Разница Разница в %

1 / Среднее количество продуктов в очереди 0.354 0.346 0,008 2.25

2 т Среднее количество продуктов в ОА 3.000 2.978 0,022 0.73

3 к Среднее количество продуктов в системе 3.354 3.324 0,030 0.89

4 1ожид Среднее время ожидания продуктов в очереди 3.542 3,512 0,030 0.84

5 1обсл Среднее время задержки продуктов в ОА 30.000 29,967 0,033 0.11

6 преб Среднее время пребывания продуктов в системе 33.542 33,479 0,063 0.18

Среднее значение разницы в процентах по шести показателям 0.83

Таблица 2 - Результаты АМ и ИМ СМО с отказами

№ Код Наименование Результаты моделирования М/М/5/0

АМ ИМ Разница Разница в %

1 / Среднее количество продуктов в очереди 0 0 0 0

2 т Среднее количество продуктов в ОА 2.670 2.612 0,058 2.17

3 к Среднее количество продуктов в системе 2.670 2.612 0,058 2.17

4 1ожид Среднее время ожидания продуктов в очереди 0 0 0 0

5 1 обсл Среднее время задержки продуктов в ОА 30.00 29,915 0,085 0.28

6 преб Среднее время пребывания продуктов в системе 30.00 29,915 0,085 0.28

7 ро1к Вероятность отказа 0.110 0.108 0.002 1.81

Среднее значение разницы в процентах по семи показателям 0.95

№ Код Наименование Результаты моделирования М/М/5/2

АМ ИМ Разница Разница в %

1 / Среднее количество продуктов в очереди 0.126 0.129 0,003 2.38

2 т Среднее количество продуктов в ОА 2.897 2.996 0,099 3.41

3 к Среднее количество продуктов в системе 3.023 3.125 0,102 3.37

4 ожид Среднее время ожидания продуктов в очереди 1.308 1,297 0,011 0.84

5 1 обсл Среднее время задержки продуктов в ОА 30.000 29,967 0,033 0.11

6 преб Среднее время пребывания продуктов в системе 31.308 31,264 0,044 0.14

7 Ро1к Вероятность отказа 0.034 0.033 0.001 2.94

Среднее значение разницы в процентах по семи показателям 1.87

Когда работаешь с NetLogo можно заметить, пожалуй, только единственный серьёзный минус -нельзя создавать имитационные модели с помощью одного лишь графического редактора. Любой элемент на панели, и любой вызов агента должен быть запрограммирован. Для пользователей, умеющих программировать, это будет даже увлекательно изучить простой и интересный язык программирования NetLogo. Для тех пользователей, которые далеки от программирования этот минус системы компенсируется большим количеством библиотек, таких как «Волки и Овцы», «Химическое равновесие», «Распространение вируса», «Кристаллизация» и других [6]. Библиотеки охватывают широкий спектр предметных областей. Складывается впечатление, что любой процесс в мире можно смоделировать в СИМ NetLogo.

Заключение

Результаты, приведённые выше показали, что СИМ NetLogo является вполне приемлемой для разработки систем. Назовём наиболее существенные достоинства СИМ NetLogo.

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

2. Яркий дизайн СИМ NetLogo, привлекающий также и совсем молодых пользователей.

3. Наглядность. Имитационная модель в СИМ NetLogo обладает возможностями визуализации моделируемого процесса, а также представление измерений и расчётов в виде графиков.

4. Высокая достоверность результатов ИМ. Проведённое сравнение результатов ИМ в СИМ NetLogo с результатами АМ для четырёх СМО по© И. М. Якимов - канд. техн. наук, профессор кафедры автоматизированных систем обработки информации и управления КНИТУ-КАИ им А.Н. Туполева; А. П. Кирпичников - д-р физ.-мат. наук, зав. каф. интеллектуальных систем и управления информационными ресурсами КНИТУ, kirpichnikov@kstu.ru; А. И. Мингараева - бакалавр кафедры автоматизированных систем обработки информации и управления КНИТУ-КАИ им А.Н. Туполева, almira.mingaraeva@gmail.com; Е. Л. Буйнова -бакалавр кафедры автоматизированных систем обработки информации и управления КНИТУ-КАИ им А.Н. Туполева, newl 3line 13 @yandex.ru.

© I. M. Yakimov - Cand. Tech. Sci., Professor of the Department of Computer-Aided Information Processing and Control Systems. Tupolev; A. P. Kirpichnikov - doctor of physical and mathematical sciences. Sciences, head. Cafe. Intellectual systems and information resources management KNITU, kirpichnikov@kstu.ru; A. I. Mingarayeva - bachelor of the Department of Automated Information Processing and Control Systems, KNITU-KAI named after A.N. Tupolev, almira.mingaraeva@gmail.com; E. L. Buinova -bachelor of the Department of Automated Information Processing and Control Systems of the KNITU-KAI named after AN. Tupolev, newl 3line 13 @yandex.ru.

казало, что средние значения СМО для 10000 продуктов не превышают 2%.

5. Наличие специализированных библиотек элементов моделирования и готовых моделей в различных предметных областях.

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

Литература

1. Борщёв А.В. Имитационное моделирование: Состояние области на 2015 год, тенденции и прогноз. Труды седьмой Всероссийской научно-практической конференции «Имитационное моделирование. Теория и практика» (ИММ0Д_2015). Том пленарных докладов. С.14-22.

2. Introduction to NetLogo. [Электронный ресурс] Режим доступа:

http://www.multiagent.fr/images/Introduction_To_NetLogo. pdf (доступ свободный).

3. Agent-Based and Individual-Based Modeling: A Practical Introduction. — Cambridge: Princeton University Press, 2011. — ISBN 978-0-691-13674-5.

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

4. А.П. Кирпичников Методы прикладной теории массового обслуживания. - Казань, Изд-во Казанс. гос. ун-та, 2011, 200 с.

5. Якимов И.М., Кирпичников А.П., Исаева Ю.Г., Аляут-динова Г.Р. Сравнение результатов имитационного моделирования объектов в системах: AnyLogic, Arena, Bi-zagi modeler, GPSS W. // Вестник Казанского технологического университета. 2015. Т. 18. № 16. С. 260-265.

6. NetLogo Models Library. [Электронный ресурс] Режим доступа:

http://ccl.northwestern.edu/netlogo/models/index.cgi (доступ свободный).

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