setting initial value for calibration in beast2

86 views
Skip to first unread message

Michael Branstetter

unread,
Mar 11, 2018, 12:54:39 PM3/11/18
to beast-users
Dear All,

In a standard divergence dating analysis using BEAST2, is it possible to set initial values for node calibrations? This was easy to do using BEAUTi1, but I can't figure out how to do it using BEAUTi2. The reason I want to use initial values is that runs are failing likely due to the combination of using a constraint tree and node calibrations with hard bounds (e.g. offset lognormal distributions). The nodes get -infinity probs at initialization causing the runs to fail. Using BEAST1 I could solve this problem by providing an initial value within the bounds of the calibration. Using BEAST2, I can't seem to do this. Is there a way to add initial values using BEAUti2 or by modifying the xml file?

Thanks,
Michael

Remco Bouckaert

unread,
Mar 11, 2018, 2:49:57 PM3/11/18
to beast...@googlegroups.com
Hi Michael,

The default initialisation is using a RandomTree, which as you observed does not always manage to deal with multiple calibrations.

If you install the BEASTLabs packages and in the XML replace RandomTree with SimpleRandomTree a different method is used to initialise the tree which is more robust to multiple calibrations.

The alternative is to provide a tree that conforms to all calibrations in Newick format: in BEAUti, select the menu View/Show Starting tree Panel, and in the Starting tree tab select “Newick Tree” and paste the Newick tree in the Newick field.

Cheers,

Remco


--
You received this message because you are subscribed to the Google Groups "beast-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beast-users...@googlegroups.com.
To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.
For more options, visit https://groups.google.com/d/optout.

Michael Branstetter

unread,
Mar 11, 2018, 4:18:27 PM3/11/18
to beast-users
Hi Remco,

Thanks a lot. What do you recommend is the easiest way to create a tree with branch lengths that conform to the calibration specifications?

Thanks,
Michael

Remco Bouckaert

unread,
Mar 14, 2018, 3:40:41 PM3/14/18
to beast...@googlegroups.com
Hi Michael,

Did the SimpleRandomTree work for your XML? I forgot about SimpleRandomTree not needing a population model, so where the XML says

    <init id="RandomTree.t:dna" spec="beast.evolution.tree.RandomTree" estimate="false" initial="@Tree.t:dna" taxa="@dna">
        <populationModel id="ConstantPopulation0.t:dna" spec="ConstantPopulation">
            <parameter id="randomPopSize.t:dna" name="popSize">1.0</parameter>
        </populationModel>
    </init>

replacing it with

    <init id="RandomTree.t:dna" spec="beast.evolution.tree.SimpleRandomTree" estimate="false" initial="@Tree.t:dna" taxa="@dna">
    </init>

that is replacing spec=“beast.evolution.tree.RandomTree” with spec=“beast.evolution.tree.SimpleRandomTree" and removing the population model. It is probably the easiest, way to get a valid starting tree.

Alternatively, you could search for a tree editor program. I have no experience with them, so don’t know which one is best.

Cheers,

Remco
Reply all
Reply to author
Forward
0 new messages