top of page

Evolutionary Genetics Resources: Simulation, Population Genetics, and Phylogenetic Software

This is not an exhaustive list in no capacity.  I created it as a reference for my lab as a good starting point.  I wanted to thank Peter Beerli for sharing links to some of relevant course material.

Seven categories of simulation uses in molecular ecology

(i) infer species’ history, (ii) infer species’ biology, (iii) predict probable species’ response to environmental change (often for policy purposes), (iv) predict outcomes of possible management interventions (for choosing appropriate actions), (v) evaluate method performance, (vi) evaluate/optimize sampling strategy, (vii) explore models of complex processes to discover new phenomena (e.g. emergent properties) or develop theory.

Simulation tools

Simulating Adaptation

  • PEDAGOG is a Windows program that simulates population dynamics at the individual level, allows for heritability and selection of traits, records individual genotype and pedigree information

  • quantiNEMO An individual-based program for the analysis of quantitative traits with explicit genetic architecture potentially under selection in a structured population

  • SLiM is a simulating evolution with selection and linkage


Simulating life history trait evolution

  • NEMO Individual-based, genetically explicit, and stochastic simulation software designed for the study of the evolution of life history traits and population genetics in a spatially explicit, metapopulation framework



  • FASTSIMCOAL2   A fast sequential Markov coalescent simulation of genomic data under complex evolutionary models

  • msprime Another fast sequential Markov coalescent simulation of genomic data under complex evolutionary models


Spatial Coalescence

  • SPLATCHE2 is a program to simulate the demography of populations and the resulting molecular diversity for a wide range of evolutionary scenarios

  • IBDSim is a package for the simulation of genotypic data under isolation by distance. It is based on a backward ‘generation by generation’ coalescent algorithm allowing the consideration of various isolation by distance models with discrete subpopulations as well as continuous populations

  • CDPOP is a spatially-explicit simulator of gene-flow in complex landscapes to explain observed population responses and provide a foundation for landscape genetics

  • BayeSSC (Bayesian Serial SimCoal) is a Bayesian modification of SIMCOAL 1

  • KERNELPOP This package creates a individual-based population genetic simulation. Individuals have spatial coordinates, dispersal governed by mixtures of Weibull and normal pdfs

  • BOTTLESIM is a computer simulation program for simulating the process of population bottlenecks

  • MS for generating samples/coalescent trees under a Wright-Fisher neutral model

  • ALADYN a spatially explicit, allelic model for simulating adaptive dynamics (LINK2)  ALADYN facilitates the investigation of adaptive processes to spatially and/or temporally changing conditions and the resulting niche and range dynamics. Allows a continuous resolution of individuals' locations in a spatially explicit landscape together with the associated patterns of selection

  • GINKGO a software package for agent-based, forward-time simulations of genealogies of multiple unlinked loci from diploid populations


Other Evolutionary Genetics Software


Swiss Army Knives

  • Geneious. A powerful and comprehensive suite of molecular biology and NGS analysis tools. Great, but expensive

  • Mesquite is modular, extendible software for evolutionary biology, designed to help biologists organize and analyze comparative data about organisms


  • Clustal is the classic multiple sequence alignment program 

  • Muscle is a newer multiple sequence alignment program

  • MAFT is the newest multiple sequence alignment program


Phasing Alleles

  • Phase a software for haplotype reconstruction, and recombination rate estimation from population data



  • Raxml is a popular program for phylogenetic analysis of large datasets under maximum-likelihood

  • PhyML an alternative algorithm to RAxML

  • ExaML for huge analyses

  • Garli is a classic program for phylogenetic analysis



  • MrBayes is the classic and  very versatile Bayesian inference system geared towards phylogenetic analysis.

  • RevBayes is a very versatile Bayesian inference system geared towards phylogenetic analysis. It has an R-like interface with its own language Rev.  Theory Tutorial Example Report

  • Sate program Sate estimates a phylogenetic tree and aligns sequences at the same time. Theory Tutorial Example Report

  • ExaBayes for huge Bayesian analysis

Species Tree & Chronograms

Tree Visualization

  • DensiTree  is a program for qualitative analysis of sets of trees

  • FigTree is designed as a graphical viewer of phylogenetic trees and as a program for producing publication-ready figures


Haplotype Networks

  • SPADS (for “Spatial and Population Analysis of DNA Sequences”) is a population genetics toolbox computing several summary statistics from populations or groups of populations, performing several input file conversions for other population genetics programs and implementing two clustering algorithms to study the genetic structure of populations

​Migration and Population Sizes (non-ABC methods)

  • LaMARC is a program which estimates population-genetic parameters such as population size, population growth rate, recombination rate, and migration rates

  • IM/IMa2  IM is a program for the fitting of an isolation model with migration to haplotype data drawn from two closely related species or populations. Theory Tutorial  Example Report

  • Migrate-n estimates population sizes, migration rates, and (in a very recent version) divergence times and among populations using sequence or microsatellite data. Theory Tutorial MBL-Tutorial Example Report


Genetic Distances

  • MEGA Sophisticated and user-friendly software suite for analyzing DNA and protein sequence data from species and populations


Standard Population Genetic Summary Statistics

  • Genepop: Genepop on the Web and Genepop Software This software calculates standard population genetic quantities, such as FST, isolation by distance measures etc.  Theory; Tutorial material: download GENEPOP_TUTORIAL.ZIP

  • Arlequin The goal of Arlequin is to provide the average user in population genetics with quite a large set of basic methods and statistical tests, in order to extract information on genetic and demographic features of a collection of population samples

  • Geneland The program Geneland (it is an R package an can be installed from any CRAN site - see instructions) Theory Tutorial Example Report

Population Delimitation

  • Structure is a free software package for using multi-locus genotype data to investigate population structure. Its uses include inferring the presence of distinct populations, assigning individuals to populations, studying hybrid zones, identifying migrants and admixed individuals, and estimating population allele frequencies in situations where many individuals are migrants or admixed.  Theory Tutorial Example Report

  • StructurRama is a program for inferring population structure from genetic data. The program assumes that the sampled loci are in linkage equilibrium and that the allele frequencies for each population are drawn from a Dirichlet probability distribution

  • Treemix a method for inferring the patterns of population splits and mixtures in the history of a set of populations. In the underlying model, the modern-day populations in a species are related to a common ancestor via a graph of ancestral populations.  Theory Tutorial

  • ADMIXTURE is a software tool for maximum likelihood estimation of individual ancestries from multilocus SNP genotype datasets. It uses the same statistical model as STRUCTURE but calculates estimates much more rapidly using a fast numerical optimization algorithm

  • SNMF uses sparse non-negative matrix factorization to estimate admixture coefficient, and performs as well as ADMIXTURE, but much faster

Approximate Bayesian Computation (ABC)

  • ABCtoolbox was designed to perform ABC estimations using various recently published algorithms including MCMC without likelihood and Population Monte Carlo. Due to its potential to interact with almost any command line simulation software, ABCtoolbox can be used to study problems in different areas including genomics or population genetics

  • MSbayes can test for simultaneous divergence or colonization across multiple co-distributed pairs of taxa (populations and/or species). It uses hierarchical approximate Bayesian computation (HABC) to estimate hyper-parameters given DNA sequence data

  • DIYABC a user-friendly approach to Approximate Bayesian Computation for inference on population history using molecular markers

Site Frequency Spectrum

  • Dadi uses the site frequency spectrum to evaluate complex population models, up to three populations. Theory Tutorial Example Report

  • Multi-DICE (Multiple Taxa Demographic Inference of Congruency in Events) - R package for constructing hierarchical co-demographic models and simulating multitaxa summary statistic vectors

bottom of page