複数クラスを持つM/M/2待ち行列(1)

複数クラスを持つM/M/1待ち行列(2)」の続きです。


今度はM/M/2待ち行列を考えてみました。説明の都合上、今度の図は左から右にジョブがやってくるものとしています。

  • 図1

この図では2台の装置#1と#2が存在し、装置#1にはクラスAのジョブが、装置#2にはクラスBのジョブが入っていて処理されているところです。図の左側の状態では、もう1つ、クラスBのジョブが装置が空くのを待っています。ここに次に(つまり時間dtの間に)クラスAのジョブが到着する確率は、

  • {\lambda_A}dt

です。クラスAのジョブが到着すれば、右側の状態に遷移します。
右側の状態で装置#1、#2のいずれかのジョブが時間dtの間に処理終了して別の状態に遷移する確率は

  • \frac{2}{t_e}dt

です。定常状態では、この右側の状態に入る遷移の確率と出て行く遷移の確率が等しいと仮定します。それを書き表すためにはまず、状態の表記方法を決めなければなりません。ここでは以下のように決めます。左側の状態を

  • \{(A,B),B\}

右側の状態を

  • \{(A,B),B,A\}

と表すことにします。(A,B)は処理中のジョブのクラスを示しています。丸カッコ内の左側が装置#1を、右側が装置#2を表しています。カッコの外の文字は、装置を待っているジョブのクラスを表しています。並ぶ順序は、一番左が待ち行列の先頭であり、それから待っている順に右に表記していきます。状態Sの定常状態確率をP(S)で表します。そうすると図1に対応する平衡方程式は

  • P((A,B),B){\lambda_A}dt=P((A,B),B,A)\frac{2}{t_e}dt

となります。これを変形すると

  • P((A,B),B){\lambda_A}=P((A,B),B,A)\frac{2}{t_e}
  • 2P((A,B),B,A)=P((A,B),B){\lambda_A}{t_e}・・・・・(1)

となります。ここで「複数クラスを持つM/M/1待ち行列(1)」の式(2)と同様に考えれば(ただし、今度は装置が2台であることに注意すれば)

  • {\lambda_A}{t_e}=2u_A・・・・・(2)

が成り立つので、(1)は

  • P((A,B),B,A)=P((A,B),B)u_A・・・・・(3)

となります。ここまではM/M/1の場合と同じです。


では、図2の場合はどうでしょうか?

  • 図2

M/M/1の場合とは異なり、ジョブの到着によって右側の状態になる可能性は、クラスAのジョブが到着する場合と、クラスBのジョブが到着する場合の2つの場合があることになります。そうすると平衡方程式は

  • [tex:P*1{\lambda_A}+P*2{\lambda_B}=P*3\frac{2}{t_e}]

これを変形して

  • [tex:P*4=P*5{u_A}+P*6{u_B}]・・・・・(4)

となります。ただし上の式で\phiは1台の装置が空であることを示しています。


では、図3の場合はどうでしょうか?

  • 図3

この場合もM/M/1とは異なり、1つのジョブの到着が装置#1にジョブがある状態になるか装置#2にジョブがある状態になるか、2つの可能性を持つことになってしまいます。
ここまでくると図3の右側の2つの状態を区別することがわずらわしくなってきます。ここで一つ工夫をしてみます。


複数クラスを持つM/M/2待ち行列(2)」に続きます。

*1:\phi,B

*2:A,\phi

*3:A,B

*4:A,B

*5:\phi,B

*6:A,\phi