www.elsevier.com/locate/dsw
Maximum density stable patterns in variants of Conway’s game
of Life
Robert A. Bosch
Department of Mathematics, Oberlin College, Oberlin, OH 44074, USA
Received 1 May 1999; received in revised form 1 November 1999
Abstract
We use integer programming to nd maximum density stable patterns in variants of Conway’s game of Life, and we describe how to use the constraints of an integer programming formulation to construct upper bounds on the maximum density of innite stable patterns. c 2000 Elsevier Science B.V. All rights reserved.
Keywords:Integer programming; Game of life; Cellular automata
1. Introduction
In the August 1998 issue of Scientic American
[8], Martin Gardner, one of the world’s greatest pop-ularizers of mathematics, presented a “highlight reel” of his “Mathematical Games” column, which ran in
Scientic American from 1956 to 1981. One of the topics Gardner gave special attention to was the game of Life, which was invented by John Horton Conway in the late 1960s. In 1970 and 1971, Gardner intro-duced Life to the public by making it the subject of two of his columns [6,7]. Since then, a great many mathe-maticians – both amateur and professional – have con-tributed to a greater understanding of the game. (See [1,3].)
In [2] we described how integer programming (IP) can be used to answer a number of questions
con-E-mail address:bobb@cs.oberlin.edu (R.A. Bosch).
cerning Conway’s game of Life. Here, we present an IP formulation for nding maximum density stable patterns in “B36=S236 Life”, a variant of the original game. Our formulation for B36=S236 Life is signif-icantly larger and more complicated than the for-mulation presented in [2]. We then use some of the constraints of our formulation to prove that the maxi-mum density of innite stable patterns in B36=S236 Life is4
5. We also argue that the maximum density of
innite stable patterns in B36=S23 Life (also known as High Life) is 12.
2. Life and its variants
Conway’s game of Life and its variants can be thought of as single-player board games. In each one, the playing pieces are checkers, all the same color, and the board is an uncolored, innite checkerboard. We refer to the squares of the board ascells, and we
consider a cell to have eightneighbors: the eight cells that share one or two corners with it.
To set up Life or one of its variants, the player constructs an initial pattern of checkers by placing checkers in some of the cells of the board. We refer to a cell that has a checker in it asalive, orliving, and a cell that does not asdead.
In Life and its variants, play is divided intoturns. On each turn, the player follows three simple rules – a
birth rule, asurvival rule, and adeath rule– to produce a new pattern from the current one. By playing for turn after turn, the player produces a sequence of patterns. Often, these sequences are mathematically interesting and aesthetically pleasing. For the original game of Life, the birth, survival, and death rules are as follows:
• If a cell is dead and has three living neighbors, then it must be alive in the new pattern.
• If a cell is alive and has either two or three living neighbors, then it must be alive in the new pattern. • Otherwise, the cell must be dead in the new pattern.
Henceforth, we will refer to Conway’s game of Life as B3=S23 Life. In B36=S236 Life, a birth occurs when a dead cell has three or six living neighbors, and a living cell survives when it has two, three, or six living neighbors. In B36=S23 Life, a birth takes place when a dead cell has three or six living neighbors, and a living cell survives when it has two or three living neighbors.
The patterns displayed in Fig. 1 arestable– the rst for B3=S23 Life, the second for both B3=S23 Life and B36=S23 Life, and the third for B36=S236 Life. For turn after turn, these patterns remain unchanged. On each turn, every living cell stays alive, and every dead cell remains dead.
3. B36=S236 Life
Suppose that we are playing B36=236 Life and we would like to nd a maximum density stable pattern that can be constructed inside a given regionR. In this section, we present an IP formulation of this problem.
3.1. Notation
We use lower case letters (such as e and f) to represent individual cells and capital letters (such as
RandS) to stand for sets of cells. For each cellein
R, we let N(e) denote the set of cells in R that are neighbors ofe.
3.2. Variables
For each celleinR, we let
xe=
1 if eis immortal (always alive);
0 if eis eternally dead:
3.3. Objective
We dene the density of a stable pattern over a region to be the number of immortal cells in the pattern divided by the total number of cells in the region. We let d denote the density. To obtain a stable pattern with maximum density overR, we
maximize X e∈R
xe
Fig. 2.
3.4. Birth constraints
In a stable pattern in B36/S236 Life, if a cell has exactly three or exactly six immortal neighbors, it must be immortal. To enforce this rule at cell e, we can impose the following constraints:
−xe+ X
f∈S
xf− X
f∈N(e)−S
xf6|S| −1;
∀S⊆N(e):|S|= 3 or|S|= 6:
The (83) = 56 constraints that correspond to three-element subsets of neighbors ensure thateis immor-tal whenever it has exactly three immorimmor-tal neighbors; the (86)=28 constraints that correspond to six-element subsets guarantee thateis immortal whenever it has exactly six immortal neighbors.
3.5. Death constraints
In a stable pattern in B36=S236 Life, if a cell has fewer than two immortal neighbors, exactly four or exactly ve immortal neighbors, or more than six im-mortal neighbors, it must be eternally dead. To en-force this rule at celle, we can impose the following constraints:
2xe− X
f∈N(e)
xf60;
2xe+ 2 X
f∈S
xf− X
f∈N(e)−S
xf68;
∀S⊆N(e):|S|= 4;
2xe+ X
f∈N(e)
xf68:
The rst constraint demands thatebe eternally dead whenever it has fewer than two immortal neighbors. The next (84) = 70 constraints requireeto be eternally dead whenever it has exactly four or exactly ve im-mortal neighbors. The last constraint makes sure that
eis eternally dead whenever it has more than six im-mortal neighbors. We refer to the last constraint as the “death-by-overcrowding” constraint fore.
3.6. Boundary constraints
The only other constraints we need are for keeping our stable pattern insideR. Ifeis a cell outside ofR
and has exactly three neighborsf,g, andhthat belong toR, then we impose the “boundary constraint”
xf+xg+xh62:
3.7. The full formulation
The full formulation has one binary variable per cell ofRand 156 constraints per interior cell ofR. Even-though B36=S236 Life and B3=S23 Life have nearly identical rule sets, the formulation for B36=S236 Life has 98 more constraints per interior cell than the anal-ogous formulation for B3=S23 Life. (For B3=S23 Life, only (83) = 56 birth constraints and two death con-straints are needed per interior cell.)
3.8. Some results
Fig. 3.
instance of the integer program with version 4.0.9 of CPLEX’s Mixed Integer Solver [4] (with all CPLEX parameters set at their default values). All computa-tions were performed on a 200 MHz Pentium PC.
4. Innite stable patterns in B36=S236 Life
The Fig. 2 stable patterns all belong to the same family. In each one, the interior is covered with copies of a 3×3 tile of density7
9. Clearly, we can use this tile
to construct an innite stable pattern of density 79 in B36=S236 Life. Although this pattern is quite dense, it isnotthe most dense. The following theorem implies that the innite stable pattern displayed in Fig. 3, with a density of45, is the most dense one in B36=S236 Life.
Theorem. Ifdnis the density of the most dense stable
pattern that can be constructed in ann×nsquare R inB36=S236Life;then
Proof. First, partition the cells ofRinto three sets: the
corner cells(C), theedge cells(E), and theinterior cells(I). SinceRis ann×nsquare,Rhas four corner cells, 4(n−2) edge cells, and (n−2)2interior cells. For corner and edge cells, the death-by-overcrowding constraint
To this inequality, add the inequalities 3xe63 for each celle∈E and the inequalities 5xe65 for each celle∈C. (These inequalities are valid becausexe∈ {0;1}for eache∈R.) The resulting inequality is
5. Innite stable patterns in other variants
The proof of the theorem presented in the pre-vious section indicates that we can obtain a valid upper bound on the maximum density of an innite stable pattern in a variant of Life by examining the death-by-overcrowding constraint for that variant. The bound is equal to the ratio of the right-hand side of the death-by-overcrowding constraint to the sum of the coecients of the variables in the left-hand side of the constraint. In B36=S23 Life, the death-by-overcrowding constraint is
2xe+ X
f∈N(e)
xf65:
Fig. 4.
than ve immortal neighbors.) Thus, in B36=S23 Life, the maximum density of an innite stable pattern at most12. Fig. 4 demonstrates that this bound is tight. In B3=S23 Life, the death-by-overcrowding constraint is
3xe+ X
f∈N(e)
xf66:
Thus, in B3=S23 Life, the maximum density of an innite stable pattern is at most 116. This bound isnot
tight. Noam Elkies has proved (using a “discharging”
technique) that in B3=S23 Life, the maximum density is actually12, as was long suspected by Life enthusiasts [5]. Perhaps there is a valid inequality for the B3=S23 Life IP formulation that “generates” the tight upper bound of 12.
References
[1] E.R. Berlekamp, J.H. Conway, R.K. Guy, Winning Ways for your Mathematical Plays, Vol. 2, Games in Particular, Academic Press, London, 1982.
[2] R.A. Bosch, Integer programming and Conway’s game of Life, SIAM Rev. 41(3) (1999) 594–604.
[3] P. Callahan, Conway’s life miscellany web page, URL: http:==www.cs.jhu.edu=∼callahan=lifepage.html, 1998. [4] CPLEX Optimization, Using the CPLEX Callable Library,
CPLEX Optimization, Incline Village, NV, 1995.
[5] N.D. Elkies, The still-Life density problem and its generalizations, in: P. Engel, H. Syta (Eds.), Voronoi’s Impact on Modern Science, Book 1, Institute of Mathematics, Kyiv, 1998, pp. 228–253.
[6] M. Gardner, The fantastic combinations of John Conway’s new solitare game “life”, Sci. Am. 223(4) (1970) 120–123. [7] M. Gardner, On cellular automata, self-reproduction, the
Garden of Eden, and the game “life”, Sci. Am. 224(2) (1971) 112–117.