Wireworld (Wireworld)
Wireworld — клеточный автомат, предложенный Брайаном Сильверманом[англ.] в 1987 году, смоделированный в его программе Phantom Fish Tank. Автомат стал более известен после опубликования статьи в колонке «Computer Recreations» журнала Scientific American[1]. Wireworld в особенности пригоден для симуляции электронных логических элементов, или «гейтов». Несмотря на простоту правил, Wireworld является полным по Тьюрингу.
Правила
[править | править код]Клетка в Wireworld может находиться в одном из четырех состояний:
- Пустая
- Cигнал
- Хвост сигнала
- Проводник
В программном обеспечении они нумеруются от 0 до 3 значительно чаще, чем от 1 до 4. В примере, данном здесь, стадии обозначены соответственно цветами: черным, синим, красным, желтым.
Как и во всех клеточных автоматах, время разделено на шаги, называемыми поколениями (иногда «гены» или «тики»). Клетки ведут себя следующим образом:
- Пустой → Пустой
- Cигнал → Хвост сигнала
- Хвост сигнала → Проводник
- Проводник → Cигнал при условии, что на соседних клетках есть ровно 1 или 2 Cигнала, иначе остаются проводниками.
В Wireworld используется окрестность Мура, что означает, что в вышеперечисленных правилах соседними считаются клетки на расстоянии хода короля.
Применения
[править | править код]Среди объектов, созданных во вселенной Wireworld — муравей Лэнгтона (в Wireworld возможно создать любой образец муравья Лэнгтона)[2] и компьютер Wireworld, полный по Тьюрингу компьютер, осуществленный с помощью клеточного автомата[3].
См. также
[править | править код]Примечания
[править | править код]- ↑ Computer recreations: The cellular automata programs that create Wireworld, Rugworld and other diversions, Scientific American (1990) by A K Dewdney
- ↑ Nyles Heise. Wireworld . Архивировано 13 февраля 2013 года.
- ↑ Mark Owen. The Wireworld Computer . Архивировано 13 февраля 2013 года.