Найти тему
Наша эволюция не стоит на месте. Следующий этап усложнения мира - переход от одноклеточного на многоклеточный уровень. Убираем пока хищников Predators = 0. Самцов хищников Sex_p = 0. Оставляем только травоядных Herbivores = 1. Причем только одного пола Sex_h = 0. Оставшиеся клетки делим на 3 типа поровну: Multiplyer = 0,3 - клетки со способностью размножения. Suplyer = 0,3 - клетки, поедающие ресурс. Mover = 0,3 - клетки, способные только передвигаться. По отдельности они ведут себя, как и предполагалось, в соответствии со своим предназначением. Если обратить внимание на Suplyers, они двигаются бесцельно, энергия их истощается и в конце концов они исчезают. На табло дополнительно выводится информация о типе клетки (sp,mp,mv). Каждая клетка при появлении получает свой уникальный номер, что нам в дальнейшем понадобится, так как, чем сложнее система, тем больше должно быть в ней порядка!
1 год назад
Наш мир был бы не полным, если бы хищники не могли размножаться, также, как и травоядные. Плюсы травоядных: - не нужно бегать за едой, она растет под ногами - размножаться могут с рождения - большая продолжительность жизни. Минусы травоядных: - их постоянно поедают и единственный способ бороться - истощить бегом или имея достаточно энергии подождать, пока отживут свое хищники - не могут существовать без ресурсов. Плюсы хищников: - сами выбирают и съедают жертву - упитанная жертва может быть всегда рядом, нужно лишь за ней постоянно бежать - могут более эффективно группами нападать на жертву Минусы хищников: - затраты на передвижение и размножение выше, чем у травоядных - меньше продолжительность жизни - размножение только в репродуктивном возрасте - без травоядных не могут существовать.
1 год назад
Как видно, теперь при равных условиях (продолжительности жизни, репродуктивном возрасте, затратах на передвижение и размножение), у травоядных нет шансов на выживание. Это можно исправить, установив для хищников, более сложных существ, индивидуальные условия, как оно и происходит в природе: - продолжительность жизни - 500 эпох, травоядные живут 1000 - затраты на передвижение - 5 очков за шаг, против 1 очка травоядных - репродуктивный возраст - после 100 эпох, травоядные с рождения - затраты на размножение - 200 очков против 100 травоядных. И теперь можно наблюдать другую картину.
1 год назад
Клетка хищника имеет красный оттенок. Едой для нее являются травоядные особи зеленого цвета. По аналогии с травоядными, хищники каждую эпоху ищут потенциальную жертву, строят траекторию до нее и двигаются к ней, с разницей в том, что еда теперь не стационарная, а подвижная. Также вводим такие характеристики, как усвояемость пищи и защита от повреждений. Усвояемость (digesty) - это количество энергии, которое получает хищник или травоядный при поедании пищи. Травоядный получает от 0 до 500 очков энергии при поедании одного ресурса пока по рандому. Хищник получает от 0 до 500 очков энергии при одном укусе травоядного также пока по рандому. Защита (resistance) - количество очков энергии, которое теряет травоядный при укусе хищником, пока по рандому. Также помним, что при количестве энергии клетки меньше 0, клетка исчезает с карты.
1 год назад
Клетка хищника имеет красный оттенок. Едой для нее являются травоядные особи зеленого цвета. По аналогии с травоядными, хищники каждую эпоху ищут потенциальную жертву, строят траекторию до нее и двигаются к ней, с разницей в том, что еда теперь не стационарная, а подвижная. Также вводим такие характеристики, как усвояемость пищи и защита от повреждений. Усвояемость (digesty) - это количество энергии, которое получает хищник или травоядный при поедании пищи. Травоядный получает от 0 до 500 очков энергии при поедании одного ресурса пока по рандому. Хищник получает от 0 до 500 очков энергии при одном укусе травоядного также пока по рандому. Защита (resistance) - количество очков энергии, которое теряет травоядный при укусе хищником, пока по рандому. Также помним, что при количестве энергии клетки меньше 0, клетка исчезает с карты.
1 год назад
Чтобы приступить к следующему этапу усложнения модели, сделаем следующие изменения: - изменим фон на более нейтральный салатовый - размер клетки и ресурсов уменьшим для возможности размещения большего количества особей - создадим новый вид клетки - хищника.
1 год назад
Для информативности выведем на табло значения энергии клеток. Как видим, клетки, при наличии достаточного количества еды, постоянно размножаются и как следствие растет популяция и количество энергии каждой клетки в отдельности.
1 год назад
Чтобы усложнить модель и немного приблизить к реальности, введем следующие условия: - клетка обладает энергией, ед - клетка появляется, с 200 ед энергии - при энергии меньше 0 ед исчезает - каждый шаг расходует 1 ед энергии - каждую эпоху расходует 1 ед энергии - при делении самка тратит 100 ед - самец направляется к самке только при наличии подходящего настроения (сейчас установка раз в 10 эпох)
1 год назад
Также стоит отметить, что есть еще два условия: - самка дает новое потомство только спустя заданный интервал pregnant (сейчас установлен 10 эпох)
1 год назад
Если бы клетки совсем не строили маршруты и двигались хаотично, это выглядело бы, как на следующем видео. Размножения, поглощения ресурсов не происходит, и как следствие, популяция вымирает (видно на счетчике creature).
1 год назад
Поиск партнера или ресурса происходит методом волн. Каждую эпоху каждая клетка составляет для себя карту наподобие кругов на воде. 1. Самка (красная) находит ближайшие ресурсы, строит кратчайший маршрут к ним и двигается, чтобы их потребить. 2. Самец (синий)находит ближайший ресурс и ближайшую самку. ИИ принимает решение идти либо есть, либо размножаться.
1 год назад
У клеток для принятия решения есть несколько условий: наличие подходящего настроения, длительность периода между размножениями, а также вся информация о мире обрабатывается через библиотеку Sklearn Python с помощью Искусственного Интеллекта.
1 год назад