傳染病之擴散模型

翁秉仁

 



首頁 | 搜尋

.作者任教於台大數學系
.本文節錄改寫自作者《微積分講義》

註釋

 


永久免疫的傳染病

底下我們要說明,在傳染病的傳播模式中也會出現 Logistic 模型。假設有一種傳染病,接觸便會感染,而且感染後便能免疫永不再犯,因此在時間 t,某城市的所有人口 M 中,可分成已感染人口 P(t) 與未感染人口 M-P(t),設

\begin{displaymath}
\left\{
\begin{array}{rcll}
I(t) &=& \frac{P(t)}{M} & (\mbox...
... 0.0pt plus0.2pt minus0.1pt{\MhQ\char 48}})
\end{array}\right.
\end{displaymath}

接著假設 η 是在此城市中,每人每天平均接觸的人數,則病人(感染者)每天的增加率為

每個病人平均每天接觸的健康者比率 × 總病人數 = $\big( \eta \times S(t) \big) \times \big( M \times I(t) \big)$

所以使用連續模型,就得到

\begin{eqnarray*}
&& (M \times I(t))' \; = \; \eta \cdot S(t)\cdot M\cdot I(t) ...
...Longleftrightarrow && I'(t) \; = \; \eta \cdot I(t)\cdot(1-I(t))
\end{eqnarray*}


這是一個 Logistic 模型。

習題:
若考慮 $\lambda= \frac{\eta}{M}$,說明此模型可以改寫成我們更熟悉的樣子:

\begin{displaymath}
P'(t)=\lambda P(t)(M-P(t))
\end{displaymath}

(Hint: $P(t) = M\cdot I(t)$.)

寫成 I(t) 的好處是城市真正的人口數 M 消失了,比例的變化才是重要的,所以由前章的分析,我們知道解曲線 I(t)(當然 0<I(t)<1)是一個 S 型曲線,當 $I(t)=\frac{1}{2}$(即半數人口被感染時),疫情最猛烈。

習題:
(1) 設 $I(0)=\frac{1}{1000}$,視 η 為參數,求 I(t)
(2) 求疫情最嚴重(即 $I(t)=\frac{1}{2}$)的時間 t*
(3) 說明 η 大小與 t* 相應變化的關係。
(Ans. (1) $I(t)=\frac{1}{1+999e^{-\eta t}}$; (2) $t^*=\frac{\ln999}{\eta}$;(3) 反比)。

註:這說明在城市或人口密集處,由於 η 值較大,傳染病疫情的擴散程度遠快於鄉村,因此都市的公衛部門在控制疫情時,時間壓力更大。

習題:
台北市發生傳染病,其 η 由資料中估計為 1.7,台北市人口設為 250 萬人,假設患病人數在 1 月 15 日時為 5 人,請問什麼時候是患病人數增加最快的時刻?又什麼時候此傳染病會進入「尾聲」(假設定義為 $\frac{999}{1000}$ 人口都得過此病?)
(Ans. 1 月23日;1 月27日.)

 
對外搜尋關鍵字:
Logistic模型
平均值定理
 
非永久免疫的傳染病

當然不是所有的傳染病都能永久免疫,病人在治癒後,有可能再重新感染病情,這時我們需要修改模型為

\begin{displaymath}
\big(M\cdot I(t)\big)'= \big(\eta\cdot S(t)\big)
\big(M\cdot I(t)\big) - \sigma \cdot M\cdot I(t)
\end{displaymath}

其中 η 同前,σ 表示每日治癒的人數比率,因此 $\frac{1}{\sigma}$ 表示這種傳染病的(平均)病期(仔細想想為什麼?)。我們得到一個新的方程式

\begin{displaymath}
I'(t)=\eta I(t) \big(1-I(t)\big)-\sigma I(t)
\end{displaymath}

原式可以改寫成

\begin{eqnarray*}
I'(t) &=& (\eta -\sigma)I(t)-\eta I(t)^2 \\
&=& \eta \cdot I(t)\cdot \Big( \big( 1- \frac{\sigma}{\eta} \big) -I(t) \Big)
\end{eqnarray*}


這也是 Logistic 模型。唯一的例外是 $1-\frac{\alpha}{\sigma}=0$ (即 $\sigma=\eta$)時。

這裡出現一個重要的指標:接觸數 β,定義成

\begin{eqnarray*}
\beta \;\; \equiv \;\; {\frac{\eta}{\sigma}} &=&
(\mbox{ {\Mb...
...t{\MaQ\char 65}\hskip 0.0pt plus0.2pt minus0.1pt{\MbQ\char 98} }
\end{eqnarray*}


而且 $1 - \frac{\sigma}{\eta} = 1- \frac{1}{\beta}$

習題:
說明 I(t) 的解可寫成

\begin{displaymath}
\left \{
\begin{array}{cl}
\frac{1}{\frac{\beta}{\beta-1}} ...
...{1}{\eta t+\frac{1}{I(0)}} & \quad \beta=1
\end{array}\right.
\end{displaymath}

我們依 β 值分成三種情況來討論:

(1) $\beta <1$(病期中平均接觸人數少於 1 人)。

$1 -\frac{\sigma}{\eta}=1-\frac{1}{\beta} <0$,圖形如下左圖, 這表示即使原來有 100 % 的人患病(I(0)=1),但是由於 $\beta <1$, 病人被治癒後,再重新染病的機會不大,慢慢的所有人就康復了。



$\beta <1$$\beta = 1$$\beta >1$

(2) $\beta = 1$(病期中平均接觸人數為 1 人)。

這是邊界情況。由圖知,所有人都會康復,只是康復的速率看起來比(1)的情況要緩慢。

(3) $\beta >1$(病期中平均接觸人數超過 1 人)。

這表示疫情仍然在有效地擴散,而且最後患病比率會趨於某大於 0 的穩定值 $1-\frac{1}{\beta}$,不會消失。

因此為了消滅疫情,重要的是要將 β 值調成 <1,但 $\beta =\frac{\eta}{\sigma}$,因此最好能

(1) 減小 η,亦即使平均每日接觸數變少,所以病人需要隔離。
(2) 加大 σ,亦即縮短傳染病的病期,譬如說發明新藥,新治療法等等。

這些都與常識完全符合。

另外,這一種癒後不會再感染的傳染病,如果在人類社會中已經歷史悠久,那麼它通常與人類之間已經達成某種平衡,這種疾病的特徵是它在長期流行的區域內既不會致命也不會絕跡(這就是 $\beta >1$ 的情況,想想普通拉肚子,感冒等)。但是,如果這種疾病被傳染到從未接觸它的人群中,可能導致嚴重的疫情,甚至改寫歷史 註1

   
 
更精緻的傳染病模型

前面曾經提到兩種傳染病模型,第一種模型,將所有人分為未被傳染者與已傳染者,中間沒有什麼治療程序,到最後所有人口都會染病(因此大概不能稱之為病)。第二種模型,處理類似感冒,拉肚子的傳染病,傳染病治癒後並沒有免疫力,因此在公共衛生上必須施行某種程序,控制傳染病的傳播。

本節要處理的是被另一種情況:許多傳染病,如痲疹,天花在患病治癒後,有很高的免疫力,因此被治癒的人與未被傳染者不能視為同一種群體(如第二種模型)。因此我們必須將所有人分成三種:健康者(人口比例 x(t)),病人(人口比例 y(t)),治癒者(人口比例 z(t))。就像第二種模型,這些函數應滿足下列微分方程組。

\begin{displaymath}
\left\{
\begin{array}{l}
x'=-\alpha xy\\
y'=\alpha xy-\beta y\\
z'=\beta y
\end{array}\right.
\end{displaymath}

其中, 0 < x(t), y(t), z(t) < 1x(t)+y(t)+z(t)=1$\alpha>0$ 是每人每天接觸的人數,$\beta > 0$ 是每天治癒的比例,如前, $\frac{1}{\beta}$ 可看成平均病期,並定義病期平均接觸數 $\eta= \frac{\alpha}{\beta}$

習題:
討論 x(t), y(t), z(t) 等於 01 等邊界情況的解及其意義。

例:台北市發生流行性感冒(免疫期較長的病),由公衛資料知道,$\alpha =2 $,且 $\beta =0.4 $,請討論此傳染病之擴散行為。

接觸數 $\eta =\frac{\alpha}{\beta}=5$。但是在這個模型堙A更有意義的指標應是(開始時)病期平均接觸之健康人數(暫稱有效接觸數), 5 x x(0)=5x0,直覺上可猜測如果 5 x0<1,則傳染病應該較難擴散開來。

z0=0,令 x0=0.99, 0.2, 0.1,各對應於有效接觸數 >1, =1, <1 的情況,用歐拉法作圖得(紅線為 x(t),綠線為 y(t),藍線為 z(t)):



由左至右 x0=0.99x0=0.2x0=0.1

注意到當 $x_0\leq \frac{1}{5}=0.2$ 時,受傳染人數 y(t) 果然沿路遞減,而 x0=0.99 時,y(t) 先上升再下降,顯示傳染病擴散的趨勢。當然一開頭就假設,正感染者佔了大部分比例似乎是一件荒謬的事情,正常的情況應該是 x0 接近 1,y0 接近於 0,因此流行性感冒的擴散是無法避免的。

習題:
用常識解釋為什麼當 y0 大時,y(t) 會遞減。

習題:
底下是在相同起始條件 x0=0.99y0=0.01 時,不同的接觸數 $\eta=2$(左圖),$\eta=16$ (右圖)所對應的疫情曲線圖,我們發現接觸數越大,疫情傳染的範圍越大,速度越快。請用常識說明之。



由前例圖形討論,我們發現

(1) y(t) 無論如何會趨近於 0

(2) (假設 $\eta >1$
$1>x_0>\frac{1}{\eta}$,則 y(t) 會遞增再遞減(傳染病擴散)。

$x_0\leq \frac{1}{\eta}$,則 y(t) 遞減(傳染病不擴散)。

底下我們利用簡單的定性觀察法,來解釋這個現象。

(1)的解釋:(分成四點來說明)

(i) (在傳染病期間,未被感染的人當然會遞減)
由於 $x'=-\alpha xy $,而且 x(t), y(t)> 0。所以 x(t) 會一路遞減到某平衡比例 $x_{\infty}$,當然這裡不能排除 $x_{\infty}$ 可能等於 0 的可能性。

(ii) (因為有免疫力,治癒的人數一路攀昇)
$z'=\beta y$,而且 $z(t)\leq 1$。所以 z(t) 一路遞增到某平衡比例 $z_{\infty}$

(iii) (被傳染人數也會趨於平衡)
這是因為 x(t)+y(t)+z(t)=1,所以 $y_{\infty} =1-x_{\infty} - z_{\infty}$

(iv) (如果受傳染者始終不絕跡,那治癒者不可能趨於平衡)
由於 $z'(t) =\beta y(t) \rightarrow \beta y_{\infty}$,所以如果 $y_{\infty}\neq 0$,則 z'(t) 趨近於一的常數,從幾何直覺知道 z(t) 不可能趨近於一定數 $z_{\infty}$,這與 (ii) 矛盾,所以 $y_{\infty}$ 非得等於 0 不可。

由(i)-(iv),我們知道 y(t) 無論如何會趨近於 0。

習題:
利用平均值定理更詳細地說明上面(ii)中的幾何直覺。即

「若 z'(t) 趨近於一正常數,則 z(t) 不可能趨近於一定數 $z_{\infty}$。」

(2)的解釋

(i) 如果 $x_0\leq \frac{1}{\eta}$,由於 x(t) 會遞減, $x(t)\leq x(0)=x_0 \leq \frac{1}{\eta}$。又

\begin{displaymath}
y' = \alpha y \; (x-\frac{\beta}{\alpha})
= \alpha y(x-\frac{1}{\eta}) \leq 0
\end{displaymath}

亦即 y 從一開始就會遞減。

(ii) 若 $x_0>\frac{1}{\eta}$

\begin{displaymath}
y'(0)=\alpha y(0)(x(0)-\frac{1}{\eta})>0
\end{displaymath}

所以 y(t) 在開始時就會遞增。但 $x_{\infty}$ 不可能 $ \geq \frac{1}{\eta}$(即 x(t) 不可能恆 $ \geq \frac{1}{\eta}$),因為這樣一來 y'(t)$\geq 0$,則y(t) 遞增, $y_{\infty}\neq 0$,與(1)矛盾。 換句話說,如果有效接觸數 $\eta x(t)$$\geq 1$,則傳染擴散永遠也停不下來。所以 x(t) 終究要小於 $\frac{1}{\eta}$,但這麼一來,y'(t)x(t) 遞減到 $\frac{1}{\eta}$ 前,y'(t) > 0; 當 x(t) 越過 $\frac{1}{\eta}$$x_{\infty}$ 遞減時, y'(t)<0,因此 y(t) 先遞增後遞減,且在 $x(t)=\frac{1}{\eta}$ 時,y(t) 達到最大值。

下面習題是用另一個方法(相平面曲線法)來解釋(2)。

習題:
假設 $\eta >1$,利用方程組的前兩式,說明

(1) $\frac{dy}{dx}=-1+\frac{1}{\eta x}$,並解出 $y = -x + \frac{1}{\eta}\ln x+C$
(2) 說明解曲線在 $x=\frac{1}{\eta}$ 有極大值且圖形凹向下。
(3) 在 xy-平面,x>0, y>0, x+y<1 的區域中,以 C 為參數,畫出一些解曲線,並標明曲線隨著時間變化的方向。



註:光從這個習題看不出為什麼 $y_{\infty}$ 必須等於 0。

習題:
由上習題說明 $1-\frac{1}{\eta}<z_{\infty}<1$
習題:
如果 $\eta <1 $,分析整個傳染病模型(定性分析或上習題的方法都試試看)。

   
 
預防注射

在前面例子中提到初始值 x0 = 0.1 時,我們覺得很荒謬。但是如果從另一個角度想,也許並不完全如此。如果我們真能將 x0 控制在 $ <\frac{1}{\eta}$ 的範圍內,則不管 y0 是多少,方程式 $y'=\alpha y(x-\frac{1}{\eta})\leq 0$ 恆成立。因此傳染病便被有效控制了。

這正是預防接種的重要性,由於疫苗的注射,一個無抵抗力的健康人可以轉移成具免疫力的治癒者,在大規模的疫苗接種後,x0 可以真正變小,因此有效控制傳染疫情的策略,就是利用預防接種將 x0 減低到接觸數的倒數以下(即有效接觸數 <1)。

例.(續前例)
假設真能發展此流行性感冒的疫苗,若預防接種的比例高達

\begin{displaymath}
1-\frac{1}{5}=80 \%
\end{displaymath}

則疫情便可控制住。

這個傳染病模型最有趣的結果,是為了不讓傳染病疫情擴散,預防接種並沒有必要做到全民接種的地步。這中間最關鍵的問題,是要知道該傳染病在此地醫療水準下的接觸數 η。例如小兒痲痺的接觸數通常較百日咳來得小,理論上就不比百日咳的接種壓力來得大(參考習題)。當然在國家財政允許下,嚴重傳染病的預防接種還是應以全民為目標,但當疫苗成本昂貴時,而且又是接觸數低的傳染病時,上述的考慮就會成立。當然,如同第一節的討論,接觸數並不是疾病的特定性質,與當地醫療環境也習習相關。提高衛生水準,增進有效之醫療法,都有助於縮減預防接種的規模。

我們已經了解傳染病接觸數的重要性,下面的習題討論如何實際掌握接觸數。

習題:
說明接觸數

\begin{displaymath}
\eta =\frac{\ln x_{\infty}-\ln x_0}{x_{\infty}-x_0}
\end{displaymath}

註:因此當 $x_0 \approx 1$ 時, $\eta = \frac{\ln x_{\infty}}{x_{\infty}-1}$

習題:
台北市流行性感冒疫期過後,據各醫院通報,治癒人數約為 100萬人,若台北市人口為 250 萬人,請估計接觸數 η。
(Ans. 1.28)

註:依據醫院通報,只能得到接觸數的下限,因為還有許多人服用成藥或沒有就醫。

   

回頁首

(若有指正、疑問……,可以在此 留言寫信 給我們。)

EpisteMath

EpisteMath (c) 2000 中央研究院數學所、台大數學系
各網頁文章內容之著作權為原著作人所有


最後修改日期:9/30/2001