This page lists a few non-random mating schemes
Homogeneous mating schemes
Homogeneous mating schemes apply the same parent-selection and offspring-generation schemes to all subpopulations. Non-random mating can be achieved by using special parent choosers.
Hetergeneous mating schemes
Heterogeneous mating schemes apply multiple homogeneous mating schemes to different subpopulation and virtual subpopulations. They can be used to implement complex mating schemes where individuals with different properties mate differently.
- Selfing Partial self-fertilization.
- OverlappingGenerations Overlapping generations.
- AssortativeMating Assortative mating.
Python parent choosers
Python parent choosers are the most flexible parent choosers in the sense that you can grab a subpopulation and pick parents by yourself. The only technique difficulty is that you need to write a Python generator for it.
- PythonParentChooser Python parent chooser
- CppLevelParentChooser A Python parent chooser implemented at the C++ level.
Customized during mating operators (genotype transmitters)
- haplodiploidMating Recombination in haplodiploid populations.