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

10 зрелищных клеточных автоматов с поколениями

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров7.6K

?, Хабр!

На прошлой неделе мы посмотрели на 10 правил простейших клеточных автоматов, где меняли только количество соседей, необходимых для рождения и выживания клетки.

Сегодня немного дополним характеристики «life‑like» модели, и добавим ещё одну часть к правилам — поколения. Внесём необходимые дополнения к характеристикам из прошлой статьи:

  • клетки имеют 3 состояния — мертва/жива/поколения;

  • клетки — квадраты без смещений;

  • правила изменения состояния зависят только от количества живых (состояние 1) соседей из окрестности Мура первого порядка (8 окружающих);

  • правила учитывают 5 исходов для каждой клетки — рождение, выживание, смерть, пустота, старение;

  • (новый пункт) старение начинается с момента, когда у клетки недостаточно соседей для выживания, после чего с каждой итерацией счётчик поколения увеличивается на 1 вне зависимости от соседей, и только по достижении указанного поколения клетка отмирает. Счётчик начинается с двух (т.к. 0 и 1 обозначают мёртвую и живую клетки).

Простейшие КА, записываемые стандартной нотацией B0…8/S0…8 эквивалентны КА с отсечкой на втором поколении — B0…8/S0…8/2. Есть несколько вариантов нотации для правил с поколениями, но мы будем придерживаться упомянутой.

0. Free Star

Для начала взглянем, как бы выглядел вариант без указанного количества поколений. B2/S0345

Поле 200×200; старт с 2×2 заполненного блока
Поле 200×200; старт с 2×2 заполненного блока

А теперь добавим поколения — B2/S0345/10

Начальные условия те же: поле 200×200; старт с 2×2 заполненного блока
Начальные условия те же: поле 200×200; старт с 2×2 заполненного блока

Но это ещё не всё. Раз уж у нас теперь больше двух состояний, то стоит и цвета добавить.

Dark mode

К клеточным автоматам с двумя состояниями тоже можно добавить псевдопоколения, без влияния на подсчёт соседей и отмирания при переполнении.
Это позволит так же добавить цвета, что будет особенно полезно для сглаживания мерцающих правил, где самый насыщенный цвет будет у самых стабильных клеток.

1. Star Wars

Осцилляторы и космические корабли в поколенческих правилах встречаются часто. Конечно, и вид таких кораблей будет отличаться.

B2/S345/4 — одно из известнейших правил, с обилием разнообразных космических кораблей и объектов их генерирующих — ружей, граблей, паровозов.

Указание стартового состояния для поколенческих правил — отдельное удовольствие.

2. Worms

Ещё одно правило порождающее целые армады космических кораблей. B25/S3467/6

Устройство «червей» также позволяет им отталкиваться от стен, в зависимости от чётного/нечётного состояния
Устройство «червей» также позволяет им отталкиваться от стен, в зависимости от чётного/нечётного состояния

3. Sticks

Простейшие корабли в любом правиле с B2 — палочки. Как у ружейного B2/S3456/6

4. Transers

Очень интересно выглядят орнаменты формирующиеся с явно выраженными космическими кораблями. Например, правила Transers (II и I) — B26/S0345/6 и B26/S345/5

B26/S0345/6
B26/S0345/6
B26/S345/5
B26/S345/5

5. Thrill Grill

На поколенческих правилах перебирать различные орнаменты с заданного старта можно днями — потенциал к оным на данных характеристиках огромный.
B34/S1234/48

Может возникнуть впечатление, что второй цикл возникает из пустоты, но это, конечно, не так.

На более контрастном примере это хорошо видно

6. Faders

Одно из правил, которое в полной мере демонстрирует отличие поколенческих КА — B2/S2/25

7. SediMental

Одно из «островных» правил. Очень чувствительно к проценту заполнения на старте.

25-35% дадут намывающиеся острова;Ближе к 25% острова придут к финальному разрозненному виду;Ближе к 35% (как здесь) высокая вероятность объединения в более крупные острова
25-35% дадут намывающиеся острова;
Ближе к 25% острова придут к финальному разрозненному виду;
Ближе к 35% (как здесь) высокая вероятность объединения в более крупные острова
Уже на 40% и более острова склеиваются в один большой континент
Уже на 40% и более острова склеиваются в один большой континент

8. Репликаторы

На некоторых правилах также встречаются фигуры бесконечно (если не будут сломаны) повторяющие себя.

Line at infinity – B37/S345/3
Line at infinity – B37/S345/3
B35/S3457/5
B35/S3457/5

9. Спирали

Одной из популярнейших категорий поколенческих правил являются спиральные виды. Несколько из них напоминают реакцию Белоусова — Жаботинского и имеют соответствующие наименования, хотя для более близкого воспроизведения этой реакции используется другой тип КА.

Xtasy – B2356/S1456/16
Xtasy – B2356/S1456/16
Spirals – B234/S2/5
Spirals – B234/S2/5
BelZhab Sediment – B23/S145678/8
BelZhab Sediment – B23/S145678/8
BelZhab Sediment спустя 10 минут

10. Lines

И я не могу пройти мимо правила напоминающего лабиринты с базовых характеристик.
B458/S012 345/3

Бонус. Полузаполненные начала

Помимо стандартных заготовленных стартов с центрального блока и из углов, на многих правилах можно пробовать и заполненные/полузаполненные начала.

B35/S34578/5
B35/S34578/5
B34678/S2456/4
B34678/S2456/4
Burst – B3468/S235678/9
Burst – B3468/S235678/9
Circuit Genesis – B1234/S2345/8
Circuit Genesis – B1234/S2345/8


Читайте также
Fireworks – B13/S2/21
Fireworks – B13/S2/21

О клеточных автоматах:

  1. Базовая «life-like» конфигурация

  2. Старение клеток: параметр поколений (вы здесь)

  3. Нотация Хенселя: учёт расположения соседей

  4. LtL: расширенный радиус поиска соседей

  5. Циклические КА

  6. Альтернативные окрестности и HROT

  7. Блочные КА, окрестность Марголуса

  8. Взвешенные окрестности, окрестность Гаусса, Far Corners/Edges

  9. Направленные и пользовательские окрестности

  10. Клетки-киллеры, BSFK[L]

  11. Дефицитные правила

  12. Обратные и расширенные поколения

Прочее:

← Предыдущая часть | Следующая часть →

Теги:
Хабы:
Всего голосов 66: ↑66 и ↓0+66
Комментарии1

Публикации

Истории

Работа

Веб дизайнер
22 вакансии

Ближайшие события

25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань