## 1.4 Variation operator

The most important step in EA is to deliver the good gene to the next population. In USPEX, such delivery is done via variation operators. In general, the choice of variation operators follows naturally from the representation 2.3.

**Heredity** is the core part of EA approach. It combines different parts from different parents. To generate a child from two parents, the algorithm firstly choose a plane which is parrallel to one lattice plane along the other lattice vector and then cut the structure and match the slices. The number of atoms of each kind should be adjusted to be conserved.

**Mutation** operators use a single parent solution to produce a single child. can have multiple forms. *Lattice mutation* applies stain matrix with zero-mean Gaussian random strains to the lattice vectors; *softmode mutation* displace the atoms along the softest mode eigenvectors, or a random linear combination of softest eigenvectors; *permutation* operator swaps chemical identities of atoms in randomly pairs.