美赛BOOM数学建模4-2微分方程传染病预测模型

注明:本文根据数学建模BOOM网课简单整理,自用

指数传播模型与SI模型

❑从最简单的指数传播模型说起

❑ 传染病预测问题

• 不同类型传染病的发病机理和传播途径各有特点

• 有的传染病,在得过一次后可获得免疫力,但有的则不会

• 有的传染病具有潜伏期,有的则没有

• 需要对不同类型的传染病建立相应合适的预测模型

❑ 从最简单的看起:指数传播模型

1. 假设所研究的区域是封闭区域,在一定时期内人口总量不变,不考虑迁入和迁出

2. 在𝑡时刻患病人数𝑁(𝑡)是随时间连续变化的、可微的函数

3. 每个病人在单位时间内会传染到的人数为大于0的常数𝜆

❑ 本期课程重点:模型假设与模型改进的思想

❑指数传播模型

❑ 模型的建立

• 设𝑁(𝑡)为𝑡时刻患病人数,则𝑡 + Δ𝑡时刻的患病人数为𝑁(𝑡 + Δ𝑡)

• 则从𝑡 → 𝑡 + Δ𝑡时间内,净增的患病人数为𝑁 (t + Δ𝑡) − 𝑁(𝑡)

• 根据假设3(每个病人在单位时间内会传染到的人数为大于0的常数𝜆),有:

• 注意,𝜆在模型中始终是常数(每个病人在单位时间内会传染到的人数)

❑ 微分方程

• 基于上一页的第2条模型假设,在上面公式等号两边同时除以Δ𝑡,并令Δ𝑡 → 0

• 可得微分方程:

• 可求得该模型的解析解:

❑ 结果分析

• 模型结果显示,患病人数是指数型增长

• 该模型一般适用于传染病暴发初期

• 因为在初期,传染源和传染途径往往未知,难以防范

• 但是按照该模型, 𝑡 → ∞时𝑁(t)→ ∞,这显然是不符合实际的

❑ 模型改进

• 封闭区域内人数有限,当患病人数越来越多时,健康人群的数量也就越来越少

• 那么单位时间内新增的人数( 𝑁(t)的导数)也会减少,毕竟没多少人可以被感染了

• 基于以上分析,对模型进行改进,建立SI模型

❑SI模型

❑ 模型假设

1. 人口总数所研究的区域内人口总数为常数𝑁,既不考虑生死,也不考虑迁移

2. 两类人群人群分为易感染者(susceptible)和已感染者(infective),设𝑡时刻两类人群在总人口中所占的比例分别为s(t)和i(t) ,显然𝑠 (t) + 𝑖 (t) = 1

3. 日感染率每个病人在单位时间(每天)内接触的平均人数为常数𝜆, 称为日感染率;当

病人所接触的是健康者时,会将其感染成病人

4. 不考虑治愈每个病人得病后在传染期内无法治愈,且不会死亡

❑ 注意事项

• 现实中,地区人数并不会真的为常数,总有出生率、死亡率、迁入和迁出等

• 但如果把这些因素考虑进模型,模型会非常复杂;而本题重心是传染病

• 再次强调模型假设的目的:简化问题

❑ 模型建立

细节:第3条假设中𝜆是1个病人单位时间接触的平均人数,接触的人中既有病人也有健康者

• 则1个病人单位时间内可使𝜆𝑠(𝑡)个健康者变为病人

• 在𝑡时刻病人总数𝑁𝑖(𝑡)(N是常数为该地区总人口),𝛥𝑡时间内会新增𝜆𝑠(𝑡)𝑁𝑖(𝑡)𝛥𝑡个病人,则单位时间新增病人数:

• 令𝛥𝑡 → 0,得微分方程

• 根据第2条假设, 由于s(t)+i(t)= 1,所以可写作

• 设𝑡 = 0时,患病人数占总人口的比例为i(0) = 𝑖0 ,则SI模型:

• 求解该微分方程,得

• 该模型其实就是Logistic模型,𝑖(t)是病人占总人口的比例,最大值为1,即当t→∞时,区域内所有人都被传染

• 医学上称d𝑖(𝑡)/d𝑡为传染病曲线,表示传染病人增加率与时间的关系,如左图所示

• 预测结果如右图所示,随着时间的推移,病人比例接近100%

• 当病人总量占总人口比值达到50%,即i = 0.5时,di/d𝑡达到最大值,此时为传染高峰期

• 根据i(t)的表达式,可得高峰期对应时刻

❑ 结果意义

高峰期对应时刻

医学上该结果具有重要意义

提前预防:若已知日接触率(统计调查等),可预测高峰期到来的时间t𝑚,做好应对准备

• 由于t𝑚与成反比,若能减小(隔离、戴口罩等),则t𝑚将变大

• 也就意味着传染病高峰期来得越晚,现实中可能在高峰期到来之前就彻底解决了该传染病

• 注意:比赛时需要根据数学结果,分析求解结果的现实意义,写进论文

但SI模型中未考虑病人得病后可以治愈,𝑡 → ∞时𝑖(𝑡) → 1,即最后所有人都被传染

• 问题源自模型假设中只有健康者变为病人,但病人不会变为健康者,显然不合理

• 进一步分析问题,可建立SIS模型

SIS模型与SIR模型

❑SIS模型

❑ 模型改进

SI模型中未考虑病人得病后可以治愈,𝑡 → ∞时i(𝑡) → 1,即最后所有人都被传染

• 问题源自模型假设中只有健康者变为病人,但病人不会变为健康者,显然不合理

• 因此,需要同时考虑传染治愈

• 基于以上分析,对模型进行改进,建立SIS模型

❑ SIS模型

• SIS模型在SI模型假设的基础上,进一步假设:

1、治愈比例:每天被治愈的病人人数占病人总数的比例为μ

2、无免疫性:病人被治愈后成为仍可被感染的健康者

• 得到SIS模型:

• 可见,SIS模型是比原SI模型多了一项“ − 𝜇𝑖(t)”

❑ SIS模型解析解

• 该模型的解析解为:

• 令传染强度(病人日接触率/病人每日被治愈比例)

• 带入上一页模型的公式,得微分方程和解析解:

❑ 结果分析

❑ 显然, 传染强度为一个阈值

• 若≤ 1,现实意义“病人日接触率≤病人每日被治愈比例”

• 即新增病人少于被治愈病人那么随着t→ ∞,终所有病人都会被治愈

• 若> 1 ,现实意义“病人日接触率>病人每日被治愈比例”

• 即新增病人多于被治愈病人那么随着t → ∞,总有一定比例的人口会被传染成病人

❑ SIR模型

❑ 模型改进

• 上页分析是建立在假设“无免疫性:病人被治愈后成为仍可被感染的健康者”的基础上

• 进一步考虑现实中天花、麻疹、流感、肝炎等疾病经治愈后均有很强的免疫力

病愈后的人因已具有免疫力,既非易感染者也非病人(已感染者),即这部分人已退出感染

系统,再也不会被感染成患者

• 因此,考虑免疫性,改进为SIR模型

❑ 模型假设

1、人群分易染者(Susceptible)、病人(Infective)和病愈后有免疫力而退出系统的移出者(Removal)

2、设任意时刻𝑡,这三类人群占总人口的比例分别为s(𝑡), 𝑖(𝑡)和𝑟(𝑡) 。

3、病人的日接触率为λ,日治愈率为𝜇

4、人口总数𝑁为固定常数,既不考虑生死,也不考虑迁移

❑ 模型的建立

• 对于全体人群: s(t)+i(t)+r(t)=1

• 对于移出者: (右式根据定义得出)

,即移出者人数的变化率是单位时间被治愈的患者数

• 对于患者:

• 对于健康者:

• 根据以上分析,建立微分方程传染病预测SIR模型

❑ 模型分析

• SIR模型形式是多个相互关联系统变量之间的常微分方程组,属于典型的系统动力学模型

• 更复杂的情况,考虑有些传染病具有潜伏期,考虑一类人为潜伏者,建立SEIR模型

• 类似的问题:河流各类污染物质的耗氧、复氧、吸附、沉降等

• 该类问题往往难以求得精确的解析解,可以使用MATLAB求数值解

代码求解微分方程数值解

❑代码求解

求解微分方程

• MATLAB提供了通用的求常微分方程数值解的函数ode45

• 基本语法: https://ww2.mathworks.cn/help/matlab/ref/ode45.html?s_tid=srchtitle_ode45_1#d123e934673

• 预测结果:

clc,clear
% 参数初始化
lam = 0.4;      % 日接触率,题中若没给出需要自己查资料,后面同理
mu = 0.1;     % 日治愈率
I = 0.4;
S = 0.5;% ode45是一个通用型ODE求解器
tspan = [0:1:50];     % 变量t范围0到50
y0 = [I S];     % 传递模型参数,SIR相加等于一求两个即可得出第三个

调用ode45

首先是待求解的微分方程,在MATLAB中定义为函数SIRfunc(其表达式在本文件末尾分节后),还有传递给该函数的参数t和y,以“@(t,y)SIRfunc(t,y,lam,mu)”的形式表达。

其次是积分区间,以tspan表示,是个矩阵,包括积分区间的左右端点数值。如果要获取 t0 到 tf 之间的特定时间的解,使用 [t0,t1,t2,...,tf] 形式的长向量

最后是初始值,用向量y0表示。

本题先求解微分方程:

求出i和s后,根据s(t)+i(t)+r(t)=1可直接求出r

[t,y] = ode45(@(t,y)SIRfunc(t,y,lam,mu), tspan, y0);  %注意ode45的语法
% 求解返回的y中,第一列是第一个方程组的解,第二列是第二个微分方程的解
r = 1-y(:,1)-y(:,2);   % 移出者的比例 %画图
plot(t,y(:,1),t,y(:,2),t,r,'k','LineWidth',2);
legend('患病:i(t)','易感染者:s(t)','移除者:r(t)','Location','Best'); 
ylabel('占人口比例%');
xlabel('时间t');
title('SIR模型(ode)');function dydt = SIRfunc(t,y,lam,mu)
dydt = zeros(2,1);
dydt(1) = lam*y(1)*y(2) - mu*y(1);
dydt(2) = -lam*y(1)*y(2);
end 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1380812.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【本科生科研入门】大学生如何撰写科研项目申报书和答辩PPT

【本科生科研入门】大学生如何撰写科研项目申报书和答辩PPT 大学生可以参加哪些科研项目项目类别国家级省级校级 写申报书写PPT 大学生可以参加哪些科研项目 从我的经历来说,大学生主要能够参加的科研项目分为: 项目类别 国家级 国级大学生创新创业训…

【计算机毕业设计】138宠物领养系统的设计与实现

一、系统截图(需要演示视频可以私聊) 摘 要 如今社会上各行各业,都在用属于自己专用的软件来进行工作,互联网发展到这个时候,人们已经发现离不开了互联网。互联网的发展,离不开一些新的技术,而…

MICCAI2019论文分享 PART①

刚刚结束的 MICCAI2019 会议的论文集分为6个部分,这段时间刷了一遍 Part I,在这儿和大家做一个简单的分享交流 由于本人主要专注于分割领域和半监督弱监督等学习策略,下面给出的综述可能多涉及该方向。选出的文章主要突出其中的闪光点&#…

PPO算法经典论文阅读

PPO算法经典论文阅读 PPO算法是强化学习中的经典算法,其全称为近端策略优化(Proximal Policy Optimization)。 1.引言 ​ 首先在论文的引言部分给出了经典的强化学习算法的不足之处:许多的经典强化学习算法在大型的模型、数据采样效率、鲁棒性(无需手动超参调整)上都有很大的提…

四年的自学,通过这些学习工具拿到了大厂offer,分享给大家

作为非科班的我,一路打怪升级,不仅抱得美人归,还学了不少新的技术,那么这七年过来,我都收藏了哪些网站和工具呢,其中包括求职,电子书搜索,在线教程学习等,下面全部分享给…

从学习2021美赛O奖论文到获得2022美赛M奖——论文精读经验分享

目小录🥞 一、前小言🍡二、前人栽树---2021A题O奖论文精读经验📚1.美术建模--- 图形结合,事半功倍🍹2.语文\英文建模---标题的小心思🍟3.数学建模---逻辑严谨,面面俱到🥐1&#xff0…

2020美赛F奖论文(一):摘要、绪论和模型准备

全文: 2020美赛F奖论文(一):摘要、绪论和模型准备2020美赛F奖论文(二):传球网络模型(PNM)的建立和影响因子分析2020美赛F奖论文(三):足…

MICCAI2021论文合集

2021年的MICCAI论文合集来了!!! 在官网下完了以下合集: 百度网盘链接: 如果有人搞Alzheimer disease classification的可以一起交流!!! 链接2022.08.19更新: 链接&am…

喵咪制造机:生成式对抗网络的花式画喵大法

了解更多技术文章请点击原文链接 2012年,吴恩达和Jeff Dean用Google Brain的1.6万个CPU所打造的大型神经网络,在被1000万YouTube视频中的猫图像训练三天后,自己画出了一张模糊的猫脸图。这是普通公众第一次领略到深度学习的威力。 而后随着Al…

MoCo 论文详解

目录 一、自监督学习和对比学习1、自监督学习2、对比学习 二、MoCo 论文1、模型流程2、本文创新点1)队列作为字典2)动量更新 3、与end-to-end和memory bank的比较1)end-to-end2)memory bank 4、其他技术细节1)损失函数…

米兰大学发布论文与猫咪叫声数据集,分类喵喵叫

来源:HyperAI超神经本文约1000字,建议阅读5分钟 米兰大学计算机系的研究团队,试图用隐式马尔科夫方法将猫咪在不同环境状态下的喵喵叫识别出来,他们还真的成功了。关键词:声音识别 动物AI 机器学习 深度学习 米兰大学的…

【枚举】CF1660 D

Problem - 1660D - Codeforces 题意: 思路: 思路巨简单,代码也wa了很多发才过,都是因为细节.... 很显然,要根据0分段处理 对于每一段,枚举去掉左边段还是右边段,左边段是 l 到第一个负数&am…

Unreal Engine内嵌插件WebBrowser从HTML页面到Blueprint通讯

Unreal Engine内嵌插件WebBrowser从HTML页面到Blueprint通讯 问题解决办法将引擎内插件拷贝到工程目录下修改插件代码蓝图接口使用 问题 Unreal Engine内嵌WebBrowser插件可以通过调用ExecuteJavascript接口执行js代码,但无法从JS调用Blueprint蓝图函数 解决办法 …

程序员必备的GitHub加速指南,真香!

不知道从什么时候我访问 github 就无法展示图片了,而且有时候(尤其晚上)打开网页速度极其滴慢,就问大家受不受的了吧?我反正是顶不住! 所以连夜开发了个小工具,使用以后呀,不仅 github 页面打开…

基于ZYNQ-7000的AI加速器设计之PS端(ARM)网络编程(UDP协议)

1、开始前的准备工作 关闭电脑防火墙连接开发板电源开发板与PC之间串口连接,JTAG下载线连接PC机与开发板间网线连接,并保证能ping通 2、Vivado端配置 创建工程,具体步骤不详细介绍,网上都有教程,器件型号按照实际用…

使用CUDA+OpenCV加速yolo v4性能

YOLO是You-Only-Look-Once的缩写,它无疑是根据COCO数据集训练的最好的对象检测器之一。YOLOv4是最新的迭代版本,它在准确性和性能之间进行了权衡,使其成为最先进的对象检测器之一。在智能视频分析管道中使用任何对象检测器的典型机制包括使用…

基于ZYNQ-7000的AI加速器设计之PS端(ARM)网络编程(TCP协议)

前注:ARM端的TCP协议编程步骤和UDP协议编程步骤完全相同,只是在ARM端的C代码实现不同,在本次TCP协议实现过程中我们主要利用了官方提供的Demo,然后根据自己的需要加以改写,具体过程如下。 1、开始前的准备工作 关闭电脑防火墙连…

PSN下载加速相关程序教程(PS3.ProxyServer和PSN DM)

此文转自: http://bbs.duowan.com/thread-27759129-1-1.html 感谢星夜探索者的总结! 前言: 哦嗨哟,用wifi的机友们一定发现,直接在线用wifi下东西太慢了,而大家也一定用过其他程序来加快psv的下载&#xff…

docker 镜像下载加速(安装 kubernetes 必备)

大佬的文章 https://blog.k8s.li/kubespray-tips.html https://fuckcloudnative.io/posts/docker-registry-proxy/ docker registry 可以通过设置 remoteurl 参数将其作为远端仓库的缓存仓库,这样当你通过这个私有仓库的地址拉取镜像时,regiistry 会…

《面试1v1》ElasticSearch倒排索引

🍅 作者简介:王哥,CSDN2022博客总榜Top100🏆、博客专家💪 🍅 技术交流:定期更新Java硬核干货,不定期送书活动 🍅 王哥多年工作总结:Java学习路线总结&#xf…