What is Emergent?
Emergent is a lightweight, flexible Python framework for agent-based modeling (ABM). It lets you simulate how large-scale behaviors emerge from the local interactions of individual agents connected in a graph network. Whether you’re modeling social dynamics, distributed decision-making, opinion propagation, or any other complex adaptive system, Emergent gives you the primitives to define, run, and analyze your simulation with minimal boilerplate.Quickstart
Build and run your first simulation in minutes.
AgentModel
Learn the core abstraction at the heart of Emergent.
Graph Structures
Understand how agents are connected.
API Reference
Full reference for all classes and methods.
Key concepts
| Concept | Description |
|---|---|
| AgentModel | The central object that holds your graph, parameters, and simulation logic |
| Graph | A NetworkX graph where each node is an agent |
| Parameters | A key-value store controlling model behavior (graph type, node count, convergence thresholds, etc.) |
| Initial data function | A callable that sets each node’s starting state |
| Timestep function | A callable that advances the simulation one step |
| Convergence | A built-in mechanism to stop the simulation when a tracked variable stabilizes |
Installation
Emergent requires Python 3.10.7 or higher.