MB · The Lab

EXP. 005 · Morphogenesis

Epoch 0 · f 0.0545 k 0.0620 · seeding

The Lab — EXP. 005 · how growth patterns itself

Two chemicals, arguing.

Alan Turing, 1952: give two substances that react and diffuse at different speeds, and structure appears on its own — spots, stripes, dividing cells. Here that argument is surveyed like terrain. Tap or drag to seed growth; the Species button changes the rules; Clear the dish starts over.

EXP. 005 — Notes

Morphogenesis

Turing's 1952 idea, running live: two chemicals — an activator that promotes growth and an inhibitor that suppresses it — spread at different speeds through the same tissue. That single asymmetry is enough: spots, stripes, mazes, dividing cells, each pattern chosen by two numbers (the feed and kill rates), none of them drawn anywhere. The pattern is the argument between the chemicals, settling.

Communities and markets pattern themselves the same way: people join because neighbors joined (activation), and drift when it gets crowded or stale (inhibition). Nobody segments a market into strong pockets and dead zones — the pockets grow, from local rules you can tune but not aim.

The applied version: when your network product develops stripes — three cities on fire, thirty inert — that isn't failed uniform marketing, it's the physics. Don't spread evenly; invest at the ember front, the edge where the pattern is actively growing, and adjust feed (acquisition) and kill (churn pressure) rather than painting spots by hand.

Pattern without a patterner. Two chemicals argue and the argument becomes coral, becomes stripes, becomes a cell tearing itself in two. Nothing here was designed; everything here was permitted.

  1. Mechanism under test: the Gray–Scott reaction–diffusion system — a two-chemical model of Turing's 1952 morphogenesis. Concentrations U and V obey U′ = Du∇²U − UV² + f(1−U) and V′ = Dv∇²V + UV² − (f+k)V, stepped on the GPU: a nine-point Laplacian (∇²) for diffusion, several sim substeps a frame, on an RG16F ping-pong texture. V feeds on U and on itself, then decays; U is replenished. That single feedback, running everywhere at once, is enough to grow a pattern.
  2. Species are just two numbers: the feed rate f and kill rate k. A small change in that pair switches the whole regime — CORAL branches, MITOSIS divides like cells, WORMS stripe, SOLITONS hold as travelling dots. Switch to a space-filling regime and the existing field re-argues itself into the new form; switch to a sparse one — dividing cells can't be made by shrinking a dense blob — and a fresh fertile culture is poured so it can grow its signature honestly.
  3. The survey lens is inherited from EXP. 002: V becomes elevation — hillshaded, hypsometrically tinted, and contoured with fwidth-AA lines (heavier index contours every fifth band); a jittered grid of iron-filing hachures runs down the slopes. The ember marks the active reaction front — the coastline where chemistry is still growing — and fades as the field goes quiet. Phenomenon→record is built into the render: the chemistry and its map are the same picture.
  4. Pattern without a patterner: nothing here plans a spot. There is no blueprint, no cell that knows the whole — only a local rule, applied identically to every point, arguing with its neighbours. Structure is what that argument settles into. This is the unsettling idea Turing left us: the leopard need not be told where its spots go.
  5. Honest stillness: reaction–diffusion often reaches a quasi-steady state. Every 90 frames the field is downsampled to 16×16 and read back; if it has stopped changing below ε, the pattern has genuinely settled — the loop stops with a note (pattern settled — epoch N) and wakes only on a seed or a species change. Even the ambient is accountable.
  6. What might graduate: the survey render is now proven on a second, unrelated field (fluid, then chemistry) — evidence it's a general house lens for phenomena, not a one-off. Candidates: reaction–diffusion as a living figure ground; the settle-detector as the honest-ambient pattern for any generative hero; seeding-under-the-pointer as DIRECTION stage-4 hands.

PHYSICS — raw WebGL2 + EXT_color_buffer_float, no libraries, single file · Gray–Scott on RG16F ping-pong, fixed-dt substeps, deterministic seeded start (mulberry32) · ambient growth allowed but gated: offscreen or hidden tab → zero frames; genuine settle → zero frames + note, wakes on interaction · reduced motion = a developed pattern as a still, dish untouched · no-float-GL = designed fallback · zero console errors.

← The Lab  ·  ← morganbrown.co