  The analysis of the evolutionary dynamics of a population with many
polymorphic loci is challenging since a large number of possible genotypes
needs to be tracked. In the absence of analytical solutions, forward computer
simulations are an important tool in multi-locus population genetics. The run
time of standard algorithms to simulate sexual populations increases as 8^L
with the number L of loci, or with the square of the population size N. We have
developed algorithms that allow to simulate large populations with a run-time
that scales as 3^L. The algorithm is based on an analog of the Fast-Fourier
Transform (FFT) and allows for arbitrary fitness functions (i.e. any epistasis)
and genetic maps. The algorithm is implemented as a collection of C++ classes
and a Python interface.
