待ち行列5.M/M/1における待ち行列の基本方程式の導出

パラメーター\lambdaポアソン到着、窓口が1人でパラメーター\muの指数サービスの待ち行列M/M/1において長さjであるとき、この待ち行列は状態E_jにあるという。したがって系は常にE_0,E_1,\cdotsのいずれか1つの状態をとる。時刻tで状態E_jにある確率をP_j(t)で表す。時刻tにおける系の長さをQ(t)とすれば、P_j(t)=P(Q(t)=j)である。

ある時刻t_0で状態E_jにあったとする。その時刻後の系の状態の分布の移り変わりは以下の要因によって決定される。

(1)時刻t_0における系の長さ。

(2)時刻t_0における客のサービス終了時刻。

(3)時刻t_0以降の到着時刻の分布。

(4)時刻t_0以降に到着する客のサービス時間。

ある時刻を0とし、系の長さQ(t),(t \lt 0)を考察する。任意のt,t'\lt 0に対して

P(Q(t+t')=k|Q(t)=j)=P(Q(t')=k|Q(0)=j)である。遷移確率を

\begin{equation}\left\{ \begin{array}{l} P_{i,j}(t)=P(Q(t)=j|Q(0)=i) \\ P_{i,j}(0)=\delta_{i,j} \left\{ \begin{array} {l} 1,(i=j) \\ 0,(i\ne j) \end{array} \right.\end{array} \right. \end{equation}

と表す。i,j のいずれかが負のときはP_{ij}(t)=0とおく。微小な時間区間(t,t+dt)をとるとき1人到着する確率は\lambda dt + o(dt^2)であり、サービス中の客がこの区間内で終了して立ち去る確率は同様に\mu dt + o(dt^2)であるから

\begin{equation}\left\{ \begin{array}{l} P_{i,i+1}(dt)=\lambda dt + o(dt^2) \\P_{i,i-1}(dt)=\mu dt + o(dt^2) \\ P_{i,i}(dt)=1-\lambda(dt)-(1-\delta_{i0})\mu dt + o(dt^2) \\ P_{i,j}(dt)= o(dt^2),(|i-j|\geqq 2) \end{array}\right.\end{equation}

最初の式は時刻ti人おり、それから微小時間dt後1人増えてi+1 人になる確率であるから、

P(dt\mbox{内でサービスが終了せず1人到着する})

=(1-\mu dt + o(dt^2))(\lambda dt + o(dt^2))= \lambda dt + o(dt^2)

\displaystyle{ \sum_{n=1}^\infty P(dt\mbox{内でサービスが}n\mbox{人終了して}n+1\mbox{人到着する})}

\displaystyle{ \leqq \sum_{n=1}^\infty P(dt\mbox{内に}n+1\mbox{人到着する}) = P(dt \mbox{内に2人以上到着する})=o(dt^2)}

の和で得られる。上から2式目も同様である。4式目は自明である。

上から3式目についてはi=0 のとき誰も来ない確率であるから

P_{0,0}(t)=1-\lambda dt + o(dt^2)

i \gt 0のときはdt時間内にn\geq 0としてn人来てn人帰る確率の総和だから、0人来て0人帰る確率は

(1-\lambda dt + o(dt^2))(1-\mu dt  + o (dt^2))=1-\lambda dt -\mu dt + o(dt^2)

1人来て1人帰る確率は

(\lambda dt + o(dt^2))(\mu dt + o(dt^2))=o(dt^2)

2人以上来て同じ人数帰る確率は無視できるから3式目も正しい。

時刻0で系の長さがiなるとき、それから時刻t+dtjとなる遷移確率P_{ij}(t+dt)は時刻t=0の状態E_iから時刻tで状態E_kに移り、それから時刻t+dtで状態E_jになる互いに排反な事象の確率を加え合わせたものである。さらに時刻tで状態E_kであるとき、時刻t+dtで状態E_jになる遷移確率は時刻t以前の状態に独立であるから、

\displaystyle{P_{i,j}(t+dt) =\sum_{k=0}^\infty P(Q(t+dt)=j,Q(t)=k|Q(0)=i) }

\displaystyle{= \sum_{k=0}^\infty P(Q(t)=k|Q(0)=i)P(Q(t+dt)=j|Q(t)=k)} 

\displaystyle{= \sum_{k=0}^\infty P_{i,k}(t)P_{k,j}(dt)} 

\begin{equation} = \left\{ \begin{array}{ll} P_{i,j-1}(t) \lambda dt + P_{i,j}(t) \{1-(\lambda+\mu)dt\} +P_{i,j+1}(t) \mu dt + o(dt^2) & ,(j \gt 0)\\  P_{i,0}(t) (1-\lambda)dt +P_{i,1}(t) \mu dt + o(dt^2)  & ,(j=0) \end{array} \right.\end{equation}

最後の変形はP_{i,i}(dt),P_{i,i-1}(dt),P_{i,i+1}(dt),P_{i,j}(dt)の式を使った。したがって

\begin{equation} \frac{d P_{i,j}(t)}{dt}= \left\{ \begin{array}{ll}  \lambda P_{i,j-1}(t)+  -(\lambda+\mu) P_{i,j}(t) +\mu P_{i,j+1}(t) & ,(j \gt 0)  \\  -\lambda P_{i,0}(t) +\mu P_{i,1}(t)  &  ,(j=0)\end{array} \right.\end{equation}

以上で待ち行列の基本方程式の導出が終わった。微分方程式の各項の意味はj-1人いるところへ1人来る場合、j人いるところへ1人の増減も無い場合、j+1人いるところから1人減る場合となる。dt時間内では2人以上の変化は無視できるということである。ちなみにt\to \inftyでの極限は方程式の解がベッセル関数を使って解けることから、ベッセル関数の漸近表示を用いて示される。時間があれば後述しようと思います。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

わかりやすい待ち行列システム 理論と実践 [ 高橋敬隆 ]
価格:3080円(税込、送料無料) (2020/9/9時点)

楽天で購入