Добавить в корзинуПозвонить
Найти в Дзене

Элементарные клеточные автоматы.

Недавно закончил программу для изучения элементарных клеточных автоматов (КА). Элементарными их называют, потому что они работают с одномерным массивом ячеек - куда уж элементарнее. Сама теория для элементарных КА разработана вдоль и поперёк. Например, Википедия: В англоязычной Википедии материала гораздо больше (как-будто им делать нечего, только писать подробные статьи): Моя программа на чистом JavaScript выглядит так: Т.е., видно, что мы можем одновременно запускать три КА, для каждого из них можно независимо задавать: В Википедии описывается поведение для двух начальных посевов: либо одинокая клетка по центру, либо случайное заполнение всей строки. Мне кажется, начальный тест всех трёх автоматов при общем посеве трёх групп из двух, одной и трёх клеток более интересен и информативен. Цель у меня была просто поломать голову при создании программы, и затем наблюдать картины, как-будто сидя на берегу наблюдать круги на воде от брошенных камешков. Ниже варианты для стандартных цветов

Недавно закончил программу для изучения элементарных клеточных автоматов (КА). Элементарными их называют, потому что они работают с одномерным массивом ячеек - куда уж элементарнее. Сама теория для элементарных КА разработана вдоль и поперёк.

Например, Википедия:

Элементарный клеточный автомат — Википедия

В англоязычной Википедии материала гораздо больше (как-будто им делать нечего, только писать подробные статьи):

Elementary cellular automaton - Wikipedia

Моя программа на чистом JavaScript выглядит так:

Главное меню (возможно, не окончательный вид. Примеры точно будут добавлены).
Главное меню (возможно, не окончательный вид. Примеры точно будут добавлены).

Т.е., видно, что мы можем одновременно запускать три КА, для каждого из них можно независимо задавать:

  • цвет клетки;
  • размер клетки;
  • начальный посев клеток;
  • правило для КА.

В Википедии описывается поведение для двух начальных посевов: либо одинокая клетка по центру, либо случайное заполнение всей строки.

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

Цель у меня была просто поломать голову при создании программы, и затем наблюдать картины, как-будто сидя на берегу наблюдать круги на воде от брошенных камешков.

Ниже варианты для стандартных цветов красный-зелёный-синий, и для одинакового размера клеток 8 пикселей.

Правила 0-1-2
Правила 0-1-2
Правила 3-4-5
Правила 3-4-5
6-7-8
6-7-8
9-10-11
9-10-11
12-13-14
12-13-14
15-16-17
15-16-17
18-19-20
18-19-20

Конечно, меняя цвета и размеры клеток, а также правила, можно получать очень живописные картины:

123-148-35(8-4-2)
123-148-35(8-4-2)

Наука комбинаторика гласит, что только лишь меняя правила от 0 до 255 для трёх КА, можно получить число вариантов, равное числу сочетаний из 256 по 3:

2763520

А если добавить ещё независимые вариации размеров клеток в 1,2,4 ,8,16 пикселей для каждого КА, не говоря уже о том, что можно менять цвет клеток каждого КА, а также цвет фона - число вариантов наблюдаемого изображения приближается к бесконечности. ∎