mrc-ide / squire

SEIR transmission model of COVID-19. Documentation at:
https://mrc-ide.github.io/squire/
Other
50 stars 28 forks source link

consider changing the way we do seeding given we're calibrating to small numbers of deaths #50

Closed cwhittaker1000 closed 4 years ago

cwhittaker1000 commented 4 years ago

Currently we seed with 1 person in each of IMild, ICase1 and ICase2 per age-group, so a total of 51 starting infections.

That potentially means we end up in a situation where we have like 50 starting infections, one of whom will probably die quite soon (one of the older people). I think this will throw our calibration off (or at least, lead us to systematically estimate the epidemic to have started sooner than it did) - any suggestions for how to change this.

We could randomly seed say 4 individuals (2 IMild, 2 ICase1) in random age-groups each time the model is ran? What do people think?

OJWatson commented 4 years ago

So the spatial approach went for exponentially increasing seeding events starting in early January such that it then aligned with the deaths seen on a given date. We are sort of doing the later bit, but we can be more nuanced with the seeding.

I think if we assume that seeding would happen either from a national returning, or a visitor infecting an individual. Both situations will potentially be skewed towards middle ages as opposed to youngest and oldest ages. So draw from something vaguely normal with a mean on middle age group. Then surely just place these individuals in the exposed class and let their age dependent probability decide their fate.

Or just scrap the age bit and just choose random age but still place them in E? I'll check the speed in our sims vs the spatial to see what seems sensible

cwhittaker1000 commented 4 years ago

I think your suggestion of a normal distributed with mean over age 40, with sd of say 10 years and then taking a few draws (say 5 or 10) and placing these individuals into the relevant exposed class age-group sounds like a great bet!

cwhittaker1000 commented 4 years ago

Spoke to @patrickgtwalker he suggested also that it worth incorporating uncertainty over the initial seeding number as well. Something that would look like this:

number_seeding ~ uniform(min = 5, max = 50)
seeds_per_age_group ~ multinomial(number_seeding, p = c(0.25, 0.25, 0.25, 0.25)

where the age groups would be 30-35, 35-40, 40-45, 45-50 (or similar, basically to capture what we know about travellers being the highest risk groups)

cwhittaker1000 commented 4 years ago

@OJWatson I can get on doing this today if that sounds alright? I'd like to get better acquainted with the calibrate function anyway!

cwhittaker1000 commented 4 years ago

Solved (I think) by the additions in https://github.com/mrc-ide/squire/pull/54 - can you review and let me know if there's anything else you think we should add please! :)