Skip to content

Repository files navigation

Simulating Hybridisation of Two Genetically Diverged Populations Under Natural Selection

A program in Python was written to simulate the hybridisation between two populations under natural selection. This program incorporates the concept of fitness epistasis, which is the interaction between fitness effects of different genetic loci. Simulations with varied population size, selection strength, fitness epistasis and D/n (genetic loci number to phenotypic trait number) ratio were done to investigate their effect on the fitness outcome of hybridisation.

Concepts and Notations

There are two hypothetical populations, P1 and P2. They have diverged from a common ancestor and have each accumulated mutations that made them differ genetically at D variable loci. Each locus contains two possible alleles. For ease of notation, the allele present in P1 is set as the reference allele, and the allele in P2 is set as the derived allele. At each locus, an individual can carry 0, 1 or 2 copies of the derived allele. The genotype of any one individual can be represented by a vector of length D, in which the genotype at locus $i,g_{i}(i=1,2,...,D)$ can take value 0, 1 or 2. The genotype of a population of size N is represented by a D by N matrix called G.

About

My undergraduate final year project, supervised by Dr John Welch. A simplified version of his more complicated model.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages