• 沒有找到結果。

3.2 個體層

3.2.2 個體染病進程

圖 12 SEIR 模型

在個體的所有屬性中,個體的染病進程可以視為個體的健康狀況,而模擬的結 果也以所有個體的染病狀況來做為判讀的標準。個體染病進程須根據疾病的特性來規 劃,我們以登革熱為例,利用倉室模型(Compartmental model)中 SEIR 模型[16]的概念 如圖 12 所示 (Susceptible、Exposed、Infectious、Recovered)及有限狀態機(Finite state machine, FSM)的方法來做為個體的染病進程,將個體的狀態分為 SEIR 四種。S 為未 染病個體,E 為在潛伏期中之個體,I 為發病之個體,R 為已康復或死亡之個體,見 圖 13。

當個體狀態為 S(未染病)的時候代表此個體未感染疾病且具有被感染的能力,若 與攜帶病毒的病媒接觸後則有一定機率可進入 E(潛伏期)狀態。當個體狀態為 E 的時

候則代表此個體已感染疾病且進入潛伏期,在 E(潛伏期)狀態時個體雖然被感染但還 不具有傳染的能力,且因個體差異,每個個體的潛伏期長短不一,潛伏期完後根據發 病率,一部份個體會進入 I 狀態。當個體進入 I 狀態時則此個體具有傳染能力,一但 此染病個體與未染病的病媒接觸後,病媒根據感染率,一部份將感染疾病,個體發病 狀態經過一段時間之後即進入 R 狀態;根據死亡率,一部分的個體會死亡,另一部分 的個體則會康復,且康復後根據疾病的特性而有一段恢復時間,經過這段時間後可回 到 S 狀態。

圖 13 個體染病進程

以上狀態的變化,我們利用代理人系統來記錄每一個健康的個體感染疾病到康 復或死亡的變化,因為代理人能貼近人類行為,足以表現出個體的唯一性。每一個體 在真實社會中皆是獨一無二的,個體與個體之間存在差異性。不同個體在發病的時候 也會有不同的潛伏期與不同的就醫時間,潛伏期的不同會影響疾病爆發的時間,個體 就醫時間的不同則會影響疾病是否會爆發;如果染病個體遲遲不就醫,就很有可能將 疾病傳給他平常活動範圍之病媒而造成區域流行,根據 2004 年疾病管制局的疫情報 導,見表一[12]我們可推知個體在染病後會去就醫的比例,登革熱平均傳染期為 6 天,

E E I I S S

5~8天 平均7天 產生抗體

R R

未染病 潛伏期 已發病 康復或死亡

若是通報在發病的第六天以後,則前六天沒有採取任何的防疫措施而錯過了防疫的黃 金時期,使得此個體很可能已經將疾病傳播出去,若個體染病後可即時就醫提早通報 時間,則可避免將疾病傳播開。染病個體就醫之後,便會採取與病媒隔離的方法,例 如:登革熱病患住家須加掛蚊帳,防止染病個體在與病媒接觸以傳播疾病。

因為一個代理人所對應到的分身點跟此代理人同樣地代表一個個體,則代理人 狀態的改變一旦改變,其所對應之分身點狀態也ㄧ同改變,可以表現出一旦個體染病 之後沒有就醫,則他每天會出現的地點都可能變成疾病傳播的溫床。

表 1 登革熱本土確定病例醫院通報時效

由於個體本身具有許多參數及重要的屬性,所以在模擬的程式中,我們以類別 (class)的資料結構來代表個體的代理人部份,以方便記錄及查詢個體的屬性;在個體 的代理人方面,我們採用一維陣列的方式去紀錄個體的分身點位置,以加速我們在模 擬時搜尋個體數個分身點的速度。下表為類別中(class)紀錄個體的屬性:

屬性名稱 資料型態 說明

Mirror_count

整數 有幾個分身點

Cposition Pos

陣列 分身點所在位置

Age

整數 個體的年齡,程式中使用隨機的 方式安排

SEIR

列舉 表示個體的狀態用{S、E、I、R}

來表示 DENType

列舉 用來表示個體帶哪一種原

{DEN_1,DEN_2,DEN_3,DEN_4}

ImmunityType

列舉 用來表示個體對哪一種病毒具 有抗體

{None,type1,type2,type3,type4}

days

整數 用來表示個體的狀態再 SEIR 中 的進行到哪一天

IncubationDays

整數 用來表示個體的潛伏期有幾 天,約 5~8 天,程式中以隨機方 式決定

SeeDr

布林 此個體會不會去看醫生

WhenToSeeDr

整數 第幾天要去看醫生,利用上表(登 革熱本土確定病例醫院通報時 效)的比例分佈來計算出每個個 體第幾天會去看醫生。

表 2 個體屬性表

相關文件