System dynamics is a highly abstract method of modeling. It ignores the fine details of a system, such as the individual properties of people, products, or events, and produces a general representation of a complex system. These abstract models may be used for long-term, strategic modeling and simulation. For example, a telephone network planning a marketing campaign may simulate and analyze the success of new data plan ideas without having to model individual customer interactions.
Causal diagrams to describe global system behavior
Complex relationships are found across all areas of business, study, and effort. Understanding these with system dynamics has proven very effective. The effect of change can be understood, and possibilities quantitively tested and analyzed.
In business, there are a lot of dependencies, for instance, employee morale affecting productivity, or the effect of advertising on brand perception. There is cause and effect, and often there is a time delay which is only visible after long observation. This is where computer models give an advantage.
Feedback loops — a basic concept of system dynamics
Dependencies, such as advertising and brand perception, are often represented as loops called feedback loops. For instance, the more money you invest in marketing, the bigger revenues you have, and so, the more money you can spend on marketing. The feedback loop is a basic concept of system dynamics.
Describing feedback loops and modeling the real-world in system dynamics is done using stocks (e.g. material, knowledge, people, money), flows between stocks, and information to determine the flows. System dynamics does not consider single events and takes an aggregate view, focusing on policies.
When modeling with system dynamics:
Models with aggregates, and not individual objects.
Use global dependencies and provide quantitative data for them.
Dependencies are non-linear in the real world and need to be modeled with software more powerful than spreadsheets. Mathematically, a system dynamics model maps to a system of differential equations that are solved numerically in a simulation engine.
System dynamics modeling in AnyLogic
AnyLogic supports the design and simulation of feedback structures such as, stock and flow diagrams, array variables (subscripts) in a way most system dynamics modelers are familiar.
System dynamics is supported by several tools that are very much alike. Why AnyLogic?
AnyLogic inherently offers all the benefits of the object-oriented approach to system dynamics modeling. Complex models can be defined in a hierarchical manner with objects only exposing interface variables as inputs and outputs.
Moreover, a frequently met system dynamics pattern may be saved as a library object and reused within one model or across different models.
AnyLogic users also benefit from advantages such as model export, cloud model execution, sophisticated animation, and interoperability with other software tools.
Combining system dynamics with agent based and discrete event methods
AnyLogic is the only tool that allows the combination of system dynamics model components with those developed using agent based and discrete event methods. This can be done in a number of different ways. For example, the consumer market can be modeled using system dynamics and the supply chain with the agent based approach. Combining them so the consumer market drives the supply chain.
In another example, the population of a city may be modeled as individual agents, and the underlying economic or background infrastructure in system dynamics.
Interfaces and feedbacks between system dynamics, agent based, and discrete event models are very easy in AnyLogic.