1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260
|
<html>
<title>Golly Help: Larger than Life</title>
<body bgcolor="#FFFFCE">
<p>
Larger than Life (LtL) is a family of cellular automata rules that generalize
John Conway's Game of Life to large neighborhoods and general birth and survival thresholds.
The LtL rule notation used by Golly is identical to the one created by Mirek Wojtowicz
for <a href="http://www.mirekw.com/ca/rullex_lgtl.html">MCell</a>:
<p>
<dd>
R<i>r</i>,C<i>c</i>,M<i>m</i>,S<i>smin</i>..<i>smax</i>,B<i>bmin</i>..<i>bmax</i>,N<i>n</i>
</dd>
<p>
R<i>r</i> - specifies the neighborhood range (<i>r</i> is from 1 to 500).<br>
C<i>c</i> - specifies the number of states (<i>c</i> is from 0 to 255).<br>
M<i>m</i> - specifies if the middle cell is included in the neighborhood count (<i>m</i> is 0 or 1).<br>
S<i>smin</i>..<i>smax</i> - specifies the count limits for a state 1 cell to survive.<br>
B<i>bmin</i>..<i>bmax</i> - specifies the count limits for a dead cell to become a birth.<br>
N<i>n</i> - specifies the extended neighborhood type (<i>n</i> is M for Moore, N for von Neumann, and C is for circular).
<p>
These diagrams show the NM, NN and NC neighborhoods for <i>r</i> = 3
(the NC diagram also shows the circle used to determine which cells are
within the circular neighborhood):
<p>
<dd>
<img src="NM.png">
<img src="NN.png">
<img src="NC.png">
</dd>
<p>
The S and B limits must be from 0 to the neighborhood size:
(2<i>r</i>+1)^2 when <i>n</i> = M, or 2<i>r</i>(<i>r</i>+1)+1 when <i>n</i> = N,
or approximately 3.14(<i>r</i>+0.5)^2 when <i>n</i> = C.
The set of points in a circular neighborhood is those whose Euclidean distance
from the center point is less than <i>r</i>+0.5.
A quick way to see the circular neighborhood for a given <i>r</i> and <i>n</i>
is to use a rule with only B1 set. For example, switch to
<b><a href="rule:R6,C0,M0,S1..1,B1..1,NC">R6,C0,M0,S1..1,B1..1,NC</a></b>,
turn on a single cell and hit the space bar.
<p>
If the number of states (specified after C) is greater than 2 then states 1 and above
don't die immediately but gradually decay. Note that state values above 1 are not
included in the neighborhood counts and thus play no part in deciding the survival
of a state 1 cell, nor the birth of an empty cell. C0 and C1 are equivalent to C2.
<p> <br>
<font size=+1><b>Examples</b></font>
<p>
The Patterns/Larger-than-Life folder contains a number of
example patterns (mostly from the MCell collection).
The following table shows a number of example rules along with
their commonly used names:
<p>
<table cellspacing=0 cellpadding=0>
<tr>
<td><b><a href="rule:R1,C0,M0,S2..3,B3..3,NM">R1,C0,M0,S2..3,B3..3,NM</a></b></td>
<td width=10> </td><td>[Life]</td><td width=10> </td>
<td> - the default rule for this algorithm.</td>
</tr>
<tr>
<td><b><a href="rule:R5,C0,M1,S34..58,B34..45,NM">R5,C0,M1,S34..58,B34..45,NM</a></b></td>
<td width=10> </td><td>[Bosco's Rule]</td><td width=10> </td>
<td> - (aka Bugs) a chaotic rule by Kellie Evans.</td>
</tr>
<tr>
<td><b><a href="rule:R10,C0,M1,S123..212,B123..170,NM">R10,C0,M1,S123..212,B123..170,NM</a></b></td>
<td width=10> </td><td>[Bugsmovie]</td><td width=10> </td>
<td> - a chaotic rule by David Griffeath.</td>
</tr>
<tr>
<td><b><a href="rule:R8,C0,M0,S163..223,B74..252,NM">R8,C0,M0,S163..223,B74..252,NM</a></b></td>
<td width=10> </td><td>[Globe]</td><td width=10> </td>
<td> - an expanding rule by Mirek Wojtowicz.</td>
</tr>
<tr>
<td><b><a href="rule:R1,C0,M1,S1..1,B1..1,NN">R1,C0,M1,S1..1,B1..1,NN</a></b></td>
<td width=10> </td><td>[Gnarl]</td><td width=10> </td>
<td> - an exploding rule by Kellie Evans.</td>
</tr>
<tr>
<td><b><a href="rule:R4,C0,M1,S41..81,B41..81,NM">R4,C0,M1,S41..81,B41..81,NM</a></b></td>
<td width=10> </td><td>[Majority]</td><td width=10> </td>
<td> - a stable rule by David Griffeath.</td>
</tr>
<tr>
<td><b><a href="rule:R7,C0,M1,S113..225,B113..225,NM">R7,C0,M1,S113..225,B113..225,NM</a></b></td>
<td width=10> </td><td>[Majorly]</td><td width=10> </td>
<td> - an expanding rule by David Griffeath.</td>
</tr>
<tr>
<td><b><a href="rule:R10,C255,M1,S2..3,B3..3,NM">R10,C255,M1,S2..3,B3..3,NM</a></b></td>
<td width=10> </td><td>[ModernArt]</td><td width=10> </td>
<td> - a chaotic rule by Charles A. Rockafellor.</td>
</tr>
<tr>
<td><b><a href="rule:R7,C0,M1,S100..200,B75..170,NM">R7,C0,M1,S100..200,B75..170,NM</a></b></td>
<td width=10> </td><td>[Waffle]</td><td width=10> </td>
<td> - an expanding rule by Kellie Evans.</td>
</tr>
</table>
</p>
<p> <br>
<font size=+1><b>Alternative rule notation</b></font>
<p>
Golly also allows rules to be entered using the notation defined by
Kellie Evans in her thesis [<a href="#2">2</a>]. The range, birth limits and survival limits
are specified by five integers separated by commas:
<p>
<dd>
<i>r</i>,<i>bmin</i>,<i>bmax</i>,<i>smin</i>,<i>smax</i>
</dd>
<p>
This notation assumes an extended Moore neighborhood in which a live middle cell
is included in the neighborhood count (ie. totalistic).
For example, Life can be entered as 1,3,3,3,4.
<p>
Note that Golly's canonical version of a Larger than Life rule
always uses the MCell syntax.
<p> <br>
<font size=+1><b>Grid topology and size limits</b></font>
<p>
The Larger than Life algorithm supports both bounded and unbounded universes,
but with certain restrictions.
As in Golly's other algorithms, a bounded universe is specified by appending
a suitable suffix to the rule, but the topology can only be a simple torus or a plane.
For example,
<b><a href="rule:R5,C0,M1,S34..58,B34..45,NM:T500,40">R5,C0,M1,S34..58,B34..45,NM:T500,40</a></b>
creates a 500 by 40 torus using Bosco's Rule, and
<b><a href="rule:1,3,3,3,4:P300,200">1,3,3,3,4:P300,200</a></b>
creates a 300 by 200 plane using Life.
The maximum grid size is 100 million cells.
The minimum width or height is twice the supplied range. Values less than that
(including zero) are automatically increased to the minimum value.
<p>
If a given rule has no suffix then the universe is unbounded.
Well, almost. Golly maintains an internal grid that is automatically resized
as a pattern expands or shrinks. The size of this grid is limited to
100 million cells, and the cell coordinates of the grid edges must remain
within the editing limits of +/- 1 billion.
For the vast majority of patterns these limits won't ever be a problem.
<p>
One more restriction worth noting: B0 is not allowed in an unbounded universe.
<p> <br>
<font size=+1><b>History</b></font>
<p>
Larger than Life was first imagined by David Griffeath in the early 1990s to explore
whether Life might be a clue to a critical phase point in the threshold-range
scaling limit [<a href="#1">1</a>].
The LtL family of rules includes Life as well as a rich set of
two-dimensional rules, some of which exhibit dynamics vastly different from
Life [<a href="#2">2</a>], [<a href="#3">3</a>].
Kellie Evans studied LtL in her 1996 thesis and discovered that
a family of "Life-like" rules comprises a much larger subset of LtL parameter
space than initially imagined [<a href="#2">2</a>], [<a href="#4">4</a>], [<a href="#5">5</a>].
<p>
In order to study LtL rules, David Griffeath and Bob Fisch developed WinCA,
a cellular automata modeling environment for Windows. WinCA's editing capabilities
were modest, but the software was able to implement LtL rules to range 200 and its
speed increased together with the hardware on which it ran. In those early days of
Windows, Griffeath's Primordial Soup Kitchen shared graphics and other discoveries
via weekly "soup recipes" [<a href="#6">6</a>].
WinCA still runs on 32-bit Windows and allows for colorful LtL and other cellular automata
images [<a href="#10">10</a>], [<a href="#11">11</a>].
Just before LtL was implemented in Golly, a virtual machine was used to run WinCA on
64-bit Windows and some new discoveries were made [<a href="#12">12</a>].
<p>
In 1999 Mirek Wojtowicz developed Mirek's Cellebration (MCell) [<a href="#9">9</a>],
a cellular automata modeling environment for Windows, which was excellent for editing on the fly
and working with small configurations for LtL rules up to range 10. Dean Hickerson used
MCell to construct the first "bug gun" using the period 166 oscillator known as Bosco,
which was discovered by Kellie Evans. This construction led to numerous other
constructions and questions [<a href="#7">7</a>].
<p>
Golly is a game changer in the study of LtL: the first software with seemingly
boundless possibilities that implements LtL in ranges up to 500 and the potential
to discover LtL dynamics as yet unimagined.
<p> <br>
<font size=+1><b>References</b></font>
<a name="1"></a><p>
[1] D. Griffeath. <i>Self-organization of random cellular automata: Four snapshots,
in "Probability and Phase Transitions"</i>, 1994. (G. Grimmett Ed.), Kluwer Academic,
Dordrecht/Norwell, MA.
<a name="2"></a><p>
[2] K. Evans. <i>"Larger than Life: it's so nonlinear"</i>, 1996. Ph.D. dissertation,
University of Wisconsin- Madison.<br>
<a href="http://www.csun.edu/~kme52026/thesis.html">http://www.csun.edu/~kme52026/thesis.html</a>
<a name="3"></a><p>
[3] J. Gravner and D. Griffeath. <i>Cellular automaton growth on Z2: theorems, examples,
and problems</i>, 1998. Advances in App. Math 21, 241-304.<br>
<a href="http://psoup.math.wisc.edu/extras/r1shapes/r1shapes.html">http://psoup.math.wisc.edu/extras/r1shapes/r1shapes.html</a>
<a name="4"></a><p>
[4] K. Evans. <i>Larger than Life: digital creatures in a family of two-dimensional
cellular automata</i>, 2001. Discrete Mathematics and Theoretical Computer Science,
Volume AA, 2001, 177-192<br>
<a href="http://dmtcs.loria.fr/proceedings/html/dmAA0113.abs.html">http://dmtcs.loria.fr/proceedings/html/dmAA0113.abs.html</a>
<a name="5"></a><p>
[5] K. Evans, <i>Threshold-range scaling of Life's coherent structures</i>, Physica D 183
(2003), 45-67.
<a name="6"></a><p>
[6] D. Griffeath. <i>Primordial Soup Kitchen</i>.<br>
<a href="http://psoup.math.wisc.edu/kitchen.html">http://psoup.math.wisc.edu/kitchen.html</a>
<a name="7"></a><p>
[7] K. Evans, <i>Is Bosco's rule universal?</i>, in "Lecture Notes in Computer Science," Vol. 3354,
ed. Maurice Margenstern. Springer-Verlag GmbH (2005), 188–199. WWW companion page to paper<br>
<a href="http://www.csun.edu/~kme52026/bosco/bosco.html">http://www.csun.edu/~kme52026/bosco/bosco.html</a>
<a name="8"></a><p>
[8] K. Evans. <i>Replicators and Larger than Life examples</i>, 2002.
In "New Constructions in Cellular Automata", eds. David Griffeath and Cris Moore. Oxford University Press.
<a name="9"></a><p>
[9] MCell rules lexicon for Larger than Life:<br>
<a href="http://www.mirekw.com/ca/rullex_lgtl.html">http://www.mirekw.com/ca/rullex_lgtl.html</a>
<a name="10"></a><p>
[10] D. Griffeath. Self-organizing two-dimensional cellular automata: 10 still frames.
In "Designing Beauty: the Art of Cellular Automata," eds. Andrew Adamatzky and Genaro Martinez. Springer (2016) 1-12.
<a name="11"></a><p>
[11] K. Evans. Larger than Life. In "Designing Beauty: the Art of Cellular Automata,"
eds. Andrew Adamatzky and Genaro Martinez. Springer (2016) 27-34.
<a name="12"></a><p>
[12] A. Tantoushian. "Scaling Larger than Life Bugs: to range 25 and beyond", 2017 Master's thesis,
California State University, Northridge.<br>
<a href="http://scholarworks.csun.edu/handle/10211.3/192639">http://scholarworks.csun.edu/handle/10211.3/192639</a>
</body>
</html>
|