This repository provides code for simulating emergent collective motion from groups of continuous-time and -space active inference agents. This code serves as companion for the paper "Collective behavior from surprise minimization" (2024) by Conor Heins, Beren Millidge, Lancelot Da Costa, Richard Mann, Karl Friston, and Iain Couzin.
This codebase contains both a JAX and a Julia implementation of a multi-agent active inference algorithm for generating collective motion. The JAX implementation (in the jax_backend folder) is the recommended implementation, especially because it can automatically take advantage of GPU support on machines with NVIDIA-capable GPUs (see the official instructions).
- JAX backend installation/run instructions: jax_backend/README_JAX.md
- Julia installation/run instructions: julia/README_Julia.md