(57)【要約】【課題】事前に想定できない障害等であっても安全に障害原因を分析できる障害原因分析システムを提供する。【解決手段】挙動空間構築装置１は、モジュール５ごとの挙動空間を構築する。異常性情報収集装置７は、定期的に動作データを取得して挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶しておく。障害情報収集装置９は、障害が検知された場合には動作データを取得して挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶する。障害原因分析装置１１は、異常性情報の逸脱度および障害情報の逸脱度を含む評価関数に基づいて障害原因を分析する。【選択図】図１
2010122134.tif 000002
【特許請求の範囲】
【請求項１】
複数のモジュールによって動作するシステムにおいて発生した障害原因を分析する障害原因分析システムであって、
モジュールごとの挙動空間を構築する挙動空間構築手段と、
定期的に動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶する異常性情報収集手段と、
障害が検知された場合には動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶する障害情報収集手段と、
前記異常性情報の逸脱度および前記障害情報の逸脱度を含む評価関数に基づいて障害原因を分析する障害原因分析手段と、
を備えることを特徴とする障害原因分析システム。
【請求項２】
前記挙動空間構築手段は、各モジュールの入力信号に係る第１の挙動空間と、各モジュールの入力信号および出力信号に係る第２の挙動空間との両方を構築することを特徴とする請求項１に記載の障害原因分析システム。
【請求項３】
前記異常性情報収集手段は、定期的に動作データを取得して、前記第１の挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を第１の異常性情報の逸脱度として記憶し、かつ前記第２の挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を第２の異常性情報の逸脱度として記憶するものであり、
前記障害情報収集手段は、障害が検知された場合には動作データを取得して前記第１の挙動空間における逸脱度を算出し、算出した逸脱度を第１の障害情報の逸脱度として記憶し、かつ前記第２の挙動空間における逸脱度を算出し、算出した逸脱度を第２の障害情報の逸脱度として記憶するものであることを特徴とする請求項２に記載の障害原因分析システム。
【請求項４】
前記障害原因分析手段は、各モジュールの入力信号が障害か否かを分析する場合には、前記第１の障害情報の逸脱度が大きいモジュールの入力信号は障害原因である可能性が高いと評価し、かつ前記第１の異常性情報の逸脱度が大きい値となることが多いモジュールの入力信号は障害原因である可能性が低いと評価する評価関数を用いることを特徴とする請求項３に記載の障害原因分析システム。
【請求項５】
前記障害原因分析手段は、各モジュールの機能が障害か否かを分析する場合には、前記第２の障害情報の逸脱度が大きいモジュールの機能は障害原因である可能性が高いと評価し、かつ前記第２の異常性情報の逸脱度が大きい値となることが多いモジュールの機能は障害原因である可能性が低いと評価する評価関数を用いることを特徴とする請求項３に記載の障害原因分析システム。
【請求項６】
複数のモジュールによって動作するシステムにおいて発生した障害原因を分析する障害原因分析方法であって、
モジュールごとの挙動空間を構築するステップと、
定期的に動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶するステップと、
を含み、
障害が検知された場合には動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶し、前記異常性情報の逸脱度および前記障害情報の逸脱度を含む評価関数に基づいて障害原因を分析することを特徴とする障害原因分析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
複数のモジュールによって動作するシステムにおいて発生した障害原因を分析する障害原因分析システム、障害原因分析方法に関する。
【背景技術】
【０００２】
近年、複数のモジュールによって動作するシステムにおいて、システムの大規模化に伴い、障害原因を分析することが難しくなってきている。このようなシステムとしては、例えば、車両に搭載される車載システムがある。車載システムでは、複数のＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）が、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワークを介して互いにデータの送受信を行い、協調して動作を行っている。その為、あるＥＣＵが故障すると、他のＥＣＵにも異常が伝搬してしまい、障害原因を分析することが難しい。
【０００３】
そこで、車載システムの障害原因を分析する仕組みが考えられている（特許文献１参照）。特許文献１における仕組みは、ある車両において発見された故障がどのような条件が揃った時に発生し易いかを解析するものである。所定の故障発生判定基準に基づいて故障が発生したと判定された車両の障害原因を分析する場合、その車両状態または車両属性（型式、車台番号、搭載部品、走行距離等）が類似する他の車両に対して、故障発生判定基準をより緩やかな基準へ変更する。そして、類似する他の車両の中で、変更した基準に基づいて故障が発生したと判定された車両に共通する車両状態、車両周辺環境の特徴を抽出する。
【特許文献１】特開２００６−３４９４２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された仕組みでは、故障発生判定基準のパラメータが連続的な値を取り、閾値によって故障か否かを判定することを前提としている。その為、例えば、走行中や一時停止中にエンジンが停止するといった故障の場合、故障発生判定基準をより緩やかな基準へと変更することはできず、特許文献１の仕組みを適用できない。また、故障発生判定基準を定義することができない障害、すなわち事前に想定できない障害には適用できない。
【０００５】
また、故障車両と類似する車両を実際に走行させて故障発生時に近い状態を再現することになる為、人命に関わるような障害に対しては、特許文献１の仕組みを適用できない。
【０００６】
本発明は、前述した問題点に鑑みてなされたもので、その目的は、事前に想定できない障害等であっても安全に障害原因を分析できる障害原因分析システムを提供することである。
【課題を解決するための手段】
【０００７】
前述した目的を達成するために第１の発明は、複数のモジュールによって動作するシステムにおいて発生した障害原因を分析する障害原因分析システムであって、モジュールごとの挙動空間を構築する挙動空間構築手段と、定期的に動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶する異常性情報収集手段と、障害が検知された場合には動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶する障害情報収集手段と、前記異常性情報の逸脱度および前記障害情報の逸脱度を含む評価関数に基づいて障害原因を分析する障害原因分析手段と、を備えることを特徴とする障害原因分析システムである。
第１の発明によって、事前に想定できない障害等であっても安全に障害原因を分析できる。
【０００８】
第１の発明における前記挙動空間構築手段は、各モジュールの入力信号に係る第１の挙動空間と、各モジュールの入力信号および出力信号に係る第２の挙動空間との両方を構築することが望ましい。
また、第１の発明における前記異常性情報収集手段は、定期的に動作データを取得して、前記第１の挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を第１の異常性情報の逸脱度として記憶し、かつ前記第２の挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を第２の異常性情報の逸脱度として記憶するものであり、前記障害情報収集手段は、障害が検知された場合には動作データを取得して前記第１の挙動空間における逸脱度を算出し、算出した逸脱度を第１の障害情報の逸脱度として記憶し、かつ前記第２の挙動空間における逸脱度を算出し、算出した逸脱度を第２の障害情報の逸脱度として記憶するものであることが望ましい。
これによって、モジュールの入力信号の不整合が障害原因なのか、またはモジュールの機能が障害原因なのかを区別して分析することができる。
【０００９】
また、第１の発明における前記障害原因分析手段は、各モジュールの入力信号が障害か否かを分析する場合には、前記第１の障害情報の逸脱度が大きいモジュールの入力信号は障害原因である可能性が高いと評価し、かつ前記第１の異常性情報の逸脱度が大きい値となることが多いモジュールの入力信号は障害原因である可能性が低いと評価する評価関数を用いることが望ましい。
また、第１の発明における前記障害原因分析手段は、各モジュールの機能が障害か否かを分析する場合には、前記第２の障害情報の逸脱度が大きいモジュールの機能は障害原因である可能性が高いと評価し、かつ前記第２の異常性情報の逸脱度が大きい値となることが多いモジュールの機能は障害原因である可能性が低いと評価する評価関数を用いることが望ましい。
これによって、障害発生時に正常な挙動空間から離れていた入力信号または機能が障害を引き起こした可能性が高いと判断できる。また、障害未発生時に正常な挙動空間から離れることが多い入力信号または機能は、障害発生時に正常な挙動空間から離れていたとしても、障害を引き起こした可能性が低いと判断できる。
【００１０】
第２の発明は、複数のモジュールによって動作するシステムにおいて発生した障害原因を分析する障害原因分析方法であって、モジュールごとの挙動空間を構築するステップと、定期的に動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶するステップと、を含み、障害が検知された場合には動作データを取得して前記挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶し、前記異常性情報の逸脱度および前記障害情報の逸脱度を含む評価関数に基づいて障害原因を分析することを特徴とする障害原因分析方法である。
【発明の効果】
【００１１】
本発明により、事前に想定できない障害等であっても安全に障害原因を分析できる障害原因分析システムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下図面に基づいて、本発明の実施形態を詳細に説明する。
【００１３】
図１は、障害原因分析システム１の概略構成を示す図である。障害原因分析システム１は、複数のモジュールによって動作するシステムにおいて発生した障害原因を分析するためのシステムである。複数のモジュールによって動作するシステムとしては、複数のＥＣＵを搭載する車載システムなどがある。
【００１４】
図１に示すように、障害原因分析システム１は、挙動空間構築装置３、複数のモジュール５、異常性情報収集装置７、障害情報収集装置９、障害原因分析装置１１等から構成される。挙動空間構築装置３、障害原因分析装置１１は、例えばコンピュータであって、分析対象のシステムに搭載される必要はない。モジュール群は、分析対象のシステムを構成する。異常性情報収集装置７、障害情報収集装置９は、分析対象のシステムに搭載される。
【００１５】
挙動空間構築装置３は、モジュール５ごとの挙動空間を構築する。挙動空間については後述する。モジュール５は、分析対象のシステムの各機能を果たす。異常性情報収集装置７は、モジュール５の入力信号および出力信号の取得、後述する逸脱度の算出、異常性情報の収集等を行う。尚、モジュール５の入力信号および出力信号の取得、逸脱度の算出は、それぞれのモジュール５が行うようにしても良いが、以下では、異常性情報収集装置７が、モジュール５の入力信号および出力信号の取得、逸脱度の算出を行うものとして説明する。
【００１６】
障害情報収集装置９は、障害が検知された場合の逸脱度の算出、障害情報の収集等を行う。障害原因分析装置１１は、異常性情報収集装置７、障害情報収集装置９の処理結果に基づいて障害原因の分析を行う。
【００１７】
図２は、挙動空間構築装置３を実現するコンピュータのハードウェア構成図である。尚、図２のハードウェア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。
【００１８】
挙動空間構築装置３は、制御部２１、記憶部２２、メディア入出力部２３、通信制御部２４、入力部２５、表示部２６、周辺機器Ｉ／Ｆ部２７等が、バス２８を介して接続される。
【００１９】
制御部２１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。
【００２０】
ＣＰＵは、記憶部２２、ＲＯＭ、記録媒体等に格納されるプログラムをＲＡＭ上のワークメモリ領域に呼び出して実行し、バス２８を介して接続された各装置を駆動制御し、挙動空間構築装置３が行う後述する処理を実現する。
ＲＯＭは、不揮発性メモリであり、コンピュータのブートプログラムやＢＩＯＳ等のプログラム、データ等を恒久的に保持している。
ＲＡＭは、揮発性メモリであり、記憶部２２、ＲＯＭ、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部２１が各種処理を行う為に使用するワークエリアを備える。
【００２１】
記憶部２２は、ＨＤＤ（ハードディスクドライブ）であり、制御部２１が実行するプログラム、プログラム実行に必要なデータ、ＯＳ（オペレーティングシステム）等が格納される。プログラムに関しては、ＯＳ（オペレーティングシステム）に相当する制御プログラムや、後述する処理をコンピュータに実行させるためのアプリケーションプログラムが格納されている。
これらの各プログラムコードは、制御部２１により必要に応じて読み出されてＲＡＭに移され、ＣＰＵに読み出されて各種の手段として実行される。
【００２２】
メディア入出力部２３（ドライブ装置）は、データの入出力を行い、例えば、ＣＤドライブ（−ＲＯＭ、−Ｒ、−ＲＷ等）、ＤＶＤドライブ（−ＲＯＭ、−Ｒ、−ＲＷ等）、ＭＯドライブ等のメディア入出力装置を有する。
通信制御部２４は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク２９間の通信を媒介する通信インタフェースであり、ネットワーク２９を介して、他のコンピュータ間との通信制御を行う。
【００２３】
入力部２５は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。
入力部２５を介して、コンピュータに対して、操作指示、動作指示、データ入力等を行うことができる。
表示部２６は、ＣＲＴモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等（ビデオアダプタ等）を有する。
【００２４】
周辺機器Ｉ／Ｆ（インタフェース）部２７は、コンピュータに周辺機器を接続させるためのポートであり、周辺機器Ｉ／Ｆ部２７を介してコンピュータは周辺機器とのデータの送受信を行う。周辺機器Ｉ／Ｆ部２７は、ＵＳＢやＩＥＥＥ１３９４やＲＳ−２３２Ｃ等で構成されており、通常複数の周辺機器Ｉ／Ｆを有する。周辺機器との接続形態は有線、無線を問わない。
バス２８は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
【００２５】
図３は、モジュール５のハードウェア構成図である。尚、図３のハードウェア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。
【００２６】
図３に示すように、モジュール５は、制御部３１、記憶部３２、通信インタフェース３３等で構成される。
【００２７】
制御部３１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。
【００２８】
ＣＰＵは、記憶部３２、ＲＯＭ、記録媒体等に格納されるプログラムをＲＡＭ上のワークメモリ領域に呼び出して実行し、モジュール５全体を駆動制御する。
ＲＯＭは、不揮発性メモリであり、処理に必要なプログラム、データ等を恒久的に保持している。
ＲＡＭは、揮発性メモリであり、記憶部３２、ＲＯＭ等からロードしたプログラム、データ等を一時的に保持するとともに、制御部３１が各種処理を行う為に使用するワークエリアを備える。
【００２９】
記憶部３２は、制御部３１が実行するプログラム、プログラム実行に必要なデータ等が格納される。これらの各プログラムコードは、制御部３１により必要に応じて読み出されてＲＡＭに移され、ＣＰＵに読み出されて各種の手段として実行される。
通信インタフェース３３は、モジュール５とＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの車載ネットワーク３４間の通信を媒介する。
【００３０】
異常性情報収集装置７、障害情報収集装置９のハードウェア構成は、モジュール５のハードウェア構成と同様である。また、障害原因分析装置１１のハードウェア構成は、挙動空間構築装置３のハードウェア構成と同様である。尚、挙動空間構築装置３と障害原因分析装置１１は、同一の筐体として構成しても良い。また、異常性情報収集装置７と障害情報収集装置９は、同一の筐体として構成しても良い。
【００３１】
以下、図４から図１０を参照しながら、挙動空間構築装置３、異常性情報収集装置７、障害情報収集装置９、障害原因分析装置１１の動作の詳細について説明する。
【００３２】
最初に、挙動空間構築装置３の動作の詳細について説明する。
挙動空間構築装置３の制御部２１は、記憶部２２に保持するモジュール入出力関係データベースを参照し、動作データからモジュールごとの挙動空間を構築する。尚、動作データは、システムの動作中に取得され、媒体やネットワーク等を介して挙動空間構築装置３の記憶部２２に記憶されているものとする。
【００３３】
図４は、モジュール入出力関係データベース４１の一例を示す図である。図４に示すように、モジュール入出力関係データベース４１は、モジュール名、入力信号、出力信号等の項目から成る。図４の例では、ｍｏｄｕｌｅＡは、ｓｉｇｎａｌ１、ｓｉｇｎａｌ２を入力信号、ｓｉｇｎａｌ４、ｓｉｇｎａｌ８、ｓｉｇｎａｌ９を出力信号とすることを示している。また、ｍｏｄｕｌｅＢは、ｓｉｇｎａｌ４、ｓｉｇｎａｌ８、ｓｉｇｎａｌ１１を入力信号、ｓｉｇｎａｌ５を出力信号とすることを示している。挙動空間構築装置３は、モジュール入出力関係データベース４１を参照し、各モジュール５の入出力関係を取得する。
【００３４】
図５は、動作データ４５の一例を示す図である。図５に示すように、動作データ４５は、各信号の項目から成る。図５の例では、１番目のデータは、ｓｉｇｎａｌ１が「０．３５７４００」、ｓｉｇｎａｌ２が「１」である。２番目のデータは、ｓｉｇｎａｌ１が「０．００００００」、ｓｉｇｎａｌ２が「０」である。挙動空間構築装置３の制御部２１は、図５に示す動作データ４３を収集し、図４に示すモジュール入出力関係データベース４１に基づいてモジュールごとに挙動空間を構築する。尚、挙動空間の構築に用いられる動作データ４３は、診断対象のシステムが正常に動作しているときのデータである。
【００３５】
本実施の形態では、相関を考慮した距離であるマハラノビス距離を用いて挙動空間を構築する。例として、ｍｏｄｕｌｅＡの入力信号（＝ｓｉｇｎａｌ１とｓｉｇｎａｌ２）に係る挙動空間の構築について説明する。挙動空間構築装置３の制御部２１は、図５に示す動作データ４３から、ｍｏｄｕｌｅＡの入力信号であるｓｉｇｎａｌ１とｓｉｇｎａｌ２のデータを取得する。次に、挙動空間構築装置３の制御部２１は、ｓｉｇｎａｌ１とｓｉｇｎａｌ２の平均、分散を算出し、データの正規化を行う。そして、挙動空間構築装置３の制御部２１は、次式によってマハラノビスの距離を算出する。
【数１】
2010122134.tif 000003
但し、Ｄ：マハラノビス距離、Ｘ、Ｙ：正規化後のｓｉｇｎａｌ１、ｓｉｇｎａｌ２、ｒ：ｓｉｇｎａｌ１、ｓｉｇｎａｌ２の相関係数である。ここで、相関係数は、モジュールＡの入力信号のデータ群から計算する。
【００３６】
図６は、挙動空間データ４５の一例を示す図である。図６は、横軸がマハラノビス距離を指標とした中心からの逸脱度、縦軸がデータ数のヒストグラムである。図６の例は、ｍｏｄｕｌｅＡの入力信号に係る挙動空間データ４５を示している。図６に示すように、ｍｏｄｕｌｅＡの入力信号に係る挙動空間データ４５は、逸脱度が０〜３の範囲であり、更に逸脱度が０または１の範囲に入るデータが大部分を占めている。このように、挙動空間構築装置３の制御部２１は、マハラノビス距離を指標とした中心からの逸脱度によって、挙動空間を構築する。
【００３７】
以上、変数が２次元の場合であるｍｏｄｕｌｅＡの入力信号を例として説明したが、３次元以上についても同様にマハラノビス距離を算出し、挙動空間を構築することができる。また、挙動空間構築装置３の制御部２１は、同様に各モジュールの入力信号および出力信号に係る挙動空間を構築することができる。例えば、ｍｏｄｕｌｅＡの入力信号および出力信号に係る挙動空間であれば、図４に示す通り、入力信号がｓｉｇｎａｌ１、ｓｉｇｎａｌ２、出力信号がｓｉｇｎａｌ４、ｓｉｇｎａｌ８、ｓｉｇｎａｌ９である。この場合、挙動空間構築装置３の制御部２１は、５次元のマハラノビス距離を算出し、挙動空間を構築する。
【００３８】
次に、異常性情報収集装置７について説明する。
図７は、異常性情報収集装置７の動作の詳細を示すフローチャートである。前提として、異常性情報収集装置７は、モジュール入出力関係データベース４１を記憶部３２に保持している。
【００３９】
図７に示すように、異常性情報収集装置７の制御部３１は、定期的に動作データを取得し（Ｓ１０１）、モジュール入出力関係データベース４１を参照して、モジュールごとに挙動空間における逸脱度を算出する（Ｓ１０２）。
算出した逸脱度が所定の閾値を超えた場合（Ｓ１０３のＹｅｓ）、異常性情報収集装置７の制御部３１は、算出した逸脱度を異常性データとして記憶し（Ｓ１０４）、所定の時間を経過した後にＳ１０１から処理を繰り返す。所定の閾値は、挙動空間データ４５に基づいて定める。
算出した逸脱度が所定の閾値を超えない場合（Ｓ１０４のＹｅｓ）、異常性情報収集装置７の制御部３１は、算出した逸脱度を異常性データとして記憶せず、所定の時間を経過した後にＳ１０１から処理を繰り返す。
【００４０】
図８は、異常性データ４７の一例を示す図である。図８に示すように、異常性データ４７は、モジュール名、パターン種別、逸脱度、データ、時刻、データＩＤ等の項目を有する。モジュール名は、逸脱度を算出したモジュール５を識別する名称である。パターン種別は、例えば、モジュール５の入力信号に係る異常性データ４７の場合には「１」、モジュール５の入力信号および出力信号に係る異常性データ４７の場合には「２」である。つまり、パターン種別は、異常性データ４７がモジュール５の入力信号に係る挙動空間における逸脱度を算出したものか、またはモジュール５の入力信号および出力信号に係る挙動空間における逸脱度を算出したものかを識別する。時刻は、動作データを取得した時刻である。データＩＤは、逸脱度の算出に用いられた動作データ４３を識別する番号である。つまり、モジュール名、パターン種別が異なっても、同時刻に取得された動作データ４３に基づいて逸脱度を算出したデータ同士は、データＩＤが同じ値となる。
【００４１】
図８は、異常性データ４７の一例を示す図である。図８には、ｍｏｄｕｌｅＡの入力信号に係る異常性データが登録されていることから、異常性情報収集装置７の制御部３１は、ｓｉｇｎａｌ１、ｓｉｇｎａｌ２の逸脱度を算出し、算出した逸脱度が所定の閾値を超えていると判定し、算出した逸脱度を異常性データ４７として記憶部２２に記憶したことになる。ｍｏｄｕｌｅＡの入力信号に係る異常性データ４７は、モジュール名が「ｍｏｄｕｌｅＡ」、パターン種別が「１」、逸脱度が「１０」、データが「ｓｉｇｎａｌ＝０．９７５１００、ｓｉｇｎａｌ２＝０」、時刻が「２０：１８：０５」、データＩＤが「１」である。
以上、パターン種別が「１」、すなわちモジュール５の入力信号に係る挙動空間における逸脱度の算出および異常性情報の収集について説明したが、異常性情報収集装置７の制御部３１は、パターン種別が「２」、すなわちモジュール５の入力信号および出力信号に係る挙動空間における逸脱度の算出および異常性情報の収集についても同様に行うことができる。
【００４２】
このように、異常性情報収集装置７の制御部３１は、定期的に動作データを取得して、モジュール５の入力信号に係る挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶する。また、異常性情報収集装置７の制御部３１は、モジュール５の入力信号および出力信号に係る挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶する。
【００４３】
次に、障害情報収集装置９について説明する。
図９は、障害情報収集装置９の動作の詳細を示すフローチャートである。前提として、障害情報収集装置９の制御部３１は、モジュール入出力関係データベース４１を記憶部３２に保持している。
【００４４】
図９に示すように、障害情報収集装置９の制御部３１は、障害が検知したことを示す障害検知信号を監視し（Ｓ２０１）、障害が発生した場合には（Ｓ２０２のＹｅｓ）、動作データを取得する（Ｓ２０３）。障害が発生していない場合には、障害情報収集装置９の制御部３１は、Ｓ２０１に戻る。障害検知信号は、例えば、図１に図示していない障害検知装置が障害を検知したときに送信されるように構成しても良い。また、障害検知信号は、診断対象のシステムのユーザが、図１に図示しない入力装置（車載システムであれば、計器盤に設けられたボタン等）を押下したときに送信されるように構成しても良い。
【００４５】
次に、障害情報収集装置９の制御部３１は、取得した動作データから、逸脱度を算出し（Ｓ２０４）、算出した逸脱度を障害データとして記憶部３２に記憶する（Ｓ２０５）。障害情報収集装置９の制御部３１は、異常性データ４７と異なり、閾値との比較をせずに、全てのモジュールについて２つのパターン種別の逸脱度を記憶部３２に記憶する。
【００４６】
このように、障害情報収集装置９の制御部３１は、障害が検知された場合には、動作データを取得して、モジュール５の入力信号に係る挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶する。また、障害情報収集装置９の制御部３１は、障害が検知された場合には、動作データを取得して、モジュール５の入力信号および出力信号に係る挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶する。
【００４７】
次に、障害原因分析装置１１について説明する。
障害原因分析装置１１の制御部２１は、異常性情報収集装置７が収集した異常性情報、および障害情報収集装置９が収集した障害情報を含む評価関数に基づいて障害原因を分析する。尚、異常性情報および障害情報は、媒体やネットワーク等を介して障害原因分析装置１１の記憶部２２に記憶されるものとする。
【００４８】
評価関数は、一般に次式で定義される。
【数２】
2010122134.tif 000004
但し、Ｖｉｐ：障害原因である度合いを示す評価値、ｉ：モジュール５を示す添え字、ｊ：異常性データ４７のデータＩＤを示す添え字、ｐ：パターン種別を示す添え字、ｑ：評価対象（モジュール５の入力信号、またはモジュール５の機能）を示す添え字、ａｉｐ：障害発生時のモジュールｉ、パターン種別ｐの逸脱度（＝障害情報の逸脱度）、ｎｉｊｐ：障害未発生時のモジュールｉ、データＩＤｊ、パターン種別ｐの逸脱度（＝異常性情報の逸脱度）、である。
【００４９】
図１０は、原因分析データ４９の一例を示す図である。原因分析データ４９は、式（２）に示す評価関数に含まれる変数のデータである。尚、図１０における「−」は、値がないことを意味するが、評価関数を計算する際には「０」の値として扱うものとする。
【００５０】
図１０に示すように、例えば、障害未発生時のデータＩＤが「１」のデータは、ｍｏｄｕｌｅＡの入力信号に関する逸脱度（（＝パターン種別が「１」）が「１０」である。また、例えば、障害未発生時のデータＩＤが「２」のデータは、ｍｏｄｕｌｅＢの入力信号および出力信号に関する逸脱度（（＝パターン種別が「２」）が「５」である。また、例えば、障害発生時のデータは、ｍｏｄｕｌｅＡの入力信号に関する逸脱度（（＝パターン種別が「１」）が「１」である。表の右側に示すａｉｐ、ｎｉｊｐは、式（２）に対応している。
障害原因分析装置１１の制御部２１は、図１０に示す原因分析データ４９から式（２）に示す評価関数に基づいて評価値を算出し、どのモジュール５の入力信号が障害原因なのか、またはどのモジュール５の機能が障害原因なのかを分析する。
【００５１】
以下では、例として具体的な評価関数を示して、障害原因分析装置１１の動作の詳細について説明する。
次式は、各モジュール５の入力信号が障害か否かを分析するときに用いる評価関数の一例である。
【数３】
2010122134.tif 000005
式（３）に示す評価関数の評価値は、障害情報の逸脱度に比例する。これによって、式（３）に示す評価関数は、障害情報の逸脱度が大きいモジュール５の入力信号が障害原因である可能性が高いと評価する。すなわち、障害原因分析装置１１の制御部２１は、式（３）に示す評価関数を用いることによって、障害発生時に正常な挙動空間から離れていた入力信号が障害を引き起こした可能性が高いと判断できる。
また、式（３）に示す評価関数の評価値は、異常性情報の逸脱度が所定の閾値よりも大きいデータの個数に反比例する。これによって、式（３）に示す評価関数は、異常性情報の逸脱度が大きい値となることが多いモジュール５の入力信号が障害原因である可能性が低いと評価する。すなわち、障害原因分析装置１１の制御部２１は、式（３）に示す評価関数を用いることによって、障害未発生時に正常な挙動空間から離れることが多い入力信号は、障害発生時に正常な挙動空間から離れていたとしても、障害を引き起こした可能性が低いと判断できる。これは、狼少年を信用しないという思想に基づく。
【００５２】
次式は、各モジュール５の機能が障害か否かを分析するときに用いる評価関数の一例である。
【数４】
2010122134.tif 000006
式（４）に示す評価関数の評価値は、入力信号および出力信号に関する障害情報の逸脱度に比例する。これによって、式（４）に示す評価関数は、入力信号および出力信号に関する障害情報の逸脱度が大きいモジュール５の機能が障害原因である可能性が高いと評価する。すなわち、障害原因分析装置１１の制御部２１は、式（４）に示す評価関数を用いることによって、障害発生時に正常な挙動空間から離れていた機能が障害を引き起こした可能性が高いと判断できる。
また、式（４）に示す評価関数の評価値は、入力信号および出力信号に関する異常性情報の逸脱度が所定の閾値よりも大きいデータの個数に反比例する。これによって、式（３）に示す評価関数は、入力信号および出力信号に関する異常性情報の逸脱度が大きい値となることが多いモジュール５の機能が障害原因である可能性が低いと評価する。すなわち、障害原因分析装置１１の制御部２１は、式（４）に示す評価関数を用いることによって、障害未発生時に正常な挙動空間から離れることが多い機能は、障害発生時に正常な挙動空間から離れていたとしても、障害を引き起こした可能性が低いと判断できる。これは、狼少年を信用しないという思想に基づく。
【００５３】
以上説明したように、本発明の実施の形態によれば、障害原因分析システム１は、最初にモジュールごとの挙動空間を構築する。次に、定期的に動作データを取得して挙動空間における逸脱度を算出し、算出した逸脱度が所定の閾値を超えた場合には、算出した逸脱度を異常性情報の逸脱度として記憶しておく。そして、障害が検知された場合には動作データを取得して挙動空間における逸脱度を算出し、算出した逸脱度を障害情報の逸脱度として記憶し、異常性情報の逸脱度および障害情報の逸脱度を含む評価関数に基づいて障害原因を分析する。
【００５４】
本発明の実施の形態に係る障害原因分析システム１では、障害が発生する前の情報（＝異常性情報）と障害が発生した時の情報（＝障害情報）に基づいて、障害原因の分析を行う。つまり、障害が発生した後に障害の再現を行う必要はなく、稀な条件によって発生した障害等に対しても、安全に障害を分析することができる。
【００５５】
また、本発明の実施の形態に係る障害原因分析システム１では、正常時の動作データからマハラノビス距離に基づいて構築した挙動空間から異常性情報を記憶するか否かを判定する閾値を決定し、閾値に従って異常性情報を収集する。また、障害情報は、障害が発生したときに収集する。そして、異常性情報および障害情報に基づいて障害分析を行う。従って、障害かどうかの判定基準を事前に決定する必要がないことから、事前に想定できない障害、及び障害かどうかの判定基準を決定できない障害などについても、障害原因を分析することができる。
【００５６】
また、本発明の実施の形態に係る障害原因分析システム１では、モジュール５ごとに、入力信号と、入力信号および出力信号との２種類の挙動空間を構築し、それぞれ異常性情報および障害情報を収集して障害原因を分析する。従って、モジュール５の入力信号の不整合が障害原因なのか、またはモジュール５の機能が障害原因なのかを区別して分析することができる。
【００５７】
以上、添付図面を参照しながら、本発明に係る障害原因分析システム等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【００５８】
【図１】障害原因分析システム１の概略構成を示す図
【図２】挙動空間構築装置３を実現するコンピュータのハードウェア構成図
【図３】モジュール５のハードウェア構成図
【図４】モジュール入出力関係データベース４１の一例を示す図
【図５】動作データ４５の一例を示す図
【図６】挙動空間データ４５の一例を示す図
【図７】異常性情報収集装置７の動作の詳細を示すフローチャート
【図８】異常性データ４７の一例を示す図
【図９】障害情報収集装置９の動作の詳細を示すフローチャート
【図１０】原因分析データ４９の一例を示す図
【符号の説明】
【００５９】
１………障害原因分析システム
３………挙動空間構築装置
５………モジュール
７………異常性情報収集装置
９………障害情報収集装置
１１………障害原因分析装置
４１………モジュール入出力関係データベース
４３………動作データ
４５………挙動空間データ
４７………異常性データ
４９………原因分析データ
【図１】
2010122134.tif 000007
【図２】
2010122134.tif 000008
【図３】
2010122134.tif 000009
【図４】
2010122134.tif 000010
【図５】
2010122134.tif 000011
【図６】
2010122134.tif 000012
【図７】
2010122134.tif 000013
【図８】
2010122134.tif 000014
【図９】
2010122134.tif 000015
【図１０】
2010122134.tif 000016