Вычислительное мышление: Метод решения сложных задач | страница 82
Со временем изобретение Конвея стали называть и сочли новым способом проводить вычисления. Правила можно адаптировать так, чтобы клетки проводили вычисления разного рода. Простые клетки с простыми правилами можно заменить и даже усложнить. Каждая клетка в этом случае становится который находится в определенной позиции на решетке и содержит код с собственным набором правил. Когда автомат входит в контакт с информацией, размещенной на решетке, он «переваривает» сначала свои данные, а затем данные из ближайших окрестностей, и на выходе дает результат. Результат зависит от нескольких предыдущих (скажем, 10) состояний клетки. Изначальными правилами Конвея при этом полностью пренебрегают.
Такого рода сложные клеточные автоматы находят самое разное применения. Их, например, настраивают на изучение природы — чтобы они исследовали, как в тропических лесах распространяются растения, как развиваются коралловые рифы, как проявляется сейсмическая активность, как мигрируют животные. Каждая клетка при этом становится небольшого участка мира. В ней закодированы правила поведения и взаимодействия с другими клетками, свойственные интересующему ученых объекту. Клеточные автоматы обеспечили новый способ изучения экологии с помощью на основе клеток.
Клеточный автомат помогает понять, как на дорогах образуются пробки и как в популяции распространяется болезнь. В криптографии данные, которые нужно зашифровать, размещают в сетке и исследуют с помощью автомата. Благодаря простым правилам каждый в состоянии зашифровать сообщение. Но расшифровать его, не зная ключа, нелегко. Клеточные автоматы даже использовали для сочинения музыки — и для многих других задач. Неплохой результат для того, что началось с несложной игры на простой доске.
Игры, в которые играют люди
В игре Конвея не было двух конкурирующих игроков, то есть отсутствовал соревновательный момент, который часто привлекает нас в играх. Вот простая игра под названием «Бусы, хлеб, хлеб», в которую мы сейчас попробуем сыграть (возможно, вас порадует, что в баню идти не придется). Сначала рассмотрим правила. Запишите слова:
БУСЫ, ХЛЕБ, БАНЯ, ПЛУГ, СНЕГ, ГАТЬ, УРОН, ОРЕХ, МАРС.
Вот правила:
1. Первый игрок выбирает слово из списка, вычеркивает его из списка и записывает.
2. Второй игрок делает то же самое с еще не вычеркнутым словом.
3. Игроки продолжают ходить до тех пор, пока кто-нибудь не выиграет. Победителем становится тот, кто первый сможет собрать три слова с одной и той же буквой.