In implementing the MCMC (Markov Chain Monte Carlo) sampling algorithm, the goal is generating an independent identically distributed (i.i.d.) sample \( \htmlClass{sdt-0000000046}{\mathbf{x}}_1 \), \( \htmlClass{sdt-0000000046}{\mathbf{x}}_2 \), ... , \( \htmlClass{sdt-0000000046}{\mathbf{x}}_n \) from some given probabilistic landscape. If some \( \htmlClass{sdt-0000000135}{P_{\text{accept}}} \) is equivalent or proportional to the target distribution, it can be used in the acceptance function formulation. Note that the normalization constant can be ignored as it cancels out.
\( \mathbf{x}^* \) | This symbol represents a random proposal for the next state in the sampling sequence. |
\( X \) | This symbol describes the Z-Transform, a mathematical tool used in digital signal processing and control systems to analyze discrete-time signals. |
\( \mathbf{x} \) | This symbol represents a state of the dynamical system at some time point. |
\( P_{\text{accept}} \) | This symbol represents the probability of accepting a proposal for the next state. |
For simpler representation, let the ratio:
\[ r = \frac{\htmlClass{sdt-0000000133}{F}(\htmlClass{sdt-0000000081}{\mathbf{x}^*})}{\htmlClass{sdt-0000000133}{F}(\htmlClass{sdt-0000000046}{\mathbf{x}}_n)} \]
This allows us to write the acceptance probability in terms of \( r \) as follows:
\[ \htmlClass{sdt-0000000131}{X}acceptanceProbability(\htmlClass{sdt-0000000081}{\mathbf{x}^*} \,\vert\; \htmlClass{sdt-0000000046}{\mathbf{x}}_n) = \frac{ r }{ r + 1 } \]
Assume we would like to sample from the Boltzmann distribution:
\[p(\htmlClass{sdt-0000000091}{\mathbf{s}}) = \frac{1}{\htmlClass{sdt-0000000077}{Z}} \exp\left\{ - \frac{ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000091}{\mathbf{s}}) }{ \htmlClass{sdt-0000000029}{T} } \right\}\]
We can assign the measure function to the (normalized or not) probability value:
\[ \htmlClass{sdt-0000000131}{X}measureFunction(\htmlClass{sdt-0000000046}{\mathbf{x}}) = \exp\left\{ - \frac{ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000046}{\mathbf{x}}) }{ \htmlClass{sdt-0000000029}{T} } \right\} \]
This gives a value for the ratio \( r \):
\[ \begin{align*} r &= \frac{\htmlClass{sdt-0000000131}{X}measureFunction(\htmlClass{sdt-0000000081}{\mathbf{x}^*})}{\htmlClass{sdt-0000000131}{X}measureFunction(\htmlClass{sdt-0000000046}{\mathbf{x}}_n)} = \frac{ \exp\left\{ - \frac{ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000081}{\mathbf{x}^*}) }{ \htmlClass{sdt-0000000029}{T} } \right\} }{ \exp\left\{ - \frac{ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000046}{\mathbf{x}}_n) }{ \htmlClass{sdt-0000000029}{T} } \right\} } \\ &= \exp\left\{ - \frac{1}{\htmlClass{sdt-0000000029}{T}} \left[ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000081}{\mathbf{x}^*}) - \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000046}{\mathbf{x}}_n) \right] \right\} \\ &= \exp\left\{ \frac{1}{\htmlClass{sdt-0000000029}{T}} \left[ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000046}{\mathbf{x}}_n) - \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000081}{\mathbf{x}^*}) \right] \right\} \\ r &= \exp\left\{ \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000046}{\mathbf{x}}_n) - \htmlClass{sdt-0000000100}{E}(\htmlClass{sdt-0000000081}{\mathbf{x}^*}) \right\}^{ \frac{ 1 }{ \htmlClass{sdt-0000000029}{T} }} \end{align*} \]
The Boltzmann acceptance probability for \( \htmlClass{sdt-0000000081}{\mathbf{x}^*} \) can now be easily computed, knowing the energy of the two states and the temperature of the system.