M/M/s待ち行列の待ち時間分布

待ち時間制約(3)」の続きです。「待ち時間制約(2)」でM/M/1について行った考察をそのままM/M/sに拡張していきましょう。
ジョブがM/M/1待ち行列システムに到着した時、システム内にこのジョブを含めなくてk個のジョブがある確率(ただしk{\ge}sとします)は、「M/M/s待ち行列の特性 」から

  • p(k)=u^{k-s}(1-u)\Pi・・・・(1)

です。[tex:kk{\ge}sの場合について考察します。この場合、k個のジョブのうちs個は処理中であり、残りのk-s個のジョブは装置が空くのを待っている状態です。s台の装置のうちどれか1台が処理終了になるまでの時間は、処理時間の分布が指数分布なので、指数分布のにより、任意の時点から測っても同一の分布を持ちます。1台の装置が任意のdtの間に処理終了する確率は

  • \frac{dt}{t_e}・・・・(2)

なので、s台の装置のうちどれかが任意のdtの間に処理終了する確率は

  • \frac{sdt}{t_e}・・・・(3)

このことから、s台の装置のうちどれか1台が処理終了になるまでの時間Tの分布は

  • \frac{t_e}{s}\exp\left(-\frac{s}{t_e}t\right)・・・・(4)

になります。つまり、平均時間

  • frac{t_e}{s}・・・・(5)

の指数分布になります。現在(先ほどのジョブが到着した時点)から、その時点で待っているk-s個のジョブのうち先頭のジョブが処理開始するまでの時間は平均t_e/sの指数分布を持ちます。次に、2番目のジョブが待つ時間も指数分布の記憶なし特性によりやはり平均t_e/sの指数分布を持つことになります。結局、到着したジョブの前に並んで待っているk-s個のジョブが全て処理開始するまでの時間は、平均t_e/sの指数分布を持つ確率変数のk-s個の和で表されることになります。まだ、この状態では到着したジョブの待ち時間は終わっていません。到着したジョブが待ち時間を終了するためには、つまり、処理を開始するためには、さらに平均t_e/sの指数分布を持つ時間だけ待たなければなりません。結局のところ、平均t_e/sの指数分布を持つk-s+1個の確率変数の和がジョブの待ち時間になります。
ところで、「アーラン分布」の「アーラン分布は指数分布の和」のセクションで述べたように、平均1/\lambdak個の指数分布の和はアーラン分布

  • \frac{\lambda^kt^{k-1}}{(k-1)!}\exp(-\lambda{t})・・・・(6)

となります。よって、ジョブが到着した時にシステム内に自分を含めなくてk個のジョブがある場合(ただしk{\ge}sとします)の、到着したジョブが待つ時間の分布をf(t;k)とすると、

  • f(t;k)=\left(\frac{s}{t_e}\right)^{k-s+1}\frac{t^{k-s}}{(k-s)!}\exp\left(-\frac{st}{t_e}\right)・・・・(7)

となります。到着時にシステム内にk個のジョブが存在する確率は式(1)で与えられるので、ジョブの待ち時間の確率分布f_q(t)

  • f_q(t)=\Bigsum_{k=s}^{\infty}f(t;k)u^k(1-u)=\Bigsum_{k=s}^{\infty}\left(\frac{s}{t_e}\right)^{k-s+1}\frac{t^{k-s}}{(k-s)!}\exp\left(-\frac{st}{t_e}\right)u^{k-s}(1-u)\Pi
    • =(1-u)\Pi\exp\left(-\frac{st}{t_e}\right)\Bigsum_{k=s}^{\infty}\left(\frac{s}{t_e}\right)^{k-s+1}\frac{t^{k-s}}{(k-s)!}u^{k-s}=(1-u)\exp\left(-\frac{st}{t_e}\right)\frac{s\Pi}{t_e}\Bigsum_{k=s}^{\infty}\frac{1}{(k-s)!}\left(\frac{ust}{t_e}\right)^{k-s}
    • =(1-u)\exp\left(-\frac{st}{t_e}\right)\frac{s\Pi}{t_e}\Bigsum_{k=0}^{\infty}\frac{1}{k!}\left(\frac{ust}{t_e}\right)^k
    • =\frac{(1-u)s\Pi}{t_e}\exp\left(-\frac{st}{t_e}\right)\exp\left(\frac{ust}{t_e}\right)=\frac{(1-u)s\Pi}{t_e}\exp\left(-\frac{(1-u)st}{t_e}\right)

よってk{\ge}sの場合

  • f_q(t)=\frac{(1-u)s\Pi}{t_e}\exp\left(-\frac{(1-u)st}{t_e}\right)・・・・(7)

となります。[tex:kk<sになる確率は1-\piなのでジョブの待ち時間の分布は、待ち時間ゼロの時の」」が1-\Pi、待ち時間がゼロより大きい場合の確率密度が式(7)で与えられる、ということになります。


上の確率分布を累積確率分布の形で表してみましょう。累積確率分布をF_q(t)で表すことにします。tの最低値は0であり、t=0である確率が1-\Piなので

  • F_q(0)=1-\Pi・・・・(8)

です。t>0の時のF_q(t)については

  • F_q(t)=F_q(0)+\Bigint_0^{t}f_q(\tau)d\tau・・・・(9)

を計算することで求めることが出来ます。式(9)の右辺の第2項は

  • \Bigint_0^{t}f_q(s)ds=\frac{(1-u)s\Pi}{t_e}\Bigint_0^t\exp\left(-\frac{(1-u)s\tau}{t_e}\right)d\tau
    • =\frac{(1-u)s\Pi}{t_e}\frac{-t_e}{(1-u)s}\left[\exp\left(-\frac{(1-u)s\tau}{t_e}\right)\right]_0^t=-\Pi\left[\exp\left(-\frac{(1-u)s\tau}{t_e}\right)\right]_0^t
    • =\Pi\left[1-\exp\left(-\frac{(1-u)st}{t_e}\right)\right]

となりますので、これを式(9)に代入すると

  • F_q(t)=F_q(0)+\Pi\left[1-\exp\left(-\frac{(1-u)st}{t_e}\right)\right]

これに式(8)を代入すると

  • F_q(t)=1-\Pi+\Pi\left[1-\exp\left(-\frac{(1-u)st}{t_e}\right)\right]

よって

  • F_q(t)=1-\Pi\exp\left(-\frac{(1-u)st}{t_e}\right)・・・・(10)

式(10)から、F_q(0)=1-\Piであること、t\rightar{\infty}F_q(t)\rightar{1}になることを確かめることが出来ます。