Interventions¶
Pre-defined interventions¶
The following interventions are implemented (along with the integer value that one needs to provide to run them).
Code | Identifier for intervention |
---|---|
0 | no_intervention |
1 | case_isolation |
2 | home_quarantine |
3 | lockdown |
4 | case_isolation_and_home_quarantine |
5 | case_isolation_and_home_quarantine_sd_70_plus |
6 | lockdown_fper_ci_hq_sd_70_plus_sper_ci |
7 | lockdown_fper |
8 | ld_fper_ci_hq_sd65_sc_sper_sc_tper |
9 | ld_fper_ci_hq_sd65_sc_sper |
10 | ld_fper_ci_hq_sd65_sc_oe_sper |
User-defined interventions¶
The json file for specifying the intervention is expected to be an array of dictionaries. Here is an example that we used in one of our reports:
Note: For CALIBRATION_DELAY
many days, the simulator runs no-intervention and then starts implementing the intervention according to the definition provided in the json file.
[
{
"num_days": 24,
"compliance": 0.6,
"compliance_hd": 0.4,
"lockdown": {
"active": true
}
},
{
"num_days": 22,
"compliance": 0.6,
"compliance_hd": 0.4,
"lockdown": {
"active": true
},
"mask_factor": 0.8
},
{
"num_days": 17,
"compliance": 0.6,
"compliance_hd": 0.4,
"lockdown": {
"active": true
},
"social_dist_elderly": {
"active": true
},
"mask_factor": 0.8
},
{
"num_days": 14,
"compliance": 0.6,
"compliance_hd": 0.4,
"community_factor": 0.75,
"case_isolation": {
"active": true
},
"home_quarantine": {
"active": true
},
"social_dist_elderly": {
"active": true
},
"school_closed": {
"active": true
},
"mask_factor": 0.8
},
{
"num_days": 153,
"compliance": 0.6,
"compliance_hd": 0.4,
"community_factor": 0.75,
"case_isolation": {
"active": true
},
"home_quarantine": {
"active": true
},
"social_dist_elderly": {
"active": true
},
"school_closed": {
"active": true
},
"mask_factor": 0.8,
"trains": {
"active": true,
"fraction_forced_to_take_train": 1
}
},
{
"num_days": 1,
"compliance": 0.6,
"compliance_hd": 0.4,
"community_factor": 1.0,
"case_isolation": {
"active": true
},
"home_quarantine": {
"active": true
},
"social_dist_elderly": {
"active": true
},
"school_closed": {
"active": true
},
"mask_factor": 0.8,
"trains": {
"active": true,
"fraction_forced_to_take_train": 1
},
"neighbourhood_containment": {
"active":true,
"leakage": 1.0,
"threshold": 0.001
}
}
]
If the simulator is running for more days than specified in the intervention file, the intervention defined in the last element of the array is used for all subsequent days.
The simulator requires the num_days
key to specify the number of days that a specific intervention is to be used before moving on to the next block. However, it is more convenient to just specify start and end dates. I use a helper script to build this file from a template the specifies start and end dates.