Agent-based modelling is a computational modeling paradigm and method that enables researchers to to describe how any agent will behave, hence create, analyse, and experiment with models composed of autonomous and heterogeneous agents that interact within an environment, in order to identify the mechanisms that bring about some macroscopic phenomenon of interest.
This technique can be used to model and describe a wide variety of processes, phenomena, and situations, but it is most useful when describing these phenomena as
complex systems.