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
Категория:Правила клеточных автоматов