Simulations and Modeling Codes

Agent-Based Modelling and Simulation offers an innovative perspective to think of and create systems that we have always wanted to model- but that we have not been able to do so for a long time- and leads us to understand the dynamics of biological, social and other systems derived from the characteristics and behaviours of the agents that make up these systems. It is a system that has been applied in many disciplines for a long time, at least 40 years, and the number and breadth of these applications are constantly growing. Indeed, the availability of micro-data and advances in computing have made possible an increasing number of agent-based applications in a variety of domains. We can see their use, for example, in disciplines relating to the natural sciences, social sciences, ecology, physics, social economy and engineered systems.

There are numerous fields of application but, despite this, in terms of essential features and development methods for model and relationship building, as well as modelling techniques, they are not yet generally understood or accepted and there are a variety of opinions on their use.

What distinguishes this model from other previously developed models, such as conventional modelling based on equations or models of conceptual nature for the construction of illustrations and theories not calibrated on real world data, lies in the spatial factor or geographical specificity. This element is fundamental for spatial mobility and stands out for being another attribute of agents, which naturally introduces a heterogeneity of agents and helps to define and operate various rules of interaction.

The central idea of Agent-Based Modeling and Simulation is that many (if not most) of the phenomena in the world can be modelled effectively with agents, with the environment and with a description of agent-agent and agent-environment interactions, so that we can observe, for example, the collective effects of agents’; behaviours and interactions. With this model, it is possible to model the dynamics of complex systems and complex adaptive systems, as well as to include models of behaviour (human or otherwise).

An agent is an autonomous individual or an object with particular properties, actions and possibly objectives. Each of us is an agent in our daily actions and interactions with the real world and we are already agent-based modelers, in the sense that we are constantly choosing our behaviours and anticipating the behaviours of others. The environment is the landscape on which agents interact and can be geometric and network-based, or derived from real data. The interactions that occur between these agents and the environment can be quite complex. Agents can interact with other agents or the environment, and not only can the agent’s interaction behaviour change over time, but also the strategies used to decide which action to use at a given time. Interactions are the exchange of information and the result may be that agents can update their internal status or take further action.

It is a third way of doing science in addition to inductive and deductive processes. It is a method to implement causal processes and mechanisms in a model not only to determine the implications of the theory (strengths, inconsistencies, shortcomings) but also to provide a basis for obtaining causal explanations of modelled phenomena.

Challenges for this model are numerous and include taking advantage of the diversity of disciplines that are being addressed and/or developing in this area, improving the treatment of uncertainty analysis and developing methodologies that can answer increasingly specific questions and solve problems.

The desire to shape the phenomena around us in a way that is more faithful to the real world by producing results that are more or less a one-to-one correspondence with the real world goes hand in hand with the desire to advance science and test or develop new theories.


Chaudhry, Q. A. (2016). An introduction to agent-based modelling, modeling natural, social, and engineered complex systems with NetLogo: a review. 

Macal, C. M. (2016). Everything you need to know about agent-based modelling and simulation, Journal of Simulation, 10:2, 144-156, DOI: 10.1057/jos.2016.7. 

Macal, C. M., & North, M. J. (2010). Tutorial on agent-based modelling and simulation. J Simul; 4: 151–62. Railsback, S. F., & Grimm, V. (2019). Agent-based and individual-based modeling: a practical introduction. Princeton university press. Wilensky, U., & Rand, W. (2015). An Introduction to Agent-Based Modeling, Modeling Natural, Social, and Engineered Complex Systems with NetLogo. Cambridge, Massachusetts.