<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://digida.mgpu.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=CristCas</id>
	<title>Поле цифровой дидактики - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="http://digida.mgpu.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=CristCas"/>
	<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/CristCas"/>
	<updated>2026-07-14T00:05:38Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47641</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47641"/>
		<updated>2026-06-10T14:39:27Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Гипотеза 2: Влияние количества еды (стратегия «феромон + память») */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
В данном проекте исследуется механизм стигмергии (коллективного взаимодействия через метки в среде) и его конкуренция/синергия с индивидуальной памятью агентов. На примере модифицированной агентной модели «Муравьи» (NetLogo) сравниваются три стратегии поиска ресурсов:&lt;br /&gt;
* &#039;&#039;&#039;только коллективный феромон&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;только индивидуальная память&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;сочетание (феромон + память)&#039;&#039;&#039;&lt;br /&gt;
С помощью двух экспериментов в среде BehaviorSpace были собраны данные о эффективности колонии (доставленная еда) и выживаемости муравьёв. Первый эксперимент (проверка Гипотезы 1) включал 6 комбинаций параметров (3 стратегии × 2 уровня еды) с 20 повторениями (120 прогонов). Второй эксперимент (Гипотеза 2) проводился при фиксированной стратегии «феромон + память» и двух уровнях еды (3 и 6 источников) с 30 повторениями (60 прогонов). &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Цель работы ===&lt;br /&gt;
&lt;br /&gt;
Количественно оценить, даёт ли совместное использование коллективного и индивидуального опыта статистически значимое преимущество по сравнению с каждым из механизмов по отдельности.&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
=== Гипотеза 1. Сравнение механизмов: феромон, память и их сочетание ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;H₀:&#039;&#039;&#039; Не существует статистически значимой разницы в эффективности (количестве доставленной еды `total-food-count`) между тремя сценариями: использованием только коллективного феромона, только индивидуальной памяти и их сочетанием.&lt;br /&gt;
* &#039;&#039;&#039;H₁:&#039;&#039;&#039; Сценарий, сочетающий коллективный феромон и индивидуальную память, обеспечивает статистически значимо более высокую эффективность, чем каждый из этих механизмов по отдельности.&lt;br /&gt;
&lt;br /&gt;
=== Гипотеза 2. Влияние количества источников еды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;H₀:&#039;&#039;&#039; Увеличение количества источников еды (с 3 до 6) не приводит к статистически значимому изменению эффективности колонии (`total-food-count`) и выживаемости муравьёв (`count turtles`).&lt;br /&gt;
* &#039;&#039;&#039;H₁:&#039;&#039;&#039; Увеличение количества источников еды приводит к статистически значимому росту эффективности колонии и выживаемости муравьёв, а также может влиять на величину преимущества от использования индивидуальной памяти.&lt;br /&gt;
&lt;br /&gt;
== Модель ==&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Memory_Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель (.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
== Инструменты и параметры модели ==&lt;br /&gt;
&lt;br /&gt;
=== Инструменты ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модель Ants с добавленной памятью)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных:&#039;&#039;&#039; R (библиотеки tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Гнездо:&#039;&#039;&#039; центр (0,0), радиус 5&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра, 3 или 6 кучек&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Управляющие параметры (настройки модели) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Тип !! Диапазон !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `population` || Slider || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `diffusion-rate` || Slider || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `evaporation-rate` || Slider || 0–20 || Скорость испарения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `use-memory?` || Switch || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| `more-food?` || Switch || On/Off || Дополнительные источники еды (3 → 6)&lt;br /&gt;
|-&lt;br /&gt;
| `memory-threshold` || Slider || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Собираемые данные для анализа ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Откуда !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `total-food-count` || Глобальная || Общее количество доставленной еды&lt;br /&gt;
|-&lt;br /&gt;
| `count turtles` || Встроенная || Количество живых муравьёв&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&lt;br /&gt;
== План экспериментов ==&lt;br /&gt;
&lt;br /&gt;
Эксперименты проводятся в среде BehaviorSpace (NetLogo). Реализованы два независимых эксперимента для проверки двух гипотез.&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
=== Эксперимент 1 (Гипотеза 1): Сравнение трёх стратегий ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Независимые переменные:&#039;&#039;&#039;&lt;br /&gt;
** &amp;lt;code&amp;gt;use-memory?&amp;lt;/code&amp;gt; — три сценария: только феромон, только память, феромон+память&lt;br /&gt;
** &amp;lt;code&amp;gt;more-food?&amp;lt;/code&amp;gt; — два уровня: 3 источника, 6 источников&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Фиксированные параметры:&#039;&#039;&#039;&lt;br /&gt;
** &amp;lt;code&amp;gt;population = 50&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;memory-threshold = 100&amp;lt;/code&amp;gt;&lt;br /&gt;
** время прогона = 1000 тиков&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Повторений:&#039;&#039;&#039; 20&lt;br /&gt;
* &#039;&#039;&#039;Всего прогонов:&#039;&#039;&#039; 6 комбинаций × 20 = &#039;&#039;&#039;120&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
=== Эксперимент 2 (Гипотеза 2): Влияние количества еды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Фиксированная стратегия:&#039;&#039;&#039; феромон + память (&amp;lt;code&amp;gt;use-memory? = true&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;evaporation-rate = 10&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;diffusion-rate = 50&amp;lt;/code&amp;gt;)&lt;br /&gt;
* &#039;&#039;&#039;Независимая переменная:&#039;&#039;&#039; &amp;lt;code&amp;gt;more-food?&amp;lt;/code&amp;gt; — два уровня: 3 источника, 6 источников&lt;br /&gt;
* &#039;&#039;&#039;Фиксированные параметры:&#039;&#039;&#039; те же (&amp;lt;code&amp;gt;population = 50&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;memory-threshold = 100&amp;lt;/code&amp;gt;, 1000 тиков)&lt;br /&gt;
* &#039;&#039;&#039;Повторений:&#039;&#039;&#039; 30&lt;br /&gt;
* &#039;&#039;&#039;Всего прогонов:&#039;&#039;&#039; 2 комбинации × 30 = &#039;&#039;&#039;60&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
=== Исходные данные экспериментов ===&lt;br /&gt;
&lt;br /&gt;
Сам эксперимент и CSV-файлы с результатами всех прогонов в BehaviorSpace:&lt;br /&gt;
&lt;br /&gt;
- GitHub:[https://github.com/cristycrastys-source/Labs_my_beloved/tree/fed1a5b206bfe3456bfe9520b9b298f4c4c33946/Econometrics/%D0%AD%D0%BA%D1%81%D0%BF%D0%B5%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D1%82%D1%8B]&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&lt;br /&gt;
=== Гипотеза 1: Сравнение трёх стратегий ===&lt;br /&gt;
&lt;br /&gt;
Был проведён полный факторный эксперимент (6 комбинаций, 20 повторений, 120 прогонов). Для каждой стратегии измерялась доставленная еда (total-food-count) и выживаемость муравьёв (count turtles). Анализ проведён в R.&lt;br /&gt;
&lt;br /&gt;
[[Файл:g1_food.png|thumb|center|600px|Рисунок 1. Доставленная еда по трём стратегиям (3 источника)]]&lt;br /&gt;
&lt;br /&gt;
==== Доставленная еда ====&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ANOVA (3 источника еды):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
              Df  Sum Sq Mean Sq F value Pr(&amp;gt;F)    &lt;br /&gt;
strategy       2 3885725 1942863    3797 &amp;lt;2e-16 ***&lt;br /&gt;
Residuals   1137  581745     512                   &lt;br /&gt;
&lt;br /&gt;
Различия между стратегиями статистически значимы (p &amp;lt; 0.001).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;t-тест: феромон+память vs только феромон (3 источника)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
t = -80.886, df = 774.9, p-value &amp;lt; 2.2e-16&lt;br /&gt;
&lt;br /&gt;
Средняя доставленная еда:&lt;br /&gt;
- Только феромон: 88.3&lt;br /&gt;
- Феромон + память: 204.1&lt;br /&gt;
&lt;br /&gt;
Разница: 115.8 единиц еды (95% доверительный интервал: от 112.9 до 118.6).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Вывод по Гипотезе 1:&#039;&#039;&#039; Гипотеза подтверждается. Комбинация феромона и памяти обеспечивает статистически значимо более высокую эффективность поиска еды по сравнению с использованием только феромона (p &amp;lt; 0.001).&lt;br /&gt;
&lt;br /&gt;
==== Выживаемость ====&lt;br /&gt;
&lt;br /&gt;
[[Файл:g1_survival.png|thumb|center|600px|Рисунок 2. Выживаемость муравьёв по трём стратегиям (6 источников)]]&lt;br /&gt;
&lt;br /&gt;
Хотя основная гипотеза проверялась на доставленной еде, анализ выживаемости муравьёв дал интересные дополнительные результаты.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Средняя выживаемость (count turtles) при 6 источниках еды:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
| Стратегия | Средняя выживаемость |&lt;br /&gt;
|-----------|---------------------|&lt;br /&gt;
| Только память | 41.2 |&lt;br /&gt;
| Феромон + память | 23.1 |&lt;br /&gt;
| Только феромон | 8.1 |&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ANOVA для выживаемости (3 источника):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
              Df Sum Sq Mean Sq F value Pr(&amp;gt;F)    &lt;br /&gt;
strategy       2  18721    9360   627.6 &amp;lt;2e-16 ***&lt;br /&gt;
Residuals   1137  16957      15                   &lt;br /&gt;
&lt;br /&gt;
Различия также статистически значимы. Наибольшая выживаемость наблюдается при стратегии «Только память» с 6 источниками еды, что может объясняться более эффективным использованием энергии благодаря запомненным координатам еды.&lt;br /&gt;
&lt;br /&gt;
=== Гипотеза 2: Влияние количества источников еды ===&lt;br /&gt;
&lt;br /&gt;
Для проверки влияния количества еды проведён отдельный эксперимент при фиксированной стратегии «Феромон + память» (30 повторений, 2 комбинации: 3 и 6 источников, всего 60 прогонов).&lt;br /&gt;
&lt;br /&gt;
[[Файл:g2_food.png|thumb|center|600px|Рисунок 3. Доставленная еда при 3 и 6 источниках]]&lt;br /&gt;
&lt;br /&gt;
==== Доставленная еда ====&lt;br /&gt;
&lt;br /&gt;
Средняя доставленная еда:&lt;br /&gt;
- 3 источника: 204.5&lt;br /&gt;
- 6 источников: 308.9&lt;br /&gt;
&lt;br /&gt;
t-тест: t = -17.59, df = 41.46, p &amp;lt; 0.001&lt;br /&gt;
&lt;br /&gt;
Разница: 104.4 единицы еды (95% доверительный интервал: от 92.4 до 116.4)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Вывод по Гипотезе 2:&#039;&#039;&#039; Увеличение количества источников еды с 3 до 6 приводит к статистически значимому росту доставленной еды (p &amp;lt; 0.001).&lt;br /&gt;
&lt;br /&gt;
==== Выживаемость ====&lt;br /&gt;
&lt;br /&gt;
[[Файл:g2_turtles.png|thumb|center|600px|Рисунок 4. Выживаемость при 3 и 6 источниках]]&lt;br /&gt;
&lt;br /&gt;
Средняя выживаемость:&lt;br /&gt;
- 3 источника: 7.2 муравья&lt;br /&gt;
- 6 источников: 23.4 муравья&lt;br /&gt;
&lt;br /&gt;
t-тест: t = -11.73, df = 57.57, p &amp;lt; 0.001&lt;br /&gt;
&lt;br /&gt;
Разница: 16.2 муравья (95% доверительный интервал: от 13.4 до 18.9)&lt;br /&gt;
&lt;br /&gt;
Увеличение количества еды также значимо повышает выживаемость колонии.&lt;br /&gt;
&lt;br /&gt;
=== Демонстрация работы стратегий ===&lt;br /&gt;
&lt;br /&gt;
Для наглядной демонстрации различий в поведении муравьёв были записаны анимации (GIF) для каждого сценария. Ниже представлены выбранные прогоны, результаты которых близки к средним значениям по соответствующей стратегии.&lt;br /&gt;
&lt;br /&gt;
==== Гипотеза 1: Сравнение трёх стратегий (3 источника еды) ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;300px&amp;quot; heights=&amp;quot;225px&amp;quot; perrow=&amp;quot;3&amp;quot; caption=&amp;quot;Доставленная еда (слева направо): 103, 210, 212&amp;quot;&amp;gt;&lt;br /&gt;
Файл:pheromone_only.gif|&#039;&#039;&#039;Только феромон&#039;&#039;&#039;&amp;lt;br&amp;gt;Зелёные тропы феромона, муравьи идут по коллективному следу.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&#039;&#039;&#039;Параметры:&#039;&#039;&#039;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;use-memory? = false&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;evaporation-rate = 10&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;diffusion-rate = 50&amp;lt;/code&amp;gt;&lt;br /&gt;
Файл:memory_only.gif|&#039;&#039;&#039;Только память&#039;&#039;&#039;&amp;lt;br&amp;gt;Нет феромона, муравьи меняют цвет (жёлтый, красный, синий), идут по памяти.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&#039;&#039;&#039;Параметры:&#039;&#039;&#039;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;use-memory? = true&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;evaporation-rate = 0&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;diffusion-rate = 0&amp;lt;/code&amp;gt;&lt;br /&gt;
Файл:pheromone_memory.gif|&#039;&#039;&#039;Феромон + память&#039;&#039;&#039;&amp;lt;br&amp;gt;И феромонные тропы, и цветовая индикация памяти, максимальная эффективность.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&#039;&#039;&#039;Параметры:&#039;&#039;&#039;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;use-memory? = true&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;evaporation-rate = 10&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;diffusion-rate = 50&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Гипотеза 2: Влияние количества еды (стратегия «феромон + память») ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;300px&amp;quot; heights=&amp;quot;225px&amp;quot; perrow=&amp;quot;2&amp;quot; caption=&amp;quot;Доставленная еда: 204.5 и 308.9&amp;quot;&amp;gt;&lt;br /&gt;
Файл:three_sources.gif|&#039;&#039;&#039;3 источника еды&#039;&#039;&#039;&amp;lt;br&amp;gt;Менее интенсивное движение, меньше фиолетовых муравьёв, меньше насыщенность троп.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&#039;&#039;&#039;Параметры:&#039;&#039;&#039;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;more-food? = false&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;use-memory? = true&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;evaporation-rate = 10&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;diffusion-rate = 50&amp;lt;/code&amp;gt;&lt;br /&gt;
Файл:six_sources.gif|&#039;&#039;&#039;6 источников еды&#039;&#039;&#039;&amp;lt;br&amp;gt;Более интенсивное движение, больше фиолетовых муравьёв, выше насыщенность троп.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&#039;&#039;&#039;Параметры:&#039;&#039;&#039;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;more-food? = true&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;use-memory? = true&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;evaporation-rate = 10&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;diffusion-rate = 50&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Общий вывод ===&lt;br /&gt;
&lt;br /&gt;
Обе гипотезы подтверждены:&lt;br /&gt;
&lt;br /&gt;
1. **Гипотеза 1:** Комбинация феромона и индивидуальной памяти даёт статистически значимо более высокую эффективность доставки еды (204.1 против 88.3, p &amp;lt; 0.001).&lt;br /&gt;
&lt;br /&gt;
2. **Гипотеза 2:** Увеличение количества источников еды с 3 до 6 значимо повышает как доставленную еду (308.9 против 204.5, p &amp;lt; 0.001), так и выживаемость (23.4 против 7.2, p &amp;lt; 0.001).&lt;br /&gt;
&lt;br /&gt;
**Дополнительный вывод:** Наибольшая выживаемость наблюдается при стратегии «Только память» с 6 источниками еды (41.2 муравья). Память важна для выживания при обилии ресурсов, но для максимизации доставки еды необходимо сочетание с феромоном.&lt;br /&gt;
&lt;br /&gt;
== Просмотр кода с пояснениями ==&lt;br /&gt;
=== Полный код (.nlogo) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
* An Introduction to Agent-Based Modeling with NetLogo — [[Wilensky]], Rand [https://archive.org/details/introductiontoag0000wile/page/n507/mode/2up]&lt;br /&gt;
* Introduction to Econometrics with R — онлайн-учебник [https://www.econometrics-with-r.org/index.html]&lt;br /&gt;
* Causal Inference: The Mixtape — Cunningham [https://jwmason.org/wp-content/uploads/2021/08/Cunningham-Cuasal-Inference-the-Mixtape.pdf]&lt;br /&gt;
* Дружелюбная эконометрика — учебник [https://books.econ.msu.ru/Introduction-to-Econometrics/]&lt;br /&gt;
* NetLogo: [https://netlogo.org netlogo.org]&lt;br /&gt;
* R: [https://r-project.org r-project.org]&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] — создание и оформление страницы, разработка и модификация кода модели NetLogo, выгрузка модели на GitHub, описание кода&lt;br /&gt;
* [[Участник:Маргарита Еськова|Маргарита Еськова]] — аннотация, формирование гипотез, проведение экспериментов в BehaviorSpace, сбор и выгрузка данных на GitHub, частичное оформление&lt;br /&gt;
* [[Участник:Софронова Кира|Кира Софронова]] — формулировка статистических гипотез, анализ данных в R, визуализация результатов, интерпретация выводов, частичное оформление&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47150</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47150"/>
		<updated>2026-05-22T18:25:15Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Изменение порядка заголовков статьи&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Memory_Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель (.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
== Инструменты и параметры модели ==&lt;br /&gt;
&lt;br /&gt;
=== Инструменты ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модель Ants с добавленной памятью)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных:&#039;&#039;&#039; R (библиотеки tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Гнездо:&#039;&#039;&#039; центр (0,0), радиус 5&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра, 3 или 6 кучек&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Управляющие параметры (настройки модели) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Тип !! Диапазон !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `population` || Slider || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `diffusion-rate` || Slider || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `evaporation-rate` || Slider || 0–20 || Скорость испарения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `use-memory?` || Switch || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| `more-food?` || Switch || On/Off || Дополнительные источники еды (3 → 6)&lt;br /&gt;
|-&lt;br /&gt;
| `memory-threshold` || Slider || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Собираемые данные для анализа ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Откуда !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `total-food-count` || Глобальная || Общее количество доставленной еды&lt;br /&gt;
|-&lt;br /&gt;
| `count turtles` || Встроенная || Количество живых муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `length my-memory` || Индивидуальная || Размер памяти муравья&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&lt;br /&gt;
== План экспериментов ==&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(R-код, графики, выводы)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Просмотр кода с пояснениями ==&lt;br /&gt;
=== Полный код (.nlogo) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
* An Introduction to Agent-Based Modeling with NetLogo — Wilensky, Rand&lt;br /&gt;
* Introduction to Econometrics with R — онлайн-учебник&lt;br /&gt;
* Causal Inference: The Mixtape — Cunningham&lt;br /&gt;
* Дружелюбная эконометрика — учебник&lt;br /&gt;
* NetLogo: [https://netlogo.org netlogo.org]&lt;br /&gt;
* R: [https://r-project.org r-project.org]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:CristCas&amp;diff=47149</id>
		<title>Обсуждение участника:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:CristCas&amp;diff=47149"/>
		<updated>2026-05-22T18:13:03Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Изучение модели  ==&lt;br /&gt;
&lt;br /&gt;
Изучите модель [[Minority Game|Быть в меньшинстве]] --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 10:15, 19 февраля 2026 (MSK)&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Minority Game]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;MinorityGame&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Модель муравьев м памятью ==&lt;br /&gt;
&lt;br /&gt;
Я увидел ссылку на вашу новую модель и даже утащил её к себе, но не смог запустить и разместить.&lt;br /&gt;
Чтобы мне не разбираться с этим, попробуйте сделать следующее:&lt;br /&gt;
# сохранить модель как веб-страницу&lt;br /&gt;
# положить на Github&lt;br /&gt;
# написать мне в обсуждении &lt;br /&gt;
&lt;br /&gt;
я приду и загружу на вашу страницу. Спасибо!&lt;br /&gt;
--[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 15:47, 22 мая 2026 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Да, все получилось ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Memory_Ants&amp;quot; /&amp;gt;&lt;br /&gt;
* Поставил на страницу. Все получилось, очень рад! Просто потому что это у нас первый опыт на площадке. --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 19:43, 22 мая 2026 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Супер! ==&lt;br /&gt;
&lt;br /&gt;
Увидели, большое спасибо! 28 числа обязательно будет что показать ^^&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47148</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47148"/>
		<updated>2026-05-22T18:11:15Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Удаление старой нерабочей модели&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты и параметры модели ==&lt;br /&gt;
&lt;br /&gt;
=== Инструменты ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модель Ants с добавленной памятью)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных:&#039;&#039;&#039; R (библиотеки tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Гнездо:&#039;&#039;&#039; центр (0,0), радиус 5&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра, 3 или 6 кучек&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Управляющие параметры (настройки модели) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Тип !! Диапазон !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `population` || Slider || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `diffusion-rate` || Slider || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `evaporation-rate` || Slider || 0–20 || Скорость испарения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `use-memory?` || Switch || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| `more-food?` || Switch || On/Off || Дополнительные источники еды (3 → 6)&lt;br /&gt;
|-&lt;br /&gt;
| `memory-threshold` || Slider || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Собираемые данные для анализа ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Откуда !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `total-food-count` || Глобальная || Общее количество доставленной еды&lt;br /&gt;
|-&lt;br /&gt;
| `count turtles` || Встроенная || Количество живых муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `length my-memory` || Индивидуальная || Размер памяти муравья&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Просмотр кода с пояснениями ==&lt;br /&gt;
=== Полный код (.nlogo) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель (.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Memory_Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
* An Introduction to Agent-Based Modeling with NetLogo — Wilensky, Rand&lt;br /&gt;
* Introduction to Econometrics with R — онлайн-учебник&lt;br /&gt;
* Causal Inference: The Mixtape — Cunningham&lt;br /&gt;
* Дружелюбная эконометрика — учебник&lt;br /&gt;
* NetLogo: [https://netlogo.org netlogo.org]&lt;br /&gt;
* R: [https://r-project.org r-project.org]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47142</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47142"/>
		<updated>2026-05-22T15:13:29Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Инструменты и параметры модели&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты и параметры модели ==&lt;br /&gt;
&lt;br /&gt;
=== Инструменты ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модель Ants с добавленной памятью)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных:&#039;&#039;&#039; R (библиотеки tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Гнездо:&#039;&#039;&#039; центр (0,0), радиус 5&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра, 3 или 6 кучек&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Управляющие параметры (настройки модели) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Тип !! Диапазон !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `population` || Slider || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `diffusion-rate` || Slider || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `evaporation-rate` || Slider || 0–20 || Скорость испарения феромона&lt;br /&gt;
|-&lt;br /&gt;
| `use-memory?` || Switch || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| `more-food?` || Switch || On/Off || Дополнительные источники еды (3 → 6)&lt;br /&gt;
|-&lt;br /&gt;
| `memory-threshold` || Slider || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Собираемые данные для анализа ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Переменная !! Откуда !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| `total-food-count` || Глобальная || Общее количество доставленной еды&lt;br /&gt;
|-&lt;br /&gt;
| `count turtles` || Встроенная || Количество живых муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| `length my-memory` || Индивидуальная || Размер памяти муравья&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&lt;br /&gt;
{{#widget:Iframe&lt;br /&gt;
|url=https://raw.githubusercontent.com/cristycrastys-source/Labs_my_beloved/refs/heads/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
|width=800&lt;br /&gt;
|height=600&lt;br /&gt;
|border=0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Просмотр кода с пояснениями ==&lt;br /&gt;
=== Полный код (.nlogo) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель (.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
* An Introduction to Agent-Based Modeling with NetLogo — Wilensky, Rand&lt;br /&gt;
* Introduction to Econometrics with R — онлайн-учебник&lt;br /&gt;
* Causal Inference: The Mixtape — Cunningham&lt;br /&gt;
* Дружелюбная эконометрика — учебник&lt;br /&gt;
* NetLogo: [https://netlogo.org netlogo.org]&lt;br /&gt;
* R: [https://r-project.org r-project.org]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47141</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47141"/>
		<updated>2026-05-22T14:29:22Z</updated>

		<summary type="html">&lt;p&gt;CristCas: 1 часть ссылок&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&lt;br /&gt;
{{#widget:Iframe&lt;br /&gt;
|url=https://raw.githubusercontent.com/cristycrastys-source/Labs_my_beloved/refs/heads/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
|width=800&lt;br /&gt;
|height=600&lt;br /&gt;
|border=0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Просмотр кода с пояснениями(.nlogo) ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
Модель реализована в NetLogo. Ниже представлен полный код с подробными комментариями, объясняющими логику памяти муравьёв и визуализацию их состояний.&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра (3 или 6 кучек)&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Полный код ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Элементы управления на Interface ===&lt;br /&gt;
&lt;br /&gt;
Для работы модели добавьте на вкладку &#039;&#039;&#039;Interface&#039;&#039;&#039; следующие элементы:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Элемент !! Переменная !! Диапазон / Значения !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Button&#039;&#039;&#039; || `setup` || — || Инициализация модели&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Button&#039;&#039;&#039; || `go` || флаг &amp;quot;Forever&amp;quot; || Запуск симуляции&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `population` || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `diffusion-rate` || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `evaporation-rate` || 0–20 || Скорость исчезновения феромона&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Switch&#039;&#039;&#039; || `use-memory?` || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Switch&#039;&#039;&#039; || `more-food?` || On/Off || Включение/выключение дополнительных источников еды&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `memory-threshold` || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель с репозитория(.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
* An Introduction to Agent-Based Modeling with NetLogo — Wilensky, Rand&lt;br /&gt;
* Introduction to Econometrics with R — онлайн-учебник&lt;br /&gt;
* Causal Inference: The Mixtape — Cunningham&lt;br /&gt;
* Дружелюбная эконометрика — учебник&lt;br /&gt;
* NetLogo: [https://netlogo.org netlogo.org]&lt;br /&gt;
* R: [https://r-project.org r-project.org]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47140</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47140"/>
		<updated>2026-05-22T14:04:01Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Как это работает */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&lt;br /&gt;
{{#widget:Iframe&lt;br /&gt;
|url=https://raw.githubusercontent.com/cristycrastys-source/Labs_my_beloved/refs/heads/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
|width=800&lt;br /&gt;
|height=600&lt;br /&gt;
|border=0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Просмотр кода с пояснениями(.nlogo) ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
Модель реализована в NetLogo. Ниже представлен полный код с подробными комментариями, объясняющими логику памяти муравьёв и визуализацию их состояний.&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра (3 или 6 кучек)&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Полный код ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Элементы управления на Interface ===&lt;br /&gt;
&lt;br /&gt;
Для работы модели добавьте на вкладку &#039;&#039;&#039;Interface&#039;&#039;&#039; следующие элементы:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Элемент !! Переменная !! Диапазон / Значения !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Button&#039;&#039;&#039; || `setup` || — || Инициализация модели&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Button&#039;&#039;&#039; || `go` || флаг &amp;quot;Forever&amp;quot; || Запуск симуляции&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `population` || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `diffusion-rate` || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `evaporation-rate` || 0–20 || Скорость исчезновения феромона&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Switch&#039;&#039;&#039; || `use-memory?` || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Switch&#039;&#039;&#039; || `more-food?` || On/Off || Включение/выключение дополнительных источников еды&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `memory-threshold` || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель с репозитория(.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47139</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47139"/>
		<updated>2026-05-22T14:03:33Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Открытый код&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&lt;br /&gt;
{{#widget:Iframe&lt;br /&gt;
|url=https://raw.githubusercontent.com/cristycrastys-source/Labs_my_beloved/refs/heads/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
|width=800&lt;br /&gt;
|height=600&lt;br /&gt;
|border=0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Просмотр кода с пояснениями(.nlogo) ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
Модель реализована в NetLogo. Ниже представлен полный код с подробными комментариями, объясняющими логику памяти муравьёв и визуализацию их состояний.&lt;br /&gt;
&lt;br /&gt;
=== Параметры среды ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Размер мира:&#039;&#039;&#039; от -40 до 40 (80×80)&lt;br /&gt;
* &#039;&#039;&#039;Еда:&#039;&#039;&#039; на радиусе 30 от центра (3 или 6 кучек)&lt;br /&gt;
* &#039;&#039;&#039;Феромон:&#039;&#039;&#039; диффузия и испарение управляются ползунками `diffusion-rate` и `evaporation-rate`&lt;br /&gt;
&lt;br /&gt;
=== Цветовая индикация муравьёв ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Цвет !! Состояние&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Зелёный&#039;&#039;&#039; || Ищет еду, память пуста&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Синий&#039;&#039;&#039; || Идёт по памяти к запомненной еде&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Фиолетовый&#039;&#039;&#039; || Несёт еду в гнездо&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Жёлтый&#039;&#039;&#039; || Имеет 1 место в памяти (но не использует его в данный момент)&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Красный&#039;&#039;&#039; || Имеет 2 и более мест в памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Полный код ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ФИНАЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; РАЗМЕР МИРА: от -40 до 40 (80×80)&lt;br /&gt;
;; ЕДА: на радиусе 30 от центра&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЦВЕТА МУРАВЬЁВ:&lt;br /&gt;
;; ЗЕЛЁНЫЙ - ищет еду (память пуста)&lt;br /&gt;
;; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
;; ФИОЛЕТОВЫЙ - несёт еду в гнездо&lt;br /&gt;
;; ЖЁЛТЫЙ - 1 место в памяти (не использует)&lt;br /&gt;
;; КРАСНЫЙ - 2+ места в памяти (не использует)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count      ; общее количество еды, доставленной в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical              ; феромон на патче (коллективный след)&lt;br /&gt;
  food-here             ; наличие еды на патче (0 или 1)&lt;br /&gt;
  is-nest               ; является ли патч гнездом (1 да, 0 нет)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  my-food               ; есть ли у муравья еда (0 или 1)&lt;br /&gt;
  my-energy             ; текущий запас энергии муравья&lt;br /&gt;
  my-memory             ; список запомненных патчей (места, где была еда)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; НАСТРОЙКА МИРА&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ГНЕЗДО =====&lt;br /&gt;
  ; Все патчи в радиусе 5 от центра становятся гнездом&lt;br /&gt;
  ask patches [&lt;br /&gt;
    ifelse (distancexy 0 0) &amp;lt; 5 [&lt;br /&gt;
      set is-nest 1&lt;br /&gt;
      set pcolor violet&lt;br /&gt;
    ] [&lt;br /&gt;
      set is-nest 0&lt;br /&gt;
      set food-here 0&lt;br /&gt;
      set chemical 0&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ ИСТОЧНИКИ ЕДЫ =====&lt;br /&gt;
  let radius 30                      ; расстояние от центра до еды&lt;br /&gt;
  let sources 3                      ; базовое количество источников&lt;br /&gt;
  if more-food? = true [ set sources 6 ]  ; если включён переключатель&lt;br /&gt;
  &lt;br /&gt;
  ; Равномерно распределяем источники по кругу&lt;br /&gt;
  let angles []                       ; список углов&lt;br /&gt;
  let step 360 / sources              ; шаг между источниками&lt;br /&gt;
  let current 0&lt;br /&gt;
  repeat sources [&lt;br /&gt;
    set angles lput current angles&lt;br /&gt;
    set current current + step&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; Для каждого угла создаём пятно еды радиусом 5&lt;br /&gt;
  foreach angles [ angle -&amp;gt;&lt;br /&gt;
    let xc radius * cos angle&lt;br /&gt;
    let yc radius * sin angle&lt;br /&gt;
    ask patches with [ distancexy xc yc &amp;lt; 5 ] [&lt;br /&gt;
      set food-here 1&lt;br /&gt;
      ; Разные цвета для разных источников&lt;br /&gt;
      if angle = 0   [ set pcolor cyan ]&lt;br /&gt;
      if angle = 60  [ set pcolor sky ]&lt;br /&gt;
      if angle = 120 [ set pcolor blue ]&lt;br /&gt;
      if angle = 180 [ set pcolor cyan ]&lt;br /&gt;
      if angle = 240 [ set pcolor sky ]&lt;br /&gt;
      if angle = 300 [ set pcolor blue ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== СОЗДАЁМ МУРАВЬЁВ =====&lt;br /&gt;
  create-turtles population [&lt;br /&gt;
    setxy 0 0                       ; все муравьи начинают из гнезда&lt;br /&gt;
    set size 2&lt;br /&gt;
    set color green                 ; ЗЕЛЁНЫЙ - ищет еду, память пуста&lt;br /&gt;
    set my-food 0&lt;br /&gt;
    set my-energy 200&lt;br /&gt;
    set my-memory []                ; память пуста&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ТРАТИМ ЭНЕРГИЮ =====&lt;br /&gt;
    ; Каждый шаг отнимает 1 единицу энергии&lt;br /&gt;
    set my-energy my-energy - 1&lt;br /&gt;
    if my-energy &amp;lt;= 0 [ die ]       ; энергия кончилась - муравей умирает&lt;br /&gt;
    &lt;br /&gt;
    ; ===== СБРОС ЕДЫ В ГНЕЗДЕ =====&lt;br /&gt;
    ; Если муравей в гнезде и несёт еду - выгружает её&lt;br /&gt;
    if is-nest = 1 and my-food = 1 [&lt;br /&gt;
      set my-food 0&lt;br /&gt;
      set my-energy my-energy + 100    ; награда за доставленную еду&lt;br /&gt;
      set total-food-count total-food-count + 1  ; увеличиваем счётчик&lt;br /&gt;
      update-color-by-memory           ; обновляем цвет в зависимости от памяти&lt;br /&gt;
      rt 180                           ; разворачиваемся&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ВОЗВРАЩЕНИЕ С ЕДОЙ =====&lt;br /&gt;
    ; Если муравей несёт еду - идёт прямо в гнездо&lt;br /&gt;
    if my-food = 1 [&lt;br /&gt;
      set color violet                 ; ФИОЛЕТОВЫЙ - несёт еду&lt;br /&gt;
      set chemical chemical + 60       ; оставляет феромон&lt;br /&gt;
      facexy 0 0                       ; поворачивается к центру (гнезду)&lt;br /&gt;
      wiggle&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    ; ===== ПОИСК ЕДЫ =====&lt;br /&gt;
    ; Если муравей не несёт еду - ищет её&lt;br /&gt;
    look-for-food&lt;br /&gt;
    &lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБРАБОТКА ФЕРОМОНА =====&lt;br /&gt;
  ; Диффузия: феромон распространяется на соседние патчи&lt;br /&gt;
  diffuse chemical (diffusion-rate / 100)&lt;br /&gt;
  &lt;br /&gt;
  ask patches [&lt;br /&gt;
    ; Испарение: феромон постепенно исчезает&lt;br /&gt;
    set chemical chemical * (100 - evaporation-rate) / 100&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    &lt;br /&gt;
    ; Визуализация феромона (чем больше феромона, тем ярче зелёный)&lt;br /&gt;
    if food-here = 0 and is-nest = 0 [&lt;br /&gt;
      set pcolor scale-color green chemical 0 5&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ПОИСК ЕДЫ С ПАМЯТЬЮ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; ===== ПОДБОР ЕДЫ =====&lt;br /&gt;
  ; Если на текущем патче есть еда - подбираем её&lt;br /&gt;
  if food-here &amp;gt; 0 [&lt;br /&gt;
    set my-food 1&lt;br /&gt;
    set food-here food-here - 1       ; еда исчезает с патча&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set my-memory lput patch-here my-memory   ; добавляем патч в список&lt;br /&gt;
      if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]  ; ограничиваем размер&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    rt 180                           ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ИСПОЛЬЗОВАНИЕ ПАМЯТИ =====&lt;br /&gt;
  ; Если память включена, энергии мало и есть запомненные места&lt;br /&gt;
  if use-memory? and my-energy &amp;lt; memory-threshold and length my-memory &amp;gt; 0 [&lt;br /&gt;
    let target nobody&lt;br /&gt;
    let best-dist 999999&lt;br /&gt;
    &lt;br /&gt;
    ; Находим ближайшее запомненное место&lt;br /&gt;
    foreach my-memory [ mem-patch -&amp;gt;&lt;br /&gt;
      let d distance mem-patch&lt;br /&gt;
      if d &amp;lt; best-dist [&lt;br /&gt;
        set best-dist d&lt;br /&gt;
        set target mem-patch&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    if target != nobody [&lt;br /&gt;
      ; ПРОВЕРЯЕМ, ЕСТЬ ЛИ ЕЩЁ ЕДА НА ЗАПОМНЕННОМ МЕСТЕ&lt;br /&gt;
      ifelse [food-here] of target &amp;gt; 0 [&lt;br /&gt;
        set color blue                ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
        face target&lt;br /&gt;
        stop&lt;br /&gt;
      ] [&lt;br /&gt;
        ; ЕСЛИ ЕДЫ НЕТ - ИЩЕМ В РАДИУСЕ 8 ПАТЧЕЙ ВОКРУГ&lt;br /&gt;
        let nearby-food patches with [food-here &amp;gt; 0 and distance target &amp;lt;= 8]&lt;br /&gt;
        ifelse any? nearby-food [&lt;br /&gt;
          ; нашли еду рядом - идём к ближайшей&lt;br /&gt;
          let closest-nearby min-one-of nearby-food [distance myself]&lt;br /&gt;
          ; добавляем новое место в память&lt;br /&gt;
          set my-memory lput closest-nearby my-memory&lt;br /&gt;
          if length my-memory &amp;gt; 15 [ set my-memory but-last my-memory ]&lt;br /&gt;
          set color blue            ; СИНИЙ - идёт по памяти к еде&lt;br /&gt;
          face closest-nearby&lt;br /&gt;
          stop&lt;br /&gt;
        ] [&lt;br /&gt;
          ; НЕТ ЕДЫ В РАДИУСЕ - УДАЛЯЕМ ЭТО МЕСТО ИЗ ПАМЯТИ&lt;br /&gt;
          set my-memory remove target my-memory&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ОБНОВЛЕНИЕ ЦВЕТА =====&lt;br /&gt;
  update-color-by-memory&lt;br /&gt;
  &lt;br /&gt;
  ; ===== ДВИЖЕНИЕ ПО ФЕРОМОНУ =====&lt;br /&gt;
  ; Если есть феромон - идём по нему&lt;br /&gt;
  if (chemical &amp;gt;= 0.05) and (chemical &amp;lt; 2) [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;;; ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to update-color-by-memory&lt;br /&gt;
  ; Обновляет цвет муравья в зависимости от размера его памяти&lt;br /&gt;
  ; (только если муравей не несёт еду и не в режиме синего)&lt;br /&gt;
  if my-food = 0 and color != blue [&lt;br /&gt;
    let mem-count length my-memory&lt;br /&gt;
    if mem-count = 0 [ set color green ]      ; ЗЕЛЁНЫЙ - память пуста&lt;br /&gt;
    if mem-count = 1 [ set color yellow ]     ; ЖЁЛТЫЙ - 1 место&lt;br /&gt;
    if mem-count &amp;gt;= 2 [ set color red ]       ; КРАСНЫЙ - 2+ мест&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  ; Движение вверх по градиенту феромона&lt;br /&gt;
  ; Сравнивает концентрацию феромона спереди, справа и слева&lt;br /&gt;
  let scent-ahead chemical-scent 0&lt;br /&gt;
  let scent-right chemical-scent 45&lt;br /&gt;
  let scent-left chemical-scent -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead) [&lt;br /&gt;
    ifelse scent-right &amp;gt; scent-left [ rt 45 ] [ lt 45 ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  ; Лёгкое случайное покачивание, чтобы муравьи не застревали&lt;br /&gt;
  rt random 30&lt;br /&gt;
  lt random 30&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent [angle]&lt;br /&gt;
  ; Возвращает количество феромона на патче под указанным углом&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Элементы управления на Interface ===&lt;br /&gt;
&lt;br /&gt;
Для работы модели добавьте на вкладку &#039;&#039;&#039;Interface&#039;&#039;&#039; следующие элементы:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Элемент !! Переменная !! Диапазон / Значения !! Описание&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Button&#039;&#039;&#039; || `setup` || — || Инициализация модели&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Button&#039;&#039;&#039; || `go` || флаг &amp;quot;Forever&amp;quot; || Запуск симуляции&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `population` || 0–100 || Количество муравьёв&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `diffusion-rate` || 0–50 || Скорость распространения феромона&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `evaporation-rate` || 0–20 || Скорость исчезновения феромона&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Switch&#039;&#039;&#039; || `use-memory?` || On/Off || Включение/выключение памяти&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Switch&#039;&#039;&#039; || `more-food?` || On/Off || Включение/выключение дополнительных источников еды&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Slider&#039;&#039;&#039; || `memory-threshold` || 50–200 || Порог энергии для использования памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Как это работает ===&lt;br /&gt;
&lt;br /&gt;
# Муравьи начинают с пустой памятью (&#039;&#039;&#039;зелёные&#039;&#039;&#039;)&lt;br /&gt;
# Найдя еду, запоминают координаты патча и становятся &#039;&#039;&#039;фиолетовыми&#039;&#039;&#039; (несут еду)&lt;br /&gt;
# После доставки еды в гнездо цвет меняется в зависимости от количества запомненных мест (&#039;&#039;&#039;жёлтый&#039;&#039;&#039; = 1 место, &#039;&#039;&#039;красный&#039;&#039;&#039; = 2+)&lt;br /&gt;
# Когда энергия падает ниже порога (`memory-threshold`), муравей с памятью становится &#039;&#039;&#039;синим&#039;&#039;&#039; и идёт к ближайшему запомненному месту&lt;br /&gt;
# Если запомненное место опустело, муравей ищет еду в радиусе 8 патчей вокруг; если не находит — забывает это место&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель с репозитория(.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47138</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47138"/>
		<updated>2026-05-22T13:36:33Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Просмотр кода, проверка оформления&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&lt;br /&gt;
{{#widget:Iframe&lt;br /&gt;
|url=https://raw.githubusercontent.com/cristycrastys-source/Labs_my_beloved/refs/heads/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
|width=800&lt;br /&gt;
|height=600&lt;br /&gt;
|border=0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Просмотр кода с пояснениями(.nlogo) ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot; line&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Скачать модель с репозитория(.nlogox) ===&lt;br /&gt;
&#039;&#039;&#039;GitHub:&#039;&#039;&#039; [https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:Patarakin&amp;diff=47137</id>
		<title>Обсуждение участника:Patarakin</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:Patarakin&amp;diff=47137"/>
		<updated>2026-05-22T13:26:16Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Стигмергия в образовании */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;  Тест&lt;br /&gt;
* {{#invoke:RandomPageFromCategory|main|category=Book}}&lt;br /&gt;
* [[{{#invoke:RandomPageFromCategory|main|category=Person}}]]&lt;br /&gt;
* [[{{#invoke:RandomPageFromCategory|main|category=Book}}]]&lt;br /&gt;
&lt;br /&gt;
== teachers_flow_web ==&lt;br /&gt;
https://digida.mgpu.ru/index.php/Обсуждение:Заглавная_страница#Как_я_взаимодействию_с_ассистентом_искусственного_интеллекта_Перплексити&lt;br /&gt;
&lt;br /&gt;
==Тезаурус 4== &lt;br /&gt;
&lt;br /&gt;
Да, хорошо. Положите пожалуйста. Потому что моя основная проблема, что у меня VOSviewer не работает же и я не могла эти данные получить в таком виде, как вы их прислали. &lt;br /&gt;
Но у меня почти получилось что-то похожее! Обходными путями странными) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Тезаурус 3==&lt;br /&gt;
&lt;br /&gt;
Хорошо, я остановлюсь, во избежание апокалипсиса) &lt;br /&gt;
Но мне казалось, что все не так плохо, за исключением того, что в ручную просматривать фамилии в текстовом файле сложно. Попробовала поговорить с ЖПТ, он написал код для R. Но дальше уже я не сильна, какая-то каша началась.&lt;br /&gt;
&lt;br /&gt;
Я научилась в Экселе сделать функцию &amp;quot;Найти&amp;quot; и он выдает все ячейки с таким ФИО, там есть кнопка &amp;quot;Заменить&amp;quot;. С ней еще не поняла как работать. И есть ли смысл вообще так делать.&lt;br /&gt;
&lt;br /&gt;
== Тезаурус 2== &lt;br /&gt;
Я сохранила из экселя только столбец с авторами, он нормально открылся на маке потом, с этим разобралась. Сейчас основная проблема это понять какой логикой заменять? &lt;br /&gt;
Потому что я вижу автора одного, например. Он есть как самостоятельный автор, есть в соавторстве. И непонятно как с этим соавторством быть. Объединять ли или нет, потому что с одним автором есть 2-3 статьи в соавторстве с разными людьми. &lt;br /&gt;
Это еще полпроблемы. Проблема если в одном соавторстве на русском, а в другом на английском?&lt;br /&gt;
На 59 строк обработала, приступаю на 270. &lt;br /&gt;
Но 900 не факт, что осилю физически и эмоционально. &lt;br /&gt;
&lt;br /&gt;
Я сейчас делаю текстовый документ по каждому универу, в котором отдельных &amp;quot;Нормальных&amp;quot; авторов удаляю, а повторки оставляю и группирую, чтобы вам завтра показать. &lt;br /&gt;
&lt;br /&gt;
== Тезаурус== &lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич! &lt;br /&gt;
&lt;br /&gt;
Начала разбираться с тезаурусом, возник ряд проблем: &lt;br /&gt;
Если в датасете есть один автор с точками, другой без точек - мы их меняем. &lt;br /&gt;
1. А если есть один автор, но он без точек в разных местах по одному - как быть? &lt;br /&gt;
2. Если автор в соавторстве пишет, и в одном месте он с точками, а в другом - без точек. Что делаем в этом случае? &lt;br /&gt;
&lt;br /&gt;
Помогите пожалуйста) Айжан --[[Участник:Айжан Ужинкина]] ([[Обсуждение участника:Айжан Ужинкина|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
== Просьба от Антюховой Эльзы ==&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, посмотрите, пожалуйста, почему я не могу добавить приложения, разработанные на языке программирования Snap?&lt;br /&gt;
&lt;br /&gt;
== Если нужно задать ==&lt;br /&gt;
&lt;br /&gt;
Примерный вопрос ... --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 17:16, 25 ноября 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Получилось добавить Dataset Lens как таблицу, сделала заголовки. Посмотрите, пожалуйста, и отметите в ЛМС это задание, если всё нормально. (Татьяна Астафьева) --[[Участник:Татьяна Астафьева|Татьяна Астафьева]] ([[Обсуждение участника:Татьяна Астафьева|обсуждение]]) 20:30, 25 ноября 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, Евгений Дмитриевич, посмотрите, пожалуйста, страничку и отметьте в LMS сделанные мной задания --[[Участник:Дементьева Мария Владимировна|Дементьева Мария]] ([[Обсуждение участника:Дементьева Мария Владимировна|обсуждение]]) 16:08, 5 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, проверьте, пожалуйста, выполненные задания на моей странице и проставьте баллы в LMS --[[Участник:Ширкина Д|Ширкина Д]] ([[Обсуждение участника:Ширкина Д|обсуждение]]) 10:57, 6 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, посмотрите, пожалуйста, задания и отметьте, если все хорошо, в LMS, прошу прощения за скриншоты с телефона, не могу зайти на сайты через браузер ПК [[Участник: Tatiana Khaidarova]] ([[Обсуждение участника: Tatiana Khaidarova|обсуждение]]) 23:43, 6 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, посмотрите, пожалуйста, страницу и отметьте в LMS (Тюрикова Арина), если всё хорошо --[[Участник:Tyurikovaaa155|Tyurikovaaa155]] ([[Обсуждение участника:Tyurikovaaa155|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич! Посмотрите, пожалуйста, страницу (Семина Мария)&lt;br /&gt;
[[Участник:Мария Семина|Мария Семина]] ([[Участник:Мария Семина|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, ссылки в LMS проставила, посмотрите, пожалуйста [[Участник: Tatiana Khaidarova]] ([[Обсуждение участника: Tatiana Khaidarova|обсуждение]]) 15:39, 10 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, Евгений Дмитриевич, посмотрите, пожалуйста, страничку и отметьте в LMS сделанные мной задания (Волынчикова Анна)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, посмотрите, пожалуйста, страницу и отметьте в LMS (Дмитренко Надежда), если всё хорошо и нужно ли что-то подправить --[[Участник:DmitrenkoNP|DmitrenkoNP]] ([[Обсуждение участника:DmitrenkoNP|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
Добрый вечер. Выполнил задания. Просьба проверить и отметить в LMS. [[Участник:InasovAA]] (Инасов Артем)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер. Выполнила задания Евгений Дмитриевич. посмотрите, пожалуйста, страничку, проверить и отметить в LMS. [[Участник:Карина]] (Мергалиева Карина)&lt;br /&gt;
&lt;br /&gt;
Сделал NetsBlox. [[Участник:Вольдемар]] (Шкабара Владимир)&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич. Сделал NetsBlox, прошу проверить. [[Участник:DzhamalkhanovRV]]&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, посмотрите, пожалуйста, страничку и отметьте в LMS сделанные мной задания. (Беляева Мария) [[Участник:БеляеваМД]]&lt;br /&gt;
&lt;br /&gt;
== Основы моделирования - результаты к зачету ==&lt;br /&gt;
&lt;br /&gt;
И здесь - пришел, указал, что сделал, оставил подпись --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 09:20, 26 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Проверка работ в LMS ==&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич!&lt;br /&gt;
Добавил ссылки на выполненные работы в LMS.&lt;br /&gt;
Просьба проверить. и проставить оценку.&lt;br /&gt;
&lt;br /&gt;
== Информация от Антюховой Эльзы ==&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич! &lt;br /&gt;
Хочу сообщить о том, что я внесла необходимые правки в свою выпускную квалификационную работу. Буду очень признательна, если Вы сможете уделить время и посмотреть ее. Заранее спасибо!&lt;br /&gt;
&lt;br /&gt;
== Проверка статьи &amp;quot;Репрезентация мотивов самостоятельной учебной работы в личностных нарративах студентов&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, добрый день! Могли бы Вы проверить мою работу? Что нужно скорректировать/добавить?&lt;br /&gt;
&lt;br /&gt;
== Репрезентация мотивов самостоятельной учебной работы в личностных нарративах студентов ==&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, я добавила категорию [[:Категория:Психо-лингвистическое исследование]] в конце текста статьи, но на странице моя работа не появилась&lt;br /&gt;
Подскажите, что нужно поправить сейчас?&lt;br /&gt;
&lt;br /&gt;
== Исправление АДЭУ-221 ==&lt;br /&gt;
&lt;br /&gt;
 Арлинская поправила [[Аналитика_профиля_ВК#🗂_Структура_проекта|Работа_Арлинская]]&lt;br /&gt;
 Муханова Анна (добавила интерактивную карту на страничку) [[Карта друзей|Муханова_карта_друзей]]&lt;br /&gt;
 Сабитова Алина (поменяла оформление кодов) [[Анализ целевой аудитории сообщества VK|Сабитова_проект]]&lt;br /&gt;
 Бойко (поправил диаграмму, код, ссылки) [[Аналитический_инструмент_ScratchAPI#🗂_Структура_проекта|Работа_Бойко]]&lt;br /&gt;
&lt;br /&gt;
== Стигмергия в образовании ==&lt;br /&gt;
&lt;br /&gt;
[[Stygmergia v obrazovanii]]&lt;br /&gt;
&lt;br /&gt;
До этого пытались залить на GitHub и через ссылку на raw файл (но как видно на статье сейчас как раз, оно не открывается&lt;br /&gt;
&lt;br /&gt;
На GitHub в репозитории есть залитый файл в формате .nlogox&lt;br /&gt;
&lt;br /&gt;
https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics&lt;br /&gt;
&lt;br /&gt;
Html к сожалению не даёт прикрепить как файл, так что на всякий залила на GitHub и продублировала на гугл диск на всякий случай&lt;br /&gt;
&lt;br /&gt;
https://drive.google.com/drive/folders/17bbGxT_Nz9q77nXFdA4kdBMyWYVgonNg?usp=sharing&lt;br /&gt;
&lt;br /&gt;
Файлы проверила, в приложении всё открывается и работает, заранее спасибо!&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:Patarakin&amp;diff=47136</id>
		<title>Обсуждение участника:Patarakin</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D1%83%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA%D0%B0:Patarakin&amp;diff=47136"/>
		<updated>2026-05-22T13:21:39Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Стигмергия в образовании */ новая тема&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;  Тест&lt;br /&gt;
* {{#invoke:RandomPageFromCategory|main|category=Book}}&lt;br /&gt;
* [[{{#invoke:RandomPageFromCategory|main|category=Person}}]]&lt;br /&gt;
* [[{{#invoke:RandomPageFromCategory|main|category=Book}}]]&lt;br /&gt;
&lt;br /&gt;
== teachers_flow_web ==&lt;br /&gt;
https://digida.mgpu.ru/index.php/Обсуждение:Заглавная_страница#Как_я_взаимодействию_с_ассистентом_искусственного_интеллекта_Перплексити&lt;br /&gt;
&lt;br /&gt;
==Тезаурус 4== &lt;br /&gt;
&lt;br /&gt;
Да, хорошо. Положите пожалуйста. Потому что моя основная проблема, что у меня VOSviewer не работает же и я не могла эти данные получить в таком виде, как вы их прислали. &lt;br /&gt;
Но у меня почти получилось что-то похожее! Обходными путями странными) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Тезаурус 3==&lt;br /&gt;
&lt;br /&gt;
Хорошо, я остановлюсь, во избежание апокалипсиса) &lt;br /&gt;
Но мне казалось, что все не так плохо, за исключением того, что в ручную просматривать фамилии в текстовом файле сложно. Попробовала поговорить с ЖПТ, он написал код для R. Но дальше уже я не сильна, какая-то каша началась.&lt;br /&gt;
&lt;br /&gt;
Я научилась в Экселе сделать функцию &amp;quot;Найти&amp;quot; и он выдает все ячейки с таким ФИО, там есть кнопка &amp;quot;Заменить&amp;quot;. С ней еще не поняла как работать. И есть ли смысл вообще так делать.&lt;br /&gt;
&lt;br /&gt;
== Тезаурус 2== &lt;br /&gt;
Я сохранила из экселя только столбец с авторами, он нормально открылся на маке потом, с этим разобралась. Сейчас основная проблема это понять какой логикой заменять? &lt;br /&gt;
Потому что я вижу автора одного, например. Он есть как самостоятельный автор, есть в соавторстве. И непонятно как с этим соавторством быть. Объединять ли или нет, потому что с одним автором есть 2-3 статьи в соавторстве с разными людьми. &lt;br /&gt;
Это еще полпроблемы. Проблема если в одном соавторстве на русском, а в другом на английском?&lt;br /&gt;
На 59 строк обработала, приступаю на 270. &lt;br /&gt;
Но 900 не факт, что осилю физически и эмоционально. &lt;br /&gt;
&lt;br /&gt;
Я сейчас делаю текстовый документ по каждому универу, в котором отдельных &amp;quot;Нормальных&amp;quot; авторов удаляю, а повторки оставляю и группирую, чтобы вам завтра показать. &lt;br /&gt;
&lt;br /&gt;
== Тезаурус== &lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич! &lt;br /&gt;
&lt;br /&gt;
Начала разбираться с тезаурусом, возник ряд проблем: &lt;br /&gt;
Если в датасете есть один автор с точками, другой без точек - мы их меняем. &lt;br /&gt;
1. А если есть один автор, но он без точек в разных местах по одному - как быть? &lt;br /&gt;
2. Если автор в соавторстве пишет, и в одном месте он с точками, а в другом - без точек. Что делаем в этом случае? &lt;br /&gt;
&lt;br /&gt;
Помогите пожалуйста) Айжан --[[Участник:Айжан Ужинкина]] ([[Обсуждение участника:Айжан Ужинкина|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
== Просьба от Антюховой Эльзы ==&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, посмотрите, пожалуйста, почему я не могу добавить приложения, разработанные на языке программирования Snap?&lt;br /&gt;
&lt;br /&gt;
== Если нужно задать ==&lt;br /&gt;
&lt;br /&gt;
Примерный вопрос ... --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 17:16, 25 ноября 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Получилось добавить Dataset Lens как таблицу, сделала заголовки. Посмотрите, пожалуйста, и отметите в ЛМС это задание, если всё нормально. (Татьяна Астафьева) --[[Участник:Татьяна Астафьева|Татьяна Астафьева]] ([[Обсуждение участника:Татьяна Астафьева|обсуждение]]) 20:30, 25 ноября 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, Евгений Дмитриевич, посмотрите, пожалуйста, страничку и отметьте в LMS сделанные мной задания --[[Участник:Дементьева Мария Владимировна|Дементьева Мария]] ([[Обсуждение участника:Дементьева Мария Владимировна|обсуждение]]) 16:08, 5 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, проверьте, пожалуйста, выполненные задания на моей странице и проставьте баллы в LMS --[[Участник:Ширкина Д|Ширкина Д]] ([[Обсуждение участника:Ширкина Д|обсуждение]]) 10:57, 6 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, посмотрите, пожалуйста, задания и отметьте, если все хорошо, в LMS, прошу прощения за скриншоты с телефона, не могу зайти на сайты через браузер ПК [[Участник: Tatiana Khaidarova]] ([[Обсуждение участника: Tatiana Khaidarova|обсуждение]]) 23:43, 6 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, посмотрите, пожалуйста, страницу и отметьте в LMS (Тюрикова Арина), если всё хорошо --[[Участник:Tyurikovaaa155|Tyurikovaaa155]] ([[Обсуждение участника:Tyurikovaaa155|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич! Посмотрите, пожалуйста, страницу (Семина Мария)&lt;br /&gt;
[[Участник:Мария Семина|Мария Семина]] ([[Участник:Мария Семина|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, ссылки в LMS проставила, посмотрите, пожалуйста [[Участник: Tatiana Khaidarova]] ([[Обсуждение участника: Tatiana Khaidarova|обсуждение]]) 15:39, 10 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, Евгений Дмитриевич, посмотрите, пожалуйста, страничку и отметьте в LMS сделанные мной задания (Волынчикова Анна)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер, посмотрите, пожалуйста, страницу и отметьте в LMS (Дмитренко Надежда), если всё хорошо и нужно ли что-то подправить --[[Участник:DmitrenkoNP|DmitrenkoNP]] ([[Обсуждение участника:DmitrenkoNP|обсуждение]])&lt;br /&gt;
&lt;br /&gt;
Добрый вечер. Выполнил задания. Просьба проверить и отметить в LMS. [[Участник:InasovAA]] (Инасов Артем)&lt;br /&gt;
&lt;br /&gt;
Добрый вечер. Выполнила задания Евгений Дмитриевич. посмотрите, пожалуйста, страничку, проверить и отметить в LMS. [[Участник:Карина]] (Мергалиева Карина)&lt;br /&gt;
&lt;br /&gt;
Сделал NetsBlox. [[Участник:Вольдемар]] (Шкабара Владимир)&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич. Сделал NetsBlox, прошу проверить. [[Участник:DzhamalkhanovRV]]&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, посмотрите, пожалуйста, страничку и отметьте в LMS сделанные мной задания. (Беляева Мария) [[Участник:БеляеваМД]]&lt;br /&gt;
&lt;br /&gt;
== Основы моделирования - результаты к зачету ==&lt;br /&gt;
&lt;br /&gt;
И здесь - пришел, указал, что сделал, оставил подпись --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 09:20, 26 декабря 2025 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Проверка работ в LMS ==&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич!&lt;br /&gt;
Добавил ссылки на выполненные работы в LMS.&lt;br /&gt;
Просьба проверить. и проставить оценку.&lt;br /&gt;
&lt;br /&gt;
== Информация от Антюховой Эльзы ==&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич! &lt;br /&gt;
Хочу сообщить о том, что я внесла необходимые правки в свою выпускную квалификационную работу. Буду очень признательна, если Вы сможете уделить время и посмотреть ее. Заранее спасибо!&lt;br /&gt;
&lt;br /&gt;
== Проверка статьи &amp;quot;Репрезентация мотивов самостоятельной учебной работы в личностных нарративах студентов&amp;quot; ==&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, добрый день! Могли бы Вы проверить мою работу? Что нужно скорректировать/добавить?&lt;br /&gt;
&lt;br /&gt;
== Репрезентация мотивов самостоятельной учебной работы в личностных нарративах студентов ==&lt;br /&gt;
&lt;br /&gt;
Евгений Дмитриевич, я добавила категорию [[:Категория:Психо-лингвистическое исследование]] в конце текста статьи, но на странице моя работа не появилась&lt;br /&gt;
Подскажите, что нужно поправить сейчас?&lt;br /&gt;
&lt;br /&gt;
== Исправление АДЭУ-221 ==&lt;br /&gt;
&lt;br /&gt;
 Арлинская поправила [[Аналитика_профиля_ВК#🗂_Структура_проекта|Работа_Арлинская]]&lt;br /&gt;
 Муханова Анна (добавила интерактивную карту на страничку) [[Карта друзей|Муханова_карта_друзей]]&lt;br /&gt;
 Сабитова Алина (поменяла оформление кодов) [[Анализ целевой аудитории сообщества VK|Сабитова_проект]]&lt;br /&gt;
 Бойко (поправил диаграмму, код, ссылки) [[Аналитический_инструмент_ScratchAPI#🗂_Структура_проекта|Работа_Бойко]]&lt;br /&gt;
&lt;br /&gt;
== Стигмергия в образовании ==&lt;br /&gt;
&lt;br /&gt;
До этого пытались залить на GitHub и через ссылку на raw файл (но как видно на статье сейчас как раз, оно не открывается&lt;br /&gt;
&lt;br /&gt;
На GitHub в репозитории есть залитый файл в формате .nlogox&lt;br /&gt;
&lt;br /&gt;
https://github.com/cristycrastys-source/Labs_my_beloved/tree/main/Econometrics&lt;br /&gt;
&lt;br /&gt;
Html к сожалению не даёт прикрепить как файл, так что на всякий залила на GitHub и продублировала на гугл диск на всякий случай&lt;br /&gt;
&lt;br /&gt;
https://drive.google.com/drive/folders/17bbGxT_Nz9q77nXFdA4kdBMyWYVgonNg?usp=sharing&lt;br /&gt;
&lt;br /&gt;
Файлы проверила, в приложении всё открывается и работает, заранее спасибо!&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:Stygmergia_v_obrazovanii&amp;diff=47134</id>
		<title>Обсуждение:Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:Stygmergia_v_obrazovanii&amp;diff=47134"/>
		<updated>2026-05-22T11:06:09Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== ScratchWikis2026 ==&lt;br /&gt;
&lt;br /&gt;
* [[ScratchWikis2026]] --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 11:33, 30 апреля 2026 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Посмотрите на реальные данные ==&lt;br /&gt;
&lt;br /&gt;
* [[История Летописи.ру 2006 - 2025 на основе цифровых следов]]&lt;br /&gt;
* [[Лаборатории изучения командного творчества подростков в цифровых средах]]&lt;br /&gt;
&lt;br /&gt;
==   Модели для анализа ==&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Ants]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Graph  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;graphviz&amp;gt;&lt;br /&gt;
digraph studio_31010147_author_author {&lt;br /&gt;
overlap=false;&lt;br /&gt;
splines=true;&lt;br /&gt;
outputorder=edgesfirst;&lt;br /&gt;
bgcolor=&amp;quot;transparent&amp;quot;;&lt;br /&gt;
pad=0.2;&lt;br /&gt;
graph [layout=fdp fontname=&amp;quot;Helvetica&amp;quot; label=&amp;quot;Author-author comment graph&amp;quot; labelloc=t fontsize=16 fontcolor=&amp;quot;#333333&amp;quot;];&lt;br /&gt;
node [fontname=&amp;quot;Helvetica&amp;quot;];&lt;br /&gt;
edge [color=&amp;quot;#7A7A7A&amp;quot;, penwidth=0.5];&lt;br /&gt;
A69509486 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A69928872 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A70765928 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A74510061 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A77081300 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A82035760 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A84393306 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A84611612 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A85737518 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A88972362 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A89463232 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A69509486 -&amp;gt; A70765928 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A69509486 -&amp;gt; A77081300 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.78, arrowhead=normal];&lt;br /&gt;
A69509486 -&amp;gt; A82035760 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=1.26, arrowhead=normal];&lt;br /&gt;
A69509486 -&amp;gt; A88972362 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.66, arrowhead=normal];&lt;br /&gt;
A69928872 -&amp;gt; A69509486 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A77081300 -&amp;gt; A69509486 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.78, arrowhead=normal];&lt;br /&gt;
A77081300 -&amp;gt; A82035760 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A84393306 -&amp;gt; A82035760 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A84611612 -&amp;gt; A69509486 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.66, arrowhead=normal];&lt;br /&gt;
A85737518 -&amp;gt; A74510061 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A88972362 -&amp;gt; A88972362 [color=&amp;quot;#C0392B&amp;quot;, penwidth=0.66, arrowhead=normal];&lt;br /&gt;
A89463232 -&amp;gt; A77081300 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A89463232 -&amp;gt; A88972362 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.90, arrowhead=normal];&lt;br /&gt;
A89463232 -&amp;gt; A89463232 [color=&amp;quot;#C0392B&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/graphviz&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Загрузка готовой модели на статью ==&lt;br /&gt;
&lt;br /&gt;
[[Участник:Patarakin|Евгений Дмитриевич]]&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, у нас готова финальная версия кода для муравьев, пофиксили некоторые моменты с цветами, памятью, даже с добавлением новых кучек памяти. Мы загрузили файл в репозиторий на гитхабе &lt;br /&gt;
&lt;br /&gt;
https://github.com/cristycrastys-source/Labs_my_beloved/blob/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
&lt;br /&gt;
Но совсем забыли как можно измененную модель загрузить на нашу статью, чтобы можно было взаимодействовать с ней прямо там. И можно ли вообще так делать или только прикрепить ссылку на возможное скачивание кода + скриншоты рабочей модели или gif.&lt;br /&gt;
Помогите, пожалуйста Т-Т&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:Stygmergia_v_obrazovanii&amp;diff=47133</id>
		<title>Обсуждение:Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:Stygmergia_v_obrazovanii&amp;diff=47133"/>
		<updated>2026-05-22T11:02:56Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Загрузка готовой модели на статью */ новая тема&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== ScratchWikis2026 ==&lt;br /&gt;
&lt;br /&gt;
* [[ScratchWikis2026]] --[[Участник:Patarakin|Patarakin]] ([[Обсуждение участника:Patarakin|обсуждение]]) 11:33, 30 апреля 2026 (MSK)&lt;br /&gt;
&lt;br /&gt;
== Посмотрите на реальные данные ==&lt;br /&gt;
&lt;br /&gt;
* [[История Летописи.ру 2006 - 2025 на основе цифровых следов]]&lt;br /&gt;
* [[Лаборатории изучения командного творчества подростков в цифровых средах]]&lt;br /&gt;
&lt;br /&gt;
==   Модели для анализа ==&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Ants]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Graph  ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;graphviz&amp;gt;&lt;br /&gt;
digraph studio_31010147_author_author {&lt;br /&gt;
overlap=false;&lt;br /&gt;
splines=true;&lt;br /&gt;
outputorder=edgesfirst;&lt;br /&gt;
bgcolor=&amp;quot;transparent&amp;quot;;&lt;br /&gt;
pad=0.2;&lt;br /&gt;
graph [layout=fdp fontname=&amp;quot;Helvetica&amp;quot; label=&amp;quot;Author-author comment graph&amp;quot; labelloc=t fontsize=16 fontcolor=&amp;quot;#333333&amp;quot;];&lt;br /&gt;
node [fontname=&amp;quot;Helvetica&amp;quot;];&lt;br /&gt;
edge [color=&amp;quot;#7A7A7A&amp;quot;, penwidth=0.5];&lt;br /&gt;
A69509486 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A69928872 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A70765928 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A74510061 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A77081300 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A82035760 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A84393306 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A84611612 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A85737518 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A88972362 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A89463232 [shape=circle, style=filled, fixedsize=true, width=0.34, height=0.34, fillcolor=&amp;quot;#FAD7A0&amp;quot;, color=&amp;quot;#CA6F1E&amp;quot;, fontcolor=&amp;quot;#784212&amp;quot;, fontsize=12, label=&amp;quot;👤&amp;quot;];&lt;br /&gt;
A69509486 -&amp;gt; A70765928 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A69509486 -&amp;gt; A77081300 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.78, arrowhead=normal];&lt;br /&gt;
A69509486 -&amp;gt; A82035760 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=1.26, arrowhead=normal];&lt;br /&gt;
A69509486 -&amp;gt; A88972362 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.66, arrowhead=normal];&lt;br /&gt;
A69928872 -&amp;gt; A69509486 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A77081300 -&amp;gt; A69509486 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.78, arrowhead=normal];&lt;br /&gt;
A77081300 -&amp;gt; A82035760 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A84393306 -&amp;gt; A82035760 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A84611612 -&amp;gt; A69509486 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.66, arrowhead=normal];&lt;br /&gt;
A85737518 -&amp;gt; A74510061 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A88972362 -&amp;gt; A88972362 [color=&amp;quot;#C0392B&amp;quot;, penwidth=0.66, arrowhead=normal];&lt;br /&gt;
A89463232 -&amp;gt; A77081300 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
A89463232 -&amp;gt; A88972362 [color=&amp;quot;#D4AC0D&amp;quot;, penwidth=0.90, arrowhead=normal];&lt;br /&gt;
A89463232 -&amp;gt; A89463232 [color=&amp;quot;#C0392B&amp;quot;, penwidth=0.54, arrowhead=normal];&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/graphviz&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Загрузка готовой модели на статью ==&lt;br /&gt;
&lt;br /&gt;
Здравствуйте, Евгений Дмитриевич, у нас готова финальная версия кода для муравьев, пофиксили некоторые моменты с цветами, памятью, даже с добавлением новых кучек памяти. Мы загрузили файл в репозиторий на гитхабе &lt;br /&gt;
&lt;br /&gt;
https://github.com/cristycrastys-source/Labs_my_beloved/blob/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
&lt;br /&gt;
Но совсем забыли как можно измененную модель загрузить на нашу статью, чтобы можно было взаимодействовать с ней прямо там. И можно ли вообще так делать или только прикрепить ссылку на возможное скачивание кода + скриншоты рабочей модели или gif.&lt;br /&gt;
Помогите, пожалуйста Т-Т&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47132</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=47132"/>
		<updated>2026-05-22T10:42:47Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Добавление модели&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Модель ===&lt;br /&gt;
&lt;br /&gt;
{{#widget:Iframe&lt;br /&gt;
|url=https://raw.githubusercontent.com/cristycrastys-source/Labs_my_beloved/refs/heads/main/Econometrics/Memory_Ants.nlogox&lt;br /&gt;
|width=800&lt;br /&gt;
|height=600&lt;br /&gt;
|border=0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Категория:Работы по эконометрике]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46791</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46791"/>
		<updated>2026-05-14T10:06:23Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
to circle&lt;br /&gt;
  layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ВАРИАНТ 1!! ==&lt;br /&gt;
&lt;br /&gt;
=== Память муравьев по координатам ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count&lt;br /&gt;
  food-history-list&lt;br /&gt;
  chemical-history-list&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical-amount&lt;br /&gt;
  food-amount&lt;br /&gt;
  is-nest?&lt;br /&gt;
  nest-scent-value&lt;br /&gt;
  food-source-id&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical-carrying&lt;br /&gt;
  food-carrying&lt;br /&gt;
  energy-level&lt;br /&gt;
  memory-list&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  create-turtles population&lt;br /&gt;
  [ set size 2&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical-carrying 0&lt;br /&gt;
    set food-carrying 0&lt;br /&gt;
    set energy-level 200&lt;br /&gt;
    set memory-list [] ]&lt;br /&gt;
  setup-patches&lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  set food-history-list []&lt;br /&gt;
  set chemical-history-list []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-patches&lt;br /&gt;
  ask patches&lt;br /&gt;
  [ setup-nest&lt;br /&gt;
    setup-food&lt;br /&gt;
    recolor-patch ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-nest&lt;br /&gt;
  set is-nest? (distancexy 0 0) &amp;lt; 5&lt;br /&gt;
  set nest-scent-value 200 - distancexy 0 0&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-food&lt;br /&gt;
  if (distancexy (0.6 * max-pxcor) 0) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 1 ]&lt;br /&gt;
  if (distancexy (-0.6 * max-pxcor) (-0.6 * max-pycor)) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 2 ]&lt;br /&gt;
  if (distancexy (-0.8 * max-pxcor) (0.8 * max-pycor)) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 3 ]&lt;br /&gt;
  if food-source-id &amp;gt; 0&lt;br /&gt;
  [ set food-amount one-of [1 2] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to recolor-patch&lt;br /&gt;
  ifelse is-nest?&lt;br /&gt;
  [ set pcolor violet ]&lt;br /&gt;
  [ ifelse food-amount &amp;gt; 0&lt;br /&gt;
    [ if food-source-id = 1 [ set pcolor cyan ]&lt;br /&gt;
      if food-source-id = 2 [ set pcolor sky  ]&lt;br /&gt;
      if food-source-id = 3 [ set pcolor blue ] ]&lt;br /&gt;
    [ set pcolor scale-color green chemical-amount 0.1 5 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles&lt;br /&gt;
  [ if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    set energy-level energy-level - 1&lt;br /&gt;
    if energy-level &amp;lt;= 0 [ die ]&lt;br /&gt;
    ifelse color = red&lt;br /&gt;
    [ look-for-food  ]&lt;br /&gt;
    [ return-to-nest ]&lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1 ]&lt;br /&gt;
  diffuse chemical-amount (diffusion-rate / 100)&lt;br /&gt;
  ask patches&lt;br /&gt;
  [ set chemical-amount chemical-amount * (100 - evaporation-rate) / 100&lt;br /&gt;
    recolor-patch ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to return-to-nest&lt;br /&gt;
  ifelse is-nest?&lt;br /&gt;
  [ set color red&lt;br /&gt;
    set food-carrying 0&lt;br /&gt;
    set energy-level energy-level + 100&lt;br /&gt;
    set total-food-count total-food-count + 1&lt;br /&gt;
    rt 180 ]&lt;br /&gt;
  [ set chemical-carrying chemical-carrying + 60&lt;br /&gt;
    set chemical-amount chemical-amount + 60&lt;br /&gt;
    uphill-nest-scent ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  if food-amount &amp;gt; 0&lt;br /&gt;
  [ set food-carrying 1&lt;br /&gt;
    set color orange + 1&lt;br /&gt;
    set food-amount food-amount - 1&lt;br /&gt;
    rt 180&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set memory-list lput patch-here memory-list&lt;br /&gt;
      if length memory-list &amp;gt; 15 [ set memory-list but-last memory-list ]&lt;br /&gt;
    ]&lt;br /&gt;
    stop ]&lt;br /&gt;
  if use-memory? and energy-level &amp;lt; memory-threshold and length memory-list &amp;gt; 0 [&lt;br /&gt;
    let memory-agentset patch-set memory-list&lt;br /&gt;
    let closest-patch min-one-of memory-agentset [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if (chemical-amount &amp;gt;= 0.05) and (chemical-amount &amp;lt; 2)&lt;br /&gt;
  [ uphill-chemical ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let scent-ahead chemical-scent-at-angle   0&lt;br /&gt;
  let scent-right chemical-scent-at-angle  45&lt;br /&gt;
  let scent-left  chemical-scent-at-angle -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead)&lt;br /&gt;
  [ ifelse scent-right &amp;gt; scent-left&lt;br /&gt;
    [ rt 45 ]&lt;br /&gt;
    [ lt 45 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-nest-scent&lt;br /&gt;
  let scent-ahead nest-scent-at-angle   0&lt;br /&gt;
  let scent-right nest-scent-at-angle  45&lt;br /&gt;
  let scent-left  nest-scent-at-angle -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead)&lt;br /&gt;
  [ ifelse scent-right &amp;gt; scent-left&lt;br /&gt;
    [ rt 45 ]&lt;br /&gt;
    [ lt 45 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  rt random 40&lt;br /&gt;
  lt random 40&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report nest-scent-at-angle [angle]&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [nest-scent-value] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent-at-angle [angle]&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical-amount] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if length memory-list &amp;gt; 0 [&lt;br /&gt;
      let to-forget []&lt;br /&gt;
      foreach memory-list [ mem-patch -&amp;gt;&lt;br /&gt;
        if [food-amount] of mem-patch = 0 [&lt;br /&gt;
          set to-forget lput mem-patch to-forget&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
      foreach to-forget [ forget-patch -&amp;gt;&lt;br /&gt;
        set memory-list remove forget-patch memory-list&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
; See Info tab for full copyright and license.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46790</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46790"/>
		<updated>2026-05-14T10:03:57Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
to circle&lt;br /&gt;
  layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ВАРИАНТ 1!! ==&lt;br /&gt;
&lt;br /&gt;
=== Память муравьев по координатам ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ВАРИАНТ 2!!&lt;br /&gt;
=== Память как второй тип феромона ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical           ; коллективный феромон&lt;br /&gt;
  memory-pheromone   ; индивидуальный феромон (память)&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  has-memory?        ; флаг: есть ли у муравья активная память&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set has-memory? false&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemicals ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Обычный феромон&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Память-феромон (испаряется и диффундирует)&lt;br /&gt;
  if use-memory? [&lt;br /&gt;
    diffuse memory-pheromone 0.5&lt;br /&gt;
    ask patches [&lt;br /&gt;
      set memory-pheromone memory-pheromone * (100 - memory-evaporation) / 100&lt;br /&gt;
      if memory-pheromone &amp;lt; 0.05 [ set memory-pheromone 0 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Визуализация&lt;br /&gt;
  ask patches [&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      ifelse memory-pheromone &amp;gt; 0.1&lt;br /&gt;
        [ set pcolor scale-color blue memory-pheromone 0 5 ]&lt;br /&gt;
        [ set pcolor scale-color gray chemical 0 10 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 ]&lt;br /&gt;
  set has-memory? true&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemicals&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    ask patch-here [&lt;br /&gt;
      set memory-pheromone memory-pheromone + memory-deposit&lt;br /&gt;
      if memory-pheromone &amp;gt; 200 [ set memory-pheromone 200 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    let mem-here memory-pheromone&lt;br /&gt;
    if mem-here &amp;gt; 0.5 [&lt;br /&gt;
      uphill-memory-pheromone&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
    fd 1&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-memory-pheromone&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value memory-pheromone&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if memory-pheromone &amp;gt; best-value [&lt;br /&gt;
      set best-value memory-pheromone&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ИСПРАВЛЕННАЯ ВЕРСИЯ&lt;br /&gt;
;; Нет повторяющихся имён переменных&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count&lt;br /&gt;
  food-history-list&lt;br /&gt;
  chemical-history-list&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical-amount&lt;br /&gt;
  food-amount&lt;br /&gt;
  is-nest?&lt;br /&gt;
  nest-scent-value&lt;br /&gt;
  food-source-id&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical-carrying&lt;br /&gt;
  food-carrying&lt;br /&gt;
  energy-level&lt;br /&gt;
  memory-list&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  create-turtles population&lt;br /&gt;
  [ set size 2&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical-carrying 0&lt;br /&gt;
    set food-carrying 0&lt;br /&gt;
    set energy-level 200&lt;br /&gt;
    set memory-list [] ]&lt;br /&gt;
  setup-patches&lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  set food-history-list []&lt;br /&gt;
  set chemical-history-list []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-patches&lt;br /&gt;
  ask patches&lt;br /&gt;
  [ setup-nest&lt;br /&gt;
    setup-food&lt;br /&gt;
    recolor-patch ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-nest&lt;br /&gt;
  set is-nest? (distancexy 0 0) &amp;lt; 5&lt;br /&gt;
  set nest-scent-value 200 - distancexy 0 0&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-food&lt;br /&gt;
  if (distancexy (0.6 * max-pxcor) 0) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 1 ]&lt;br /&gt;
  if (distancexy (-0.6 * max-pxcor) (-0.6 * max-pycor)) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 2 ]&lt;br /&gt;
  if (distancexy (-0.8 * max-pxcor) (0.8 * max-pycor)) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 3 ]&lt;br /&gt;
  if food-source-id &amp;gt; 0&lt;br /&gt;
  [ set food-amount one-of [1 2] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to recolor-patch&lt;br /&gt;
  ifelse is-nest?&lt;br /&gt;
  [ set pcolor violet ]&lt;br /&gt;
  [ ifelse food-amount &amp;gt; 0&lt;br /&gt;
    [ if food-source-id = 1 [ set pcolor cyan ]&lt;br /&gt;
      if food-source-id = 2 [ set pcolor sky  ]&lt;br /&gt;
      if food-source-id = 3 [ set pcolor blue ] ]&lt;br /&gt;
    [ set pcolor scale-color green chemical-amount 0.1 5 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles&lt;br /&gt;
  [ if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    set energy-level energy-level - 1&lt;br /&gt;
    if energy-level &amp;lt;= 0 [ die ]&lt;br /&gt;
    ifelse color = red&lt;br /&gt;
    [ look-for-food  ]&lt;br /&gt;
    [ return-to-nest ]&lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1 ]&lt;br /&gt;
  diffuse chemical-amount (diffusion-rate / 100)&lt;br /&gt;
  ask patches&lt;br /&gt;
  [ set chemical-amount chemical-amount * (100 - evaporation-rate) / 100&lt;br /&gt;
    recolor-patch ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to return-to-nest&lt;br /&gt;
  ifelse is-nest?&lt;br /&gt;
  [ set color red&lt;br /&gt;
    set food-carrying 0&lt;br /&gt;
    set energy-level energy-level + 100&lt;br /&gt;
    set total-food-count total-food-count + 1&lt;br /&gt;
    rt 180 ]&lt;br /&gt;
  [ set chemical-carrying chemical-carrying + 60&lt;br /&gt;
    set chemical-amount chemical-amount + 60&lt;br /&gt;
    uphill-nest-scent ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  if food-amount &amp;gt; 0&lt;br /&gt;
  [ set food-carrying 1&lt;br /&gt;
    set color orange + 1&lt;br /&gt;
    set food-amount food-amount - 1&lt;br /&gt;
    rt 180&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set memory-list lput patch-here memory-list&lt;br /&gt;
      if length memory-list &amp;gt; 15 [ set memory-list but-last memory-list ]&lt;br /&gt;
    ]&lt;br /&gt;
    stop ]&lt;br /&gt;
  if use-memory? and energy-level &amp;lt; memory-threshold and length memory-list &amp;gt; 0 [&lt;br /&gt;
    let memory-agentset patch-set memory-list&lt;br /&gt;
    let closest-patch min-one-of memory-agentset [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if (chemical-amount &amp;gt;= 0.05) and (chemical-amount &amp;lt; 2)&lt;br /&gt;
  [ uphill-chemical ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let scent-ahead chemical-scent-at-angle   0&lt;br /&gt;
  let scent-right chemical-scent-at-angle  45&lt;br /&gt;
  let scent-left  chemical-scent-at-angle -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead)&lt;br /&gt;
  [ ifelse scent-right &amp;gt; scent-left&lt;br /&gt;
    [ rt 45 ]&lt;br /&gt;
    [ lt 45 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-nest-scent&lt;br /&gt;
  let scent-ahead nest-scent-at-angle   0&lt;br /&gt;
  let scent-right nest-scent-at-angle  45&lt;br /&gt;
  let scent-left  nest-scent-at-angle -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead)&lt;br /&gt;
  [ ifelse scent-right &amp;gt; scent-left&lt;br /&gt;
    [ rt 45 ]&lt;br /&gt;
    [ lt 45 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  rt random 40&lt;br /&gt;
  lt random 40&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report nest-scent-at-angle [angle]&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [nest-scent-value] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent-at-angle [angle]&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical-amount] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if length memory-list &amp;gt; 0 [&lt;br /&gt;
      let to-forget []&lt;br /&gt;
      foreach memory-list [ mem-patch -&amp;gt;&lt;br /&gt;
        if [food-amount] of mem-patch = 0 [&lt;br /&gt;
          set to-forget lput mem-patch to-forget&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
      foreach to-forget [ forget-patch -&amp;gt;&lt;br /&gt;
        set memory-list remove forget-patch memory-list&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
; See Info tab for full copyright and license.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46789</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46789"/>
		<updated>2026-05-14T10:03:16Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
to circle&lt;br /&gt;
  layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ВАРИАНТ 1!! ==&lt;br /&gt;
&lt;br /&gt;
=== Память муравьев по координатам ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ВАРИАНТ 2!!&lt;br /&gt;
=== Память как второй тип феромона ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ANTS WITH MEMORY (Вариант 2)&lt;br /&gt;
;; Память как второй тип феромона (индивидуальный след)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical           ; коллективный феромон&lt;br /&gt;
  memory-pheromone   ; индивидуальный феромон (память)&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  has-memory?        ; флаг: есть ли у муравья активная память&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set has-memory? false&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemicals ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Обычный феромон&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Память-феромон (испаряется и диффундирует)&lt;br /&gt;
  if use-memory? [&lt;br /&gt;
    diffuse memory-pheromone 0.5&lt;br /&gt;
    ask patches [&lt;br /&gt;
      set memory-pheromone memory-pheromone * (100 - memory-evaporation) / 100&lt;br /&gt;
      if memory-pheromone &amp;lt; 0.05 [ set memory-pheromone 0 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Визуализация&lt;br /&gt;
  ask patches [&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      ifelse memory-pheromone &amp;gt; 0.1&lt;br /&gt;
        [ set pcolor scale-color blue memory-pheromone 0 5 ]&lt;br /&gt;
        [ set pcolor scale-color gray chemical 0 10 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 ]&lt;br /&gt;
  set has-memory? true&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemicals&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    ask patch-here [&lt;br /&gt;
      set memory-pheromone memory-pheromone + memory-deposit&lt;br /&gt;
      if memory-pheromone &amp;gt; 200 [ set memory-pheromone 200 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    let mem-here memory-pheromone&lt;br /&gt;
    if mem-here &amp;gt; 0.5 [&lt;br /&gt;
      uphill-memory-pheromone&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
    fd 1&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-memory-pheromone&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value memory-pheromone&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if memory-pheromone &amp;gt; best-value [&lt;br /&gt;
      set best-value memory-pheromone&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lisp&amp;quot;&amp;gt;&lt;br /&gt;
;; ANTS WITH MEMORY - ИСПРАВЛЕННАЯ ВЕРСИЯ&lt;br /&gt;
;; Нет повторяющихся имён переменных&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food-count&lt;br /&gt;
  food-history-list&lt;br /&gt;
  chemical-history-list&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical-amount&lt;br /&gt;
  food-amount&lt;br /&gt;
  is-nest?&lt;br /&gt;
  nest-scent-value&lt;br /&gt;
  food-source-id&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical-carrying&lt;br /&gt;
  food-carrying&lt;br /&gt;
  energy-level&lt;br /&gt;
  memory-list&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  create-turtles population&lt;br /&gt;
  [ set size 2&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical-carrying 0&lt;br /&gt;
    set food-carrying 0&lt;br /&gt;
    set energy-level 200&lt;br /&gt;
    set memory-list [] ]&lt;br /&gt;
  setup-patches&lt;br /&gt;
  set total-food-count 0&lt;br /&gt;
  set food-history-list []&lt;br /&gt;
  set chemical-history-list []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-patches&lt;br /&gt;
  ask patches&lt;br /&gt;
  [ setup-nest&lt;br /&gt;
    setup-food&lt;br /&gt;
    recolor-patch ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-nest&lt;br /&gt;
  set is-nest? (distancexy 0 0) &amp;lt; 5&lt;br /&gt;
  set nest-scent-value 200 - distancexy 0 0&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to setup-food&lt;br /&gt;
  if (distancexy (0.6 * max-pxcor) 0) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 1 ]&lt;br /&gt;
  if (distancexy (-0.6 * max-pxcor) (-0.6 * max-pycor)) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 2 ]&lt;br /&gt;
  if (distancexy (-0.8 * max-pxcor) (0.8 * max-pycor)) &amp;lt; 5&lt;br /&gt;
  [ set food-source-id 3 ]&lt;br /&gt;
  if food-source-id &amp;gt; 0&lt;br /&gt;
  [ set food-amount one-of [1 2] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to recolor-patch&lt;br /&gt;
  ifelse is-nest?&lt;br /&gt;
  [ set pcolor violet ]&lt;br /&gt;
  [ ifelse food-amount &amp;gt; 0&lt;br /&gt;
    [ if food-source-id = 1 [ set pcolor cyan ]&lt;br /&gt;
      if food-source-id = 2 [ set pcolor sky  ]&lt;br /&gt;
      if food-source-id = 3 [ set pcolor blue ] ]&lt;br /&gt;
    [ set pcolor scale-color green chemical-amount 0.1 5 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles&lt;br /&gt;
  [ if who &amp;gt;= ticks [ stop ]&lt;br /&gt;
    set energy-level energy-level - 1&lt;br /&gt;
    if energy-level &amp;lt;= 0 [ die ]&lt;br /&gt;
    ifelse color = red&lt;br /&gt;
    [ look-for-food  ]&lt;br /&gt;
    [ return-to-nest ]&lt;br /&gt;
    wiggle&lt;br /&gt;
    fd 1 ]&lt;br /&gt;
  diffuse chemical-amount (diffusion-rate / 100)&lt;br /&gt;
  ask patches&lt;br /&gt;
  [ set chemical-amount chemical-amount * (100 - evaporation-rate) / 100&lt;br /&gt;
    recolor-patch ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to return-to-nest&lt;br /&gt;
  ifelse is-nest?&lt;br /&gt;
  [ set color red&lt;br /&gt;
    set food-carrying 0&lt;br /&gt;
    set energy-level energy-level + 100&lt;br /&gt;
    set total-food-count total-food-count + 1&lt;br /&gt;
    rt 180 ]&lt;br /&gt;
  [ set chemical-carrying chemical-carrying + 60&lt;br /&gt;
    set chemical-amount chemical-amount + 60&lt;br /&gt;
    uphill-nest-scent ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  if food-amount &amp;gt; 0&lt;br /&gt;
  [ set food-carrying 1&lt;br /&gt;
    set color orange + 1&lt;br /&gt;
    set food-amount food-amount - 1&lt;br /&gt;
    rt 180&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set memory-list lput patch-here memory-list&lt;br /&gt;
      if length memory-list &amp;gt; 15 [ set memory-list but-last memory-list ]&lt;br /&gt;
    ]&lt;br /&gt;
    stop ]&lt;br /&gt;
  if use-memory? and energy-level &amp;lt; memory-threshold and length memory-list &amp;gt; 0 [&lt;br /&gt;
    let memory-agentset patch-set memory-list&lt;br /&gt;
    let closest-patch min-one-of memory-agentset [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if (chemical-amount &amp;gt;= 0.05) and (chemical-amount &amp;lt; 2)&lt;br /&gt;
  [ uphill-chemical ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let scent-ahead chemical-scent-at-angle   0&lt;br /&gt;
  let scent-right chemical-scent-at-angle  45&lt;br /&gt;
  let scent-left  chemical-scent-at-angle -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead)&lt;br /&gt;
  [ ifelse scent-right &amp;gt; scent-left&lt;br /&gt;
    [ rt 45 ]&lt;br /&gt;
    [ lt 45 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-nest-scent&lt;br /&gt;
  let scent-ahead nest-scent-at-angle   0&lt;br /&gt;
  let scent-right nest-scent-at-angle  45&lt;br /&gt;
  let scent-left  nest-scent-at-angle -45&lt;br /&gt;
  if (scent-right &amp;gt; scent-ahead) or (scent-left &amp;gt; scent-ahead)&lt;br /&gt;
  [ ifelse scent-right &amp;gt; scent-left&lt;br /&gt;
    [ rt 45 ]&lt;br /&gt;
    [ lt 45 ] ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to wiggle&lt;br /&gt;
  rt random 40&lt;br /&gt;
  lt random 40&lt;br /&gt;
  if not can-move? 1 [ rt 180 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report nest-scent-at-angle [angle]&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [nest-scent-value] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to-report chemical-scent-at-angle [angle]&lt;br /&gt;
  let p patch-right-and-ahead angle 1&lt;br /&gt;
  if p = nobody [ report 0 ]&lt;br /&gt;
  report [chemical-amount] of p&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if length memory-list &amp;gt; 0 [&lt;br /&gt;
      let to-forget []&lt;br /&gt;
      foreach memory-list [ mem-patch -&amp;gt;&lt;br /&gt;
        if [food-amount] of mem-patch = 0 [&lt;br /&gt;
          set to-forget lput mem-patch to-forget&lt;br /&gt;
        ]&lt;br /&gt;
      ]&lt;br /&gt;
      foreach to-forget [ forget-patch -&amp;gt;&lt;br /&gt;
        set memory-list remove forget-patch memory-list&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
; Copyright 1997 Uri Wilensky.&lt;br /&gt;
; See Info tab for full copyright and license.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46786</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46786"/>
		<updated>2026-05-14T09:40:33Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Полностью удалено содержимое страницы&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46785</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46785"/>
		<updated>2026-05-14T09:39:20Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Память муравьев по координатам */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;turtles-own [&lt;br /&gt;
  has-food      ; 0 = нет еды, 1 = несёт еду&lt;br /&gt;
  memory        ; список запомненных патчей (где была еда)&lt;br /&gt;
  energy        ; энергия муравья&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  total-food    ; сколько еды доставлено в гнездо&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;; НАСТРОЙКА МИРА ;;&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  clear-all&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  ; гнездо в центре (0,0)&lt;br /&gt;
  ask patch 0 0 [ set pcolor violet ]&lt;br /&gt;
  &lt;br /&gt;
  ; 8 источников еды по кругу (для мира от -16 до 16)&lt;br /&gt;
  ask patch 16 0 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]      ; право&lt;br /&gt;
  ask patch -16 0 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]     ; лево&lt;br /&gt;
  ask patch 0 16 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]      ; верх&lt;br /&gt;
  ask patch 0 -16 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]     ; низ&lt;br /&gt;
  ask patch 16 16 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]     ; верх-право&lt;br /&gt;
  ask patch -16 16 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]    ; верх-лево&lt;br /&gt;
  ask patch 16 -16 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]    ; низ-право&lt;br /&gt;
  ask patch -16 -16 [ set pcolor green set plabel &amp;quot;E&amp;quot; ]   ; низ-лево&lt;br /&gt;
  &lt;br /&gt;
  ; создаём муравьёв (40 штук)&lt;br /&gt;
  create-turtles 40 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set has-food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set energy 200&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  set total-food 0&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ ;;&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    ; тратим энергию&lt;br /&gt;
    set energy energy - 1&lt;br /&gt;
    if energy &amp;lt;= 0 [ die ]&lt;br /&gt;
    &lt;br /&gt;
    ; поведение в зависимости от того, несёт ли еду&lt;br /&gt;
    ifelse color = red&lt;br /&gt;
      [ look-for-food ]&lt;br /&gt;
      [ return-to-nest ]&lt;br /&gt;
    &lt;br /&gt;
    ; движение&lt;br /&gt;
    fd 1&lt;br /&gt;
    right random 30&lt;br /&gt;
    left random 30&lt;br /&gt;
  ]&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;; ПОВЕДЕНИЕ      ;;&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
to look-for-food&lt;br /&gt;
  ; если на патче есть еда (зелёный цвет)&lt;br /&gt;
  if pcolor = green [&lt;br /&gt;
    set has-food 1&lt;br /&gt;
    set color orange&lt;br /&gt;
    set pcolor black      ; еда исчезает&lt;br /&gt;
    set plabel &amp;quot;&amp;quot;          ; убираем метку&lt;br /&gt;
    &lt;br /&gt;
    ; ЗАПОМИНАЕМ МЕСТО (если память включена)&lt;br /&gt;
    if use-memory? [&lt;br /&gt;
      set memory lput patch-here memory&lt;br /&gt;
      ; ограничиваем память 15 местами&lt;br /&gt;
      if length memory &amp;gt; 15 [ set memory but-last memory ]&lt;br /&gt;
    ]&lt;br /&gt;
    &lt;br /&gt;
    right 180              ; разворачиваемся к гнезду&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ; ЕСЛИ ЭНЕРГИЯ МАЛА И ЕСТЬ ПАМЯТЬ — ИДЁМ К ЗАПОМНЕННОМУ МЕСТУ&lt;br /&gt;
  if use-memory? and energy &amp;lt; memory-threshold and length memory &amp;gt; 0 [&lt;br /&gt;
    let target-patch min-one-of memory [distance myself]&lt;br /&gt;
    if target-patch != nobody [&lt;br /&gt;
      face target-patch&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to return-to-nest&lt;br /&gt;
  ; если в гнезде (фиолетовый патч)&lt;br /&gt;
  if pcolor = violet [&lt;br /&gt;
    set has-food 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set energy energy + 100    ; награда за еду&lt;br /&gt;
    set total-food total-food + 1&lt;br /&gt;
    right 180&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ЗАБЫВАНИЕ УСТАРЕВШЕЙ ПАМЯТИ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-forget []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      ; если на запомненном патче больше нет еды (не зелёный)&lt;br /&gt;
      if [pcolor] of mem-patch != green [&lt;br /&gt;
        set to-forget lput mem-patch to-forget&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-forget [ forget-patch -&amp;gt;&lt;br /&gt;
      set memory remove forget-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46781</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46781"/>
		<updated>2026-05-14T09:05:49Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Код */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
== Код ==&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
to circle&lt;br /&gt;
  layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ВАРИАНТ 1!!&lt;br /&gt;
=== Память муравьев по координатам ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ВАРИАНТ 2!!&lt;br /&gt;
=== Память как второй тип феромона ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ANTS WITH MEMORY (Вариант 2)&lt;br /&gt;
;; Память как второй тип феромона (индивидуальный след)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical           ; коллективный феромон&lt;br /&gt;
  memory-pheromone   ; индивидуальный феромон (память)&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  has-memory?        ; флаг: есть ли у муравья активная память&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set has-memory? false&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemicals ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Обычный феромон&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Память-феромон (испаряется и диффундирует)&lt;br /&gt;
  if use-memory? [&lt;br /&gt;
    diffuse memory-pheromone 0.5&lt;br /&gt;
    ask patches [&lt;br /&gt;
      set memory-pheromone memory-pheromone * (100 - memory-evaporation) / 100&lt;br /&gt;
      if memory-pheromone &amp;lt; 0.05 [ set memory-pheromone 0 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  ;; Визуализация&lt;br /&gt;
  ask patches [&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      ifelse memory-pheromone &amp;gt; 0.1&lt;br /&gt;
        [ set pcolor scale-color blue memory-pheromone 0 5 ]&lt;br /&gt;
        [ set pcolor scale-color gray chemical 0 10 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 ]&lt;br /&gt;
  set has-memory? true&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemicals&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    ask patch-here [&lt;br /&gt;
      set memory-pheromone memory-pheromone + memory-deposit&lt;br /&gt;
      if memory-pheromone &amp;gt; 200 [ set memory-pheromone 200 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    let mem-here memory-pheromone&lt;br /&gt;
    if mem-here &amp;gt; 0.5 [&lt;br /&gt;
      uphill-memory-pheromone&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
    fd 1&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-memory-pheromone&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value memory-pheromone&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if memory-pheromone &amp;gt; best-value [&lt;br /&gt;
      set best-value memory-pheromone&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46780</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46780"/>
		<updated>2026-05-14T09:03:30Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Код */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
== Код ==&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
to circle&lt;br /&gt;
  layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;; ВАРИАНТ 1!!&lt;br /&gt;
=== Память муравьев по координатам ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;; ВАРИАНТ 2!!&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; Память как второй тип феромона (индивидуальный след)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical           ; коллективный феромон&lt;br /&gt;
  memory-pheromone   ; индивидуальный феромон (память)&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  has-memory?        ; флаг: есть ли у муравья активная память&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set has-memory? false   ; изначально память не активна&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemicals ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ;; Обычный феромон&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ;; Память-феромон (испаряется и диффундирует)&lt;br /&gt;
  if use-memory? [&lt;br /&gt;
    diffuse memory-pheromone 0.5&lt;br /&gt;
    ask patches [&lt;br /&gt;
      set memory-pheromone memory-pheromone * (100 - memory-evaporation) / 100&lt;br /&gt;
      if memory-pheromone &amp;lt; 0.05 [ set memory-pheromone 0 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ;; Визуализация&lt;br /&gt;
  ask patches [&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      ifelse memory-pheromone &amp;gt; 0.1&lt;br /&gt;
        [ set pcolor scale-color blue memory-pheromone 0 5 ]  ; синий = память&lt;br /&gt;
        [ set pcolor scale-color gray chemical 0 10 ]         ; серый = феромон&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 ]&lt;br /&gt;
  ;; муравей, нашёдший еду, активирует память&lt;br /&gt;
  set has-memory? true&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemicals&lt;br /&gt;
  ;; Оставляем обычный феромон&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
  &lt;br /&gt;
  ;; Оставляем феромон-память, если память активна&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    ask patch-here [&lt;br /&gt;
      set memory-pheromone memory-pheromone + memory-deposit&lt;br /&gt;
      if memory-pheromone &amp;gt; 200 [ set memory-pheromone 200 ]&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ;; Сначала пробуем идти по памяти (индивидуальный след)&lt;br /&gt;
  if use-memory? and has-memory? [&lt;br /&gt;
    let mem-here memory-pheromone&lt;br /&gt;
    if mem-here &amp;gt; 0.5 [&lt;br /&gt;
      uphill-memory-pheromone&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ;; Если памяти нет — обычный феромон&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
    fd 1&lt;br /&gt;
    stop&lt;br /&gt;
  ]&lt;br /&gt;
  &lt;br /&gt;
  ;; Иначе случайное движение&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-memory-pheromone&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value memory-pheromone&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if memory-pheromone &amp;gt; best-value [&lt;br /&gt;
      set best-value memory-pheromone&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46779</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46779"/>
		<updated>2026-05-14T09:00:48Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Пример 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
== Код ==&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
to circle&lt;br /&gt;
  layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Память ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;netlogo&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46778</id>
		<title>Ants/Clone01</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Ants/Clone01&amp;diff=46778"/>
		<updated>2026-05-14T08:59:05Z</updated>

		<summary type="html">&lt;p&gt;CristCas: /* Пример 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; * [[Ants]]&lt;br /&gt;
&amp;lt;netlogo model=&amp;quot;Ants&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Код  ==&lt;br /&gt;
&lt;br /&gt;
=== Пример 1 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;Lisp&amp;quot; line&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to circle&lt;br /&gt;
 layout-circle turtles max-pxcor - 2&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
globals [&lt;br /&gt;
  food-source-number&lt;br /&gt;
  food-in-nest&lt;br /&gt;
  food-in-nest-history&lt;br /&gt;
  chemical-history&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
patches-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  food-source-number&lt;br /&gt;
  nest?&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
turtles-own [&lt;br /&gt;
  chemical&lt;br /&gt;
  food&lt;br /&gt;
  memory        ; список запомненных патчей (мест с едой)&lt;br /&gt;
]&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ИНИЦИАЛИЗАЦИЯ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to setup&lt;br /&gt;
  ca&lt;br /&gt;
  set-default-shape turtles &amp;quot;bug&amp;quot;&lt;br /&gt;
  ask patch 0 0 [ set nest? true set pcolor violet ]&lt;br /&gt;
  create-food-sources&lt;br /&gt;
  create-ants&lt;br /&gt;
  set food-in-nest 0&lt;br /&gt;
  set food-in-nest-history []&lt;br /&gt;
  set chemical-history []&lt;br /&gt;
  reset-ticks&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-food-sources&lt;br /&gt;
  let number-of-food-sources 4&lt;br /&gt;
  set food-source-number number-of-food-sources&lt;br /&gt;
  let angle 0&lt;br /&gt;
  let radius (max-pxcor - 5)&lt;br /&gt;
  let angle-step 360 / number-of-food-sources&lt;br /&gt;
  repeat number-of-food-sources [&lt;br /&gt;
    let xcor radius * cos angle&lt;br /&gt;
    let ycor radius * sin angle&lt;br /&gt;
    ask patch xcor ycor [&lt;br /&gt;
      set food 1&lt;br /&gt;
      set pcolor green&lt;br /&gt;
      set food-source-number angle&lt;br /&gt;
    ]&lt;br /&gt;
    set angle angle + angle-step&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to create-ants&lt;br /&gt;
  create-turtles 50 [&lt;br /&gt;
    setxy 0 0&lt;br /&gt;
    set color red&lt;br /&gt;
    set chemical 0&lt;br /&gt;
    set food 0&lt;br /&gt;
    set memory []&lt;br /&gt;
    set label &amp;quot;&amp;quot;&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ОСНОВНОЙ ЦИКЛ&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to go&lt;br /&gt;
  if all? turtles [food = 1] [ stop ]&lt;br /&gt;
  ask turtles [&lt;br /&gt;
    if nest? and food = 1 [ drop-food ]&lt;br /&gt;
    if not nest? [ move ]&lt;br /&gt;
    if food-here &amp;gt; 0 and food = 0 [ pick-up-food ]&lt;br /&gt;
    if not nest? [ lay-chemical ]&lt;br /&gt;
  ]&lt;br /&gt;
  diffuse chemical 0.5&lt;br /&gt;
  ask patches [&lt;br /&gt;
    set chemical chemical * 0.95&lt;br /&gt;
    if chemical &amp;lt; 0.01 [ set chemical 0 ]&lt;br /&gt;
    if not nest? [&lt;br /&gt;
      set pcolor scale-color gray chemical 0 10&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  forget-stale-memory&lt;br /&gt;
  update-plots&lt;br /&gt;
  tick&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
;; ============================================&lt;br /&gt;
;; ПАМЯТЬ (ОСНОВНАЯ ЛОГИКА)&lt;br /&gt;
;; ============================================&lt;br /&gt;
&lt;br /&gt;
to pick-up-food&lt;br /&gt;
  set food 1&lt;br /&gt;
  set color orange&lt;br /&gt;
  set label &amp;quot;F&amp;quot;&lt;br /&gt;
  set food-here 0&lt;br /&gt;
  ask patch-here [ set food 0 set pcolor gray ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to drop-food&lt;br /&gt;
  set food 0&lt;br /&gt;
  set color red&lt;br /&gt;
  set label &amp;quot;&amp;quot;&lt;br /&gt;
  set food-in-nest food-in-nest + 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to lay-chemical&lt;br /&gt;
  ask patch-here [ set chemical chemical + 60 ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to move&lt;br /&gt;
  ; используем память, если энергии мало и есть воспоминания&lt;br /&gt;
  if energy &amp;lt; 100 and length memory &amp;gt; 0 [&lt;br /&gt;
    let closest-patch min-one-of memory [distance myself]&lt;br /&gt;
    if closest-patch != nobody [&lt;br /&gt;
      face closest-patch&lt;br /&gt;
      fd 1&lt;br /&gt;
      stop&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  ; иначе обычное движение по феромону&lt;br /&gt;
  if chemical &amp;gt; 0.5 [&lt;br /&gt;
    uphill-chemical&lt;br /&gt;
  ]&lt;br /&gt;
  fd 1&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to uphill-chemical&lt;br /&gt;
  let best-patch patch-here&lt;br /&gt;
  let best-value chemical&lt;br /&gt;
  ask neighbors [&lt;br /&gt;
    if chemical &amp;gt; best-value [&lt;br /&gt;
      set best-value chemical&lt;br /&gt;
      set best-patch self&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
  if best-patch != patch-here [&lt;br /&gt;
    face best-patch&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to forget-stale-memory&lt;br /&gt;
  if length memory &amp;gt; 0 [&lt;br /&gt;
    let to-remove []&lt;br /&gt;
    foreach memory [ mem-patch -&amp;gt;&lt;br /&gt;
      if [food] of mem-patch = 0 [&lt;br /&gt;
        set to-remove lput mem-patch to-remove&lt;br /&gt;
      ]&lt;br /&gt;
    ]&lt;br /&gt;
    foreach to-remove [ rm-patch -&amp;gt;&lt;br /&gt;
      set memory remove rm-patch memory&lt;br /&gt;
    ]&lt;br /&gt;
  ]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
to update-plots&lt;br /&gt;
  ; заглушка для графиков&lt;br /&gt;
end&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46578</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46578"/>
		<updated>2026-04-30T09:15:59Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]]&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]]&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]]&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46577</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46577"/>
		<updated>2026-04-30T09:13:16Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
&#039;&#039;(Оставить 1 модееееель)&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - Termites&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - Ants&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - MutualisticNetwork&lt;br /&gt;
&#039;&#039;(Надо определиться с 1 моделью)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Распределение работы ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - сделать З̸̧͖̫̫҇̀̇̑а҈̧̞̟̽͡д҉̨̜̒̽̕а̷͚̲̗҇̎̅̓͢ч̷̡̲̂̑͠а҈̨̱͎́̂͞&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Графики, таблицы и т.д.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
&#039;&#039;(Всё что использовали и что помогло при изучении - сюда)&#039;&#039;&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=46573</id>
		<title>Участник:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=46573"/>
		<updated>2026-04-30T08:51:56Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UserMGPU&lt;br /&gt;
|Field_of_knowledge=Математика, Информатика, Психология, Социология, Экономика, Лингвистика, Искусственный интеллект, Управление, Обществознание, Game design, Большие данные, Статистика, Алгебра, Иностранный язык, Технология&lt;br /&gt;
|Position=Бакалавриат&lt;br /&gt;
|Profile=Математика, Информатика, Английский язык, Обществознание, Право, Экономика, Моделирование&lt;br /&gt;
|PedDirection=Нет&lt;br /&gt;
|Working_On=Stygmergia v obrazovanii (Stygmergia_v_obrazovanii)&lt;br /&gt;
}}&lt;br /&gt;
[[Категория:UserMGPU]]&lt;br /&gt;
[[Категория:ЦИБ-241]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46572</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46572"/>
		<updated>2026-04-30T08:49:54Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= [[Стигмергия]] в образовании =&lt;br /&gt;
&lt;br /&gt;
{{#ask: [[Стигмергия]] | ?Description }}&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; [[NetLogo]] (модели [[Termites]], Ants, MutualisticNetwork)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира Софронова]] - Termites&lt;br /&gt;
* [[Участник:Маргарита_Еськова|Маргарита Еськова]] - Ants&lt;br /&gt;
* [[Участник:CristCas|Анастасия Юдаева]] - MutualisticNetwork&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Здесь позже появятся графики, таблицы и ваши выводы)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=46566</id>
		<title>Участник:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=46566"/>
		<updated>2026-04-30T08:37:13Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UserMGPU&lt;br /&gt;
|Field_of_knowledge=Математика, Информатика, Социология, Экономика, Лингвистика, Искусственный интеллект, Управление, Game design, Большие данные, Статистика, Алгебра, Иностранный язык&lt;br /&gt;
|Position=Бакалавриат&lt;br /&gt;
|Profile=Математика, Информатика, Английский язык, Обществознание, Право, Моделирование&lt;br /&gt;
|PedDirection=Нет&lt;br /&gt;
|Working_On=Изучение Lens Psych Collab, Stygmergia_v_obrazovanii&lt;br /&gt;
}}&lt;br /&gt;
[[Категория:UserMGPU]]&lt;br /&gt;
[[Категория:ЦИБ-241]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=46565</id>
		<title>Участник:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=46565"/>
		<updated>2026-04-30T08:36:56Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UserMGPU&lt;br /&gt;
|Field_of_knowledge=Математика, Информатика, Социология, Экономика, Лингвистика, Искусственный интеллект, Управление, Game design, Большие данные, Статистика, Алгебра, Иностранный язык&lt;br /&gt;
|Position=Бакалавриат&lt;br /&gt;
|Profile=Математика, Информатика, Английский язык, Обществознание, Право, Моделирование&lt;br /&gt;
|PedDirection=Нет&lt;br /&gt;
|Working_On=Изучение Lens Psych Collab, https://digida.mgpu.ru/index.php/Stygmergia_v_obrazovanii&lt;br /&gt;
}}&lt;br /&gt;
[[Категория:UserMGPU]]&lt;br /&gt;
[[Категория:ЦИБ-241]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46559</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46559"/>
		<updated>2026-04-30T08:22:48Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Стигмергия в образовании =&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модели Termites, Ants, MutualisticNetwork)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира]] - Termites&lt;br /&gt;
* [[Участник:Рита|Рита]] - Ants&lt;br /&gt;
* [[Участник:CristCas|Настя]] - MutualisticNetwork&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Здесь позже появятся графики, таблицы и ваши выводы)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46558</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46558"/>
		<updated>2026-04-30T08:20:48Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Стигмергия в образовании =&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модели Termites, Ants, MutualisticNetwork)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира]] - Termites&lt;br /&gt;
* [[Участник:Рита|Рита]] - Ants&lt;br /&gt;
* [[Участник:CristCas|Настя]] - MutualisticNetwork&lt;br /&gt;
&lt;br /&gt;
== План работы ==&lt;br /&gt;
# Настройка экспериментов в BehaviorSpace.&lt;br /&gt;
# Генерация и выгрузка данных.&lt;br /&gt;
# Регрессионный анализ и проверка гипотез в R.&lt;br /&gt;
# Оформление выводов и визуализация (RAWGraphs).&lt;br /&gt;
&lt;br /&gt;
== Результаты ==&lt;br /&gt;
&#039;&#039;(Здесь позже появятся графики, таблицы и ваши выводы)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [[Практикум по эконометрике (syllabus)]]&lt;br /&gt;
* Категория: [[:Категория:Активные эссе студентов|Активные эссе студентов]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46557</id>
		<title>Stygmergia v obrazovanii</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=Stygmergia_v_obrazovanii&amp;diff=46557"/>
		<updated>2026-04-30T08:18:27Z</updated>

		<summary type="html">&lt;p&gt;CristCas: Новая страница: «= Стигмергия в образовании =  == Аннотация ==  == Рабочие гипотезы ==  == Инструменты == * &amp;#039;&amp;#039;&amp;#039;Моделирование:&amp;#039;&amp;#039;&amp;#039; NetLogo (модели Termites, Ants, MutualisticNetwork) * &amp;#039;&amp;#039;&amp;#039;Анализ данных и программирование:&amp;#039;&amp;#039;&amp;#039; R (tidyverse, ggplot2, lmtest) * &amp;#039;&amp;#039;&amp;#039;Среда реализации:&amp;#039;&amp;#039;&amp;#039; Поле цифровой дидактики (SMW)  == Участники == *...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Стигмергия в образовании =&lt;br /&gt;
&lt;br /&gt;
== Аннотация ==&lt;br /&gt;
&lt;br /&gt;
== Рабочие гипотезы ==&lt;br /&gt;
&lt;br /&gt;
== Инструменты ==&lt;br /&gt;
* &#039;&#039;&#039;Моделирование:&#039;&#039;&#039; NetLogo (модели Termites, Ants, MutualisticNetwork)&lt;br /&gt;
* &#039;&#039;&#039;Анализ данных и программирование:&#039;&#039;&#039; R (tidyverse, ggplot2, lmtest)&lt;br /&gt;
* &#039;&#039;&#039;Среда реализации:&#039;&#039;&#039; Поле цифровой дидактики (SMW)&lt;br /&gt;
&lt;br /&gt;
== Участники ==&lt;br /&gt;
* [[Участник:Софронова_Кира|Кира]] - Termites&lt;br /&gt;
* [[Участник:Рита|Рита]] - Ants&lt;br /&gt;
* [[Участник:CristCas|Настя]] - MutualisticNetwork&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=44277</id>
		<title>Участник:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=44277"/>
		<updated>2026-02-19T06:49:44Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UserMGPU&lt;br /&gt;
|Field_of_knowledge=Математика, Информатика, Социология, Экономика, Лингвистика, Искусственный интеллект, Управление, Game design, Большие данные, Статистика, Алгебра, Иностранный язык&lt;br /&gt;
|Position=Бакалавриат&lt;br /&gt;
|Profile=Математика, Информатика, Английский язык, Обществознание, Право, Моделирование&lt;br /&gt;
|PedDirection=Нет&lt;br /&gt;
}}&lt;br /&gt;
[[Категория:UserMGPU]]&lt;br /&gt;
[[Категория:ЦИБ-241]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=44275</id>
		<title>Участник:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=44275"/>
		<updated>2026-02-19T06:49:03Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{UserMGPU&lt;br /&gt;
|Field_of_knowledge=Математика, Информатика, Социология, Экономика, Лингвистика, Искусственный интеллект, Управление, Game design, Большие данные, Статистика, Иностранный язык&lt;br /&gt;
|Position=Бакалавриат&lt;br /&gt;
|Profile=Математика, Информатика, Английский язык&lt;br /&gt;
|PedDirection=Нет&lt;br /&gt;
}}&lt;br /&gt;
[[Категория:UserMGPU]]&lt;br /&gt;
[[Категория:ЦИБ-241]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
	<entry>
		<id>http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=44268</id>
		<title>Участник:CristCas</title>
		<link rel="alternate" type="text/html" href="http://digida.mgpu.ru/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:CristCas&amp;diff=44268"/>
		<updated>2026-02-19T06:45:58Z</updated>

		<summary type="html">&lt;p&gt;CristCas: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Категория:UserMGPU]]&lt;br /&gt;
[[Категория:ЦИБ-241]]&lt;/div&gt;</summary>
		<author><name>CristCas</name></author>
	</entry>
</feed>