Pandemic Simulator Technical Paper

Abstract

In this application, we present an agent-based model for simulating the spread of a disease within a closed community. Agent-based models are stochastic, and allow for more versatile changing of parameters, making it easier to simulate real life scenarios. Our agent-based model uses a standard SIR compartmentalization, where individuals are divided into three groups: Susceptibles, Infecteds, and Recovereds. Traditionally, SIR models are implemented using differential equations of the form:

\frac{dS}{dt}=-\beta S I

\frac{dI}{dt}=\beta S I - \gamma I

\frac{dR}{dt}=\gamma I

where \beta and \gamma control the rates at which the infection spreads and the infection is removed, respectively. While our model doesn't use these differntial equations, it does employ the same prinicples, and the values of \beta and \gamma are computed in real time, and displayed to the user. It should be noted, that while the value of \gamma is essentially predetermined by the recovery time (changed in the model settings), the value of \beta is both impacted by the initial settings, and by the decisions made by the user (i.e. closing or opening certain regions of the model).

Given these values, an additional parameter can be computed: R_0, the basic reproduction number. This value represents the number of people, on average, and infected person infects before recovering. This parameter is computed as follows:

R_0 = \frac{\beta}{\gamma}

The value of R_0 is also computed and displayed in real time in the application. Generally speaking, if the value of R_0 is greater than 1, the disease will spread (since each person passes the infection to more than one other person), and otherwise, the disease will die out more quickly. However, due to the stochastic nature of the agent-based model, this is not always the case during experiments. Regardless, higher values of R_0 tend to correspond to larger outbreaks, and lower values correspond to smaller, or a lack of outbreaks. As decribed above, since the value of \beta can change based on real-time decisions, so can the value of R_0 , allowing for varying results for an infinite number of possible series of decisions that could be simulated.

Email me at dchheda@mit.edu for the full technical write-up.

Try out the Model

Additional Resources

Below we've compiled a list of other models that have been developed for the purpose of modeling disease spread.