【文献】
山崎 啓介 他,ベイジアンネットワークの確率的複雑さと代数幾何,電子情報通信学会技術研究報告,2003年 7月21日,Vol.103, No.227,pp.37-42,NC2003-28
(58)【調査した分野】(Int.Cl.,DB名)
故障の事後確率を計算することは、受け取られたエラーコードに基づいて選択された尤度値と故障の事前確率とを掛け合わせて、各サブモジュールに関する故障の事後確率を生成することを含むことを特徴とする請求項1記載の特定方法。
プロセッサが生成する出力は、複数のサブモジュールの各サブモジュールについて計算された故障の事後確率に基づく、故障の可能性のあるサブモジュールの順位付けられたリストを含むことを特徴とする請求項4記載の診断装置。
【発明を実施するための形態】
【0008】
本発明は、故障したサブモジュールを特定するベイズ法を提供する。ベイズ法は、故障の事前確率と、特定のエラーコードを生成するサブモジュールの故障の確率に関連する尤度データとに基づいて、各サブモジュールについて故障の確率(すなわち、事後確率)を計算する。特に、ラムダ平滑化アルゴリズムが、限定された観察データを考慮して故障の事前確率を生成するのに用いられる。
【0009】
図1は、例示的な実施例による診断ツール10によるシステム12内でのサブモジュールの故障の特定を例示するブロック図である。システム12は、組込み試験(BIT)システム14と、複数のサブモジュールU
1、U
2、・・・U
Nとを備える。各サブモジュールU
1、U
2、・・・U
Nは、概略Sと符号を付けた1つまたは複数のセンサを備える。BITシステム14は、複数のセンサSと信号を送信/受信する。範囲外(out−of−range)(OOR)センサ出力に応じて、BITシステム14は、1つまたは複数のエラーコード(EC)を生成する。例えば一実施例では、温度センサが、範囲外信号をBITシステム14に送り、次いでBITシステム14が、1つまたは複数の特定のエラーコードを生成する。しかしながら、「エラーコード」という用語は一般に、BITシステム14によって与えられる、システム12の状態および/または健全性に関連する任意の出力に該当する。
【0010】
さまざまなサブモジュールに存在するセンサから受け取った入力に基づくとはいえ、エラーコードは必ずしも、故障したサブモジュールを示すわけではない。
図1に示される実施例では、外部にある診断ツール10は、BITシステム14によって生成されたエラーコードを受け取る入力部を備える。BITシステム14と外部診断ツール10の間の通信は、無線および/または有線通信プロトコルを用いることができ、あるいは、BITシステム14により表示されたエラーコードを手動で診断ツール10に入力することもできる。別の実施例では、システム12の外部に診断ツール10を構成するのではなくて、診断ツール10は、独立型モジュールとしてまたはBITシステム14の一部として、システム12の一部に含まれる。
【0011】
診断ツール10は、尤度行列18とベイズ計算機20に関連するアルゴリズムとを記憶するメモリ16と、故障したサブモジュールを特定するための記憶されたアルゴリズムを実行するプロセッサ22とを含め、故障したサブモジュールを特定するハードウェアおよびソフトウェアの組み合わせを含む。メモリ16は、ランダムアクセスメモリ、不揮発性メモリ、プログラム可能読出し専用メモリ、ハードディスク装置、および同様のものなど、当業技術内で知られた任意の種類のコンピュータ可読記憶媒体とすることができる。プロセッサ22は、汎用プロセッサ、デジタル信号プロセッサ、マイクロコントローラ、プログラム可能論理装置、特定用途向け集積回路、および同様のものなど、命令を実行可能な任意の種類の処理回路とすることができる。一実施例では、プロセッサ22は、BITシステム14により提供されたECに基づいて各サブモジュールU
1−U
Nの故障に付随する事後確率を生成し、最終的に、故障の可能性のあるサブモジュールを特定する出力を提供するためのベイズアルゴリズムを実行する。別の実施例では、診断ツール10によって提供される出力が、各サブモジュールU
1−U
Nの故障の尤度に優先順位(例えば、最も故障の可能性のあるサブモジュールを示すように順位付けられたリスト)をつける。診断ツール10によって提供される出力は、診断ツール10に設けられた表示装置に提供されることを含め、診断ツール10により提供される印刷出力の一部として、または、診断ツール10により別の装置へ提供される電子通信として、さまざまな形態で提供可能である。故障の可能性のあるサブモジュールの特定に基づいて、技術者は、特定されたサブモジュールを交換/修理することになる。この方法の利点は、技術者に最も故障の可能性のあるサブモジュールの識別情報が与えられることで、技術者が故障したシステム12の診断・修理にかけなければならない時間が低減されることである。
【0012】
図2は、診断ツール10により記憶される尤度行列18の例示的な実施例を示す表である。尤度行列18内の各列は、システム12に付随するサブモジュールU
1、U
2、・・・U
Nを示す。尤度行列18内の各行は(最終行を除き)、BITシステム14によって生成可能なエラーコード(EC)を示す。各行および列の交差部には、対応するサブモジュールU
jが故障したときに、ある与えられたエラーコードE
iが生じる尤度(すなわち、条件つき確率P(E
i|U
j))が存在する。各交差部の尤度は、各用途に特有であり、システム12、サブモジュールU
1、U
2、・・・U
N、および生成されるエラーコード(EC)について知られた情報に基づいて生成される。例えば、エラーコード「2007」とサブモジュールU
1の交差部には、尤度値「0.4」が存在し、これは、サブモジュールU
1が故障すると、エラーコード2007が所定時間の40%で生じるはずであることを示す。エラーコード「2007」とサブモジュール「U
2」の交差部には、尤度値「1」が存在するが、これは、サブモジュールU
2が故障すると、エラーコード「2007」があらゆる場合に(すなわち、所定時間の100%で)生じるはずであることを示す。しかしながら、逆の仮定は真ではない。すなわち、エラーコード「2007」の存在は、サブモジュールU
2が故障していることを100%の確実さで示すわけではない。「0」が付与された各セルでは、対応するサブモジュールが故障しても、付随するエラーコードは決して生成されることはない。
【0013】
尤度行列18の最終行は、各サブモジュールに付随する故障の事前確率P(U
j)を示している。例えば、サブモジュールU
1では、事前確率P(U
1)は「0.07」に等しいが、これは、所定時間の7%でサブモジュールU
1がシステム故障の原因であると推定されたことを意味する。サブモジュールU
2では、事前確率P(U
2)は「0.01」に等しいが、これは、所定時間のほんの1%でサブモジュールU
2がシステム故障の原因であると推定されたことを意味する。
【0014】
観察データに基づいて事前確率値を推定するさまざまな方法が存在する。各場合に、追加の観察によって、事前確率値の精度が向上する。利用可能な観察データが制限される場合は、事前確率の推定は、故障の確率を過大評価するか、あるいは、故障の確率を過小評価することになる可能性がある。例えば、事前確率を推定する方法の1つは、特定のサブモジュールの故障が観察された回数と、システム12の観察された故障の全数とに基づくだけである。
【0016】
式1では、P(U
j)は、推定事前確率であり、c(U
j)は、ある与えられたサブモジュールが故障した回数であり、Nは、装置が経験した故障の全数である。ある与えられたサブモジュールの故障が決して観察されなかった場合(すなわち、c(U
j)=0)、計算される事前確率は、サブモジュールが故障する尤度を0として過小評価することになる。
【0017】
この問題は、式2に与えられるように、単純に各サブモジュールの回数に1を付加することで軽減できる。
【0019】
ここで、Vは、装置内の故障の可能性のあるモジュールの全数である。
図2に与えられた実施例では、Vは、17に等しく設定されるであろう。しかしながら、観察データの数が少ないシステムでは、式2は、故障がまだ観察されていないサブモジュールでは故障の確率が過大評価される傾向がある。例えば、観察された故障が2回あるだけで、両方ともサブモジュールU
1によるものである場合、上述の式では、約0.16の故障の推定事前確率P(U
1)と、残りの16個のサブモジュールについての0.035の故障の事前確率が生成される。これは、残りの1つのサブモジュールと対照してサブモジュールU
1によって約5倍後続の故障が起こる可能性があるに過ぎないことを示唆するであろうが、直感は我々に、他のモジュールのいずれよりもサブモジュールU
1によってはるかに後続の故障が起こる可能性があることを告げている。
【0020】
これらの問題を軽減するために、式3に与えられるようにラムダ平滑化アルゴリズムを用いる。
【0022】
ここで、V
Sは、以前に故障が観察された異なる(ユニークな)サブモジュールの全数である。観察された2回の故障が両方ともサブモジュールU
1に帰属される、式2に関して与えられたのと同じ実施例を用いると、式3によって、サブモジュールU
1についての0.69(すなわち、69%)の故障の事前確率と、残りの16個のサブモジュールについての0.020(すなわち、2%)の故障の事前確率とが与えられる。これは、観察データに基づいて後続の故障がサブモジュールU
1によって生じる可能性がより高いという我々の直感に一致する。ラムダ平滑化アルゴリズムの利点は、制限された数の観察データに基づいて各サブモジュールについて故障の有用な事前確率P(U
j)を生成する能力にある。特に、現場で使用されるシステムがほんの制限された数(すなわち、数十あるいは数百)である用途では、観察データは、長期間制限されたままになる。
【0023】
尤度行列18は従って、ある与えられたサブモジュールU
jが故障したときに特定のエラーコードE
iが生成される尤度に関する条件つき確率P(E
i|U
j)と、サブモジュールU
jが装置故障の原因となる尤度を推定する事前確率P(U
j)とを含む。BITシステム14によって一組のエラーコードが与えられるとすれば、尤度行列18によって記憶された、与えられたエラーコードに対応する条件つき確率P(E
i|U
j)と、事前確率P(U
j)とが選択され、ベイズ計算機20に供給される。選択された条件つき確率P(E
i|U
j)および事前確率P(U
j)に基づいて、ベイズ計算機20は、各サブモジュールについて故障の事後確率P(U
j|E
i)を計算する。計算された故障の事後確率P(U
j|E
i)に基づいて、最も故障した可能性のあるサブモジュールが特定される。
【0024】
図3は、プロセッサ22(
図1に示される)によって実行されるアルゴリズム、本発明の実施例による、ある与えられたエラーコード(EC)に基づくサブモジュールの故障の事後確率P(U
j|E
i)を生成するために診断ツール10により実行される演算を示す流れ図である。BITシステム14によって与えられたエラーコード(EC)に応じて、条件つき確率P(E
i|U
j)が尤度行列18によって選択され、事前確率P(U
j)と一緒にベイズ計算機20に供給される。尤度行列18によって選択され、供給された条件つき確率P(E
i|U
j)と、故障の事前確率P(U
j)とに応じて、ベイズ計算機20は、特定のエラーコードECを考慮して各サブモジュールに付随する故障の事後確率P(U
j|E)を計算する。ベイズ計算機20は次いで、特定のエラーコードを考慮して最も高い故障の事後確率を有するように計算されたサブモジュールを選択して、特定されたサブモジュールを出力として提供する。
【0025】
一実施例では、ベイズ計算機20は、
図1の各サブモジュールU
1−U
Nについて故障の事後確率を生成するようにベイズの法則を用いる。
【0029】
は、BITシステム14から受け取ったエラーコード(EC)の集合である。この集合は、1つまたは複数のエラーコードを含むことができる。用語argmaxは、最も高い(すなわち、最大の)事後確率を有するサブモジュールが、故障した(failed)サブモジュールとして特定されることを意味する。用語
【0033】
である。この用語は、各サブモジュールU
1−U
Nについて同じであり、そのためこの用語は、観測されたエラーコードの集合を考慮してどのサブモジュールが最も可能性のあるシステム故障の原因となるかを分類する目的では無視できる。式4の右側は、式5に与えられるようにエラーコードの列
【0035】
にベイズの法則を繰り返し適用することで計算される。
【0037】
式5は、エラーコードが互いに関連し得ることを示している。例えば、二重字項P(E
2|U
j,E
1)は、特定のサブモジュールの故障を考慮して2つのエラーコードが生成される結合確率を示す。しかしながら、二重字(bigram)の採用は、多数の観測データが、複数のエラーコードの存在の間に関連を与えるのに利用可能な用途でのみ実際的である。利用可能な観測データが制限されている用途では、事後確率の計算を改善するためにユニグラム(unigram)近似が用いられる。
【0041】
が、上述したように無視されており、積が、エラーコード
【0043】
の観測された集合における全てのエラーコードE
iに亘ることを示している。
【0044】
以下の実施例は、サブモジュールU
1、U
2について式6の適用を示すように与えられる。例えば、サブモジュールU
1が故障して、BITシステム14が単一のエラーコード「2007」を生成すると仮定する。与えられたエラーコードに基づいて、尤度行列18は、サブモジュールU
1について、以下の条件つき確率P(2007|U
1)=0.4と、故障の事前確率P(U
1)=0.07とを与える。式6に基づいて、サブモジュールU
1に付随する故障の事後確率は、条件つき確率P(2007|U
1)と故障の事前確率P(U
1)との積、すなわち、0.07*0.4=0.028(すなわち、サブモジュールU
1が故障したという、2.8%の可能性)と計算される。同様に、サブモジュールU
2について、尤度行列18は、条件つき確率P(2007|U
2)=1と、故障の事前確率P(U
1)=0.01とを与える。式6に基づいて、サブモジュールU
2に付随する故障の事後確率は、条件つき確率P(2007|U
2)と故障の事前確率P(U
2)との積、すなわち、1*0.01=0.01(すなわち、サブモジュールU
2が故障したという、1%の可能性)と計算される。この実施例では、サブモジュールU
1の故障の事後確率(2.8%)は、サブモジュールU
2の故障の事後確率(1%)より大きく、診断ツール16は、サブモジュールU
1が故障したものと正確に特定する。
【0045】
ここで、サブモジュールU
2が故障して、BITシステム14がエラーコードの集合{2007,2008,6001}を生成すると仮定する。与えられたエラーコードに基づいて、尤度行列18は、サブモジュールU
1について、以下の条件つき確率P(2007|U
1)=0.4、P(2008|U
1)=0.4、P(6001|U
1)=0.2と、故障の事前確率P(U
1)=0.07とを与える。式6に基づいて、サブモジュールU
1に付随する故障の事後確率は、条件つき確率P(2007|U
1)、P(2008|U
1)、P(6001|U
1)と故障の事前確率P(U
1)との積、すなわち、(0.4*0.4*0.2)*0.07=0.0022(すなわち、サブモジュールU
1が故障したという、0.22%の可能性)と計算される。同様に、サブモジュールU
2について、尤度行列18は、条件つき確率P(2007|U
2)=1、P(2008|U
2)=1、P(6001|U
2)=1と、故障の事前確率P(U
1)=0.01とを与える。式6に基づいて、サブモジュールU
2に付随する故障の事後確率は、条件つき確率P(2007|U
2)、P(2008|U
2)、P(6001|U
2)と故障の事前確率P(U
2)との積、すなわち、(1*1*1)*0.01=0.01(すなわち、サブモジュールU
2が故障したという、1%の可能性)と計算される。この実施例では、サブモジュールU
2の故障の事後確率(1%)は、サブモジュールU
1の故障の事後確率(0.22%)より大きく、診断ツール10は、サブモジュールU
2が故障したものと正確に特定する。
【0046】
このように、診断ツール10は、故障の原因となった可能性のあるサブモジュールを特定する出力を提供する。別の実施例では、故障した可能性のある単一のサブモジュールを特定するのではなく、診断ツール10は、各サブモジュールに付随する故障の尤度に優先順位をつける出力を提供する。さらに診断ツール10は、追加の観察データに基づいて尤度行列18によって記憶された条件つき確率および故障の事前確率両方を修正することを含め、必要に応じて更新可能である。さらに尤度行列18は、新たなサブモジュールに対応するために拡張可能である。事後確率を計算するベイズ法は、各サブモジュールについての条件つき確率と事前確率の積に依存するので、新たなサブモジュールは、尤度行列18にさらに列を追加することで組み込むことができる。
【0047】
本発明は、1つまたは複数の例示的な実施例について記載したとはいえ、当業者は、本発明の範囲から逸脱せずにさまざまな変更を行うことが可能であり、また、均等物を本発明の要素に置換可能である、と理解するであろう。さらに、本発明の本質的な範囲から逸脱せずに本発明の教示に特定の状況または物質を適合させるように、多くの修正を行うことができる。従って、本発明は、開示された特定の1つまたは複数の実施例に限定されることではなく、添付の特許請求の範囲に含まれる全ての実施例を含むことを意図するものである。