在了解 Markov Chain 的定義及其性質之後,這一節要介紹一種 continuous-time Markovian Chain: Birth-Death Processes。
在 Birth-Death Processes 中,state 只會跳到 state 或者 state (state 只能跳到 state ), 代表 population in the system。
Transition rate 可表示為:
所謂 Birth 就代表有一個 arrival( 對應的箭頭),使整個系統的 size 增加 1,而從一個 birth 到下一個 birth 發生的間隔時間為 exponential random variable。
所謂 Death 就代表一個 departure( 對應的箭頭),也就是一個 customer 被 server 服務完而離開這個系統,系統的 size 減少 1,而兩個 Death(departure) 之間的時間長度也會是一個 exponential random variable。
由 Birth-Death Processes 延伸,包括日後會學到的 等等各式各樣的 queue,這些 queue 都是以 Birth-Death Processes 為基礎,差別只在於 Server 的數量(影響到 service rate())以及 System Capacity 的不同(影響到 blocking probability & effective arrival rate())。
分析各種 queue 的第一步就是搞清楚 state transition,畫出各個 state 之間的 arrival & departure(service) rate(如 Figure 2.1),然後運用下面會介紹的 Balanced Equations 求出 steady state probability() ,有了 steady state probability() 就可以進一步分析 queue 的各種 metrics,像是 average system size ,以及 average waiting time 等等。
因為 Birth-Death Processes 屬於 continuous-time Markov Chain,因此我們可以寫出它的 generator matrix:
當 state space 是有限的時候,可用
來求 steady state probability。
而 的式子經過整理其實就是 Global Balanced Equations。
首先寫出 :
移項:
Global Balanced Equations 的意義為:在 Steady state,對一個 來說要達到 Flow Balance,就是流進 的 flow(右式)要和流出(左式)相等(見上面 Fig 2.1,注意箭頭的流向)。
將第一式移項,我們可以將 表示為:
將第二式移項,我們可以將 表示為:
如此一來我們可以由 開始,不斷往上疊代,代換出 ,下面以 為例:
在代換的過程中我們會發現其規律, 可以被表示成:
對 的中間的flow來說,跨到左邊跟跨到右邊(注意箭頭的流向) In the long term 會平衡(記得教授上課時說的例子:教授在上課期間內,從黑板左側走到右側,以及從右側走到左側的次數會差不多,最多差一次):
繼續代換(將 用 表示,以此類推)即可得到下式
不論是 Global or Detailed,最後推導出來的結果都一樣:In steady state(In the long term)
求解 有三種方法可以用:
以下用 queue 來示範上述三種方法。
已知:
利用機率合為一求解 :
定義 generating function :
寫出 Global Balance Equation:
先對第一式做整理:
同乘上 :
把 做 sum 起來:
調整 的項次使之和 一致:
將 sigma 項換回 generating function,可得:
代入第二式():
經過一場混戰,對式子做整理後可得:
代入,可得:
NOTE: 當 時,就是 system size 的期望值
用公式解遞迴(公式解以及其推導請參考離散數學相關課程及教材),base case 為 ,以及