Wireworld — клеточный автомат, предложенный в 1987 году, смоделированный в его программе Phantom Fish Tank. Автомат стал более известен после опубликования статьи в колонке «Computer Recreations» журнала Scientific AmericanComputer recreations: The cellular automata programs that create Wireworld, Rugworld and other diversions, Scientific American (1990) by A K Dewdney. Wireworld в особенности пригоден для симуляции электронных логических элементов, или «гейтов». Несмотря на простоту правил, Wireworld является полным по Тьюрингу.

Правила

Клетка в Wireworld может находиться в одном из четырех состояний:

Пустая Cигнал Хвост сигнала Проводник

В программном обеспечении они нумеруются от 0 до 3 значительно чаще, чем от 1 до 4. В примере, данном здесь, стадии обозначены соответственно цветами: черным, синим, красным, желтым.

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

Пустой → Пустой Cигнал → Хвост сигнала Хвост сигнала → Проводник Проводник → Cигнал при условии, что на соседних клетках есть ровно 1 или 2 Cигнала, иначе остаются проводниками.

В Wireworld используется окрестность Мура, что означает, что в вышеперечисленных правилах соседними считаются клетки на расстоянии хода короля.

Применения Среди объектов, созданных во вселенной Wireworld — муравей Лэнгтона (в Wireworld возможно создать любой образец муравья Лэнгтона) и компьютер Wireworld, полный по Тьюрингу компьютер, осуществленный с помощью клеточного автомата.

См. также Клеточный автомат Автомат фон Неймана

Примечания

Ссылки Wireworld на Rosetta Code Компьютер Wireworld на Java wireworld GUI на python

Категория:Правила клеточных автоматов