BehaviorSpace

Материал из Поле цифровой дидактики
Краткое описание инструмента Специальная отдельная программа, встроенная в среду агентного моделирования NetLogo и предназначенная для постановки экспериментов. BehaviorSpace - это программный инструмент, интегрированный с NetLogo, который позволяет проводить эксперименты с моделями.
  • 120px-Behavior_space_flocking.png
Возможности BehaviorSpace помогает экспериментировать с моделью и сохранять результаты в файл для дальнейшего анализа. Необходим, если мы хотим поставить эксперимент с многократным повторением одних и тех же параметров или с изменением параметров. Можно сказать - какие параметры установить, какие переменные и в какой последовательности изменять, в какой форме сохранить результаты.
Трудности использования Существует только внутри среды NetLogo. Предполагает знакомство со средой программирования, поскольку необходимо описать параметры, которые будут фиксироваться и условия, при которых эксперимент остановится.
Область знаний
Область применения экспериментальное исследование
Поясняющее видео https://www.youtube.com/watch?v=ujRkNMOpCN0
Веб-сайт https://ccl.northwestern.edu/netlogo/docs/behaviorspace.html
Пользователи Исследователи
Используется для создания (проведения) имитационное моделирование (simulation)
Разработчик The Center for Connected Learning and Computer-Based Modeling
Сообщество вокруг средства
Лицензия Бесплатная с закрытым кодом
Год первого релиза
Совместное сетевое использование Нет
Какой язык основной English
Есть ли поддержка Искусственным Интеллектом Нет
Книга Agent-Based and Individual-Based Modeling: A Practical Introduction

BehaviorSpace запускает модель много раз, систематически изменяя настройки модели и записывая результаты каждого запуска модели. Этот процесс иногда называют «поиском параметров». Это позволяет вам исследовать «пространство» модели возможного поведения и определять, какие комбинации настроек вызывают интересующее поведение.

Если ваш компьютер имеет несколько ядер процессора, то по умолчанию запуск модели будет происходить параллельно, по одному на каждое ядро.


Почему BehaviorSpace?

Необходимость проведения такого рода экспериментов подтверждается следующими наблюдениями. У моделей часто есть много настроек, каждая из которых может принимать различные значения. Вместе они образуют то, что в математике называется пространством параметров модели, размеры которого представляют собой количество настроек, а каждая точка представляет собой определенную комбинацию значений. Запуск модели с разными настройками (а иногда даже с одинаковыми) может привести к совершенно разному поведению моделируемой системы. Итак, как узнать, какая конкретная конфигурация значений или типы конфигураций приведет к интересующему вас типу поведения? Это сводится к вопросу о том, где в огромном многомерном пространстве параметров ваша модель работает лучше всего?

Например, предположим, что вам нужна быстрая синхронизация агентов в модели Fireflies. Модель имеет четыре ползунка - число, длину цикла, длину вспышки и количество миганий до сброса - которые имеют приблизительно 2000, 100, 10 и 3 возможных значения соответственно. Это означает, что существует 2000 * 100 * 10 * 3 = 6 000 000 возможных комбинаций значений ползунка! Пробовать комбинации по одной - вряд ли эффективный способ узнать, какая из них вызовет наиболее быструю синхронизацию.


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

Позволяя вам исследовать все «пространство» поведения, которое может демонстрировать модель, BehaviorSpace может стать мощным помощником разработчика моделей.

Как это работает

Чтобы начать использовать BehaviorSpace, откройте свою модель, затем выберите элемент BehaviorSpace в меню «Инструменты» NetLogo.

Управление настройками эксперимента

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

Настройки эксперимента считаются частью модели NetLogo и сохраняются как часть модели.

Чтобы создать новую настройку эксперимента, нажмите кнопку «Новый».


При запуске инструмента BehaviorSpace появляется окно, в котором пользователь указывает для программы задания к выполнению:

  • Как назвать эксперимент?
  • Какие сценарии эксперимента нужно создать и как в значения этих сценариях будут принимать глобальные переменные?
  • Сколько раз нужно повторить исполнение каждого сценария?
  • В какой последовательности нужно проводить выполнения?
  • Какие данные нужно собирать в ходе выполнения сценария или после его завершения?
  • Какой параметр использовать для остановки сценария, если сценарий не завершается автоматически?

Behavior space flocking.png