I am doing Bayesian analysis using a Monte Carlo Markov Chain of length 10000 and burn-in length 1000. I consider my chain as converged when the acceptance rate is equal to 23% and the chain mixing looks convincing (visual inspection). There is a difference in acceptance rate value when I consider the whole chain for acceptance rate calculation and when I consider the chain after burn-in. Which acceptance rate value should I try to make 23?


1 Answer 1


As indicated by the name, burn-in is there to stabilise the chain towards its stationary regime, so the burn-in step should not be considered for performance evaluations like acceptance rate goals.

However I want to warn you about the notion that 10⁴ simulations is large or poor in a generic sense. It will all depend on the type of target $f$ and the type of proposal $q$ you use in your algorithm. Even an acceptance rate of $23$\% may be misleading.

For instance, assume you observe $x\sim\mathcal{N}(\theta^2,1/5)$ with a prior $\theta\sim\mathcal{N}(0,1)$. The posterior on $\theta$ is bimodal with modes near $\pm\sqrt{x}$, but running the basic Metropolis-Hastings code below


for (t in 2:T){
  if (log(runif(1))>target(pop,y)-target(mch[t-1],y)) mch[t]=mch[t-1]

produces an acceptance rate of

> ace/T
[1] 0.22921

and an output with a single mode

enter image description here

In case you cannot reproduce the output with the above R code, here is the trace of a thinned MCMC based on 10⁵ iterations (with no burn-in)

enter image description here

  • $\begingroup$ Then how do I know whether my chain has converged or not? Also can you include the chain trace plot , is it showing a good mixing? $\endgroup$
    – Safwan
    Mar 18, 2016 at 8:05
  • $\begingroup$ Rule #1 You can never tell for sure your chain has converged, unless you know precisely the target! $\endgroup$
    – Xi'an
    Mar 18, 2016 at 9:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.