Environmental Modelling at Nottingham

Home

Radionuclides

Heavy Metals

Ecosystem Processes

Modelling Methods & Software

Model Optimisation, Fitting, or Calibration

We define model optimisation as the process of adjusting the parameters of a model in order to minimise (or maximise) some quantity calculated by the model.

Model fitting or calibration (the terms seem to be used inter-changeably) is the special case where the quantity to be minimised is a quantity which measures the distance between predicted and observed values (e.g. residual sums of squares).

These definitions require a definition of the term 'parameter!'. We define parameters as constants whose value must be set before a model can be evaluated. They may be known values (e.g. the charge on the electron), physically meaningful values (e.g. soil hydraulic conductivity), or arbitrary values used empirically within a model (e.g. fudge factors!).

It is common for some model parameters to be estimated by fitting the model to observed data. This task can be difficult! We approach it in a number of ways.

Classical Model Fitting

Classical numerical optimisation methods can be applied to simulation models fairly easily. We have used methods such as Powell's conjugate vector method, Simplex and for model fitting Marquardt (lots of practice with this).

In the case of Marquardt 'slope' information is required and in the case of simulation models we typically obtained numerically (i.e. re-running the model to estimate the slope for a small finite difference in each parameter value).

If sensible starting estimates for parameters are available then we find Marquardt works well, and is not too numerically intensive. The well known drawback is that it is a deterministic method and therefore can be prone to getting lost in false minima, especially if good starting parameter estimates are not available.

All these methods are well described in the classic Numerical Recipes book.

Our MatLab implementation of Marquardt (developed by Tim Reid) is available [click here]

Stochastic Model Fitting

A range of stochastic methods have been developed to try and overcome the problem of local minima in optimisation surfaces. Most notably these are simulated annealing and genetic optimisation. They are numerically intensive (not always a limitation) and, in our experience, can work very well, once their setup is customised for the particular application (not always easy).

Lots of online information (e.g. simulated annealing; genetic algorithms)

Our local implementations are not currently available (not because they are secret; just because we haven't had a chance to make them presentable).

Bayesian Model Calibration (i.e. Monte Carlo Markov Chain)

This is quickly becoming a standard method for model fitting. As with the other stochastic methods it is numercally intensive but does, in our experience, generally find the global minimum even if provided with only rough initial parameter estimates (although of course this does depend on the application to some extent).

The method requires less customisation to a particular problem, than for example simulated annealing. Whats more it doesn't just find the best fitting parameter set, but rather their joint posterior distribution.

A good introduction in the context of environmental models is:

Bayesian calibration of process-based forest models: bridging the gap between models and data Van Oijen M, Rougier J, Smith R Source (2005) TREE PHYSIOLOGY 25: 915-927.