lmaurits / BEASTling

A linguistics-focussed command line tool for generating BEAST XML files.
BSD 2-Clause "Simplified" License
20 stars 6 forks source link

Use the rootHeight input on RandomTree #163

Closed lmaurits closed 7 years ago

lmaurits commented 7 years ago

The RandomTree tree initialiser has a rootHeight input I never noticed before, which lets you specify the root height of the starting tree (if it is compatible with constraints). I have had analyses start of with absurdly high root heights before and it can take surprisingly long to bring them down, I guess because lots of parameters have to move in concert. We should come up with some very rough rule of thumb to estimate a sensible root height (i.e. plus or minus an order of magnitude or two) based on calibrations and start off there.

lmaurits commented 7 years ago

Done, and not even that hackishly! I used language counts and the midpoints of calibrations with finite endpoints to make multiple estimates of the Yule birthrates, found the mean birth rate estimate and the corresponding expected tree height, and used these as initial values. Tested it on 3 real analyses and got quite decent estimates.

That was fun!

Anaphory commented 7 years ago

That sounds really awesome!

lmaurits commented 7 years ago

I am hoping that at some point we can include a lot of this kind of intelligent initialisation stuff in BEASTling, especially with regard to trees.