Игра “Жизнь” Конвея

⬆️

Должен отметить, что рассматриваю данный алгоритм с точки зрения поиска и демонстрации правил Простого мира, так что это скорее моя интерпретация игры “жизнь”, а не классическое ее описание. Реализация игры “Жизнь” с интересующим автора дополнением: Игра “жизнь” с ошибкой

Википедия:

Игра «Жизнь» (англ. Conway’s Game of Life) — клеточный автомат, придуманный английским математиком Джоном Конвеем в 1970 году. К сожалению Джон Конвей умер в этом, 2020 году от короновируса.

Правила:

Место действия этой игры — «вселенная» — это размеченная на клетки поверхность или плоскость — безграничная, ограниченная, или замкнутая (в пределе — бесконечная плоскость).
Каждая клетка на этой поверхности может находиться в двух состояниях: быть «живой» (заполненной) или быть «мёртвой» (пустой). Клетка имеет восемь соседей, окружающих её.
Распределение живых клеток в начале игры называется первым поколением. Каждое следующее поколение рассчитывается на основе предыдущего по таким правилам:
в пустой (мёртвой) клетке, рядом с которой ровно три живые клетки, зарождается жизнь;
если у живой клетки есть две или три живые соседки, то эта клетка продолжает жить; в противном случае, если соседей меньше двух или больше трёх, клетка умирает («от одиночества» или «от перенаселённости»)
Игра прекращается, если
на поле не останется ни одной «живой» клетки
конфигурация на очередном шаге в точности (без сдвигов и поворотов) повторит себя же на одном из более ранних шагов (складывается периодическая конфигурация)
при очередном шаге ни одна из клеток не меняет своего состояния (складывается стабильная конфигурация; предыдущее правило, вырожденное до одного шага назад)”

На 2-х мерной плоскости задается алгоритм преобразования системы из одного состояния в другое. То есть каждое последующее состояние системы является следствием ее предыдущего состояния.

Простейшие правила приводят к наличию поведения, схожего с поведением “живых” организмов. В поведении групп частиц обнаруживаются циклы, которые внешне выглядят, как передвигающиеся фигуры. Тот факт, что клетка может воздействовать только на соседнюю клетку, приводит к наличию максимальной скорости “фигур” – называемой в игре “скоростью света” – не больше одной клетки за ход.

В игре нет времени, есть только последовательность состояний. Но при желании мы могли бы изучить и выделить отдельную фигуру, повторяющую одни и те же циклические операции . Тогда мы могли бы измерять скорость преобразования любых фигур в циклах стандартной фигуры и называли бы фигуру часами, а количество циклов – временем.

Игра не включает вероятностных изменений и отклонений, потому поведение системы четко задается ее начальным состоянием и система не имеет никаких шансов на развитие. Это демонстрирует то, о чем я писал в предыдущие статьях. Любая саморазвивающаяся система должна включать вероятностный компонент ИЛИ включать механизм бесконечного роста. Если добавить в систему правила отклонения от правил, мы получим бесчисленное количество новых систем с одной стороны, но не сможем предсказывать точное состояние системы через время с другой стороны. Получим реальность. Система будет вечно эволюционировать и в зависимости от того, как часто она будет отклоняться от правил, мы будем видеть одновременно и использование – сохранение текущего состояния – и развитие – появление новых состояний системы. При наличии бесконечного пространства у нас есть шанс наблюдать регионы, где будет кипеть “жизнь” и регионы пустоты – “галактики” и “воиды”. Вечная эволюция будет строить такие формы взаимосвязи частиц, которые возможно построить исходя из алгоритмов преобразования.

Необходимо добавить, что отдельные фигуры в таком случае будут представлять из себя не живые организмы, но “атомы” – варианты допустимых стабильных комбинаций частиц.

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

Конкретно, игра “Жизнь” скорее всего не сможет развиваться, потому что ее состояние очень зависит от изменений. Она не стабильна. А стабильность, тот факт, что изменения вносить тяжело, необходим для развития. Нет никакого смысла в изменениях, если их невозможно закрепить. Представьте, что было бы, если бы наши атомы самопроизвольно мгновенно распадались.. И не только атомы радиоактивных элементов, но все атомы… Вряд ли стоило бы строить планы на будущее в таком случае.

Гипотетические алгоритмы частиц, о которых я пишу, должны иметь похожий смысл, но состояния игры должны быть очень и очень стабильны. Вносить изменения должно быть очень тяжело. Но возможно. Алгоритмы частиц и их взаимодействия должны приводить к формированию атомов, молекул, и так далее. Развитие системы должно происходить благодаря отклонению частицы от выполнения ее собственных правил. Это отклонение от правил будет одним из базовых правил существования частицы.

В собственную реализацию данного алгоритма я внес небольшое изменение, чтобы показать, какое влияние оказывает на систему существование в ней случайного события / ошибки

Игра “жизнь” с ошибкой

Leave a Reply

Your email address will not be published. Required fields are marked *