QuickLife
QuickLife is an algorithm used in Golly to efficiently and quickly run isotropic non-totalistic cellular automata. It was written from scratch, but originally inspired by both xlife and the algorithm used in Alan Hensel's Java-based Life applet.[note 1]
QuickLife uses a tree structure[1] to represent the universe, with each level increasing one of the dimensons by a factor of 8; this makes it possible to avoid using coordinates, and thus restricting the size of the universe. Distinct structures are used for 4 × 8, 32 × 8, and 32 × 32 sections of the universe; the sizes at the following levels are 256 × 32, 256 × 256, 2048 × 256, 2048 × 2048, etc. The tree contains both an even and odd generation, along with flags indicating if a subtree is stable, oscillating with period 2, or active. Details of the algorithm can be found in Golly's source code, specifically in the files qlifealgo.h and qlifealgo.cpp.
Notes and references
- ↑ Cf. Alan Hensel's description for details on his applet.
External links
- QuickLife at Golly's online help
- Quicklife Algorithm (discussion thread) at the ConwayLife.com forums
- Golly source code:
|