JoRussell-IDM / updated_infection_and_immunity

malaria_two_pt_oh
0 stars 0 forks source link

Strain diversity #12

Open JoRussell-IDM opened 5 years ago

JoRussell-IDM commented 5 years ago

Node level: The count of distinct strains circulating in a population should be available to all individuals in a node. These could be given weights as a proxy for relatedness

Individual level: Individuals should keep a count of all strains seen (probability(!seen) += counter)

Infection level: Infections should carry a unique strain identifier

JoRussell-IDM commented 5 years ago

Ultimately the behavior we want to capture with this is the idea that there is a nonlinear rate at which individuals will see all of the antigenic diversity within a circulating reservoir of parasites. This rate depends upon both the multiple layers of antigenic recognition (lumping these together seems a gross assumption, but its where we start) and the antigenic switch rate of strains and the rate of recombination among sexually recombining strains.

Another consideration is how to account for the bottlenecking effect of drug pressure. Say a population has experienced high diversity transmission, individuals in this setting would relatively be more immune. Then we do an MDA and the diversity crashes. We don't want the function here to suggest that these individuals are suddenly more susceptible because diversity is low. But rather that there new probability of having not seen the parasite is much lower.

In order to keep compute time low, we will try to stick to as probabilistic a picture as we can. Lets assume the pool of parasites is composed of n antigenically distinct strains. Lets then assume that the probability of seeing a parasite based on its respective abundance is p. We want individuals to keep track of how many of the n strains in the pool they are likely to have seen. Upon infection then we can ask whether the individual has seen that parasite given n and p. What happens when n changes? This is getting difficult to describe solely in words...

JoRussell-IDM commented 5 years ago

One idea is that our immune scaling of our first new incident infection is at first symmetric and centered on 0 (We're no more likely to be immune to this infection if we're naïve to all antigen space equally), but we could allow for a distribution around 0 given that some infection strains area observed to be more virulent than others. How the scaling of a subsequent infection depends on the diversity that these infections are being sampled from.

In the simplest case of clonal diversity (strain diversity k = 1) subsequent infection should be scaled negatively by a magnitude that depends on how many number of infections we've seen and how many waves we've seen (on the low end we've seen 1 infection with 1 wave and so we only scale this new incident infection by a small amount, on the high end we've seen this infection 3 times a year for 30 years and seen ~600 waves, certainly by this point we've seen all the antigenic space this parasite has to offer (even accounting for some reassortment during mitotic divisions) and our immune scaling of a subsequent infection should be severely negative).

At the low level of diversity (10 > k > 1) we should have the same behavior as above, but with the added attenuation provided by recombination during sexual reproduction of the parasites. And this attenuation should be exponential with k.

At high levels of diversity (k>10) we should have little to no negative skewing of our immune modifier because at some limit the likelihood of seeing similar var gene combinations is limited. Our predominant immune scaling effects will then have to come from the more gradual effect provided by our other negatively-acting immune modifier components like number of infections, number of waves, and biological age.

I envision this being like a skew function (shape to be determined, a Weibull-like function is the general shape I see working) convolved with the original symmetric 0-centered distribution of immune modifier effect. Where the degree of skew is a function of (k,number of infections seen, and number of waves seen).

JoRussell-IDM commented 5 years ago

CURRENT STATUS: In implied genetics the strain diversity in a node is approximated by evaluating a function that predicts the nonlinear relation between strain diversity and prevalence (FIGURE NEEDED, functional form and parameterization). This removes the onus on user to specify an expected diversity and instead rely on starting prevalence (fraction of infected individuals in the node). In the simplest case this strain diversity is mapped directly to immune modifier values. This means this diversity can be updated at every node update step by just querying population level prevalence!

FUTURE STATUS: (Drug resistance in this case should be a node property where the spread of resistance happens at the level of adjacent nodes and resistance as a property is distributed among its constituent infections where it can interact with drugs) this sounds complicated and worthy of its own issue ticket.

Importation also deserves its own issue and should be a draw from a distribution of relatedness and should override the immune modifier value that would be calculated for this strain. Ultimately the relative degree of importation should be a configurable parameter at each node.

JoRussell-IDM commented 5 years ago

PfPR -> strain diversity -> immune modifier:

strain diversity = 1/(1+exp(-a * (x-b))) a and b being configurable params (a: diversity_from_marginal_prevalence, b: prevalence_threshold_for_diversity)

where a is the steepness and should be configurable to represent the rate at which marginal increased prevalence results in more expected diversity and b is the midpoint which represents the point in prevalence space where we can expect diversity to start impacting immune responses more and how this nodes diversity can be expected to reflect maximal global parasite diversity.

With default values of a:40 b: 0.1

DGoes-IDM commented 5 years ago

SNAG-0040.png