This repository contains the complete source code for the ARLA project, a multi-agent simulation platform designed for studying emergent behavior and complex cognitive architectures.
This guide helps you set up the development environment and run a sample simulation in minutes.
- Python 3.11
- Poetry: A modern dependency management tool for Python.
- Make: For running helper commands from the
Makefile. - Docker: For the containerized workflow.
Clone the repository and use poetry install to create a virtual environment and install all dependencies.
git clone git@github.com:renbytes/arla.git
cd arla
poetry installThis command handles everything: it creates a .venv, installs all dependencies, and links the local agent-* subpackages in editable mode.
The main entrypoint for local simulations is the agent_sim.main module. You can run commands within the Poetry virtual environment by activating it first with poetry env activate, or by prefixing each command with poetry run.
# Activate the virtual environment (do this once per session)
poetry env activate
# Install the packages
poetry install
# Smoke test the local runner to see available options
poetry run arla --help
# Run an example simulation for 50 steps
poetry run arla --scenario simulations/soul_sim/scenarios/default.json --steps 50The provided Makefile contains the simplest way to use the containerized environment.
Before running any of the following, you need to start up the docker container:
docker compose up -d-
Start Services: Build the Docker images and start the application, database, and other services in the background.
make up
-
Run Simulation: Execute the example simulation inside the running
appcontainer.make run-example
-
View Logs: You can tail the logs from all running services using:
make logs
-
Stop Services: When you're finished, stop and remove all containers.
make down