From ae5fe9c48b43bfb36049d1e13e524f875fa92310 Mon Sep 17 00:00:00 2001 From: "George G. Vega Yon" Date: Fri, 5 Apr 2024 13:27:41 -0600 Subject: [PATCH] Adding references and a comparison table --- paper/paper.md | 90 ++++++++++++++++++++++++++++++++++++++++++++ paper/paper.qmd | 24 ++++++++++++ paper/references.bib | 68 +++++++++++++++++++++++++++++++++ 3 files changed, 182 insertions(+) create mode 100644 paper/references.bib diff --git a/paper/paper.md b/paper/paper.md index 73ffa7e8..09cde64d 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -72,6 +72,28 @@ package: different comorbidities affect the transmission and severity of the disease. +## Other alternatives + +# Existing Alternatives + +The following table from Meyer and Vega Yon (2023) shows existing +alternatives to epiworld, including **ABM** (Ma 2023), **abmR** +(Gochanour, Fernandez-Lopez, and Contina 2023), **cystiSim** +(Devleesschauwer and Braae 2016), **villager** (Thelen et al. 2022), and +**RNetLogo** (Thiele, Kurth, and Grimm 2012).[^1] + +| Package | Multiple Viruses | Multiple Tools | Multiple Runs | Global Actions | Built-In Epi Models | +|:--------------------------------------------------------------|:-----------------|:---------------|:--------------|:---------------|---------------------| +| [**epiworldR**](https://cran.r-project.org/package=epiworldR) | yes | yes | yes | yes | yes | +| [**ABM**](https://cran.r-project.org/package=ABM) | \- | \- | \- | yes | yes | +| [**abmR**](https://cran.r-project.org/package=abmR) | \- | \- | yes | \- | \- | +| [**cystiSim**](https://cran.r-project.org/package=cystiSim) | \- | yes | yes | \- | \- | +| [**villager**](https://cran.r-project.org/package=villager) | \- | \- | \- | yes | \- | +| [**RNetLogo**](https://cran.r-project.org/package=RNetLogo) | \- | yes | yes | yes | \- | + +A benchmark comparing epiworld’s speed with other software packages can +be found in the [benchmark section](#speed-benchmark). + # Appendix ## Code example @@ -158,8 +180,76 @@ Transition Probabilities: ## Speed benchmark +The following figure shows the time measured in seconds that each of the +benchmarked software packages took to simulate a SIR model featuring +50,000 agents for 100 days. + ![](benchmark.png) ## Implementation +The following figure illustrates the model composition process used in +epiworld. Generally, users can add an arbitrary number of states, +viruses, tools, and events to a single model. The flexibility of +epiworld’s API provides a simple way to extend the model’s capabilities. + ![](building-models.png) + +# References + +
+ +
+ +Devleesschauwer, Brecht, and Uffe Christian Braae. 2016. *cystiSim: +Agent-Based Model for Taenia_solium Transmission and Control*. +. + +
+ +
+ +Gochanour, Benjamin, Javier Fernandez-Lopez, and Andrea Contina. 2023. +*abmR: Agent-Based Models in R*. +. + +
+ +
+ +Ma, Junling. 2023. *ABM: Agent Based Model Simulation Framework*. +. + +
+ +
+ +Meyer, Derek, and George G Vega Yon. 2023. +“epiworldR: Fast Agent-Based Epi Models.” +*Journal of Open Source Software* 8 (90): 5781. +. + +
+ +
+ +Thelen, Thomas, Gerardo Aldana, Marcus Thomson, and Toni Gonzalez. 2022. +*Villager: A Framework for Designing and Running Agent Based Models*. +. + +
+ + + +
+ +[^1]: Although other ABM frameworks are available, the table focuses on + those most relevant (and popular) to epidemiological simulations. diff --git a/paper/paper.qmd b/paper/paper.qmd index f2f7d00d..bebc9276 100644 --- a/paper/paper.qmd +++ b/paper/paper.qmd @@ -5,6 +5,7 @@ format: docx: default author: 'George G. Vega Yon, Ph.D.' date: April 5, 2024 +bibliography: references.bib --- `epiworld` is a fast and flexible agent-based modeling (ABM) framework for epidemiological simulations. Designed in C++, it can simulate large populations with complex interactions. The framework is designed to be modular, allowing users to extend and modify the model to suit their needs quickly. Besides the C++ library, an R package ([epiworldR](https://github.com/UofUEpiBio/epiworldR)), a ShinyApp ([epiworldRShiny](https://github.com/UofUEpiBio/epiworldRShiny)), and a Python library ([epiworldpy](https://github.com/UofUEpiBio/epiworldpy)) are available to interact with the model. @@ -35,6 +36,24 @@ As a framework, `epiworld` can simulate various epidemiological scenarios. This - **Population comorbidities**: The library can model the impact of population comorbidities on the spread of the disease, including how different comorbidities affect the transmission and severity of the disease. +## Other alternatives + +# Existing Alternatives + +The following table from @meyerEpiworldRFastAgentBased2023 shows existing alternatives to epiworld, including **ABM** [@ABM], **abmR** [@abmR], **cystiSim** [@cystiSim], **villager** [@villager], and **RNetLogo** [@RNetLogo].[^othermodels] + +[^othermodels]: Although other ABM frameworks are available, the table focuses on those most relevant (and popular) to epidemiological simulations. + +| Package | Multiple Viruses | Multiple Tools | Multiple Runs | Global Actions | Built-In Epi Models | +|:--------|:--------|:--------|:--------|:--------|---------| +| [**epiworldR**](https://cran.r-project.org/package=epiworldR) | yes | yes | yes | yes | yes | +| [**ABM**](https://cran.r-project.org/package=ABM) | \- | \- | \- | yes | yes | +| [**abmR**](https://cran.r-project.org/package=abmR) | \- | \- | yes | \- | \- | +| [**cystiSim**](https://cran.r-project.org/package=cystiSim) | \- | yes | yes | \- | \- | +| [**villager**](https://cran.r-project.org/package=villager) | \- | \- | \- | yes | \- | +| [**RNetLogo**](https://cran.r-project.org/package=RNetLogo) | \- | yes | yes | yes | \- | + +A benchmark comparing epiworld's speed with other software packages can be found in the [benchmark section](#speed-benchmark). # Appendix @@ -120,9 +139,14 @@ Transition Probabilities: ## Speed benchmark +The following figure shows the time measured in seconds that each of the benchmarked software packages took to simulate a SIR model featuring 50,000 agents for 100 days. + ![](benchmark.png) ## Implementation +The following figure illustrates the model composition process used in epiworld. Generally, users can add an arbitrary number of states, viruses, tools, and events to a single model. The flexibility of epiworld's API provides a simple way to extend the model's capabilities. + ![](building-models.png) +# References \ No newline at end of file diff --git a/paper/references.bib b/paper/references.bib new file mode 100644 index 00000000..661430d5 --- /dev/null +++ b/paper/references.bib @@ -0,0 +1,68 @@ +@Manual{ABM, + title = {ABM: Agent Based Model Simulation Framework}, + author = {Junling Ma}, + year = {2023}, + note = {R package version 0.3}, + url = {https://CRAN.R-project.org/package=ABM}, +} + +@Manual{abmR, + title = {abmR: Agent-Based Models in {R}}, + author = {Benjamin Gochanour and Javier Fernandez-Lopez and Andrea Contina}, + year = {2023}, + note = {R package version 1.0.9}, + doi = {10.1111/2041-210X.14014}, +} + +@article{gochanour2021abmr, + title = {abmR: An R package for agent-based model analysis of large-scale movements across taxa}, + author = {Gochanour, Benjamin and Fern{\'a}ndez-L{\'o}pez, Javier and Contina, Andrea}, + journal = {bioRxiv}, + pages = {2021--09}, + year = {2021}, + publisher = {Cold Spring Harbor Laboratory}, + doi = {10.1101/2021.09.15.460374} +} + +@Manual{cystiSim, + title = {cystiSim: Agent-Based Model for Taenia_solium Transmission and Control}, + author = {Brecht Devleesschauwer and Uffe Christian Braae}, + year = {2016}, + note = {R package version 0.1.0}, + url = {https://CRAN.R-project.org/package=cystiSim}, +} + +@Manual{villager, + title = {villager: A Framework for Designing and Running Agent Based Models}, + author = {Thomas Thelen and Gerardo Aldana and Marcus Thomson and Toni Gonzalez}, + year = {2022}, + note = {R package version 1.1.1}, + url = {https://CRAN.R-project.org/package=villager}, +} + +@Article{RNetLogo, + title = {{RNetLogo}: An {R} Package for Running and Exploring + Individual-Based Models Implemented in {NetLogo}}, + author = {Jan C. Thiele and Winfried Kurth and Volker Grimm}, + journal = {Methods in Ecology and Evolution}, + year = {2012}, + volume = {3}, + number = {3}, + pages = {480--483}, + doi = {10.1111/j.2041-210X.2011.00180.x}, +} + +@article{meyerEpiworldRFastAgentBased2023, + title = {{{epiworldR}}: {{Fast Agent-Based Epi Models}}}, + shorttitle = {{{epiworldR}}}, + author = {Meyer, Derek and Vega Yon, George G}, + year = {2023}, + month = oct, + journal = {Journal of Open Source Software}, + volume = {8}, + number = {90}, + pages = {5781}, + issn = {2475-9066}, + doi = {10.21105/joss.05781}, + urldate = {2023-10-04} +}