File: Larger_than_Life.html

package info (click to toggle)
golly 3.3-1.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 20,176 kB
  • sloc: cpp: 72,638; ansic: 25,919; python: 7,921; sh: 4,245; objc: 3,721; java: 2,781; xml: 1,362; makefile: 530; javascript: 279; perl: 69
file content (260 lines) | stat: -rw-r--r-- 11,535 bytes parent folder | download | duplicates (4)
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"> &nbsp;&nbsp;&nbsp;
<img src="NN.png"> &nbsp;&nbsp;&nbsp;
<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>&nbsp;<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>&nbsp;<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>&nbsp;<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>&nbsp;<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>&nbsp;<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&ndash;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>