Симуляция агрессивный, пассивный, альтруист
Материал из Department of Theoretical and Applied Mechanics
Версия от 12:07, 1 июня 2020; Nathan (обсуждение | вклад)
Содержание
Формулировка задачи
Дана абстрактная система, в начальный момент состоящая из пищи и какого-то количества существ(черепах) каждой модели поведения из трёх возможных - агрессивный, пассивный, альтруист. Необходимо построить симуляцию данной системы. Её условия таковы:
- Вся система состоит из неограниченного числа итераций длинной несколько секунд.
- В начале итерации на квадратном поле случайным образом расположено одинаковое число пищи.
- Черепахе любой модели поведения необходимо употребить 1 пищу, чтобы выжить и продолжить существовать в следующей итерации, 2 пищи, чтобы выжить и дать потомство в количестве одной черепахи, чья модель поведения совпадает с моделью родителя, но может измениться с какой-то вероятностью(вероятность мутации) на одну из двух других моделей, больше 2х употребить невозможно. Если же не было употреблено пищи совсем, то на следующей итерации черепаха исчезает.
- Модель поведения "пассивный" заключается в случайном блуждании по полю в поиске пищи.
- Модель поведения "агрессивный" заключается в преимущественном случайном блуждании по полю в поиске пищи, однако при недостатке пищи для выживания черепаха будет пытаться отобрать еду у ближайшей сытой черепахи любой модели поведения.
- Модель поведения "альтруист" заключается в преимущественном случайном блуждании по полю в поиске пищи, однако если будет употреблено 2 пищи то черепаха будет стремится отдать 1 пищу ближайшей голодной черепахе любой модели поведения.
Основные допущения и ограничения
- Начальное число черепах каждой модели поведения ограничено 20 .
- Число пищи ограничено 60.
- Длительность одной итерации ограничена 30 секундами.
Инструкция по использованию
- Чтобы изменить какой-то параметр введите в строку число не превышающее установленных границ. Разрешены только символы цифр 0-9.
- Чтобы ускорить симуляцию изменяйте значение параметра "simulation speed".
- Чтобы начать симуляцию нажмите кнопку "start simulation", а чтобы закончить - "end simulation".
- Симуляцию можно приостановить нажав кнопку "stop".
- Можно разрешить черепахам мутировать только в определённые модели поведения, поставив возле соответствующего поля галочку.
В симуляции агрессивные черепахи раскрашены рыжим цветом, пассивные - болотным, альтруисты - зелёным. На графиках это отображается красным, жёлтым и зелёным соответственно.
Симуляция
div class="mw-collapsible mw-collapsed" style="width:100%" >
Текст программы на языке JavaScript (разработчик [1]):Файл "script.js"
<syntaxhighlight lang="javascript" line start="1" enclose="div">