Прогноз эпидемии Covid при помощи Python
Всем привет!
Сейчас Covid-19 «сбавил обороты», но не сказал «прощай». Предлагаем сравнить несколько моделей развития пандемии, а также проанализировать распространение болезни среди вакцинированного и невакцинированного населения.
Модель SIR
Одним из самых простых способов описания распространения болезни среди населения является SIR-модель. Она была представлена в 1920 году. С ее помощью можно легко смоделировать эпидемии в больших городах, а также анализировать разные варианты течения эпидемии.
SIR расшифровывается как:
S (Susceptible) – «восприимчивые», еще не переболевшие и подверженные заражению;
I (Infected) – «инфицированные», те, кто на данный момент болеет;
R (Resistant или Recovered) – «защищённые», те, кто выздоровели и больше не подвержены заражению или в некоторых модификациях модели (о которых я расскажу далее) просто «выздоровевшие».
SIR-модель также можно представить в виде графика перехода состояний.
В модели используются два коэффициента: коэффициент beta, который показывает скорость заражения (перехода из восприимчивых в заражённые) и коэффициент gamma, он показывает скорость выздоровления (перехода из заражённых в выздоровевшие).
Математически модель SIR задаётся системой дифференциальных уравнений. В данном случае они говорят о том, что число восприимчивых, инфицированных и выздоровевших меняется с течением времени.
Действительно, в зависимости от коэффициентов скорости заражения и выздоровления число заражённых, инфицированных и выздоровевших меняется в течение времени таким образом, что общее число населения всегда постоянно и равно N = S + I + R.
Реализация модели SIR на Python
Комментарий: данную реализацию можно оптимизировать, здесь она для наглядности приведена в соответствие с системой уравнений.
При параметрах beta = 0.05 и gamma = 0.01 получается следующий график, на котором видно, как в случае появления заражённых вся популяция постепенно переходит в категорию инфицированных, а затем в категорию выздоровевших. В качестве показателей в данной модели используются S = 950 и I = 50.
При увеличении beta этот переход осуществляется быстрее, а при увеличении gamma может получиться так, что не вся популяция переболеет и ее часть так и останется в группе восприимчивых, хотя инфицированных уже не будет (также возможен случай, при котором число выздоровевших будет меньше числа восприимчивых, этот случай говорит о том, что популяция быстрее выздоравливает, чем заражается).
Модель SIR является самой простой моделью и описывает течение пандемии в так называемом «вакууме», не учитывая все важные параметры. Чтобы сгладить этот эффект вакуума и приблизить модель к более реалистичной, предлагаем рассмотреть несколько модификаций.
Модификации модели SIR
Например, в модификации, называемой SEIR появляется дополнительная категория Exposed, которая обозначает то, что заболевание находится в инкубационном периоде.
Также есть ее расширенная модификация SEIRD, где добавляется категория Dead, показывающая сколько человек всего умерло за время пандемии. При добавлении этих категорий в модель добавляются дополнительные параметры (такие как beta и gamma в основной SIR-модели), характеризующие возможность перехода из восприимчивых в инкубационные и из заражённых в умершие.
Еще одной модификацией является модель SIS, в которой инфицированный после выздоровления попадает не в категорию защищённых, а в категорию восприимчивых, то есть может быть повторно заражён.
Дополнительно модель SIR имеет модификации, где учитывается врождённый иммунитет, или ситуации в которых выздоровевший может заражать других.
Модификация SIR - модель SIRVD
Модель SIRVD представляет собой расширенную версию модели SIR. В последнее время SIRVD часто используется в том числе и для моделирования пандемии COVID-19. Например в данной статье https://www.sciencedirect.com/science/article/pii/S0010482521006624 используется SIRVD в комбинации с нейронной сетью для предсказания течения COVID-19, а в этой статье https://www.aimspress.com/article/doi/10.3934/mbe.2022047 используется расширенная версия для оценки эффекта первой и второй дозы вакцины.
В этой модификации помимо восприимчивых, инфицированных и защищённых есть категории:
V (Vaccinated) – «вакцинированные»
D (Dead) – «умершие»
Ее можно представить в виде следующей системы уравнений:
А в виде графика SIRVD выглядит так.
В данной модели категория Resistant в большей степени представляет собой категорию Recovered, так как после выздоровления не приобретается постоянный иммунитет, и становится возможным повторное заражение.
В отличие от SIR модель SIRVD имеет уже пять дополнительных параметров - это beta (скорость заражения), gamma (скорость выздоровления), alpha (скорость вакцинации), sigma (скорость потери иммунитета после перенесенного заболевания), delta (смертность).
Реализация модели SIRVD на Python
Комментарий: данную реализацию также можно оптимизировать, здесь она для наглядности приведена в соответствие с системой уравнений.
Если настроить параметры beta и gamma и количество восприимчивых и инфицированных как в модели SIR, а скорость вакцинации задать на 0.01, то можно увидеть следующую смоделированную эпидемию.
Число вакцинированных приближается к 25% популяции. Здесь видно, что максимальное число заражённых приближается к 300, что составляет почти треть всей здоровой популяции. Число умерших очень высоко и превышает 600.
Если повысить скорость вакцинации в модели, то можно увидеть следующий результат.
Число вакцинированных приближается к 50% популяции. Максимальное число инфицированных не превышает 200 человек, число умерших в сравнении с прошлой моделью снизилось на треть.
P.S.
Таким образом, модели с большей долей вероятности показывают значимую эффективность вакцинации в профилактике с заболеванием - при повышении процента вакцинации среди популяции значительно снижается число инфицированных и умерших. Если вам интересно узнать о более сложных и продвинутых моделях и о применении нейронных сетей для прогнозирования течения COVID-19, пишите в комментариях, ставьте лайки и мы обязательно расскажем об этом в следующих публикациях. Вакцинация помогает быстрее справиться с эпидемией, и является основным методом профилактики заболевания.
Расскажите про различные модификации
Добрый день! Благодарим за интерес к теме.
Расскажем о модификациях в наших следующих статьях.
Вы бы хотели узнать о каких-то конкретных моделях по прогнозированию эпидемии?
можно более развернутую информацию или ссылку ))
Добрый день! Ссылки добавлены.
Что бы вы хотели узнать более развернуто?