Computer simulation is the discipline of designing a model of an actual or theoretical physical/biological system, executing the model on a digital computer, and analyzing the execution output. Simulation embodies the principle of ``learning by doing'' --- to learn about the system we must first build a model of some sort and then operate the model. The use of simulation is an activity that is as natural as a child who role plays. Children understand the world around them by simulating (with toys and figurines) most of their interactions with other people, animals and objects. As adults, we lose some of this childlike behavior but recapture it later on through computer simulation. To understand reality and all of its complexity, we must build artificial objects and dynamically act out roles with them. Computer simulation is the electronic equivalent of this type of role playing and it serves to drive synthetic environments and virtual worlds. Within the overall task of simulation, there are three primary sub-fields: model design, model execution and model analysis
Simulation models have become important tools in Bioinformatics studies. There are many reasons for this, but we emphasize three of the more important:
(1) they enable exploration of hypotheses, and as such, have become invaluable means to guide research;
(2) they are unique approaches to integrate (in the literal term of the word) biological knowledge, in the form of experimental results; and
(3) they enable connecting biology with other fields of study ranging from physiology to genomics;
This blog, and this software list, is intended to guide the potential user of simulation models.
It is not, in any way, meant to be comprehensive on the very diverse simulation tools that already exist, but focuses on mechanistic, dynamic models. Similarly, it is not meant to provide any coverage of the breadth of applications; however, for interested readers, we provide references to use as a possible starting point.
Simulation models are meant to answer questions which scientists have in a dynamic, quantitative, and often, a pictorial way. Much of the bioinformatics research and its applications, in particular, involve a large number of components, actors, and factors. Assembling these in a coherent framework may seem a daunting task, especially for beginners, and can lead to confusion, even for experienced scientists, especially if the objectives of such an exercise are not well defined. Followings are the list of tools bioinformatician may use to analyze and provide answers to complex biological mechanisms and related problems.
Software Resource |
Brief Description and Homepage |
---|---|
Tools to investigate how demographic parameters, populations genetics and abiotic conditions affect the rate of adaptation |
|
A Simulation Framework for Genome Evolution |
|
ART is a set of simulation tools to generate synthetic next-generation sequencing data by mimicking real sequencing process with empirical error models or quality profiles. |
|
Methods for realistic simulation of mutations in real data. |
|
Bayesian Serial SimCoal, (BayeSSC) is a modification of SIMCOAL 1.0, a program written by Laurent Excoffier, John Novembre, and Stefan Schneider. |
|
An integral platform with a graphical interface for statistical inference based on approximate Bayesian computation. |
|
BEERS was designed to benchmark RNA-Seq alignment algorithms and also algorithms that aim to reconstruct different isoforms and alternate splicing from RNA-Seq data |
|
Bottleneck is a program for detecting recent effective population size reductions from allele data frequencies |
|
BottleSim is a computer simulation program for simulating the process of population bottlenecks |
|
Protein Sequence Simulation |
|
CDPOP is a landscape genetics tool for simulating the emergence of spatial genetic structure in populations resulting from specified landscape processes governing organism movement behavior. |
|
Web-based simulation software |
|
CoaSim is a tool for simulating the coalescent process with recombination and geneconversion under various demographic models. |
|
The cosi package is written in C and is available as a tar file. |
|
A program to simulate the evolution of protein sequences under the constraints of the information of a particular reconstructed phylogeny |
|
An application designed to simulate the evolution of recombinant DNA sequences in continuous time |
|
EASYPOP is an individual based model intended to simulate datasets under a very broad range of conditions |
|
EggLib is a C++/Python library and program package for evolutionary genetics and genomics. |
|
EpiSIM: simulation of multiple epistasis, linkage disequilibrium patterns and haplotype blocks for genome-wide interaction analysis |
|
A simulation test bed for hypotheses of genome evolution |
|
A realistic coding sequence simulation program that separates mutation from selection and allows the user to set selection conditions |
|
A continuous-‐time coalescent simulator of genomic diversity under arbitrarily complex evolutionary scenarios |
|
Simulation of Marker and Phenotype Data in Pedigrees |
|
C++/Python library for population genetics. |
|
The Flux Simulator aims at providing a deterministic in silico reproduction of the experimental pipelines for RNA-Seq, employing a minimal set of parameters. |
|
Forward-in-time simulation of Recombination, Quantitative Traits, and Selection |
|
ForSim: A Forward Evolutionary Computer Simulation |
|
The program given below is based on the algorithm described in Padhukasahasram et al. 2008 to simulate genetic drift in a standard Wright-Fisher process. |
|
Forward Population Genetic simulation |
|
FREGENE is a C++ program that simulates sequence-like data over large genomic regions in large diploid populations. |
|
FIGG is a genome simulation tool that uses known or theorized variation frequency, per a given fragment size and grouped by GC content across a genome to model new genomes in FASTA format while tracking applied mutations for use in analysis |
|
A C++ template library for implementing efficient forward simulations. |
|
Genetic Architecture Model Emulator for Testing and Evaluating Software: Simulates complex SNP models with pure, strict epistatic interactions with n-loci. |
|
Genometric Analysis Simulation Program. A software tool for testing and investigating methods in statistical genetics by generating samples of family data based on user specified models. |
|
Genome-wide Complex Trait Analysis |
|
Next generation sequencing read simulator |
|
Simulation of Markers in Case-Control Study Designs |
|
A rapid coalescent-based whole genome simulator |
|
GenomePop2 is a specialization of the program GenomePop just to manage SNPs under more flexible and useful settings. If you need models with more than 2 alleles please use the GenomePop program version. |
|
GenomeSIMLA is currently under development- however, we have a beta release that we are asking to be tested |
|
Simulates interactions among two genetic and one environmental factor and also allows for epistatic interactions. |
|
A rapid whole genome simulation program |
|
An association simulator for candidate regions or genome scans |
|
A simulator for the simulation of case control datasets at SNP markers |
|
A simulation tool for generating haplotype data with pre-specified allele frequencies and LD coefficients |
|
A program that simulates heterogeneous populations with various known and controllable structures under the continuous migration model or the discrete model |
|
IBDSim is a computer package for the simulation of genotypic data under general isolation by distance models. |
|
A biological sequence simulation program that simulates highly divergent DNA sequences and protein superfamilies |
|
A powerful and flexible simulator of biological evolution |
|
InvertFREGENE is a forward-in-time simulator of inversions in population genetic data |
|
A spatially explicit population genetic simulation engine |
|
Markovian Coalescent Simulator |
|
Marlin provides a user-friendly interface for performing forward-in-time population genetic simulations. |
|
A package for the simulation of nucleotide data. |
|
modifying Hudson's ms software to generate samples of DNA sequences with a biallelic site under selection |
|
Mendel's Accountant (MENDEL) is an advanced numerical simulation program for modeling genetic change over time and was developed collaboratively by Sanford, Baumgardner, Brewer, Gibson and ReMine |
|
Simulates genetics in large size metapopulations |
|
A tool to generate collections of synthetic reads that reflect the diverse taxonomical composition of typical metagenome data sets |
|
Multilocus Coalescent Simulations |
|
The purpose of this program is to allow one to investigate the statistical properties of such samples, to evaluate estimators or statistical tests, and generally to aid in the interpretation of polymorphism data sets. |
|
The purpose of this program is to allow one to investigate the statistical properties of such samples, to evaluate estimators or statistical tests, and generally to aid in the interpretation of polymorphism data sets. |
|
A coalescent Simlation tool with selection. |
|
A program for the simulation of DNA sequence evolution across a phylogenetic tree |
|
A forward-time, individual-based, genetically explicit, and stochastic simulation program designed to study the evolution of genetic markers, life history traits, and phenotypic traits in a flexible (meta-)population framework. |
|
Coalescent simulation of coding DNA sequences with recombination (inter and intracodon), migration and demography |
|
BioConductor package for Forward Genetic Simulation of Cancer Progresion with Epistasis |
|
Software for simulating eco-evolutionary population dynamics |
|
A tool to add phenotypes to simulated genotypes |
|
An R package for the Monte Carlo simulation of sequence evolution |
|
Profile-based Illumina pair-end reads simulator |
|
Simulation of protein evolution along phylogenies under structure-based substitution models |
|
QTL and Marker Simulator |
|
An individual-based program for the analysis of quantitative traits with explicit genetic architecture potentially under selection in a structured population |
|
Simulates new haplotype data from a reference population of haplotypes. |
|
Coalescent simulation of coding DNA sequences with recombination, migration and demography |
|
A package for simulating RNA-seq library preparation with parameter estimation |
|
Rmetasim is a front-end for the metasim engine that is implemented as a package that runs in the statistical computing environment R |
|
RSS takes SAM alignment files from RNA-Seq data and simulates over dispersed, multiple replica, differential, non-stranded RNA-Seq datasets. |
|
Random model of sequence evolution |
|
A coalescent simulator optimized for long sequences and large samples. |
|
SelSim is a program for Monte Carlo simulation of DNA polymorphism data for a recom- bining region within which a single bi-allelic site has experienced natural selection |
|
An application for the Monte Carlo simulation of molecular sequence evolution along phylogenetic trees. |
|
Statistical power analysis for sequence-based association studies |
|
SeqSIMLA can simulate sequence data with user-specified disease and quantitative trait models. Family or unrelated case-control data can be simulated. |
|
A flexible utility for generating serially-sampled sequences along a tree or recombinant network |
|
SFS_CODE can perform forward population genetic simulations under a general Wright-Fisher model with arbitrary migration, demographic, selective, and mutational effects. |
|
Quantitative phenotype simulation in extended pedigrees |
|
A spatially explicit, individual-based, forward-time, landscape-genetic simulation model combined with a landscape cellular automaton. |
|
A coalescent program for the simulation of complex recombination patterns over large genomic regions under various demographic models |
|
An R package simulating the evolution of copy number profiles along a tree. |
|
SIMLA is a SIMuLAtion program that generates data sets of families for use in Linkage and Association studies. |
|
A Simulation Program to Generate Haplotype and Genotype Data for Pedigree Structures |
|
A program to simulate protein evolution by substitution, insertion and deletion |
|
Rare variant simulation and analysis tool |
|
A forward-time simulator that simulates realistic samples for genome-wide association studies. |
|
simuPOP is a general-purpose individual-based forward-time population genetics simulation environment. |
|
A software tool to generate data of related sequences along a given phylogeny, taking into account user defined system of neighbourhoods and instantaneous rate matrices. |
|
Simulating Mating Alliance as a Reproductive Tactic for Populations |
|
Coalescent simulation of hotspot recombination |
|
SPIP simulates the transmission of genes from parents to offspring in a population having demographic structure defined by the user |
|
Spatial and Temporal Coalescences in Heterogeneous Environment |
|
Simulator of Rare Varaints (srv) is a simulator for the simulation of the introduction and evolution of (rare) genetic variants. |
|
SLINK/FastSLINK utility program |
|
A flexible, forward-time population genetic simulator |
|
A simulation tool for post-GWAS genetic epidemiological studies using whole-genome or whole-exome next-gen sequencing data, with an emphasis on user-friendliness and reproducibility. |
|
VORTEX is an individual-based simulation model for population viability analysis (PVA). |
|
Whole Exome Sequencing SIMulator |
Comments
Thanks for such a useful list of tool for simulation studies. I guess you forgot to add RSVSim: an R/Bioconductor package for the simulation of structural variations ( https://www.bioconductor.org/packages/release/bioc/html/RSVSim.html ) in the list.
Thanks for the list. I came across GPOPSIM: a simulation tool for whole-genome genetic data ( http://bmcgenet.biomedcentral.com/articles/10.1186/s12863-015-0173-4 , which seems the best for be a useful tool for the methodological and theoretical studies in the population and quantitative genetics and breeding.