EPMR is a general-purpose molecular replacement program. Unlike most molecular replacement programs, it does not divide the problem into separate rotation and translation searches. Instead, it uses an evolutionary search algorithm to simultaneously optimize the orientation and position of a search model (1,2). The program operates as follows:

An initial set of random solutions (random orientations and positions for the search model) is generated.

The correlation coefficient is calculated for each trial solution.

A fraction of the highest scoring solutions are retained and used to regenerate a complete set of new trial solutions. This is done by applying random alterations to the orientation angles and translations for each “surviving” solution.

The correlation coefficients for the new population are calculated, the population is again regenerated from the top scoring solutions, and this procedure is repeated for a specified number of cycles.