### 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. A mathematical model is such a model described using mathematics.

Thus, a model has a purpose, and mathematics is merely the language which 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, discovering laws or patterns, and maybe making 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 model 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 determined using probabilities from the old state.

In all three domains the differing models 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

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 which 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. It deals with average behaviour rather than the individual objects themselves. It also models soft variables, ones which are hard to quantify.

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 Modelling

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. It 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.