Symbulation – Agent based modeling of symbiont ecology and evolution

Authors

Anya Vostinar and contributors.

GitHub

https://github.com/anyaevostinar/SymbulationEmp

Symbulation Logo

Symbulation is an artificial life software tool for agent-based modeling of the evolution of biological symbiosis, which can occur along the spectrum between parasitism and mutualism.

CI codecov DOI Documentation Status GitHub contributors

Try out our browser-based GUI. See our documentation at https://symbulation.readthedocs.io.

Interested in starting a new project with Symbulation? We have a cookiecutter template here: https://github.com/anyaevostinar/SymbulationProjectTemplate.

Symbulation is built with the Empirical platform and the cookiecutter includes our recommended directory layout and example analysis files.

Usage

Install the latest Cookiecutter:

pip install -U cookiecutter

Generate an Symbulation project:

cookiecutter https://github.com/anyaevostinar/SymbulationProjectTemplate.git

Move into the new project directory and the SymbulationEmp directory and make:

cd SymbulationProject/SymbulationEmp
make

Make any changes that you wish to the file SymSettings.cfg and then run:

./symbulation_default

By default, your data will be output to the files HostVals_data__SEED10.data and SymVals_data__SEED10.data.

We recommend that you copy your symbulation executable to your Data folders:

cp symbulation_default ../Data/sample_treatment
cd ../Data/sample_treatment

You can then use the provided Python script to run several replicates:

python3 simple_repeat.py

You can also then use the provided Python script to transform your data into a format more easily used by R:

cd ../../Analysis/sample_treatment
python3 munge_data.py

And then open our provided R script SampleAnalysis.R in R, set your working directory to the Analysis directory and then run all lines to observe the effect of vertical transmission rate on the interaction value evolved.

Created part of my free logo at LogoMakr.com.

This is a software model of symbiosis which allows for evolution of parasitism and mutualism.

Click here to try it out in your web browser!

Checkout our quick start guides for more information on getting started.

Search for any function, class or variable using the search feature in the top left!