Агентное моделирование в среде NetLogo на уроках информатики
Рассмотрение возможности использования среды мультиагентного моделирования NetLogo на уроках информатики в школе при изучении компьютерного моделирования и программирования. Интерфейс среды и базовые операции, с которыми можно познакомить школьников.
Рубрика | Педагогика |
Вид | статья |
Язык | русский |
Дата добавления | 26.07.2018 |
Размер файла | 1,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Агентное моделирование в среде NetLogo на уроках информатики
Векслер Виталий Абрамович, кандидат наук, доцент, доцент
В статье рассматривается возможность использования среды мультиагентного моделирования NetLogo на уроках информатики в средней школе при изучении основ компьютерного моделирования и программирования.
Похожие материалы
· Моделирование экологических систем в среде NetLogo на уроках информатики в средней школе
· Практическая реализация стенографических методов на уроках по изучению программирования
· Образовательная робототехника: основы программирования конструкторов VEX IQ на языке RobotC
· Образовательная робототехника: робот VEX IQ -- путешественник
· Сравнение языков программирования на примере сортировки массива
Для изучения многих процессов и явлений необходимо строить их модели. Имитационное или ситуационное моделирование это метод, который позволяет строить модели, описывающие процессы и явления так, как они проходили бы в реальности. Такую модель можно просмотреть «во времени» как для одного испытания, так и заданного их множества. Одним из видов имитационного моделирования является агентное моделирование.
Агентное моделирование возникло в 90-х-годах прошлого века. Данное направление в имитационном моделировании в основном используется для глубокого исследования децентрализованных систем. Динамика функционирования децентрализованных систем определяется не глобальными правилами и законами, а наоборот, эти глобальные правила и законы являются результатом индивидуальной активности членов группы. Целью агентных моделей -- получить полное представление об этих глобальных правилах и общем поведении системы, только исходя из предположений об индивидуальном, частном поведении её отдельных активных объектов и взаимодействии этих объектов в системе. Агент, в общем понимании, это некая сущность, обладающая активностью и автономным индивидуальным поведением. Агент вполне может принимать самостоятельные решения в соответствии с некоторым набором правил, взаимодействовать с окружением, а также самостоятельно изменяться.
Одной из программ позволяющей разрабатывать и изучать такие модели является бесплатно распространяемая среда NetLogo. Эту среду рекомендуют использовать для обучения студентов и школьников, в ней реализован достаточно широкий технический инструментарий, вы можете изучать основы программирования, теорию алгоритмизации (управление исполнителем), мультиагентное моделирование, отслеживать поведение агентов в их особом мире. Использовать данную среду можно на уроках информатики, как в начальной школе, так и среднем звене и старших классах. мультиагентный моделирование информатика школа
Среда программирования NetLogo может служить, для моделирования ситуаций и феноменов, происходящих в природе и обществе. NetLogo удобно использовать для моделирования сложных, развивающихся во времени систем. Среда содержит библиотеку уже готовых модулей описывающих процессы, происходящие в живой и неживой природе, их можно изучать как некую изолированную систему для понимания сущности происходящих процессов или на их основе знакомится с синтаксисом встроенного языка программирования. Мы рекомендуем использовать NetLogo на уроках информатики в старших классах при изучении темы «Компьютерное моделирование» или на факультативных занятиях. В основе моделирования в среде NetLogo лежит развитие познавательных навыков учащихся, умений самостоятельно конструировать свои знания и ориентироваться в информационном пространстве, развитие критического мышления.
Изначально NetLogo был разработан как приложение для учебных занятий, однако сейчас им пользуются не только студенты, но и тысячи исследователей. Скачать последнюю версию можно по адресу https://ccl.northwestern.edu/netlogo/.
NetLogo, по своей сути, является продолжением языка Лого. В традиционном языке Лого ученики дают инструкции одному исполнителю - агенту «черепашке». В мультиагентном языке команды можно отдавать сотням и тысячам черепашек, программируя их способ поведения и взаимодействия друг с другом. Кроме подвижных «черепашек» в языке присутствуют «пятна», на которые поделена вся плоская поверхность мира. «Черепашки» передвигаются по «пятнам» и могут взаимодействовать как друг с другом, так и с «пятнами».
Вселенная NetLogo строится из агентов. Агенты выполняют инструкции оператора. Каждый агент выполняет свою собственную деятельность, но при этом все агенты работают параллельно и реагируют друг на друга. Оператор, он же создатель моделей может давать указания сотням и тысячам независимых агентов действующим параллельно. В NetLogo определены четыре типа агентов: «черепахи» (turtles), «пятна» (patches), «связи» (links), и «наблюдатель» (observer).
Рассмотрим интерфейс среды (рис.1) и основные базовые операции, с которыми можно познакомить школьников.
Рис.1 - Интерфейс Netlogo
Интерфейс среды состоит из следующих компонентов:
· главное меню позволяющее получить доступ ко всем встроенным функциям;
· три вкладыша основной части окна : «Интерфейс» (Interface) - для создания интерфейса приложения (кнопки, рычаги, мониторы и т.п), «Информация» (Information) - для тестового описания основных блоков созданного приложения, «Код» (Procedures) - для ввода программного кода;
· дисплей (окно, отображающее действия, которые производят агенты во вселенной NetLogo)
· командный центр (Command center) с командной строкой для ввода команд от имени конкретного агента.
Команды можно отдавать через командный центр или через специальный программный код в разделе «Код». Опишем командую через наблюдателя, которая выполнит простейшую арифметическую операцию и выведет результат в командном центре. Для этого используем оператор «Show» (рис.2)
Рис. 2 - Простейшая арифметическая операция
В следующем примере вычислим косинус 45 градусов (рис.3).
Рис. 3 - Вычисление косинуса 45 градусов
Через командный центр можно давать команды и всем остальным агентам. Для этого в строке написания команды необходимо изменить имя агента, через которого будут подаваться приказы. В следующем примере через наблюдателя подается команда всем «пятнам» перекрасится в красный цвет (рис.4).
Рис. 4 - Команда смены цвета «пятен»
Обращение идет снова через агента-наблюдателя. Дается команда ask patches (сказать агентам-пятнам), в квадратных скобках пишутся уже команды, которые должны исполнить все «пятна». В нашем случае это команда set pcolor red (установить для «пятен» цвет красный).
Обратится к агентам-пятнам можно и напрямую от имени самих «пятен», для этого в командной строке меняют исполнителя команд на patches (рис. 5).
Рис. 5 - Прямое обращение о смене цвета агентам-пятнам
Давать команды можно и отдельным агентам-пятнам, определяя их по координатам мира. Система координат, при этом устанавливается в отдельном настроечном окне, для его вызова на вкладыше «Интерфейс» (Interface) необходимо нажать кнопку «Установка (Setting)». На рисунке 6 дается команда пятнам с координатами (0,0) и (1,0) изменить цвет.
Рис.6 - Обращение к конкретным агентам-пятнам
Главным исполнителем в среде является агент-черепашка. На рис. 7 представлены три команды, которые подаются со стороны наблюдателя:
· clear-all (очистка экрана),
· create-turtels N (создать агентов-черепашек, где N определяет количество создаваемых агентов, в нашем примере это один агент),
· ask turtles (команда обращения к агентам - сказать черепашкам, при этом далее последует сама команда или команды в квадратных скобках),
· setxy 5 5 (установить координаты черепашки (5,5)).
Рис. 7 - Создание и размещение на экране агента-черепашки
Более удобно отдавать команды через процедуры (наборы команд) активизирующих их выполнение при нажатии определенных для них кнопок интерфейса. Создадим кнопку «Setup». На вкладыше «Interface» в списке выберем кнопку («Кнопка» или «Button»), для установки выбирается кнопка «зеленый плюс» («Добавить» или «Add»). В появившемся окне пишут имя команды (процедуры) которую должна активизировать кнопка (рис. 8).
Рис. 8 - Создание кнопки
После создания кнопки, имя кнопки раскрашивается в красный цвет в связи с тем, что код процедуры для данной кнопки еще не определен (рис.9).
Рис. 9 - Кнопка на вкладыше интерфейса
Приведем пример простейшей программы для среды мультиагентного программирования. Программа должна будет смоделировать поведение во время эпидемии, в частности:
· Среди множества здоровых черепашек (белые), появится одна больная (красная).
· При встрече здоровой черепашки с больной происходит заражение.
· У больных черепашек силы уменьшаются, а у здоровых возрастают.
· Когда силы больной черепашки на нуле то она исчезает.
На данном примере можно изучить со школьниками основные синтаксические конструкции встроенного языка программирования в среде NetLogo: определение переменных, процедуры, ветвления, передвижения объектов по миру NetLogo.
Кнопка «Setup» должна будет устанавливать первоначальные настройки популяции. Процесс перемещения черепашек будет активизировать еще одна кнопка «Go». Для того, чтобы кнопка «Go» - циклично повторяла свой код (который может быть прерван повторным нажатием на кнопку), при создании кнопки отметим галочкой пункт «Всегда». Для процедур определен следующий синтаксис:
To ИмяПроцедуры
ТелоПроцудуры
End
Создадим код, в котором при нажатии на кнопку «Setup» на экране возникнут 11 черепашек в точке (0,0), при нажатии на кнопку «Go» они все будут перемещается (рис.10).
Рис. 10 - Программный код
Результат исполнения кода представлен на рисунке 11.
Рис. 11 - Результат исполнения кода, отражающий визуально перемещение агентов-черепашек
Проведем редактирование кода (рис.12). При нажатии на кнопку «Setup»: будут созданы 30 черепашек, расположение каждой из них будет выбрано случайным образом, все агенты раскрасятся в белый цвет, черепашка с индексом «0» будет перекрашена в красный цвет (больная черепашка).
При нажатии на кнопку «Go»: начнется движение черепашек, происходит обращение к черепашкам, раскрашенным в красный цвет - если они встречают другую черепаху, та должна поменять цвет на красный (заражение).
Рис. 12 - Программный код
Запустив приложение, мы увидим, как красные черепашки будут перекрашивать при встрече белых черепашек (рис.13).
Рис. 13 - Результат работы приложения
Усовершенствуем код (рис. 14). Добавим переменную для черепашек - energy (числовой показатель ее жизненных сил). Ее начальное значение для всех агентов сделаем равным 200. У каждой больной черепашки за итерацию цикла энергия уменьшается на единицу, у здоровых при этом она увеличивается на пять единиц.
Для данной реализации используются конструкция условия:
Ifelse (условие) [что делать если условие истинно] [что делать если условие ложно]
Для каждой черепашки определим визуальное отображение значения переменной (set label energy).
В случае если жизненные силы черепашки становятся меньше нуля, черепашка исчезает. Для данной реализации используется упрощенная конструкция условия, в которой определено только то, что нужно делать, в случае если условие выполняется:
If (условие) [что делать если условие истинно]
Рис. 14 - программный код
Внешний вид черепашки так же можно изменить. Для этого в разделе меню «Средства» - «Редактор форм черепах», вызовем редактор форм (рис. 15) в котором вы можете создать новую форму или воспользоваться одной из предложенных.
Команда:
ask turtles [ set shape "wolf" ] - данной командой в программной коде вы зададите форму черепашки по ее имени в редакторе.
Рис. 15 - Редактор форм
Таким образом, использование данной среды, в контексте практико-ориентированого обучения, на уроках информатики, повысит интерес учащихся к изучению как самой дисциплины и тем связанных с компьютерным моделированием, так и продемонстрирует межпредметные связи информатики с другими науками.
Список литературы
1. Агентное моделирование [Электронный ресурс]// Википедия - URL: https://ru.wikipedia.org/wiki/Агентное_моделирование (дата обращения 22.01.2016)
2. NetLogo [Электронный ресурс]// https://ccl.northwestern.edu/netlogo/ (дата обращения 24.04.2016)
3. Векслер В.А. Проектирование для системы дополнительного образования информационной модели специалиста [Текст]// Омский научный вестник. 2007. № 2 (56). С. 178-182.
Размещено на Allbest.ru
...Подобные документы
Метод проектов как способ организации исследовательской деятельности школьников на уроках информатики. Понятие исследовательского поведения. Разработка заданий по формированию исследовательской культуры при изучении информатики в начальной школе.
дипломная работа [898,5 K], добавлен 16.06.2015Психолого-педагогические особенности старшеклассников. Исторические аспекты введения моделирования в курс информатики. Учебные материалы в среде имитационного моделирования AnyLogic, методические аспекты их использования в углубленном курсе средней школы.
дипломная работа [3,2 M], добавлен 06.09.2017Понятие и история появления информационных технологий. Анализ эффективности использования на уроках мультимедиапроекторов, электронной доски и компьютера. Экспериментальная проверка учебного пособия с применением программ компьютерного моделирования.
дипломная работа [4,1 M], добавлен 06.07.2015Возможности и методика использования информационно–коммуникационных технологий (ИКТ) на уроках информатики. Особенности методов решения логических задач. Методика обучения школьников решению логических задач на уроках информатики с использование ИКТ.
курсовая работа [39,2 K], добавлен 09.06.2010Пассивные и активные методы обучения на уроках информатики. Разработка план-конспекта с применением активных и пассивных методов обучения на уроках информатики. Выбор метода обучения школьников на уроках информатики, основные методики преподавания.
курсовая работа [2,2 M], добавлен 25.09.2011Развитие мышления учащихся. История возникновения игр. Основные психолого–педагогические особенности организации учебной деятельности учащихся 5–6 классов с помощью развивающих игр на уроках информатики. Описание игр, применяемых на уроках информатики.
дипломная работа [3,4 M], добавлен 21.04.2011Структура и содержание образовательного процесса. Современные формы работы на уроках "Информатика и ИКТ". Технология проектного обучения в современной школе. Обоснование выбора различных методов диагностики проведения проектов на уроках информатики.
курсовая работа [189,8 K], добавлен 15.07.2015Анализ современного педагогического опыта по решению проблемы активизации познавательной деятельности школьников на уроках информатики. Разработка дидактического обеспечения активизации познавательной деятельности при изучении темы "Текстовый редактор".
дипломная работа [100,2 K], добавлен 16.06.2014Подходы к раскрытию понятий "информационная модель", "информационное моделирование". Моделирование знаний в курсе информатики. Требования к знаниям и умениям учащихся по линии формализации и моделирования. Планирование урока информатики в средней школе.
дипломная работа [200,4 K], добавлен 23.05.2008Анализ существующих методик преподавания информатики в начальной школе. Моделирование дидактической системы формирования логической культуры мышления у младших школьников на основе решения логических задач. Экспериментальное исследование ее эффективности.
дипломная работа [1,1 M], добавлен 10.03.2012Изучение истории возникновения метода проектов и рассмотрение его роли в деятельности школьников. Характеристика исследовательских, творческих, приключенческих и информационных проектов. Результаты проектной деятельности учителя информатики в школе.
курсовая работа [1,1 M], добавлен 07.05.2012Понятие "занимательность", рассмотрение типов занимательных задач и их применение на уроках информатики в пятом классе, методика использования на уроке: особенности тематического планирования, начальный уровень обучения, примеры выполнения заданий.
курсовая работа [3,2 M], добавлен 27.11.2010Специфика использования наглядных методов обучения в начальных классах. Применение современных мультимедийных средств, информационных и коммуникационных технологий на уроках информатики. Обеспечение электронным учебным материалом на занятиях в школе.
дипломная работа [2,0 M], добавлен 05.01.2014Теоретические основы моделирования. Моделирование как учебная задача. Соотношение наглядности и моделирования в обучении. Орфографическая работа в начальной школе. Приемы повышения орфографической грамотности с помощью моделирования.
курсовая работа [213,4 K], добавлен 06.12.2006Возрастные особенности ребёнка младшего школьного возраста. Информатика как важнейший компонент современного общего образования. Специфика компьютерного обучения младших школьников. Виды дидактических игр. Разбор почты и игровое проектирование.
дипломная работа [710,0 K], добавлен 03.07.2015Понятие коммуникативных универсальных учебных действий, возможности курса информатики для их формирования. Развитие умения учиться как первого шага к самообразованию и самовоспитанию у младших школьников; создание условий для общения, сотрудничества.
курсовая работа [34,4 K], добавлен 20.06.2014Основы использования проектных технологий на уроках информатики. Преимущества проектного метода в преподавании, виды проектов. Организация проектной деятельности по образовательным линиям программы базового курса, ее использование в старших классах.
дипломная работа [93,0 K], добавлен 17.04.2012Характеристика традиционных форм педагогического контроля. Виды тестов на уроке информатики и ИКТ, эффективность их применения. Типология тестовых заданий для пропедевтического курса информатики. Организация тестового контроля на уроках в 3 классе.
курсовая работа [65,1 K], добавлен 16.04.2014Теоретические аспекты дистанционных технологий, как средства развития алгоритмической культуры школьников на уроках информатики. Характеристика возможностей и методических рекомендаций по использованию дистанционных технологий на уроках информатики.
курсовая работа [62,2 K], добавлен 08.07.2010Понятие и классификация методов обучения. Специфика использования наглядных методов обучения в начальных классах школы. Описание опыта работы по использованию наглядных методов на уроках информатики в начальной школе на примере МОУ "ООШ п. Восточный".
дипломная работа [510,9 K], добавлен 14.01.2014