NBISweden / MrBayes

MrBayes is a program for Bayesian inference and model choice across a wide range of phylogenetic and evolutionary models. For documentation and downloading the program, please see the home page:
http://NBISweden.github.io/MrBayes/
GNU General Public License v3.0
233 stars 79 forks source link

Question: Log likelihood gets stuck #161

Open yhoshino07 opened 4 years ago

yhoshino07 commented 4 years ago

Hi. I'm running MrBayes on macOS Mojave (ver. 10.14.6). Although the software looks working, the likelihood gets fixed at a specific value after a certain generations (printed screen attached). It depends on submitted data when the likelihood gets frozen, but the same problem occurs without exception. The result is also strange. The posterior probability is almost always only either 1 or 0.5. Something is not going well and I would like your advice. Thank you.

MrBayes
nylander commented 4 years ago

Dear @yhoshino07

Indeed, the MCMCMC get stuck on one chain with the same log likelihood value. This is not desirable. We would, however, be helped with some example data with the exact commands used in order to start addressing this issue. Thanks Johan

KWollenbergPhylo commented 4 years ago

Hello

I have been noticing the same behavior on our installations of MrBayes 3.2.7a x86_64 on our HPC systems. Both of these are Linux-based systems. I have reverted to MrBayes 3.2.5 which seems to be working correctly. Attached is one of the MrBayes screen output files for the v3.2.7a run that got stuck. Rom200qc_MrBayes1M_MrBout.txt

Hopefully this will help. Running the same data through MrBayes v3.2.5 processes as expected, with good chain mixing.

Cheers, Kurt

willdumm commented 1 year ago

I've noticed the same behavior using MrBayes 3.2.7a with Beagle on a bunch of simulated datasets. Maximum parsimony trees on these data are highly multifurcating, so we would expect a very diffuse posterior on bifurcating tree-space, but we end up with chains that get stuck sampling the same tree after around 30 minutes, but the MrBayes run terminates without any errors.

The output looks essentially the same as in the original post, and we can see that no moves are being accepted (with the exception of at the very beginning of the run). image (12)

When using MrBayes 3.2.7a without Beagle and MPI, we see the expected behavior, with a very diffuse posterior.

For two builds that do not work properly, here's the output from mb -v:

Version:   3.2.7
Features:  SSE AVX FMA Beagle readline
Host type: x86_64-conda-linux-gnu (CPU: x86_64)
Compiler:  gnu 12.2.0

and

Version:   3.2.7a
Features:  SSE AVX FMA Beagle MPI
Host type: x86_64-pc-linux-gnu (CPU: x86_64)
Compiler:  gnu 11.2.0

For the build that does work, here's the output:

Version:   3.2.7a
Features:  SSE AVX FMA
Host type: x86_64-unknown-linux-gnu (CPU: x86_64)
Compiler:  gnu 7.5.0

The .mb and .nex files for reproducing the issue are attached (with extensions .txt added so GitHub allows the uploads) ctree_with_refseq.nex.txt test.mb.txt

nylander commented 1 year ago

Dear @willdumm Thank you for the detailed report. It would be informative to hear from you what you see when running an MPI-version without beagle. Do you have the time to add such an example? Thank you so much /Johan

willdumm commented 1 year ago

@nylander I built MrBayes on both the develop and master branch, with mpi but without Beagle, and they both work as expected on the test data

$ mb -v
MrBayes, Bayesian Analysis of Phylogeny

Version:   3.2.7a
Features:  SSE AVX FMA MPI
Host type: x86_64-unknown-linux-gnu (CPU: x86_64)
Compiler:  gnu 8.3.0

So, it does seem that Beagle is the likely culprit.

Please let me know if there's anything else I can do to help!

nylander commented 1 year ago

Thank you @willdumm !