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