-
Notifications
You must be signed in to change notification settings - Fork 11
Program Methodology
The pymcmcstat package contains programs useful for running Markov Chain Monte Carlo (MCMC) simulations; however, it must be noted that the pymcmcstat package makes specific assumptions regarding the statistical model being evaluated. In general, it assumed that the statistical model has the form
where ,
, and
are random variables representing measurements, measurement errors, and model parameters, respectively. The parameter-dependent model response is denoted by
. We assume that the modeling and measurement errors
are unbiased and independent and identically distributed (iid), i.e.,
.
We note that Bayes' Theorem for inverse problems can be expressed as
where we have assumed that the model parameters
have a known, but potentially noninformative, prior density
. Note,
and
are realizations of the model parameters (
) and observations (
), respectively. Bayes' Theorem yields the posterior density
of
, given the measurements
.
As a result of the assumptions made regarding observation errors, this leads to a very specific form of the likelihood function in Bayes' Theorem. In this case we find that the likelihood function is
where
is the sum-of-squares error. This is the only likelihood function currently available in the pymcmcstat package. In practice this is a reasonable assumption to make for many real world applications, which makes pymcmcstat still useful for a wide array of scientific and engineering problems. However, if a more customizable likelihood function is desired, user's are recommended to consider alternative MCMC packages such as PyMC3.
For more details regarding parameter estimation from a Bayesian perspective, please consider Chapter 8 of the following resource:
- Smith, R. C. (2014). Uncertainty Quantification: Theory, Implementation, and Applications (Vol. 12). SIAM.