Skip to content

Review: IQ-TREE 2: New Models and Methods for Phylogenetic Inference in the Genomic Era

Citation

  • Minh, B. Q., Schmidt, H. A., Chernomor, O., Schrempf, D., Woodhams, M. D., von Haeseler, A., & Lanfear, R. (2020). IQ-TREE 2: new models and methods for phylogenetic inference in the genomic era. Molecular Biology and Evolution, 37(5), 1530–1534.
  • DOI
  • PubMed

Abstract

IQ-TREE 2 is a fast and effective phylogenetic software package implementing a wide array of evolutionary models and a stochastic search algorithm. New features include mixture models, a concordance factor analysis, and a new ultrafast bootstrap approximation. The package integrates ModelFinder for automatic model selection and AliSim for sequence simulation. IQ-TREE 2 is freely available under an open-source license.


IQ-TREE 2 is the most widely used maximum-likelihood phylogenetic inference program. It combines a fast stochastic hill-climbing search (NNI moves with perturbation) with the ultrafast bootstrap approximation (UFBoot), automatic model selection via ModelFinder, and a comprehensive library of substitution models covering DNA, protein, codon, and morphological data.

The stochastic tree search uses a combination of Nearest-Neighbor Interchange (NNI), Subtree Pruning and Regrafting (SPR), and random perturbation to escape local optima. Hifuku adopts the same topology moves (NNI and SPR in src/hifuku/moves.py and their device versions in chain_tree.py) and follows IQ-TREE 2's zero-length-branch Newick convention for polytomies (tree_io.py). The key difference in aim is that IQ-TREE 2 maximizes the likelihood as a deterministic search, while Hifuku surveys the likelihood landscape with an elite-archive (MAP-Elites) survey, mapping the log-likelihood across the chart rather than returning a point estimate.

The demonstration notebooks and the test-data generator (scripts/generate_test_dataset.py) distributed with Hifuku use AliSim, the sequence simulator bundled in IQ-TREE 2, to build small synthetic datasets. This is a testing convenience that a user may run or adapt to their own questions.