リトルの法則の証明

リトルの法則、すなわち

の証明は、サイクルタイムスループットが一定値の場合(すなわち変動がない場合)であれば、直感的に分かります。

サイクルタイムとスループットが一定の場合

  • あるラインを考えます。このラインでのジョブサイクルタイム(CT)は10日、そしてそのスループット(TH)は2日で1ジョブ、すなわち1/2(ジョブ/日)であるとします。この時の各ジョブがラインに滞在する様子を横軸を時間にして下の図のように表しました。図中の空色のひとマスが1日を表しています。

  • この図ではWIPは図を縦に見た時のジョブ数になります。この図からWIPがCT*TH=10*1/2=5(ジョブ)になるのは直感的に分かると思います。しかし、サイクルタイムスループットが一定ではない場合は証明が少し難しくなります。

サイクルタイムとスループットが一定ではない場合も含むように拡張する。

  • まず、時刻0から時刻tまでの、のべWIP
    • \Bigint_0^tWIP(\tau)d\tau
  • を考えます。ここにWIP(\tau)は時刻\tauの時のWIP数を表す関数とします。すると上記の積分は下図のオレンジ色で示した部分の面積を表していることになります。

    • この図でジョブJ_5よりあとに到着したジョブJ_6J_5より先に終わっているのに注意して下さい。サイクルタイムCT)に変動があるために、このようなケースもあり得ることをこの図で考慮しています。


  • さらに時刻0から時刻tまでに完了してラインから出ていったジョブサイクルタイムの合計を考えます。この例の場合、時刻0から時刻tまでに到着したジョブJ_1J_4J_6です。よって、それらのジョブサイクルタイムの合計は、下図のオレンジ色の部分の面積になります。

  • この3つの図を比べると、
    • tまでに完了したジョブCTの合計)≦\Bigint_0^tWIP(\tau)d\tau≦(tまでに到着したジョブCTの合計)
  • が成り立つことが分かります。この式をtで割ると
    • \frac{1}{t}×(tまでに完了したジョブCTの合計)≦\frac{1}{t}\times{\Bigint_0^tWIP(\tau)d\tau}\frac{1}{t}×(tまでに到着したジョブCTの合計)
  • となります。ここでt\rightar\inftyとすると
  • となり、その結果
  • となるので
  • となります。これでリトルの法則の証明が出来ました。
    • t\rightar\inftyで、完了数/tも、到着数/tも、平均スループットに収束するところがミソですね。

法則(リトルの法則) へ