### Basics

A model of any real-world object or situation is an attempt to describe that object or situation by certain key features of interest, whilst discarding those features which are not of interest. Mathematical models are models described using mathematics.

Thus, a model has a purpose, and mathematics is merely the language that enables the understanding and purpose to be expressed quantitatively and precisely. Purpose is essential for modelling.

There are different types of models depending on the extent to which they represent reality (fidelity), the depth and scope of applicability of the laws that support the model (theory), and the mathematical principles and methods used in the model construction (methodology). See more on types of models.

### Dynamical Models

A dynamical model is a mathematical model whose purpose is to explain behaviour over time, discover laws or patterns, and maybe make predictions. Dynamical models have a description of a state at a given point in time and the linking of states at different points in time. There are, therefore, three domains to be modelled:

1. A description of the state;
2. A model for the passage of time;
3. A procedure to describe how the state at one time is determined by the state at a previous time. This procedure is a model of cause and effect.

The three domains have a variety of models:

1. The state may be composed of continuous variables, modelled by real numbers; discrete variables, modelled by integers; complex numbers; non-numeric quantities, functions, etc.
2. Time may be modelled by a real number, i.e. time is continuous; or an integer, time is discrete.
3. Cause and effect may be deterministic, the state is determined exactly by a prior state; or stochastic, the new state is determined using probabilities from the old state.

In all three domains, the different model types may be mixed together.

Two popular methodologies are system dynamics and agent-based. Both are computational and accessible.

See the introductory notes on system dynamics and sample models.

### System Dynamics Models

System dynamics is a modelling methodology that represents the cause and effect between different variables using formulae and diagrams. There are three types of variables: Stocks, also called levels or state variables, which accumulate; converters which change instantaneously with their cause, and flows. These are the rates of change that control the accumulation to stocks. Thus, stocks involve a memory of past values and capture the link between a stock’s present and future values. Also, there are connectors that represent the immediate cause and effect link between different converters and flows.

System dynamics is a macroscopic methodology dealing with aggregated groups of people and agents. For example, model variables quantify the number of agents of the same type, then describe how those numbers change over time. As such, no details are kept of an individual agent, just their numbers. For example, the number of people who belong to a church is an aggregate variable. The names of the people who belong to the church are not relevant.

The methodology also handles the average properties of agents even though those properties are hard to quantify. Such variables are called “soft variables”. The reputation of a church is an example of a soft variable. It is a property of a church, a group of people, rather than any individual in the church. Although not easy to measure, it is well-understood conceptually and important for model building.

The methodology is applied across a range of social, human, economic, biological and physical behaviour. Models may be analysed with computer simulation, analytical tools and mathematical methods. For more information, see the System Dynamics Society website.

### Agent-Based Models

Agent-based modelling deals with the behaviour of individual agents and their interaction with themselves, each other, and the wider environment. It is a microscopic methodology and can show how macroscopic properties can emerge from groups of interacting agents. This methodology is ideal when the behaviour of individuals is well understood, whereas the laws for aggregated collections of individuals are less clear.

Agent-based models can be analysed using mathematics, but it is also common to use computer simulation. One such software package is NetLogo.

See the introductory notes to NetLogo and some sample models.