M/G/1待ち行列の待ち時間の平均

M/G/1のp(k)の確率母関数(2)」の式(28)(ここでは番号を振り直して式(1)とします)

  • W^*(s)=\frac{(1-u)s}{s-\lambda+{\lambda}G(s)}・・・・(1)

を用いて、「確率密度関数のラプラス変換」の式(3)(ここでは番号を振り直して式(2)とします)

  • E(X^n)=(-1)^nF^{*(n)}(0)・・・・(2)

を利用して、ジョブの待ち時間Wの平均E(W)と2乗平均E(W^2)を求めてみます。


式(1)の両辺をそのままs微分すると、右辺の計算がちょっと大変そうなのでまず式(1)を

  • W^*(s)[s-\lambda+{\lambda}G(s)]=(1-u)s・・・・(3)

と変形してから、式(3)の両辺をs微分します。すると

  • W^{*(1)}(s)[s-\lambda+{\lambda}G(s)]+W^*(s)[1+{\lambda}G^{(1)}(s)]=1-u・・・・(4)

ここでs=0とすると

  • W^{*(1)}(0)[-\lambda+{\lambda}G(0)]+W^*(0)[1+{\lambda}G^{(1)}(0)]=1-u・・・・(5)

ここで「確率密度関数のラプラス変換」の式(9)から

  • W^*(0)=1
  • G(0)=1

また式(2)から

  • G^{(1)}(0)=-E(S)
  • ただしSは処理時間の確率変数

となるので式(5)は

  • 1-{\lambda}E(S)=1-u・・・・(6)

という式になります。しかしもともと{\lambda}E(S)=uなので、つまり私のいつも書き方ではE(S)=t_eであり\lambda=\frac{u}{t_e}なので、式(6)は

  • 1-u=1-u

という当たり前の式になってしまいました。
次に、式(4)の両辺をs微分します。すると

  • W^{*(2)}(s)[s-\lambda+{\lambda}G(s)]+2W^{*(1)}(s)[1+{\lambda}G^{(1)}(s)]+W^*(s){\lambda}G^{(2)}(s)=0・・・・(7)

となります。ここでs=0とすると

  • W^{*(2)}(0)[-\lambda+{\lambda}G(0)]+2W^{*(1)}(0)[1+{\lambda}G^{(1)}(0)]+W^*(0){\lambda}G^{(2)}(0)=0

よって

  • -2E(W)[1-{\lambda}E(S)]+{\lambda}E(S^2)=0
  • -2E(W)(1-u)+{\lambda}E(S^2)=0
  • 2E(W)(1-u)={\lambda}E(S^2)
  • E(W)=\frac{{\lambda}E(S^2)}{2(1-u)}・・・・(8)

となります。
実は、これは「M/G/1における待ち時間の式の導出(2)」で求めた式

  • CT_q=\left(\frac{1+c_e^2}{2}\right)\frac{u}{1-u}t_e・・・・(9)

と同一の式です。いつもの私の表記法ではE(W)CT_qになり、E(S)t_eになります。よって式(8)は

  • CT_q=\frac{{\lambda}E(S^2)}{2(1-u)}・・・・(10)

になります。さらに処理時間の分散をV(S)で表すと

  • E(S^2)=V(S)+E(S)^2=\left(\frac{V(S)}{E(S)^2}+1\right)E(S)^2=\left(\frac{V(S)}{t_e^2}+1\right)t_e^2

ですが、

  • \frac{V(S)}{t_e^2}

は処理時間の変動係数c_eの2乗ですから

  • E(S^2)=(1+c_e^2)t_e^2

となります。よって式(10)は

  • CT_q=\frac{{\lambda}(1+c_e^2)t_e^2}{2(1-u)}

となりますが

  • \lambda{t_e}=u

なので結局

  • CT_q=\frac{u(1+c_e^2)t_e}{2(1-u)}

となって式(9)と等しくなります。