grattan / covid19.model.sa2

4 stars 0 forks source link

Contact tracing has little/no effect #75

Closed wfmackey closed 4 years ago

wfmackey commented 4 years ago

The following settings give essentially the same result (20 runs per condition)

perfect_contact_tracing <- 
  repeat_simulation("perfect_contact_tracing",
                    PolicyPars = set_default_policypars(
                      do_contact_tracing = TRUE,
                      contact_tracing_days_before_test = 0,
                      contact_tracing_days_until_result = 1,
                      contact_tracing_success = 1,
                      contact_tracing_only_sympto = FALSE,
                    )
                    )

bad_contact_tracing <- 
  repeat_simulation("bad_contact_tracing",
                    PolicyPars = set_default_policypars(
                      do_contact_tracing = TRUE,
                      contact_tracing_days_before_test = 2,
                      contact_tracing_days_until_result = 5,
                      contact_tracing_success = .5,
                      contact_tracing_only_sympto = TRUE,
                    )
                    )

no_contact_tracing <- 
  repeat_simulation("no_contact_tracing",
                    PolicyPars = set_default_policypars(
                      do_contact_tracing = FALSE)
                    )

contact_tracing <- bind_rows(perfect_contact_tracing, 
                             bad_contact_tracing,
                             no_contact_tracing)

plot_active_cases(contact_tracing, 
                  plot_middle = FALSE, 
                  save_charts = "normal",
                  conditions_levels = c("perfect_contact_tracing",
                                        "bad_contact_tracing",
                                        "no_contact_tracing"),
                  set_colours = c(grattan_yellow, grattan_orange, grattan_darkorange))

image

wfmackey commented 4 years ago

@HughParsonage you said that turning off contact tracing makes case numbers explode, but I cannot see that here.

HughParsonage commented 4 years ago

Sorry I simply misread the chart yesterday: should have said 'spatial distancing'.

wfmackey commented 4 years ago

ah okay. Any idea what is happening with contact tracing here?

HughParsonage commented 4 years ago

The max persons per supermarket used seems quite low (if the default (very low) q_supermarkets is kept as the default).

wfmackey commented 4 years ago

Can you expand on that

HughParsonage commented 4 years ago

As I understand it, you are using max_persons_per_supermarket = 10. If you are using a q_supermarkets value of 1/1000 or thereabouts you are probably not going to trigger any infections, regardless of contact tracing. The main effect of contact tracing will be to isolate some individuals in the household, but that will probably just change the time at which the household members are infected rather than preventing infection entirely.

wfmackey commented 4 years ago

Yep okay thanks that's useful.

wfmackey commented 4 years ago

I should see an effect with eg max_persons_per_supermarket = 100 then, and it's not there:

loose_shops_with_tracing <- 
  repeat_simulation("loose_shops_with_tracing",
                    .repeat = 5,
                    PolicyPars = set_default_policypars(
                      max_persons_per_supermarket = 100,
                      do_contact_tracing = FALSE,
                      contact_tracing_days_before_test = 0,
                      contact_tracing_days_until_result = 1,
                      contact_tracing_success = 1,
                      contact_tracing_only_sympto = FALSE
                      ))

loose_shops_without_tracing <- 
  repeat_simulation("loose_shops_without_tracing",
                    .repeat = 5,
                    PolicyPars = set_default_policypars(
                      max_persons_per_supermarket = 100,
                      do_contact_tracing = FALSE
                      ))

plot_active_cases(bind_rows(loose_shops_with_tracing, 
                            loose_shops_without_tracing))

image

HughParsonage commented 4 years ago

do_contact_tracing = FALSE,

wfmackey commented 4 years ago

idiot

wfmackey commented 4 years ago

Still not looking like there's an effect:

loose_shops_with_tracing <- 
  repeat_simulation("loose_shops_with_tracing",
                    .repeat = 10,
                    PolicyPars = set_default_policypars(
                      max_persons_per_supermarket = 100,
                      do_contact_tracing = TRUE,
                      contact_tracing_days_before_test = 0,
                      contact_tracing_days_until_result = 1,
                      contact_tracing_success = 1,
                      contact_tracing_only_sympto = FALSE
                      ))

loose_shops_without_tracing <- 
  repeat_simulation("loose_shops_without_tracing",
                    .repeat = 10,
                    PolicyPars = set_default_policypars(
                      max_persons_per_supermarket = 100,
                      do_contact_tracing = FALSE
                      ))

plot_active_cases(bind_rows(loose_shops_with_tracing, 
                            loose_shops_without_tracing))

image

HughParsonage commented 4 years ago

So off the top of my head this is because contact tracing only applies to homes and schools. Workplaces would be another possible, relatively straightforward extension. Supermarkets (or "supermarkets") are not presently targets for our contact tracing procedure.

The experience has been workplaces rather than elsewhere has been a source of infection and something where contact tracing should be done, so maybe this shows both the overuse of supermarkets as spreaders and the false absence of contact tracing through workplaces.