Analysis updated 2026-05-18
Run a simulation of 500 agents in a shared environment and measure whether distinct roles like forager or builder emerge without being programmed in.
Study how social norms or wealth distribution change over time in a virtual population using the built-in statistical change-point detection.
Build a custom agent subclass with a specific behavior strategy and observe how it interacts with and influences the broader population.
Inspect individual agent memory and relationship state in real time using the reference dashboard during a running simulation.
| tianhangzhuzth/fundamental-ava | pluviobyte/video-production-skills | kasothaphie/genrecon | |
|---|---|---|---|
| Stars | 521 | 503 | 478 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | easy | hard |
| Complexity | 4/5 | 2/5 | 5/5 |
| Audience | researcher | developer | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires Python 3.11 or later, the async architecture means some debugging patterns are different from synchronous code.
Ava is a Python framework for running large simulations where hundreds or thousands of AI agents live in a shared virtual environment and interact with each other. The goal is to see what kinds of social patterns, roles, and group behaviors emerge naturally from many simple individuals following their own rules, rather than being told to produce those patterns. Each agent in the simulation has its own memory system divided into three layers: episodic memory for specific events it has lived through, semantic memory for facts it has derived from those events, and procedural memory for skills that get reinforced when they succeed. Agents also track relationships with other agents and form beliefs based on what they perceive. The combination of memory, beliefs, and goals drives each agent to choose actions each time step without following a central script. The framework is built to handle scale without collapsing. Each simulation tick runs all agents at the same time using Python's async infrastructure with a controlled limit on how many run simultaneously. A single slow or failing agent does not block the others. The architecture also separates the tracking of social norms, governance rules, and analytical measurement into distinct modules that observe what is happening in the population. A key part of the design is measuring emergence statistically rather than just watching it. If agents start specializing into distinct roles or wealth becomes concentrated, the analysis layer detects that shift using a change-point detection method and associates a confidence score with the observation, rather than relying on visual inspection of charts. The simulation engine itself does not include a visual interface, but a reference dashboard is documented that reads live state from the running simulation and displays each agent's current memory, beliefs, and relationships. Installation requires Python 3.11 or later, and the library is Apache 2.0 licensed. The repository also references a cryptocurrency token called AVA, which appears to be a separate commercial project from the same organization.
A Python framework for simulating large populations of autonomous agents with memory, beliefs, and social models to study how group behaviors and social structures emerge from individual interactions.
Mainly Python. The stack also includes Python, asyncio.
Apache 2.0 license, use, modify, and distribute freely including for commercial purposes, with attribution and license notice required.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.