Algorithms - Metropolis/Hastings Markov Chain Monte Carlo (MCMC)
The OSTRICH Metropolis/Hastings MCMC uncertainty algorithm
This algorithm seeks to identify parameter probability distributions using a Bayesian Markov Chain Monte Carlo (MCMC) sampler. It is based on the Metropolis-Hastings algorithm described by Kuczera and Parent (1998). The sampler seeks to evolve an initial set of truncated uniform distributions into the correct posterior probability distribution for each parameter. The following optional group will configure the Metropolis-Hastings MCMC algorithm and will be processed if [ProgramType] is set to “MetropolisSampler”.
|
|
---|
Figure 1: General Format (left) and Example (right) of the MCMC Group
Where BeginMetropolisSampler and EndMetropolisSampler are parsing tags that wrap a set of algorithm configuration variables. These variables are described below:
- SamplesPerIter: This variable controls the frequency of output within the OSTRICH run record. The current best solution will be reported after every SamplesPerIter model evaluations. The current number of accepted solutions will also be reported. Samples that are accepted after the burn-in period is complete are understood to come from a posterior distribution. The default value is 10.
- NumDesired: The desired number of post burn-in samples (i.e. the number of samples that are desired from the posterior parameter distributions). The default value is 10.
- BurnInSamples: The number of accepted samples that should be discarded before assuming accepted samples are representative of a posterior distribution. The default value is 0 (i.e. no burn-in).
- MaxSamples: The maximum number of model evaluations that will be performed as part of the MCMC search. The default value is 100.
- LikelihoodType: Use this variable to select alternative formulations for computing the likelihood ratio. Two options are available, namely “Beven” and “Stedinger”. The Beven likelihood type is a pseudo-likelihood described by Beven and Binley (1992). The “Stedinger” likelihood type is a formal likelihood function described by Stedinger et al. (2008). If “Beven” is selected, the ShapingFactor (see below) will also be processed. The default setting is Stedinger.
- ShapingFactor: This variable is a correction exponent for the Beven pseudo-likelihood function. As described by Stedinger et al. (2008), adjusting the ShapingFactor can help remove bias when using the “Beven” approach to computing likelihood ratios. The default value is 0.5, corresponding to a root-mean-squared-error type of likelihood function.
- TelescopeRate: This variable is the fraction by which to constrict parameter bounds after each iteration. It can increase the acceptance rate by focusing the sampler on high-probability regions of the parameter space. The default value is 0 (i.e. no telescoping).
References
Hastings, W. K. 1970. Monte Carlo sampling methods using Markov chains and their applications. Biometrika 57, 97-109.
Kuczera, G.,Parent, E. 1998. Monte Carlo assessment of parameter uncertainty in conceptual catchment models: the Metropolis algorithm. Journal of Hydrology 211, 69-85.