Heterozygote advantage can explain the extraordinary diversity of immune genes
Data files
Nov 25, 2024 version files 72.88 KB
-
MHC_sim_Dryad.m
70.37 KB
-
README.md
2.51 KB
Abstract
The majority of highly polymorphic genes are related to immune functions and with over 100 alleles within a population, genes of the major histocompatibility complex (MHC) are the most polymorphic loci in vertebrates. How such extraordinary polymorphism arose and is maintained is controversial. One possibility is heterozygote advantage (HA), which can in principle maintain any number of alleles, but biologically explicit models based on this mechanism have so far failed to reliably predict the coexistence of significantly more than ten alleles. We here present an eco-evolutionary model showing that under HA evolution can result in the emergence and maintenance of more than 100 alleles if the following two assumptions are fulfilled: first, pathogens are lethal in the absence of an appropriate immune defense; second, the combined effect of multiple pathogens on host survival exceeds the sum of the effects of each pathogen alone. Thus, our results show that HA can be a more potent force in explaining the extraordinary polymorphism found at MHC loci than currently recognized.
https://doi.org/10.5061/dryad.69p8cz98j
MATLAB script used for individual based simulation presented in the main paper.
This script simulates a diploid Wright-Fisher model with mutation and selection to study the evolutionary dynamics of allelic values x for both the Gaussian and the bit-string model. It considers a diploid population of fixed size N with non-overlapping generations and random mating. Individuals produce a large number of offspring, independent of their genotype, resulting in deterministic Hardy-Weinberg proportions before viability selection. After viability selection (based on Equation 5 from the main paper), which adjusts the proportion of genotypes, stochasticity is introduced via random multinomial sampling of N surviving offspring to form the next generation’s adult population. This model tracks the fate of recurrent mutations occurring with a per-capita mutation probability mu.
Workflow
Run the MHC_sim_Dryad.m
file with MATLAB (version 2022b or later), according to one of the following three alternatives
1) Run MHC_sim_Dryad
file without input arguments
Defaults to simulating the Gaussian model with predefined parameter settings*.
2) Run with chosen model MHC_sim_Dryad(bit)
Runs the simulation for the Gaussian model if bit=false
, and for the bit-string model if bit=true
, using predefined parameter settings*.
3) Run Gaussian model with specified parameters MHC_sim_Dryad(false,m,vir,K)
Runs the Gaussian model simulation with specified parameters:
*default value | ||
---|---|---|
m |
number of pathogens | 8 |
vir |
virulence | 20 |
K |
survival half-saturation constant | 0.5 |
4) Run bit-string model with specified parameters MHC_sim_Dryad(true,m,vir,K)
Runs the bit-string model simulation with specified parameters, where:
*default value | ||
---|---|---|
m |
number of pathogens | 100 |
vir |
virulence | 9 |
K |
survival half-saturation constant | 1 |
npep |
number of peptides per pathogen | 5 |
MATLAB script used for individual-based simulation presented in the main paper.