I think the issue pertains to the fact that you are starting all your sampling runs from the same starting point - checking lack of convergence on the basis of the rhat statistic later doesn’t make sense if all the chains started from the same starting point. In addition, you are sampling just 50 samples - likely those 50 samples end up being very similar in all your chains. Usually, it is not advisable to start sampling at the MAP (especially in high dimensions) - it seems like the recommendation is to random starts and run several chains and check lack of convergence with the rhat (which pymc3 automatically does).