ABCE: A Python Library for Economic Agent-Based Modeling

  • Davoud Taghawi-Nejad
  • Rudy H. Tanin
  • R. Maria Del Rio Chanona
  • Adrián Carro
  • J. Doyne Farmer
  • Torsten Heinrich
  • Juan Sabuco
  • Mika J. Straka
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10539)

Abstract

The rise of computational power makes agent-based modelling a viable option for models capturing the complex nature of an economy. However, the coding implementation can be tedious. Because of this, we introduce ABCE, the Agent-Based Computational Economics library. ABCE is an agent-based modeling library for Python that is specifically tailored for economic phenomena. With ABCE the modeler specifies the decision logic of the agents, the order of actions, the goods and their physical transformation (the production and the consumption functions). Then, ABCE automatically handles the actions, such as production and consumption, trade and agent interaction. The result is a program where the source code consists of only economically meaningful commands (e.g. decisions, buy, sell, produce, consume, contract, etc.). ABCE scales on multi-core computers, without the intervention of the modeler. The model can be packaged into a nice web application or run in a Jupyter notebook.

Keywords

Agent-based models Agent-based macroeconomics Python Economic simulation Computational economics Computational techniques Simulation modeling 

References

  1. 1.
    Allan, R.: Survey of agent based modelling and simulation tools. Technical report, October 2010. http://purl.org/net/epubs/work/50398
  2. 2.
    Caiani, A., Godin, A., Caverzasi, E., Gallegati, M., Kinsella, S., Stiglitz, J.E.: Agent based-stock flow consistent macroeconomics: towards a benchmark model. J. Econ. Dyn. Control 69, 375–408 (2016). http://dx.doi.org/10.1016/j.jedc.2016.06.001
  3. 3.
    Collier, N.: RePast: an extensible framework for agent simulation (2003)Google Scholar
  4. 4.
    Farmer, J.D., Foley, D.: The economy needs agent-based modelling. Nature 460(7256), 685–686 (2009). https://www.nature.com/nature/journal/v460/n7256/full/460685a.html
  5. 5.
    Jones, E., Oliphant, T., Peterson, P., et al.: SciPy: open source scientific tools for Python (2001). http://www.scipy.org/. Accessed 10 June 2017
  6. 6.
    Luke, S., Cioffi-Revilla, C., Panait, L., Sullivan, K., Balan, G.: Mason: a multiagent simulation environment. Simulation 81(7), 517–527 (2015). http://dx.doi.org/10.1177/0037549705058073
  7. 7.
    Nikolai, C., Madey, G.: Tools of the trade: a survey of various agent based modeling platforms. J. Artif. Soc. Soc. 12(2), 2 (2009). http://jasss.soc.surrey.ac.uk/12/2/2.html
  8. 8.
    North, M., Howe, T., Collier, N., Vos, J.: The repast simphony runtime system. In: Proceedings of Agent 2005 Conference on Generative Social Processes, Models, and Mechanisms, p. 151 (2005)Google Scholar
  9. 9.
    Phelps, S.: Applying dependency injection to agent-based modeling: the JABM toolkit. Technical report WP056-12, Centre for Computational Finance and Economic Agents (CCFEA) (2012). http://www.bracil.net/ccfea/WorkingPapers/2012/CCFEA-Wpp.056-12-r2.pdf
  10. 10.
    Railsback, S.F., Lytinen, S.L., Jackson, S.K.: Agent-based simulation platforms: review and development recommendations. Simulation 82(9), 609–623 (2006). http://dx.doi.org/10.1177/0037549706073695
  11. 11.
    Rossum, G.V.: Glue it all together with Python. In: Position Paper for OMG-DARPA-MCC Workshop on Compositional Software Architecture (1998). https://www.python.org/doc/essays/omg-darpa-mcc-position/
  12. 12.
    Serenko, A., Detlor, B.: Agent toolkits: a general overview of the market and an assessment of instructor satisfaction with utilizing toolkits in the classroom (2002). http://hdl.handle.net/11375/5601
  13. 13.
    Taghawi-Nejad, D.: Modelling the economy as an agent-based process: ABCE, a modelling platform and formal language for ACE. J. Artif. Soc. Soc. Simul. (2013). http://jasss.soc.surrey.ac.uk/16/3/1.html
  14. 14.
    Tobias, R., Hofmann, C.: Evaluation of free Java-libraries for social-scientific agent based simulation. J. Artif. Soc. Soc. Simul. 7(1) (2004). http://jasss.soc.surrey.ac.uk/7/1/6.html
  15. 15.
    Walt, S.V.D., Colbert, S.C., Varoquaux, G.: The NumPy array: a structure for efficient numerical computation. Comput. Sci. Eng. 13(2), 22–30 (2011)CrossRefGoogle Scholar
  16. 16.
    Wikipedia: Comparison of agent-based modeling software – Wikipedia, the free encyclopedia (2017). https://en.wikipedia.org/w/index.php?title=Comparison_of_agent-based_modeling_software&oldid=783176104. Accessed 14 June 2017

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Davoud Taghawi-Nejad
    • 1
    • 2
  • Rudy H. Tanin
    • 4
    • 5
  • R. Maria Del Rio Chanona
    • 1
    • 2
  • Adrián Carro
    • 1
    • 2
  • J. Doyne Farmer
    • 1
    • 2
    • 3
  • Torsten Heinrich
    • 1
    • 2
  • Juan Sabuco
    • 1
    • 2
  • Mika J. Straka
    • 1
    • 6
  1. 1.Institute for New Economic Thinking at the Oxford Martin SchoolUniversity of OxfordOxfordUK
  2. 2.Mathematical InstituteUniversity of OxfordOxfordUK
  3. 3.Santa-Fe InstituteSanta FeUSA
  4. 4.Department of PhysicsMITCambridgeUSA
  5. 5.Independent ScholarTallinnEstonia
  6. 6.IMT School for Advanced Studies LuccaLuccaItaly

Personalised recommendations