(57)【特許請求の範囲】
【請求項１】
所定の運転プロセスが繰り返される機械設備に設置されたセンサの検出値を含むセンサデータを取得するセンサデータ取得手段と、
前記機械設備が正常であることが既知である期間のセンサデータの時系列的な波形を学習対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、繰り返される前記運転プロセスごとの前記波形データに基づいて、当該センサデータの時系列的な波形を正常な波形と判定し、
前記正常な波形データをひとまとまりの特徴ベクトルに変換し、各特徴ベクトルを正常モデルとしてクラスタリングする学習手段と、
診断対象のセンサデータの時系列的な波形を対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、当該波形データと前記正常モデルとの比較に基づいて、前記機械設備の異常予兆の有無を診断する診断手段と、を備えること
を特徴とする異常予兆診断システム。
【請求項２】
請求項１において、
前記学習手段は、学習対象の前記波形データに含まれる前記検出値及び前記経過時間を無次元量化して互いに比較可能とする正規化処理を施した値を成分とする特徴ベクトルをクラスタリングすることによって、クラスタ中心及びクラスタ半径で表される少なくとも一つのクラスタを前記正常モデルとして学習し、
前記診断手段は、診断対象の前記波形データに正規化処理を施して特徴ベクトルに変換し、前記クラスタのうち、当該特徴ベクトルに最も近いクラスタ中心を有するものを特定し、当該クラスタ中心と当該特徴ベクトルとの距離が前記クラスタ半径に対して占める割合を異常測度として算出し、当該異常測度に基づいて、前記機械設備の異常予兆の有無を診断すること
を特徴とする異常予兆診断システム。
【請求項３】
所定の運転プロセスが繰り返される機械設備に設置されたセンサの検出値を含むセンサデータを取得するセンサデータ取得手段と、
前記機械設備が正常であることが既知である期間のセンサデータの時系列的な波形を学習対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、繰り返される前記運転プロセスごとの前記波形データに基づいて、当該センサデータの時系列的な波形を正常モデルとして学習する学習手段と、
診断対象のセンサデータの時系列的な波形を対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、当該波形データと前記正常モデルとの比較に基づいて、前記機械設備の異常予兆の有無を診断する診断手段と、を備え、
前記学習手段は、学習対象の前記波形データに含まれる前記検出値及び前記経過時間を無次元量化して互いに比較可能とする正規化処理を施した値を成分とする特徴ベクトルをクラスタリングすることによって、クラスタ中心及びクラスタ半径で表される少なくとも一つのクラスタを前記正常モデルとして学習し、
前記診断手段は、診断対象の前記波形データに正規化処理を施して特徴ベクトルに変換し、前記クラスタのうち、当該特徴ベクトルに最も近いクラスタ中心を有するものを特定し、当該クラスタ中心と当該特徴ベクトルとの距離が前記クラスタ半径に対して占める割合を異常測度として算出し、当該異常測度に基づいて、前記機械設備の異常予兆の有無を診断し、
診断対象の前記波形データに含まれる前記検出値が前記距離に対して占める割合、及び、診断対象の前記波形データに含まれる前記経過時間が前記距離に対して占める割合を、それぞれ寄与度として算出し、当該寄与度を記憶手段に格納すること
を特徴とする異常予兆診断システム。
【請求項４】
請求項１又は請求項３のいずれかにおいて、
センサデータの時系列的な波形に含まれる高調波を減衰させるフィルタを備え、
前記学習手段は、学習対象のセンサデータに含まれる高調波を前記フィルタによって減衰させた後の波形に基づいて、前記正常モデルを学習し、
前記診断手段は、診断対象のセンサデータに含まれる高調波を前記フィルタによって減衰させた後の波形に基づいて、前記機械設備の異常予兆の有無を診断すること
を特徴とする異常予兆診断システム。
【請求項５】
所定の運転プロセスが繰り返される機械設備に設置されたセンサの検出値を含むセンサデータを取得するセンサデータ取得手段と、
前記機械設備が正常であることが既知である期間のセンサデータを学習対象とし、当該学習対象のセンサデータの時系列的な波形の極値点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、繰り返される前記運転プロセスごとの前記波形データに基づいて、当該センサデータの時系列的な波形を正常モデルとして学習する学習手段と、
診断対象のセンサデータの時系列的な波形の極値点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、当該波形データと前記正常モデルとの比較に基づいて、前記機械設備の異常予兆の有無を診断する診断手段と、を備え、
前記学習手段は、学習対象のセンサデータの時系列的な波形に含まれる極値点のうち、当該極値点における検出値と、当該極値点を与える時刻よりも所定時間前又は所定時間後における検出値と、の差分の絶対値が所定閾値以上であるものを前記特徴点として抽出し、
前記診断手段は、診断対象のセンサデータの時系列的な波形に含まれる極値点のうち、当該極値点における検出値と、当該極値点を与える時刻よりも所定時間前又は所定時間後における検出値と、の差分の絶対値が所定閾値以上であるものを前記特徴点として抽出すること
を特徴とする異常予兆診断システム。
【請求項６】
請求項１から請求項５のいずれか一項において、
前記学習手段は、前記診断手段によって異常予兆なしと診断されたセンサデータを学習対象として追加し、追加したセンサデータを含めて前記正常モデルを再学習すること
を特徴とする異常予兆診断システム。
【請求項７】
所定の運転プロセスが繰り返される機械設備に設置されたセンサの検出値を含むセンサデータを取得し、
前記機械設備が正常であることが既知である期間のセンサデータの時系列的な波形を学習対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、繰り返される前記運転プロセスごとの前記波形データに基づいて、当該センサデータの時系列的な波形を正常な波形と判定し、
前記正常な波形データをひとまとまりの特徴ベクトルに変換し、各特徴ベクトルを正常モデルとしてクラスタリングすることによって、前記センサの検出値の正常な波形を表すクラスタを学習し、
診断対象のセンサデータの時系列的な波形を対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、当該波形データと前記正常モデルとの比較に基づいて、前記機械設備の異常予兆の有無を診断すること
を特徴とする異常予兆診断方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械設備の異常予兆の有無を診断する異常予兆診断システム等に関する。
【背景技術】
【０００２】
機械設備に設置されているセンサの検出値に基づいて、機械設備の異常予兆の有無を診断する技術が知られている。
【０００３】
例えば、特許文献１には、機械設備の運転スケジュールを複数の時間帯に分割し、各時間帯ごとに時系列データをクラスタリングすることによって、機械設備の正常範囲を示すクラスタを学習し、このクラスタに基づいて機械設備の異常予兆の有無を診断する異常予兆診断装置について記載されている。
【０００４】
また、特許文献２には、監視対象プラントの温度分布を示す画像データを１５分間隔で学習データとして取得し、これらの学習データに基づき、ニューラルネットワークを用いて温度変化の正常パターンを学習し、さらに、前記した正常パターンに基づいて監視対象プラントの異常の有無を識別するプラント監視装置について記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許５６８４９４１号公報
【特許文献２】特開平６−２５９６７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術では、前記した複数の時間帯に含まれるそれぞれの時間帯において、クラスタが一括で学習される。したがって、例えば、一つの時間帯において所定範囲内の大きさで時系列データが急激に変動する波形でも、また、前記した所定範囲内の大きさで時系列データが緩やかに変動する波形でも、これらを区別することなく「異常予兆なし」と診断する可能性がある。
【０００７】
しかしながら、特に化学プラントや製薬プラントでは、時系列データの大きさに加えて、その波形が重要視されている。時系列データの波形には、化学反応の過程や反応速度が反映されるからである。前記した２種類の波形（急激な変動、緩やかな変動）のうち一方について「異常予兆なし」と診断されるならば、他方は「異常予兆あり」と診断されるべきである。したがって、特許文献１に記載の技術は、診断精度をさらに高める余地がある。
【０００８】
また、特許文献２に記載の技術では、前記したように、１５分間隔で取得される画像データに基づいて、正常パターンが学習される。しかしながら、監視対象プラントの温度分布は時々刻々と変動しており、その時系列的な波形を正常パターンに正確に反映させようとすると、ニューラルネットワークでの計算量が膨大になる。したがって、特許文献２に記載の技術についても、診断精度をさらに高める余地がある。
【０００９】
そこで、本発明は、機械設備の異常予兆の有無を高精度で診断できる異常予兆診断システム等を提供することを課題とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するために、本発明に係る異常予兆診断システムは、所定の運転プロセスが繰り返される機械設備に設置されたセンサの検出値を含むセンサデータを取得するセンサデータ取得手段と、前記機械設備が正常であることが既知である期間のセンサデータの時系列的な波形を学習対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、繰り返される前記運転プロセスごとの前記波形データに基づいて、当該センサデータの時系列的な波形を正常な波形と判定し、前記正常な波形データをひとまとまりの特徴ベクトルに変換し、各特徴ベクトルを正常モデルとしてクラスタリングする学習手段と、診断対象のセンサデータの時系列的な波形を対象とし、前記運転プロセスの開始時における前記波形の始点、前記波形の極大点及び極小点を含む複数の極値点、並びに、前記運転プロセスの終了時における前記波形の終点を特徴点として抽出し、当該特徴点における前記センサの検出値、及び、前記特徴点のそれぞれに対応する前記運転プロセスの開始時からの経過時間を、前記波形を表す波形データとして取得し、当該波形データと前記正常モデルとの比較に基づいて、前記機械設備の異常予兆の有無を診断する診断手段と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、機械設備の異常予兆の有無を高精度で診断する異常予兆診断システム等を提供できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態に係る異常予兆診断システムの構成図である。
【図２】センサの検出値の変化を示す波形図である。
【図３】異常予兆診断システムが備えるデータマイニング手段の構成図である。
【図４】センサデータの波形の特徴点に関する説明図である。
【図５】特徴点記憶部に格納されているデータの説明図である。
【図６】クラスタ学習部によって学習されるクラスタの説明図である。
【図７】異常予兆診断システムの処理を示すフローチャートである。
【図８】学習手段が実行する学習処理のフローチャートである。
【図９】診断手段が実行する診断処理のフローチャートである。
【図１０】（ａ）は機械設備の正常時・異常予兆発生時におけるセンサデータの波形図であり、（ｂ）は機械設備の正常時・異常予兆発生時におけるセンサデータの波形図の別の例である。
【図１１】本発明の第２実施形態に係る異常予兆診断システムが備えるデータマイニング手段の構成図である。
【図１２】特徴点とクラスタとの関係を示す説明図である。
【図１３】学習手段が実行する学習処理のフローチャートである。
【図１４】診断手段が実行する診断処理のフローチャートである。
【図１５】（ａ）は機械設備の正常時・異常予兆発生時におけるセンサの検出値の時系列的な変化を示す実験データであり、（ｂ）は機械設備の正常時・異常予兆発生時におけるセンサの検出値の時系列的な変化を示す別の実験データである。
【図１６】本発明の第３実施形態に係る異常予兆診断システムが備えるデータマイニング手段の構成図である。
【図１７】センサの検出値、及び一次関数で表される直線に関する説明図である。
【図１８】学習手段が実行する学習処理のフローチャートである。
【図１９】診断手段が実行する診断処理のフローチャートである。
【図２０】（ａ）は学習対象データの波形、及び一次関数の直線を示す説明図であり、（ｂ）は機械設備の異常予兆発生時における診断対象データの波形、及び一次関数の直線を示す説明図である。
【図２１】学習結果であるクラスタ、及び診断対象データの特徴ベクトルの説明図である。
【図２２】（ａ）は学習対象データの波形の別の例、及び一次関数の直線を示す説明図であり、（ｂ）は機械設備の異常予兆発生時における診断対象データの波形、及び一次関数の直線を示す説明図である。
【図２３】学習結果であるクラスタ、及び診断対象データの特徴ベクトルの説明図である。
【発明を実施するための形態】
【００１３】
≪第１実施形態≫
＜異常予兆診断システムの構成＞
図１は、第１実施形態に係る異常予兆診断システム１の構成図である。
異常予兆診断システム１は、機械設備２に設置されたセンサ（図示せず）の検出値を含むセンサデータに基づいて、機械設備２の異常予兆の有無を診断するシステムである。前記した「異常予兆」とは、機械設備２の異常が発生する前触れであり、「異常予兆診断」とは、異常予兆の有無を診断することである。
【００１４】
以下では、異常予兆診断システム１の説明に先立って、機械設備２について簡単に説明する。機械設備２は、例えば、化学プラントであり、図示はしないが、反応器や、この反応器に化学物質を投入する装置を備えている。そして、機械設備２において所定の「運転プロセス」が繰り返されることで、各工程において所定の化学物質が生成されるようになっている。なお、機械設備２の種類はこれに限定されず、製薬プラント、生産ライン、ガスエンジン、ガスタービン、発電設備、医療設備、通信設備等であってもよい。
【００１５】
機械設備２には、図示はしないが、所定の物理量（温度、圧力、流量、電流、電圧等）を検出するセンサが設置されている。このセンサによって検出された物理量は、センサデータとして、ネットワークＮを介して異常予兆診断システム１に送信される。なお、センサデータには、センサの検出値、物理量を検出した日付・時刻の他に、機械設備２の識別情報、センサの識別情報、機械設備２において繰り返される「運転プロセス」の開始・終了を示す信号も含まれる。
【００１６】
以下では、一例として、機械設備２に設置されている複数のセンサのうち、機械設備２の異常予兆が敏感に反映される１つのセンサの検出値に基づいて、機械設備２の異常予兆の有無を診断する構成について説明する。
【００１７】
図２は、センサの検出値の変化を示す波形図である。なお、図２の横軸は時刻であり、縦軸は、機械設備２に設置されているセンサ（図示せず）の検出値である。
図２に示す例では、時刻ｔ０１から時刻ｔ０２の時間帯で、機械設備２において１回目の運転プロセスが実行され、時刻ｔ０２から時刻ｔ０３の時間帯で２回目の運転プロセスが実行されている。このように運転プロセスが繰り返されるため、機械設備２が正常であれば、各運転プロセスにおいてセンサの検出値が同様の（つまり、非常に似通った）波形になる。
【００１８】
本実施形態では、機械設備２が正常であることが既知である所定の学習期間（図２参照）に取得したセンサデータに基づき、センサデータの時系列的な波形（運転プロセスごとの波形）を正常モデルとして学習し、この正常モデルに基づいて、機械設備２の異常予兆の有無を判定するようにしている。なお、正常モデルの詳細については後記する。
【００１９】
＜異常予兆診断システムの構成＞
図１に示すように、異常予兆診断システム１は、通信手段１１と、センサデータ取得手段１２と、センサデータ記憶手段１３と、データマイニング手段１４と、診断結果記憶手段１５と、表示制御手段１６と、表示手段１７と、を備えている。
【００２０】
通信手段１１は、機械設備２からネットワークＮを介して、センサデータを含む情報を受信するものである。通信手段１１として、例えば、ＴＣＰ／ＩＰの通信プロトコルに従って情報を受信するルータを用いることができる。
【００２１】
センサデータ取得手段１２は、ネットワークＮを介して通信手段１１が受信した情報に含まれるセンサデータを取得し、取得したセンサデータをセンサデータ記憶手段１３に格納する。
センサデータ記憶手段１３には、センサデータ取得手段１２によって取得されたセンサデータが、例えば、データベースとして格納されている。なお、センサデータ記憶手段１３として、磁気ディスク装置、光ディスク装置、半導体記憶装置等を用いることができる。
【００２２】
データマイニング手段１４は、統計的なデータ分類手法であるデータマイニングによって、センサの検出値の波形の正常モデルを学習し、この正常モデルに基づいて、機械設備２の異常予兆の有無を診断する。なお、データマイニング手段１４の詳細については後記する。
【００２３】
診断結果記憶手段１５には、データマイニング手段１４の診断結果が格納されている。前記した診断結果には、機械設備２の識別情報、及び機械設備２の異常予兆の有無が含まれている。
表示制御手段１６は、データマイニング手段１４の診断結果を表示するための制御信号を表示手段１７に出力する。例えば、表示制御手段１６は、各機械設備２の名称を行とし、診断日の日付を列として、診断結果をマトリクス形式で表示手段１７に表示する。
表示手段１７は、例えば、液晶ディスプレイであり、表示制御手段１６から入力される制御信号に従って診断結果を表示する。
【００２４】
図３は、異常予兆診断システム１が備えるデータマイニング手段１４の構成図である。
図３に示すように、データマイニング手段１４は、学習手段１４１と、診断手段１４２と、を備えている。学習手段１４１は、データマイニングの手法の一つであるクラスタリングによって、センサ（図示せず）の検出値の正常な波形を正常モデルとして学習する。
【００２５】
図３に示すように、学習手段１４１は、学習対象データ取得部１４１ａと、特徴点抽出部１４１ｂと、特徴点記憶部１４１ｃと、クラスタ学習部１４１ｄと、学習結果記憶部１４１ｅと、を備えている。
学習対象データ取得部１４１ａは、学習対象であるセンサデータ（つまり、学習対象データ）を、センサデータ記憶手段１３から取得する。すなわち、学習対象データ取得部１４１ａは、機械設備２が正常であることが既知である学習期間（図２参照）に取得されたセンサデータを、機械設備２の運転プロセスごとに取得する。
【００２６】
特徴点抽出部１４１ｂは、センサデータの時系列的な波形の「特徴点」を抽出する。前記した「特徴点」には、センサデータの時系列的な波形の極大点・極小点の他に、運転プロセスの開始時・終了時の点も含まれる。なお、極大点・極小点をまとめて「極値点」ともいう。
【００２７】
図４は、センサデータの波形の特徴点に関する説明図である。なお、図４では、図２に示す１回目の運転プロセスにおけるセンサの検出値を図示している。
特徴点抽出部１４１ｂ（図３参照）は、検出値の波形の極大点Ｍ１，Ｍ２及び極小点ｍを特定するとともに、１回目の運転プロセスの開始時である始点ｓ、及び１回目の運転プロセスの終了時である終点ｅを特定する。そして、特徴点抽出部１４１ｂは、始点ｓ・極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅのそれぞれについて、センサの検出値、及び運転プロセスが開始された時刻ｔ０１からの経過時間を特定する。つまり、特徴点抽出部１４１ｂは、図４に示す検出値ｐ１〜ｐ５、及び経過時間Δｔ１〜Δｔ５を特定する。
【００２８】
前記したように、センサデータには、運転プロセスの開始・終了を示す信号も含まれている。特徴点抽出部１４１ｂ（図３参照）は、この信号に基づいて、始点ｓ及び終点ｅを特定する。また、極大点Ｍ１，Ｍ２及び極小点ｍは、時々刻々と変化する検出値の変化速度に基づいて特定される。つまり、センサの検出値の変化速度が正から負に転じた箇所を極大点とし、負から正に転じた箇所を極小点とすればよい。
【００２９】
特徴点抽出部１４１ｂ（図３参照）は、図４に示す５つの特徴点における検出値ｐ１〜ｐ５及び経過時間Δｔ１〜Δｔ５を、ひとまとまりの波形データ（１０次元のベクトルを与えるデータ）として、特徴点記憶部１４１ｃに格納する。前記した波形データは、センサデータの正常な波形を表す一群のデータである。特徴点抽出部１４１ｂは、学習期間（図２参照）に含まれる２回目〜ｎ回目の運転プロセスについても同様に特徴点を抽出し、波形データ（センサの検出値、及び、運転プロセスの開始時からの経過時間）として特徴点記憶部１４１ｃに格納する。
【００３０】
図５は、特徴点記憶部１４１ｃに格納されているデータの説明図である。なお、図５では、運転プロセスの開始時である始点ｓ（図４参照）を「第１の特徴点」としている。また、極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅについても同様に、「第２の特徴点」・「第３の特徴点」・「第４の特徴点」・「第５の特徴点」としている。
【００３１】
特徴点記憶部１４１ｃには、前記した波形データがデータベースとして格納されている。１回目の運転プロセス（図５：左端の列を参照）の波形データは、検出値ｐ１〜ｐ５（図４参照）、及び経過時間Δｔ１〜Δｔ５（図４参照）を含んで構成される。これらの１まとまりの波形データは、次に説明するクラスタ学習部１４１ｄ（図３参照）において、１０次元の特徴ベクトルを生成する際に用いられる。なお、学習期間（図２参照）に含まれる２回目〜ｎ回目の運転プロセスについても同様である。
【００３２】
図３に示すクラスタ学習部１４１ｄは、前記した波形データを特徴ベクトルに変換し、各特徴ベクトルをクラスタリングすることによって、センサの検出値の正常な波形を表すクラスタを学習する。
【００３３】
図６は、クラスタ学習部１４１ｄによって学習されるクラスタの説明図である。
図６に示すクラスタＪは、多次元ベクトル空間においてクラスタ中心ｃ及びクラスタ半径ｒで特定される領域であり、学習期間（図２参照）に取得されたセンサデータに基づいて学習される。
【００３４】
例えば、一回目の運転プロセスにおけるセンサの検出値の時系列的な波形は、センサの検出値ｐ１〜ｐ５、及び、運転プロセスの開始時からの経過時間Δｔ１〜Δｔ５に正規化処理を施した値を成分とする特徴ベクトルで表される。ここで「正規化処理」とは、センサの検出値及び経過時間を代表値（平均値、標準偏差等）で除算するなどして無次元量化して、互いに比較可能とする処理である。
【００３５】
図６に示す●印（ｎ個存在する）は特徴ベクトルであり、１回目〜ｎ回目（図２参照）の運転プロセスにおけるセンサの検出値の波形に対応している。また、図６では、３次元ベクトル空間上で特徴ベクトル（●印）を図示しているが、実際には、センサの検出値の波形は１０次元の特徴ベクトルで表される。図４に示す５つの特徴点（始点ｓ・極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅ）がそれぞれ、センサの検出値及び経過時間によって特定されるからである。つまり、（特徴点の個数）×２が、正常な波形を表す特徴ベクトルの次元数になる。
【００３６】
前記したように、機械設備２では所定の運転プロセスが繰り返されるため、各運転プロセスにおけるセンサデータ（つまり、時系列的に取得される検出値）が同様の波形になる（図２参照）。したがって、機械設備２が正常であれば、波形を表す各特徴ベクトルが密集することが多い。
【００３７】
クラスタ学習部１４１ｄ（図３参照）は、図６の●印で示すｎ個の特徴ベクトルを、クラスタと呼ばれるグループに分類する。以下では、一例として、非階層的クラスタリングであるｋ平均法を用いてクラスタを学習する場合について説明する。クラスタ学習部１４１ｄは、まず、各特徴ベクトルに対してランダムにクラスタを割り振り、割り振った各クラスタの中心（クラスタ中心ｃ：図６参照）を算出する。クラスタ中心ｃは、例えば、クラスタに属する複数の特徴ベクトルの重心である。
【００３８】
次に、クラスタ学習部１４１ｄは、所定の特徴ベクトルと各クラスタ中心ｃとの距離を求め、この距離が最も小さくなるクラスタに当該特徴ベクトルを割り当て直す。クラスタ学習部１４１ｄは、このような処理を全ての特徴ベクトルについて実行する。そして、クラスタの割り当てが変化しなかった場合、クラスタ学習部１４１ｄは、クラスタの生成処理を終了し、それ以外の場合には、新しく割り振られたクラスタからクラスタ中心ｃを再計算する。
【００３９】
そして、クラスタ学習部１４１ｄは、各クラスタについてクラスタ中心ｃ（図６参照）の座標値、及びクラスタ半径ｒ（図６参照）を算出する。クラスタ半径ｒは、例えば、クラスタ中心ｃと、そのクラスタに属する特徴ベクトルと、の距離の平均値である。なお、クラスタ半径ｒの算出方法はこれに限定されない。例えば、クラスタに属する特徴ベクトルのうちクラスタ中心ｃから最も離れている特徴ベクトルを特定し、この特徴ベクトルとクラスタ中心ｃとの距離をクラスタ半径ｒとしてもよい。このようにしてクラスタ学習部１４１ｄは、センサの検出値の波形を表す正常モデルとして、クラスタＪ（図６参照）を学習する。
【００４０】
なお、図６では、学習結果として一つのクラスタＪが生成される場合を図示したが、クラスタが複数生成されることもある。クラスタ学習部１４１ｄは、生成したクラスタに関するクラスタ情報を学習結果記憶部１４１ｅ（図３参照）に格納する。
【００４１】
図３に示す学習結果記憶部１４１ｅには、クラスタ学習部１４１ｄの学習結果であるクラスタ情報が、データベースとして格納されている。前記したクラスタ情報には、クラスタ中心ｃ（図６参照）、クラスタ半径ｒ（図６参照）、及び機械設備２の識別情報が含まれている。
【００４２】
診断手段１４２は、学習手段１４１によって学習されたクラスタ（正常モデル）と、診断対象のセンサデータの時系列的な波形と、の比較に基づいて、機械設備２の異常予兆の有無を診断する。図３に示すように、診断手段１４２は、診断対象データ取得部１４２ａと、特徴点抽出部１４２ｂと、異常測度算出部１４２ｃと、診断部１４２ｄと、寄与度算出部１４２ｅと、を備えている。
【００４３】
診断対象データ取得部１４２ａは、診断対象のセンサデータ（つまり、診断対象データ）をセンサデータ記憶手段１３から取得する。すなわち、診断対象データ取得部１４２ａは、学習期間が終了した後の診断期間（図２参照）に取得されたセンサデータを、機械設備２で繰り返される運転プロセスごとに取得する。
【００４４】
特徴点抽出部１４２ｂは、診断対象データの特徴点を抽出する。つまり、特徴点抽出部１４２ｂは、診断対象データの時系列的な波形に含まれる始点・極大点・極小点・終点を、特徴点として抽出する。なお、特徴点の抽出方法については、学習手段１４１が備える特徴点抽出部１４１ｂの処理と同様である。特徴点抽出部１４２ｂは、抽出した特徴点の情報（つまり、各特徴点を与える検出値ｐ１〜ｐ５及び経過時間Δｔ１〜Δｔ５：図４参照）を、診断対象データの波形を表す波形データとして、異常測度算出部１４２ｃ及び寄与度算出部１４２ｅに出力する。
【００４５】
異常測度算出部１４２ｃは、学習結果記憶部１４１ｅに格納されているクラスタ情報、及び、特徴点抽出部１４２ｂから入力される波形データに基づいて、この波形データの異常の度合いを示す異常測度ｕを算出する。具体的に説明すると、異常測度算出部１４２ｃは、波形データに含まれる検出値及び経過時間に正規化処理を施して、特徴ベクトルに変換する。特徴ベクトルの次元数は、前記したように、（特徴点の個数）×２である。そして、異常測度算出部１４２ｃは、学習結果記憶部１４１ｅからクラスタ情報（つまり、正常モデル）を読み出し、このクラスタ情報と、前記した特徴ベクトルと、の比較に基づいて、診断対象データの異常測度ｕを算出する。
【００４６】
より詳しく説明すると、異常測度算出部１４２ｃは、各クラスタのうち、診断対象データの特徴ベクトルに最も近いクラスタ中心ｃ（図６参照）を有するものを特定する。さらに、異常測度算出部１４２ｃは、特定したクラスタのクラスタ中心ｃと、診断対象データの特徴ベクトルと、の距離ｄ（図６参照）を求める。そして、異常測度算出部１４２ｃは、前記した距離ｄが、クラスタ半径ｒ（特徴ベクトルに最も近いクラスタのクラスタ半径）に対して占める割合である異常測度ｕを、以下の（数式１）に基づいて算出する。
【００４７】
ｕ＝ｄ／ｒ・・・（数式１）
【００４８】
そして、異常測度算出部１４２ｃは、算出した異常測度ｕを診断部１４２ｄに出力するとともに、距離ｄを寄与度算出部１４２ｅに出力する。また、異常測度算出部１４２ｃは、診断対象データと、その異常測度ｕと、を対応付けて診断結果記憶手段１５に格納する。
【００４９】
診断部１４２ｄは、異常測度算出部１４２ｃから入力される異常測度ｕに基づき、機械設備２の異常予兆の有無を診断する。その一例を挙げると、異常測度ｕ≦１である場合、診断対象データがクラスタ内（つまり、正常範囲内）に存在しているため、診断部１４２ｄは、機械設備２について「異常予兆なし」と診断する。一方、異常測度ｕ＞１である場合、診断対象データがクラスタ外（つまり、正常範囲外）に存在しているため、診断部１４２ｄは、機械設備２について「異常予兆あり」と診断する。診断部１４２ｄは、その診断結果を診断対象データに対応付けて、診断結果記憶手段１５に格納する。
【００５０】
寄与度算出部１４２ｅは、前記した５つの特徴点（図４に示す始点ｓ・極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅ）を与える検出値ｐ１〜ｐ５、及び経過時間Δｔ１〜Δｔ５のそれぞれについて、その寄与度を算出する。前記した「寄与度」とは、診断対象データにおける検出値及び経過時間が、異常測度ｕに対してどれだけ寄与しているかを示す数値である。例えば、５つの特徴点の検出値及び経過時間を正規化した値をｆ１〜ｆ１０とおくと、ｆｋ（ｋ＝１，２，…，１０）の寄与度ｉｋは、以下の（数式２）で表される。
【００５１】
ｉｋ＝ｆｋ／ｄ・・・（数式２）
【００５２】
このように寄与度ｉｋを算出することで、異常予兆があった場合に、検出値の大きさが過大又は過小であるのか、その変化の仕方（波形）が異常であるのかを把握できる。例えば、検出値ｐ１〜ｐ５に対応する寄与度ｉ１〜ｉ５が比較的大きい場合、ユーザは、センサの検出値が過大又は過小であることを把握できる。
また、例えば、経過時間Δｔ１〜Δｔ５に対応する寄与度ｉ６〜ｉ１０が比較的大きい場合、ユーザは、検出値の変化の仕方が正常時に比べて急激又は緩やかであることを把握できる。
また、例えば、経過時間Δｔ１に対応する寄与度ｉ6が比較的大きい場合、ユーザは、運転プロセスが開始してから経過時間Δｔ１が経ったときに異常予兆が発生したこと（つまり、異常予兆の発生タイミング）を把握できる。
寄与度算出部１４２ｅは、算出した寄与度ｉｋを、診断対象データに対応付けて、診断結果記憶手段１５に格納する。
【００５３】
＜異常予兆診断システムの動作＞
図７は、異常予兆診断システム１の処理を示すフローチャートである。
ステップＳ１０１において異常予兆診断システム１は、学習手段１４１（図３参照）によって、学習処理を実行する。
【００５４】
図８は、学習手段１４１が実行する学習処理のフローチャートである。
ステップＳ１０１１において学習手段１４１は、学習対象データ取得部１４１ａによって、センサデータ記憶手段１３から学習対象データを取得する。つまり、学習手段１４１は、機械設備２が正常に稼動していることが既知である所定の学習期間（図２参照）に取得されたセンサデータのうち、１回目の運転プロセスのセンサデータを学習対象として取得する。
【００５５】
ステップＳ１０１２において学習手段１４１は、特徴点抽出部１４１ｂによって、学習対象データの時系列的な波形の特徴点を抽出する。つまり、学習手段１４１は、図４に示す始点ｓ・極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅを抽出し、検出値ｐ１〜ｐ５及び経過時間Δｔ１〜Δｔ５を特定する。前記したように、これらの検出値ｐ１〜ｐ５及び経過時間Δｔ１〜Δｔ５が、センサデータの正常な波形を表すひとまとまりの波形データである。
ステップＳ１０１３において学習手段１４１は、ステップＳ１０１２において抽出した特徴点の情報（つまり、波形データ）を特徴点記憶部１４１ｃに格納する。
【００５６】
ステップＳ１０１４において学習手段１４１は、学習期間（図２参照）において特徴点が抽出されていない他の運転プロセスが存在するか否かを判定する。特徴点が抽出されていない他の運転プロセスが存在する場合（Ｓ１０１４：Ｙｅｓ）、学習手段１４１の処理はステップＳ１０１１に戻る。一方、学習期間に含まれる全ての運転プロセスについて特徴点を抽出した場合（Ｓ１０１４：Ｎｏ）、学習手段１４１の処理はステップＳ１０１５に進む。
【００５７】
ステップＳ１０１５において学習手段１４１は、クラスタ学習部１４１ｄによって、センサデータの時系列的な波形の正常モデルであるクラスタを学習する。すなわち、学習手段１４１は、ステップＳ１０１３で抽出した特徴点を正規化して特徴ベクトルに変換し、各特徴ベクトルをクラスタリングすることによって、クラスタを学習する。
【００５８】
ステップＳ１０１６において学習手段１４１は、ステップＳ１０１５の学習結果を記憶する。つまり、学習手段１４１は、各クラスタのクラスタ中心ｃ（図６参照）及びクラスタ半径ｒ（図６参照）を、学習結果記憶部１４１ｅに格納する。ステップＳ１０１６の処理を行った後、学習手段１４１は、一連の学習処理を終了する（ＥＮＤ）。
【００５９】
図７に示すステップＳ１０１の学習処理を行ったのち、ステップＳ１０２において異常予兆診断システム１は、診断手段１４２（図３参照）によって、診断処理を実行する。
【００６０】
図９は、診断手段１４２が実行する診断処理のフローチャートである。
ステップＳ１０２１において診断手段１４２は、診断対象データ取得部１４２ａによって、センサデータ記憶手段１３から診断対象データを取得する。つまり、診断手段１４２は、学習期間が終了した後の診断期間（図２参照）に取得されたセンサデータのうち、１回目の運転プロセスのセンサデータを診断対象として取得する。
【００６１】
ステップＳ１０２２において診断手段１４２は、特徴点抽出部１４２ｂによって、診断対象データの時系列的な波形の特徴点を抽出する。
ステップＳ１０２３において診断手段１４２は、異常測度算出部１４２ｃによって、診断対象データの異常測度ｕを算出する。すなわち、診断手段１４２は、診断対象データを正規化して特徴ベクトルに変換し、各クラスタのうち、診断対象データの特徴ベクトルに最も近いクラスタ中心ｃを有するクラスタに基づいて、異常測度ｕを算出する。
【００６２】
ステップＳ１０２４において診断手段１４２は、寄与度算出部１４２ｅによって、診断対象データに含まれる検出値及び経過時間のそれぞれについて、寄与度ｉｋを算出する。なお、図９では省略したが、寄与度算出部１４２ｅによって算出された寄与度ｉｋは、診断結果記憶手段１５に格納され、さらに、表示制御手段１６（図１参照）によって表示手段１７（図１参照）に表示される。これによって、ユーザは、検出値が過大又は過小であるか、検出値の波形が異常であるかを把握でき、また、機械設備２の異常予兆が発生した時刻も把握できる。
【００６３】
ステップＳ１０２５において診断手段１４２は、診断部１４２ｄによって、機械設備２の異常予兆の有無を診断する。つまり、診断手段１４２は、ステップＳ１０２３で算出した異常測度ｕと、所定閾値（例えば、所定閾値＝１）と、の大小を比較することによって、機械設備２の異常予兆の有無を診断する。
ステップＳ１０２６において診断手段１４２は、ステップＳ１０２５の診断結果を診断結果記憶手段１５に格納する。
【００６４】
そして、診断手段１４２は、診断期間（図２参照）における２回目以後の運転プロセスについても同様にして、異常予兆の有無を診断する。なお、複数回の運転プロセスについて異常測度ｕを算出し、その算出結果（例えば、異常測度ｕが所定閾値を超えた回数）に基づいて、機械設備２の異常予兆の有無を診断してもよい。
診断結果記憶手段１５に格納された情報は、表示制御手段１６（図１参照）によって、表示手段１７（図１参照）に表示される。
【００６５】
＜効果＞
本実施形態によれば、センサデータの時系列的な波形の特徴点を抽出し、これらをひとまとまりの波形データとして多次元の特徴ベクトルで表している。したがって、前記した特徴ベクトルをクラスタリングすることによって、センサデータの正常な波形を学習できる。
なお、仮に、物理量が検出されるサンプリング周期ごとのセンサデータに基づいて正常な波形を学習するとすれば、１回の運転プロセスで多数の（例えば、数万個の）センサデータが取得されるため、クラスタの学習に要する計算量が膨大になる。これに対して本実施形態では、センサデータの波形の特徴点に基づいてクラスタを学習するため、センサデータの正常な波形を比較的少ない計算量で学習できる。また、診断期間におけるセンサデータの波形を表す波形データを、学習結果であるクラスタと比較することによって、機械設備２の異常予兆の有無を高精度で診断できる。
【００６６】
図１０（ａ）は、機械設備２の正常時・異常予兆発生時におけるセンサデータの波形図である。なお、図１０（ａ）に示す破線の波形は、機械設備２が正常に稼動しているとき（１回分の運転プロセス）に取得されたセンサデータである。また、実線の波形は、機械設備２で異常予兆が発生しているとき（１回分の運転プロセス）に取得されたセンサデータである。
【００６７】
図１０（ａ）に示す例では、特徴点Ｑ１Ａ〜Ｑ５Ａにおいて、運転プロセスの開始時（時刻ｔ１１）からの経過時間は正常時（破線）と同様であるが、特徴点Ｑ３Ａ，Ｑ４Ａにおける検出値が正常時よりも大きくなっている。その結果、特徴点Ｑ１Ａ〜Ｑ５Ａに基づく１０次元の特徴ベクトルが、学習結果としてのクラスタ外に存在するため、診断部１４２ｄによって「異常予兆あり」と診断される。また、１０次元の特徴ベクトルにおいて、特徴点Ｑ３Ａ，Ｑ４Ａの検出値の寄与度が比較的大きな値になる。したがって、ユーザは、特徴点Ｑ１Ａ〜Ｑ５Ａにおける経過時間は正常であるものの、その大きさが異常であることを把握できる。
【００６８】
図１０（ｂ）は、機械設備２の正常時・異常予兆発生時におけるセンサデータの波形図の別の例である。なお、図１０（ｂ）に示す破線の波形は、機械設備２が正常に稼動しているときに取得されたセンサデータであり、実線の波形は、機械設備２で異常予兆が発生しているときに取得されたセンサデータである。
図１０（ｂ）に示す例では、特徴点Ｑ１Ｂ〜Ｑ５Ｂにおいて、その検出値は正常時（破線）と同様であるが、特徴点Ｑ３Ｂ，Ｑ４Ｂにおいて、運転プロセスの開始時からの経過時間が正常時よりも短くなっている。その結果、特徴点Ｑ１Ｂ〜Ｑ５Ｂに基づく１０次元の特徴ベクトルが、学習結果としてのクラスタ外に存在するため、診断部１４２ｄによって「異常予兆あり」と診断される。また、１０次元の特徴ベクトルにおいて、特徴点Ｑ３Ｂ，Ｑ４Ｂの経過時間の寄与度が比較的大きな値になる。したがって、ユーザは、各特徴点Ｑ３Ｂ，Ｑ４Ｂの検出値は正常であるものの、その経過時間が異常であることを把握できる。
【００６９】
ちなみに、従来の異常予兆診断では、センサの検出値のみに基づいて特徴ベクトルを生成していたため、図１０（ｂ）に示す波形が得られた場合、機械設備２に「異常予兆なし」と誤診断される可能性が高かった。しかしながら、前記したように、化学プロセスや製薬プロセスでは、検出値の大きさに加えて、その時系列的な波形が重要視される。本実施形態によれば、図１０（ｂ）に示す波形が得られた場合、診断部１４２ｄによって、機械設備２に「異常予兆あり」と正しく診断できる。
【００７０】
≪第１実施形態の変形例≫
第１実施形態では、一つのセンサから取得されるセンサデータに基づいて、機械設備２の異常予兆の有無を診断する構成について説明したが、これに限らない。すなわち、複数のセンサから取得されるセンサデータに基づいて、機械設備２の異常予兆の有無を診断するようにしてもよい。この場合には、クラスタ学習部１４１ｄによって、第１実施形態と同様の方法で、それぞれのセンサに対応して個別でクラスタが学習される。例えば、３つのセンサからセンサデータを取得する場合、クラスタ学習部１４１ｄによって、少なくとも３つのクラスタが学習される。
【００７１】
そして、診断期間に取得された複数のセンサデータのうち、センサデータが得られたセンサに対応するクラスタを特定し、このクラスタとの比較に基づいて異常測度ｕが算出される。なお、１回の運転プロセスにおいて、センサの個数分（例えば、３つ）の異常測度ｕが算出される。したがって、ユーザは、表示手段１７に表示された異常測度ｕと、センサの設置位置と、に基づき、機械設備２における異常予兆の発生箇所を特定できる。
【００７２】
前記した構成において、診断部１４２ｄは、例えば、各異常測度のうち所定閾値を超えるものが存在する場合、機械設備２に「異常予兆あり」と診断する。なお、異常予兆の発生が敏感に反映されるセンサを事前に特定し、このセンサに基づく異常測度に重み付けしてもよい。また、それぞれのセンサについて、センサデータの異常測度が所定閾値を超えたか否かを示す信号が入力される論理回路を構成し、この論理回路によって異常予兆の有無を診断するようにしてもよい。
【００７３】
また、第１実施形態で説明した構成に、センサデータの時系列的な波形に含まれる高調波を減衰させるフィルタ（図示せず）を追加してもよい。このような構成において、学習対象データの波形に含まれる高調波をフィルタによって減衰させ、減衰後の波形に基づき、学習手段１４１によってクラスタ（正常モデル）が学習される。また、診断対象データの波形に含まれる高調波をフィルタによって減衰させ、減衰後の波形に基づき、機械設備２の異常予兆の有無が診断される。これによって、特徴点抽出部１４１ｂ，１４２ｂにおいて、徒に多くの特徴点が抽出されることを抑制できる。
【００７４】
また、例えば、特徴点抽出部１４１ｂによって、学習対象データの時系列的な波形に含まれる極値点（極大点・極小点）のうち、当該極値点におけるセンサの検出値と、当該極値点を与える時刻よりも所定時間前（又は、所定時間後）におけるセンサの検出値と、の差分の絶対値が所定閾値以上であるものを特徴点として抽出するようにしてもよい。診断手段１４２が備える特徴点抽出部１４２ｄについても同様である。これによって、細かく変動する波形から抽出される特徴点の個数を適度に抑えることができる。また、前記したフィルタ（図示せず）を併用し、フィルタによって高調波を減衰させた後の波形から極大点・極小点等を特定し、さらに、前記した絶対値に基づいて「特徴点」を抽出するようにしてもよい。
【００７５】
≪第２実施形態≫
第２実施形態に係る異常予兆診断システム１Ａ（図１１参照）は、センサデータの波形の特徴点を抽出し、それぞれの特徴点ごとに個別でクラスタを学習する点が第１実施形態とは異なっている。なお、異常予兆診断システム１Ａの全体構成については、第１実施形態（図１参照）と同様である。また、機械設備２において所定の運転プロセスが繰り返される点についても、第１実施形態と同様である。したがって、第１実施形態とは異なる部分について説明し、重複する部分については説明を省略する。
【００７６】
＜異常予兆診断システムの構成＞
図１１は、第２実施形態に係る異常予兆診断システム１Ａが備えるデータマイニング手段１４Ａの構成図である。
図１１に示すように、学習手段１４１Ａは、学習対象データ取得部１４１ａと、特徴点抽出部１４１ｂと、特徴点記憶部１４１ｃと、クラスタ学習部１４１Ａｄと、学習結果記憶部１４１Ａｅと、を備えている。
【００７７】
クラスタ学習部１４１Ａｄは、特徴点抽出部１４１ｂによって抽出された特徴点のそれぞれについて、個別でクラスタを学習する。例えば、第１実施形態（図４参照）と同様に、機械設備２の１回分の運転プロセスにおいて始点ｓ・極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅが特徴点として抽出された場合、クラスタ学習部１４１Ａｄは、５つの特徴点のそれぞれについてクラスタを学習する。これらのクラスタが、センサの検出値の時系列的な波形を表す正常モデルである。
【００７８】
クラスタの学習について具体的に説明すると、クラスタ学習部１４１Ａｄは、学習対象データの始点ｓの検出値ｐ１（図４参照）と、運転プロセスが開始されてからの経過時間Δｔ１（図４参照）と、に基づいて、２次元の特徴ベクトルを生成する。他の特徴点である極大点Ｍ１・極小点ｍ・極大点Ｍ２・終点ｅ（図４参照）についても同様にして、クラスタ学習部１４１Ａｄは、２次元の特徴ベクトルを生成する。
【００７９】
そして、クラスタ学習部１４１Ａｄは、各特徴ベクトルをクラスタリングすることによって、クラスタ中心ｃ（図６参照）及びクラスタ半径ｒ（図６参照）を求める。さらに、クラスタ学習部１４１Ａｄは、学習結果であるクラスタ情報を学習結果記憶部１４１Ａｅに格納する。
学習結果記憶部１４１Ａｅには、前記したクラスタ情報（クラスタ中心ｃ、クラスタ半径ｒ）が、例えば、データベースとして格納されている。
【００８０】
図１２は、特徴点とクラスタとの関係を示す説明図である。なお、破線は、機械設備２が正常に稼動していることが既知である学習期間（１回分の運転プロセス）に取得されたセンサデータである。実線は、学習期間が終了した後の診断期間（１回分の運転プロセス）に取得されたセンサデータである。図１２では、学習期間に取得されたセンサデータ（破線）と、診断期間に取得されたセンサデータ（実線）と、を運転プロセスの開始時を合わせるように重ねて図示している。
【００８１】
図１２に示す例では、学習対象のセンサデータ（破線）において、始点・２つの極大点・極小点・終点を含む５つの特徴点が抽出され、これらの特徴点のそれぞれについて、２次元ベクトル空間上でクラスタＪ１〜Ｊ５が学習されている。なお、特徴点とクラスタとが１対１で対応している必要はなく、一つの特徴点について複数個のクラスタが学習されることもある。
【００８２】
図１１に示す診断手段１４２Ａは、診断対象データ取得部１４２ａと、検出値特定部１４２ｆと、異常測度算出部１４２Ａｃと、診断部１４２Ａｄと、を備えている。
診断対象データ取得部１４２ａによって取得されるセンサデータ（つまり、診断対象データ）には、センサの検出値と、機械設備２の運転プロセスが開始された時刻ｔ１１（図１２参照）からの経過時間と、が含まれる。第１実施形態と同様に、繰り返される運転プロセスごとに診断対象データが取得される。
【００８３】
検出値特定部１４２ｆは、それぞれのクラスタＪ１〜Ｊ５（図１２参照）のクラスタ中心を与える経過時間Δｔ１〜Δｔ５に基づき、診断対象データにおいて、運転プロセスが開始されてから経過時間Δｔ１〜Δｔ５が経ったときの検出値を特定する。例えば、検出値特定部１４２ｆは、図１２に示すクラスタＪ２のクラスタ情報を読み出し、そのクラスタ中心を与える経過時間Δｔ２を取得する。そして、検出値特定部１４２ｆは、時系列的に変化する診断対象データの波形（実線）において、運転プロセスが開始されてから経過時間Δｔ２が経ったときの検出値ｐ１１を特定する。他のクラスタＪ１，Ｊ３〜Ｊ５についても同様に、検出値特定部１４２ｆは、運転プロセスが開始されてから所定の経過時間Δｔ１，Δｔ３〜Δｔ５が経ったときの検出値を特定する。
【００８４】
図１１に示す異常測度算出部１４２Ａｃは、検出値特定部１４２ｆによって特定された検出値に基づいて、診断対象データの異常測度ｕを算出する。例えば、異常測度算出部１４２Ａｃは、運転プロセスが開始されてからの経過時間Δｔ２（図１２参照）と、この経過時間Δｔ２における検出値ｐ１１（図１２参照）と、を正規化し、２次元の特徴ベクトルに変換する。そして、異常測度算出部１４２Ａｃは、経過時間Δｔ２に対応するクラスタＪ２のクラスタ情報と、前記した特徴ベクトルと、に基づき、第１実施形態で説明した（数式１）を用いて、診断対象データの異常測度ｕを算出する。
【００８５】
図１２に示す例では、経過時間Δｔ２における診断対象データ（実線）の検出値ｐ１１が、クラスタＪ２のクラスタ中心よりも大幅に小さくなっている。したがって、この場合には、経過時間Δｔ２における検出値の異常測度ｕが所定閾値を超える可能性が高い。異常測度算出部１４２Ａｃは、他の経過時間Δｔ１，Δｔ３〜Δｔ５における検出値についても同様にして、診断対象データの異常測度ｕを算出する。
【００８６】
図１１に示す診断部１４２Ａｄは、異常測度算出部１４２Ａｃによって算出される異常測度ｕに基づいて、機械設備２の異常予兆の有無を診断する。例えば、異常測度算出部１４２Ａｃによって算出される複数の異常測度ｕのうち、その大きさが所定閾値を超えるものが存在する場合、診断部１４２Ａｄは、機械設備２について「異常予兆あり」と診断する。また、異常測度ｕが所定閾値を超えるものが存在しない場合、診断部１４２Ａｄは、機械設備２について「異常予兆なし」と診断する。
なお、機械設備２で繰り返される運転プロセスにおいて、異常測度ｕが所定閾値を超える運転プロセスが所定回数に達した場合、機械設備２に「異常予兆あり」と診断するようにしてもよい。
【００８７】
＜異常予兆診断システムの動作＞
図１３は、学習手段１４１Ａが実行する学習処理のフローチャートである。なお、図１３のステップＳ１０１１〜Ｓ１０１４については第１実施形態（図８参照）と同様であるから、説明を省略する。
ステップＳ１０１５ａにおいて学習手段１４１Ａは、クラスタ学習部１４１Ａｄによって、それぞれの特徴点について個別でクラスタを学習する。つまり、学習手段１４１Ａは、学習対象データの特徴点における検出値及び経過時間に正規化処理を施して２次元の特徴ベクトルに変換し、それぞれの特徴点についてクラスタを生成する。
ステップＳ１０１６ａにおいて学習手段１４１Ａは、学習結果であるクラスタ情報（クラスタ中心ｃ、クラスタ半径ｒ）を学習結果記憶部１４１Ａｅに格納する。
【００８８】
図１４は、診断手段１４２Ａが実行する診断処理のフローチャートである。
ステップＳ２０１において診断手段１４２Ａは、診断対象データ取得部１４２ａによって、センサデータ記憶手段１３から診断対象データを取得する。つまり、診断手段１４２Ａは、学習期間が終了した後の診断期間に取得されたセンサデータのうち、１回目の運転プロセスのセンサデータを診断対象データとして取得する。
【００８９】
ステップＳ２０２において診断手段１４２Ａは、学習結果記憶部１４１Ａｅに格納されているクラスタ情報を参照し、複数のクラスタのうち一つを選択する。例えば、診断手段１４２Ａは、図１２に示す５つのクラスタＪ１〜Ｊ５のうち、波形の始点に対応するクラスタＪ１を選択する。
ステップＳ２０３において診断手段１４２Ａは、ステップＳ２０２で選択したクラスタのクラスタ中心を与える経過時間Δｔを、学習結果記憶部１４１Ａｅから読み出す。例えば、診断手段１４２Ａは、図１２に示すクラスタＪ１のクラスタ中心を与える経過時間Δｔ１を読み出す。
【００９０】
ステップＳ２０４において診断手段１４２Ａは、検出値特定部１４２ｆによって、ステップＳ２０３で読み出した経過時間Δｔにおける診断対象データの検出値を特定する。例えば、診断手段１４２Ａは、運転プロセスが開始されてから経過時間Δｔ１（図１２参照）が経ったときの検出値を特定する。
ステップＳ２０５において診断手段１４２Ａは、異常測度算出部１４２Ａｃによって、診断対象データの異常測度ｕを算出する。つまり、診断手段１４２Ａは、ステップＳ２０３で読み出した経過時間Δｔ、及びステップＳ２０４で特定した検出値を正規化して２次元の特徴ベクトルを生成し、学習結果記憶部１４１Ａｅに格納されているクラスタ情報に基づいて、診断対象データの異常測度ｕを算出する。
【００９１】
ステップＳ２０６において診断手段１４２Ａは、ステップＳ２０５で算出した異常測度ｕを、ステップＳ２０２で選択したクラスタに対応付けて記憶する。
ステップＳ２０７において診断手段１４２Ａは、診断に用いていないクラスタが他に存在するか否を判定する。診断に用いていないクラスタが他に存在する場合（Ｓ２０７：Ｙｅｓ）、診断手段１４２Ａの処理はステップＳ２０２に戻る。一方、ステップＳ２０７において診断に用いていないクラスタが存在しない場合（Ｓ２０７：Ｎｏ）、診断手段１４２Ａの処理はステップＳ２０８に進む。
【００９２】
ステップＳ２０８において診断手段１４２Ａは、診断部１４２Ａｄによって、機械設備２の異常予兆の有無を診断する。つまり、診断手段１４２Ａは、ステップＳ２０５で算出した異常測度ｕに基づいて、機械設備２の異常予兆の有無を診断する。
ステップＳ２０９において診断手段１４２Ａは、その診断結果を診断結果記憶手段１５に格納し、一連の診断処理を終了する（ＥＮＤ）。
【００９３】
＜効果＞
本実施形態によれば、繰り返される運転プロセスについて、始点・極大点・極小点・終点を含む特徴点を抽出し、各特徴点において個別でクラスタを生成することで、センサの検出値の正常な波形を学習できる。また、診断対象データにおいて、クラスタ中心を与える経過時間での検出値に基づき、その波形が異常あるか否か（つまり、機械設備２に異常予兆が発生しているか否か）を高精度で診断できる。
また、診断対象データの異常測度が所定閾値を超えている場合、その診断に用いられたクラスタを特定することで、異常予兆が発生したタイミングを特定できるとともに、正常時を基準とする位相ずれの時間も特定できる。
【００９４】
≪第２実施形態の変形例≫
例えば、第２実施形態で説明した構成に、センサデータの時系列的な波形に含まれる高調波を減衰させるフィルタ（図示せず）を追加し、フィルタによって高調波を減衰させた後の波形に基づいて、学習処理を行うようにしてもよい。また、センサデータの時系列的な波形に含まれる極値点（極大点・極小点）のうち、当該極値点におけるセンサの検出値と、当該極値点を与える時刻よりも所定時間前（又は、所定時間後）におけるセンサの検出値と、の差分の絶対値が所定閾値以上であるものを特徴点として抽出するようにしてもよい。これによって、特徴点抽出部１４１ｂにおいて、徒に多くの特徴点が抽出されることを抑制できる。
【００９５】
図１５（ａ）は、機械設備２の正常時・異常予兆発生時におけるセンサの検出値の時系列的な変化を示す実験データである。なお、図１５（ａ）の横軸は時刻であり、縦軸は、機械設備２（ガスエンジン：図示せず）に設置されている冷却水温度センサ（図示せず）の検出値である。また、図１５（ａ）の破線は、機械設備２の正常時におけるセンサデータであり、実線は、機械設備２の異常予兆発生時におけるセンサデータである。
【００９６】
図１５（ａ）の破線の丸印Ｘ１〜Ｘ７は、センサの検出値の波形に含まれる特徴点を示している。なお、実際には、波形に含まれる高調波をフィルタ（図示せず）によって減衰させ、減衰後の波形に含まれる多数の極値点のうち、その極値点を与える時刻よりも所定時間前のセンサデータと、当該極値点のセンサデータと、の差分の絶対値が所定閾値以上であるものを特徴点として抽出している（後記する図１５（ｂ）についても同様）。
【００９７】
図１５（ａ）に示す例では、丸印Ｘ３，Ｘ４，Ｘ６の特徴点において、実線で示すセンサの検出値が、破線で示す正常時よりも大きくなっている。そして、第２実施形態で説明した方法に基づいて異常測度ｕを算出した結果、実線で示すセンサデータについて（つまり、機械設備２であるガスエンジンについて）、「異常予兆あり」の診断結果が出力された。
【００９８】
図１５（ｂ）は、機械設備２の正常時・異常予兆発生時におけるセンサの検出値の時系列的な変化を示す別の実験データである。図１５（ｂ）の破線は、機械設備２の正常時におけるセンサデータであり、実線は、機械設備２の異常予兆発生時におけるセンサデータである。
図１５（ｂ）の破線の丸印Ｘ１１〜Ｘ１７は、センサの検出値の波形に含まれる特徴点を示している。図１５（ｂ）に示す例では、実線で示すセンサデータにおいて、丸印Ｘ１３の特徴点を与える時刻が、破線で示す正常時よりも時間ΔｔＡだけ早くなっている（つまり、運転プロセスが開始された時刻ｔ１１からの経過時間が短い）。また、実線で示すセンサデータにおいて、丸印Ｘ１７の特徴点を与える時刻が、破線で示す正常時よりも時間ΔｔＢだけ遅くなっている（つまり、時刻ｔ１１からの経過時間が長い）。このようなセンサデータについても、第２実施形態で説明した方法に基づき、「異常予兆あり」の診断結果が出力された。
【００９９】
また、第２実施形態では、一つのセンサ（図示せず）から得られるセンサデータにおいて、センサの検出値と、運転プロセスが開始されてからの経過時間と、に基づいて、２次元の特徴ベクトルを生成する場合について説明したが、これに限らない。例えば、機械設備２に設置されている複数のセンサ（図示せず）から取得されるセンサデータに基づいて、機械設備２の異常予兆の有無を診断してもよい。この場合には、例えば、事前の実験に基づいて、特徴点を抽出しやすい一つのセンサをユーザが選定しておく。そして、前記したセンサから取得されるセンサデータに基づいて、学習手段１４１Ａが特徴点を抽出し、各特徴点における経過時間Δｔ（運転プロセス開始時からの経過時間）を特定する。
そして、学習手段１４１Ａは、前記した経過時間Δｔにおける各センサの検出値に基づいて多次元の特徴ベクトルを生成し、各特徴ベクトルをクラスタリングする。つまり、学習手段１４１Ａは、特徴点を与える経過時間Δｔに対応して、各センサの検出値の正常な波形を表すクラスタを学習する。そして、学習手段１４１Ａは、学習結果であるクラスタの情報を、経過時間Δｔに対応付けて学習結果記憶部１４１Ａｅに格納する。
【０１００】
前記したクラスタの学習後、診断手段１４２Ａは、複数の経過時間Δｔのうち一つを学習結果記憶部１４１Ａｅから読み出す。そして、診断手段１４２Ａは、診断対象データについて、経過時間Δｔにおける検出値を各センサについて特定し、それらの検出値を正規化して特徴ベクトルに変換する。そして、診断手段１４２Ａは、変換後の特徴ベクトルと、前記した経過時間Δｔに対応するクラスタと、に基づいて異常測度ｕを算出し、機械設備２の異常予兆の有無を診断する。なお、異常測度ｕの算出方法や、異常予兆の有無の診断方法については第２実施形態で説明したとおりである。このように複数のセンサを用いることで、機械設備２のどの箇所にどのような異常が発生したかをユーザが把握できる。
【０１０１】
なお、前記したように、特徴点を抽出しやすいセンサをユーザが事前に選定することなく、学習期間における１回分の運転プロセスにおいて特徴点の個数が最も多いセンサを学習手段１４１Ａが特定し、当該センサから取得されるセンサデータの特徴点に基づいてクラスタを学習するようにしてもよい。これによって、診断対象データの検出値が正常範囲から外れているか否かを、診断対象データの波形上の多数の点において判定できる。したがって、機械設備２の異常予兆の有無を高精度で診断できる。
【０１０２】
≪第３実施形態≫
第３実施形態に係る異常予兆診断システム１Ｂ（図１６参照）は、時間の経過に伴って単調増加する一次関数と、センサの検出値と、に基づいて特徴ベクトルを生成する点が、第１実施形態とは異なっている。また、第３実施形態に係る異常予兆診断システム１Ｂは、第１実施形態で説明した構成（図１参照）に関数記憶手段１８（図１６参照）を追加した構成になっている。なお、その他の全体的な構成については第１実施形態（図１参照）と同様であり、また、機械設備２において所定の運転プロセスが繰り返される点についても第１実施形態と同様である。したがって、第１実施形態とは異なる部分について説明し、重複する部分については説明を省略する。
【０１０３】
＜異常予兆診断システムの構成＞
図１６は、第３実施形態に係る異常予兆診断システム１Ｂが備えるデータマイニング手段１４Ｂの構成図である。
図１６に示す関数記憶手段１８には、機械設備２の運転プロセスにおいて、時間の経過とともに単調増加する一次関数（図１７に示す直線Ｌを参照）が格納されている。この一次関数は、後記するクラスタの学習、及び異常測度の算出に用いられる。
【０１０４】
図１６に示すように、学習手段１４１Ｂは、学習対象データ取得部１４１ａと、値特定部１４１ｇと、値記憶部１４１ｈと、クラスタ学習部１４１Ｂｄと、学習結果記憶部１４１Ｂｅと、を備えている。
値特定部１４１ｇは、学習対象データ取得部１４１ａによって取得される学習対象データに基づいて、運転プロセスが開始されてから所定時間Δｔ１，Δｔ２，Δｔ３（図１７参照）が経過したときのセンサの検出値と、一次関数の値と、を特定する。前記した所定時間Δｔ１，Δｔ２，Δｔ３は、機械設備２の異常予兆の発生が、これらの所定時間Δｔ１，Δｔ２，Δｔ３におけるセンサの検出値に敏感に反映されるように、事前に設定されている。
【０１０５】
図１７は、センサの検出値、及び一次関数で表される直線Ｌに関する説明図である。
図１７に示すように、機械設備２において１回目、２回目、…の運転プロセスが繰り返され、それに伴ってセンサの検出値が変動する。図１７に示す直線Ｌは、前記したように、運転プロセスの開始時（時刻ｔ０１、時刻ｔ０２、…）からの時間の経過に伴って単調増加する一次関数（ｙ＝ａΔｔ＋ｂ）である。
値特定部１４１ｇ（図１６参照）は、運転プロセスが開始されてから所定時間Δｔ１が経過したときのセンサの検出値ｐ１と、一次関数で表される直線Ｌの値ｑ１と、を特定する。他の所定時間Δｔ２，Δｔ３についても同様にして、値特定部１４１ｇは、センサの検出値及び一次関数の値をそれぞれ特定する。
【０１０６】
図１６に示す値記憶部１４１ｈには、値特定部１４１ｇによって特定した検出値及び一次関数の値が、前記した所定時間Δｔ１，Δｔ２，Δｔ３に対応付けて格納されている。なお、学習期間においてｎ回の運転プロセスが繰り返されるとすると、値記憶部１４１ｈには、（３×ｎ）組の検出値及び一次関数の値が格納される。
【０１０７】
クラスタ学習部１４１Ｂｄは、値記憶部１４１ｈに格納されている検出値及び一次関数の値に基づいて、センサの検出値の正常な波形を表すクラスタ（正常モデル）を学習する。すなわち、クラスタ学習部１４１Ｂｄは、値記憶部１４１ｈに格納されている検出値及び一次関数の値を正規化し、正規化後の値を各成分とする２次元の特徴ベクトルを生成する。そして、クラスタ学習部１４１Ｂｄは、各特徴ベクトルをクラスタリングすることによって、クラスタを学習する。なお、クラスタの学習方法については第１実施形態と同様であるから、説明を省略する。
学習結果記憶部１４１Ｂｅには、クラスタ学習部１４１Ｂｄの学習結果であるクラスタ情報（クラスタ中心ｃ、クラスタ半径ｒ）が格納されている。
【０１０８】
また、図１６に示すように、診断手段１４２Ｂは、診断対象データ取得部１４２ａと、値特定部１４２ｇと、異常測度算出部１４２Ｂｃと、診断部１４２Ｂｄと、を備えている。
値特定部１４２ｇは、診断対象データ取得部１４２ａによって取得される診断対象データにおいて、運転プロセスが開始されてから所定時間Δｔ１，Δｔ２，Δｔ３が経過したときのセンサの検出値、及び一次関数の値を特定する。前記した所定時間Δｔ１，Δｔ２，Δｔ３は、学習手段１４１Ｂで用いられる所定時間Δｔ１，Δｔ２，Δｔ３と略同一である。また、診断手段１４２Ｂで用いる一次関数（ｙ＝ａΔｔ＋ｂ）についても、学習手段１４１Ｂで用いる一次関数（ｙ＝ａΔｔ＋ｂ）と略同一である。
【０１０９】
異常測度算出部１４２Ｂｃは、値特定部１４２ｇによって特定されるセンサの検出値、及び一次関数の値と、学習結果記憶部１４１Ｂｅに格納されているクラスタ情報と、に基づいて、診断対象データの異常測度ｕを算出する。まず、異常測度算出部１４２Ｂｃは、値特定部１４２ｇによって特定される検出値、及び一次関数の値を正規化し、正規化後の値を各成分とする２次元の特徴ベクトルを生成する。そして、異常測度算出部１４２Ｂｃは、学習結果記憶部１４１Ｂｅを参照し、前記した特徴ベクトルとの距離が最も小さいクラスタ中心を有するクラスタを特定し、前記した（数式１）に基づいて異常測度ｕを算出する。
【０１１０】
診断部１４２Ｂｄは、異常測度算出部１４２Ｂｃによって算出される異常測度ｕに基づいて、機械設備２の異常予兆の有無を診断する。例えば、異常測度ｕが所定閾値を超えた診断対象データが存在する場合、診断部１４２Ｂｄは、機械設備２について「異常予兆あり」と診断する。また、異常測度ｕが所定閾値を超えるものが存在しない場合、診断部１４２Ｂｄは、機械設備２について「異常予兆なし」と診断する。
なお、所定期間において異常測度が所定閾値を超えた診断対象データが所定個数以上存在する場合、診断部１４２Ｂｄによって「異常予兆あり」と診断するようにしてもよい。
【０１１１】
＜異常予兆診断システムの動作＞
図１８は、学習手段１４１Ｂが実行する学習処理のフローチャートである。
ステップＳ３０１において学習手段１４１Ｂは、値ｎを１に設定する。この値ｎは、前記した所定時間が複数存在する場合において（図１７に示す３つの所定時間Δｔ１，Δｔ２，Δｔ３を参照）、検出値及び一次関数の値の特定に用いるものを選択する際にインクリメント（Ｓ３０７）される自然数である。
ステップＳ３０２において学習手段１４１Ｂは、学習対象データ取得部１４１ａによって、センサデータ記憶手段１３から学習対象データを取得する。
【０１１２】
ステップＳ３０３において学習手段１４１Ｂは、値特定部１４１ｇによって、運転プロセスの開始時から所定時間Δｔ１が経過したときのセンサの検出値ｐ１を特定する（図１７参照）。前記したように、学習対象データには、センサの検出値の他、運転プロセスの開始・終了を示す信号も含まれている。したがって、この信号に基づき、運転プロセスが開始されてから所定時間Δｔ１が経過したときのセンサの検出値ｐ１を特定できる。
【０１１３】
ステップＳ３０４において学習手段１４１Ｂは、値特定部１４１ｇによって、所定時間Δｔ１を一次関数に代入して、その値を特定する。つまり、学習手段１４１Ｂは、所定時間Δｔ１を一次関数：ｙ＝ａΔｔ＋ｂに代入することによって、一次関数の値ｙ（図１７では、ｙ＝ｑ１）を特定する。
ステップＳ３０５において学習手段１４１Ｂは、ステップＳ３０３で特定した検出値ｐ１、及びステップＳ３０４で特定した一次関数の値ｙを所定時間Δｔ１に対応付けて、値記憶部１４１ｈに格納する。
【０１１４】
ステップＳ３０６において学習手段１４１Ｂは、値ｎが所定値Ｎに達している否かを判定する。この所定値Ｎは、センサの検出値及び一次関数の特定に使用する所定時間Δｔｎの個数（本実施形態では、所定時間Δｔ１，Δｔ２，Δｔ３の３個）である。
値ｎが所定値Ｎに達していない場合（Ｓ３０６：Ｎｏ）、ステップＳ３０７において学習手段１４１Ｂは、ｎの値をインクリメントし、ステップＳ３０２の処理に戻る。そして、学習手段１４１Ｂは、他の所定時間Δｔ２，Δｔ３についても、センサの検出値及び一次関数の値を特定する。
【０１１５】
一方、ステップＳ３０６において値ｎが所定値Ｎに達している場合（Ｓ３０６：Ｙｅｓ）、学習手段１４１Ｂの処理はステップＳ３０８に進む。
ステップＳ３０８において学習手段１４１Ｂは、所定の学習期間のうち、検出値及び一次関数の値をまだ取得していない他の運転プロセスが存在するか否かを判定する。他の運転プロセスが存在する場合（Ｓ３０８：Ｙｅｓ）、学習手段１４１Ｂの処理はステップＳ３０１に戻る。つまり、学習手段１４１Ｂは、他の運転プロセスについて、その運転プロセスが開始されてから所定時間Δｔ１，Δｔ２，Δｔ３が経過したときの検出値及び一次関数の値を特定する。ちなみに、所定時間Δｔ１，Δｔ２，Δｔ３の基準となる運転プロセスの開始時刻は、センサデータに含まれる運転プロセスの開始信号に基づいて特定される。
【０１１６】
一方、ステップＳ３０８において検出値及び一次関数の値をまだ取得していない他の運転プロセスが存在しない場合（Ｓ３０８：Ｎｏ）、学習手段１４１Ｂの処理はステップＳ３０９に進む。
ステップＳ３０９において学習手段１４１Ｂは、値記憶部１４１ｈに格納されている情報に基づいて、クラスタを学習する。まず、学習手段１４１Ｂは、ステップＳ３０３で特定した検出値、及びステップＳ３０４で特定した関数の値に正規化処理を施して特徴ベクトルを生成する。そして、学習手段１４１Ｂは、各特徴ベクトルをクラスタリングすることによって、センサの検出値の正常な波形を表すクラスタを学習する。
ステップＳ３１０において学習手段１４１Ｂは、ステップＳ３０９で学習した結果を学習結果記憶部１４１Ｂｅに格納して、一連の学習処理を終了する（ＥＮＤ）。
【０１１７】
図１９は、診断手段１４２Ｂが実行する診断処理のフローチャートである。
ステップＳ４０１において診断手段１４２Ｂは、値ｎを１に設定する。この値ｎは、図１８のステップＳ３０１で説明した値ｎと同様である。
ステップＳ４０２において診断手段１４２Ｂは、診断対象データ取得部１４２ａによって、センサデータ記憶手段１３から診断対象データを取得する。つまり、診断手段１４２Ｂは、学習期間後の診断期間に取得されたセンサデータのうち、１回目の運転プロセスのセンサデータを診断対象として取得する。
【０１１８】
ステップＳ４０３において診断手段１４２Ｂは、値特定部１４２ｇによって、運転プロセスの開始時から所定時間Δｔ１が経過したときのセンサの検出値を特定する。
ステップＳ４０４において診断手段１４２Ｂは、値特定部１４２ｇによって、所定時間Δｔ１を一次関数に代入して、その値を特定する。
ステップＳ４０５において診断手段１４２Ｂは、異常測度算出部１４２Ｂｃによって、診断対象データの異常測度ｕを算出する。すなわち、ステップＳ４０５において診断手段１４２Ｂは、ステップＳ４０３で特定した検出値、及びステップＳ４０４で特定した一次関数の値に正規化処理を施し、各値を成分とする２次元の特徴ベクトルを生成する。そして、診断手段１４２Ｂは、この特徴ベクトルと、学習結果記憶部１４１Ｂｅに格納されているクラスタ情報と、に基づいて、診断対象データの異常測度ｕを算出する。
【０１１９】
ステップＳ４０６において診断手段１４２Ｂは、値ｎが所定値Ｎに達している否かを判定する。この所定値Ｎは、検出値及び一次関数の特定に用いる所定時間Δｔｎの個数であり、学習処理で用いた所定値Ｎ（図１８参照）と同一である。値ｎが所定値Ｎに達していない場合（Ｓ４０６：Ｎｏ）、ステップＳ４０７において診断手段１４２Ｂは、ｎの値をインクリメントし、ステップＳ４０２の処理に戻る。
【０１２０】
一方、ステップＳ４０６において値ｎが所定値Ｎに達している場合（Ｓ４０６：Ｙｅｓ）、診断手段１４２Ｂの処理は、ステップＳ４０８に進む。
ステップＳ４０８において診断手段１４２Ｂは、診断部１４２Ｂｄによって、機械設備２の異常予兆の有無を診断する。つまり、診断手段１４２Ｂは、ステップＳ４０５で算出した異常測度ｕに基づいて、機械設備２の異常予兆の有無を診断する。
ステップＳ４０９において診断手段１４２Ｂは、診断結果を診断結果記憶手段１５に格納し、一連の診断処理を終了する（ＥＮＤ）。診断手段１４２Ｂは、このような診断処理を、診断期間に含まれる運転プロセスごとに繰り返す。
【０１２１】
図２０（ａ）は、学習対象データの波形、及び一次関数の直線Ｌを示す説明図である。
図２０（ａ）に示す検出値の波形は、機械設備２が正常に稼動している学習期間において、１回分の運転プロセスで取得された学習対象データ（検出値）である。前記したように、運転プロセスの開始時から所定時間Δｔ１が経過したときのセンサの検出値ｐ１と、一次関数（直線Ｌ）の値ｑ１と、を正規化した値を成分とする２次元の特徴ベクトルが生成される。また、他の所定時間Δｔ２，Δｔ３についても特徴ベクトルが生成され、学習期間に含まれる他の運転プロセスについても特徴ベクトルが生成される。それらの特徴ベクトルに基づいて、クラスタＪ１，Ｊ２，Ｊ３（図２１参照）が学習される。
【０１２２】
図２１は、学習結果であるクラスタＪ１，Ｊ２，Ｊ３、及び診断対象データの特徴ベクトルｖ１Ａ，ｖ２Ａ，ｖ３Ａの説明図である。
図２１の横軸αは、一次関数の値の正規化後の数値であり、縦軸βは、センサの検出値の正規化後の数値である。図２１に示すクラスタＪ１は、運転プロセスの開始時から所定時間Δｔ１（図２０（ａ）参照）が経過したときのセンサの検出値、及び一次関数の値に基づくクラスタであり、クラスタ中心ｃ１及びクラスタ半径ｒ１によって表される。同様に、クラスタＪ２は所定時間Δｔ２（図２０（ａ）参照）に対応するクラスタであり、クラスタＪ３は所定時間Δｔ３（図２０（ａ）参照）に対応するクラスタである。ちなみに、一つの所定時間Δｔｎにおいて、複数のクラスタが学習されることもある。
【０１２３】
図２０（ｂ）は、機械設備２の異常予兆発生時における診断対象データの波形、及び一次関数の直線Ｌを示す説明図である。図２０（ｂ）に示す例では、１回の運転プロセスにおける検出値の最大値・最小値が、機械設備２が正常に稼動しているときの学習対象データ（図２０（ａ）参照）と同様であるが、その波形が正常時とは異なっている。従来の異常予兆診断システムでは、センサの検出値のみに基づいて異常予兆の有無が診断されるため、図２０（ｂ）に示す診断対象データに基づき、「異常予兆なし」と誤診断する可能性があった。
【０１２４】
これに対して本実施形態では、運転プロセスの開始時から所定時間Δｔ１，Δｔ２，Δｔ３が経過したときのセンサの検出値、及び一次関数の値で特定される特徴ベクトルが、クラスタ内に存在するか否かに基づいて、機械設備２の異常予兆の有無が診断される。例えば、図２０（ｂ）に示す所定時間Δｔ１の検出値ｐ１Ａと、一次関数の値ｑ１（正規化後は、値α１：図２１参照）と、に基づき、図２１の●印で示す特徴ベクトルｖ１Ａが生成される。特徴ベクトルｖ１Ａは、この特徴ベクトルｖ１Ａに最も近いクラスタＪ１に含まれないため、診断部１４２Ｂｄによって「異常予兆あり」と診断される。なお、所定時間Δｔ２（図２０（ｂ）参照）の検出値等に対応する特徴ベクトルｖ２Ａや、所定時間Δｔ３（図２０（ｂ）参照）の検出値等に対応する特徴ベクトルｖ３Ａについても同様である。
【０１２５】
図２２（ａ）は、学習対象データの波形の別の例、及び一次関数の直線Ｌを示す説明図である。
図２２（ａ）に示す例では、機械設備２が正常に稼動している学習期間において、センサの検出値が正弦波状に変動している。また、検出値の波形の極大点を与える２つの所定時間Δｔ４，Δｔ５が設定されている。図２２（ａ）に示すように、所定時間Δｔ４，Δｔ５における検出値ｐは同一であるが、一次関数の値ｑ４，ｑ５が大きく異なっている。その結果、所定時間Δｔ４，Δｔ５に対応して、異なるクラスタＪ４，Ｊ５（図２３参照）が学習される。
【０１２６】
ちなみに、センサの検出値のみに基づいてクラスタを学習する従来技術では、通常、同一の検出値ｐは同一のクラスタに含まれる。つまり、従来技術では、所定時間Δｔ４における検出値ｐと、所定時間Δｔ５における検出値ｐと、を区別するような学習処理は行われていなかった。これに対して本実施形態では、検出値ｐが同一であっても、所定時間Δｔ４，Δｔ５が異なっていれば一次関数の値が異なるため、それらを区別して学習できる。この学習結果は、後記するように、異常予兆診断の高精度化に寄与するものである。
【０１２７】
図２２（ｂ）は、異常予兆発生時における診断対象データの波形、及び一次関数の直線Ｌを示す説明図である。
図２２（ｂ）に示す例では、波形の振幅や最大値・最小値は正常時と同様であるが、波形の周期が正常時よりも短くなっている。その結果、特に、所定時間Δｔ５における検出値ｐ５Ａが、正常時の検出値ｐよりも大幅に小さくなっている。
【０１２８】
図２３は、学習結果であるクラスタＪ４，Ｊ５、及び診断対象データの特徴ベクトルｖ４Ａ，ｖ５Ａの説明図である。なお、横軸α、縦軸βについては、図２１と同様である。図２３に示すクラスタＪ４は、運転プロセスの開始時から所定時間Δｔ４（図２２（ａ）参照）が経過したときのセンサの検出値、及び一次関数の値を用いて学習されたクラスタである。クラスタＪ５は、運転プロセスの開始時から所定時間Δｔ５（図２２（ａ）参照）が経過したときセンサの検出値、及び一次関数の値を用いて学習されたクラスタである。
前記したように、所定時間Δｔ５における検出値ｐ５Ａ（図２２（ｂ）参照、図２３に示す正規化後の値β５Ａ）は、正常時の検出値ｐよりも大幅に小さくなっている。その結果、所定時間Δｔ５の検出値及び一次関数の値で特定される特徴ベクトルｖ５Ａが、最近傍のクラスタＪ５の外側に位置することになり、診断部１４２Ｂｄによって「異常予兆あり」と診断される。
【０１２９】
なお、所定時間Δｔ４，Δｔ５における一次関数の値ｑ４，ｑ５（図２２（ａ）参照）の大きさが異なっているため、図２３に示すクラスタＪ４，Ｊ５が、α軸方向において比較的離れている。また、診断対象データに基づく特徴ベクトルｖ５Ａ（図２３参照）は、α軸方向の値α５が、クラスタ中心ｃ５のα成分に略等しくなっている。学習対象データであっても、診断対象データであっても、所定時間Δｔ５における一次関数の値ｑ５は同一だからである（図２２（ａ）、（ｂ）参照）。その結果、特徴ベクトルｖ５Ａに最も近いクラスタ中心を有するものが、クラスタＪ４ではなく、クラスタＪ５になる。したがって、所定時間Δｔ５における検出値ｐ５Ａの異常測度ｕを、この所定時間Δｔ５に対応するクラスタＪ５に基づいて算出できる。これによって、診断対象データの検出値の波形が異常であるか否か（つまり、機械設備２の異常予兆の有無）を高精度で診断できる。
【０１３０】
＜効果＞
本実施形態によれば、運転プロセスの開始時から所定時間Δｔ１，Δｔ２，Δｔ３が経過したときの検出値と、単調増加する一次関数の値と、に基づいて２次元の特徴ベクトルを生成し、各特徴ベクトルをクラスタリングすることによって、クラスタが学習される。これによって、センサの検出値の正常な波形をクラスタとして学習できる。
そして、診断対象データについても同様にして特徴ベクトルを生成し、学習結果であるクラスタに基づいて、検出値の波形が異常であるか否か（つまり、機械設備２に異常予兆が発生しているか否か）を高精度で診断できる。
【０１３１】
≪第３実施形態の変形例≫
第３実施形態では、検出値及び一次関数の値を特定するために、２つ又は３つの所定時間Δｔｎ（図２０、図２２参照）が設定される場合について説明したが、これに限らない。すなわち、所定時間Δｔｎの個数は一つであってもよいし、また、４つ以上であってもよい。
【０１３２】
また、第３実施形態では、時間の経過とともに単調増加する一次関数を用いる場合について説明したが、これに限らない。例えば、時間の経過とともに単調減少する一次関数を用いてもよいし、また、時間の経過とともに単調増加又は単調減少する曲線の関数を用いてもよい。
【０１３３】
また、第３実施形態では、一つのセンサから取得されるセンサデータに基づいて、機械設備２の異常予兆の有無を診断する場合について説明したが、これに限らない。すなわち、複数のセンサから取得されるセンサデータに基づいて、機械設備２の異常予兆の有無を診断するようにしてもよい。この場合には、第３実施形態と同様に、所定の一次関数を予め設定しておき、運転プロセスの開始時から所定時間Δｔ１，Δｔ２，Δｔ３が経過したときの各センサの検出値と、一次関数の値と、に基づいて、多次元の特徴ベクトルを生成すればよい。なお、特徴ベクトルの次元数は、（センサの個数）＋１である。このように複数のセンサを用いることで、機械設備２のどの箇所にどのような異常が発生したのかをユーザが把握できる。
【０１３４】
≪その他の変形例≫
以上、本発明に係る異常予兆診断システム１，１Ａ，１Ｂについて各実施形態により説明したが、本発明はこれらの記載に限定されるものではなく、種々の変更を行うことができる。
例えば、各実施形態では、クラスタ学習部１４１ｄが非階層的クラスタリングの一つであるｋ平均法を用いてクラスタリングを行う場合について説明したが、これに限らない。すなわち、クラスタ学習部１４１ｄによる学習処理として、非階層的クラスタリングであるファジィクラスタリングや混合密度分布法等を用いてもよい。
【０１３５】
また、各実施形態では、機械設備２の運転プロセスが間断なく繰り返される場合について説明したが（図２参照）、これに限らない。すなわち、機械設備２の運転プロセスの開始・終了が把握できればよく、所定の休止時間を挟んで運転プロセスを行うようにしてもよい。
【０１３６】
また、第１、第２実施形態では、「特徴点」として始点・極大点・極小点・終点を抽出する場合について説明したが、これらのうち少なくとも一つ（例えば、極大点・極小点）を特徴点としてもよい。
また、第１実施形態の構成（図３参照）から寄与度算出部１４２ｅを省略してもよい。このような構成でも、異常測度ｕの大きさに基づいて、機械設備２の異常予兆の有無を適切に診断できる。
【０１３７】
また、実施形態では、学習したクラスタをその後も保持（記憶）する構成について説明したが、これに限らない。すなわち、診断部１４２ｄによって「異常予兆なし」と診断されたセンサデータを学習対象データとして追加し、追加後の学習対象データに基づいてクラスタ中心ｃ及びクラスタ半径ｒを再計算する（つまり、クラスタを再学習する）ようにしてもよい。このようにクラスタを再学習することで、機械設備２の正常状態に関する情報を徐々に増加させ、クラスタ中心ｃ及びクラスタ半径ｒをより適切な値に更新できる。
また、前記したように、学習対象データを追加するたびに、既存の学習対象データのうち最も古いものを学習対象から除外するようにしてもよい。これによって、季節変化等に伴って機械設備２が経時的に変化した場合でも、この変化に追従してクラスタを更新することができ、ひいては異常予兆の診断精度を高めることができる。
【０１３８】
なお、本発明は、各実施形態で説明した全ての構成を備えるものに限定されない。また、一の実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、一の実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することも可能である。
【０１３９】
また、図１、図３、図１１及び図１６に示す各構成は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、前記の各構成は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テープ、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、又は、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に格納することができる。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１４０】
１，１Ａ，１Ｂ  異常予兆診断システム
１１  通信手段
１２  センサデータ取得手段
１３  センサデータ記憶手段
１４，１４Ａ，１４Ｂ  データマイニング手段
１５  診断結果記憶手段（記憶手段）
１６  表示制御手段
１７  表示手段
１８  関数記憶手段
１４１，１４１Ａ，１４１Ｂ  学習手段
１４１ａ  学習対象データ取得部
１４１ｂ  特徴点抽出部
１４１ｃ  特徴点記憶部
１４１ｄ，１４１Ａｄ，１４１Ｂｄ  クラスタ学習部
１４１ｅ，１４１Ａｅ，１４１Ｂｅ  学習結果記憶部
１４１ｇ，１４２ｇ  値特定部
１４１ｈ  値記憶部
１４２，１４２Ａ，１４２Ｂ  診断手段
１４２ａ  診断対象データ取得部
１４２ｂ  特徴点抽出部
１４２ｃ，１４２Ａｃ，１４２Ｂｃ  異常測度算出部
１４２ｄ，１４２Ａｄ，１４２Ｂｄ  診断部
１４２ｅ  寄与度算出部
１４２ｆ  検出値特定部
２  機械設備
【要約】
【課題】機械設備の異常予兆の有無を高精度で診断できる異常予兆診断システム等を提供する。
【解決手段】異常予兆診断システム１は、機械設備２に設置されたセンサの検出値を含むセンサデータを取得するセンサデータ取得手段１２と、機械設備２が正常であることが既知である期間のセンサデータを学習対象とし、当該センサデータの時系列的な波形を正常モデルとして学習する学習手段と、前記正常モデルと、診断対象のセンサデータの時系列的な波形と、の比較に基づいて、機械設備２の異常予兆の有無を診断する診断手段と、を備える。
【選択図】図１【図１】
0005946573.tif 000002
【図２】
0005946573.tif 000003
【図３】
0005946573.tif 000004
【図４】
0005946573.tif 000005
【図５】
0005946573.tif 000006
【図６】
0005946573.tif 000007
【図７】
0005946573.tif 000008
【図８】
0005946573.tif 000009
【図９】
0005946573.tif 000010
【図１０】
0005946573.tif 000011
【図１１】
0005946573.tif 000012
【図１２】
0005946573.tif 000013
【図１３】
0005946573.tif 000014
【図１４】
0005946573.tif 000015
【図１５】
0005946573.tif 000016
【図１６】
0005946573.tif 000017
【図１７】
0005946573.tif 000018
【図１８】
0005946573.tif 000019
【図１９】
0005946573.tif 000020
【図２０】
0005946573.tif 000021
【図２１】
0005946573.tif 000022
【図２２】
0005946573.tif 000023
【図２３】
0005946573.tif 000024