The '''Metropolis-Hastings Markov Chain Monte Carlo Sampling''' [[algorithm]] can draw samples from any [[probability distribution]]
This algorithm can draw samples from any [[probability distribution]] ''P(x)'', requiring only that the density can be calculated at ''x''. The algorithm generates a set of states x<sup>t</sup> which is a [[Markov chain]] because each state x<sup>t</sup> depends only on the previous state x<sup>t-1</sup>. The algorithm depends on the creation of a ''proposal density'' Q(x<sup>t</sup>;x') which depends on the current state x<sup>t</sup> and which can generate a new proposed sample x'. For example, the proposal density could be a [[Gaussian function]] centred on the current state x<sup>t</sup>
:<math>
Line 29 ⟶ 30:
</math>
The Markov chain is started from a random initial value x<sup>0</sup> and the algorithm is run for a few thousand iterations so that this initial state is "forgotten". These samples, which are discarded, are known as <em>burn-in</em>. The algorithm works best if the proposal density matches the shape of the target distribution P(x), but in most cases this is unknown. If a Gaussian proposal is used the variance parameter σ<sup>2</sup> has to be tuned during the burn-in period. This is usually done by calculating the <em>''acceptance rate</em>'', which is the fraction of proposed samples that is accepted in a window of the last N samples. This is usually set to be around 60%. If the proposal steps are too small the chain will <em>''mix slowly</em>'' i.e. it will move around the space slowly and converge slowly to P(x). If the proposal steps are too large the acceptance rate will be very low because the proposals are likely to land in regions of much lower probability density so a<sub>1</sub> will be very small.