Как стать автором
Обновить

Комментарии 5

Интересно. Подсчет фигур наводит на мысль о том, чтобы поиздеваться над Life с помощью генетических алгоритмов. В качестве особей взять поля - скажем, небольшие, 100х100, создать из них популяцию (тоже, допустим, 100 особей), в качестве генетического кода - битовую последовательность исходной конфигурации, в качестве критериев отбора - количество чего-нибудь к, скажем, 1000-му ходу: фигур заданного типа, живых клеток, мертвых клеток. А дальше мутировать и скрещивать. Будет наблюдаться эволюция в требуемую сторону или же хаотическое поведение?

Ожидаю хаос. В "Жизни" любое возмущение распространяется со скоростью света, если есть в чем, как следствие, битфлип в середине конфигурации изменит её детерминированным, но сильно зависящим от остальных битов, образом, по факту сломав внутреннюю структуру, если была. Пример — обычный агар (сетка 3х3 из блоков), так стабилен, а битфлип на границе двух блоков разрушит его.

Мне приходит на ум аналогия с фолдингом белков, где одна аминокислотная замена может привести к радикальному изменению структуры и функциональности. Тем не менее, не каждая замена к нему приводит (и в Life ведь тоже!), и белки эволюционируют в сторону оптимизации функций.

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

НЛО прилетело и опубликовало эту надпись здесь

"строки в Julia складываются знаком умножения - почему?" - математики привыкли считать, что умножение может не быть коммутативным (как например умножение матриц), а стожение всегда коммутативно. А конкатенация строк не коммутативна.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории