(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
以下、添付図面を参照しながら、本発明に係るデータ分析装置の形態例を説明する。勿論、後述する形態例やその説明は一例であり、本発明には様々な変形例が考えられる。
【0020】
図1〜
図13は、以下で説明する形態例を例示する図であり、これらの図において、同一の符号を付した部分は同一物を表し、基本的な構成及び動作は同様であるものとする。
【0021】
図1は、本発明の実施例に係るデータ分析装置の構成を示すブロック図である。
【0022】
データ分析装置は、中央処理装置010、データメモリ020、プログラムメモリ030、製造実績DB(データベース)040、分布モデルDB050、表示装置060、キーボード070、及びポインティングデバイス080を有する。中央処理装置010は、データメモリ020、プログラムメモリ030、製造実績DB040、分布モデルDB050、表示装置060、キーボード070、及びポインティングデバイス080と相互接続されている。
【0023】
中央処理装置010は、分布計算処理部011、玉突き遅延計算処理部012、及び表示処理部013を有する。玉突き遅延計算処理部012は、設備に沿った玉突き遅延計算処理部014、オーダーに沿った玉突き遅延計算処理部015、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016、及び、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017を含んでいる。
【0024】
データメモリ020は、製造実績データ0201、作業時間データ0202、遊び時間データ0203、残工程数データ0204、作業時間分布モデル0205、遊び時間分布モデル0206、残工程数分布モデル0207、残存遅延分布0208、控えておく期待値0209、控えておく確率0210、控えておく期待値2_0211、及び控えておく確率2_0212を含んでいる。
【0025】
なお、分布計算処理部011、玉突き遅延計算処理部012及び表示処理部013の機能は、中央処理装置010がプログラムメモリ030に格納されたプログラム(図示省略)を実行することによって実現される。したがって、以下の説明において上記の処理部が実行する処理は、実際には、中央処理装置010がプログラムに記述された命令に従って実行する。また、プログラムメモリ030及びデータメモリ020は、同一の記憶装置であってもよい。また、製造実績DB040及び分布モデルDB050は、それぞれ、例えばハードディスクドライブ等の記憶装置であってもよいし、同一の記憶装置であってもよい。また、製造実績DB040及び分布モデルDB050に含まれるデータの少なくとも一部が必要に応じてデータメモリ020にコピーされてもよい。
【0026】
図2は、本発明の実施例の製造実績データ0201のデータ構造を示す図である。
【0027】
製造実績データ0201は、POPシステムによって現場で収集された着手日時及び作業時間等を、各オーダーにおける工程毎にまとめたテーブルである。
【0028】
製造実績データ0201は、データフィールドとして、オーダー201、工程順序202、標準時間203、設備ID204、着手日時205及び完了日時206を有する。
【0029】
オーダー201は、実行された工程作業が、どのオーダー(注文)に対応する作業であるかを示す。工程順序202は、その工程作業がそのオーダーにおいて何番目の作業であるかを示す。標準時間203は、その工程作業を行うのに標準的に必要な時間を示す。設備ID204は、実際にその工程作業を行った設備を示す。着手日時205は、実際にその工程作業に着手した日時を示す。完了日時206は、実際にその工程作業を完了した日時を示す。
【0030】
図3A〜
図3Cは、それぞれ、本発明の実施例の作業時間データ0202、遊び時間データ0203及び残工程数データ0204のデータ構造を示す図である。
【0031】
作業時間データ0202タは、データフィールドとして、観測値301を有する(
図3A)。遊び時間データ0203は、データフィールドとして、観測値302を有する(
図3B)。残工程数データ0204は、データフィールドとして、観測値303を有する(
図3C)。
【0032】
なお、作業時間とは、それぞれのオーダーにおけるそれぞれの工程作業に要した時間である。一方、遊び時間とは、それぞれのオーダーにおいて二つの工程作業に挟まれた、工程作業を行っていない時間である。例えば
図14のオーダー1に対応する作業時間は9から9.5まで、10から10.5まで、及び、11から12までであり、遊び時間は9.5から10まで及び10.5から11までである。ある工程で遅延が発生した場合に、それ以降の遊び時間を短縮することによって遅延が吸収される場合がある。また、ある工程の残工程数とは、その工程が属するオーダーにおいて、その工程の後に実行される工程の数である。
【0033】
図4A〜
図4Dは、それぞれ、本発明の実施例の作業時間分布モデル0205、遊び時間分布モデル0206、残工程数分布モデル0207及び残存遅延分布0208のデータ構造を示す図である。
【0034】
作業時間分布モデル0205は、データフィールドとして、値の範囲401及び頻度402を有する(
図4A)。遊び時間分布モデル0206は、データフィールドとして、値の範囲403及び頻度404を有する(
図4B)。残工程数分布モデル0207は、データフィールドとして、値の範囲405及び頻度406を有する(
図4C)。残存遅延分布0208は、データフィールドとして、値の範囲407及び頻度408を有する(
図4D)。
【0035】
例えば、
図4Aには、値の範囲401として「0時間 以上 5時間 未満」、頻度402として「0.95」が記載されている。これらの例は、作業時間の長さが0時間以上5時間未満である工程作業の出現頻度が0.95であることを示す。
図4B〜
図4Dに示すように、遊び時間、残工程数及び残存遅延時間の分布も同様の方法で記述される。これらの値は一例であり、それぞれ別の値が登録されてもよい。また、
図4A〜
図4Dには、それぞれ、値の範囲と頻度を一組のみ例示しているが、実際には、これらの分布モデルは複数の組を含む。例えば、値の範囲「5時間以上6時間未満」とそれに対応する頻度との組を含んでもよい。あるいは、例えば、値の範囲「0時間以上1時間未満」とそれに対応する頻度との組、値の範囲「1時間以上2時間未満」とそれに対応する頻度との組、のように、より分解能の高い記述がされてもよい。また、このような分布の記述方法は一例であり、他の方法で分布が記述されてもよい。例えば、フィッティングに使用した関数の種類、及び、分布の形状を示すパラメータ(例えば平均値及び分散等)を用いて記述されてもよい。
【0036】
図5A〜
図5Dは、それぞれ、本発明の実施例の控えておく期待値0209、控えておく確率0210、控えておく期待値2_0211及び控えておく確率2_0212のデータ構造を示す図である。
【0037】
控えておく期待値0209は、それぞれに期待値が保持される複数のデータフィールドを有する。
図5Aには、複数のデータフィールドの例として、期待値501〜503を示す。これらのデータフィールドに、期待値が1次元配列の形で保持される。
【0038】
控えておく確率0210は、それぞれに確率が保持される複数のデータフィールドを有する。
図5Bには、複数のデータフィールドの例として、確率504〜506を示す。これらのデータフィールドに、確率が1次元配列の形で保持される。
【0039】
控えておく期待値2_0211は、それぞれに期待値が保持される複数のデータフィールドを有する。
図5Cには、複数のデータフィールドの例として、期待値507〜512および513〜515を示す。これらのデータフィールドに、期待値が2次元配列の形で保持される。
【0040】
控えておく確率2_0212は、それぞれに確率が保持される複数のデータフィールドを有する。
図5Dには、複数のデータフィールドの例として、確率516〜521および522〜524を示す。これらのデータフィールドに、確率が2次元配列の形で保持される。
【0041】
<システム動作について>
図6は、本発明の実施例のデータ分析装置の処理概要を示すフローチャートである。
【0042】
本データ分析装置の処理において、まず、分布計算処理部011は、分布モデルを読み込むかどうかについてユーザの指定を受け取る(ステップ601)。ステップ601の判定がYES(すなわち分布モデルを読み込むことが指定された)であれば、分布計算処理部011は、分布モデルDB050から分布モデルを読み込む(ステップ602)。読み込んだ値は、作業時間分布モデル0205、遊び時間分布モデル0206、残工程数分布モデル0207に格納される。
【0043】
ステップ601の判定がNOであった場合は、分布計算処理部011は、まず、製造実績DB040からデータを読み込む(ステップ603)。読み込んだ値は、製造実績データ0201に保持される。その後、分布計算処理部011は、分布モデルを計算する(ステップ604)。この処理は、
図7を参照して詳細に説明する。
【0044】
ステップ602またはステップ604の後に、玉突き遅延計算処理部012は、遅延の初期値としてユーザが指定した値を読み込む(ステップ605)。次に、玉突き遅延計算処理部012は、玉突き遅延の計算を行う(ステップ606)。この処理は、
図8を参照して詳細に説明する。
【0045】
その後、表示処理部013は、表示を行う(ステップ607)。この処理は、
図13を参照して詳細に説明する。
【0046】
図7は、本発明の実施例のデータ分析装置が
図6のステップ604において実行する分布モデルを計算する処理の詳細を示すフローチャートである。
【0047】
まず、分布計算処理部011は、作業時間のデータを得る(ステップ701)。これは、製造実績データ0201の各行(ここでは、一つの工程に関するオーダー201から完了日時206までの値の一組を一つの行と記載する。以下同様)から、各工程の完了日時206と着手日時205の差を求めることで得られる。このようにして得た値は、作業時間データ0202に保持される。次に、分布計算処理部011は、ステップ701で保持された値(すなわち、製造実績データ0201から得られた、複数のオーダーの複数の工程の作業時間の値)を分布モデル化する(ステップ702)。これは、作業時間データ0202が保持する値を元に、正規分布、対数正規分布、または指数分布などにフィッティングし、それをヒストグラム化することで得られる。このようにして得た値は、作業時間分布モデル0205に保持される。
【0048】
次に、分布計算処理部011は、遊び時間のデータを得る(ステップ703)。これは、製造実績データ0201のうち、オーダー201が同一で工程順序202が1だけ異なる行の組から、着手日時205と完了日時206との差を求める(例えば、各オーダーの各工程の完了日時206と、そのオーダーにおける一つ後の工程の着手日時205との差を求める)ことで得られる。このようにして得た値は、遊び時間データ0203に保持される。次に、分布計算処理部011は、ステップ703で保持された値を分布モデル化する(ステップ704)。これは、遊び時間データ0203が保持する値を元に、正規分布、対数正規分布、または指数分布などにフィッティングし、それをヒストグラム化することで得られる。このようにして得た値は、遊び時間分布モデル0206に保持される。
【0049】
その後、分布計算処理部011は、残工程数のデータを得る(ステップ705)。これは、製造実績データ0201の各行において、オーダー201が同一で工程順序202が大きい行がいくつあるか調べることで得られる。例えば、
図14に示すようにそれぞれのオーダーが3つの工程からなる場合、1つ目の工程の残工程数は2、2つ目の工程の残工程数は1、3つ目の工程の残工程数は0となる。このようにして得た値は、残工程数データ0204に保持される。次に、残工程数の分布モデルを計算する(ステップ706)。これは、残工程数データ0204が保持する値を元に、正規分布、対数正規分布、または指数分布などにフィッティングし、それをヒストグラム化することで得られる。このようにして得た値は、残工程数分布モデル0207に保持される。
【0050】
本実施例のデータ分析装置は、上記のように生成された分布モデルを使用して以下に説明する処理を行うことによって、標準時間等のマスタデータが整備されていない工場等においても、遅延の影響量を見積もり、それに基づいて、リアルタイムな実績収集の仕組みの導入の効果を見積もることが可能になる。また、現実の工場等では、例えば複数の工程の作業時間をまとめて記録するといったことが行われることによって、製造実績データそのものの精度が高くない場合がある。そのような場合でも、ある程度の量の実績データから抽出した分布を、例えば正規分布等の適切な分布モデルにフィッティングすることによって、概ね信頼できる分布を求めることが可能であることが分かった。このため、本実施例によれば、上記のように製造実績データの精度が高くない場合でも、リアルタイムな実績収集の仕組みの導入の効果を見積もることが可能になる。
【0051】
なお、上記は本発明を工場等の製造業の現場に適用した例であるが、本発明は製造業以外の事業に適用することも可能であり、その場合は、当該事業の作業の実績データに基づいて、作業時間、遊び時間及び残工程数の分布モデルを作成することもできる。
【0052】
図8は、本発明の実施例のデータ分析装置が
図6のステップ606において実行する玉突き遅延を計算する処理の詳細を示すフローチャートである。
【0053】
まず、玉突き遅延計算処理部012は、設備に添った玉突き遅延の計算を行う(ステップ801)。この処理は、
図9を参照して詳細に説明する。次に、玉突き遅延計算処理部012は、オーダーに沿った玉突き遅延の計算を行う(ステップ802)。この処理は、
図10を参照して詳細に説明する。その後、玉突き遅延計算処理部012は、オーダーに沿った玉突き遅延が引き起こす、設備に沿った玉突き遅延の計算を行う(ステップ803)。この処理は、
図11を参照して詳細に説明する。その後、玉突き遅延計算処理部012は、設備に沿った玉突き遅延が引き起こす、オーダーに沿った玉突き遅延の計算を行う(ステップ804)。この処理は、
図12を参照して詳細に説明する。
【0054】
図9は、本発明の実施例のデータ分析装置が
図8のステップ801において実行する、設備に沿った玉突き遅延を計算する処理の詳細を示すフローチャートである。
【0055】
まず、設備に沿った玉突き遅延計算処理部014は、残存遅延分布に初期値を設定する(ステップ901)。これは、
図6のステップ605で読み込んだ値の頻度が100%、その他の値の頻度が0になるように、残存遅延分布0208を設定する処理である。次に、設備に沿った玉突き遅延計算処理部014は、残存遅延がある確率を1に初期化する(ステップ902)。次に、設備に沿った玉突き遅延計算処理部014は、玉突き遅延の量を0に初期化する(ステップ903)。
【0056】
次に、設備に沿った玉突き遅延計算処理部014は、残存遅延分布と遊び時間分布モデルとの差の分布を求める(ステップ904)。これは、残存遅延分布に従う確率変数と遊び時間分布モデルに従う確率変数との差がどのような分布になるかを求めることで得られる。その後、設備に沿った玉突き遅延計算処理部014は、ステップ904で求めた差の分布について、負の値をとる領域を0に差し替える(ステップ905)。これは、遅延時間を十分に遊び時間で吸収した後でも、返って前倒しになることを想定する必要はないことに対応する処理である。
【0057】
その後、設備に沿った玉突き遅延計算処理部014は、残存遅延がある確率を更新する(ステップ906)。これは、残存遅延分布において正の値を持つ頻度を求め、残存遅延がある確率にかけあわせて更新する処理である。その後、設備に沿った玉突き遅延計算処理部014は、残存遅延の期待値を求める(ステップ907)。これは、残存遅延分布の値の範囲407から代表値を選び、その代表値に頻度408をかけた値の総和を求める処理である。
【0058】
その後、設備に沿った玉突き遅延計算処理部014は、オーダーに沿った玉突き遅延用に値を控える(ステップ908)。これは、ステップ906で求めた確率およびステップ907で求めた期待値は、
図10で説明するオーダーに沿った玉突き遅延の計算でも利用されるため、それらの控え(コピー)をデータメモリ020に記憶しておく処理である。具体的には、設備に沿った玉突き遅延計算処理部014は、控えておく期待値0209および控えておく確率0210に、それぞれ、ステップ907で求めた期待値およびステップ906で求めた確率に対応する新しい要素を追加し保持する。
【0059】
その後、設備に沿った玉突き遅延計算処理部014は、設備に沿った玉突き遅延の量を更新する(ステップ909)。これは、ステップ907で求めた期待値に、ステップ906で求めた確率を掛け合わせた値を、設備に沿った玉突き遅延の量に足しこむことによって、設備に沿った玉突き遅延の量を更新する処理である。その後、設備に沿った玉突き遅延計算処理部014は、残存遅延分布の更新を行う(ステップ910)。これは、ステップ905で計算した差の分布で、残存遅延分布0208の値を置き換える処理である。その後、設備に沿った玉突き遅延計算処理部014は、玉突き遅延の量が収束したかを調べる(ステップ911)。これは、ステップ909で足しこんだ値が、玉突き遅延の量と比べて十分小さくなったかを調べる処理である。十分小さくなっていれば、収束しているとみなせる。収束していなければ、ステップ904に戻って処理を繰り返す。収束していれば、処理を終える。
【0060】
図10は、本発明の実施例のデータ分析装置が
図8のステップ802において実行する、オーダーに沿った玉突き遅延を計算する処理の詳細を示すフローチャートである。
【0061】
まず、オーダーに沿った玉突き遅延計算処理部015は、変数iに1を設定する(ステップ1001)。次に、オーダーに沿った玉突き遅延計算処理部015は、玉突き遅延の量を0に初期化する(ステップ1002)。その後、オーダーに沿った玉突き遅延計算処理部015は、残工程数分布モデル0207において値の範囲がi以上である頻度の和と、控えておく期待値0209のi番目の要素と、控えておく確率0210のi番目の要素との積を求め、玉突き遅延の量に足しこむ(ステップ1003)。次に、オーダーに沿った玉突き遅延計算処理部015は、iをインクリメントする(ステップ1004)。その後、残工程数分布モデル0207、控えておく期待値0209、控えておく確率0210のいずれかにおいて、i以上の要素がないかを調べる(ステップ1005)。いずれかにおいてi以上の要素がないなら、処理を終える。すべてにおいてi以上の要素があるなら、ステップ1003に戻って処理を繰り返す。
【0062】
オーダーに沿った玉突き遅延の量は、基本的に、設備に沿った玉突き遅延の量と同じ方法で計算できるため、上記のように、設備に沿った玉突き遅延の計算の際に記憶された、控えておく期待値0209及び控えておく確率0210の値を利用して計算される。ただし、オーダーに沿った玉突き遅延は、そのオーダーの残工程数を超えて波及することがない。具体的には、ステップ1003で計算される、控えておく期待値0209のi番目の要素と、控えておく確率0210のi番目の要素との積は、i個の遊び時間を経過した後の工程における残存遅延の期待値と残存遅延がある確率との積であり、i個の遊び時間を経過して波及する玉突き遅延が当該工程に与える影響量の指標である。しかし、i個の遊び時間を経過した時点で残工程数が0であるオーダーにおいてはi個の遊び時間を経過した後の工程が存在しない。このため、ステップ1003では、さらに残工程数分布モデル0207において値の範囲がi以上である頻度の和を乗じることによって、残工程数の長さの分布を考慮した玉突き遅延の影響が計算される。
【0063】
図11は、本発明の実施例のデータ分析装置が
図8のステップ803において実行する、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延を計算する処理の詳細を示すフローチャートである。
【0064】
まず、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、変数iに1を設定する(ステップ1101)。次に、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、玉突き遅延の量を0に初期化する(ステップ1102)。次に、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残存遅延分布0208を、控えておく期待値0209のi番目の要素の頻度が100%、その他の頻度が0になるように初期化する(ステップ1103)。次に、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残存遅延がある確率を1に初期化する(ステップ1104)。
【0065】
ここで、控えておく期待値0209のi番目の要素とは、あるオーダーのある工程で発生した遅延が、i個の遊び時間を経過して波及する場合の、残存遅延の期待値である。すなわち、以下の処理では、オーダーに沿ってi個の遊び時間を経てある設備を使用するある工程まで波及した遅延が、その工程より後にその設備を使用する工程に波及する確率及び波及することによる残存遅延の期待値等が計算される。
【0066】
次に、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残存遅延分布と遊び時間分布モデルとの差の分布を求める(ステップ1105)。これは、
図9のステップ904と同様に、残存遅延分布に従う確率変数と遊び時間分布モデルに従う確率変数との差がどのような分布になるかを求めることで得られる。その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、ステップ1105で求めた差の分布について、負の値をとる領域を0に差し替える(ステップ1106)。これは、
図9のステップ905と同様に、遅延時間を十分に遊び時間で吸収した後でも、返って前倒しになることを想定する必要はないことに対応する処理である。
【0067】
その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残存遅延がある確率を更新する(ステップ1107)。これは、
図9のステップ906と同様に、残存遅延分布において正の値を持つ頻度を求め、残存遅延がある確率にかけあわせて更新する処理である。その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残存遅延の期待値を求める(ステップ1108)。これは、
図9のステップ907と同様に、残存遅延分布の値の範囲407から代表値を選び、その代表値に頻度408をかけた値の総和を求める処理である。
【0068】
その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延用に値を控える(ステップ1109)。これは、ステップ1107で求めた確率およびステップ1106で求めた期待値は、
図12で説明する設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延の計算でも利用されるため、それらの控えをデータメモリ020に記憶しておく処理である。具体的には、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、控えておく期待値2_0211および控えておく確率2_0210において、2次元目にi番目の要素がなければ追加し、それぞれ、ステップ1108で求めた期待値およびステップ1107で求めた確率を新しい要素として保持する。
【0069】
その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延の量を更新する(ステップ1110)。これは、ステップ1108で求めた期待値に、ステップ1107で求めた確率と、残工程数分布モデル0207において値の範囲がi以上である頻度の和と、控えておく確率0210のi番目の要素とを掛け合わせた値を、玉突き遅延の量に足しこむことによって、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延の量を更新する処理である。
【0070】
その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残存遅延分布の更新を行う(ステップ1111)。これは、ステップ1106で計算した差の分布で、残存遅延分布0208の値を置き換える処理である。その後、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、玉突き遅延の量が収束したかを調べる(ステップ1112)。これは、ステップ1110で足しこんだ値が、玉突き遅延の量と比べて十分小さくなったかを調べる処理である。十分小さくなっていれば、収束しているとみなせる。収束していなければ、ステップ1105に戻って処理を繰り返す。収束していれば、iをインクリメントする(ステップ1113)。そして、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延計算処理部016は、残工程数分布モデル0207、控えておく期待値0209、及び控えておく確率0210のいずれかにおいて、i以上の要素がないかを調べる(ステップ1114)。いずれかにおいてi以上の要素がないなら、処理を終える。すべてにおいてi以上の要素があるなら、ステップ1103に戻って処理を繰り返す。
【0071】
図12は、本発明の実施例のデータ分析装置が
図8のステップ804において実行する、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延を計算する処理の詳細を示すフローチャートである。
【0072】
まず、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、変数iに1を設定する(ステップ1201)。次に、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、玉突き遅延の量を0に初期化する(ステップ1202)。その後、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、変数jに1を設定する(ステップ1203)。
【0073】
その後、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、残工程数分布モデル0207において値の範囲がj以上である頻度の和と、控えておく期待値2_0211の1次元目がiで2次元目がjの要素と、控えておく確率2_0212の1次元目がiで2次元目がjの要素と、控えておく確率0210のi番目の要素との積を求め、その積を設備に沿った玉突き遅延長引き起こすオーダーに沿った玉突き遅延の量に足しこむ(ステップ1204)。
【0074】
その後、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、jをインクリメントし(ステップ1205)、残工程数分布モデル0207、控えておく期待値2_0211の2次元目、及び控えておく確率2_0212の2次元目のいずれかにおいて、j以上の要素がないかを調べる(ステップ1206)。それらのすべてにおいてj以上の要素があるなら、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、ステップ1204に戻って処理を繰り返す。いずれかにおいてj以上の要素がないなら、iをインクリメントする(ステップ1207)。
【0075】
その後、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延計算処理部017は、控えておく期待値2_0211の1次元目、控えておく確率2 0212の1次元目、及び控えておく確率0210のいずれかにおいて、i以上の要素がないかを調べる(ステップ1208)。いずれかにおいてi以上の要素がないなら処理を終える。すべてにおいてi以上の処理があるなら、ステップ1203に戻って処理を繰り返す。
【0076】
図13は、本発明の実施例のデータ分析装置が
図6のステップ607において実行する、表示を行う処理の画面例を示す図である。
【0077】
グラフ1301は、作業時間分布モデル0205をあらわす。グラフ1302は、遊び時間分布モデル0206をあらわす。グラフ1303は、残工程数分布モデル0207をあらわす。遅延の初期値1304は、
図6のステップ605で読み込まれた値である。玉突き遅延の見積もり値1305は、
図8の各ステップで求めた玉突き遅延の量である。
【0078】
具体的には、玉突き遅延の見積もり値1305は、設備に沿った玉突き遅延、オーダーに沿った玉突き遅延、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延、及び設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延のそれぞれについて、遅延量の見積もり値1306と、その遅延量を再スケジュールによって回避できる可能性の有無1307と、を含む。
【0079】
玉突き遅延の種類ごとの遅延量の見積もり値1306は、それぞれ、
図9のステップ909、
図10のステップ1003、
図11のステップ1110及び
図12のステップ1204において足し込まれた値であり、それぞれの処理が終了した時点の最終的な値である。すなわち、これらの値は、玉突き遅延の種類ごとに計算された、各オーダーの各工程における玉突き遅延の影響量の総和であり、これらの値が大きいほど、それぞれの種類の玉突き遅延が、本実施例のデータ分析装置による分析対象であるシステムの稼働(例えば工場における生産活動)に与える影響が大きいことを示している。
【0080】
一方、遅延量を再スケジュールによって回避できる可能性の有無1307は、次の通りとなる。オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延、及び、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延については、例えば、ある設備において、あるオーダーの工程の着手が遅れている間に、本来はその工程の後でその設備を使用して行われることになっていた別のオーダーの工程を先に行うなどの再スケジュールを行うによって、その設備を使用する後の工程への遅延の波及を回避したり、当該別のオーダーの後の工程への遅延の波及を回避したりすることができる可能性がある。これに対して、単純に一つのオーダー内の工程間を伝搬していく遅延(すなわちオーダーに沿った玉突き遅延)、及び、一つの設備を使用する工程間を伝搬していく遅延(すなわち設備に沿った玉突き遅延)は、再スケジュールを行っても回避できないと考えられる。
【0081】
すなわち、例えば見積もり値1306の合計値が同じであっても、オーダーに沿った玉突き遅延が引き起こす設備に沿った玉突き遅延、及び、設備に沿った玉突き遅延が引き起こすオーダーに沿った玉突き遅延の見積もり値の割合が大きいほど、それぞれの工程で発生した遅延をその発生から短時間のうちに検知して再スケジュールを行う実績収集の仕組みを導入することによって遅延の影響が軽減される可能性が高いと言える。
【0082】
したがって、上記の実施例によれば、標準時間などのマスタデータが未整備な状態であっても、作業時間、遊び時間及び残工程数等に関してある程度信頼できる分布が得られれば、それを利用して、リアルタイムな実績収集の仕組みの導入(例えば遅延の原因となる事象の発生を監視する装置の設置等)の効果を見積もることができる。
【0083】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明のより良い理解のために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。
【0084】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【0085】
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。