Modeling granular media using cellular automata
One-year project (preparatory classes, December 2020 – July 2022). Open-source hashing codes to reproduce erosion and craterization with custom rules.
Mathematical definition of a cellular automaton
A cellular automaton (CA) is a discrete dynamical system defined by:
- Lattice L (e.g. ℤ or ℤ²): the set of cells.
- State set S: a finite set of possible states for each cell.
- Neighborhood N ⊂ L: a finite set of relative positions (e.g. von Neumann, Moore).
- Local rule f: SN → S: the transition function applied uniformly at each cell.
A configuration is a map c: L → S. The global map F is defined by (F(c))x = f( (cx+n)n∈N ) for each cell x. The system evolves in discrete time: ct+1 = F(ct).
Theorem (Curtis–Hedlund–Lyndon)
On the full shift SL with the product topology, a map F: SL → SL is the global map of some cellular automaton if and only if F is continuous and commutes with the shift(s) (translation-invariant).
Simulator: Golly
Golly is free, open-source software for exploring cellular automata. It supports many rules (Life, Generations, Rule 110, etc.), very large grids, and scripting. Useful for testing custom rules and visualizing erosion/crater-like dynamics.