數學 · 常微分方程 · 08

自治微分方程Autonomous differential equations

如果變化率只看當下狀態,長期走勢能先讀出來嗎?

從方向場縮成一條相線:先找不動的狀態,再看它們兩旁的箭頭。用 logistic 族群模型把分離法、初值與穩定性接在一起。

系列目錄 · 08/26

起點超過容納量,曲線會被截斷嗎?

K 固定為 100 個體。先預測 N₀=0、N₀=100 與 N₀>100 的走勢,再調整初值與 r。

精確解(綠色實線)邊界/參考(藍色虛線)
N′=rN(1−N/K),r>0、K>0。N=0 與 N=K 為平衡;0<N<K 時增加,N>K 時減少。N₀>0 的解趨向 K,N₀=0 則維持零。
上圖是時間軌跡:橫軸 t(天),縱軸 N(個體)。綠線是模型的精確解;藍色虛線為 K=100。下方相線是不同的圖。

相線:沿 N 軸表示 N 隨時間增加/減少;水平位置不是時間。

00 < N < K →K← N > K
N(4 天) · 模型值
初始方向/平衡

自治:右側不明顯依賴時間

如果變化率只看「現在有多少」、不看「現在幾點」,這條方程就叫自治。同樣的狀態,永遠得到同樣的走法。

一階自治微分方程形如 y′=g(y):斜率只由當下 y 決定,右側沒有顯式出現 x。若自變數是時間 t,便寫 dy/dt=g(y)。自治不表示 y 不變,而是同一狀態在不同時間遇到相同的變化規則。

熟悉的 y′=y 是自治;y′=2xy 不是,因為即使 y 相同,換 x 斜率仍可能改變。一階自治方程也是可分離的一種(f(x)=1),但現在先不急著積分。

若 g(y*)=0,常數函數 y(t)=y* 滿足方程,稱為平衡解。這裡 y* 是固定值,星號只用來標記平衡,沒有微分的意思。方向場在同一高度處有相同斜率,因此可以把資訊壓成沿 y 軸的一條相線。

logistic 模型:每個符號先有單位

模型要先講清楚每個字母代表什麼、單位是什麼,算出來的數字才知道在說什麼。

dN/dt = rN(1−N/K)t:天;N(t):個體數的連續近似;r>0:天⁻¹;K>0:個體。

rN 是低密度時的比例成長項,無因次因子 (1−N/K) 使每個個體的淨成長率隨密度增加而下降。本頁固定 r、K,不含季節、外來移入、離散個體或時間延遲,物理解釋限 N≥0。

左右單位都是個體/天。當 N≪K,因子接近 1,因此短期近似 N′≈rN;接近 K 時淨成長趨近 0。這是一個理想化模型,不是所有真實族群的通則,也不把一條平滑曲線當成實地預測。

K 不是禁止超越的硬牆。初值可以大於 K;模型會預測它往下降。程式若直接把 N 截在 K,就改掉了方程。

不用求解,先把方向讀完

不用解出公式也能先知道往上還是往下:把變化率的正負標在一條數線上就夠了。

  1. 令右側為零

    rN(1−N/K)=0 ⇒ N=0 或 N=K

    r>0、K>0,所以有這兩個平衡。

  2. 測試兩個平衡之間

    0<N<K ⇒ N′>0

    r、N、1−N/K 都為正,N 隨時間增加。相線箭頭朝較大的 N。

  3. 測試 K 的上方

    N>K ⇒ N′<0

    1−N/K 為負,其餘為正,所以 N 減少,箭頭朝 K。

  4. 在平衡上代回

    N₀=0 ⇒ N(t)=0;N₀=K ⇒ N(t)=K

    解不會因為旁邊有箭頭就自行離開平衡。此多項式右側具有局部唯一性,阻止別的解穿越平衡解。

相線只表示狀態的方向,不是 N 對時間的完整曲線,也沒有提供花多久才接近 K。箭頭的長度不表示速度大小。圖上哪個區段亮起只標目前初始狀態;上方時間軌跡才顯示 t 與 N 的對應。

用分離法核對相線的預測

相線已告訴我們走勢;再用解析式核對,還能算出指定時間的值。

先保留 N=0 與 N=K。對其他解,設無因次狀態 z=N/K;K 是常數,因此 z′=N′/K=r z(1−z)。這樣對數的輸入也保持無因次。

  1. 分離非平衡解

    z′/[z(1−z)]=r

    這一步只在 z≠0、1 的區段。

  2. 拆分積分

    1/[z(1−z)] = 1/z + 1/(1−z)

    通分後分子 (1−z)+z=1。

  3. 積分,注意第二項的負號

    ln|z/(1−z)|=rt+C

    ∫1/(1−z) dz=−ln|1−z|。合併成比例的對數。

  4. 還原符號與代數

    z/(1−z)=B ert

    B 可正可負,吸收一段解中比例的固定符號;B≠0。解出 z=B e^(rt)/(1+B e^(rt))。

  5. 代回初值並改寫

    N(t)=K/[1+(K/N₀−1)e−rt]

    N₀=N(0)>0。對 N₀≠K 由前式整理;N₀=K 雖在除法被排除,代回可確認同一最後公式仍適用。N₀=0 另列零解。

取 K=100、r=1、N₀=20。比值 K/N₀−1=4,所以:

N(t)=100/(1+4e−t)
  1. 初值檢查

    N(0)=100/(1+4)=20

    符合指定個體數。

  2. 方程檢查

    N′=400e−t/(1+4e−t)²

    右側 N(1−N/100) 同樣為這個式子;微分負指數及分母各帶一個負號,最後為正。

  3. 有效範圍與極限

    t≥0:分母 > 0;t→∞:N(t)→100

    一般 N₀>0 時,令 A=K/N₀−1>−1,1+A e^(−rt) 對 t≥0 始終為正。故本頁所有非負初值都能向未來延伸。

即使 N₀>K,A 也只是落在 (−1,0),未來分母仍為正,曲線由上方接近 K。若往過去延伸,有些初值會碰到有限時間奇點;本頁的物理觀察與滑桿限定 t≥0,不宣稱所有初值都在整條實數軸有效。

穩定與靠近,是兩層敘述

穩定是從夠近的地方出發,之後一直保持接近;若還會趨近平衡點,才叫漸近穩定。

平衡值穩定,意思是起點足夠接近時,未來能一直保持接近;若再會隨時間趨向該平衡,便稱漸近穩定。判斷一律指向時間增加的方向,並指定所研究的狀態範圍。

在 N≥0 的 logistic 模型中,K 的兩側箭頭都朝它,公式也確認任何 N₀>0 趨向 K。接近 K 的解會保持在初值與 K 之間,因此 K 漸近穩定。0 則不穩定:再小的正初值,最終也會遠離零、靠近 K;但恰為 0 的解仍永遠是 0。

可輔助計算 g′(N)=r(1−2N/K),所以 g′(0)=r>0、g′(K)=−r<0。這個導數判別只對夠光滑且 g′≠0 的平衡提供簡單結論;若 g′=0,要回去看符號等資訊。例:y′=−y³ 的零平衡兩側都向零,雖然 g′(0)=0,仍可證漸近穩定。

真實族群可能因延遲或外部因素振盪;在這個一階、光滑、自治模型中,正解會單調靠近 K,不會在 K 兩側來回穿越。這是模型假設下的結論。

相線和公式,互相核對

相線負責方向,公式負責數值。兩個工具互相檢查,比只信一個安全。

1. K=100、r=0.5、N₀=150,初始斜率與長期值?

看完整推理

N′(0)=0.5×150×(1−1.5)=−37.5 個體/天。初值高於 K,所以先下降;精確式 N=100/[1−(1/3)e^(−0.5t)] 的分母從 2/3 趨向 1,N 從 150 趨向 100。沒有硬性裁切。

2. 把 r 加倍,平衡值會變成 2K 嗎?

看完整推理

不會。右側等於零仍在 N=0、K;公式只把 e^(−rt) 的時間尺度壓縮。由同一 N₀ 出發,達到同一中間高度所需時間減半(非平衡解)。

3. y′=−y³ 的 g′(0)=0,可以宣稱不穩定嗎?

看完整推理

不能。y>0 時 y′<0,y<0 時 y′>0,都朝零。由分離法可得 y(t)=y₀/√(1+2y₀²t),t≥0,含 y₀=0;代回成立,且保持靠近、趨向零。所以零是漸近穩定,導數判別失效不等於不穩定。

把「看狀態」的經驗帶到代換

把「先看狀態、再算式子」的習慣,帶到下一種需要換元的方程。

自治方程讓我們從局部斜率讀出平衡與長期走勢。下一頁的斜率不只看 y,而是看比例 y/x;把這個比例當新未知量,就能把一種新形式帶回已學過的分離法。

來源與範圍

定義與定理條件依下列作者/大學教材核對。本文的說明、例題推導與互動另行編寫;圖上小數是近似顯示,數學結論由推導及代回支持。本頁不證明所引用的一般存在唯一性定理。