Simulating Evolution III — Why Does a Change Happen When It Does?

In the last post, I mentioned the idea that mutations interact; one allele invades a population, making a mutation at another locus have a different fitness effect than it did before. This is easy to understand if we think about some of the ways that genes interact in a network. If our focal mutation happens in gene A, then we can imagine different ways that changes in another gene, B, could shape whether that change in A is beneficial or not. Maybe gene A activates gene B, so that the effect of mutations at A depends entirely on what it is that B does. Or, gene B might regulate gene A, so that changes to B might prevent A from being expressed at all. Or A and B might act in parallel, so that a change in B might conflict with, or make redundant, a similar kind of change in A. I’ll have a lot more to say about these kinds of fitness interactions, usually called ‘epistasis,’ as we go on–but I want to take a beat to prove (or disprove) my intuition that coincident changes at different loci are a sign of epistasis in these simulations.

The starting point for testing this intuition is measuring how the effect of a mutation depends on the genetic background. Imagine an experiment where we engineer our allele of interest into a random individual from different periods in the history of a population. Then, we ask, in each of those different genotypes, is the allele we added better or worse than the allele we replaced–in other words, if our allele arose in that individual as a mutation, would it be beneficial or not?

This kind of experiment is done more and more often as the needed technologies get cheaper, and as interest in this kind of epistasis grows. Of course, here we just need to write our code such that we can resurrect organisms from past populations and stick in a new allele in the right place. Let’s deploy this tool to see what it can tell us about why a mutation might succeed when it does.


Here’s an example from a different population of the same set of simulations; one characterized by a bunch of early deletions and duplications. I want to see how all those changes affected the selection coefficient of that first fixation in the gene P1–the one marked by the blue line. So, I pull out that allele and place it into a sample individual from populations spaced 1000 generations apart. Then, I measure the fitness with and without that substitution, and take the ratio of fitness with the mutant over fitness with the resident allele (whatever was already) present, subtracting one to get the selection coefficient. Finally, I’ll plot those coefficients alongside the allele frequency traces, to see if we can make sense of all this.


And here it is, zoomed to follow the action. The blue dots show that the mutation symbolized by the blue trace actually would have been beneficial at any time prior to when it actually fixed, though it seems to have gotten more beneficial as R5 and R6 came on the scene. It’s benefit is right near zero when the population is fixed for it, because then our experiment has no effect–we’re just substituting the mutation for itself. Later, we see three more alleles successively arise and displace the prior one at this locus, and our original blue mutation is worse than all of them.

In this example, epistasis seems to play a pretty minor role; the randomness of mutation would seem to be the larger reason that we don’t see this significant change evolve earlier. Next week, I’ll start to apply this tool to some other, maybe more complicated examples to see if we can find any good examples of strong epistasis.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s