An optimized web-based implementation of the legendary cellular automaton devised by John Horton Conway. This "zero-player" simulation demonstrates how complex, organic patterns and emergent behaviors can arise from a set of simple, deterministic rules.
This implementation sits at the intersection of academic theory and digital curiosity. It was developed to explore the profound implications of Cellular Automata:
- Theory of Computation (NITC): Built as a practical exploration for my coursework at the National Institute of Technology Calicut. It serves as a visual gateway into understanding the Church-Turing Thesis and how local state transitions can reach the heights of Turing Completeness.
- Veritasium Inspiration: Heavily influenced by the video "Math's Fundamental Flaw", which explores Gödel's Incompleteness Theorem and the fascinating realization that systems like the Game of Life are capable of performing any calculation possible by a modern computer, effectively acting as a Universal Turing Machine.
The simulation progresses in discrete time-steps called ticks. During each tick, the state of the entire grid is updated simultaneously based on four fundamental laws:
- Isolation: Any living cell with < 2 living neighbors dies (underpopulation).
- Stability: Any living cell with 2 or 3 living neighbors survives.
- Overcrowding: Any living cell with > 3 living neighbors dies (overpopulation).
- Genesis: Any dead cell with exactly 3 living neighbors becomes a live cell (reproduction).
- Double-Buffering Logic: To ensure the rules are applied simultaneously across the grid, the simulation uses a dual-grid approach, preventing state mutation during the calculation of the next generation.
- Heatmap & Persistence: Includes an Aging Effect (Heatmap) that tracks the "persistence" of cells. Newborn cells appear in vibrant mint green, while established cells transition into deeper teal shades, visualizing the history of the "seed."
- Performance Optimized: Designed to handle high-frequency updates and large grids for fluid visualization.
- The Seed: Manually toggle cells or use the Randomize tool to create an initial state.
- Trace Mode: Enable the trace feature to visualize the path and movement of patterns like Gliders and Oscillators.
- Observation: Look for emergent structures such as "Still Lifes" (Block, Beehive), "Oscillators" (Blinker, Pulsar), and "Spaceships" (Glider, LWSS).
Elias Joby Computer Science & Robotics