Игра «Жизнь»

Мы начнем наше исследование ограничений с простой игры без игроков, которую в 1970 году придумал английский математик Джон Конвей. Игра называется «Жизнь» и разворачивается на поле, размеченном на квадраты. У живущих в этом пространстве клеток может быть до восьми соседей, включая диагонали. Клетки рождаются, живут и умирают в соответствии с тремя правилами:

1. В клетке зарождается жизнь, когда живы три соседние клетки; иными словами, рождение происходит при наличии достаточных ресурсов.

2. Клетка остается живой при условии, что живы две или три ее соседки, что можно интерпретировать как наличие достаточных ресурсов для продолжения ее существования.

3. Клетка умирает или остается мертвой во всех остальных случаях, что соответствует перенаселенности (слишком много соседей) или нехватке ресурсов (слишком мало соседей).

Правила непрерывно применяются ко всем клеткам одновременно. В результате возникает последовательность поколений системы, а пассивному игроку остается только потрясенно наблюдать за возникновением замысловатых конфигураций. Мне нравится эта игра, поскольку только в ней мне все время удается выигрывать.

Конвей протестировал множество различных наборов правил. При определенных правилах поле всегда целиком покрывается живыми клетками. При других наступает коллапс, и все клетки, существовавшие в первоначальной конфигурации, вымирают. В конечном итоге Конвей остановил свой выбор на наборе правил, который приводит к возникновению устойчивых конфигураций (в варианте, показанном на рис. 8.1, это происходит всего через три этапа).

Такая устойчивая конфигурация (иногда она возникает после сотен или даже тысяч поколений) может состоять из набора неподвижных объектов («натюрморт»), бесконечно повторяющихся циклов изменений («осцилляторы») или «планеров» (группы объектов, перемещающиеся по решетке).

«Жизнь» – это пример клеточных автоматов, то есть математических систем, в которых клетки подвергаются воздействию других клеток в соответствии с заранее установленными правилами. Она представляет особый интерес, поскольку является прекрасной демонстрацией того, как система, в которой действует простой набор правил, может тем не менее проявлять чрезвычайно сложное поведение.

Игра также показывает, что независимо от исходной конфигурации систему в конечном итоге всегда можно стабилизировать. Есть лишь одна тонкость, которую необходимо учитывать: чтобы стабилизировать систему, правила должны быть подобраны определенным образом. Значит ли это, что для возникновения устойчивых систем нужен дизайнер? И значит ли это, что для более тонкой настройки правил нужны менеджеры? Звучит убедительно (с точки зрения менеджеров).