Epidemiological modeling in StochSS Live!

Abstract Summary We present StochSS Live!, a web-based service for modeling, simulation and analysis of a wide range of mathematical, biological and biochemical systems. Using an epidemiological model of COVID-19, we demonstrate the power of StochSS Live! to enable researchers to quickly develop a deterministic or a discrete stochastic model, infer its parameters and analyze the results. Availability and implementation StochSS Live! is freely available at https://live.stochss.org/ Supplementary information Supplementary data are available at Bioinformatics online.


Introduction
StochSS Live! is the web interface for developing and investigating stochastic models found at https://live.stochss.org. All results can be replicated by importing this repositories and notebooks into StochSS Live!.
The libraries used by StochSS Live! for simulation and analysis are a part of the StochSS suite of software.

Implementing An Epidemiological Model in StochSS Live!
In the following, we describe the epidemiological model we use, and demonstrate how it can be implemented in the StochSS Live! web interface. Then we describe the process of creating a parameter inference workflow for some local COVID19 data.

Model Description
The epidemiological model we implement is an extended version of the SEIRD model that accounts for symptomatic and asymptomatic cases. The involved compartments (species) are: susceptible (S), exposed (E), infected (I), symptomatic (Y), recovered (R), dead (D), and cleared (C). The system can be visualized as: The system evolves according to SEIR dynamics but with a chance of becoming symptomatic after being exposed. We fix the rate at which exposed patients become infectious at 0.16, which represents 6.25 day incubation period and estimate the proportion of patients who become infected vs. symptomatic. This is roughly adopted from a similar model [3]. Specifically, we have the following set of reactions: This model assumes that only asymptomatic transmission is possible, all asymptomatic cases recover, and that all parameters are static.

Implementation
Using this specification, we can implement the model in StochSS Live! in the model creation interface A pre-implemented version of this model with some default parameters can be found here.
In the model creation interface, we can also preview trajectories if we were to consider the model as either discrete stochastic or an ODE model.

Parameter Estimation Worflow using ABC
We estimate the parameters of the model for Santa Barbara and Buncombe counties using the Sciope [4] toolbox, part of the StochSS suite of software which offers model exploration and parameter estimation. A pre-implemented template notebook can be generated by using the "Sciope Model Inference" workflow in StochSS Live!.
The completed workflow is included for Santa Barbara, CA and for Buncombe, NC.

Reading In Data
Data for estimating parameters should be loaded in the data block. The obs_data object should contain the final completed dataset.

ABC Requirements
Sciope implements various algorithms for Approximate Bayesian Computation [5]. To use these, we need to complete the following segments of the notebook: 1. Prior cell 2. Simulator function This function should take in a parameter array and output a simulation from the model that matches the shape of the observed data.

Estimating Parameters and Analyzing Posteriors
The default algorithm we use is Replenishment ABC-SMC [2]. Sciope uses Dask [1] to parallelize inference so we use the StochSS Live! servers to use more processes.
The inference returns a np.array of samples from the the posterior distribution stored in the posterior object. Each sample can be used as a set of parameters in the model to generate further trajectories.
Below, we show the posterior distribution of parameters for Santa Barbara as well as generated data from the model using the posterior samples (posterior predictive).
We note that the presented models do not really indicate a sufficient fit to the data to draw any strong conclusions. For a complete analysis, this process needs to be repeated, changing the model to better capture assumptions about the system. For example, we would expect the infectivity to change over time as policies are implemented and we know that there are non-intrinsic measurement error, such as reporting errors in the data.