メトロポリス・ヘイスティングス法
採択率を使って、候補を採択するか棄却するかを決定する。 P {\displaystyle P} の確率密度関数は f {\displaystyle f} に比例しているため、 α = f ( x ∗ ) f ( x t ) = P ( x ∗ ) P ( x t ) {\displaystyle \alpha ={\frac {f(x^{*})}{f(x_{t})}}={\frac {P(x^{*})}{P(x_{t})}}} である。 α ≥ 1 {\displaystyle \alpha \geq 1} である場合、候補 x ∗ {\displaystyle x^{*}} は確実に採択され、次の状態は x t + 1 = x ∗ {\displaystyle x_{t+1}=x^{*}} となる。そうでなければ確率 α {\displaystyle \alpha } で候補を採択する。候補が棄却されれば次の状態も現在と変わらず x t + 1 = x t {\displaystyle x_{t+1}=x_{t}} とする。
この反復計算により、乱数はある状態にとどまったり、動いたりを繰り返し、ランダムに状態空間を動きまわる。採択率は、現在の状態と次の状態の候補の確率密度関数を比べることで、生成された候補がどれだけ採択されうるかを表す。現在の状態よりも次の候補の確率密度関数が高ければ、必ず次の状態を採択する。しかし次の候補の確率密度関数が高くない場合、ある確率で移動せずに候補を棄却する。このため、高い確率密度関数の領域からは多くの乱数を、また低い確率密度関数の領域は少ない乱数を生成することになる。