2020年认证杯SPSSPRO杯数学建模C题(第一阶段)抗击疫情,我们能做什么全过程文档及程序
2020年认证杯SPSSPRO杯数学建模
C题 抗击疫情,我们能做什么
原题再现:
2020 年 3 月 12 日,世界卫生组织(WHO)宣布,席卷全球的冠状病毒引发的病毒性肺炎(COVID-19)是一种大流行病。世卫组织上一次宣布大流行是在 2009 年的 H1N1 流感爆发期间,该病感染了世界近四分之一的人口。但是,当时该决定因制造了不必要的恐慌而受到批评。SARS 尽管影响了 26 个国家,但仍未被认为是大流行病,MERS 也没有被认为是大流行病。世卫组织表示,大流行是“新疾病的全球传播”。对于达到大流行水平与否,当下没有定量的严格标准,也没有触发该定义的病例或死亡数量阈值。也就是说“大流行”特征所指的不是疾病的严重性,而是疾病传播的广泛程度。目前,在全球已有超过 200 个国家/地区报告了病毒感染病例。但由于各国的人口和经济情况差别较大,病毒检测能力和国家防疫政策都不尽相同,所以报告的病例是否就真实反映了病毒传播的情况? 如何能够对于疫情情况给出更加有效的量化指标,这是世卫组织非常关心的问题。
“无症状感染者”全称是“新冠病毒无症状感染者”,指无临床症状、但呼吸道等标本新冠病毒病原学检测呈阳性者。无症状感染者可分为两种情形:一是感染者核酸检测呈阳性,经过 14 天潜伏期的观察,均无任何可自我感知或可临床识别的症状与体征,始终为无症状感染状态;二是感染者核酸检测呈阳性,采样时无任何可自我感知或可临床识别的症状与体征,但随后出现某种临床表现,即处于潜伏期的“无症状感染”状态。无症状感染者存在传染性。但传染期长短、强弱有待确定。很多人担心“无症状感染者”会成为新的传染源,那么,到底会不会呢? 部分专家认为鉴于无症状感染者的呼吸道标本能检出病原核酸,但由于无咳嗽、打喷嚏等临床症状,病原排出体外引起传播的机会较确诊病例相对少一些。另外,《英格兰医学杂志》上近日有报告说,一名感染者从未出现症状,但所释放的病毒量与出现症状的人相当。因此,也有一部分科学家猜测:一些感染者“在症状轻微或无症状时具有高度传染性”。但要强调的是,类似状况的患者规模仍不清楚。
早在 2 月 17 日,中国疾控中心流行病学组在《中华流行病学杂志》上发表的大规模流调论文就提到,截至 2 月 11 日,中国疾控中心共收到国内报告病例 72314 例,含有 889 例无症状感染者,比例约占 1.2%。日本一个研究小组的报告称(研究论文 3 月 12 日刊登在 Eurosurveillance 杂志),对钻石公主号游轮上的 634 名新冠肺炎病例进行统计模型分析,估计无症状感染者所占比例为 17.9%。张文宏团队撰文指出,以目前部分研究为例,感染新冠病毒的人群中,无症状感染者的比例大约为 18%—31%。不过有些患者仅出现很轻微的症状,在隔离观察期间也不一定会被发现,也常常被认为是无症状。无症状感染者的识别具有一定的困难,如何快速地、准确地、最小成本地识别和判断也是世界各国非常关注的问题。
第一阶段问题: 请你的团队通过深入的数据分析,建立合理的数学模型来解决以下问题:
1. 建立数学模型,综合考虑人口数、感染数量、病死人数、疫情持续时间、经济状况、医疗条件、人口密度、防疫政策等因素,给出一个合理的界定“流行”(Epidemic) 和“大流行”(Pandemic) 病的定量条件。
2. 考虑到无症状感染者具有一定的传染性,且不容易发现,但全民进行病毒检测又成本太高,且时间过长,不利于复工复产,我们试图寻找一种更为有效的方法来最大限度地降低无症状感染者的传播风险,比如对一个地区进行抽样病毒检测来评估该地区的无症状感染者的分布情况,再制定不同的隔离和检测措施。请结合问题一的模型,针对一两个国家(或地区),给出切实可行的病毒检测抽样方案,并给出无症状感染者分布预测模型和针对相应预测结果的应对方案。
3. 给世界卫生组织写一封信,阐述你的团队对于疫情情况的判断,并给出一些防控建议和降低风险的思路。
附件一是一些网络上公开的疫情数据,更新的数据可以从https://github.com/datasets/covid-19下载。
整体求解过程概述(摘要)
新型冠状病毒(COVID-9)的爆发给世界经济和人民生活都带来了重创。面对流行病的爆发,如何评估和预测疫情,是有效控制疫情的最佳办法。为了解决这个问题,本文通过构建流行度评价体系,利用因子分析法对指标进行赋权,并以中国为例统计流行度的变化情况,通过均值-标准差控制图法计算出流行度阈值来界定“流行”(Epidemic)和“大流行“(Pandemic)病。然后在传统 SEIR 模型基础上,进行了四项修正,,对无症状感染者的分布进行预测。根据模型的结果,我们给世界卫生组织ᨀ供了一些防控建议,具体如下。
针对问题一,我们使用因子分析法和均值-标准差控制图法构建了疾病流行程度评估模型。首先流行因素和指标选取原则选取指标,构建了疾病流行度指标体系,分别 3个一级指标和 8 个二级指标,统计好相关数据后,利用极差归一法对数据进行标准化处理,消除其数量级或量纲上的不同。然后利用因子分析法赋予各指标的权重,我们得到了流行度的计算公式。定义好疾病流行开始时间后,我们计算出了中国在疫情期间的每天流行度,利用均值-标准差控制图法计算出流行度阈值,最终得出流行病的界定阈值为流行度在 52.86~82.14,大流行病的界定阈值为大于 82.14。
针对问题二,我们对 SEIR 模型进行修正构建了无症状感染者的分布预测模型。首先我们构建了基础的 SEIR 模型,为了使模型可以更加准确地模拟 COVID-19 疫情发展趋势,我们结合世界各地 COVID-19 疫情实况对 SEIR 模型进行了四项修正,并且通过对中国 COVID-19 疫情发展趋势的模拟仿真和对湖北省无症状感染者分布预测效果的评估验证了修正的 SEIR 模型准确性。最后我们使用模型对湖北省、黑龙江省和广东省的无症状感染者分布预测,得到了这三个当前无症状感染者分布较密集省份未来无症状感染者分布走势和无症状感染者消失的大致日期。
针对问题三,我们基于前两问的结果,ᨀ出了相应的疫情应对方案。ᨀ前检测出感染者可以有效地预防疫情的传播,因此我们首先需要有效地发现感染人员,对人群进行抽样检测。我们根据流行程度的不同,我们对不同的地区采取不同的抽样比例和抽样人群,形成不同的抽样策略。其次,我们根据国家卫生健康委员会和世界卫生组织有关病毒检测的指导文件,设计了我们的病毒检测方案。最后,如果发现无症状患者,要制定相应的隔离措施。我们根据无症状患者预测分布的结果划分了 3 种不同的等级,根据等级的不同制定了对应的隔离方案。
最后,我们总结了模型的内容和结果,给世界卫生组织ᨀ供的防疫的建议和具体的风险降低方案。
问题分析:
问题 1 的分析
对于如何定量界定“流行”与“大流行”,需要利构建一个疾病流行度指标体系。具体的做法思想是如何找到流行度评价的指标,并对指标进行相应的赋权。指标需要用数据表示,考虑到指标之间的量级与量纲不同,因此,要用极差归一法对各项指标进行标准化处理。标准化数据后,得到流行度的计算公式,最后根据该公式结合均值-标准差算法定量得出流行度的阈值,根据阈值构建疾病流行度指标体系从而定量界定“流行”与“大流行”。
问题 2 的分析
对于预测无症状感染人群的分布情况,需要构建一个模型进行疫情发展趋势的模拟仿真和预测无症状感染分布预测。首先,考虑到 COVID-19 是有着相对较长潜伏期的传染病,再结合各地实际疫情,在经典的 SEIR 模型基础上进行修正,从而得到修正 SEIR模型。其次,评估和验证该模型在中国疫情发展趋势的模拟仿真和湖北省无症状感染人群的分布预测的准确性。最后,使用该模型结合现有数据对湖北省、黑龙江省和广东省无症状感染群人分布进行预测。
问题 3 的分析
在前两个问题所得到的模型基础上,根据疫情严重程度和无症状感染人群密度等级对地区进行归类,再根据不同的疫情严重程度和无症状感染人群密度等级分别ᨀ出相应针对性的抽样检测隔离方案。具体做法是先根据疫情严重程度采用不同的抽样方案,例如抽样来源不同;然后再根据各地区不同的无症状感染人群密度等级分别采用不同的隔离方案,例如隔离地点和检测内容不同。最后,根据以上结果,结合实际情况,给出具体的防控管理政策,从而降低无症状感染人群传播病毒的风险和病毒在各地区传播的风险。
模型假设:
1. 假设题目所给的数据真实可靠;
2. 假设病毒只通过人传人的途径进行传播;
3. 假设现阶段没有能够治疗的特效药和疫苗;
4. 假设外界因素对各种概率的值无影响;
5. 假设各地区出生人数、死亡人数和国际间的人口流动对模型无影响;
论文缩略图:
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可
部分程序代码:(代码和文档not free)
%SEIR模型
clear;clc;
%参数设置
N=11082000;%武汉人口数
tf=1;%道路通行阻碍系数
pe=1;%人口密度阻碍系数
fl=0.1;%由政府政策引起的人口流动性的变化
Bf=0.5;%因防控阻碍传染率系数
hy=1;%医疗水平影响治愈率系数
hk=1;%医疗水平影响死亡率系数
mh=1;%医疗能力水平系数
I=2;%传染者
R=0;%康复者
D=0;%死亡患者数量
E=0;%潜伏者
S=N-I;%易感染者
r=50;%接触病患的人数
a=0.0125;%潜伏者患病概率
B=0.8;%感染概率
y=0.014384;%日康复概率
k=0.002542;%日致死率
r=r*tf*pe;
r1=r;%潜伏者接触的人数
T=20:1000;
nt=0.1;%日有效核酸检测系数
co=2000;%日核酸检测成本
for idx =1:length(T)-1if idx>14B=B*Bf;r=r*fl;r1=r1*fl;mh=1.5;end%进行检测
% B=B*Bf;
% r=r*fl;
% r1=r1*fl;
% mh=1.5;
% E(idx)=E(idx)-nt*co;
% r1=r1*0.1;
% disp('实行核酸检测')if idx>13&&idx<40E(idx)=E(idx)-nt*co;r1=r1*0.2;disp('实行核酸检测')elser1 =r; endS(idx+1)=S(idx)-r*B*I(idx)*S(idx)/N;%易感者E(idx+1)=E(idx)+r1*B*S(idx)*I(idx)/N-a*E(idx);%潜伏者I(idx+1)=I(idx)+a*E(idx)-(y*mh+k/mh)*I(idx);%患病者R(idx+1)=R(idx)+y*mh*I(idx);%康复者D(idx+1)=D(idx)+k*I(idx)/mh;%死亡病例endB={'01-19','02-08','02-28','03-19','04-08','04-28','05-18','06-07','06-27','07-17','08-06'};
plot(T,E,T,I,T,R,T,D);
grid on;
set(gca,'XTickLabel',B)
xlabel('日期');
ylabel('人数');
legend('潜伏者','传染者','康复者','死亡者');
%title('疫情情况');
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可
相关文章:

2020年认证杯SPSSPRO杯数学建模C题(第一阶段)抗击疫情,我们能做什么全过程文档及程序
2020年认证杯SPSSPRO杯数学建模 C题 抗击疫情,我们能做什么 原题再现: 2020 年 3 月 12 日,世界卫生组织(WHO)宣布,席卷全球的冠状病毒引发的病毒性肺炎(COVID-19)是一种大流行病。…...

Java技术栈 —— Hadoop入门(一)
Java技术栈 —— Hadoop入门(一) 一、Hadoop第一印象二、安装Hadoop三、Hadoop解析3.1 Hadoop生态介绍3.1.1 MapReduce - 核心组件3.1.2 HDFS - 核心组件3.1.3 YARN - 核心组件3.1.4 其它组件3.1.4.1 HBase3.1.4.2 Hive3.1.4.3 Spark 一、Hadoop第一印象…...

Shell脚本小游戏:石头剪刀布
脚本代码: #!/bin/bash echo "接下来的是石头剪刀布的游戏" echo "定义1:包子;2:剪刀;3:布" echo "------------------------------" NUMecho $[RANDOM%31] #1包子 #2剪刀…...

Windows10系统的音频不可用,使用疑难解答后提示【 一个或多个音频服务未运行】
一、问题描述 打开电脑,发现电脑右下角的音频图标显示为X(即不可用,无法播放声音),使用音频自带的【声音问题疑难解答】(选中音频图标,点击鼠标右键,然后选择“声音问题疑难解答(T)”…...

Unity | 渡鸦避难所-5 | 角色和摄像机之间的遮挡物半透明
1 前言 角色在地图上移动到岩石后面时,完全被岩石遮挡,玩家只能看到岩石。这逻辑看起来没问题,但并不是玩家想要看到的画面,玩家更希望关注角色的状态 为了避免角色被遮挡,可以使用 Cinemachine Collider 功能&#x…...

ResNet论文阅读和简单实现
论文:https://arxiv.org/pdf/1512.03385.pdf Deep Residual Learning for Image Recognition 本模块主要是阅读论文,会做简单的翻译(至少满足我自己能看明白)。 Introduction 由上图可见,在20层和56层的网络上训练的…...

QT上位机开发(数据库sqlite编程)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 编写软件的时候,如果用户的数据比较少,那么用json保存是非常方便的。但是一旦数据量大了之后,建议还是用数据库…...

在ARMv8中aarch64与aarch32切换
需求描述 在项目调试过程中,由于内存或磁盘空间不足需要将系统从aarch64切换到aarch32的运行状态去执行,接下来记录cortexA53的调试过程。 相关寄存器描述 ARM64: SPSR_EL3 N (Negative):表示运算结果的最高位,用于指示运算结果是否为负数。 Z (Zero):表示运算结果是否…...

拧巴的 tcp
本来想说说 tcp fastopen(tfo),但没什么意义,看 rfc7413 好了,还是 tcp 的惯常套路,引入一个新特性,解决了某个问题,带来一些新问题,然后就是各种 tradeoff,哪里适用哪里不适用。久而…...

java servlet 学生管理系统myeclipse开发oracle数据库BS模式java编程网
一、源码特点 java servlet 学生管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servletbeandao (mvc模式开发),系统具有完整的源代码和数据库,开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g…...

使用buildx构建多架构镜像
使用buildx构建多架构镜像 1. 前置条件 docker 19.03以上版本 ubuntu 22.04 2. 安装相关组件 2.1 安装docker sudo apt-get updatesudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-commoncurl -fsSL https://mirrors.…...

Crow:run的流程4 准备接收http请求
完成tcp的accept后,下一步需要接收tcp的数据,同时完成http的分析 class Connection { public:void start(){adaptor_.start([this](const asio::error_code& ec) {if (!ec){start_deadline();parser_.clear();do_read();}else{CROW_LOG_ERROR << "Could not …...

Springboot集成RabbitMq一
0、知识点 1、创建项目-生产者 默认官方start.spring.io已不支持自动生成低版本jkd的Spring项目,自定义用阿里云的starter即可:https://start.aliyun.com 2、创建配置类 package com.wym.rabbitmqprovider.utils;import org.springframework.amqp.core.…...

零知识证明(zk-SNARK)- groth16(一)
全称为 Zero-Knowledge Succinct Non-Interactive Argument of Knowledge,简洁非交互式零知识证明,简洁性使得运行该协议时,即便 statement 非常大,它的 proof 大小也仅有几百个bytes,并且验证一个 proof 的时间可以达…...

Spring java和go并发的实现策略
Spring Java框架和Go框架在处理并发请求时采用了不同的策略。 1. Spring Java框架: Spring框架基于Java语言,通常使用线程池来处理并发请求。具体来说,Spring框架中的Servlet容器(如Tomcat、Jetty等)会使用线程池来管…...

第二十五章 JDBC 和数据库连接池
一、JDBC 概述(P821) 1. 基本介绍 (1)JDBC 为访问不同的数据库提供了统一的接口,为使用者屏蔽了细节问题。 (2)Java 程序员使用 JDBC,可以连接任何提供了 JDBC 驱动程序的数据库系统…...

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机的固定帧率(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机的固定帧率(C) Baumer工业相机Baumer工业相机的固定帧率功能的技术背景CameraExplorer如何查看相机固定帧率功能在NEOAPI SDK里通过函数设置相机固定帧率 Baumer工业相机通过NEOAPI SDK设置相机固定…...

基于Java课堂签到系统
基于Java课堂签到系统 功能需求 1、用户登录:学生需要使用学号或手机号等唯一标识登录系统。 2、签到功能:在课堂开始时,学生可以通过系统进行签到,以证明出席。 3、签出功能:在课堂结束时,学生可以通过…...

springboot整合webservice使用总结
因为做的项目中用到了webservice,所以在此总结一下。 一、webservice简介 Web Service也叫XML Web Service, WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是通过SOAP在Web上提供的软件服务,使…...

MySQL中的索引之分类,原理,作用,优缺点和执行计划
索引 索引的作用:加速查找 例如: 300w条数据的表中查询,无索引需要700s, 利用索引可能只需要1s用索引的时机是,数据量巨大,并且搜索快速 索引为什么能实现加速查找 基于索引的内部存储结构索引底层基于 BTree 的数据结构存储的在…...

如何做好档案数字化前的鉴定工作
要做好档案数字化前的鉴定工作,可以按照以下步骤进行: 1. 确定鉴定目标:明确要鉴定的档案的内容、数量和性质,确定鉴定的范围和目标。 2. 进行档案清点:对档案进行全面清点和登记,包括数量、种类、状况等信…...

pytorch04:网络模型创建
目录 一、模型创建过程1.1 以LeNet网络为例1.2 LeNet结构1.3 nn.Module 二、网络层容器(Containers)2.1 nn.Sequential2.1.1 常规方法实现2.1.2 OrderedDict方法实现 2.2 nn.ModuleList2.3 nn.ModuleDict2.4 三种容器构建总结 三、AlexNet网络构建 一、模型创建过程 1.1 以LeNe…...

用js让用户输入一个数累加和
需求:用户输入一个数, 计算 1 到这个数的和。 比如 用户输入的是 5, 则计算 1~5 之间的累加和 并且输出到控制台 <body><script>let numprompt(请输入一个数)let sum0for(let i1;i<num;i){sumi}console.log(sum)</script…...

踩坑记录-安装nuxt3报错:Error: Failed to download template from registry: fetch failed;
报错复现 安装nuxt3报错:Error: Failed to download template from registry: fetch failednpx nuxi init nuxt-demo 初始化nuxt 项目 报错 Error: Failed to download template from registry: fetch faile 解决方法 配置hosts Mac电脑:/etc/hostswin电…...

大数据学习(31)-Spark非常用及重要特性
&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦ᾑ…...

【教学类-43-14】 20240103 (4宫格数独:正确版:576套) 不重复的基础模板数量:576套
作品展示::——4宫格 576套不重复模板(48页*12套题) 背景需求: 生成4宫格基础模板768套,观看64页内容时,明显看到有错误 【教学类-43-13】 20240103 (4宫格数独:错误版…...

AIGC开发:调用openai的API接口实现简单机器人
简介 开始进行最简单的使用:通过API调用openai的模型能力 OpenAI的能力如下图: 文本生成模型 OpenAI 的文本生成模型(通常称为生成式预训练 Transformer 或大型语言模型)经过训练可以理解自然语言、代码和图像。这些模型提供文…...

c基础(二)
指针: 含义:是一个值,一个值代表着一个内存地址,类似于存放路径 * 运算符 : 1 字符*表示指针 作用:通常跟在类型关键字的后面,表示指针指向的是什么类型的值 int * foo, * bar;声明指针后会…...

人工智能趋势报告解读:ai野蛮式生长的背后是机遇还是危机?
近期,Enterprise WordPress发布了生成式人工智能在营销中的应用程度的报告,这是一个人工智能迅猛发展的时代,目前人工智能已经广泛运用到内容创作等领域,可以预见的是人工智能及其扩展应用还将延伸到我们工作与生活中的方方面面。…...

三、C语言中的分支与循环—goto语句 (10) (完)
在C语言中,goto语句允许程序无条件地跳转到同一函数内的标记位置。这个标记位置通过一个标签和冒号(:)来标示。goto语句可以用于从深层嵌套的循环或条件语句中直接跳出,或者跳过某些代码执行。尽管goto语句在某些情况下可以使程序逻辑变得清晰࿰…...