Population Genetics - Simulations with PopG


PopG is a one-locus, two-allele (A and a) genetic simulation program written in Java. With PopG you can simulate evolving populations. In the setting window you specify the parameters. The output shows the allele frequency over time (generations) for the different populations. The goal of the simulations is not to get it done but to get a feeling for the evolutionary forces. For this reason think about the possible outcome before you run it.

The PopG website helps with the installation. It also provided a short tutorial and a list of suggestions. Please also read the credits and respect copyright.

Note

Be careful not do open more than one parameter setting widow at a time!

A - Random Genetic Drift

A1 - Get started

Run a first simulations using the default parameters.

  • Try to understand the graphical output.
  • Can you predict the outcome of the simulation?

Tip

You can use [Run]▸[Restart] to repeat the simulations. This is recommended because it shows you different outcomes of the same simulation. You see how much variation you can expect.

A2 - Random Seed

Set parameter to a number you like and run a few more simulations with the same seed number.

  • What did change?

A3 - Random but not arbitrary

Exchange the with your neighbour and run the simulation using his/her seed number.

  • Compare the results?
  • What does the seed parameter do and what could be the reason for using it?
  • Can we still considered the silulation to be random if we use a seed?

A4 - Increase the number of evolving populations from default 10 to 100. Run 5 simulations and record the number (or %) of populations where the allele A got fixed (P(A)=1) or got lost (P(A)=0).

Sim Pop-Size fixed lost
#1 100 ? ?
#2 100 ? ?
#3 100 ? ?
#4 100 ? ?
#5 100 ? ?
  • Can you predict the fate of the allele A in a population?

A5 - Continue the last simulation for 500 more generations by steps of 100 generations (Run > Continue w/ 100). The x-axis keeps track of the time (generation time) passed since the simulation started.

Gen Pop-Size fixed lost
100 100 ? ?
200 100 ? ?
300 100 ? ?
400 100 ? ?
500 100 ? ?
  • What happen to allele A?
  • Based on this observation, what can you say about the genetic diversity in a population over time?

A6 - Repeat the previous simulation but increase the initial population size to 500.

Gen Pop-Size fixed lost
100 500 ? ?
200 500 ? ?
300 500 ? ?
400 500 ? ?
500 500 ? ?
  • Can you see a difference between the previous simulations with population size 100?

A7 - Run new simulations with the same parameters but increase the number of generation.

Gen Pop-Size fixed lost
1000 100 ? ?
1000 500 ? ?
5000 100 ? ?
5000 500 ? ?
10000 100 ? ?
10000 500 ? ?
  • How does population size influence allele frequency over time?
  • Can you predict the fate of genetic diversity?

A8 - Probability for fixation - Run a few more simulations but use different initial allele frequency (Feq(A)). Population size (Size), number of generation (N(Gen)), and number of population (N(Pop)) are constant.

Size Feq(A) N(Gen) N(Pop) fixed lost
100 0.10 1000 1000 ? ?
100 0.20 1000 1000 ? ?
100 0.30 1000 1000 ? ?
100 0.40 1000 1000 ? ?
100 0.50 1000 1000 ? ?
100 0.60 1000 1000 ? ?
100 0.70 1000 1000 ? ?
100 0.80 1000 1000 ? ?
100 0.90 1000 1000 ? ?
100 0.95 1000 1000 ? ?
100 0.99 1000 1000 ? ?
  • In Summary - What did you learn from the simulations above in terms of allele frequency changes and predictability of genetic diversity within and between populations over time?

B - Mutation

Mutations are the sources of all genetic variation. A single mutation can have a large effect, but in many cases, evolutionary change is based on the accumulation of many mutations. In this simulation we assume that allele A mutates to a and back at different mutation rates.

B1 - Different mutation rates

Size N(Gen) N(Pop) A ➜ a a ➜ A f(AA) f(Aa) f(aa)
100 500 100 0.0001 0 ? ? ?
100 500 100 0.001 0 ? ? ?
100 500 100 0.01 0 ? ? ?
100 500 100 0.1 0 ? ? ?
100 500 100 0.01 0.01 ? ? ?

B2 - Mutation over time

Size N(Gen) N(Pop) A ➜ a a ➜ A f(AA) f(Aa) f(aa)
100 100 100 0 0 ? ? ?
100 100 100 0.001 0 ? ? ?
100 500 100 0.001 0 ? ? ?

B3 - Population size and mutation rate

Size N(Gen) N(Pop) A ➜ a a ➜ A f(AA) f(Aa) f(aa)
10 500 100 0.001 0 ? ? ?
100 500 100 0.001 0 ? ? ?
1000 500 100 0.001 0 ? ? ?
  • What is considered a high mutation rate?
  • How is the mutation rate influencing genetic diversity over time?
  • What are the limitations of this simulation?

C - Gene Flow / Migration

C1 - Different migration rates

Size N(Gen) N(Pop) m f(AA) f(Aa) f(aa)
100 500 100 0.0 ? ? ?
100 500 100 0.01 ? ? ?
100 500 100 0.001 ? ? ?

C2 - Migration rate and population size

Size N(Gen) N(Pop) m f(AA) f(Aa) f(aa)
10 500 100 0.01 ? ? ?
100 500 100 0.01 ? ? ?
1000 500 100 0.01 ? ? ?

C3 - Migration and mutation rate

Size N(Gen) N(Pop) m A ➜ a f(AA) f(Aa) f(aa)
100 500 100 0.01 0.001 ? ? ?
100 500 100 0.05 0.001 ? ? ?
100 500 100 0.10 0.001 ? ? ?
  • Describe the influence of migration on the genotype frequency.
  • Describe the interaction between migration rate, genetic drift and mutation rate.
  • What factors can influence the migration rate?

D - Selection / Fitness

Natural selection is the differential success of genotypes in contributing to the next generation. The effect of natural selection on genotypes is measured by fitness.

  • w: relative fitness (w=1-s)
  • s: selection coefficient (s=1-w)
  • f(xx): genotype frequency

Before you start a simulation think about the possible outcome of your simulation!

w(AA) w(Aa) w(aa) s f(AA) f(Aa) f(aa) Fitness
1 1 1 - ? ? ? neutral
1 1 0 - ? ? ? complete dominance
1 0 1 - ? ? ? complete underdominance
0 1 0 - ? ? ? complete overdominance
1 1 1-s 0.01 ? ? ? recessive
1 1 1-s 0.1 ? ? ? recessive
1 1-s/2 1-s 0.1 ? ? ? additive
1-s 1 1-s 0.05 ? ? ? overdominance
1-s 1 1-s 0.1 ? ? ? overdominance
1+s 1 1+s 0.05 ? ? ? underdominance
1+s 1 1+s 0.1 ? ? ? underdominance
  • How does fitness influence diversity within and between populations?
  • How much fitness does a population need to outrun genetic drift?

E - Simulations Explained

Find the setting used for the following simulations. Set population size, number of generations, and number of population to 100.

E1 - Stable Populations

E2 - Swift Shift

E3 - We All Go Down

E4 - Get Stable

E5 - You Are Not Getting Rid of Me

Possible Solutions
TEST