王道谊

2020年3月

1.   传播动力学

“道生一,一生二,二生三,三生万物。”  ---《道德经》

所谓“不积跬步无以至千里”,任何变化都是由点滴变化决定并发展起来的。知道所有的微观点滴变化,就能够掌握宏观变化。点滴变化决定并发展成宏观变化这一过程可以用动力学模型描述。点滴变化有时会被忽略,当充分显现时经常会势不可挡。有“风光人不觉,已著后园梅”,更有“山青花欲燃”。今天楼下迎春花开数朵儿,很快就多得数不过来了。

对点滴变化的研究,有两个方面。一个是研究引起变化的原因,这属于特定专业范畴,如研究新冠病毒的S蛋白和ACE2之间的亲和力;另一个方面是研究变化发展规律,从而预判宏观变化态势,这属于传播动力学范畴,如预测传播期、感染人数规模,评估防疫效果等。

传播动力学可见于小道消息传播,和传播者、接收者数量,以及传播者与接收者之间的互动频次有关。

类似的传播动力学还常用于网络信息传播、计算机病毒传播、商品/服务推荐、大型网络故障继发效应等。这里关注传染病。

2.   人群SIR划分

"The beginning of wisdom is the definition of terms."  --- Socrates 

在平静的日子里,大家自由地生活。有个调皮的小伙伴躁动不安,不幸中招,之后是他的亲戚朋友同事,再后来累及整个人群,如下图:

注:橙色表示刚中招,蓝色中招超一天。

考虑一种最简单的情况,新病毒和所有人都有亲和力,即所有人都是易感者,这样可以进行如下分类:

  • 设总人数为N 维持不变,不考虑自然生死和迁入迁出。

  • 染病者治愈后有抗体不会再被感染,称为移出者(百毒不侵者),用集合R 表示(Removeds)。得此病不幸远去者,也归于此类。有些传染病,患者治愈后还可以被传染,那么移出者只包含这些最终不幸的患者。

  • 中招的且没有治愈的人称为感染者(播散病毒者),用集合I(Infectives)表示。

  • 还没有中过招的人称为易感者(小心提防者,用集合S(Susceptibles)表示。愈后无抗体的会重新回到S

  • 某时刻t ,感染者占比为i(t),则感染人数为N·i(t) ; 移出者占比r(t) ,则移出者人数为N·r(t) ;易感者占比为s(t) ,则易感者人数为 N·s(t) 。显然,r(t)+i(t)+s(t)=1

3.   自由传播传染

新病毒在作孽初期,还没有入医生的法眼,医疗机构和防疫部门还没有采取措施,病毒在逍遥地自由传播。不考虑治愈和死亡。

既然是研究点滴变化,我们就取一足够小时间段Δt 。最够小的时间段内感染人数增加可看作线性变化,和病毒散播者(感染者)数量成正比,和单位时间内每人平均有效接触数次数λ 成正比。因为感染者单位时间平均有效接触的λ 次中,接触易感者比例为s(t),所以引起传染的人数为λs(t)。这样可以得到以t 时刻为起点的Δt 内,感染者增加为:

对应的微分方程及其解为:

自由传播,没有考虑治愈情况下,人群分为SI,且最终所有的人都会被感染。上述传播模型称为SI模型。SI模型只是在传染病发生初期有效,可以用来预测病例增加速度的峰值到来时间。λ 值越大,传染性越强,称为日接触率,此时t的单位为天。我们以1000万人口的城市为例,假设第1天,不知什么原因产生了一个突发病人。感染者比例和时间的关系如下图所示,λ 值为0.9时,感染人数超过99%需要24天;λ 值为1.3时,只需要16天。当然,本次新冠的λ 值要小得多。

挖掘λ 值的影响因素对于防疫工作非常重要。总的来讲,可以归结为如下几个方面:

  • 传播途径。古登堡当年铸造的镜子,反射圣物上的反射光的反射光来救赎拿镜子人的罪孽,λ 值会大得惊人。“红眼病”,一见就妒,也不好控制。本次新冠主要是飞沫传染,有效接触距离为几米,“拱手不握手”就差不多避免了。值得注意的是,飞沫传染比体液传播的λ 值大的多,不可小觑。

  • 人们的生活习惯。少聚会、勤洗手,显然可以有效降低λ 值,拥抱和贴面之类的问候,肯定会乐坏了新冠病毒。

  • 隔离强度。要想减少甚至切断感染者和易感人群之间接触,最有效的办法是隔离。正如我们现在享受的居家时光,远程工作、网上学习。对于可敬的医生和各类保障支撑人员,不能居家,只能加强自我防护。

有效接触率λ 能够反映传染病之传染性的强弱,但总让人觉得不够直接。Anderson 等1992年提出了一个定义R0基本再生数)用来反映传染性的强弱。R0定义如下:“the average number of secondary infections produced when one infected individual is introduced into a host population where everyone is susceptible”。在一个全部都是易感者人群中,引入一个感染者引发传染病,R0相当于一段时间内(可以是全部中招后)平均每个患者感染的人数。

套用一句俗话“一传十、十传百”。实际上传染过程是随机的,没这么简单,不过仍然可以部分说明问题。基于“一传十、十传百”,第一天引入一个患者;第二天新感染R0个;第三天新感染R02;...,第k天新感染R0(k-1),共有感染者:

由上式不难看出,R0<1时,传染病会逐渐消亡;R0>1时,传染病会爆发。R0越大,疫情发展会更快。如此看来,用R0值来衡量传染性的强弱更易懂一些。R0的计算可以采用两种方法,一个是根据流行病学调查,统计每个确诊者的密切接触者之中被感染的人数,计算均值得R0;另一种是通过建模计算R0。计算R0是要注意患者人群的差异,患者隔离状态差异等因素。在发病初期,R0会高,后期随着人们认识程度提高,患者被收治隔离的比例提高,R0会显著下降,λ 值也是如此。打败疫情,在数学上就要把R0降到1以下

还是用上面的例子,对于1000万人口的城市,如果R0=3,基于“一传十、十传百”的方式,16天会使全部感染。如下图,大致相当于SI模型中λ 值为1.218对应的情况。

4.   治愈

"Cure Sometimes, Treat Often, Comfort Always."   --- Hippocrates 

在上述SI模型的基础上,我们再考虑救治因素。救治可以有效降低日接触率,同时减少感染者的数量,最终使每天出院的人数大于入院的人数,曙光就不远了。

假设每天治愈患者的比例为μ ,我们先考虑新增病例为0或很少时,现有确诊病例的变化情况。此时每天减少的病人为μ·N·i(t)。进一步简化,假设全部感染后再救治,治愈后不复发。即初始i(t)为1,于是:

不同μ 值对应的i(t)~t 曲线如下图所示,救治水平提高的作用显而易见。

5.   SIR模型

目前在国内基本控制住了,愈后有抗体,专家说会不会复发还有待研究。往好处想,有抗体就不复发了吧,所以治愈人群可以归类到移出者。另外专家说潜伏期也能传染,所以更省事了,不考虑incubation。于是一小时间段内的变化可表示如下:

对应的微分方程为:

上述方程没有解析解,但可以用数值方法计算,简单一点儿可以使用显示欧拉算法,花哨点儿可以使用二阶龙格-库塔法。更多的时候找个工具,直接求。其中λ 值反映传染性强弱,同时也反映该地区对此种传染病卫生防疫能力(卫生水平)μ 值反映该传染病对应的医疗救治水平,包括治疗效果和医疗资源(医疗水平)

我用Excel表模拟了一个显示欧拉格式的微分方程数值解法,考虑如下因素:

  • 1月20日,全国报告确诊病例近300例。这之前,其传染性还不广为人知(1月20日,钟院士答记者问公布“人传人”)。显然这时,λ 值大些,μ 值小些。

  • 1月23日,武汉封城,全国的λ 值明显下降,μ 值略有提升(外省医疗资源相对充足)。

  • 2月初,火神山和雷神山医院交付,方舱医院陆续落成,各地驰援湖北的最美逆行者相继抵鄂,λ 值明显下降,μ 值明显提升。

  • 2月10日左右,武汉全城排查,之后全国新冠肺炎在压制状态下传播,λ 值再次下降,μ 值再度提升。

综合上述因素,利用数值计算解SIR模型对应的微分方程组得”现有确诊病例数随时间“变化曲线,如下图所示(示范一下,别太当真,真正能用的模型需要再认真点儿

传播动力学--SIR模型及其应用相关推荐

  1. 2020-03-22阅读笔记-考虑遗忘机制的企业隐性知识传播SIR模型研究

    本文系阅读上海工程技术大学杨湘浩等人发表在***中国管理科学*期刊上<考虑遗忘机制的企业隐性知识传播SIR模型研究>**所做的笔记,由于本人水品有限,如理解存在偏差,还请批评指正. 1.文 ...

  2. 《改进SIR 模型在社交网络信息传播中的应用》仿真实现

    摘要 基于<改进SIR 模型在社交网络信息传播中的应用>一文中提出的改进SIR模型,使用Matlab进行了仿真实现.另外,基于原文的模型,依据实际话题热度进行了其它仿真和分析. 背景 信息 ...

  3. python代码实现, SIR 模型进行信息传播模拟

    SIR模型是一种常用的信息传播模型,它用来模拟传染病(如冠状病毒)的流行情况.SIR模型包括三种状态: S(Susceptible):易感者,还没有患上传染病的人. I(Infected):感染者,已 ...

  4. SIR模型与病毒地理传播可视化

    文章目录 开篇一张图 传染病 SIR 模型 代码 SIR 准备一张人口密度图 欧拉方法求解初值问题的数值解 自定义 colormap 画 GIF 动图 参考博客 开篇一张图 传染病 SIR 模型 S ...

  5. 复杂网络上的传播动力学

    复杂网络: 复杂网络是指具有复杂阔普结构和动力学行为的大规模网络,它是由大量的节点通过边的相互连接而构成的图. 经典传播模型: SIR模型.SIS模型 其中,S指Susceptible,易感者:I指I ...

  6. 生物计算:SIR模型笔记

    1SIR模型 susceptible(易受感染的但没有被感染的) infected(感染的) recovered(恢复并免疫了的) 1.1  状态定义 第t天: 状态为S的人数 x(t) 状态为I的人 ...

  7. 网络传播动力学_通过简单的规则传播动力

    网络传播动力学 When a single drop of paint is dropped on a surface the amount of space that the drop will c ...

  8. 【论文阅读】SIR模型下网络中多信息源检测 2014-IEEE

    多地方传染,多地方泄露. 三种算法: (1)树状网络,已知信息源数量,识别信息源. (2)一般网络的启发式算法,已知源数量,识别信息源. (3)信息源数量未知,估计源数目. (一)(聚类和定位) &q ...

  9. 【Python】基于Python的复杂网络传播动力学及其可视化

    目录 0 简介 1 效果展示--树状网络 2 效果展示--小世界网络 3 代码 3.1 创建网络:树状网络 3.2 创建网络:小世界网络 3.3 创建网络:随机网络 3.4 创建网络:补充说明 3.5 ...

最新文章

  1. 持续集成之戏说Check-in Dance
  2. GitHub最火热的30个开源机器学习框架
  3. Li Fei-fei写给她学生的一封信,如何做好研究以及写好PAPER
  4. 为什么要重映射那个GPIO_Remap_SWJ_JTAGDisable
  5. 疯狂ios讲义之网页控件(UIWebView)
  6. 《梦断代码》阅读笔记02
  7. Visual Studio IDE 背景色该为保护眼睛色
  8. python语言的语法_PYTHON语言常用语法摘要
  9. python 数据比对 函数_用python比对csv文件中的数据
  10. 控制台报错:java.lang.ClassNotFoundException: javax.xml.bind.JAXBException之解决方法
  11. 黑莓7290使用技巧-转载
  12. 中国省份数据字典表---自用
  13. toastr 在js中的用法
  14. Android 常用简单bat脚本
  15. Flask流式传输文件
  16. Altium Designer 相同模块的布局布线操作
  17. Python学习---根据excel的内容自动批量修改excel名称
  18. WIFI基础知识-2.4GZH的信号为什么比5GHZ的信号好
  19. Franka Emika Panda 机械臂环境配置
  20. 【ELT.ZIP】OpenHarmony啃论文俱乐部——轻翻那些永垂不朽的诗篇

热门文章

  1. python kivy 控件(小部件)的属性集合
  2. java学习个人总结_Java学习的总结
  3. 热修复 原理与实现详解
  4. 大脑构造图与功能解析_大脑的结构与功能
  5. 【无标题】绝对定位的特点
  6. linux shell bash -c $IFS ${IFS}
  7. 生活集思录-大学门外的事情
  8. Linux文件名包含小括号处理
  9. 联发科MT33xx GNSS模块固件升级流程
  10. 我的世界Catserver开服