Simulation Introduction


stocks, procedures, parameters and flows

The simple description above is based on stocks and procedures.  Stocks are a more precise term for the “amount now” and procedure refers to the “rules for change”.  Parameters are mentioned in the video, and sometimes the actual flow of materials from one kind of stock to another is important.  (In the rabbit example we could have tracked biomass and energy transfer from carrots to rabbits rather than the quantity of each)

S.Kneebone in Ison, Systems Practice

projection, not prediction

We use simulation models to project the consequences of relationships we can specify.  This is never really a prediction because some of the relevant relationships are based on alternatives that we might or might not do (management activities), others are based on changing outside influences. 

Further, the model is based only on those elements and influences that we have articulated; there is always something else.   

That does not mean the model is useless, it does help us understand the consequences of what we have included; and if we have formulated the model well, we can use it for adaptive management, tuning both what we do and how we understand the system as we proceed.

what will the future be?

People have always wanted to know what the future holds.  Not all prediction is vain, we do see patterns, we do detect influences that are likely to have particular ... or sometimes general... consequences.  If we could not make good judgements concerning the consequences of our actions, we would not be able to plan let alone act in an ethical manner.

However, prediction of how a complex system will behave very far into the future is practically impossible.  Even the weatherman isn’t always right, and the long term forecast is never thought to be accurate. 

Nonetheless, weather forecasting is useful. 
Have you thought about how the forecasts are made?

Predictions are usually based on empirical relationships rather than causal ones.  A simple example is the assumption that the number of rabbits depends on the number of carrots.  We could assume this because we have lots of data to indicate that in Farmer Brown’s field the number of rabbits are correlated with the number of carrots (compared to corn) that he has grown that year.  According to this assumption one should be able to predict the number of rabbits in any year according to how many carrots are planted.  Clearly this is successful often enough that empirical models are often used to generate predictions.

simulation based on rules for change

Simulation models do use empirical relationships to derive rules for change.  But the big difference is that what happens in one year influences what happens the next year.  Lets say Farmer Brown planted only corn for several years in row, then switched to carrots. Lets also assume his neighbours did the same.  Would planting carrots now result in a high rabbit population?  Of course not; the rabbits have to come from somewhere, their population takes a while to grow (even though they are notoriously fecund). Simulation models are founded on the simple premise that we can formulate general rules that define what will happen in a short time interval as long as we know what the value or amount is now.  

The rules for change specify the form of the relationship between one variable and the next and thus replace the arrows in the various model diagrams, such as in impact hypotheses.

What a simulation model does is apply the same rules over and over again, taking the result from one time and using it as the input for the next time. Consequently the model makes a series of calculations for as many time intervals as the model is asked to calculate.


The long series of calculations is in practice shown as a cycle; namely the output of the first calculation is cycled back to become the input for the next calculation of the rule for change.  This is called an iteration; which simply means that the same rule is applied consecutively over and over again. 

If the rule is really simple, for example as in compound interest
(add x% of your savings to your savings for n years) then a formula can be developed that will calculate the result for however many intervals one wishes. 

However most systems of interest to managers are too complex to do this with. Even age structured population dynamics, which are based on a simple formula, are best projected through simulation, rather than with an analytic formula.  And the more influences you add, for example different dynamics for males and females, density dependent effects on health, or social structures that influence reproduction, the more necessary it becomes to consider all influences as they consecutively affect the population one year at a time. \


graphing the result

One could just run a simulation model to see what the consequence is after all the time intervals have been completed.  However, in order to understand what happens, we usually want to know what the intermediate values were, so we add a function to the model that graphs the values for each interval. 

download pdf for more on
articulating a modelsimulation_intro_files/Articulating%20a%20Model.pdf