Cargando…
The Community Simulator: A Python package for microbial ecology
Natural microbial communities contain hundreds to thousands of interacting species. For this reason, computational simulations are playing an increasingly important role in microbial ecology. In this manuscript, we present a new open-source, freely available Python package called Community Simulator...
Autores principales: | , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Public Library of Science
2020
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7092969/ https://www.ncbi.nlm.nih.gov/pubmed/32208436 http://dx.doi.org/10.1371/journal.pone.0230430 |
_version_ | 1783510206624301056 |
---|---|
author | Marsland, Robert Cui, Wenping Goldford, Joshua Mehta, Pankaj |
author_facet | Marsland, Robert Cui, Wenping Goldford, Joshua Mehta, Pankaj |
author_sort | Marsland, Robert |
collection | PubMed |
description | Natural microbial communities contain hundreds to thousands of interacting species. For this reason, computational simulations are playing an increasingly important role in microbial ecology. In this manuscript, we present a new open-source, freely available Python package called Community Simulator for simulating microbial population dynamics in a reproducible, transparent and scalable way. The Community Simulator includes five major elements: tools for preparing the initial states and environmental conditions for a set of samples, automatic generation of dynamical equations based on a dictionary of modeling assumptions, random parameter sampling with tunable levels of metabolic and taxonomic structure, parallel integration of the dynamical equations, and support for metacommunity dynamics with migration between samples. To significantly speed up simulations using Community Simulator, our Python package implements a new Expectation-Maximization (EM) algorithm for finding equilibrium states of community dynamics that exploits a recently discovered duality between ecological dynamics and convex optimization. We present data showing that this EM algorithm improves performance by between one and two orders compared to direct numerical integration of the corresponding ordinary differential equations. We conclude by listing several recent applications of the Community Simulator to problems in microbial ecology, and discussing possible extensions of the package for directly analyzing microbiome compositional data. |
format | Online Article Text |
id | pubmed-7092969 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2020 |
publisher | Public Library of Science |
record_format | MEDLINE/PubMed |
spelling | pubmed-70929692020-04-01 The Community Simulator: A Python package for microbial ecology Marsland, Robert Cui, Wenping Goldford, Joshua Mehta, Pankaj PLoS One Research Article Natural microbial communities contain hundreds to thousands of interacting species. For this reason, computational simulations are playing an increasingly important role in microbial ecology. In this manuscript, we present a new open-source, freely available Python package called Community Simulator for simulating microbial population dynamics in a reproducible, transparent and scalable way. The Community Simulator includes five major elements: tools for preparing the initial states and environmental conditions for a set of samples, automatic generation of dynamical equations based on a dictionary of modeling assumptions, random parameter sampling with tunable levels of metabolic and taxonomic structure, parallel integration of the dynamical equations, and support for metacommunity dynamics with migration between samples. To significantly speed up simulations using Community Simulator, our Python package implements a new Expectation-Maximization (EM) algorithm for finding equilibrium states of community dynamics that exploits a recently discovered duality between ecological dynamics and convex optimization. We present data showing that this EM algorithm improves performance by between one and two orders compared to direct numerical integration of the corresponding ordinary differential equations. We conclude by listing several recent applications of the Community Simulator to problems in microbial ecology, and discussing possible extensions of the package for directly analyzing microbiome compositional data. Public Library of Science 2020-03-24 /pmc/articles/PMC7092969/ /pubmed/32208436 http://dx.doi.org/10.1371/journal.pone.0230430 Text en © 2020 Marsland et al http://creativecommons.org/licenses/by/4.0/ This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited. |
spellingShingle | Research Article Marsland, Robert Cui, Wenping Goldford, Joshua Mehta, Pankaj The Community Simulator: A Python package for microbial ecology |
title | The Community Simulator: A Python package for microbial ecology |
title_full | The Community Simulator: A Python package for microbial ecology |
title_fullStr | The Community Simulator: A Python package for microbial ecology |
title_full_unstemmed | The Community Simulator: A Python package for microbial ecology |
title_short | The Community Simulator: A Python package for microbial ecology |
title_sort | community simulator: a python package for microbial ecology |
topic | Research Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7092969/ https://www.ncbi.nlm.nih.gov/pubmed/32208436 http://dx.doi.org/10.1371/journal.pone.0230430 |
work_keys_str_mv | AT marslandrobert thecommunitysimulatorapythonpackageformicrobialecology AT cuiwenping thecommunitysimulatorapythonpackageformicrobialecology AT goldfordjoshua thecommunitysimulatorapythonpackageformicrobialecology AT mehtapankaj thecommunitysimulatorapythonpackageformicrobialecology AT marslandrobert communitysimulatorapythonpackageformicrobialecology AT cuiwenping communitysimulatorapythonpackageformicrobialecology AT goldfordjoshua communitysimulatorapythonpackageformicrobialecology AT mehtapankaj communitysimulatorapythonpackageformicrobialecology |