网站首页
教育杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
医学杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
经济杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
金融杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
管理杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
科技杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
工业杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
SCI杂志
中科院1区 中科院2区 中科院3区 中科院4区
全部期刊
公務(wù)員期刊網(wǎng) 論文中心 正文

公共場所傳染性疾病擴(kuò)散模型設(shè)計(jì)探析

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了公共場所傳染性疾病擴(kuò)散模型設(shè)計(jì)探析范文,希望能給你帶來靈感和參考,敬請閱讀。

公共場所傳染性疾病擴(kuò)散模型設(shè)計(jì)探析

摘要:傳染病會(huì)對人類社會(huì)產(chǎn)生重大影響,危害著人類健康。歷史上出現(xiàn)過各種大大小小的傳染疾病的案例,多次給人們生活和國家?guī)韲?yán)重的影響,諸如SARS病毒、艾滋病等。這使得對傳染病發(fā)病機(jī)理、傳染規(guī)律和防治策略研究顯得尤為重要。針對傳染病帶來的一類問題,該模型對病毒的擴(kuò)散因素及擴(kuò)散速率進(jìn)行了分析與模擬。利用動(dòng)畫形象地表現(xiàn)出病毒擴(kuò)散的速率,并將病毒擴(kuò)散因素分離出作為可控變量,通過輸入不同的可控因素變量值,從而觀察出不同因素下病毒擴(kuò)散的快慢程度?;贘ava的擴(kuò)散模型設(shè)計(jì),展現(xiàn)了整個(gè)病毒擴(kuò)散過程,為找出有效的防控措施提供基礎(chǔ)。

關(guān)鍵詞:傳染性疾病;擴(kuò)散模型;Java

針對2020年春節(jié)前后突然爆發(fā)病毒肺炎,簡稱“肺炎”,該病毒具有易擴(kuò)散、難防控、傳播快的特點(diǎn)。爆發(fā)以來,迅速擴(kuò)散對全球經(jīng)濟(jì)、政治、文化、社會(huì)、生態(tài)等造成嚴(yán)重的打擊,同時(shí)我國迅速采取封閉隔離的有效措施,研究人員致力于病毒研究,研制疫苗,但是人們對病毒擴(kuò)散模型還是了解不足。本文主要概述病毒擴(kuò)散模型的設(shè)計(jì)、實(shí)現(xiàn)、測試三個(gè)方面,首先通過對病毒擴(kuò)散調(diào)研分析,進(jìn)行擴(kuò)散模型進(jìn)行設(shè)計(jì),其次針對設(shè)計(jì)對程序的具體的算法進(jìn)行完成,最后對程序產(chǎn)生的測試數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析。

1病毒擴(kuò)散模型的設(shè)計(jì)

經(jīng)過調(diào)研病毒擴(kuò)散主要由傳染源、人口密度、病發(fā)率、人群流動(dòng)快慢引起。由于人群流動(dòng)和移動(dòng)是不可控,使用標(biāo)準(zhǔn)正態(tài)分布的正負(fù)模擬人流動(dòng)的意愿并通過取得兩次不同的值使人進(jìn)行小范圍移動(dòng),通過輸入的方式對傳染源、發(fā)病率、城市人口的規(guī)模進(jìn)行模擬:傳染源:初始化病毒感染者會(huì)影響人與人之間的傳播速度;發(fā)病率:模擬人的狀態(tài)從潛伏到發(fā)病的概率,發(fā)病才會(huì)傳播病毒;城市規(guī)模:不同的城市人口不同人與人傳播不盡相同,也影響著傳播速度。最后通過設(shè)置默認(rèn)的病死率,極低的治愈率和城市區(qū)域進(jìn)行病毒擴(kuò)散的模擬。整個(gè)擴(kuò)散模型設(shè)計(jì)核心主要通過調(diào)研參數(shù)手動(dòng)輸入模擬如大小城市、戴口罩、隔離等不同情況下的產(chǎn)生的概率,判斷人的狀態(tài)進(jìn)行動(dòng)畫的渲染,持續(xù)播放病毒擴(kuò)散的過程。

2病毒擴(kuò)散模型的實(shí)現(xiàn)

2.1病毒擴(kuò)散模型的基本原理

該擴(kuò)散模型的實(shí)現(xiàn)主要基于JavaGUI中的Swing組件完成,Swing包括了許多基礎(chǔ)的圖形用戶界面(GUI)器件如:文本框,按鈕,分隔窗格和表。Swing是一種輕量級的組件,可以在所有平臺(tái)上采用統(tǒng)一的行為。開發(fā)環(huán)境是純Java環(huán)境,Java的JDK環(huán)境可以為應(yīng)用程序提供大量的API,給程序開發(fā)者提供了很好的開發(fā)環(huán)境。開發(fā)工具采用的是JetBrains公司研發(fā)的產(chǎn)品IDEA,搭建相關(guān)環(huán)境。IDEA開發(fā)工具為開發(fā)者提供了各種智能化設(shè)置,支持各類版本工具(git、svn)、Junit等工具。擴(kuò)散模型的UI界面設(shè)計(jì)以簡潔易懂為主。主要分為四大部分進(jìn)行展現(xiàn):病毒擴(kuò)散演示區(qū),醫(yī)院情況展示區(qū),圖例數(shù)據(jù)顯示區(qū)以及控制因素設(shè)置區(qū),如圖1所示。其中最核心的組件是JFrame容器,在JFrame容器中可以放入不同的其他組件,可以是其他容器也可以是各種顯示組件。相關(guān)容器可以設(shè)置其容器的相關(guān)屬性。病毒擴(kuò)散演示區(qū)是由若干個(gè)小圓點(diǎn)組成,每一個(gè)小圓點(diǎn)代表城市中的居民,小圓點(diǎn)的移動(dòng)代表了居民的流動(dòng)。當(dāng)兩個(gè)小球的距離小于安全距離,就代表著居民處于可能被感染的狀態(tài),都會(huì)有一定概率感染病毒,感染率是由初始化手動(dòng)進(jìn)行設(shè)定的。小圓點(diǎn)處于感染狀態(tài)下,每一次的移動(dòng)都有一定概率傳染給范圍內(nèi)的其他人,再通過居民自身的健康屬性來重新設(shè)置其小圓點(diǎn)顏色,即小球的狀態(tài)。小球移動(dòng)的核心算法如圖2所示。醫(yī)院情況展示區(qū)展示了當(dāng)發(fā)生病毒感染后,醫(yī)院收治患者的情況,主要體現(xiàn)在醫(yī)院是否能夠及時(shí)的治療患者,是否能夠容納所有患者。結(jié)合圖例數(shù)據(jù)顯示區(qū),可以更加清晰分析出此病毒傳染的嚴(yán)重性有多大。圖例數(shù)據(jù)顯示區(qū)展現(xiàn)了經(jīng)歷的時(shí)間、城市的總?cè)丝?、健康人?shù)、潛伏期人數(shù)、發(fā)病者人數(shù)、已經(jīng)隔離人數(shù)、病死人數(shù)以及空余病床和急需病床數(shù)。通過這些數(shù)據(jù)指標(biāo)能夠更好表現(xiàn)出病毒擴(kuò)散的速率與傳播范圍。控制因素設(shè)置區(qū)主要將病毒擴(kuò)散的相關(guān)因素提取出來,通過針對不同的狀況設(shè)置不同參數(shù)因素來觀察病毒擴(kuò)散過程不同時(shí)段的傳播狀況。

2.2病毒擴(kuò)散的算法過程

1)程序啟動(dòng)時(shí),首先加載界面UI并初始化相關(guān)默認(rèn)數(shù)據(jù),主要包括動(dòng)畫演示區(qū)、圖標(biāo)展示區(qū)、菜單控制區(qū)。2)在輸入基本參數(shù)后,點(diǎn)擊開始按鈕。讀取基本參數(shù),初始城市人口基數(shù)、初始感染人數(shù)與病毒感染率,啟動(dòng)動(dòng)畫線程。通過設(shè)置的城市的人口基數(shù)隨機(jī)渲染人所在的位置點(diǎn),并隨機(jī)在生成的所有人中取出某一個(gè),讓其狀態(tài)為潛伏狀態(tài),如果已經(jīng)是潛伏狀態(tài)或以上更嚴(yán)重的狀態(tài)繼續(xù)取下一個(gè)人,循環(huán)直到滿足設(shè)置的初始感染人數(shù)。如圖4所示。3)線程啟動(dòng)后,每0.1秒刷新一次畫面,重新繪制城市中人口感染狀況,并更新圖標(biāo)顯示區(qū)的數(shù)據(jù)信息。根據(jù)每個(gè)點(diǎn)的狀態(tài)不同從而繪制不同顏色的點(diǎn),并更新點(diǎn)移動(dòng)的位置。①如果為死亡狀態(tài)則不需要再進(jìn)行處理;②如果確認(rèn)為確診狀態(tài),且(世界時(shí)刻-確診時(shí)刻)大于醫(yī)院響應(yīng)時(shí)間則送入醫(yī)院治療,此時(shí)繼續(xù)判斷醫(yī)院床位是否充足,如果不充足報(bào)告床位所需數(shù)量;③如果確認(rèn)為確診狀態(tài)并且死亡時(shí)刻為0,隨機(jī)產(chǎn)生一個(gè)數(shù)值,若此數(shù)值在病死率之間則通過死亡時(shí)間方差和死亡平均值取其正態(tài)分布得出死亡時(shí)間,否則不會(huì)被病死;④如果為確診狀態(tài)或隔離狀態(tài),并且死亡時(shí)間到了世界時(shí)間,更改狀態(tài)為死亡狀態(tài)并回收床位;⑤如果為隔離狀態(tài),隨機(jī)產(chǎn)生一個(gè)數(shù)值,如果數(shù)值在治愈率之間則表示患者被治愈,更新狀態(tài)為治愈狀態(tài),否則狀態(tài)不變;⑥如果為潛伏狀態(tài),則通過正態(tài)分布函數(shù)求得潛伏期時(shí)長的發(fā)病時(shí)間,若此時(shí)世界時(shí)間-感染時(shí)間大于潛伏期則更新狀態(tài)為確診狀態(tài),否則狀態(tài)不變。⑦如果為健康狀態(tài),隨機(jī)產(chǎn)生一個(gè)數(shù)值并判斷此數(shù)值是否在感染率之間,并且與不健康狀態(tài)人之間的距離是否在一個(gè)安全距離內(nèi),如果小于安全距離則此人會(huì)被感人,否則依然為健康狀態(tài)。具體算法流程如圖4、圖5所示。4)動(dòng)畫開始與暫停即是線程的喚醒與阻塞,本程序通過布爾類型實(shí)現(xiàn)同步鎖達(dá)到這一目的:程序開始時(shí),會(huì)直接調(diào)用阻塞方法,動(dòng)畫不會(huì)被渲染;當(dāng)點(diǎn)擊開始按鈕,直接喚醒線程并阻止線程調(diào)用阻塞方法,開始渲染動(dòng)畫;當(dāng)點(diǎn)擊暫停時(shí),會(huì)再次調(diào)用阻塞方法,停止動(dòng)畫渲染。通過暫停按鈕來阻塞線程不再更新動(dòng)畫,從而獲取在不同世界時(shí)間時(shí)刻此病毒的擴(kuò)散的情況;通過繼續(xù)按鈕來停止阻塞線程,繼續(xù)觀察病毒的擴(kuò)散情況。

3病毒擴(kuò)散模型的測試

針對不同的初始感染人數(shù)與不同感染率在相同城市總?cè)丝跀?shù),經(jīng)歷相同時(shí)間的情況下做出以下幾組數(shù)據(jù)。如下圖所示。根據(jù)此病毒擴(kuò)散模型設(shè)計(jì)進(jìn)行測試的結(jié)果顯示,在不同的感染基數(shù)和不同的感染率的情況下病毒擴(kuò)散的嚴(yán)重性有很大差異,因此對于傳染源的控制以及應(yīng)對的藥品的研發(fā)是關(guān)鍵的要素。若在此模型演示的基礎(chǔ)上對人流流動(dòng)加以控制,以及對醫(yī)院規(guī)模的擴(kuò)大,即解決床位的緊張,藥物匱乏等問題。對防疫和病毒的擴(kuò)散控制又將會(huì)得到一定的提升。

4總結(jié)

世界上的傳染病不可避免,但是盡人類的努力可以將傳染病做一個(gè)很好的防控。公共場所傳染性疾病擴(kuò)散模型設(shè)計(jì)通過應(yīng)用程序簡單易懂,結(jié)合動(dòng)畫更加生動(dòng)形象地表現(xiàn)出傳染病擴(kuò)散的過程,在不同場景、不同條件下對比所擴(kuò)散的程度,為人們預(yù)防控制傳染病提供了一定的理論基礎(chǔ)。

作者:趙安馳 朱鎮(zhèn)祥 方忠進(jìn) 單位:南京信息工程大學(xué)應(yīng)用技術(shù)學(xué)院

免责声明

本站为第三方开放式学习交流平台,所有内容均为用户上传,仅供参考,不代表本站立场。若内容不实请联系在线客服删除,服务时间:8:00~21:00。

AI写作,高效原创

在线指导,快速准确,满意为止

立即体验
文秘服务 AI帮写作 润色服务 论文发表