Generations
Generations rules (or multistate rules) are a generalization of Life-like cellular automata in which live cells can exist in different states, and cells that would die in a 2-state cellular automaton instead advance to the next state. The name "Generations" is due to the conceptualization of this process as cells "getting older" before eventually dying.[note 1]
Description
Generations rules are described by rulestrings of the form Bx/Sy/Cn[note 2] or y/x/n, an extension of B/S and S/B rulestrings where n is any natural number ≥2. Patterns evolve according to the following rules:
- A cell in state 0 ("dead") will advance to state 1 ("get born") in the next generation of the pattern if the number of neighbors in state 1 ("live") in its Moore neighbourhood is present in the rule's birth conditions (Bx).
- A cell in state 1 ("live") will:
- Remain in state 1 ("survive") in the next generation of the pattern if the number of neighbors in state 1 ("live") in its Moore neighborhood is present in the rule's survival conditions (Sx).
- Advance to state 2 ("age") in the next generation of the pattern otherwise.
- A cell in state m ≥ 2 will advance to state ((m + 1) mod n) in the next generation of the pattern. In particular, a cell in state n will reset to state 0 ("die").
Any outer-totalistic Life-like cellular automaton with rulestring B.../S... is equivalent to the Generations rule with rulestring B.../S.../C2.
Examples
- Main article: List of Generations rules
Rule (B/S/C) | Rule (S/B/C equivalent) | Name | Character | Author |
---|---|---|---|---|
B3457/S2367/C5 | 2367/3457/5 | Banners | Exploding | Mirek Wójtowicz |
B34678/S234/C24 | 234/34678/24 | Bloomerang | Expanding | John Elliott |
B2/S/C3 | /2/3 | Brian's Brain | Chaotic | Brian Silverman |
B378/S124567/C4 | 124567/378/4 | Caterpillars | Chaotic | Mirek Wójtowicz |
B2/S23/C8 | 23/2/8 | Cooties | Exploding | Rudy Rucker |
B13/S2/C21 | 2/13/21 | Fireworks | Exploding | John Elliott |
B34/S12/C3 | 12/34/3 | Frogs | Chaotic | Scott Robert Ladd |
B45678/S12345/C8 | 12345/45678/8 | Lava | Expanding | Mirek Wójtowicz |
B458/S012345/C3 | 012345/458/3 | Lines | Stable | Anders Starmark |
B2/S345/C4 | 345/2/4 | Star Wars | Exploding | Mirek Wójtowicz |
B2/S3456/C6 | 3456/2/6 | Sticks | Exploding | Rudy Rucker |
B26/S345/C5 | 345/26/5 | Transers | Exploding | John Elliott |
B2356/S1456/C16 | 1456/2356/16 | Xtasy | Exploding | John Elliott |
Software support
Both MCell and Golly support Generations rules, the latter with a maximum of 256 states. Generations rules are also supported by Chris Rowett's LifeViewer starting with build 180.
Extensions and variants
Generations rules can, in a straightforward manner, be adapted to von Neumann and hexagonal neighbourhoods and extended to non-totalistic and non-isotropic rules.
Larger than Life rules extend Generations rules to larger neighbourhoods.
Reverse Generations rules (also called "snoitareneG" rules), in which cells take time to become alive, have been explored.[1][2][3] These are not supported by Golly or apgsearch, although ruletables have been used for the former.
Also see
Notes
- ↑ The name "Generations", and the different states in which cells in Generations rules can exist, should not be confused with the generations (i.e. repeated evolution) of a pattern.
- ↑ "C" stands for "Count" (of cell states); alternatively, "G" (for "Generations") may be used. If "C" is used, care must be taken to not confuse the state count with a symmetry, e.g. "B3/S23/C4".
References
- ↑ Cite error: Invalid
<ref>
tag; no text was provided for refs namedthread372
- ↑ Brian Prentice. Re: Thread for basic questions (discussion thread) at the ConwayLife.com forums
- ↑ snoitareneG Rules (discussion thread) at the ConwayLife.com forums
External links
Generations at Golly's online help Family: Generations at Mirek Wójtowicz's Cellebration page