Structured population inference for BEAST 2


MultiTypeTree is a BEAST 2 package for performing phylogenetic inference under models incorporating some form of population structure. It implements a "multi-type" tree object, representing a phylogenetic tree with every time on each edge associated with one of a finite number of discrete types. These types often represent locations, but can in principle represent any well-defined sub-population.

In addition to the basic object, MultiTypeTree implements a full suite of proposal operators for these objects, as well as the structured coalescent probability density and a structured coalescent simulator. Together, these components allow for inference of trees, migration rates and population sizes under the structured coalescent model. However, we stress that the system can (and will) be easily extended to cope with other structured-population genealogical models.


To get the MultiTypeTree package running on your computer, follow these steps:

  1. Download and install the latest version of BEAST 2 from if you haven't done so already.
  2. Run the BEAUti program that comes with BEAST and select "Manage Packages" from the "File" menu.
  3. Select "MultiTypeTree" from the list and press the "Install/Upgrade" button.
  4. Press the "?" button (lower right-hand corner) and take note of the directory reported here - this is where the package is installed on your disk and is where the script mentioned in the next section is located.

Congratulations! MultiTypeTree is now installed. You will now be able to run MultiTypeTree analyses in BEAST.

Using MultiTypeTree

New users, particularly those who have not used BEAST before, should work through the Beginner's Tutorial, which describes how to conduct a full structured coalescent analysis using the BEAUti interface to MultiTypeTree - right through to analyzing the results using Tracer and FigTree. Additional tutorials and documentation may be found on the project wiki.

Alternatively, users experienced in constructing BEAST 2 XML files may wish to take a look at the hand-coded XML file structuredCoalescent.xml provided in the examples/ folder of the package. By modifying this file directly (or modifying the XML output of BEAUti) it is possible to configure more sophisticated analyses than can be specified using BEAUti.

Note: BEAST 2 XML scripts written for versions of MultiTypeTree earlier than 5.0.0 will not run without modification on version 5 or later. For details contact Tim Vaughan.

Citing MultiTypeTree

If you use this package as part of research that leads to a publication, we ask that you cite the following article:

T. G. Vaughan, D. K├╝hnert, A. Popinga, D. Welch and A. J. Drummond, "Efficient Bayesian inference under the structured coalescent", Bioinformatics 30(16):2272, 2014 (link)


Work on this project is made possible by generous funding from the
Allan Wilson Centre for Molecular Ecology and Evolution.