I’m concerned that we haven’t quite got our heads round what the dynamics of the long-term endemic state for covid will feel like, and that some of the intuitions we built up in the epidemic phase won’t age well. I know I struggle with this at times. So, I built a model 😉 1/n
This time it’s just a “toy” model. Which means it’s not designed to forecast the endemic state in an accurate way – we don’t really have the data to do that yet. It’s just designed to illustrate the shapes and patterns that might arise. I hope it helps you, as it did me. 2/n
It’s just a very basic SIR model, for those of you familiar with that, and it covers a single sheet of Excel. In fact you can see it here – there’s more cells further down, but they’re just a copy of the earlier cells, extended further out into time. 3/n
I’ve set this up with some vaguely plausible parameters (but, as noted, not making any claims to accurate forecasts). I haven’t included births & deaths in this model because the waning rate (at ~10% per month in this instance) is large enough that shouldn’t matter much. 4/n
And with those assumptions, our initial projection looks like this. As you can see, there’s an initial epidemic wave, which then settles down gradually (over a couple of years) via steadily reducing oscillations, towards a steady equilibrium of cases. 5/n
With a bit of maths, we can work out what that steady infection level will be. To have R=1 we must be at the herd immunity threshold, which is 1-1/R0. And in order for immunity to be stable at that level, we need the rate of infection to be the same as the rate of waning. 6/n
Skipping over the algebra, the stable level works out as:
γ.w.(1-1/R0).P / (γ + w)
where γ = recovery rate, w = waning rate, P is population. You’ll note the (1-1/R0) term, which implies the stable infection level is proportional to the HIT – this will be important later. 7/n
Don’t worry if you’re not following the maths; what’s important is that there is a formula, not exactly what it is. And the implication of this is that we can’t change the equilibrium level just by starting at a different value – we have to change one of the parameters. 8/n
So let’s try adjusting the waning rate – if we make this faster, then the stable level is higher (as you’d expect), and the model settles down quicker into its equilibrium state. Slower waning will have the reverse effect: a lower stable level, and longer transition. 9/n
We can also try changing R0 – let’s say this is via a permanent change to behaviour. If we adjust our behaviour to reduce transmission by 25% (bringing our R0 down from 4 to 3, in this model) then we get this. The epidemic peak is much smaller, but it’s hard to see… 10/n
…much impact on the stable endemic level. Actually, there is an impact, but it’s a bit hidden in the oscillations, and it’s only about 11% reduced. This comes from the (1-1/R0) term: if we reduce R0 from 4 to 3, we’re reducing the HIT from 75% to 67%, which is one-ninth. 11/n
So that’s a bit disappointing; we’ve reduced R by 25%, but the stable case rate only comes down by 11%. That’s not to say we shouldn’t do it – if the cost of that reduction is small and non-restrictive (e.g. better ventilation?) it may still be worthwhile. 12/n
But we should be realistic, and note that large changes in R will be needed to have a big impact on the stable case level. And if we’re starting with a higher R0 (vs. this model’s R0=4) then this effect is even more pronounced. 13/n
We should also examine the case for more temporary controls. Let’s suppose for a second that we’re already in the stable position, and set up the model in that way. The (rather boring) result looks like this: 14/n
Now let’s introduce some mild controls, which reduce R by 25%, but only between days 100 and 200 in the model (so for about 3 months). As you can see, this reduces infections temporarily, but the cases swing back up when we remove the controls. 15/n
The total number of cases over the period is hardly changed at all, and we have to endure higher peaks. So temporary controls don’t look very attractive. The problem with temporary controls is that while the controls are in force we are suppressing the infection rate. 16/n
And unless we’re willing to make those controls permanent, we’re building up an “immunity debt” that has to get repaid at some point. This is why the case rates swing back when we release the controls – we need more immunity in the system to restore the higher equilibrium. 17/n
So a better method of reducing the stable level is to take action to *build* immunity instead. Fortunately we have a means to do that: vaccination. I’ve added that into the model, moving people directly from the S to the R state, without going through I. 18/n
If we assume we can vaccinate everyone once a year, the result in this model (see caveats below) is to reduce the equilibrium level by about 25%. Again, with a bit of maths we can work out that the reduction is a factor of v/w(R0 - 1) where v = vaccination rate. 19/n
So as we vaccinate more, that reduction increases. And if we vaccinate enough, then maybe we can get v > w(R0 – 1) and then the stable rate of infection goes to zero ie. complete suppression. With this model, we have to vaccinate everyone 4 times a year to achieve this…. 20/n
…and please note that’s with a 100% effective vaccine, and infection that also gives 100% protection (prior to waning). And we’re treating the vaccine as being all-or-nothing – see thread below for explanation – which is probably optimistic. 21/n
A slightly more realistic option, but still challenging, might be to vaccinate everyone in a 3-month period, but then take a 9-month break before the next vax boosters. Now we get oscillations again, because those boosters keep knocking the system out of equilibrium. 22/n
The overall result is worse than if we’d spread those vaccinations evenly over the year. So, in the endemic state, it looks like vaccinating slowly and smoothly is usually better than quickly and with breaks in between. BUT this assumes that we’re in a stable… 23/n
…state to start with. And we know that respiratory viruses such as covid tend to be seasonal. So we need to build that into the model. But this thread is long enough as it is, so I’m going to leave that for another day (hopefully tomorrow!). Stay tuned for Part 2… /end
Are you ready for Part 2 of the endemic “toy” model thread? I thought so. To pick up the story, we started yesterday (see thread below) with a non-seasonal model, and explored the effects of adding in controls and vaccines. Now we need to explore the impact of seasonality. 1/n
To start with, let’s see what happens if we inject some mild seasonality into the equilibrium model – here with a +10% variation in R during winter, and -10% in summer. (so about 20% overall peak-to-trough variation). With this, we get gentle oscillations in cases: 2/n
Now let’s dial up the seasonality a bit – to 20% either way. Unsurprisingly, the waves get bigger. 3/n
A few people have asked me what I think is going to happen next, so with the combination of a small model update and a bit of intuition and logic, here goes. TL;DR: I’m reasonably optimistic about the next 2-3 months, but a bit more worried about the early part of 2022. 1/n
It is clear that England has moved out of the pure epidemic phase, and into a transition that is neither wholly epidemic, nor full endemicity. The dynamics are becoming more endemic-ish (to borrow @ewanbirney’s phrase in his excellent thread) 2/n
…but that doesn’t mean we’ve entered (or are near) a long-term equilibrium – for one thing, we still have a lot of people who’ve never caught covid, and we’re only just completing the vaccine rollout. And there’s a lot we don’t know yet (e.g. on waning rates & boosters). 3/n
OK, so here’s a question: why are case rates so persistently high in older age groups in the North of England? For simplicity here I’m just looking at the 50+, and using three super-regions: North inc Yorkshire, Midlands & East, and London & South. 1/4
You might think it’s just reflecting case rates in the whole population. But it’s not: look here at the same graph for the under-50s, it has quite a different pattern, with the North very similar to the Midlands through August (and to the South until the last few weeks). 2/4
One possible explanation is that it reflects lower immunity in the older Northern groups – but the vax rates have been good, and if we look at a longer time horizon, there’s not an obvious difference in attack rates (the January peak is lower, but the autumn one was higher). 3/4
A few people have asked how we managed to have such a stable period in England during August, with cases apparently stuck around 25k per day, and R pretty close to 1. After all, case rates in an epidemic tend to go up and down in waves, not stay at roughly the same level. 1/10
One possible answer is that the growing immunity from vaccines and infections (which would normally be expected to pull R and cases down) was being offset by waning of the existing stock of immunity, causing case rates to stabilise in a sort of bumpy plateau. 2/10
If that is the case, then August could be seen as an early glimpse of what endemicity might look like, although I don’t think we’re near to finding a long-term equilibrium, and there are several good reasons why August isn’t a good predictor of what that will look like. 3/10
One of the questions I often get in response to my modelling threads (such as last Thursday’s below) is: what does this imply for levels of hospital occupancy with covid? Unfortunately I don’t have a good model of hospital stay dynamics, but helpfully...
…I know a man who does, and @nicfreeman1209 very generously offered to convert my various scenarios for weekly admissions into a corresponding occupancy forecast. So what follows is very much a collaboration on the analysis, but the policy commentary is all mine.
Essentially, Nic’s model uses the known data for hospital admissions and occupancy to estimate a distribution of how long people stay in hospital with covid – here’s some discussion on an earlier version:
Apologies to those of you who’ve been waiting for a model update: I’ve been slowed down a bit by work, start-of-term chaos with the kids, and by trying to organise an U13 girls rugby team. But it’s finally here in its glorious 25-tweet thread detail. Hope you enjoy…. 1/25
The July iteration of my model did an OK job of predicting (at least in “ballpark” terms) the level of hospital admissions over the last couple of months – in fact it’s almost spot-on right now, albeit maybe in the same way that a stopped clock is correct twice a day. 2/25
But that model won’t be a good guide to what happens over the autumn and winter, because it’s missing two significant drivers: waning immunity, and booster vaccinations. So I’ve upgraded the model to include those factors, and am ready to give you the results. 3/25