Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Help Wanted] strange behavior with chains stuck in a non-optimal region of the tree topology space #431

Open
igoryanovich opened this issue Feb 29, 2024 · 2 comments

Comments

@igoryanovich
Copy link

Describe the desired behavior.
I've tried to replicate a MrBayes analysis from doi:10.1163/22105832-bja10022 in RevBayes. The MB .nex file from the original paper is attached, as is my .rev recasting.

What is going wrong?
MB very quickly finds the optimal-likelihood segment of the tree topology space. RB behaves strangely: after the short burnin, each chain remains in the same likelihood region, see Tracer_RB_runs.png below.

RWTY comparison with MB chains shows that the best RB chains move in the same region as the MB chains, but the RB chains stuck at a lower likelihood. See rb_vs_mb.pdf attached.

Anything else you've tried?
I made sure to use a lot of SPR moves per generation; switched from simple MCMC to MC^3, trying deltaHeat=0.1 and 0.2, which did not help to get RB unstuck; with deltaHeat=0.5, hardly any changes between the chains were achieved (although I have not investigated that setting for a long time).

In MB, more tree moves are implemented than in RB (unless I'm missing something): in addition to NNI and SPR (they use "extended SPR" - I'm not sure if the regular SPR is meant, or something slightly different), MB also uses TBR and parsimony-biased SPR. I've tried to switch those moves off. The switching off of ParsSPR changes MB's behavior noticeably, see mb_all_variants.pdf below, compare the first four plots from chains w/o ParsSPR and the other four, with ParsSPR moves. However, this is not the only reason MB and RB are different, because even without ParsSPR, MrBayes finds the highest-likelihood segment which RB chains miss, cf. rb_vs_mb.pdf.

Screenshots
Tracer_RB_runs
mb_all_variants.pdf
rb_vs_mb.pdf

Computer info
I tried this both on the Vienna VSC, and on my MacOS Laptop.

VSC:
RevBayes version (1.1.1)
Build from () on Tue Mar 28 19:44:44 CEST 2023

laptop:
RevBayes version (1.2.1)
Build from tags/v1.2.1 (04666d) on Mon Nov 7 15:45:19 UTC 2022

Additional context
Attaching analysis files - delete the added extension .txt

Original MB analysis file by Gunnink et al.: BantuMBgammaNY.nex.txt

My modification switching off ParsSPR and TBR moves: BantuMBgammaNY_wo_pSPR_TBR.nex.txt

My RevBayes recoding: SBa_MC3_for_issue.rev.txt

The Nexus file with the data - identical to the data part of the analysis file from Gunnink et al. SBantu-GunninkEtAl2023.nex.txt

@igoryanovich
Copy link
Author

Something looks definitely wrong here: attaching the likelihood trace for four rather long parallel chains
four_longer_chains

(Before the chains start, there was a short burnin period, via mc3 burnin function.)

@davidcerny
Copy link
Contributor

Perhaps @jsigao might know more?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants