Сетка представляет собой небольшой квадратный мир с клетками(пикселами), которые могут присутствовать (быть живыми) и отсутствовать (быть мертвыми). У каждой клетки есть окружение из восьми других, которые непосредственно прилегают к ней по горизонтали, вертикали и диагонали. Чтобы выжить, существующая живая клетка должна иметь два или три живых соседа — этого достаточно для поддержания жизни, но не слишком много. Если у любой живой клетки окажется менее двух соседних, она умрет из-за недостаточной населенности. Подобным образом любая живая клетка, у которой более трех живых соседей, умрет от перенаселения. Наконец, каждая живая клетка, у которой есть три живых соседа, активизируется и имитирует процесс размножения. Эти принципы обобщены в порождающих правилахна рис. 55.
На рис. 56 показан пример такой модели и один жизненный цикл.
Благодаря этой простой математике и простому набору порождающих правил, которые применяются к клеткам на сетке, на игровом поле возникают странные и интересные модели, которые с течением времени меняются. Клетки живут и умирают по заданным правилам.
Сыграйте сами
Вы можете сыграть в эту игру самостоятельно. Для этого понадобится большая сетка. Для начала сгодится шахматная доска, но вы скоро осознаете, что нужно больше пространства. Больше подойдет доска для игры в го, если она у вас найдется. Как вариант, можно нарисовать большую сетку на самом большом листе бумаги, какой вы только найдете. В идеале лист должен быть бесконечным, но тогда он не поместится в вашу спальню… поэтому придется принять, что, если игра дойдет до края доски, нужно будет быстро найти еще место либо признать, что это конец «Жизни» и все ваши существа упадут с края «вселенной».
Необходимо как-то помечать рождающиеся клетки. Полезно также выделять те, которые в следующем раунде умрут. Убирать их нельзя — они нужны, чтобы просчитать все изменения. К примеру, можно взять камни для игры в го — замените черные на белые, чтобы показать, какие клетки скоро умрут (и отправятся на небо). Еще вам понадобится как-то помечать квадраты, в которых зародится жизнь. Для этого используйте более мелкие предметы (например, бусины) другого цвета. Можно использовать три вида монет или цветных бусин (но, если в вашем мире закипит жизнь, их понадобится очень много).
Теперь остается только произвольно разместить фишки на доске, а потом рабски следовать законам «Жизни». В вашем мире это эквиваленты физических законов. Сначала определите все рождения и смерти, заменив фишки на новые на всей доске, а потом уберите умирающие клетки и замените живые на новорожденные, чтобы подготовиться к следующему раунду. Чтобы играть в «Жизнь», нужно уделять много внимания деталям. Если вы сделаете ошибку с одной клеткой, у вас получится совершенно другой расклад.
В интернете вы найдете самые разные симуляции и с их помощью увидите, как развивается жизнь в более крупных масштабах. Конечно, если вы умеете программировать, то попробуйте создать собственный вариант. В систему Turtle («Черепаха»), разработанную в Оксфордском университете (www.turtle.ox.ac.uk), входит программа игры «Жизнь», которая может послужить образцом.
Паноптикум жизни
Конвей обнаружил, что некоторые комбинации являются статичными. Они остаются в одном и том же месте игрового поля без изменений, поэтому он назвал их натюрмортами— как, например, змею на рис. 57. Какие еще простые начальные комбинации, относящиеся к натюрмортам, вам удастся найти?
Некоторые шаблоны меняют форму, проходя через фиксированный набор вторичных шаблонов, в конце концов возвращаются к исходному варианту — и снова начинают бесконечный повторяющийся цикл. Их назвали осцилляторами.Например, очень простой осциллятор, так называемая мигалка, показан на рис. 58. Если начать с набора мигалок, которые находятся на достаточном расстоянии, чтобы не мешать друг другу, вы создадите замечательные мерцающие узоры. Такие комбинации из группы осцилляторов называются пульсарами —по имени необычных звезд, на которых с определенной периодичностью происходят всплески энергии.
Читать дальше
Конец ознакомительного отрывка
Купить книгу