财新传媒
位置:博客 > 万钊 > 考虑了疫苗的SEIR模型的初步探索及Python实现

考虑了疫苗的SEIR模型的初步探索及Python实现

2020年终于过去,展望2021年,新冠疫情仍然是核心变量。不过与一年前不同的是,我们现在有快速检测病毒的试剂,有精准溯源的基因组测序,有科学防控的抗疫方法,而且最终战胜病毒的最重要手段—疫苗,已经研发成功并陆续接种。
本文尝试在经典的SEIR模型中,纳入疫苗的作用。具体而言,本文的模型,试图纳入以下三个因素:
病毒有潜伏期,即exposed,用E表示,这是经典的SEIR模型;
潜伏期病人也有传染性,但是传染能力低于感染者;
易感人群开始接种疫苗,疫苗的免疫作用在0-1之间。
模型的基本参数设置
模型将人群分为四大类,分别是:
S: susceptible,易感者;
E: exposed,潜伏者;
I: infected,感染者;
R: recovered,康复者。
模型的核心参数为:
:感染者的感染率
:潜伏者相对于感染者的感染率,是0-1之间的一个数字
:易感人群的疫苗接种率
:疫苗的免疫保护能力
:潜伏者变成感染者的比例
:感染者恢复的比例
模型的微分方程形式
模型的四个个核心公式分别是:
感染者向易感者(未打疫苗)传染的速度:
潜伏者向易感者(未打疫苗)传染的速度:
感染者向易感者(打疫苗但未获得免疫能力)传染的速度:
潜伏者向易感者(打疫苗但未获得免疫能力)传染的速度:
完整的微分方程模型如下:
 
模型的实际数据拟合和Python实现
从我们重点监测的几个海外经济体的新增病例来看,出现了变异病毒的英国的新增病例数,确实出现了明显增长,但是近期似乎出现了短期拐点。出现了变异病毒的南非的新增病例数也有较快增长,而美国的新增病例数也重新抬头,显示传播速度更快的变异新毒株,可能是近期部分地区疫情加重的重要原因。
我们在文中,用美国2020年9月份之后的第三轮疫情数据,来拟合SEIR模型。即下图中红色竖线右侧的疫情数据。
首先导入需要的包:
import pandas as pd
import numpy as np
from scipy import integrate, optimize
import matplotlib.pyplot as plt
定义SEIR模型:
# define SEIR model
def SEIR_model(Y,t,beta,q,a,sigma,epsilon,gamma):
    S,E,I,R = Y
    dS = - beta * S * (1-a) * I / N - beta * S * (1-a) * q * E / N - beta * a * S * (1-sigma) * I / N - beta * a * S * (1-sigma) * q * E / N - sigma * a * S
    dE = beta * S * (1-a) * I / N + beta * S * (1-a) * q * E / N + beta * a * S * (1-sigma) * I / N + beta * a * S * (1-sigma) * q * E / N  - epsilon * E
    dI = epsilon * E - gamma * I
    dR = sigma * a * S + gamma * I
    return dS,dE,dI,dR
定义拟合方程:
def fit_odeint(x,beta,q,a,sigma,epsilon,gamma):
    return integrate.odeint(SEIR_model, N0, x, args=(beta,q,a,sigma,epsilon,gamma))[:,2]
给定初始值:
population = float(320000000)
N = population
y = np.array(covid19['2020-09-13':])[:,0]
T = np.arange(len(covid19['2020-09-13':]))
I0 = y[0]
E0 = I0/3
R0 = 24987
N0 = population - E0 - I0 - R0, E0, I0, R0
拟合方程:
popt, pcov = optimize.curve_fit(fit_odeint, T, y, bounds=([0,0,0,0.75,0,0],[np.inf,1,np.inf,0.9,np.inf,np.inf]),maxfev=500000)
fitted = fit_odeint(np.array(list(range(1,200))), *popt)
从模型的初步结果上看,只要保持现有防疫措施和力度,并稳步推进疫苗的接种工作,美国的疫情有望见顶。
本文仅为笔者的初步探索,考虑到传染病的影响因素非常多,而且有效再生数随着政府的防疫措施、隔离情况以及疫苗接种情况而变,因此本文结论仅作参考。
 



推荐 0