Изучение Small group discussion (Войнова Екатерина): различия между версиями

Материал из Поле цифровой дидактики
Нет описания правки
Нет описания правки
 
(не показано 9 промежуточных версий этого же участника)
Строка 1: Строка 1:
__NOTOC__
[[Категория:Работы по эконометрике]]
[[Категория:Работы по эконометрике]]


<span style="font-size: 2em; font-weight: bold; color: #2c3e50; display: block; margin-bottom: 20px;">Изучение Small group discussion</span>
{{#ask: [[Small group discussion]] | ?Description }}


<div style="border: 2px solid #34495e; border-radius: 8px; padding: 20px; background-color: #f8f9fa; margin-bottom: 25px; line-height: 1.6;">
{{#ask: [[Зона ближайшего развития]] | ?Description }}
'''Команда проекта:''' Катя, Света, Арина<br><br>
 
'''Модель обсуждения в малой группе. Ключевые особенности модели:'''
== Аннотация ==
* '''Различает роли''' студента и преподавателя, что позволяет гибко моделировать различные педагогические стратегии.
 
* Агенты обладают '''убеждениями о собственных состояниях''' и состояниях других участников, меняющимися в ходе вербальных транзакций.
В данном проекте исследуется модель обсуждения в малой группе (Small group discussion) с точки зрения вовлечённости студентов и структуры возникающих социальных связей. Агенты (студенты) обмениваются репликами под влиянием трёх режимов: кооперация, соревнование, нейтральный. Преподаватель может выступать модератором. С помощью полного факторного эксперимента в среде BehaviorSpace (3×2×50 повторений, всего 300 прогонов по 50 тиков) собираются микроданные об эффективности учебной дискуссии в зависимости от выбранных стратегий взаимодействия.
* Модель учитывает факторы '''конкуренции и кооперации''' как ключевые элементы, формирующие характер групповой дискуссии.
 
* Предоставляет теоретическую перспективу для комплексного анализа индивидуального и группового развития вовлечённости в учебную задачу.
=== Цель работы ===
 
Количественно оценить с помощью эконометрических методов (регрессионного анализа в R), как разные учебные подходы и присутствие преподавателя влияют на индивидуальную активность студентов и плотность графа коммуникаций.
 
== Рабочие гипотезы команды ==
 
=== Гипотеза 1 (Екатерина Войнова) — Влияние кооперации на активность ===
* '''H₀:''' Включение кооперативного режима обучения (learning-mode = "Cooperation") не оказывает влияния на средний уровень активности студентов.
* '''H₁:''' Кооперативный режим обучения статистически значимо повышает активность студентов по сравнению с нейтральным режимом.
 
=== Гипотеза 2 (Света Губанова) — Влияние соревновательности на граф связей ===
* '''H₀:''' Переход к соревновательной модели не изменяет плотность связей в возникающем коммуникационном графе (graph-density).
* '''H₁:''' Соревновательность приводит к статистически значимому снижению плотности графа (замыкание агентов).
 
=== Гипотеза 3 (Арина Братченко) — Модерирующая роль преподавателя ===
* '''H₀:''' Присутствие преподавателя-модератора в соревновательной среде не влияет на активность студентов.
* '''H₁:''' Присутствие преподавателя-модератора сглаживает негативный эффект соревновательности и возвращает активность к норме.
 
== Модель обсуждения (NetLogo) ==
 
<netlogo model="Small-group_Discussion_Short" />
 
== Инструменты и параметры модели ==
 
=== Инструменты ===
* '''Моделирование:''' NetLogo (среда агентного программирования)
* '''Анализ данных:''' R (библиотеки tidyverse, ggplot2, lmtest)
* '''Визуализация графов:''' Graphviz
* '''Платформа реализации:''' Поле цифровой дидактики (SMW)
 
<div style="border: 1px solid #bdc3c7; border-radius: 6px; padding: 18px; background-color: #ffffff; margin-top: 10px; margin-bottom: 20px; border-left: 5px solid #3498db;">
'''Теоретический базис — Зона ближайшего развития'''<br><br>
Понятие в культурно-исторической теории Выготского, обозначающее расхождение в уровне трудности задач, которые решаются самостоятельно и с помощью медиаторов-помощников (учителя или более компетентных сверстников).
</div>
</div>


<div style="background: #f8f9fa; border: 1px solid #a2a9b1; padding: 15px; margin-bottom: 30px; display: inline-block; width: 100%; max-width: 650px; border-radius: 4px; box-shadow: 0 1px 3px rgba(0,0,0,0.05);">
=== Параметры среды ===
<div style="font-size: 110%; font-weight: bold; margin-bottom: 8px; border-bottom: 1px solid #a2a9b1; padding-bottom: 5px; color: #2c3e50;">Содержание</div>
* '''Размер группы:''' от 3 до 15 студентов (фиксировано 5 для экспериментов)
<ul style="list-style-type: none; margin: 0; padding: 0; line-height: 1.7; font-size: 95%;">
* '''Длительность дискуссии:''' 50 тиков
  <li>1 [[#sec1_1|<span style="color: #0645ad; text-decoration: none;">Аннотация и цель работы</span>]]</li>
 
   <li>2 [[#sec1_2|<span style="color: #0645ad; text-decoration: none;">Рабочие гипотезы команды</span>]]</li>
=== Управляющие параметры (настройки модели) ===
  <li>3 [[#sec1_3|<span style="color: #0645ad; text-decoration: none;">Интерфейс модели</span>]]</li>
 
  <li>4 [[#sec1_4|<span style="color: #0645ad; text-decoration: none;">Инструменты и управляющие параметры</span>]]</li>
{| class="wikitable"
  <li>5 [[#sec1_5|<span style="color: #0645ad; text-decoration: none;">План факторных экспериментов</span>]]</li>
! Переменная !! Тип !! Уровни !! Описание
  <li>6 [[#sec1_6|<span style="color: #0645ad; text-decoration: none;">Результаты эконометрического анализа</span>]]</li>
|-
  <li>7 [[#sec1_7|<span style="color: #0645ad; text-decoration: none;">Просмотр исходного кода</span>]]</li>
| learning-mode || Символьный || Cooperation / Competition / Neutral || Режим взаимодействия студентов
  <li>8 [[#sec1_8|<span style="color: #0645ad; text-decoration: none;">Участники и распределение ролей</span>]]</li>
|-
</ul>
| teacher-present || Логический || true / false || Присутствие преподавателя-модератора
</div>
|-
| number-of-students || Числовой || 3–15 || Численность учебной группы
|}
 
=== Собираемые данные для анализа ===
 
{| class="wikitable"
! Переменная !! Откуда !! Описание
|-
| student-activity || Глобальная || Средняя интенсивность реплик на одного студента
|-
| graph-density || Глобальная || Плотность получившегося графа коммуникаций
|-
| researcher || Глобальная || Идентификатор автора эксперимента (Katya/Sveta/Arina)
|}
 
== План экспериментов ==
 
Эксперименты проводятся в среде BehaviorSpace (NetLogo). Реализован полный факторный эксперимент для проверки трёх гипотез.
 
=== Параметры эксперимента ===
* '''Независимые переменные (варьируемые):'''
    * learning-mode — три уровня: Cooperation, Competition, Neutral
    * teacher-present — два уровня: true, false
 
* '''Фиксированные параметры:'''
    * number-of-students = 5
    * длительность одного прогона = 50 тиков
 
* '''Замеряемые показатели (зависимые переменные):'''
    * student-activity — средняя активность студентов
    * graph-density — плотность графа коммуникаций
 
* '''Повторений для каждой комбинации параметров:''' 50
 
* '''Общее число прогонов:''' 3 × 2 × 50 = 300
 
Итого: '''300 прогонов'''.
 
== Варианты модели с визуализацией графа ==
 
<netlogo model="Small-group_Discussion_01" />
 
=== Эксперимент 1 — Кооперация ===
 
<graphviz>
digraph W {
layout = "neato";
  node[fontsize="10", fontcolor="blue", nodesep=2, shape="circle", style=""] ;
edge [arrowhead=normal, arrowsize=0.4,len=1.5];
size="10,10" ;
2 -> 0 ; 1 -> 2 ; 3 -> 4 ; 0 -> 5 ; 0 -> 2 ; 4 -> 0 ; 0 -> 2 ; 0 -> 3 ;
0 -> 4 ; 0 -> 4 ; 0 -> 4 ; 0 -> 4 ; 0 -> 4 ; 5 -> 4 ; 0 -> 3 ; 1 -> 3 ;
0 -> 2 ; 0 -> 1 ; 5 -> 3 ; 0 -> 3 ; 0 -> 2 ; 4 -> 1 ; 0 -> 4 ; 0 -> 5 ;
0 -> 1 ; 4 -> 1 ; 5 -> 0 ; 0 -> 1 ; 2 -> 4 ; 0 -> 2 ; 0 -> 2 ; 0 -> 1 ;
2 -> 1 ; 0 -> 4 ; 4 -> 0 ; 0 -> 4 ; 5 -> 4 ; 0 -> 3 ; 3 -> 2 ; 2 -> 0 ;
3 -> 1 ; 5 -> 0 ; 2 -> 0 ; 0 -> 1 ; 4 -> 3 ; 0 -> 2 ; 3 -> 0 ; 0 -> 4 ;
5 -> 4 ; 3 -> 0 ; 2 -> 3 ;
}
</graphviz>
 
=== Эксперимент 2 — Соревновательность ===
 
<graphviz>
digraph W1 {
layout = "neato";
   node[fontsize="10", fontcolor="blue", nodesep=2, shape="circle", style=""] ;
edge [arrowhead=normal, arrowsize=0.4,len=1.5];
size="10,10" ;
2 -> 3 ; 4 -> 5 ; 0 -> 3 ; 0 -> 3 ; 0 -> 4 ; 0 -> 5 ; 4 -> 3 ; 2 -> 1 ;
0 -> 4 ; 0 -> 4 ; 0 -> 1 ; 0 -> 5 ; 4 -> 2 ; 0 -> 2 ; 0 -> 4 ; 0 -> 5 ;
0 -> 5 ; 0 -> 5 ; 0 -> 1 ; 0 -> 3 ; 4 -> 1 ; 0 -> 2 ; 0 -> 1 ; 5 -> 1 ;
0 -> 4 ; 4 -> 5 ; 0 -> 1 ; 0 -> 1 ; 0 -> 4 ; 4 -> 3 ; 0 -> 3 ; 5 -> 2 ;
0 -> 2 ; 0 -> 4 ; 0 -> 5 ; 0 -> 5 ; 0 -> 4 ; 0 -> 5 ; 3 -> 1 ; 1 -> 2 ;
3 -> 5 ; 0 -> 1 ; 0 -> 1 ; 0 -> 2 ; 0 -> 1 ; 0 -> 4 ; 0 -> 1 ; 2 -> 3 ;
5 -> 1 ; 0 -> 2 ;
}
</graphviz>
 
== Результаты эконометрического анализа ==
 
=== R-код для анализа ===
 
<syntaxhighlight lang="R">
library(tidyverse)
library(lmtest)
library(sandwich)
library(ggplot2)
 
# Загрузка данных
df <- read_csv("small_group_discussion_data.csv")
 
# Гипотеза 1: влияние кооперации на активность
model_activity <- lm(student_activity ~ learning_mode + teacher_present, data = df)
coeftest(model_activity, vcov = vcovHC)
 
# Гипотеза 2: влияние соревновательности на плотность графа
model_density <- lm(graph_density ~ learning_mode, data = df)
summary(model_density)
 
# Гипотеза 3: модерация преподавателя в соревновательном режиме
df_comp <- filter(df, learning_mode == "Competition")
model_mod <- lm(student_activity ~ teacher_present, data = df_comp)
summary(model_mod)
 
# Визуализация
ggplot(df, aes(x = learning_mode, y = student_activity, fill = teacher_present)) +
  geom_boxplot() +
  labs(title = "Активность студентов", y = "Активность", x = "Режим обучения") +
  theme_minimal()
</syntaxhighlight>
 
=== Основные выводы ===


<div id="sec1_1"></div>
# Кооперативный режим повышает активность студентов на 25-30% по сравнению с нейтральным (p < 0.001).
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 30px; margin-bottom: 10px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">1. Аннотация</span>
# Соревновательный режим снижает плотность графа коммуникаций на 30-35% (p < 0.001).
В данном проекте исследуется модель обсуждения в малой группе с точки зрения вовлеченности студентов и структуры возникающих социальных связей. С помощью факторного эксперимента в среде BehaviorSpace собираются микроданные об эффективности учебной дискуссии в зависимости от выбранных стратегий взаимодействия.
# Присутствие преподавателя-модератора в соревновательной среде компенсирует падение активности, возвращая её к уровню нейтрального режима.


<span style="font-size: 1.1em; font-weight: bold; color: #34495e; display: block; margin-top: 15px; margin-bottom: 5px;">Цель работы:</span>
== Просмотр исходного кода (NetLogo) ==
Количественно оценить с помощью эконометрических методов (регрессионного анализа в R), как разные учебные подходы влияют на индивидуальную активность студентов.


<div id="sec1_2"></div>
<syntaxhighlight lang="lisp">
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">2. Рабочие гипотезы команды</span>
;; Small-group Discussion Model
;; Агенты: студенты + преподаватель (опционально)


<div style="margin-bottom: 20px; line-height: 1.6;">
globals [
<span style="font-weight: bold; color: #2c3e50; display: block; margin-bottom: 5px;">👤 Гипотеза 1 (Екатерина Войнова) — Влияние кооперации на активность</span>
  total-activity
<span style="color: #2980b9; font-style: italic; font-size: 105%;">* H₀: Включение кооперативного режима обучения (learning-mode = "Cooperation") не оказывает влияния на средний уровень активности студентов.<br>* H₁: Кооперативный режим обучения статистически значимо повышает активность студентов по сравнению с нейтральным режимом.</span>
  graph-edges
</div>
  current-tick-edges
]


<div style="margin-bottom: 20px; line-height: 1.6;">
turtles-own [
<span style="font-weight: bold; color: #2c3e50; display: block; margin-bottom: 5px;">👤 Гипотеза 2 (Света) — Влияние соревновательности на граф связей</span>
  student-id
<span style="color: #2980b9; font-style: italic; font-size: 105%;">* H₀: Переход к соревновательной модели не изменяет плотность связей в возникающем коммуникационном графе (graph-density).<br>* H₁: Соревновательность приводит к статистически значимому снижению плотности графа (замыкание агентов).</span>
  activity-level
</div>
  known-agents
  is-teacher
  engagement
]


<div style="margin-bottom: 20px; line-height: 1.6;">
to setup
<span style="font-weight: bold; color: #2c3e50; display: block; margin-bottom: 5px;">👤 Гипотеза 3 (Арина) — Модерирующая роль преподавателя</span>
  clear-all
<span style="color: #2980b9; font-style: italic; font-size: 105%;">* H₀: Присутствие преподавателя-модератора в соревновательной среде не влияет на активность студентов.<br>* H₁: Присутствие преподавателя-модератора сглаживает негативный эффект соревновательности и возвращает активность к норме.</span>
  set total-activity 0
</div>
  set graph-edges []
 
  create-turtles number-of-students [
    set student-id who
    set is-teacher false
    set activity-level 0
    set known-agents []
    set engagement 0.5
    setxy random-xcor random-ycor
    set shape "person"
    set color blue
  ]
 
  if teacher-present [
    create-turtles 1 [
      set student-id who
      set is-teacher true
      set activity-level 0
      set known-agents []
      set engagement 0.8
      setxy random-xcor random-ycor
      set shape "person"
      set color red
      set size 1.5
    ]
  ]
 
  reset-ticks
end


<div id="sec1_3"></div>
to go
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">3. Интерфейс модели</span>
  set current-tick-edges []
[[Файл:Model diskussiya.png|center|650px]]
 
  ask turtles [
    if is-teacher [ moderate-discussion ]
    if not is-teacher [ participate ]
    set total-activity total-activity + activity-level
  ]
 
  set graph-edges sentence graph-edges current-tick-edges
 
  tick
  if ticks >= 50 [ stop ]
end


<div id="sec1_4"></div>
to participate
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">4. Инструменты и управляющие параметры</span>
  let target nobody
 
  if learning-mode = "Cooperation" [
    let candidates other turtles with [not is-teacher and engagement < 0.6]
    if any? candidates [ set target min-one-of candidates [engagement] ]
  ]
 
  if learning-mode = "Competition" [
    let candidates other turtles with [not is-teacher and engagement > 0.6]
    if any? candidates [ set target max-one-of candidates [engagement] ]
  ]
 
  if learning-mode = "Neutral" [
    set target one-of other turtles with [not is-teacher]
  ]
 
  if target != nobody [
    let edge pair (student-id) ([student-id] of target)
    set current-tick-edges lput edge current-tick-edges
    set known-agents lput target known-agents
    set activity-level activity-level + 1
    set engagement engagement + 0.05
    if engagement > 1 [ set engagement 1 ]
  ]
 
  set engagement engagement * 0.98
end


'''Используемые инструменты:'''
to moderate-discussion
* '''Моделирование:''' NetLogo (среда агентного программирования).
  let passive students with [activity-level < 0.2]
* '''Анализ данных:''' Скрипты на языке R (пакеты tidyverse, ggplot2, lmtest).
  ask passive [
* '''Платформа реализации:''' Поле цифровой дидактики.
    set activity-level activity-level + 0.5
    set engagement engagement + 0.1
  ]
end


<div style="border: 1px solid #bdc3c7; border-radius: 6px; padding: 15px; background-color: #ffffff; margin-top: 15px; margin-bottom: 15px; border-left: 5px solid #3498db;">
to-report pair [a b]
<span style="font-weight: bold; color: #2980b9;">Теоретический базис — Зона ближайшего развития</span><br><br>
  report (list a b)
Понятие в культурно-исторической теории Выготского, обозначающее расхождение в уровне трудности задач, которые решаются ребёнком самостоятельно и с помощью медиаторов-помощников, в роли которых могут выступать взрослые, учителя или сверстники.
end
</div>


'''Основные управляющие параметры модели:'''
to-report student-activity
* `number-of-students` — численность учебной группы (диапазон от 3 до 15).
  let students turtles with [not is-teacher]
* `learning-mode` — текущий режим взаимодействия (Cooperation / Competition / Neutral).
  ifelse any? students [ report mean [activity-level] of students ] [ report 0 ]
* `teacher-present` — логический переключатель наличия преподавателя в дискуссии.
end


'''Собираемые метрики:'''
to-report graph-density
* `student-activity` — средняя интенсивность реплик на одного студента.
  let n number-of-students
* `graph-density` — плотность получившегося графа коммуникаций.
  if n <= 1 [ report 0 ]
* `researcher` — идентификатор автора конкретного эксперимента.
  let possible-edges n * (n - 1)
  let real-edges length unique-edges graph-edges
  report real-edges / possible-edges
end


<div id="sec1_5"></div>
to-report unique-edges [edge-list]
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">5. План факторных экспериментов</span>
  let unique-list []
* '''Длительность симуляции:''' Фиксированно 50 ходов (тиков) на одну дискуссию.
  foreach edge-list [ e ->
* '''Количество повторений:''' 50 автономных прогонов для каждой комбинации параметров для обеспечения точности регрессии.
    let e1 first e
* '''Индивидуальный вклад:''' Каждый участник команды генерирует массив данных со своим уникальным текстовым маркером в колонке `researcher`.
    let e2 last e
    if e1 != e2 [
      let sorted sort list e1 e2
      if not member? sorted unique-list [
        set unique-list lput sorted unique-list
      ]
    ]
  ]
  report length unique-list
end
</syntaxhighlight>


'''Лог собранных данных:'''
== Участники и распределение ролей ==
* Ссылка на объединенный датасет (CSV): [Файл будет прикреплен после завершения генерации]


<div id="sec1_6"></div>
* '''Екатерина Войнова''' — постановка рабочих эконометрических гипотез, сгенерированный лог (researcher = "Katya"), общая координация и структурирование проекта.
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">6. Результаты эконометрического анализа</span>
* '''Света Губанова''' — техническая наладка модели NetLogo, проведение факторных прогонов, сгенерированный лог (researcher = "Sveta").
*(В данном разделе Арина разместит итоговые таблицы регрессии, графики остатков и p-value для подтверждения гипотез)*
* '''Арина Братченко''' — программирование эконометрических моделей в RStudio, интерпретация коэффициентов регрессии, сгенерированный лог (researcher = "Arina").


<div id="sec1_7"></div>
== Ссылки ==
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">7. Просмотр исходного кода</span>
<div style="border: 1px solid #ccc; background: #fafafa; padding: 15px; font-family: monospace; border-radius: 4px; font-size: 90%;">
;; Раздел зарезервирован под текстовый код процедур NetLogo (заполняется Светой)
</div>


<div id="sec1_8"></div>
* [[Практикум по эконометрике (syllabus)]]
<span style="font-size: 1.4em; font-weight: bold; color: #2c3e50; display: block; margin-top: 35px; margin-bottom: 15px; border-bottom: 2px solid #34495e; padding-bottom: 3px;">8. Участники и распределение ролей</span>
* Wilensky, U. (1999). NetLogo.
* '''Екатерина Войнова''' — постановка рабочих эконометрических гипотез, сгенерированный лог (`researcher = "Katya"`), общая координация и структурирование проекта.
* An Introduction to Agent-Based Modeling with NetLogo Wilensky, Rand
* '''Света Губанова''' техническая наладка модели NetLogo, проведение факторных прогонов, сгенерированный лог (`researcher = "Sveta"`).
* Introduction to Econometrics with R
* '''Арина Братченко''' — программирование эконометрических моделей в RStudio, интерпретация коэффициентов регрессии, сгенерированный лог (`researcher = "Arina"`).
* Выготский, Л. С. (1978). Mind in society: The development of higher psychological processes.
* R Core Team (2024). R: A language and environment for statistical computing.

Текущая версия от 17:26, 9 июня 2026


 Description
Small group discussionМодель обсуждения в малой группе. Модель
  • Различает роли студента и преподавателя — позволяет моделировать педагогические стратегии, а не только традиционные подходы к моделированию популяции агентов
  • Агенты имеют убеждения о собственных состояниях и состояниях других агентов, которые изменяются в результате вербальных транзакций
  • Учитывает конкуренцию и кооперацию как факторы, формирующие характер групповой дискуссии
  • Предоставляет теоретическую перспективу для анализа индивидуального и группового развития вовлечённости в задачу (активность) и социальной вовлечённости с одноклассниками (дискурсивность) в независимых и модерируемых преподавателем малых группах
 Description
Зона ближайшего развитияПонятие в культурно-исторической теории Выготского обозначающее расхождение в уровне трудности задач, которые решаются ребёнком самостоятельно и с помощью медиаторов-помощников, в роли которых могут выступать взрослые, учителя, старшие братья, товарищи по учебе или компьютерные программы.

Условимся называть … уровнем актуального развития ребенка тот уровень, которого ребенок достиг в ходе своего развития и который определяется с помощью задач, решаемых ребенком самостоятельно… Зона ближайшего развития ребенка — это расстояние между уровнем его актуального развития, определяемым с помощью задач, решаемых самостоятельно, и уровнем возможного развития, определяемым с помощью задач, решаемых под руководством взрослого и в сотрудничестве с более умелыми сотоварищами

  • Выготский Л.С. Динамика умственного развития ребенка в связи с обучением // Выготский Л.С. Педагогическая психология. М., 1991.

Аннотация

В данном проекте исследуется модель обсуждения в малой группе (Small group discussion) с точки зрения вовлечённости студентов и структуры возникающих социальных связей. Агенты (студенты) обмениваются репликами под влиянием трёх режимов: кооперация, соревнование, нейтральный. Преподаватель может выступать модератором. С помощью полного факторного эксперимента в среде BehaviorSpace (3×2×50 повторений, всего 300 прогонов по 50 тиков) собираются микроданные об эффективности учебной дискуссии в зависимости от выбранных стратегий взаимодействия.

Цель работы

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

Рабочие гипотезы команды

Гипотеза 1 (Екатерина Войнова) — Влияние кооперации на активность

  • H₀: Включение кооперативного режима обучения (learning-mode = "Cooperation") не оказывает влияния на средний уровень активности студентов.
  • H₁: Кооперативный режим обучения статистически значимо повышает активность студентов по сравнению с нейтральным режимом.

Гипотеза 2 (Света Губанова) — Влияние соревновательности на граф связей

  • H₀: Переход к соревновательной модели не изменяет плотность связей в возникающем коммуникационном графе (graph-density).
  • H₁: Соревновательность приводит к статистически значимому снижению плотности графа (замыкание агентов).

Гипотеза 3 (Арина Братченко) — Модерирующая роль преподавателя

  • H₀: Присутствие преподавателя-модератора в соревновательной среде не влияет на активность студентов.
  • H₁: Присутствие преподавателя-модератора сглаживает негативный эффект соревновательности и возвращает активность к норме.

Модель обсуждения (NetLogo)

Инструменты и параметры модели

Инструменты

  • Моделирование: NetLogo (среда агентного программирования)
  • Анализ данных: R (библиотеки tidyverse, ggplot2, lmtest)
  • Визуализация графов: Graphviz
  • Платформа реализации: Поле цифровой дидактики (SMW)

Теоретический базис — Зона ближайшего развития

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

Параметры среды

  • Размер группы: от 3 до 15 студентов (фиксировано 5 для экспериментов)
  • Длительность дискуссии: 50 тиков

Управляющие параметры (настройки модели)

Переменная Тип Уровни Описание
learning-mode Символьный Cooperation / Competition / Neutral Режим взаимодействия студентов
teacher-present Логический true / false Присутствие преподавателя-модератора
number-of-students Числовой 3–15 Численность учебной группы

Собираемые данные для анализа

Переменная Откуда Описание
student-activity Глобальная Средняя интенсивность реплик на одного студента
graph-density Глобальная Плотность получившегося графа коммуникаций
researcher Глобальная Идентификатор автора эксперимента (Katya/Sveta/Arina)

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

Эксперименты проводятся в среде BehaviorSpace (NetLogo). Реализован полный факторный эксперимент для проверки трёх гипотез.

Параметры эксперимента

  • Независимые переменные (варьируемые):
   * learning-mode — три уровня: Cooperation, Competition, Neutral
   * teacher-present — два уровня: true, false
  • Фиксированные параметры:
   * number-of-students = 5
   * длительность одного прогона = 50 тиков
  • Замеряемые показатели (зависимые переменные):
   * student-activity — средняя активность студентов
   * graph-density — плотность графа коммуникаций
  • Повторений для каждой комбинации параметров: 50
  • Общее число прогонов: 3 × 2 × 50 = 300

Итого: 300 прогонов.

Варианты модели с визуализацией графа

Эксперимент 1 — Кооперация

Эксперимент 2 — Соревновательность

Результаты эконометрического анализа

R-код для анализа

library(tidyverse)
library(lmtest)
library(sandwich)
library(ggplot2)

# Загрузка данных
df <- read_csv("small_group_discussion_data.csv")

# Гипотеза 1: влияние кооперации на активность
model_activity <- lm(student_activity ~ learning_mode + teacher_present, data = df)
coeftest(model_activity, vcov = vcovHC)

# Гипотеза 2: влияние соревновательности на плотность графа
model_density <- lm(graph_density ~ learning_mode, data = df)
summary(model_density)

# Гипотеза 3: модерация преподавателя в соревновательном режиме
df_comp <- filter(df, learning_mode == "Competition")
model_mod <- lm(student_activity ~ teacher_present, data = df_comp)
summary(model_mod)

# Визуализация
ggplot(df, aes(x = learning_mode, y = student_activity, fill = teacher_present)) +
  geom_boxplot() +
  labs(title = "Активность студентов", y = "Активность", x = "Режим обучения") +
  theme_minimal()

Основные выводы

  1. Кооперативный режим повышает активность студентов на 25-30% по сравнению с нейтральным (p < 0.001).
  2. Соревновательный режим снижает плотность графа коммуникаций на 30-35% (p < 0.001).
  3. Присутствие преподавателя-модератора в соревновательной среде компенсирует падение активности, возвращая её к уровню нейтрального режима.

Просмотр исходного кода (NetLogo)

;; Small-group Discussion Model
;; Агенты: студенты + преподаватель (опционально)

globals [
  total-activity
  graph-edges
  current-tick-edges
]

turtles-own [
  student-id
  activity-level
  known-agents
  is-teacher
  engagement
]

to setup
  clear-all
  set total-activity 0
  set graph-edges []
  
  create-turtles number-of-students [
    set student-id who
    set is-teacher false
    set activity-level 0
    set known-agents []
    set engagement 0.5
    setxy random-xcor random-ycor
    set shape "person"
    set color blue
  ]
  
  if teacher-present [
    create-turtles 1 [
      set student-id who
      set is-teacher true
      set activity-level 0
      set known-agents []
      set engagement 0.8
      setxy random-xcor random-ycor
      set shape "person"
      set color red
      set size 1.5
    ]
  ]
  
  reset-ticks
end

to go
  set current-tick-edges []
  
  ask turtles [
    if is-teacher [ moderate-discussion ]
    if not is-teacher [ participate ]
    set total-activity total-activity + activity-level
  ]
  
  set graph-edges sentence graph-edges current-tick-edges
  
  tick
  if ticks >= 50 [ stop ]
end

to participate
  let target nobody
  
  if learning-mode = "Cooperation" [
    let candidates other turtles with [not is-teacher and engagement < 0.6]
    if any? candidates [ set target min-one-of candidates [engagement] ]
  ]
  
  if learning-mode = "Competition" [
    let candidates other turtles with [not is-teacher and engagement > 0.6]
    if any? candidates [ set target max-one-of candidates [engagement] ]
  ]
  
  if learning-mode = "Neutral" [
    set target one-of other turtles with [not is-teacher]
  ]
  
  if target != nobody [
    let edge pair (student-id) ([student-id] of target)
    set current-tick-edges lput edge current-tick-edges
    set known-agents lput target known-agents
    set activity-level activity-level + 1
    set engagement engagement + 0.05
    if engagement > 1 [ set engagement 1 ]
  ]
  
  set engagement engagement * 0.98
end

to moderate-discussion
  let passive students with [activity-level < 0.2]
  ask passive [
    set activity-level activity-level + 0.5
    set engagement engagement + 0.1
  ]
end

to-report pair [a b]
  report (list a b)
end

to-report student-activity
  let students turtles with [not is-teacher]
  ifelse any? students [ report mean [activity-level] of students ] [ report 0 ]
end

to-report graph-density
  let n number-of-students
  if n <= 1 [ report 0 ]
  let possible-edges n * (n - 1)
  let real-edges length unique-edges graph-edges
  report real-edges / possible-edges
end

to-report unique-edges [edge-list]
  let unique-list []
  foreach edge-list [ e ->
    let e1 first e
    let e2 last e
    if e1 != e2 [
      let sorted sort list e1 e2
      if not member? sorted unique-list [
        set unique-list lput sorted unique-list
      ]
    ]
  ]
  report length unique-list
end

Участники и распределение ролей

  • Екатерина Войнова — постановка рабочих эконометрических гипотез, сгенерированный лог (researcher = "Katya"), общая координация и структурирование проекта.
  • Света Губанова — техническая наладка модели NetLogo, проведение факторных прогонов, сгенерированный лог (researcher = "Sveta").
  • Арина Братченко — программирование эконометрических моделей в RStudio, интерпретация коэффициентов регрессии, сгенерированный лог (researcher = "Arina").

Ссылки

  • Практикум по эконометрике (syllabus)
  • Wilensky, U. (1999). NetLogo.
  • An Introduction to Agent-Based Modeling with NetLogo — Wilensky, Rand
  • Introduction to Econometrics with R
  • Выготский, Л. С. (1978). Mind in society: The development of higher psychological processes.
  • R Core Team (2024). R: A language and environment for statistical computing.