stringtranslate.com

Клеточный автомат

Планерная пушка Госпера, создающая « планеры » в клеточном автомате « Игра жизни» Конвея [1]

Клеточный автомат ( мн. ч. клеточный автомат , сокр. CA ) — дискретная модель вычислений, изучаемая в теории автоматов . Клеточные автоматы также называют клеточными пространствами , тесселяционными автоматами , однородными структурами , клеточными структурами , тесселяционными структурами и итеративными массивами . [2] Клеточные автоматы нашли применение в различных областях, включая физику , теоретическую биологию и моделирование микроструктур .

Клеточный автомат состоит из регулярной сетки ячеек , каждая из которых находится в одном из конечного числа состояний , например, включено и выключено (в отличие от связанной решетки карт ). Сетка может иметь любое конечное число измерений. Для каждой ячейки определяется набор ячеек, называемый ее окрестностью , относительно указанной ячейки. Начальное состояние (время t  = 0) выбирается путем назначения состояния для каждой ячейки. Новое поколение создается (увеличение t на 1) в соответствии с некоторым фиксированным правилом (обычно математической функцией) [3] , которое определяет новое состояние каждой ячейки с точки зрения текущего состояния ячейки и состояний ячеек в ее окрестности. Обычно правило обновления состояния ячеек одинаково для каждой ячейки и не меняется со временем, а применяется ко всей сетке одновременно, [4] хотя известны исключения, такие как стохастический клеточный автомат и асинхронный клеточный автомат .

Первоначально эта концепция была открыта в 1940-х годах Станиславом Уламом и Джоном фон Нейманом , когда они были современниками в Лос-Аламосской национальной лаборатории . Хотя некоторые изучали ее в 1950-х и 1960-х годах, только в 1970-х годах и после появления Игры жизни Конвея , двумерного клеточного автомата, интерес к этой теме вышел за рамки академических кругов. В 1980-х годах Стивен Вольфрам занялся систематическим изучением одномерных клеточных автоматов, или того, что он называет элементарными клеточными автоматами ; его научный сотрудник Мэтью Кук показал, что одно из этих правил является полным по Тьюрингу .

Основные классификации клеточных автоматов, как их обозначил Вольфрам, пронумерованы от одного до четырех. Это, по порядку, автоматы, в которых шаблоны обычно стабилизируются в однородность , автоматы, в которых шаблоны эволюционируют в в основном стабильные или колеблющиеся структуры, автоматы, в которых шаблоны эволюционируют, по-видимому, хаотическим образом, и автоматы, в которых шаблоны становятся чрезвычайно сложными и могут сохраняться в течение длительного времени, со стабильными локальными структурами. Этот последний класс считается вычислительно универсальным или способным имитировать машину Тьюринга . Специальные типы клеточных автоматов являются обратимыми , где только одна конфигурация приводит непосредственно к последующей, и тотальными , в которых будущее значение отдельных ячеек зависит только от общего значения группы соседних ячеек. Клеточные автоматы могут имитировать различные системы реального мира, включая биологические и химические.

Обзор

Один из способов моделирования двумерного клеточного автомата — бесконечный лист миллиметровой бумаги вместе с набором правил для ячеек. Каждый квадрат называется «ячейкой», а каждая ячейка имеет два возможных состояния: черное и белое. Окрестность ячейки — это близлежащие, обычно смежные, ячейки. Два наиболее распространенных типа окрестностей — это окрестность фон Неймана и окрестность Мура . [5] Первая, названная в честь основателя теории клеточных автоматов, состоит из четырех ортогонально смежных ячеек. [5] Последняя включает окрестность фон Неймана, а также четыре диагонально смежные ячейки. [5] Для такой ячейки и ее окрестностей Мура существует 512 (= 2 9 ) возможных шаблонов. Для каждого из 512 возможных шаблонов таблица правил будет определять, будет ли центральная ячейка черной или белой в следующем временном интервале. Игра «Жизнь» Конвея — популярная версия этой модели. Другим распространенным типом соседства является расширенное соседство фон Неймана , которое включает две ближайшие ячейки в каждом ортогональном направлении, всего восемь. [5] Общее уравнение для общего числа возможных автоматов имеет вид k k s , где k — число возможных состояний ячейки, а s — число соседних ячеек (включая саму ячейку, которую нужно вычислить), используемых для определения следующего состояния ячейки. [6] Таким образом, в двумерной системе с соседством Мура общее число возможных автоматов будет равно 2 2 9 , или1,34 × 10 154 .

Обычно предполагается, что каждая ячейка во вселенной начинается в одном и том же состоянии, за исключением конечного числа ячеек в других состояниях; присвоение значений состояния называется конфигурацией . [ 7] В более общем смысле, иногда предполагается, что вселенная изначально покрыта периодическим узором, и только конечное число ячеек нарушает этот узор. Последнее предположение распространено в одномерных клеточных автоматах.

Тор , тороидальная форма

Клеточные автоматы часто моделируются на конечной сетке, а не на бесконечной. В двух измерениях вселенная была бы прямоугольником, а не бесконечной плоскостью. Очевидная проблема с конечными сетками заключается в том, как обрабатывать ячейки на краях. То, как они обрабатываются, повлияет на значения всех ячеек в сетке. Один из возможных методов — позволить значениям в этих ячейках оставаться постоянными. Другой метод — по-разному определять соседства для этих ячеек. Можно сказать, что у них меньше соседей, но тогда также придется определять новые правила для ячеек, расположенных на краях. Эти ячейки обычно обрабатываются с периодическими граничными условиями , что приводит к тороидальному расположению: когда кто-то выходит сверху, он входит в соответствующую позицию снизу, а когда кто-то выходит слева, он входит справа. (По сути, это имитирует бесконечную периодическую мозаику, и в области уравнений с частными производными иногда называется периодическими граничными условиями.) Это можно визуализировать как склеивание левого и правого краев прямоугольника для формирования трубки, а затем склеивание верхнего и нижнего краев трубки для формирования тора ( формы бублика). Вселенные других измерений обрабатываются аналогично. Это решает граничные проблемы с окрестностями, но еще одним преимуществом является то, что это легко программируется с помощью функций модульной арифметики . Например, в одномерном клеточном автомате, подобном примерам ниже, окрестность ячейки x i t равна { x i −1 t −1 , x i t −1 , x i +1 t −1 }, где t — временной шаг (вертикальный), а i — индекс (горизонтальный) в одном поколении.

История

Станислав Улам , работая в Национальной лаборатории Лос-Аламоса в 1940-х годах, изучал рост кристаллов, используя простую решетчатую сеть в качестве своей модели. [8] В то же время Джон фон Нейман , коллега Улама в Лос-Аламосе, работал над проблемой самовоспроизводящихся систем . [9] Первоначальный проект фон Неймана был основан на идее того, что один робот строит другого робота. Этот проект известен как кинематическая модель. [10] [11] Разрабатывая этот проект, фон Нейман пришел к пониманию большой сложности создания самовоспроизводящегося робота и больших затрат на обеспечение робота «морем деталей», из которых можно построить его репликанта. Нейман написал статью под названием «Общая и логическая теория автоматов» для симпозиума Хиксона в 1948 году. [9] Улам был тем, кто предложил использовать дискретную систему для создания редукционистской модели самовоспроизводства. [12] [13] Нильс Аалль Барричелли выполнил многие из самых ранних исследований этих моделей искусственной жизни .

Джон фон Нейман , значок удостоверения личности Лос-Аламоса

Улам и фон Нейман создали метод расчета движения жидкости в конце 1950-х годов. Движущей идеей метода было рассматривать жидкость как группу дискретных единиц и вычислять движение каждой на основе поведения ее соседей. [14] Так родилась первая система клеточных автоматов. Подобно решетчатой ​​сети Улама, клеточные автоматы фон Неймана являются двумерными, а его саморепликатор реализован алгоритмически. Результатом стал универсальный копировщик и конструктор, работающий в клеточном автомате с небольшим соседством (только те ячейки, которые соприкасаются, являются соседями; для клеточных автоматов фон Неймана только ортогональные ячейки) и с 29 состояниями на ячейку. [15] Фон Нейман дал доказательство существования того, что определенный шаблон будет создавать бесконечные копии себя в пределах данной клеточной вселенной, спроектировав конфигурацию из 200 000 ячеек, которая могла бы это делать. [15] Эта конструкция известна как модель тесселяции и называется универсальным конструктором фон Неймана . [16]

Также в 1940-х годах Норберт Винер и Артуро Розенблют разработали модель возбудимых сред с некоторыми характеристиками клеточного автомата. [17] Их конкретной мотивацией было математическое описание проведения импульсов в сердечных системах. Однако их модель не является клеточным автоматом, поскольку среда, в которой распространяются сигналы, непрерывна, а волновые фронты представляют собой кривые. [17] [18] Истинная клеточная автоматная модель возбудимых сред была разработана и изучена Дж. М. Гринбергом и С. П. Гастингсом в 1978 году; см. Клеточный автомат Гринберга-Гастингса . Оригинальная работа Винера и Розенблюта содержит много идей и продолжает цитироваться в современных исследовательских публикациях по сердечной аритмии и возбудимым системам. [19]

В 1960-х годах клеточные автоматы изучались как особый тип динамической системы , и впервые была установлена ​​связь с математической областью символической динамики . В 1969 году Густав А. Хедлунд собрал множество результатов, следуя этой точке зрения [20], в работе, которая до сих пор считается основополагающей для математического изучения клеточных автоматов. Наиболее фундаментальным результатом является характеристика в теореме Кертиса–Хедлунда–Линдона множества глобальных правил клеточных автоматов как множества непрерывных эндоморфизмов пространств сдвига .

В 1969 году немецкий пионер компьютеров Конрад Цузе опубликовал свою книгу «Вычисление пространства» , в которой предположил, что физические законы вселенной дискретны по своей природе и что вся вселенная является результатом детерминированного вычисления на одном клеточном автомате; «Теория Цузе» стала основой области исследований, называемой цифровой физикой . [21]

Также в 1969 году компьютерный ученый Элви Рэй Смит завершил докторскую диссертацию в Стэнфорде по теории клеточных автоматов, первой математической трактовке КА как общего класса компьютеров. Многие статьи появились из этой диссертации: он показал эквивалентность окрестностей различных форм, как свести Мура к окрестностям фон Неймана или как свести любую окрестность к окрестностям фон Неймана. [22] Он доказал , что двумерные КА являются универсальными для вычислений, ввел одномерные КА и показал, что они также являются универсальными для вычислений, даже с простыми окрестностями. [23] Он показал, как включить сложное доказательство фон Неймана универсальности построения (и, следовательно, самовоспроизводящихся машин) в следствие универсальности вычислений в одномерном КА. [24] Задуманный как введение к немецкому изданию книги фон Неймана о КА, он написал обзор области с десятками ссылок на статьи многих авторов во многих странах за десятилетие или около того работы, которые часто игнорируются современными исследователями КА. [25]

В 1970-х годах широко известен, особенно среди раннего компьютерного сообщества, двумерный клеточный автомат с двумя состояниями под названием Game of Life . Изобретенный Джоном Конвеем и популяризированный Мартином Гарднером в статье в Scientific American , [26] его правила следующие:

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

Несмотря на свою простоту, система достигает впечатляющего разнообразия поведения, колеблющегося между кажущейся случайностью и порядком. Одной из наиболее очевидных особенностей Игры Жизни является частое появление планеров , расположений ячеек, которые по сути перемещаются по сетке. Можно организовать автомат так, чтобы планеры взаимодействовали для выполнения вычислений, и после многих усилий было показано, что Игра Жизни может эмулировать универсальную машину Тьюринга . [27] Это рассматривалось как в основном развлекательная тема, и было сделано мало последующих работ за пределами исследования особенностей Игры Жизни и нескольких связанных с ней правил в начале 1970-х годов. [28]

Стивен Вольфрам начал работать над клеточными автоматами независимо в середине 1981 года после того, как рассмотрел, как сложные узоры, по-видимому, формируются в природе в нарушение Второго закона термодинамики . [29] Его исследования изначально были вызваны желанием моделировать системы, такие как нейронные сети , обнаруженные в мозге. [29] Он опубликовал свою первую статью в Reviews of Modern Physics , исследующую элементарные клеточные автоматы ( в частности , Правило 30 ) в июне 1983 года. [2] [29] Неожиданная сложность поведения этих простых правил заставила Вольфрама заподозрить, что сложность в природе может быть обусловлена ​​аналогичными механизмами. [29] Однако его исследования привели его к пониманию того, что клеточные автоматы плохо подходят для моделирования нейронных сетей. [29] Кроме того, в этот период Вольфрам сформулировал концепции внутренней случайности и вычислительной неприводимости , [30] и предположил, что правило 110 может быть универсальным — факт, доказанный позже научным сотрудником Вольфрама Мэтью Куком в 1990-х годах. [31]

Классификация

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

Эти определения являются качественными по своей природе и оставляют некоторое пространство для интерпретации. По словам Вольфрама, "...почти с любой общей схемой классификации неизбежно существуют случаи, которые по одному определению относятся к одному классу, а по другому — к другому. И так же обстоит дело с клеточными автоматами: иногда существуют правила..., которые показывают некоторые черты одного класса и некоторые — другого". [34] Классификация Вольфрама была эмпирически сопоставлена ​​с кластеризацией сжатых длин выходов клеточных автоматов. [35]

Было предпринято несколько попыток классифицировать клеточные автоматы в формально строгие классы, вдохновленные классификацией Вольфрама. Например, Кулик и Ю предложили три четко определенных класса (и четвертый для автоматов, не соответствующих ни одному из них), которые иногда называют классами Кулика–Ю; принадлежность к ним оказалась неразрешимой . [36] [37] [38] Класс 2 Вольфрама можно разбить на две подгруппы стабильных (с фиксированной точкой) и осциллирующих (периодических) правил. [39]

Идея о том, что существует 4 класса динамических систем, изначально принадлежит лауреату Нобелевской премии по химии Илье Пригожину , который выделил эти 4 класса термодинамических систем: (1) системы в термодинамическом равновесии, (2) пространственно/временно однородные системы, (3) хаотические системы и (4) сложные далекие от равновесия системы с диссипативными структурами (см. рисунок 1 в статье Николиса, ученика Пригожина, 1974 года). [40]

Реверсивный

Клеточный автомат обратим , если для каждой текущей конфигурации клеточного автомата существует ровно одна прошлая конфигурация ( прообраз ). [41] Если рассматривать клеточный автомат как функцию, отображающую конфигурации в конфигурации, обратимость подразумевает, что эта функция является биективной . [41] Если клеточный автомат обратим, его поведение, обращенное во времени, также можно описать как клеточный автомат; этот факт является следствием теоремы Кертиса–Хедлунда–Линдона , топологической характеристики клеточных автоматов. [42] [43] Для клеточных автоматов, в которых не каждая конфигурация имеет прообраз, конфигурации без прообразов называются шаблонами Эдемского сада . [44]

Для одномерных клеточных автоматов известны алгоритмы для принятия решения о том, является ли правило обратимым или необратимым. [45] [46] Однако для клеточных автоматов двух или более измерений обратимость неразрешима ; то есть не существует алгоритма, который принимает в качестве входных данных правило автомата и гарантированно правильно определяет, является ли автомат обратимым. Доказательство Джаркко Кари связано с проблемой замощения плитками Вана . [47]

Обратимые клеточные автоматы часто используются для моделирования таких физических явлений, как динамика газа и жидкости, поскольку они подчиняются законам термодинамики . Такие клеточные автоматы имеют правила, специально сконструированные так, чтобы быть обратимыми. Такие системы изучались Томмазо Тоффоли , Норманом Марголусом и другими. Несколько методов могут быть использованы для явного построения обратимых клеточных автоматов с известными обратными. Два распространенных из них - клеточный автомат второго порядка и блочный клеточный автомат , оба из которых подразумевают изменение определения клеточного автомата каким-либо образом. Хотя такие автоматы не строго удовлетворяют определению, данному выше, можно показать, что их можно эмулировать обычными клеточными автоматами с достаточно большими окрестностями и числом состояний, и поэтому их можно считать подмножеством обычных клеточных автоматов. И наоборот, было показано, что каждый обратимый клеточный автомат можно эмулировать блочным клеточным автоматом. [48] [49]

Тоталистический

Особый класс клеточных автоматов — это тоталистические клеточные автоматы. Состояние каждой клетки в тоталистическом клеточном автомате представлено числом (обычно целым числом, взятым из конечного набора), а значение клетки в момент времени t зависит только от суммы значений клеток в ее окрестности (возможно, включая саму клетку) в момент времени  t  − 1. [50] [51] Если состояние клетки в момент времени t зависит как от ее собственного состояния, так и от суммы ее соседей в момент времени  t  − 1, то клеточный автомат правильно называть внешним тоталистическим . [51] Игра Конвея «Жизнь» является примером внешнего тоталистического клеточного автомата со значениями клеток 0 и 1; внешние тоталистические клеточные автоматы с той же структурой соседства Мура, что и у «Жизни», иногда называются клеточным автоматом, подобным жизни . [52] [53]

Связанные автоматы

Существует множество возможных обобщений концепции клеточного автомата.

Клеточный автомат, основанный на шестиугольных ячейках вместо квадратных (правило 34/2)

Один из способов — использовать что-то, кроме прямоугольной (кубической и т. д. ) сетки. Например, если плоскость вымощена правильными шестиугольниками , эти шестиугольники можно использовать в качестве ячеек. Во многих случаях полученные клеточные автоматы эквивалентны автоматам с прямоугольными сетками со специально разработанными окрестностями и правилами. Другой вариант — сделать саму сетку нерегулярной, например, с помощью плиток Пенроуза . [54]

Также правила могут быть вероятностными, а не детерминированными. Такие клеточные автоматы называются вероятностными клеточными автоматами . Вероятностное правило дает для каждого шаблона в момент времени t вероятности того, что центральная ячейка перейдет в каждое возможное состояние в момент времени t  + 1. Иногда используется более простое правило, например: «Правило — это Игра Жизни, но на каждом временном шаге существует вероятность 0,001%, что каждая ячейка перейдет в противоположный цвет».

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

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

Существуют непрерывные автоматы . Они похожи на тотальные клеточные автоматы, но вместо того, чтобы правило и состояния были дискретными ( например, таблица, использующая состояния {0,1,2}), используются непрерывные функции, и состояния становятся непрерывными (обычно значения в [0,1] ). Состояние местоположения — это конечное число действительных чисел. Некоторые клеточные автоматы могут давать диффузию в жидких образцах таким образом.

Непрерывные пространственные автоматы имеют континуум местоположений. Состояние местоположения — это конечное число действительных чисел. Время также непрерывно, и состояние развивается в соответствии с дифференциальными уравнениями. Одним из важных примеров являются реакционно-диффузионные текстуры, дифференциальные уравнения, предложенные Аланом Тьюрингом для объяснения того, как химические реакции могут создавать полосы на зебрах и пятна на леопардах. [55] Когда они аппроксимируются клеточными автоматами, они часто дают похожие узоры. Макленнан [1] рассматривает непрерывные пространственные автоматы как модель вычислений.

Известны примеры непрерывных пространственных автоматов, которые демонстрируют распространяющиеся явления, аналогичные планерам в Игре Жизни. [56]

Автоматы переписывания графов являются расширениями клеточных автоматов, основанными на системах переписывания графов . [57]

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

Простейший нетривиальный клеточный автомат будет одномерным, с двумя возможными состояниями на ячейку, и соседями ячейки, определенными как смежные ячейки по обе стороны от нее. Ячейка и ее два соседа образуют соседство из 3 ячеек, поэтому существует 2 3  = 8 возможных шаблонов для соседства. Правило состоит в решении для каждого шаблона, будет ли ячейка 1 или 0 в следующем поколении. Тогда существует 2 8  = 256 возможных правил. [6]

Анимация того, как правила одномерного клеточного автомата определяют следующее поколение

Эти 256 клеточных автоматов обычно называются их кодом Wolfram , стандартным соглашением об именовании, изобретенным Wolfram, которое дает каждому правилу номер от 0 до 255. В ряде статей анализировались и сравнивались различные случаи среди 256 клеточных автоматов (многие из них тривиально изоморфны). Клеточные автоматы правила 30 , правила 90 , правила 110 и правила 184 особенно интересны. На изображениях ниже показана история правил 30 и 110, когда начальная конфигурация состоит из 1 (в верхней части каждого изображения), окруженной нулями. Каждая строка пикселей представляет поколение в истории автомата, причем t = 0 является верхней строкой. Каждый пиксель окрашен в белый цвет для 0 и в черный для 1.

Правило 30

Правило 30 демонстрирует поведение класса 3 , то есть даже простые входные шаблоны, такие как показанные, приводят к хаотичным, на первый взгляд случайным историям.

256 итераций Правила 110

Правило 110, как и Игра Жизни, демонстрирует то, что Вольфрам называет поведением класса 4 , которое не является ни полностью случайным, ни полностью повторяющимся. Локализованные структуры появляются и взаимодействуют различными сложными на вид способами. В ходе разработки A New Kind of Science , будучи научным сотрудником Вольфрама в 1994 году, Мэтью Кук доказал, что некоторые из этих структур были достаточно богаты, чтобы поддерживать универсальность . Этот результат интересен, поскольку правило 110 является чрезвычайно простой одномерной системой и ее трудно спроектировать для выполнения определенного поведения. Таким образом, этот результат предоставляет значительную поддержку мнению Вольфрама о том, что системы класса 4 по своей сути, вероятно, являются универсальными. Кук представил свое доказательство на конференции Института Санта-Фе по клеточным автоматам в 1998 году, но Вольфрам заблокировал включение доказательства в протоколы конференции, поскольку Вольфрам не хотел, чтобы доказательство было объявлено до публикации A New Kind of Science . [58] В 2004 году доказательство Кука было наконец опубликовано в журнале Вольфрама Complex Systems (т. 15, № 1), спустя более десяти лет после того, как Кук его придумал. Правило 110 стало основой для некоторых из самых маленьких универсальных машин Тьюринга. [59]

Правило пространства

Элементарное правило клеточного автомата задается 8 битами, и все элементарные правила клеточного автомата можно считать расположенными на вершинах 8-мерного единичного гиперкуба . Этот единичный гиперкуб является пространством правил клеточного автомата. Для клеточных автоматов следующего ближайшего соседа правило задается 2 5  = 32 битами, а пространство правил клеточного автомата является 32-мерным единичным гиперкубом. Расстояние между двумя правилами можно определить числом шагов, необходимых для перемещения из одной вершины, которая представляет первое правило, и другой вершины, представляющей другое правило, вдоль ребра гиперкуба . Это расстояние от правила до правила также называется расстоянием Хэмминга .

Пространство правил клеточного автомата позволяет нам задать вопрос о том, являются ли правила с похожим динамическим поведением «близкими» друг к другу. Графическое рисование гиперкуба высокой размерности на двумерной плоскости остается сложной задачей, и одним грубым локатором правила в гиперкубе является число бит-1 в 8-битной строке для элементарных правил (или 32-битной строке для правил следующего ближайшего соседа). Рисование правил в различных классах Wolfram в этих срезах пространства правил показывает, что правила класса 1, как правило, имеют меньшее число бит-1, таким образом, располагаясь в одной области пространства, тогда как правила класса 3, как правило, имеют большую долю (50%) бит-1. [39]

Для большего пространства правил клеточного автомата показано, что правила класса 4 расположены между правилами класса 1 и класса 3. [60] Это наблюдение является основой для фразы « граница хаоса» и напоминает фазовый переход в термодинамике .

Приложения

Биология

На оболочке конуса текстильного виден рисунок клеточного автомата. [61]

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

Вот некоторые примеры биологических явлений, моделируемых клеточными автоматами с простым пространством состояний:

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

Химия

Реакция Белоусова -Жаботинского является пространственно-временным химическим осциллятором , который можно моделировать с помощью клеточного автомата. В 1950-х годах А. М. Жаботинский (продолжая работу Б. П. Белоусова ) обнаружил, что если смешать тонкий однородный слой смеси малоновой кислоты , подкисленного бромата и соли церия и оставить его нетронутым, то в среде будут распространяться завораживающие геометрические узоры, такие как концентрические круги и спирали. В разделе «Компьютерные развлечения» выпуска Scientific American за август 1988 года [69] А. К. Дьюдни обсудил клеточный автомат [70], разработанный Мартином Герхардтом и Хайке Шустер из Университета Билефельда (Германия). Этот автомат создает волновые узоры, которые напоминают узоры в реакции Белоусова-Жаботинского.

Физика

Визуализация автомата решетчатого газа. Оттенки серого отдельных пикселей пропорциональны плотности частиц газа (от 0 до 4) в этом пикселе. Газ окружен оболочкой из желтых ячеек, которые действуют как отражатели, создавая замкнутое пространство.

Вероятностные клеточные автоматы используются в статистической и конденсированной физике для изучения таких явлений, как динамика жидкости и фазовые переходы. Модель Изинга является прототипическим примером, в котором каждая ячейка может находиться в одном из двух состояний, называемых «вверх» и «вниз», создавая идеализированное представление магнита . Регулируя параметры модели, можно изменять долю ячеек, находящихся в одном и том же состоянии, способами, которые помогают объяснить, как ферромагнетики размагничиваются при нагревании. Более того, результаты изучения фазового перехода размагничивания могут быть перенесены на другие фазовые переходы, такие как испарение жидкости в газ; эта удобная перекрестная применимость известна как универсальность . [71] [72] Фазовый переход в двумерной модели Изинга и других системах в ее классе универсальности представляет особый интерес, поскольку для его глубокого понимания требуется конформная теория поля . [73] Другие клеточные автоматы, которые имели значение в физике, включают автоматы решеточного газа , которые моделируют потоки жидкости.

Информатика, кодирование и коммуникация

Процессоры клеточных автоматов являются физическими реализациями концепций КА, которые могут обрабатывать информацию вычислительно. Элементы обработки располагаются в регулярной сетке идентичных ячеек. Сетка обычно представляет собой квадратную мозаику или тесселяцию двух или трех измерений; другие мозаики возможны, но пока не используются. Состояния ячеек определяются только взаимодействием с соседними соседними ячейками. Не существует средств для прямой связи с ячейками, расположенными дальше. [74] Одной из таких конфигураций массива процессоров клеточных автоматов является систолический массив . Взаимодействие ячеек может осуществляться через электрический заряд, магнетизм, вибрацию ( фононы в квантовых масштабах) или любые другие физически полезные средства. Это можно сделать несколькими способами, так что между элементами не нужны никакие провода. Это очень не похоже на процессоры, используемые в большинстве компьютеров сегодня ( конструкции фон Неймана ), которые разделены на секции с элементами, которые могут общаться с удаленными элементами по проводам.

Правило 30 изначально было предложено как возможный блочный шифр для использования в криптографии . Двумерные клеточные автоматы могут быть использованы для построения генератора псевдослучайных чисел . [75]

Клеточные автоматы были предложены для криптографии с открытым ключом . Односторонняя функция является эволюцией конечного CA, обратную которой, как полагают, трудно найти. Учитывая правило, любой может легко вычислить будущие состояния, но, по-видимому, очень сложно вычислить предыдущие состояния. Клеточные автоматы также применялись для разработки кодов исправления ошибок . [76]

Другие проблемы, которые можно решить с помощью клеточных автоматов, включают в себя:

Генеративное искусство и музыка

Клеточные автоматы использовались в генеративной музыке [77] и эволюционной музыкальной композиции [78] , а также в процедурной генерации ландшафта в видеоиграх. [79]

Генерация лабиринта

Определенные типы клеточных автоматов могут быть использованы для создания лабиринтов. [80] Два известных таких клеточных автомата, Maze и Mazectric, имеют строки правил B3/S12345 и B3/S1234. [80] В первом случае это означает, что клетки выживают из одного поколения в другое, если у них есть по крайней мере один и не более пяти соседей . Во втором случае это означает, что клетки выживают, если у них есть от одного до четырех соседей. Если у клетки ровно три соседа, она рождается. Это похоже на игру Конвея «Жизнь» в том, что шаблоны, в которых нет живой клетки, соседствующей с 1, 4 или 5 другими живыми клетками в любом поколении, будут вести себя идентично ей. [80] Однако для больших шаблонов он ведет себя совсем не так, как Жизнь. [80]

Для случайного начального шаблона эти клеточные автоматы, генерирующие лабиринты, будут развиваться в сложные лабиринты с четко определенными стенами, очерчивающими коридоры. Mazecetric, имеющий правило B3/S1234, имеет тенденцию генерировать более длинные и прямые коридоры по сравнению с Maze, с правилом B3/S12345. [80] Поскольку эти правила клеточных автоматов являются детерминированными , каждый сгенерированный лабиринт однозначно определяется его случайным начальным шаблоном. Это существенный недостаток, поскольку лабиринты, как правило, относительно предсказуемы.

Как и некоторые из описанных выше методов, основанных на теории графов, эти клеточные автоматы обычно генерируют лабиринты из единственного начального шаблона; следовательно, обычно будет относительно легко найти путь к начальной ячейке, но сложнее найти путь в любую другую ячейку.

Конкретные правила

Конкретные правила клеточных автоматов включают в себя:


Смотрите также

Ссылки

Цитаты

  1. ^ Дэниел Деннетт (1995), Опасная идея Дарвина , Penguin Books, Лондон, ISBN  978-0-14-016734-4 , ISBN 0-14-016734-X 
  2. ^ ab Wolfram, Stephen (1983). "Статистическая механика клеточных автоматов". Reviews of Modern Physics . 55 (3): 601–644. Bibcode :1983RvMP...55..601W. doi :10.1103/RevModPhys.55.601. Архивировано из оригинала 21 сентября 2013 г. Получено 28 февраля 2011 г.
  3. ^ Тоффоли, Томмасо; Марголус, Норман (1987). Клеточные автоматы: новая среда для моделирования. MIT Press. стр. 27. ISBN 9780262200608.
  4. ^ Шифф, Джоэл Л. (2011). Клеточные автоматы: дискретный взгляд на мир. Wiley & Sons, Inc. стр. 40. ISBN 9781118030639.
  5. ^ abcd Кир, Сейболд, Ченг 2005, стр. 15
  6. ^ ab Bialynicki-Birula, Bialynicka-Birula 2004, стр. 9
  7. ^ Шифф 2011, стр. 41
  8. ^ Пиковер, Клиффорд А. (2009). Книга по математике: от Пифагора до 57-го измерения, 250 вех в истории математики . Sterling Publishing Company, Inc. стр. 406. ISBN 978-1402757969.
  9. ^ ab Schiff 2011, стр. 1
  10. Джон фон Нейман, «Общая и логическая теория автоматов», в книге Л. А. Джеффресса , «Церебральные механизмы в поведении – Симпозиум Хиксона», John Wiley & Sons, Нью-Йорк, 1951, стр. 1–31.
  11. ^ Кемени, Джон Г. (1955). «Человек рассматривается как машина». Sci. Am . 192 (4): 58–67. Bibcode : 1955SciAm.192d..58K. doi : 10.1038/scientificamerican0455-58.; Sci. Am. 1955; 192:6 (опечатки).
  12. ^ Шифф 2011, стр. 3
  13. ^ Илачински 2001, стр. xxix
  14. ^ Бялыницкая-Бируля, Бялыницкая-Бируля 2004, стр. 8
  15. ^ ab Wolfram 2002, стр. 876
  16. ^ фон Нейман 1966
  17. ^ ab Wiener, N.; Rosenblueth, A. (1946). «Математическая формулировка проблемы проведения импульсов в сети связанных возбудимых элементов, в частности в сердечной мышце». Arch. Inst. Cardiol. México . 16 (3): 205–65. PMID  20245817.
  18. ^ Летичевский, А.А.; Решодько, Л.В. (1974). "Теория Н. Винера об активности возбудимых сред". Кибернетика . 8 (5): 856–864. doi :10.1007/bf01068458. S2CID  121306408.
  19. ^ Давиденко, JM; Перцов, AV; Саломонс, R.; Бакстер, W.; Джалифе, J. (1992). «Стационарные и дрейфующие спиральные волны возбуждения в изолированной сердечной мышце». Nature . 355 (6358): 349–351. Bibcode :1992Natur.355..349D. doi :10.1038/355349a0. PMID  1731248. S2CID  4348759.
  20. ^ Хедлунд, GA (1969). «Эндоморфизмы и автоморфизмы динамической системы сдвига». Матем. Теория систем . 3 (4): 320–3751. doi :10.1007/BF01691062. S2CID  21803927.
  21. ^ Шифф 2011, стр. 182
  22. ^ Смит, Элви Рэй. «Компромиссы сложности клеточных автоматов» (PDF) .
  23. ^ Смит, Элви Рэй. «Простые вычисления — универсальные клеточные пространства» (PDF) .
  24. ^ Смит, Элви Рэй. «Простые нетривиальные самовоспроизводящиеся машины» (PDF) .
  25. ^ Смит, Элви Рэй. «Введение и обзор клеточных автоматов или теории полиавтоматов» (PDF) .
  26. ^ Гарднер, Мартин (1970). «Математические игры: Фантастические комбинации новой игры-пасьянса Джона Конвея «жизнь»». Scientific American . 223 (4): 120–123. doi :10.1038/scientificamerican1070-120.
  27. ^ Пол Чепмен. Универсальный компьютер жизни. http://www.igblan.free-online.co.uk/igblan/ca/ Архивировано 6 сентября 2009 г. на Wayback Machine, ноябрь 2002 г.
  28. ^ Уэйнрайт 2010, стр. 16
  29. ^ abcde Вольфрам 2002, стр. 880
  30. ^ Вольфрам 2002, стр. 881
  31. Митчелл, Мелани (4 октября 2002 г.). «Является ли Вселенная универсальным компьютером?». Science . 298 (5591): 65–68. doi :10.1126/science.1075073. S2CID  122484855.
  32. ^ abc Илачинский 2001, стр. 12
  33. ^ Илачинский 2001, стр. 13
  34. ^ Вольфрам 2002, стр. 231
  35. ^ Зенил, Гектор (2010). «Исследование динамических свойств клеточных автоматов и других систем на основе сжатия» (PDF) . Complex Systems . 19 (1): 1–28. arXiv : 0910.4042 . doi :10.25088/ComplexSystems.19.1.1. S2CID  15364755.
  36. ^ Г. Каттанео; Э. Форменти; Л. Маргара (1998). «Топологический хаос и КА». У г-на Делорма; Дж. Мазойер (ред.). Клеточные автоматы: параллельная модель . Спрингер. п. 239. ИСБН 978-0-7923-5493-2.
  37. ^ Бертон Х. Вурхиз (1996). Вычислительный анализ одномерных клеточных автоматов. World Scientific. стр. 8. ISBN 978-981-02-2221-5.
  38. ^ Макс Гарсон (1995). Модели массового параллелизма: анализ клеточных автоматов и нейронных сетей . Springer. стр. 149. ISBN 978-3-540-56149-1.
  39. ^ ab Li, Wentian ; Packard, Norman (1990). "Структура пространства правил элементарных клеточных автоматов" (PDF) . Complex Systems . 4 : 281–297 . Получено 25 января 2013 г. .
  40. ^ Николис (1974). «Диссипативные структуры, катастрофы и формирование паттернов: анализ бифуркации» (PDF) . PNAS . 71 (7): 2748–2751. Bibcode :1974PNAS...71.2748N. doi : 10.1073/pnas.71.7.2748 . PMC 388547 . PMID  16592170 . Получено 25 марта 2017 г. . 
  41. ^ аб Кари, Яррко 1991, стр. 379
  42. ^ Ричардсон, Д. (1972). «Тесселяции с локальными преобразованиями». J. Comput. Syst. Sci . 6 (5): 373–388. doi : 10.1016/S0022-0000(72)80009-6 .
  43. ^ Маргенштерн, Морис (2007). Клеточные автоматы в гиперболических пространствах – Том I, Том 1. Архивы современности. стр. 134. ISBN 978-2-84703-033-4.
  44. ^ Шифф 2011, стр. 103
  45. ^ Аморозо, Серафино; Патт, Йель Н. (1972). «Процедуры принятия решений для сюръективности и инъективности параллельных отображений для структур тесселяции». J. Comput. Syst. Sci . 6 (5): 448–464. doi : 10.1016/s0022-0000(72)80013-8 .
  46. ^ Сатнер, Клаус (1991). «Графы Де Брёйна и линейные клеточные автоматы» (PDF) . Сложные системы . 5 :19–30.
  47. ^ Кари, Яркко (1990). «Обратимость двумерных клеточных автоматов неразрешима». Physica D. 45 ( 1–3): 379–385. Bibcode : 1990PhyD...45..379K. doi : 10.1016/0167-2789(90)90195-U.
  48. ^ Кари, Яркко (1999). «О глубине схемы структурно обратимых клеточных автоматов». Фундамента информатика . 38 : 93–107. дои : 10.3233/FI-1999-381208.
  49. ^ Дюран-Лоз, Жером (2001). «Представление обратимых клеточных автоматов с помощью обратимых блочных клеточных автоматов». Дискретная математика и теоретическая информатика . AA : 145–154. Архивировано из оригинала 15 мая 2011 г.
  50. ^ Вольфрам 2002, стр. 60
  51. ^ ab Ilachinski, Andrew (2001). Клеточные автоматы: дискретная вселенная. World Scientific. стр. 44–45. ISBN 978-981-238-183-5.
  52. ^ Фраза «подобный жизни клеточный автомат» восходит по крайней мере к Barral, Chaté & Manneville (1992), которые использовали ее в более широком смысле для обозначения внешних тотальных автоматов, не обязательно двухмерных. Более конкретное значение, приведенное здесь, использовалось, например, в нескольких главах Adamatzky (2010). См.: Barral, Bernard; Chaté, Hugues; Manneville, Paul (1992). «Коллективное поведение в семействе многомерных клеточных автоматов». Physics Letters A . 163 (4): 279–285. Bibcode :1992PhLA..163..279B. doi :10.1016/0375-9601(92)91013-H.
  53. ^ Эппштейн 2010, стр. 72–73
  54. ^ Джейкоб Арон. «Первые планеры бороздят вечно меняющуюся вселенную Пенроуза». New Scientist .
  55. ^ Мюррей, Дж. Д. (2003). Математическая биология (3-е изд.). Нью-Йорк: Springer. ISBN 0-387-95228-4.
  56. ^ Пивато, М.: «RealLife: континуальный предел клеточных автоматов, больших, чем жизнь», Теоретическая информатика , 372 (1), март 2007 г., стр. 46–68
  57. ^ Томита, Кодзи; Курокава, Харухиса; Мурата, Сатоши (2009). «Автоматы переписывания графов как естественное расширение клеточных автоматов». Адаптивные сети . Понимание сложных систем. стр. 291–309. doi :10.1007/978-3-642-01284-6_14. ISBN 978-3-642-01283-9.
  58. ^ Джайлс, Джим (2002). «Что это за наука?». Nature . 417 (6886): 216–218. Bibcode : 2002Natur.417..216G. doi : 10.1038/417216a . PMID  12015565. S2CID  10636328.
  59. ^ Вайнберг, Стивен (24 октября 2002 г.). «Является ли Вселенная компьютером?». The New York Review of Books . 49 (16) . Получено 12 октября 2012 г.
  60. ^ Вэньтянь Ли; Норман Паккард; Крис Г. Лэнгтон (1990). «Явления перехода в пространстве правил клеточных автоматов». Physica D. 45 ( 1–3): 77–94. Bibcode :1990PhyD...45...77L. CiteSeerX 10.1.1.15.2786 . doi :10.1016/0167-2789(90)90175-O. 
  61. ^ abc Coombs, Stephen (15 февраля 2009 г.), The Geometry and Pigmentation of Seashells (PDF) , стр. 3–4, архивировано из оригинала (PDF) 7 января 2013 г. , извлечено 2 сентября 2012 г.
  62. ^ Пик, Уэст; Мессинджер, Мотт (2004). «Доказательства сложной коллективной динамики и возникающих распределенных вычислений в растениях». Труды Национальной академии наук . 101 (4): 918–922. Bibcode : 2004PNAS..101..918P. doi : 10.1073/pnas.0307811100 . PMC 327117. PMID 14732685  . 
  63. ^ "Архивная копия" (PDF) . Архивировано из оригинала (PDF) 25 июля 2010 . Получено 14 сентября 2008 .{{cite web}}: CS1 maint: архивная копия как заголовок ( ссылка )
  64. ^ Илачинский 2001, стр. 275
  65. ^ Ив Булиган (1986). «Фибробласты, морфогенез и клеточные автоматы». Неупорядоченные системы и биологическая организация . С. 374–375.
  66. ^ Ильина, Ольга; Гриценко, Павел Г.; Сыга, Саймон; Липпольдт, Юрген; Ла Порта, Катерина AM; Чепижко, Александр; Гроссер, Штеффен; Вуллингс, Манон; Баккер, Герт-Ян; Старрусс, Йорн; Булт, Питер (сентябрь 2020 г.). «Межклеточная адгезия и ограничение трехмерной матрицы определяют переходы застревания при инвазии рака молочной железы». Nature Cell Biology . 22 (9): 1103–1115. doi :10.1038/s41556-020-0552-6. ISSN  1465-7392. PMC 7502685 . PMID  32839548. 
  67. ^ Рехер, Дэвид; Клинк, Барбара; Дойч, Андреас; Фосс-Бёме, Аня (11 августа 2017 г.). «Гетерогенность клеточной адгезии усиливает распространение опухолевых клеток: новые идеи из математической модели». Biology Direct . 12 (1): 18. doi : 10.1186/s13062-017-0188-z . ISSN  1745-6150. PMC 5553611. PMID  28800767 . 
  68. ^ Hatzikirou, H.; Basanta, D.; Simon, M.; Schaller, K.; Deutsch, A. (1 марта 2012 г.). «„Go or Grow“: the key to the appearance of invasion in tumour progression?». Математическая медицина и биология . 29 (1): 49–65. doi :10.1093/imammb/dqq011. ISSN  1477-8599. PMID  20610469.
  69. ^ AK Dewdney, Машина для производства мешанины производит волны, Scientific American, стр. 104, август 1988 г.
  70. ^ Герхардт, М.; Шустер, Х. (1989). «Клеточный автомат, описывающий формирование пространственно упорядоченных структур в химических системах». Physica D. 36 ( 3): 209–221. Bibcode :1989PhyD...36..209G. doi :10.1016/0167-2789(89)90081-x.
  71. ^ Sethna, James P. (2008). Статистическая механика: энтропия, параметры порядка и сложность. Oxford University Press . ISBN 978-0-198-56677-9. OCLC  845714772.
  72. ^ Кардар, Мехран (2007). Статистическая физика полей . Cambridge University Press . ISBN 978-0-521-87341-3. OCLC  920137477.
  73. ^ Каппелли, Андреа; Зубер, Жан-Бернар (2010). «Классификация конформных теорий поля по ADE». Scholarpedia . 5 (4): 10314. arXiv : 0911.3242 . Bibcode :2010SchpJ...510314C. doi : 10.4249/scholarpedia.10314 . S2CID  18207779.
  74. ^ Мухтароглу, Али (август 1996 г.). «4.1 Процессор клеточного автомата (CAP)». Системы на основе процессора клеточного автомата для сравнения генетических последовательностей/поиска в базе данных . Корнельский университет. С. 62–74.
  75. ^ Томассини, М.; Сиппер, М.; Перрено, М. (2000). «О генерации высококачественных случайных чисел двумерными клеточными автоматами». IEEE Transactions on Computers . 49 (10): 1146–1151. doi :10.1109/12.888056. S2CID  10139169.
  76. ^ Chowdhury, D. Roy; Basu, S.; Gupta, I. Sen; Chaudhuri, P. Pal (июнь 1994 г.). «Проектирование кода исправления ошибок CAECC на основе клеточных автоматов». IEEE Transactions on Computers . 43 (6): 759–764. doi :10.1109/12.286310.
  77. ^ Беррастон, Дэйв и Эрнест Эдмондс. «Клеточные автоматы в генеративной электронной музыке и звуковом искусстве: исторический и технический обзор». Digital Creativity 16.3 (2005): 165-185.
  78. ^ Миранда, Эдуардо Рек. «Развитие клеточно-автоматной музыки: от синтеза звука к композиции». Труды семинара 2001 года по моделям искусственной жизни для музыкальных приложений. 2001.
  79. ^ Эшлок, Дэниел; Крейцер, Мэтью (2020). «Развитие разнообразных клеточных автоматов на основе карт уровней». Труды 6-й Международной конференции по программной инженерии для оборонных приложений . Достижения в области интеллектуальных систем и вычислений. Том 925. С. 10–23. doi :10.1007/978-3-030-14687-0_2. ISBN 978-3-030-14686-3. S2CID  85562837.
  80. ^ abcde Натаниэль Джонстон; и др. (21 августа 2010 г.). "Maze - LifeWiki". LifeWiki . Получено 1 марта 2011 г. .

Цитируемые работы

Дальнейшее чтение

Внешние ссылки