程序員用Java仿真程序勸告高管:現在還不能復工

憋瘋了?在家宅不下去了?想出去透透氣了?

千萬別!

雖然你對疫情已經麻木了,覺得沒什麼大礙了。

但現實並非如此,抗疫戰鬥仍在繼續,還沒有達到鍾南山等專家所說的爆發期。

如果大家現在要是出門,真的是在疫情防控添亂!

不信?看看這個播放量達到數百萬的仿真程序吧,它告訴我們:

如果現在出門逛,迎接我們的,就是疫情越來越難控制的局面。

計算機仿真程序的設定

由於是一個仿真任務,所以採用的是面向對象的語言——Java

數學模型方面,則是自然界中常見的正態分佈(高斯分佈)。

程序員用Java仿真程序勸告高管:現在還不能復工


這裡的人群人的流動意向就按照正態分佈來模擬,而病毒的傳播率則是一個固定的參數。

這是一個較為簡單的模型,但並不影響對傳播及控制要素的分析。

先來介紹一下用來控制傳播各個環節的常量。

初始感染數量,設置為50人:

publicstaticintORIGINAL_COUNT=50;

病毒傳播率,設置為0.8:

publicstaticfloatBROAD_RATE=0.8f;

病毒潛伏時間,設置為0(若為140則代表14天):

publicstaticfloatSHADOW_TIME=0;

醫院收治響應時間

,設置為10(同上),表示從確診到安置隔離的時間:

publicstaticintHOSPITAL_RECEIVE_TIME=10;

醫院床位,疫情剛開始的時候由於醫院沒有隔離區,設置為0:

publicstaticintBED_COUNT=0;

流動意向平均值,設置為0.99,表示人們可以隨意流動:

publicstaticfloatu=0.99f;

現在忍不住要出門?會有大麻煩!

那麼,先按照上述的參數,也就是初始感染人數為50,醫院床位為0,流動意向為0.99,傳播的情況就是:

程序員用Java仿真程序勸告高管:現在還不能復工


病情就會慢慢傳播開來,這時候醫院就需要建立隔離區,將醫院床位參數改為100,即:

publicstaticintBED_COUNT=100;

若是此時,人們控制自己不隨意流動,那麼疫情將會迅速被控制,甚至被消滅。

其中,下圖右側中的紅色點點代表被收治的感染者。

程序員用Java仿真程序勸告高管:現在還不能復工


但疫情開始的時候,人們肯定控制不住自己的流動,所以將該參數值調回0.99,即:

publicstaticfloatu=0.99f;

此時,讓我們看下疫情擴散情況。

程序員用Java仿真程序勸告高管:現在還不能復工


醫院隔離區的床位會被馬上佔滿,疫情也會將不受控制。

而此時的做法就是擴大醫院的隔離區,增加床位。

醫院床位參數調至1000,即:

publicstaticintBED_COUNT=1000;

程序員用Java仿真程序勸告高管:現在還不能復工


此時疫情也能很快被控制,這也就是我們為什麼要建雷神山和火神山醫院。

但這時,也需要考慮一下醫院接收響應的因素,也就是一個患者從確診到被安置隔離的時間

若是這個時間過長,疫情也會變得比較糟糕,我們將醫院收治響應時間設置為100,即:

publicstaticintHOSPITAL_RECEIVE_TIME=100;

程序員用Java仿真程序勸告高管:現在還不能復工


不過幸運的是,國家現在在全力以赴,響應時間足夠應付本次疫情,而且會越來越快。

然而,還需要考慮一個非常重要的因素——新冠狀病潛伏期長達14天

之前的潛伏時間參數都設置為了0,現在設置為140(程序中為14天),即:

publicstaticfloatSHADOW_TIME=140;

此時讓我們看下疫情傳播情況。

程序員用Java仿真程序勸告高管:現在還不能復工


一開始的時候,由於潛伏期的關係,很難再人群中發現患者並進行隔離。

等潛伏期一過,就會出現前一陣子的那般爆發性的增長。而此時,醫院隔離區的床位也會被佔滿。

一旦醫院資源被耗盡,那麼疫情的傳播情況就會變得像一開始那般糟糕。

但是!此處劃重點!!

若是人們能夠控制流動意向,又會怎樣呢?

我們把流動意向平均值這個參數調為-0.99,即:

publicstaticfloatu=-0.99f;

程序員用Java仿真程序勸告高管:現在還不能復工

這個過程也反映了目前醫務工作人員與病毒鬥爭的艱難過程,雖然時間較長,但最終疫情得到了很好的控制。

從這個實驗過程,我們可以發現,人群流動意向這個參數貫穿始終,基本上起了主導作用。

雖然目前確診效率、醫院收治時間都在加快,但目前我們正處於潛伏期階段,也就是圖中哪些許多黃色的點點,而這也是最危險的時刻!

“傲慢才是生存的最大障礙”

這一程序,來自B站的UP主Ele實驗室。他在自己作品的開頭,也提到了自己為什麼要做個系統,他身邊的人已經快按奈不住心情了:

前幾天北京下雪後,竟然有家長帶著孩子出門打雪仗

家族群裡有個別親戚蠢蠢欲動,開始吆五喝六,準備聚餐了

還有一個遠方的親戚,要出門去參加婚禮了

可現在還不是出門的時候,疫情仍舊處於爆發期。他說,雖然花費了很多功夫進行了勸說,但效果如何,仍舊不得而知。

程序員用Java仿真程序勸告高管:現在還不能復工


作為一名程序員,他決定做點什麼。

於是就有了現在這個連夜打造的計算機仿真程序,希望能夠更直觀地讓大家感受下呆在家裡的重要性。

他也呼籲大家,不要抱有僥倖心理。

尤其是最近幾天,立春已至,各地天氣都在轉好,往往會給人一種疫情沒什麼大礙的錯覺。

可放鬆警惕的時候往往是最危險的時候,國家防控措施進入常態化,最後對疫情產生主導作用的,其實還是我們每個人。

在視頻的結尾,他引用了《三體》中的一句話,再次提醒大家:

“無知和弱小不是生存的最大障礙,傲慢才是。”

今天給大家的分享就到這吧!有收穫,需要JAVA面試資料或者基礎資料都可以關注小編同時轉發此文章後再私聊小編回覆【java】從裡面獲取2020年java架構師進階學習資料和BAT面試題。大家一起交流成長!


分享到:


相關文章: