基于Python+Html实现的疫情传播模拟系统

资源下载地址:https://download.csdn.net/download/sheziqiong/88288173
资源下载地址:https://download.csdn.net/download/sheziqiong/88288173

疫情传播模拟系统

一、疫情报告

背景介绍

​ 为研究新冠病毒在人群中的传播情况,讨论各种防疫措施(佩戴口罩,限制出行,增加医院以及救治速度)对疫情传播的影响。从个人、政府、医疗的三个方面讨论疫情的传播。

技术栈

  • 前端

    采用了简单的html+javascript+boostrap编写前端页面和小动画。

  • 后端

    ​ 结合了python的flask web框架进行前后端数据的交互,前端模拟完成返回json数据,利用python的document库以及绘图库绘制了简单的报表。

代码运行

项目录下运行cmd

pip install -r requirements.txt安装python依赖

运行python app.py

建模思路

具体规则

单个小球模拟为一个人,小球直径为30px长度,当两人距离为两个身位60px或者发生碰撞时,此时可能发生感染事件。其中,蓝色代表潜伏期,红色代表已经感染,棕色不移动代表死亡,黄色代表此时已康复拥有抗体,黑色代表健康未感染。

参数设置

​ 未戴口罩且与潜伏期的人距离过近或发生碰撞时:有抗体1%感染几率,无抗体5%感染几率。

​ 未戴口罩且与感染期的人距离过近或发生碰撞时:有抗体5%感染几率,无抗体30%感染几率。

​ 戴口罩且与潜伏期的人距离过近或发生碰撞时:有抗体0.3%感染几率,无抗体1%感染几率。

​ 戴口罩且与感染期的人距离过近或发生碰撞时:有抗体3%感染几率,无抗体15感染几率。

​ 人群可能发生聚集,当小球之间长时间距离过短时候,发生感染的概率自然会大幅度上升。人群移动为随机移动,一共设置为5档。医院开启之后,设置收容速度为3档(慢中快),每次收容数量为5人,医院容纳数量可自主设置。

模型建立

根据上述规则,用JavaScript进行程序编写,并实现了数据的可视化。

综合考虑程序效率、运行时间,我们的网格采用813*830(单位:px)。

运行之后,会返回一份报表,我们主要观察分析感染人数、潜伏人数,死亡人数随着时间的变化。

二、基本数据

初始感染人数:50
初始人群数量:60
人群聚集状态:聚集关闭
人群移动速度:5 档(共五档)
是否佩戴口罩:否
是否开启医院:医院开启
医院容纳数量:20
医院收纳速度:1 档(最慢速度)

根据国家统计局以及相关论文的数据统计,模型参数设置为:
单个小球模拟为一个人,小球直径为 30px 长度,当两人距离为两个身位 60px 或者发生碰撞时,此时可能发生感染事件。其中,蓝色代表潜伏期,红色代表已经感染,棕色不移动代表死亡,橙色代表此时已康复拥有抗体,黑色代表健康未感染。
·当未戴口罩时:潜伏期有抗体 1% 感染几率。潜伏期无抗体 5% 感染几率。感染期有抗体 5% 感染几率,感染期无抗体 30% 感染几率。
·当佩戴口罩时:潜伏期有抗体 0.3% 感染几率。潜伏期无抗体 1% 感染几率。感染期有抗体 3% 感染几率,感染期无抗体 15 感染几率。
人群可能发生聚集,当小球之间长时间距离过短时候,发生感染的概率自然会大幅度上升。人群移动为随机移动,一共设置为 5 档。医院开启之后,设置收容速度为 3 档(慢中快),每次收容数量为 10 人,医院容纳数量可自主设置。

三、数据分析

红色-当前感染人数 蓝色-当前潜伏人数 绿色-当前死亡人数
反应此时横坐标时间点的疫情情况

红色-累计感染人数 蓝色-累计潜伏人数 绿色-累计死亡人数
反应此时横坐标时间点累计一共的疫情情况

总人数:110
死亡人数:31

总人数:110
感染人数:78

四、数学模型

资源下载地址:https://download.csdn.net/download/sheziqiong/88288173
资源下载地址:https://download.csdn.net/download/sheziqiong/88288173

猜你喜欢

转载自blog.csdn.net/newlw/article/details/132634646