Agents.jl is a pure Julia general-purpose framework for agent-based modeling (ABM): a computational simulation methodology where autonomous agents react to their environment (including other agents) given a predefined set of rules. Some major highlights of Agents.jl that set it apart from other similar frameworks are:
- It is simple: has a very short learning curve and requires writing minimal code
- Has an extensive interface of thousands of out-of-the box possible agent actions
- It is fast (typically faster than established competitors)
- Straightforwardly allows simulations on Open Street Maps
- Allows both traditional discrete-time ABM simulations as well as continuous time "event queue" based ABM simulations
- Provides native integration of ABM simulations with Reinforcement Learning (RL)
More information and an extensive list of features can be found in the documentation, which you can either find online or build locally by running the docs/make.jl file.
Agents.jl is part of JuliaDynamics, an organization dedicated to creating high quality scientific software.
If you use this package in a publication, or simply want to refer to it, please cite the paper below:
@article{Agents.jl,
doi = {10.1177/00375497211068820},
url = {https://doi.org/10.1177/00375497211068820},
year = {2022},
month = jan,
publisher = {{SAGE} Publications},
pages = {003754972110688},
author = {George Datseris and Ali R. Vahdati and Timothy C. DuBois},
title = {Agents.jl: a performant and feature-full agent-based modeling software of minimal code complexity},
journal = {{SIMULATION}},
volume = {0},
number = {0},
}
