Repository navigation
Highlights
-
Evolving recurrent neural brains (19→12→4, hand-rolled, no ML libraries) with directional vision, memory, and a communication channel.
-
Sexual reproduction with genome crossover; co-evolving morphology and diet.
-
In-lifetime learning (reward-modulated Hebbian) and curiosity — a forward world-model trained by gradient descent for intrinsic reward.
-
Living environment — seasons, day/night vision cycles, terrain that blocks movement and sight, and multiple food types that drive dietary niches.
-
Analytics views — k-means + PCA species clustering, lineage abundance, and a coalescent phylogeny tree, all hand-rolled. See Controls for the keys that open them.
-
Tooling — pan/zoom camera, tunable JSON config, a headless CSV runner for offline experiments, and population save/load.
There is no backpropagation between generations. Populations improve two ways:
| Mechanism | Timescale | Description |
|---|---|---|
| Reproduction with mutation | Across generations | Genome crossover from two parents, plus mutation |
| Reward-modulated Hebbian learning | Within a lifetime | Weights adapt as the agent is rewarded |
| Curiosity | Within a lifetime | A forward world-model trained by gradient descent supplies intrinsic reward |
The brain is a recurrent network, so agents carry state between ticks — memory, not just reflex.
All randomness comes from a single seeded generator. A given --seed reproduces a run exactly, which is what makes the headless CSV runner useful for comparing changes.