A deterministic, agent-based artificial life simulation where autonomous agents move, consume resources, reproduce, and evolve under environmental pressure—producing emergent behavior without scripted logic or fitness functions.
The project focuses on systems design, simulation architecture, and data-driven visualization, not traditional gameplay.
- Autonomous agents with energy, age, and inheritable traits
- Resource-based survival (food, metabolism)
- Reproduction with mutation and natural selection
- Deterministic simulation using a seeded RNG
- Modular engine and systems-based architecture
- Real-time Canvas visualization with live metrics
No agents are player-controlled.
All behavior emerges from rules + environment.
Each tick:
- Agents perceive nearby food
- A decision system selects an action
- Movement and energy updates occur
- Agents eat, reproduce, age, or die
- Food respawns to maintain ecosystem pressure
- Metrics are sampled for visualization
This naturally produces population cycles, trait optimization, and extinction events.
- Agents and food rendered in real time
- Energy visualized via color and size
- HUD showing population, speed, and traits
- Time-series graphs for population and traits
npm installnpm run dev- Space — pause / resume
- 1 / 2 / 3 — simulation speed
- f / F — food availability
- m / M — mutation strength
- g — cycle trait graph
- r / n — reset (same / new seed)
- Determinism first
- Emergence over scripting
- Strong separation of engine, systems, and UI
- Observability via metrics and visualization
Feature-complete, portfolio-ready artificial life simulation.