2019年年底,一场突如其来的传染病席卷中国湖北武汉,新型冠状病毒感染的肺炎疫情悄然蔓延,从武汉波及全国,牵动人心。受到B站某UP主仿真程序的启发,想通过计算机仿真实现一个更加真实的病毒传播仿真模型,下面是我的仿真模型的基本介绍和模型演示。

1、SEIR模型


图片来源:知乎-信号处理工程师的日常

SEIR模型在SIR模型的基础之上新增加了一个潜伏者(Exposed),这和新冠病毒实际情况更加符合,易感染人群在一开始会经历潜伏期,一段时间之后才出现症状,李兰娟院士认为:潜伏期患者也有可能具有传染性。潜伏者按照一定概率转化为感染者,因此,SEIR微分方程为:


SEIR微分方程

上式中α对应的感染概率,β对应的是潜伏者转换为感染者的概率,γ对应的治愈概率,r是接触的人数。该方程实质上反映的是易感染者S(t)、潜伏者E(t)、感染者I(t)、康复者R(t)单位时间变化数量的随时间t的变化情况,它们之间会相互影响,下面为迭代形式:


SEIR迭代方程

2、模型假设

  • 新型冠状病毒主要的传播途径还是呼吸道飞沫传播和接触传播,气溶胶和粪—口等传播途径尚待进一步明确。通过流行病学调查显示,病例多可以追踪到与确诊的病例有过近距离密切接触的情况,因此,模型假设只有接触传播一种传播途径。
  • 为了简化模型,模型假设感染者不会死亡,只会传染其他易感染者或者被隔离并治愈。
  • 模型假设康复者体内含有抗体,不会再感染病毒。
  • 模型假设潜伏者没有被收治,感染者会被收治,被收治的感染者会一直占用医院隔离区域
  • 模型假设被隔离的感染者无法再感染其他人
  • 模型假设患者只能通过医院收治再被治愈

3、模型参数

参数 说明 类型
population 总人数 整数
hospital-patient-segregation-area 医院隔离区域 整数
human-flow-range 人们的活动最大范围 整数
infection-rate 感染概率 浮点数
transform-rate 潜伏者转换为感染者的概率 浮点数
recovery-rate 康复概率 浮点数
initial-infectious-num 初始感染人数 整数
latent-time 潜伏期 整数
receive-cure-response-time 开始收治病人的延迟时间 整数
receive-rate 收治效率 浮点数

4、模型运行

我以“为什么要进行自我隔离”问题为例来演示模型的运行,也可以通过web版模型在浏览器中自行尝试其他实验。
假设有以下三种情形:a、人们都满世界乱跑、b、人们每天只见街坊邻居、c、人们宅在家只和家人呆在一起

这三种情形通过human-flow-range参数来模拟,human-flow-range是相对每个人家庭位置的活动范围,abc分别对应human-flow-range的值为50、10、2。下面为各主体人数变化情况


a:human-flow-range = 50


b:human-flow-range = 10


c:human-flow-range = 2

通过对比仿真绘图发现,人们如果不进行隔离而去接触许多人的话,被感染的人数峰值会大很多而且会提前,如果大家都减少活动范围,自己宅在家中,潜伏者和感染者那两条线就几乎消失了,这就是为什么说,在病毒蔓延之际,采用自我隔离的方法是控制疫情最有效的措施之一。

5、模型优化

该仿真模型基本符合SEIR模型的运行结果,并且设置一些基本参数,实际上还可以对模型进行优化,实现一些更加复杂的仿真,比如:

  • 已经发现,各个年龄段的人都可能被感染新冠病毒,被感染的主要是成年人,其中老年人和体弱多病的人似乎更容易被感染。儿童和孕产妇是新型冠状病毒感染的肺炎的易感人群。模型需要提现出不同的人群之间的差异,比如这里所说的“年龄”
  • 本模型人口分布采用的是随机分布,还可以构建更加复杂的人口分布,比如不同密集程度的人口分布,人口越密集的地方,像城市,病毒蔓延的速度会比人烟稀少的地方更快一些

6、参考链接

计算机仿真程序告诉你为什么现在还没到出门的时候!!!
简单算算,你宅在家里究竟能为抗击肺炎疫情做出多大贡献?
在家宅着也能抵抗肺炎!玩一玩SEIR传染病模型


源代码(提供nlogo版和web版):https://github.com/dpoqb/netlogo_SEIR_2019

SEIR传染病模型Netlogo仿真程序相关推荐

  1. 【Python数学建模】SEIR传染病模型模型延伸-SEIDR模型(一),加入疫苗接种、政府管控、病毒变异等因素的影响

    目录 一. SEIR传染病模型 二. SEIR模型的延伸--SEIDR模型 三. 模型延伸--影响因素1:疫苗接种 四. 模型延伸--影响因素2:政府管控 五. 模型延伸--影响因素3:病毒变异 写在 ...

  2. R语言应用实战-基于R浅谈SEIR传染病模型以以及马尔萨斯,logistic模型(推导过程和源代码)

    前言 关于传染病SEIR模型,接下来我们分为以下几块内容讨论:一传染病的数学模型原理,二.R语言代码实现,三.常见错误以及相关其他模型的讨论(马尔萨斯模型和logistic模型). 以下是我为大家准备 ...

  3. 瘟疫模拟相关知识总结(传染病模型+马尔可夫链)

    瘟疫模拟相关知识总结 总览 模型 SI模型 SIS模型 SIR模型 SEIR模型 马尔可夫链 简介 理解 举个栗子 需要注意 实验设计 实验群体:人 实验思路 代码搭建(暂) 社区类(Communit ...

  4. NetLogo学习笔记5 —— 物种与传染病模型

    NetLogo学习笔记5 -- 物种与传染病模型 (模型经过一些修改,与标准SIR模型有些出入) 在上一篇文章,我们学习了随机选择.伪并发.ifelse和of语法.实现了用于解释隔离现象的谢林模型 这 ...

  5. 数学建模清风第一次直播:传染病模型和微分方程拟合

    学习网址:课件下载 数学建模清风第一次直播:传染病模型和微分方程拟合 数学建模清风第二次直播:模拟退火算法 数学建模清风第三次直播:excel在数学建模中的应用 博客笔记: 数学建模清风第一次直播:传 ...

  6. 微分方程(人口预测与传染病模型)

    一.定义 微分方程:含导数或微分的方程 微分方程的阶数:所含导数或微分的最高阶数,如y'''+2y''-2x=0是三阶微分方程 微分方程的解:使得微分方程成立的函数 例如y'-2x=0的解可以为x²或 ...

  7. 传染病模型(1)——SI模型及matlab详解

    前言 常见的传染病模型按照具体的传染病的特点可分为 SI.SIS.SIR.SIRS.SEIR 模型.其中"S""E""I""R&q ...

  8. 基于SEIR微分方程模型对疫情传播的简单预测

    目录 一.模型的建立 传染病模型概念 模型假设 SEIR模型 模型中涉及的函数S(t).E(t).I(t).R(t) 更改后的微分方程 二.模型的求解 三.模型的缺点 祝语 随着疫情的再次爆发,全国疫 ...

  9. sirs模型_数学建模常用算法——传染病模型(一)SI模型

    今天,就和大家聊一聊传染病模型.说实话是有点跑题了,毕竟这是算法的专辑,不过最近有不少同学都在做传染病传播方面的题目,所以就决定是它了. 传染病的传播模型,是以传染病的传播速度.空间范围.传播途径.动 ...

最新文章

  1. 炸裂!这些大厂跪求的人才太牛了!
  2. 听说你想去大厂看学姐,带你看看京东软件产品经理岗长啥样?
  3. 成人教育还是K12,对网易有道来说都很难
  4. 经典项目|手撸一个高质量RPC框架
  5. java解析url字符串,将字符串解析为URL
  6. mysql操作xml字段_SQL XML 字段操作
  7. nginx集群_windows环境下搭建简单Nginx+Tomcat集群
  8. python while true_Python天坑系列(一):while 1比while True更快?
  9. 2021杭州·云栖大会来了!门票免费预约!
  10. 设置devenv命令的启动版本
  11. 遍历所有点的最短路径matlab_运筹学实验8 最短路的求解
  12. 天津工业大学19年计算机考研大纲,天津工业大学2019考研《计算机原理及接口技术》复试大纲...
  13. 使用Myvatis Generator自动创建项目代码
  14. 「目标检测算法」连连看:从Faster R-CNN 、 R-FCN 到 FPN
  15. Android烂笔头
  16. PHP程序员开发win32应用程序之梦
  17. 加一度分享:快手PK抖音,谁更有优势
  18. 使用python批量统计小说字数
  19. 银河linux看版本,下载Linux客户端 - 银河云盘 - 银河证券
  20. SpringBoot下载Excel文件,解决文件损坏问题

热门文章

  1. 三菱4轴控制伺服案例,三菱PLC FX3U加三菱1PG定位模 块控制4个松下伺服,有完整的注释,结构清晰明了。伺服控制程序JOG HOME 定位 全部写成了功能块FB .你可以直接拿过去用
  2. java画bezier曲线_java 画的4个点的Bezier曲线
  3. K8S故障排查指南:部分节点无法启动Pod资源-Pod处于ContainerCreating状态
  4. springboot驾校报名系统 微信小程序
  5. Electron 主进程、渲染进程及进程间的通信
  6. cc许可_免费的公共领域和CC0许可图片的16个来源
  7. Nim游戏 —— 巴什博弈
  8. 《Android Studio 实战》总结一
  9. 数据库原理及应用(MySQL版)MySQL实验指导参考答案(实验一到实验八)
  10. python在遥感中的应用_Python在遥感中的应用——导言