Difference between revisions of "SEIVAgent IBM Epidemic Simulator"
Line 42: | Line 42: | ||
** '''Log Off/On.''' Disables Report Window reporting. | ** '''Log Off/On.''' Disables Report Window reporting. | ||
*'''Simulator Settings.''' Below is a table associating sliders to parameters described in Table 1 in the paper: | *'''Simulator Settings.''' Below is a table associating sliders to parameters described in Table 1 in the paper: | ||
::{| | ::{| | ||
|% Mortality* || α | |% Mortality* (MOR)|| α | ||
|- | |- | ||
|Transmission Parameter* || β | |Transmission Parameter* (XMT)|| β | ||
|- | |- | ||
|Environmental Persist.* || η | |Environmental Persist.* (PST)|| η | ||
|- | |- | ||
|Within-host Replication* || λ | |Within-host Replication* (INV)|| λ | ||
|- | |- | ||
|Median Latent Period* || σ<sub>E</sub> | |Median Latent Period* (MLP)|| σ<sub>E</sub> | ||
|- | |- | ||
|Median Infections Period* || σ<sub>I</sub> | |Median Infections Period* (MIP)|| σ<sub>I</sub> | ||
|- | |- | ||
|Population Size || <var>N<sub>0</sub></var> | |Population Size (POP)|| <var>N<sub>0</sub></var> | ||
|- | |- | ||
|Contacts per unit time|| κ | |Contacts per unit time (CPT)|| κ | ||
|- | |- | ||
|Mutation Rate || μ | |Mutation Rate (MUR)|| μ | ||
|- | |- | ||
|Abruptness of Waning || σ | |Abruptness of Waning (AOW)|| σ | ||
|- | |- | ||
|Cross immunity || c<sub>i,j</sub> | |Cross immunity (CIM)|| c<sub>i,j</sub> | ||
|- | |- | ||
|Waning Half-Life || t<sup>half</sup> | |Waning Half-Life (WHA)|| t<sup>half</sup> | ||
|- | |- | ||
|Seas. Trans. Perturb. || δ | |Seas. Trans. Perturb. (STP)|| δ | ||
|- | |- | ||
|Seas. Trans Shift || θ | |Seas. Trans Shift (STS)|| θ | ||
|- | |- | ||
|Seas. Trans Period || k | |Seas. Trans Period (PER)|| k | ||
|- | |- | ||
|Infect. Prob. 1/2 Contacts || p<sup>half</sup> | |Infect. Prob. 1/2 Contacts (IPC)|| p<sup>half</sup> | ||
|- | |- | ||
|Entropy (log<sub>2</sub>) of Strain Count || n | |Entropy (log<sub>2</sub>) of Strain Count (ENT) || n | ||
|- | |- | ||
|Shedding || ζ | |Shedding (SHD)|| ζ | ||
|} | |} | ||
: The three-letter "airport codes" are used to reference these parameters from the API. The *-ed parameters are range values from which a parameter is selected if operating in Random Mode. Ranges can be eliminated by setting the top and bottom range endpoints to be the same. |
Revision as of 20:28, 17 June 2021
Overview
The SEIVAgent Simulator is software to accompany Getz, et. al.,Adaptive vaccination may be needed to eliminate COVID-19: Results from a runtime-alterable strain-drift and waning-immunity model, https://doi.org/10.1101/2021.06.07.21258504. Complete documentation for the application is contained in the latter. This User Guide provides general instructions for using the program, together with some example runs from the paper.
Using SEIVAgent
SEIVAgent is a stochastic model simulating an epidemic spreading over a population of individuals over some time period. Individuals states include S (susceptible), E (exposed), I (infectious), V (vaccinated, recovered) and D (dead). A set of 18 parameters govern the epidemic over a course of time units (days, weeks, etc.)
The program models both the initial infection and emerging variants. Each individual is currently in some state with respect to each of the variants. Variants are numbered 0 to 2n - 1 for some fixed n.
SEIVAgent is initialed with a given population size and a single individual in state I with respect to the initial strain (variant 0). All other individuals are in state S.
The program executes as a series of time steps. At each time step new susceptible and recovered individuals may be exposed to some strain. Each individual can only be exposed and infected with respect to one single strain at a time. Exposed individuals become infectious and infectious individuals either recover or die.
Governing the progress of individuals through the epidemic are probabilities that are computed using the parameter set. Full details of the algorithm are provided in the paper. Along with these parameters, the user may set up a vaccination protocol, which is governed by parameters contained on the vaccination page (see below).
The program implements some novel features designed to provide expressiveness and promote experimentations. These include an API available for both on-board and remote access. The second feature is a set of runtime alterable modules (RAMs) that manage changes to the basic algorithm in a safe environment.
On start-up, SEIVAgent restores the settings from the previous sessions. Settings may be saved and restored in an XML file. In addition, pathogen settings may be saved independently and used with other parameter sets.
The Main Dashboard
The main dashboard provides sliders for entering parameters, controls for operating the program, and output in the form of graphs and a current status report. It also provides controls for viewing the secondary frames containing additional graphs; pathogen settings; vaccination settings and status; agent status; API access; and RAM management.
- Settings Open/Save. Saves the current settings to an XML file for subsequent reloading. Settings include all parameters, vaccination settings and pathogen properties.
- Pathogen Open/Save. Saves pathogen properties for subsequent reloading, in particular with a different set of parameter/vaccine settings.
- Data Save. Saves the results of a run to a comma-separated-values file for use in a spreadsheet.
- Report Window. Shows the changes occurring over the most resent time step.
- Random Number Generator Seeds. Seed values for separate RNGs used to select parameters and during runtime. If left blank RNGs operate unseeded.
- Bar Graph. Shows the current state (SEID) of the total population.
- Time Series. Shows the evolution over time of the state of the population (SEIV together with ΔI+ representing positive change in infectious population, and ΔD representing number of deaths in the last time period).
- Operating Controls. Reset, Step, and Run. The latter requires the number of steps to be entered in the textfield. The number in the textfield will count down as the program traverses the time steps. Run can be interrupted and continued to the end of the number of prescribed steps.
- Secondary Dashboard On/Off. Opens/closes secondary dashboards (described below). These include:
- Line On/Off, Bar On/Off. Time series and bar population graphs broken down by pathogen.
- V On/Off. Vaccine Dashboard.
- P On/Off. Pathogen Dashboard.
- A On/Off. Agent Dashboard.
- Intern On/Off. Internal Values Display.
- Op On/Off. RAM Operator Redefinition Frame.
- S On/Off. Direct API Scripting and Monitoring.
- JS On/Off. Javascript API Scripting.
- Log Off/On. Disables Report Window reporting.
- Simulator Settings. Below is a table associating sliders to parameters described in Table 1 in the paper:
% Mortality* (MOR) α Transmission Parameter* (XMT) β Environmental Persist.* (PST) η Within-host Replication* (INV) λ Median Latent Period* (MLP) σE Median Infections Period* (MIP) σI Population Size (POP) N0 Contacts per unit time (CPT) κ Mutation Rate (MUR) μ Abruptness of Waning (AOW) σ Cross immunity (CIM) ci,j Waning Half-Life (WHA) thalf Seas. Trans. Perturb. (STP) δ Seas. Trans Shift (STS) θ Seas. Trans Period (PER) k Infect. Prob. 1/2 Contacts (IPC) phalf Entropy (log2) of Strain Count (ENT) n Shedding (SHD) ζ
- The three-letter "airport codes" are used to reference these parameters from the API. The *-ed parameters are range values from which a parameter is selected if operating in Random Mode. Ranges can be eliminated by setting the top and bottom range endpoints to be the same.