2 ms·
There are more and more these days. If you want Java/scala-based, the two biggest ones are: - MASON: https://cs.gmu.edu/~eclab/projects/mason/ https://cs.gmu.ed
by falls-to-bits 8y ago
There are more and more these days. If you want Java/scala-based, the two biggest ones are:
- MASON: https://cs.gmu.edu/~eclab/projects/mason/ https://cs.gmu.edu/~eclab/projects/mason/
- Repast: https://repast.github.io/index.html https://repast.github.io/index.html
For Python, someone else has already mentioned Mesa: https://github.com/projectmesa/mesa/ https://github.com/projectmesa/mesa/
You can find some more lists at https://www.comses.net/ https://www.comses.net/ -- sadly https://en.wikipedia.org/wiki/Comparison_of_agent-based_modeling_software https://en.wikipedia.org/wiki/Comparison_of_agent-based_mode... looks fairly sparse / a little outdated (though I have only passing familiarity with most of those).
Finally, I think a great technical source of theory about these models comes from Cosma Shalizi's notebook on ABM: http://bactra.org/notebooks/agent-based-modeling.html http://bactra.org/notebooks/agent-based-modeling.html
He's one of the single best sources I've seen for describing systems for formally estimating ABMs.
Netlogo is great for fast prototyping, but at least as of ...well a number of years ago now, there was a noticeable lack of scientific computing libraries. For example numerical optimization routines were extremely basic. I had to use a user-contributed package to solve a root finding problem.
Honestly for this type of work I typically write my own from scratch in Python. Here's a great set of lectures and code from Blake LeBaron, "from sratch" in Python, for finance ABMs: http://people.brandeis.edu/~blebaron/classes/agentfin/ http://people.brandeis.edu/~blebaron/classes/agentfin/
...and here's a nice from scratch Schelling model in Python: https://lectures.quantecon.org/py/schelling.html https://lectures.quantecon.org/py/schelling.html
- xrd 8y agoTerrific summary, thanks so much.