MesserLab / SLiM

SLiM is a genetically explicit forward simulation software package for population genetics and evolutionary biology. It is highly flexible, with a built-in scripting language, and has a cross-platform graphical modeling environment called SLiMgui.
https://messerlab.org/slim/
GNU General Public License v3.0
160 stars 30 forks source link

mechanisms mediating individual interactions #308

Closed bobweek closed 2 years ago

bobweek commented 2 years ago

ben asked me to draft up a summary of commonly used mechanisms mediating interactions in coevolutionary models and how they might be implemented in eidos. after some careful thinking, i concluded that this functionality would be best left as user-defined. instead, i think a class of recipes demonstrating how these models can be implemented would be most effective to aid researchers interested in using slim to study coevolution. more thoughts in the attached document. interspp-intxns.pdf

petrelharp commented 2 years ago

Thanks for the writeup! A question: you've got tables with values of α for the "interaction table"; what's the range of meanings for α? (It's usually just affecting "fitness", abstractly defined, right?)

bobweek commented 2 years ago

happy to be helpful :) α is typically thought of as a probability of interaction "success" (or probability of encounter depending on the model/perspective) as a function of genotypes or phenotypes. for phenotypic mechanisms, α might be considered the degree to which the interaction occurs instead of the probability of a binary outcome (like "how much grass did the cow eat?" instead of "what is the probability of the cow eating this grass?").

there is another step that needs to be taken "after" α to map the results to fitness effects (which would determine whether the interaction is an antagonism, mutualism, etc). there are many ways this can be done. one approach would be add s*α (with s a selection parameter) to the individuals baseline fitness to determine their fitness after the interaction. in this case a positive s means a successful interaction benefits the focal individual while a negative s induces a cost on the individual. if s is positive for both species, the interaction is a mutualism, etc. another approach is to consider multiplicative fitness effects. it's also possible to set this mapping up so the type of interaction evolves depending on relative trait distributions or allele frequencies of the two species. i can go into further details if there's interest.

petrelharp commented 2 years ago

I wonder if it'd be helpful to have a list of examples of biological mechanisms mediating interactions?

bobweek commented 2 years ago

sure!

bhaller commented 2 years ago

Hi @bobweek and @petrelharp. This is all very interesting. Would you like to develop an example recipe (or two) for the SLiM manual demonstrating these techniques with simple multispecies models, Bob? That might be quite useful to folks. If you're interested, don't launch into doing it quite yet, but just let me know you're interested, and I'll ping you when things are ready for that to happen – probably just a few days, but I want to get a few ducks in a row first. :->

bobweek commented 2 years ago

Yes, I'm interested! :)

bhaller commented 2 years ago

OK, between @bobweek and myself we have now got recipe 19.6 that is trait-matching, and recipe 19.7 that is matching-allele. That doesn't show every enumerated possibility, but I think it gestures sufficiently towards how to write these types of models, perhaps. I think I will therefore close this issue. However, there will probably need to be a couple more recipes in the manual to show how to do different types of ecological interactions beyond parasitoids and parasites, and maybe they should also show different styles of genetic interaction, just for the variety of it. So I'll likely be consulting your writeup again in future; thanks for that, it's quite clarifying!