非定常状態の待ち行列理論の試み(1)

私のブログを読んで下さっているある方から「待ち行列理論は定常状態しか扱うことは出来ないでしょうか」という意味の質問を頂きました。非定常状態での一般の待ち行列の振る舞いについては私はとても解析出来ませんが、M/M/1待ち行列ならば簡単なので非定常状態での振舞いを示すことが出来るかもしれません、と私は回答しました。
ここで、そのことを試みてみたいと思います。


最初(時刻t=0の時に)、ジョブがまったくないM/M/1待ち行列を考えてみます。時刻tの時に待ち行列システム内にジョブがk個ある確率をp(k,t)で表すことにします。t=0でジョブがまったくないのですから、

  • p(0,0)=1
  • k{\ge}1の時
    • p(k,0)=0・・・・(1)

となります。次にp(k,t)p(k,t+dt)の関係を調べます。


k{\ge}1の場合、時刻[text+1]でジョブがk個あるという状況は、以下の3つの経過が考えられます。

  • [1] 時刻tでジョブがk個あり、dtの間に、ジョブが新たに到着もせず、処理も終了しなかった。
  • [2] 時刻tでジョブがk-1個あり、dtの間に、ジョブが新たに1個到着した。
  • [3] 時刻tでジョブがk+1個あり、dtの間に、1個のジョブの処理が終了した。

もちろん、「時刻tでジョブがk-2個あり、dtの間に、ジョブが新たに2個到着した。」ということもあり得ないわけではありませんが、期間dtが極めて短い期間であるとすると、その間にジョブが1個到着する確率すら非常に小さな値になります。ましてやその期間にジョブが2個以上到着する確率は、ジョブが1個到着する確率に比べても非常に小さな値にあると予想されます。よって、dtの間にジョブが2個以上到着する確率は無視してもかまわないと考えることが出来ます。同様にしてdtの間にジョブが2個以上処理終了する確率も無視します。
さて、装置の平均処理時間をt_e稼働率uとすると、処理時間もジョブ到着間隔も指数分布であることを考えれば、dtの間に処理が完了する確率は

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

dtの間にジョブが到着する確率は

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

となります。このことを用いて上記[1][2][3]を数式で表すと以下のようになります。

  • [1]
    • \left(1-\frac{udt}{t_e}-\frac{dt}{t_e}\right)p(k,t)
  • [2]
    • \frac{udt}{t_e}p(k-1,t)
  • [3]
    • \frac{dt}{t_e}p(k+1,t)

これら3つを全て足したものが確率p(k,t+dt)になります。よって

  • p(k,t+dt)=\left(1-\frac{udt}{t_e}-\frac{dt}{t_e}\right)p(k,t)+\frac{udt}{t_e}p(k-1,t)+\frac{dt}{t_e}p(k+1,t)・・・・(4)

よって

  • p(k,t+dt)-p(k,t)=-\left(\frac{udt}{t_e}+\frac{dt}{t_e}\right)p(k,t)+\frac{udt}{t_e}p(k-1,t)+\frac{dt}{t_e}p(k+1,t)
  • \frac{p(k,t+dt)-p(k,t)}{dt}=-\left(\frac{u}{t_e}+\frac{1}{t_e}\right)p(k,t)+\frac{u}{t_e}p(k-1,t)+\frac{1}{t_e}p(k+1,t)
  • \frac{p(k,t+dt)-p(k,t)}{dt}=\frac{1}{t_e}[-(u+1)p(k,t)+up(k-1,t)+p(k+1,t)]

この最後の式の左辺は

  • \frac{dp(k,t)}{dt}

と考えることが出来るので

  • \frac{dp(k,t)}{dt}=\frac{1}{t_e}[-(u+1)p(k,t)+up(k-1,t)+p(k+1,t)]・・・・(5)

となります。



一方、k=0の場合は、もうこれ以上ジョブが少ない場合がないので、上記の[2]の経過があり得ません。よって時刻[text+1]でジョブが0個あるという状況は、以下の2つの経過が考えられます。

  • [1'] 時刻tでジョブが0個あり、dtの間に、ジョブが新たに到着しなかった。
  • [3'] 時刻tでジョブが1個あり、dtの間に、1個のジョブの処理が終了した。

これらを数式に表すと

  • [1']
    • \left(1-\frac{udt}{t_e}\right)p(0,t)
  • [3']
    • \frac{dt}{t_e}p(1,t)

よって

  • p(0,t+dt)=\left(1-\frac{udt}{t_e}\right)p(0,t)+\frac{dt}{t_e}p(1,t)・・・・(6)

よって

  • p(0,t+dt)-p(0,t)=-\frac{udt}{t_e}p(0,t)+\frac{dt}{t_e}p(1,t)
  • \frac{dp(0,t)}{dt}=-\frac{u}{t_e}p(0,t)+\frac{1}{t_e}p(1,t)
  • \frac{dp(0,t)}{dt}=\frac{1}{t_e}[-up(0,t)+p(1,t)]・・・・(7)