If we consider simulation modeling for business applications, we will find three major methodologies of model development:
While the first two were suggested in 1950s and 1960s, agent based modeling has been adopted by simulation practitioners after year 2000, but since then has accumulated a good number of success stories. Both system dynamics and discrete event modeling employ system-level (top-down) view on things while agent based approach is a bottom-up one: here the modeler focuses on behavior of the individual objects.
The system dynamics method assumes high abstraction level and is primarily used for strategic level problems. Process-centric ("DE") modeling is mainly used on operational and tactical levels. Agent based models are used at all levels: agents can be competing companies, consumers, projects, ideas, or vehicles, pedestrians, robots, etc.
How do I benefit from access to different modeling methods?
Modeling is based on abstraction, simplification, quantification, and analysis. But why let your tools dictate these first two steps?
It may be possible to model the actions of autonomous agents via System Dynamics but why introduce this additional abstraction and attendant assumptions if Agent Based tools are available?
Conversely, why use Discrete methods to model continuous variables when SD methods are at hand?
And if the environment you are modeling is complex enough why deliberate on which set of abstractions are closest to reality when one tool can provide them all?
AnyLogic is extremely flexible simulation software and provides you with various ways to develop your model.
- If there is individual data use the agent-based approach.
- If there is only information about global dependencies then use system dynamics.
- If system can be easily described as a process we would suggest the discrete-event approach.
- And if the system is complex enough it probably includes all those aspects and you should consider combining methods.
With AnyLogic you are never limited by a particular simulation method, you can always choose the most efficient one, or combination, to address the problem.
How can we improve this article?