Conway's Life rule: a cell is born with 3 neighbours, survives with 2 or 3, dies otherwise.
$$p_{steady} \approx 0.0293$$
Steady-state average density: the empirical density Life converges to from random initial states.
What is Conway's Game of Life?
🙋
So, this is a "game" with no players? What exactly is it simulating?
🎓
Basically, it's a simulation of a universe defined by a grid of cells. Each cell can be "alive" (on) or "dead" (off). The entire system evolves in steps, with the next state determined by three simple rules applied to every cell simultaneously. Try clicking on the grid above to draw some live cells and hit "Start" to see it evolve.
🙋
Wait, really? Just three rules can create all those complex moving patterns? What are they?
🎓
Exactly! The rules are based on how many living neighbors a cell has. For a living cell: if it has 2 or 3 living neighbors, it survives to the next generation; otherwise, it dies from loneliness or overcrowding. For a dead cell: if it has exactly 3 living neighbors, a new cell is born there. That's it! Try using the "Random Fill" button with a low density to see these rules play out from a random start.
🙋
Okay, but what's the point of the "Simulation Speed" and "Cell Size" sliders? They don't change the rules, right?
🎓
Right, the rules are fixed. Those controls are about how we observe the universe. A faster speed lets you see long-term evolution quickly. A larger cell size makes it easier to see small, intricate patterns like "gliders" move. Try slowing the speed right down and drawing a small 3x3 block of cells to watch the rule application in slow-motion detail.
Physical Model & Key Equations
The Game of Life is a deterministic cellular automaton. Its state is defined by a 2D grid. The transition from one discrete time step to the next is governed by a rule function applied to each cell, based on its current state and the sum of its eight neighboring cells' states.
$$s_{t+1}(x, y) = f( s_t(x, y), \, N_t(x, y) )$$
Where:
• $s_t(x, y)$ is the state of the cell at grid position (x, y) at time $t$ (1 for alive, 0 for dead).
• $N_t(x, y)$ is the sum of the states of the eight neighboring cells (the "Moore neighborhood").
• $f$ is the rule function defined by Conway's three laws.
The rule function $f$ can be written concisely as a condition:
$$
s_{t+1}=
\begin{cases}1 & \text{if }(s_t = 1 \text{ and }N_t \in \{2,3\}) \text{ or }(s_t = 0 \text{ and }N_t = 3) \\
0 & \text{otherwise}\end{cases}
$$
This mathematical formulation captures the essence of birth, survival, and death. Despite its simplicity, this local rule can generate non-local, emergent patterns and complex global behavior that is impossible to predict without running the simulation—a key concept in complex systems.
Frequently Asked Questions
You can place live cells by clicking on the cells in the simulator screen. Well-known patterns can also be selected and placed from the 'Pattern Library'. Gliders are a classic pattern that moves diagonally, while guns periodically emit gliders.
You can adjust the generation update interval by dragging the speed slider at the bottom or top of the screen. Moving it to the left slows it down, and moving it to the right speeds it up. You can also use the pause button to step through manually.
Yes. Even from a random initial configuration, stable or periodic patterns such as gliders, blocks, and oscillators can naturally emerge. Especially with an appropriate density, you can observe complex life phenomena over a long period.
Yes, you can. Use the 'Save' button to export the current configuration to a text file (e.g., in RLE format), and use the 'Load' button to import that file and reproduce it. This allows you to share patterns you have created or resume them later.
Real-World Applications
Complex Systems & Emergence Research: The Game of Life is a foundational model for studying how simple, local interactions can lead to complex global order, chaos, or computation. It's used to understand phenomena in biology (like cell colony growth), sociology (pattern formation in crowds), and physics (crystal growth).
Computational Theory: It has been proven to be Turing complete. This means that with the right initial configuration (like a "glider gun" and logic gates built from patterns), it can simulate any computer algorithm. It's a powerful demonstration of how computation can emerge from simple physical laws.
Algorithmic Art & Generative Design: Artists and designers use cellular automata like the Game of Life to create evolving, organic patterns for visual art, music, architecture, and texture generation. The unpredictable yet rule-bound evolution is a rich source of inspiration.
Parallel Computing Models: The update rule, where every cell's new state depends only on its local neighborhood, makes it a perfect model for studying and testing massively parallel computing architectures and synchronization algorithms.
Common Misconceptions and Points to Note
First, don't think of the Game of Life too literally as a "simulation of life." It is fundamentally an abstract model for experiencing the concepts of "emergence" and "self-organization." When you use it in practical work, missing this point can lead you to misunderstand its essence. Let me list three specific points to note.
1. The "Random Density" setting significantly changes the outcome: When generating a random initial state, you might think the default around 50% density is the most chaotic and interesting. However, if the density is too low (e.g., below 10%), almost everything dies out quickly, and if it's too high (e.g., above 80%), you tend to get static, overcrowded clumps. To see orderly dynamic patterns, the trick is to adjust it between 30% and 60%. You'll find similar parameter tuning is necessary in simulations like material microstructure generation.
2. Be mindful of boundary conditions: The grid in this simulator is finite—what happens at the edges? Most implementations use either a fixed boundary (where edges are treated as perpetually dead cells) or a periodic boundary (where opposite edges connect). A glider disappearing when it hits the edge is due to a fixed boundary. When you use cellular automata in practical work, these boundary condition settings directly impact the results, so get into the habit of checking them first.
3. Don't be misled by the word "Life": Even though a cell is "alive," it doesn't have energy or genes. It's simply a bit with a state of 1 or 0, and the rules are simple switches based on the count of neighboring bits. The very structure—"complex global behavior arising from simple local rules"—is what makes the essence of "discrete state updates on a mesh" in CAE so fascinating.
Click start to run; monitor Generation counter, Live Cells count, and Peak Population to identify stable attractors
Worked Example
Create a 50×50 grid at 35% initial density, running at 30 fps. After ~150 generations, the system stabilizes to approximately 420 live cells with oscillation period-2 blocks and period-4 blinkers. Peak Population reaches 890 cells at generation 67. Density metric shows final equilibrium at 16.8% occupancy. Run duration to stable state: 5 seconds of simulation time.
Practical Notes
Low-density seeds (10–15%) produce sparse, long-lived glider patterns; high density (70%+) causes rapid extinction through overcrowding