(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023114670
(43)【公開日】2023-08-18
(54)【発明の名称】異常検知装置、異常検知システム、異常検知方法およびプログラム
(51)【国際特許分類】
G05B 23/02 20060101AFI20230810BHJP
【FI】
G05B23/02 302T
G05B23/02 T
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022017111
(22)【出願日】2022-02-07
(71)【出願人】
【識別番号】000006208
【氏名又は名称】三菱重工業株式会社
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(74)【代理人】
【識別番号】100161702
【弁理士】
【氏名又は名称】橋本 宏之
(74)【代理人】
【識別番号】100189348
【弁理士】
【氏名又は名称】古都 智
(74)【代理人】
【識別番号】100196689
【弁理士】
【氏名又は名称】鎌田 康一郎
(72)【発明者】
【氏名】藤島 健太
(72)【発明者】
【氏名】岩下 信治
【テーマコード(参考)】
3C223
【Fターム(参考)】
3C223AA01
3C223BA03
3C223CC02
3C223DD03
3C223EB01
3C223EB07
3C223FF02
3C223FF12
3C223FF22
3C223FF26
3C223FF35
3C223FF42
3C223FF52
3C223GG01
3C223HH02
3C223HH03
3C223HH08
(57)【要約】
【課題】異常検知において異常判定に用いる信号について重み付けを設定することができる異常検知システムを提供する。
【解決手段】異常検知システムは、プラントの状態を示す複数の信号を取得する信号取得部と、複数の信号のうち、その値が許容範囲外となる信号の数に応じた異常レベルを設定する設定部と、複数の信号をそれぞれの信号ごとに定められた許容範囲と比較して、許容範囲外となる信号の数を算出し、算出した信号の数と異常レベルの設定とに基づいて、算出した信号の数に応じた異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定する異常判定部と、を有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
プラントの状態を示す複数の信号を取得する信号取得部と、
前記複数の信号のうち、その値が許容範囲外となる前記信号の数に応じた異常レベルを設定する設定部と、
前記複数の信号を、それぞれの前記信号ごとに定められた前記許容範囲と比較して、前記許容範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定する異常判定部と、
を有する異常検知装置。
【請求項2】
前記異常レベルを第1の異常レベルとすると、
前記設定部は、前記第1の異常レベルに対する重み付けである第1の重み付けと、前記複数の信号の少なくとも一部に基づいて前記プラントの異常を判定する判定モデルによって算出された前記プラントの異常の程度を示す第2の異常レベルに対する重み付けである第2の重み付けをさらに設定し、
前記異常判定部は、前記判定モデルに基づいて、前記第2の異常レベルをさらに算出し、前記第1の異常レベルに前記第1の重み付けを乗じた値と、前記第2の異常レベルに前記第2の重み付けを乗じた値との和に基づいて、前記プラントの異常を判定する、
請求項1に記載の異常検知装置。
【請求項3】
前記設定部は、前記第1の異常レベルに基づいて前記プラントの異常を判定するか、前記第1の異常レベルと前記第2の異常レベルとに基づいて前記プラントの異常を判定するか、又は、前記第2の異常レベルに基づいて前記プラントの異常を判定するかの何れによって異常を判定するかを設定し、
前記異常判定部は、
前記第1の異常レベルに基づいて前記プラントの異常を判定することが設定された場合、前記第1の異常レベルに基づいて前記プラントの異常を判定し、
前記第1の異常レベルと前記第2の異常レベルとに基づいて前記プラントの異常を判定することが設定された場合、前記第1の異常レベルおよび前記第2の異常レベルに基づいて前記プラントの異常を判定し、
前記第2の異常レベルに基づいて前記プラントの異常を判定することが設定された場合、前記第2の異常レベルに基づいて前記プラントの異常を判定する、
請求項2に記載の異常検知装置。
【請求項4】
前記複数の信号のうちの一部を説明変数とし、前記複数の信号のうちの一つを目的変数として、前記説明変数として設定された前記信号から前記目的変数として設定された前記信号の値を推定する推定モデルを構築する学習部、をさらに有し、
前記設定部は、前記説明変数とする前記信号と、前記目的変数とする前記信号の設定を行う、
請求項1から請求項3の何れか1項に記載の異常検知装置。
【請求項5】
前記異常判定部による前記プラントの異常の判定結果を出力する異常通知部、
をさらに有し、
前記異常判定部は、前記判定結果を記憶部に記録し、
前記異常通知部は、前記記憶部から前記判定結果を読み出して時系列に前記判定結果を表示する、
請求項1から請求項4の何れか1項に記載の異常検知装置。
【請求項6】
前記設定部は、前記第2の異常レベルの閾値を、前記判定モデルに当該判定モデルの構築に用いた複数の学習データを入力したときに前記判定モデルによって算出された前記第2の異常レベルの標準偏差に基づいて、算出された前記第2の異常レベルの最大値が、(算出された前記第2の異常レベルの平均値+α×算出された前記第2の異常レベルの標準偏差)に含まれるようなαを算出し、(算出した前記α×算出された前記第2の異常レベルの標準偏差)によって計算する、
請求項2に記載の異常検知装置。
【請求項7】
前記設定部は、前記許容範囲の大きさを、所定の推定モデルに当該推定モデルの構築に用いた複数の学習データを入力したときに前記推定モデルによって推定された前記信号の推定値と前記信号の実測値の偏差の標準偏差に基づいて、前記偏差の最大値が、(前記偏差の平均値+β×前記偏差の標準偏差)に含まれるようなβを算出し、(算出した前記β×前記偏差の標準偏差)によって計算する、
請求項1から請求項6の何れか1項に記載の異常検知装置。
【請求項8】
前記設定部は、複数の前記信号の各々について、所定の推定モデルによって推定された前記信号の推定値と前記信号の実測値の偏差を計算し、複数の前記信号のうち、前記偏差の標準偏差が所定の第1閾値以上の前記信号と、前記第1閾値未満の前記信号と、に分類し、前記第1閾値以上の前記信号の数が前記第1閾値未満の前記信号の数より多い場合、前記第1閾値以上の前記信号の数が前記第1閾値未満の前記信号の数より少ない場合と比較して、同じ前記信号の数に対してより小さな前記異常レベルを設定する、
請求項1から請求項7の何れか1項に記載の異常検知装置。
【請求項9】
前記設定部は、所定の推定モデルに当該推定モデルの構築に用いた複数の前記信号についての複数のデータ点を有する学習データを入力したときに前記推定モデルによって推定された前記信号ごとの推定値と前記学習データに含まれる前記信号の実測値の偏差に基づいて、前記偏差が所定の第2閾値を超える前記データ点の割合が所定値を超えるかどうかを前記信号ごとに判定し、前記所定値を超えた前記信号の数を算出して、算出した前記信号の数を、第1の前記許容範囲外となる前記信号の数である第1信号数として設定し、複数の前記信号の全体の信号数から前記第1信号数を減算した値を等分して端数を繰り上げた値を、第2の前記許容範囲外となる前記信号の数である第2信号数として設定し、前記許容範囲外となる前記信号の数が前記第1信号数以上で且つ前記第2信号数未満となったときの前記異常レベルには、前記プラントの異常を誤検知している可能性があることを考慮して定められた所定の値を設定する、
請求項1から請求項8の何れか1項に記載の異常検知装置。
【請求項10】
請求項1から請求項9の何れか1項に記載の異常検知装置と、
通知装置と、を含み、
前記通知装置は、
前記異常検知装置が検知した異常に係る情報を取得する取得部と、
通知対象とする異常の設定を受け付ける設定部と、
前記取得部が取得する前記異常に係る情報が、前記通知対象とする異常を含む場合に、前記通知対象とする異常を通知する通知部と、
を備える異常検知システム。
【請求項11】
プラントの状態を示す複数の信号を取得するステップと、
前記複数の信号のうち閾値の範囲外となる前記信号の数に応じた異常レベルを設定するステップと、
前記複数の信号を、それぞれの前記信号ごとに定められた前記閾値と比較して、前記閾値の範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定するステップと、
を有する異常検知方法。
【請求項12】
前記プラントの異常を判定するステップにて、前記プラントが異常と判定された場合に前記異常に係る情報を取得するステップと、
通知対象とする異常の設定を受け付けるステップと、
前記異常に係る情報を取得するステップにて取得される前記異常に係る情報が、前記通知対象とする異常を含む場合に、前記通知対象とする異常を通知するステップと、
をさらに有する請求項11に記載の異常検知方法。
【請求項13】
コンピュータに、
プラントの状態を示す複数の信号を取得するステップと、
前記複数の信号のうち閾値の範囲外となる前記信号の数に応じた異常レベルを設定するステップと、
前記複数の信号を、それぞれの前記信号ごとに定められた前記閾値と比較して、前記閾値の範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定するステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、異常検知装置、異常検知システム、異常検知方法およびプログラムに関する。
【背景技術】
【0002】
特許文献1には、複数の異常判定手法を用いて、プラントの異常を監視する異常監視システムが開示されている。このシステムでは、例えば、MT法、K近傍法、ニューラルネットワーク法、一般化線形法、SVM法、ランダムフォレスト法などの手法ごとに異常を検知する検知モデルを構築し、各検知モデルによって異常検知を行う。そして、各検知モデルの検知結果に対して重みを付して、総合的な正常、異常の判定を行う。例えば、検知モデル1~4について、検知モデル1にはa、検知モデル2にはb、検知モデル3にはc、検知モデル4にはdの重みを付し、検知モデル1~2が正常と判定し、検知モデル3~4が異常と判定した場合、a+b>c+dであればプラントは正常と判定され、a+b<c+dであれば、プラントは異常と判定される。
【0003】
ここで、検知モデルAによる異常判定が、例えば、次のような処理によって行われるとする。即ち、検知モデルAは、プラントで計測された8種類の信号1~8を取得する。そして、それらのうちの信号1~3の実測値から信号4の値を推定し、信号5~7の実測値から信号8の値を推定する。そして、信号4の推定値と実測値の偏差が閾値以上であるか、又は、信号8の推定値と実測値の偏差が閾値以上であれば異常と判定する。さらに、例えば、信号4の実測値の傾向として、ばらつきが大きいという性質が認められるとする。すると、本当は信号4の値は正常であるが、ばらつきが大きいという性質のために信号4についての推定値と実測値の偏差が閾値以上となり、結果として検知モデルAが、異常と判断することが生じ得る。特許文献1の方法によれば、このようなリスクを勘案して、検知モデルAに対する重み付けを行うものと理解できるが、検知モデルA自体の誤検知を抑制することはできない。例えば、信号4の不安定さに起因する誤検知に配慮して検知モデルAに対して比較的小さな重みを付す場合、検知モデルAが正しく異常を検知した場合であっても、その判断が軽視されるおそれがある。これに対し、異常検知に用いるモデルに対してではなく、異常検知に用いる信号について重み付けして異常の判定を行うことができれば、より精度の高い異常検知を行うことができると考えられる。例えば、上記例の検知モデルAが、1)信号4に基づいて異常と判定する場合と、2)信号8に基づいて異常と判定する場合と、3)信号4および信号8に基づいて異常と判定する場合とで、その判定結果に対して異なる重みを付すことができれば(例えば、1)より2)、2)より3)の方が異常の可能性が高いと評価できるような重み付けを付す。)、より精度の高い異常検知に繋がると考えられる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
異常検知に用いるモデルに対してではなく、異常検知に用いる信号について重み付けして異常の判定を行うことができれば、より精度の高い異常検知を行うことができると考えられる。
【0006】
本開示は、上記課題を解決することができる異常検知装置、異常検知システム、異常検知方法およびプログラムを提供する。
【課題を解決するための手段】
【0007】
本開示の異常検知装置は、プラントの状態を示す複数の信号を取得する信号取得部と、前記複数の信号のうち閾値の範囲外となる前記信号の数に応じた異常レベルを設定する設定部と、前記複数の信号を、それぞれの前記信号ごとに定められた前記閾値と比較して、前記閾値の範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定する異常判定部と、を有する。
【0008】
本開示の異常検知システムは上記の異常検知装置と、通知装置と、を含み、前記通知装置は、前記異常検知装置が検知した異常に係る情報を取得する取得部と、通知対象とする異常の設定を受け付ける設定部と、前記取得部が取得する異常に係る情報が、前記通知対象とする異常を含む場合に、前記通知対象とする異常を通知する通知部と、を備える。
【0009】
本開示の異常検知方法は、プラントの状態を示す複数の信号を取得するステップと、前記複数の信号のうち閾値の範囲外となる前記信号の数に応じた異常レベルを設定するステップと、前記複数の信号を、それぞれの前記信号ごとに定められた前記閾値と比較して、前記閾値の範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定するステップと、を有する。
【0010】
本開示のプログラムは、コンピュータに、プラントの状態を示す複数の信号を取得するステップと、前記複数の信号のうち閾値の範囲外となる前記信号の数に応じた異常レベルを設定するステップと、前記複数の信号を、それぞれの前記信号ごとに定められた前記閾値と比較して、前記閾値の範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定するステップと、を実行させる。
【発明の効果】
【0011】
本開示の異常検知装置、異常検知システム、異常検知方法およびプログラムによれば、異常検知において異常の判定対象とする信号について重み付け(異常レベル)を設定することができる。
【図面の簡単な説明】
【0012】
【
図1】各実施形態に係る異常検知システムの一例を示すブロック図である。
【
図2】第一実施形態に係るモデリング処理の一例を示すフロー図である。
【
図3】第一実施形態に係る異常検知手法の一例を示す図である。
【
図4】第一実施形態に係る異常検知手法の実行条件の設定例を示す図である。
【
図5】第一実施形態に係る学習データの設定例を示す図である。
【
図6】第一実施形態に係る異常検知条件の設定画面の一例を示す図である。
【
図7】第一実施形態に係る異常検知条件ファイルの一例を示す。
【
図8】第一実施形態に係る異常検知処理の一例を示すフロー図である。
【
図9】第一実施形態に係る異常検知結果の一覧画面の一例を示す図である。
【
図10】第二実施形態に係るモデリング処理の一例を示すフロー図である。
【
図11】第二実施形態に係る配分パターンの提案画面の一例を示す図である。
【
図12】各実施形態に係る異常検知システムのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0013】
以下、実施形態に係る異常検知条件の設定および異常検知条件に基づく異常検知について、図面を参照しながら詳しく説明する。
(システム構成)
図1は、各実施形態に係る異常検知システムの一例を示すブロック図である。異常検知システム20は、異常検知装置10と、表示装置2と、他装置3と、を含む。異常検知装置10は、運転中のプラント1を構成する各機器に設置されたセンサからプラント1の状態を表す各種の信号を取得し、取得した信号に基づいて異常検知を行う。異常検知にあたっては、異常検知用の学習済みモデルを用いるが、このモデルがプラント1から取得した複数の信号に基づいて異常か否かの判定を行う場合に、それらの信号に対する重み付けを行って異常判定を行う。
【0014】
図示するように、異常検知装置10は、信号取得部11と、入力受付部12と、制御部13と、記憶部18と、を有する。
信号取得部11は、プラント1を構成する各機器に設置されたセンサから温度、圧力、回転数、振動などの信号を取得する。プラント1と異常検知装置10とは、通信線4で接続されていて、稼働中のプラント1からリアルタイムに各種の信号を取得することができる。また、信号取得部11は、異常検知に用いるモデルの構築に使用する、過去に計測された信号(学習データ)を取得する。
【0015】
入力受付部12は、キーボード、マウス、タッチパネル、ボタン等の入力装置を用いて構成される。入力受付部12は、ユーザによる入力装置を用いた異常検知装置10に対する入力を受け付け、入力された情報を制御部13へ出力する。
【0016】
制御部13は、異常検知装置10の動作を制御する。制御部13は、設定部14と、学習部15と、異常判定部16と、異常通知部17を有する。
【0017】
設定部14は、異常検知に用いるモデルの構築に必要な各種の設定、異常検知に必要な各種の設定を行う。具体的な設定内容については後述するが、例えば、設定部14は、信号に対する重み付けの設定、どの信号を異常検知の判定に用い、どの信号を異常判定に用いる信号の値を推定するための説明変数とするか等の設定を行う。設定部14は、ユーザが入力した設定情報を取得して各種の設定を行う機能(第一実施形態)と、自動で設定を行う機能(第二実施形態)を有している。また、設定部14は、ユーザが設定情報を入力する設定画面などを作成し、表示装置2に出力する。
【0018】
学習部15は、設定部14が設定した設定内容に基づいて、信号取得部11が取得した信号(学習データ)を学習してモデルを構築する。例えば、学習部15は、プラント1が正常な状態で採取された信号を学習した正常モデル(例えば、MT法における単位空間)を構築したり、1つ又は複数の信号から異常判定に用いる信号の値を推定する推定モデルを構築したりする。
【0019】
異常判定部16は、学習部15が構築したモデルと信号取得部11が取得した信号とに基づいて、プラント1の異常を判定する。正常モデルを用いて異常を判定する場合には、異常判定部16は、監視対象の信号と正常モデルを比較して、監視対象の信号が正常モデルに基づく正常とみなせる範囲に含まれていれば、プラント1は正常と判定し、そうでなければプラント1は異常と判定する。推定モデルを用いる場合、異常判定部16は、説明変数として設定された信号を推定モデルに入力して異常判定に用いる信号の値を推定し、異常判定に用いる信号の推定値と実測値の偏差が閾値以上であれば、プラント1は異常と判定し、偏差が閾値未満であれば、プラント1は正常と判定する。異常判定部16は、正常モデルと推定モデルのうち何れか又は両方を用いて異常判定を行う。両方を用いる場合、異常判定部16は、正常モデルによる判定結果と推定モデルによる判定結果のそれぞれに重み付けして、最終的な異常判定を行う。さらに、異常判定部16は、推定モデルによる異常判定を行う場合には、異常判定に用いる信号に対する重み付けを考慮して異常判定を行う。信号に対する重み付けを考慮した異常判定の詳細については後述する。また、異常判定部16は、異常判定の結果を記憶部18に記録する。
【0020】
異常通知部17は、通信線5を介して、異常判定部16が検知した異常に係る情報を表示装置2へ出力したり、他装置3へ送信したりする。例えば、異常通知部17は、異常検知結果の一覧画面を生成して、この一覧画面を表示装置2へ出力してもよい。異常に係る情報には、例えば、異常判定部16による判定結果、異常と判定された時刻、異常と判定された信号の識別情報、異常レベルなどが含まれる。
【0021】
記憶部18は、信号取得部11によって取得された信号、異常判定部16による判定結果などの種々の情報を記憶する。
【0022】
表示装置2は、異常検知装置10が検知した異常やその内容などを表示する、例えば、LCD(Liquid Crystal Display)や有機EL(Electro Luminescence)表示装置等である。
他装置3は、入出力部31と、設定部32と、通知部33と、記憶部34とを備える。
入出力部31は、他の機器との間で各種データを入力または出力する。例えば、入出力部31は、キーボード、マウス、タッチパネル、ボタン等の入力装置および他の機器との入出力インタフェースを含んで構成される。入出力部31は、ユーザによる入力装置を用いた入力の受け付け、異常検知装置10が検知した異常に係る情報の取得、通知部33へのデータの出力等を行う。
設定部32は、通知対象とする異常の設定、例えば、どのような異常が発生した場合に異常を通知するか、どのような情報を通知するか等の設定を行う。
通知部33は、表示装置やパトロールランプ、ブザー等の通知手段を含んで構成される。通知部33は、設定部32による設定に基づいて、入出力部31が取得する異常に係る情報に、通知対象とする異常が含まれる場合に、上記の通知手段を使って、通知対象の異常を通知する。例えば、通知手段が表示装置の場合、通知部33は、異常が発生したプラントのプラント名、異常発生時刻、異常レベルなどを表示する。
記憶部34は、設定部32が設定した設定情報、異常検知装置10から取得した異常に係る情報等を記憶する。
【0023】
<第一実施形態>
(モデリング処理)
次に第一実施形態に係るモデリング処理について、
図2~
図7を参照して説明する。
図2は、第一実施形態に係るモデリング処理の一例を示すフロー図である。
信号取得部11は、学習データとなる過去に計測された時系列の信号を取得し、記憶部18にはそれらの信号が蓄積されている。これらの信号はプラント1が正常に稼働しているときに計測された信号である。まず、ユーザは、モデルを構築する信号を選出する(ステップS1)。例えば、異常検知に10種類の信号が必要であれば、ユーザは、学習データの中から10種類の信号を選出し、さらに10個の信号のうち、推定モデルによって推定する必要がある信号については、その信号の推定に必要な信号(説明変数となる信号)の種類を選出する。ユーザは、選出した信号の種類を異常検知装置10に入力する。設定部14は、入力受付部12を通じて、ユーザが入力した信号の種類を記憶部18に記録する。
【0024】
次にユーザは、異常検知手法を設定する(ステップS2)。例えば、ユーザは、(a)MT法(マハラノビスタグチ法)、(b)推定手法、(c)MT法+推定手法という3パターンの中から1つを選択し、異常検知装置10に入力する。
図3に異常検知手法の一例を示す。例えば、異常検知手法には、MT法、重回帰、リッジ回帰、カーネルリッジ回帰、ランダムフォレストがある。これらのうち、MT法以外は、推定手法である。推定手法とは、例えば、重回帰によって構築した推定モデルに、説明変数となる信号を入力し、推定モデルが出力した信号の推定値と、プラント1から取得した同じ信号の実測値を比較して、その差によって異常を検知する方法である。MT法は、他の手法と同時に設定可能であるが、推定手法の重回帰~ランダムフォレストは併用不可としている。ユーザは、(b)又は(c)を選択する場合には、重回帰~ランダムフォレストの中から1つを選択して、異常検知装置10に入力する。設定部14は、入力受付部12を通じて、ユーザが入力した異常検知手法を記憶部18に記録する。例えば、記憶部18には、
図3に例示する異常検知手法ファイルが記録される。
図3の異常検知手法ファイルにおいて、異常検知に用いる手法には「1」が設定され、使用しない手法には「0」が設定されている。
【0025】
次にユーザは、推定手法に用いる信号を選択する(ステップS3)。ユーザは、ステップS2で(b)又は(c)を選択した場合、ステップS1で選出した信号の中から推定手法において、説明変数とする信号と、目的変数とする信号(異常判定に用いる信号)とを設定する。設定部14は、入力受付部12を通じて、ユーザが入力した説明変数とする信号と目的変数とする信号の設定を記憶部18に記録する。なお、ユーザは、ステップS2で(a)又は(c)を選択した場合、MT法において、ステップS1で選出した信号の全てを用いない場合には、その中からMT法に用いる信号を選定してもよい。
【0026】
次にユーザは、異常検知手法の実行条件を設定する(ステップS4)。ユーザは、モデル構築後の実際の異常検知時(運用フェーズ)にて異常検知を行う条件を入力する。実行条件の一例を
図4に示す。例えば、プラント1が発電プラントの場合、ユーザは、モデル名として「発電プラント監視モデル」、実行判断に用いる信号として「発電電力量」、異常検知の実行条件として発電電力量の範囲「X1~X2(kW)」を設定する。設定部14は、入力受付部12を通じて、ユーザが入力した異常検知の実行条件を記憶部18に記録する。この設定により、例えば、プラント1が監視対象外の運転状態にあるときの不要な異常検知を抑制することができる。
【0027】
次にユーザは、モデルの構築に用いるデータを設定する(ステップS5)。学習データの設定例を
図5に示す。例えば、ユーザは、ステップS1、S3で設定した信号A、B、C、・・・について、2021/10/1~2021/10/10に計測されたデータを学習データとして用いることを設定する。設定部14は、入力受付部12を通じて、ユーザが入力したデータの範囲を記憶部18に記録する。
【0028】
次にユーザは、モデルの構築に用いる信号の上下限を設定する(ステップS6)。例えば、プラント1が発電プラントの場合、ユーザは、信号「発電電力量」について、下限値X3、上限値X4の設定を行う。設定部14は、入力受付部12を通じて、ユーザが入力したデータの範囲(上限値と下限値)を記憶部18に記録する。この設定とステップS5の設定により、学習データとしては、計測時刻が2021/10/1~2021/10/10の範囲で(ステップS5で設定)、且つ、その時に計測された信号「発電電力量」の値がX3~X4の範囲にある場合に計測された信号だけが用いられる。
【0029】
次にユーザは、学習データに対しサンプリングするかどうかを設定する(ステップS7)。例えば、学習データの各信号が1秒ごとに計測されている場合、その中から1分ごとの値をサンプリングしたり、外れ値を除外したりといった設定を行う。設定部14は、入力受付部12を通じて、ユーザが入力したサンプリングの設定情報を記憶部18に記録する。
【0030】
次に設定部14は、ヒストグラムや相関図を描画する(ステップS8)。設定部14は、ステップS7までの設定に従って、学習データの中からモデルの構築に用いる信号を抽出し、信号別のヒストグラムや信号間の相関図を作成し、作成したヒストグラム等を表示装置2へ出力する。ユーザは、表示装置2に表示されたヒストグラムや相関図を参照して学習データとして用いられる信号が適切かどうかを確認する。適切では無い信号が含まれている場合、ステップS5~S7の設定内容を再度調整する等して、適切な学習データを選択する。
【0031】
次にユーザは、MT法の異常判定条件を設定する(ステップS9)。具体的には、ユーザは、MT法の異常判定条件として、MT法に係る異常判定情報(つまり、MD値に対する閾値)を設定する。MT法において、MD値がここで設定する閾値以上となると、異常と判定される。
図6に異常検知条件の設定画面100の一例を示す。例えば、ユーザは、設定欄101aにMD値の閾値を入力し、設定欄101bに異常と判定するための他の条件であるMD値が閾値以上となる状態の継続時間の閾値を入力する。設定部14は、入力受付部12を通じて、ユーザが入力したMD値の閾値等を記憶部18に記録する。
【0032】
次にユーザは、推定手法の異常判定条件を設定する(ステップS10)。具体的には、ユーザは、推定手法の異常判定条件として、推定手法に係る異常判定情報(つまり、信号の推定値と実測値の偏差に対する閾値:偏差閾値)を設定する。例えば、ユーザは、この偏差閾値に3σを設定する。この偏差閾値は信号ごとに設定することができる。例えば、ユーザは、設定画面100の設定欄102に信号ごとの偏差閾値を入力する。設定部14は、入力受付部12を通じて、ユーザが入力した推定手法における偏差閾値を記憶部18に記録する。
【0033】
次にユーザは、設定した異常検知手法に関して加算する異常レベルの配分を設定する(ステップS11)。例えば、異常推定手法が1種類の場合、つまり、(a)MT法、又は(b)推定手法の場合、ユーザは、(a)MT法に対して100%、(b)推定手法に対して100%をそれぞれ設定する。例えば、(a)の場合、ユーザは、設定欄103に「100」を入力し、(b)の場合、設定欄103に「0」を入力する。また、(c)MT法+推定手法の場合であって、MT法に対して40%、推定手法に対して60%を設定する場合、ユーザは、設定欄103に「40」を入力する。MT法が40%、推定手法が60%とは、MT法による異常検知の判定結果に対して40%の重みを付し、推定手法による異常検知の判定結果に対して60%の重みを付すことを意味している。設定部14は、入力受付部12を通じて、ユーザが入力した異常レベルの配分を記憶部18に記録する。なお、記憶部18には、(a)MT法の場合100%、(b)推定手法の場合100%、(c)の場合、MT法40%、推定手法60%等のデフォルトの設定が登録されていてもよい。
【0034】
次にユーザは、推定手法の設定に対して、信号に係る異常判定情報を設定(例えば、偏差閾値を超えている信号数に応じて加算する異常レベルを3パターン設定)する(ステップS12)。推定手法が設定されている(b)と(c)の場合、ユーザは、偏差閾値を超えている信号数に応じて、加算する異常レベルを3パターン設定する。例えば、(b)推定手法の場合に、(1)偏差閾値を超えている信号が1個の場合は40%、(2)信号が3個の場合は80%、(3)信号が5個の場合は100%と設定する場合には、ユーザは、
図6の異常検知条件の設定画面100の設定欄104a,104bにそれぞれ「1」、「40」を入力し、設定欄105a,105bに「3」、「40」を入力し、設定欄106a,106bに「5」、「20」を入力する(設定欄104b~106bの合計が100になるように設定を行う。)。例えば、この設定に基づいて、6個の信号を対象に異常判定を行う場合、異常判定部16は、(1)6個のうちの1個以上3個未満の信号が偏差閾値を超えている場合には40%の確率でプラント1が異常と判定し、(2)3個以上5個未満の信号が偏差閾値を超えている場合には80%(40+40)の確率でプラント1が異常と判定し、(3)6個中5個以上の信号が偏差閾値を超えている場合には100%(40+40+20)の確率でプラント1が異常と判定する。このように、本実施形態では、信号数に応じて重み付けを行うことができる。これにより、6個の信号の挙動のばらつきに基づいて重み付けを設定し、誤検知を抑制する。例えば、6個の信号のうち挙動が不安定であっても正常と見做せる信号が多く含まれていれば、(1)1個の場合の異常レベルを20%、(2)3個の場合の異常レベルを50%などに低下させて調整するか、又は、信号数を変化させて(1)2個の場合の異常レベルを40%、(2)4個の場合の異常レベルを80%等に調整することができる。これにより、ばらつきが大きい信号の幾つかの推定値と実測値の偏差が閾値以上となっても、その数が限られていれば、異常ではない可能性が高いと判定するように調整することができる。反対に6個の信号のばらつきが小さければ(6個の信号それぞれが、プラント1の状態と一致している、プラント1の状態を反映していると見做せる場合)、(1)偏差閾値を超えている信号が1個の場合は50%、(2)信号が3個の場合は80%、(3)信号が4個の場合は100%といったように6個のうちの比較的少数の信号において推定値と実測値の偏差が閾値以上となれば高い確率で異常が発生していると判定するように調整することができる。このように本実施形態では、推定手法を用いて異常検知を行う場合に、異常検知に使用する信号の性質(ばらつきの大小)に応じて、信号数に対応付けて異常レベルを設定する。これにより、推定手法による異常検知の精度を向上することができる。なお、(b)推定手法におけるデフォルト設定の一例として、(1)偏差閾値を超えている信号が1個の場合40%、(2)全信号の半数で40%、(3)全信号数の8割が偏差閾値を超えている場合20%と設定されていてもよい。
【0035】
なお、(c)MT法+推定手法の場合、設定欄103、104b~106bの合計が100となるように設定する。例えば、MT法に40%の場合、104b~106bには、それぞれ10%、25%、25%のように設定する(104b~106bの合計が60%)。
【0036】
次に、ユーザは、モデルが警告を出す条件となる異常レベルの閾値を設定する(ステップS13)。異常レベルの閾値とは、上記で設定した(a)MT法、(b)推定手法、(c)MT法+推定手法の何れかで異常検知した場合に検知された異常レベルに対する閾値である。例えば、(a)MT法の場合、算出される異常レベルは0%か100%の何れかである。具体的には、MD値が閾値以上であれば異常(異常レベルは100%)、閾値未満であれば正常(異常レベルは0%)である。(b)推定手法の場合、算出される異常レベルは、推定値と実測値の偏差がステップS10で設定した偏差閾値を超える信号の数に応じて、
図6の設定欄104bの値、又は、設定欄104b,105bの値の合計、又は、設定欄104b~106bの値の合計の何れかである。例えば、(1)偏差閾値を超える信号が1個の場合は40%、(2)偏差閾値を超える信号が3個の場合は80%、(3)偏差閾値を超える信号が5個の場合は100%と設定した場合であって、偏差閾値を超える信号が2個の場合、異常レベルは40%となる。(c)MT法+推定手法の場合、各手法で算出された異常レベルの和である。例えば、MT法+推定手法において、MT法に40%(この場合、MT法の異常レベルは0%又は100%で重み40%を乗じると、採り得る値は0%又は40%となる。)、推定手法に60%の重みを設定した場合であって、MT法による異常レベルが40%、推定手法によって算出された異常レベルが40%とすると、全体の異常レベルは、40%+40%=80%となる。ステップS13では、(a)~(c)の何れかで算出される最終的な異常レベルに対する閾値を設定する。例えば、閾値として60%を設定する場合、ユーザは、設定欄107に60を入力する。設定部14は、入力受付部12を通じて、ユーザが入力した最終的な異常レベルに対する閾値を記憶部18に記録する。
【0037】
ステップS9~S13で設定した内容(各異常判定情報など)は、例えば、
図7に例示する異常検知条件ファイルとして記憶部18に設定登録される。
【0038】
次にユーザの指示に基づき、学習部15が学習データを学習してモデルを構築する(ステップS14)。例えば、MT法の場合、学習部15は、ステップS1~S8の処理によって選定した学習データから単位空間を構築する。また、重回帰などの推定手法の場合、学習部15は、ステップS3で設定した説明変数と目的変数の関係を回帰分析して、推定モデルを構築する。
【0039】
次に設定した異常検知手法と学習データおよび異常検知条件の妥当性を検証する(ステップS15)。例えば、任意の期間のデータに対し、構築したモデルを用いて異常検知を行い、ユーザが意図した結果が得られているか確認する。なお、異常検知の方法については、次に
図8を参照して説明する。妥当ではない場合、必要に応じてステップS1以降の処理を適宜行い、学習データや異常検知条件の調整を行う。
【0040】
ステップS15で妥当性が確認されると、妥当性が確認されたモデルを実際の監視環境に配備する(ステップS16)。例えば、学習部15は、モデル(単位空間や推定モデル)を異常判定部16へ出力する。異常判定部16は、妥当性が確認されたモデルを記憶部18に記録する。
【0041】
(異常検知処理)
次に第一実施形態に係る異常検知処理について、
図8を参照して説明する。
図8は、第一実施形態に係る異常検知処理の一例を示すフロー図である。
前提として、信号取得部11は、プラント1から時々刻々と複数の信号を取得し、プラント1から取得した信号を異常判定部16に出力している。
異常判定部16は、設定された異常検知手法に係る情報を取得する(ステップS21)。例えば、異常判定部16は、
図3に例示する異常検知手法ファイルを記憶部18から読み出して取得する。次に異常判定部16は、異常検知手法ファイルの設定内容に基づいて、異常検知手法はMT法のみか否かを判定する(ステップS22)。MT法のみの場合(ステップS22;Yes)、異常判定部16は、異常判定に用いる信号を取得する(ステップS23)。例えば、異常判定部16は、ステップS1で選出された信号を取得する。次に異常判定部16は、MT法に係る異常判定情報を取得する(ステップS24)。異常判定部16は、
図7に例示する異常検知条件ファイルを記憶部18から読み出してMD閾値を取得する。次に異常判定部16は、MT法を用いた異常判定を行う(ステップS25)。異常判定部16は、
図2の処理にて構築された単位空間(モデル)と、ステップS23で取得した信号とに基づいてMD値を算出し、異常検知条件ファイルに記録されたMT法のMD閾値(MT法に係る異常判定情報)と比較して異常判定を行う。具体的には、算出したMD値がMD閾値以上であれば、異常判定部16は、プラント1は異常(異常レベルが100%)と判定し、そうでなければ、プラント1は正常(異常レベルが0%)と判定する。異常と判定した場合(ステップS26;Yes)、異常通知部17は、異常に係る警報を通知する(ステップS27)。例えば、異常通知部17は、プラント名、ユニット名、モデル名、判定に用いた信号の種類、信号の異常レベル(0%か100%)、閾値(MD閾値)等の情報を他装置3へ送信してもよい。また、例えば、異常通知部17は、プラント名、ユニット名、モデル名、異常レベル(0%か100%)、閾値(MD閾値)を表示した異常検知結果の一覧画面を表示装置2に出力してもよい。
図9に一覧画面200の一例を示す。一覧画面200では、異常状況、正常又は異常判定されたときの時刻(タイムスタンプ)、プラント名、ユニット名、判定に用いたモデル名、異常判定にて計算された異常レベル、閾値などが一覧で表示される。一覧画面200では、チェックボックス201を選択すると、画面の自動更新機能が有効になり、リアルタイムにプラントの状態を監視することができる。また、チェックボックス202を選択すると、異常と判定されたデータのみが表示される。ユーザは、一覧画面200を監視することにより、プラント1の異常の有無を把握することができる。また、異常通知部17は、異常に係る警報の通知として、異常判定された時刻、プラント名、ユニット名、判定に用いたモデル名、異常判定にて計算された異常レベル、各種閾値、偏差閾値に基づいて異常と判定された信号の識別情報などを含む異常に係る情報を他装置3へ送信する。異常に係る情報の他装置3への送信についてはステップS35、S44でも同様である。
【0042】
また、異常判定部16は、異常の判定結果を記憶部18に記録する(ステップS45)。異常判定部16は、異常判定時のみ異常判定に関するデータ(例えば、各信号の値や
図9の一覧画面200に表示される項目)を記録してもよいし、正常と判定された場合を含めてデータを記録してもよい。また、異常の判定結果とともに、その時に実施した対応(設計部門への問合せやプラント運営会社への連絡など)を記録できるようにしてもよい。この記録に基づいて、
図9に示す一覧画面200では、リアルタイムな異常検知だけではなく、設定欄203、204にそれぞれ抽出開始時刻と抽出時間の範囲を設定することで、過去に異常判定された情報を呼び出して閲覧することができる。このように、異常検知の判定結果を、データベースに収集、蓄積することにより、過去の異常検知結果を閲覧できるため、検知した異常への対応をスムーズに実施できる。また現在検知している異常と、過去に検知した異常を比較する分析も可能となり、対応の品質を向上させることができる。
【0043】
また、ステップS22の判定にて、MT法のみではないと判定された場合(ステップS22;No)、異常判定部16は、
図3の異常検知手法ファイルの設定内容に基づいて、異常検知手法は推定手法のみか否かを判定する(ステップS28)。推定手法のみの場合(ステップS28;Yes)、異常判定部16は、異常判定に用いる信号を取得する(ステップS29)。例えば、異常判定部16は、ステップS3で選出された信号を取得する。次に異常判定部16は、推定手法に係る異常判定情報を取得する(ステップS30)。異常判定部16は、記憶部18の異常検知条件ファイル(
図7)から偏差閾値1~Nを読み出して取得する。次に異常判定部16は、推定手法を用いた異常判定を行う(ステップS31)。異常判定部16は、信号ごとに推定モデルによる推定値とプラント1からリアルタイムに送信される実測値の偏差を計算し、その値を偏差閾値と比較する。異常判定部16は、推定値と実測値の偏差が偏差閾値を超えていれば、その信号は異常であると判定する。推定モデルによる推定値を中心とした偏差閾値(例えば3σ)の範囲は許容範囲の一例である。また、信号ごとの偏差閾値(例えば、3σ)の値は、例えば、学習データに基づいて、異常判定部16によって計算されてもよいし、推定モデルが推定値とともに偏差閾値の値を出力するように構築されていてもよい。次に異常判定部16は、信号に係る異常判定情報を取得する(ステップS32)。異常判定部16は、記憶部18の異常検知条件ファイル(
図7)から、推定手法の重み(1)~(3)、(1)~(3)の信号数、信号の偏差閾値1~Nを読み出して取得する。次に、異常判定部16は、ステップS31の異常判定結果に対して、信号に係る異常判定情報を用いて重み付けを行う(ステップS33)。異常判定部16は、推定値と実測値の偏差が偏差閾値を超える信号数を数え、推定手法の重み(1)~(3)、(1)~(3)の信号数に基づいて異常レベルを計算する。異常判定部16は、計算した異常レベルと、異常検知条件ファイル(
図7)の異常レベルの閾値とを比較して、計算した異常レベルが閾値以上であればプラント1が異常、閾値未満であればプラント1は正常と判定する。異常と判定した場合(ステップS34;Yes)、異常通知部17は、異常に係る警報を通知する(ステップS35)。例えば、異常通知部17は、プラント名、ユニット名、モデル名、異常レベル(異常判定された信号数に応じた値)、閾値(異常レベルの閾値)を表示した異常検知結果の一覧画面を表示装置2に出力してもよい。異常判定部16は、異常の判定結果を記憶部18に記録する(ステップS45)。
【0044】
また、ステップS28の判定にて、推定手法のみではないと判定された場合(ステップS28;No)、異常判定部16は、異常判定に用いる信号を取得する(ステップS36)。例えば、異常判定部16は、ステップS1やステップS3で選出された信号を取得する。次に異常判定部16は、MT法に係る異常判定情報と推定手法に係る異常判定情報を取得する(ステップS37)。異常判定部16は、記憶部18の異常検知条件ファイル(
図7)からMD閾値、偏差閾値1~Nを読み出して取得する。次に異常判定部16は、推定手法を用いた異常判定を行う(ステップS38)。この処理はステップS31と同様である。次に異常判定部16は、MT法を用いた異常判定を行う(ステップS39)。この処理はステップS25と同様である。次に異常判定部16は、各異常判定結果に対してMT法に対する重み付けと推定手法に対する重み付けを取得する(ステップS40)。異常判定部16は、記憶部18の異常検知条件ファイル(
図7)から、MT法の重みを取得し、推定手法に対する重みを計算する。例えば、MT法の重みが40であれば、異常判定部16は、MT法の重みが40、推定手法に対する重み60と計算する。次に異常判定部16は、信号に係る異常判定情報を取得し、異常レベルを計算する(ステップS41)。この処理はステップS32~S33と同様である。次に異常判定部16は、MT法を用いた異常判定結果及び推定手法を用いた異常レベルに対して重み付けを行う(ステップS42)。異常判定部16は、ステップS39のMT法による異常判定で計算した異常レベル(0%又は100%)にステップS40で取得したMT法の重み(例えば40%)を乗じる。また、異常判定部16は、推定手法に関して、ステップS41にて、ステップS33と同様にして計算した異常レベル((c)MT法+推定手法の場合、信号数に応じた重み付けには推定手法に対する重み60%が考慮された値が設定されている。)と、ステップS39のMT法を用いた異常判定結果(つまり、異常レベル0%又は100%)に重みを乗じて計算したMT法の異常レベルとを合計し、最終的な異常レベルを算出する。次に異常判定部16は、算出した異常レベルと、異常検知条件ファイル(
図7)の異常レベルの閾値とを比較して、算出した異常レベルが閾値以上であればプラント1が異常、閾値未満であればプラント1は正常と判定する。異常と判定した場合(ステップS43;Yes)、異常通知部17は、異常に係る警報を通知する(ステップS44)。異常判定部16は、異常の判定結果を記憶部18に記録する(ステップS45)。
【0045】
(効果)
以上説明したように、本実施形態によれば、推定手法によってプラント1の異常検知を行う場合に、異常と判定された信号数に応じて異常レベルを計算し、この異常レベルと閾値とを比較してプラント1の異常判定を行う。例えば、監視対象の信号に、ばらつきが大きい信号が多く含まれる場合には、大半の信号が異常を示す状況となった場合に異常レベルに高い値に設定し、少数の信号のみが異常を示す状況では低い異常レベルを設定することにより、信号のばらつきの大きさに起因する誤検知を抑制することができる。また、信号のばらつきが小さい場合には、比較的少数の信号が異常を示す状況でも異常レベルを例えば中程度以上に設定することで、速やかな(感度の良い)異常検知を期待することができる。また、本実施形態によれば、MT法と推定手法を組み合わせることができるので、異なる手法によって異常検知することによる、異常検知力の向上を期待することができる。また、各手法に重み付けを設定することができるので、適切に重みを設定することで、異常検知の感度を最適化することができる。また、
図2のステップS3では、推定手法で異常判定に用いる信号を、絞り込むことができる。この機能によって、次のような効果が得られる。例えば、信号A、信号B、信号Cの3つの信号で構成されるモデルにおいて、信号Aの値を推定するためには、信号Bと信号Cが必要であることが分かっている。しかし、信号Bや信号Cについては、設備のメカニズム等の観点から、このモデルの信号では推定できないことがある。このような場合に、ステップS3にて、信号Aのみを設定することで、信号Bや信号Cを推定手法による異常検知対象から外すことができ、誤検知を防ぐことができる。また、本実施形態によれば、異常として検知された結果を、データベースに収集・蓄積する。これにより、誤検知を防ぎつつ、異常への対応をスムーズに実施することができる。
【0046】
(c)MT法+推定手法に関して、上記のステップS42の説明では、MT法に対する重み付け(上記例では40%)に基づいて、ユーザが、全体を100%とした場合の残りの重み付けの大きさを、推定手法に対する重み付けとして考慮し、設定欄104b~106bに入力される値の合計が、考慮した大きさ(上記例では60%)となるように設定欄104b~106bに値を設定する場合を例に挙げて説明を行った。しかし、実施の形態は、これに限定されない。例えば、(b)推定手法の場合と同様に、ユーザが、設定欄104b~106bに入力される値の合計が100%となるように、設定欄104b~106bの各々に値を設定し、異常判定部16が、偏差閾値を超えた信号数と信号に係る異常判定情報(設定欄104a~106aおよび設定欄104b~106bの値)とに基づいて計算した推定手法の異常レベルに対して、推定手法に対する重み付けである60%を乗じて、最終的な推定手法の異常レベルを算出し、この値と重みを乗じて計算したMT法の異常レベルとを合計して最終的な異常レベルを算出するようにしてもよい。さらに、MT法に対する重み付けとして40%を設定した場合において、推定手法に対する重み付けに60%以外の値を設定し、設定欄107には、MT法に対する重み付けが40%で推定手法に対する重み付けが60%以外であることに応じた、最終的な異常レベルに対する閾値を設定するようにしてもよい。
【0047】
また、他装置3では、予めユーザにより、通知対象とする異常の種類(例えば、異常の種類や異常レベル)や、通知対象とする異常に関してどのような内容の情報を通知するか等を定めた設定情報が入出力部31を通じて入力されていてもよい。この場合、設定部32は入力された設定情報を記憶部34に記録する。例えば、記憶部34には、「異常と判定された信号の中に信号Aと信号Bが含まれていれば通知する(異常の種類の設定例)」、「異常レベルがXX以上であれば通知する(異常レベルの設定例)」、「プラント名、異常発生時刻、異常レベルを表示する(どのような内容の情報を通知するかの設定例)」などの設定情報が記録される。そして、異常通知部17から異常に係る警報が出力されると(ステップS27、S35、S44)、他装置3では、入出力部31が、その異常に係る情報を取得し、通知部33が、取得された異常に係る情報が通知対象の異常を含んでいるかどうかを記憶部34に記録された設定情報に基づいて判定する。通知対象の異常を含んでいれば、通知部33は、通知対象の異常が発生したことを通知する。例えば、通知部33は、異常の発生時刻、異常と判定された信号の種類、異常レベルなどを表示装置に表示する。
【0048】
<第二実施形態>
次に、第二実施形態としてMT法や推定手法における閾値、信号数に応じて加算する異常レベルの設定を自動化する機能について、
図10~
図11を参照して説明する。
図10は、第二実施形態に係るモデリング処理の一例を示すフロー図である。
ステップS9A、S10A、S12A以外の処理は、第一実施形態と同様の為、簡単に説明する。まず、ユーザは、モデルを構築する信号を選出し(ステップS1)、異常検知手法を設定する(ステップS2)。次にユーザは、推定手法に用いる信号を選択し(ステップS3)、異常検知手法の実行条件を設定する(ステップS4)。さらにユーザは、モデルの構築に用いるデータを設定し(ステップS5)、信号の上下限の設定を行う(ステップS6)。次にユーザは、学習データに対しサンプリングを行い(ステップS7)、ステップS8にて設定部14が描画したヒストグラムや相関図を確認する。ユーザは、必要に応じて、ステップS5~S8の処理を繰り返し行って適切な学習データを選定する。次に学習部15が学習データを学習してモデルを構築する(ステップS14)。例えば、学習部15は、MT法に関して単位空間を構築する。また、推定手法に関し、学習部15は、ステップS2で設定された推定手法と、ステップS3で設定された説明変数と目的変数に基づいて、推定モデルを構築する。
【0049】
次に設定部14がMT法の異常判定条件を自動設定する(ステップS9A)。設定部14は、MT法のMD閾値を自動設定する。例えば、設定部14は、ステップS14で構築されたモデル(単位空間)に学習データ(モデル構築に用いた学習データ)を適用し、MD値を計算する。これにより、信号の時系列データに対してMD値の時系列データが得られる。設定部14は、時系列のMD値の平均値と標準偏差を計算し、最も高いMD値が閾値xσ以内に収まるようなxを計算する。ここでσは、時系列データの標準偏差である。例えば、x=1の場合、1σ区間には全データの68%が収まり、x=2の場合の2σ区間には全データの95%が収まり、x=3の場合の3σ区間には全データの99.7%が収まる。例えば、MD値の時系列データのうち最も大きな値が、(MD平均値+2×MD標準偏差)より大きく(MD平均値+3×MD標準偏差)未満であれば、設定部14は、3σをMD値の閾値に設定する。なお、学習データをモデルに入力する際に、単位空間の構築に用いた学習データではなく、他の正常時のデータを入力するようにしてもよい。このことはステップS10A、S12Aにおいても同様である。
【0050】
次に設定部14が、推定手法の異常判定条件を自動設定する(ステップS10A)。設定部14は、各信号の偏差閾値を自動設定する。例えば、設定部14は、ステップS14で構築された推定モデルに学習データ(モデル構築に用いた学習データ)を適用し、推定モデルによる推定値の時系列データと学習データに含まれる実測値の時系列データの同時刻の値の偏差を計算する。これにより、推定値と実測値の偏差の時系列データが得られる。設定部14は、最も大きい偏差となる変動を閾値以内に収めるようxσ(偏差の平均値+x×偏差の標準偏差)で偏差閾値を設定する。例えば、偏差の時系列データのうち最も大きな偏差が、(偏差の平均値+2×偏差の標準偏差)より大きく(偏差の平均値+3×偏差の標準偏差)未満であれば、設定部14は、3σを偏差閾値に設定する。
【0051】
次にユーザは、設定した異常検知手法に関して加算する異常レベルの配分を設定する(ステップS11)。
【0052】
次に設定部14は、推定手法の設定に対して、偏差閾値を超えている信号数に応じて加算する異常レベルを3パターン自動設定する(ステップS12A)。例えば、設定部14は、各信号の実測値と推定値の偏差の時系列データについて、標準偏差を算出する。設定部14は、信号ごとに算出した標準偏差を所定の閾値に基づいて、標準偏差の値が閾値以上のばらつきが大きいグループと、標準偏差の値が閾値より小さいグループに分類する。標準偏差が大きいグループに分類される信号数の方が多い場合、設定部14は、異常レベルの3パターンを例えば次のように自動設定する。即ち、設定部14は、(1)偏差閾値を超えている信号が全信号の2割で20%、(2)偏差閾値を超えている信号が全信号の半数で40%、(3)偏差閾値を超えている信号が全信号数の8割で40%と設定する。また、標準偏差が小さいグループの方が多い場合、設定部14は、異常レベルの3パターンを例えば次のように自動設定する。即ち、設定部14は、(1)偏差閾値を超えている信号が1個で40%、(2)偏差閾値を超えている信号が全信号の3割で40%、(3)偏差閾値を超えている信号が全信号数の6割で20%と設定する。
【0053】
また、設定部14は、次のようにして3パターンの自動設定を行ってもよい。まず信号数の自動設定について説明する。偏差閾値を3σとして、設定部14は、推定モデルに学習データを適用し、学習データを推定モデルに入力して得られる推定値と学習データに含まれる実測値の偏差を信号ごと、データ点(時系列の各点)ごとに計算する。設定部14は、各信号について、計算した偏差が偏差閾値を超えたデータ点数が全点数の0.3%を超えるかどうかを判定する。そして、偏差閾値を超えたデータ点数の割合が0.3%を超える場合には、設定部14は、(1)の信号数には0.3%を超えた信号数を設定し、(2)と(3)には残りの信号数を等分配した値を設定する。信号数が奇数となる場合は(2)を1信号多く配分する(端数を繰り上げる。)。例えば、全体の信号数が10個で、そのうちの5個の信号において、偏差閾値を3σとしたときに推定値と実測値の偏差が偏差閾値を超えたデータ点数が全データ点数の0.3%を超えた場合、設定部14は(1)の信号数に5個、(2)の信号数に3個、(3)の信号数に2個を設定する。
【0054】
なお、0.3%の根拠は、3σの考え方に基づいている。正規分布のデータに対し±3σを閾値とした場合、全データの99.7%は閾値内に収まり、残りの0.3%のデータは閾値外に存在する。従って、閾値を超えたデータ点数が全点数の0.3%を超える信号は、正常な学習データにおいても外れ値が多い信号(値が大きく変動する信号)であると見なすことができる。このような信号は、実運用で誤検知増加を招く可能性があるため、(1)として設定することで誤検知を抑制する。
【0055】
次に(1)~(3)に設定する異常レベルについて説明する。自動配分する重みについては、例えば、設定部14は、(b)推定手法については(1)40%、(2)40%、(3)20%と設定する。(c)MT法+推定手法については(1)10%、(2)25%、(3)25%と設定する。何れの場合も(1)に対する重み付けについては、推定値と実測値の偏差が偏差閾値を超えた信号数が(1)の信号数以上で(2)の信号数未満となった場合の異常レベルには、それが誤検知である可能性を考慮した値が設定されるようにする。
【0056】
例えば、(b)推定手法において、5個の信号のうち2個の信号が0.3%を超えている場合、(1)の信号数は2個、異常レベルは40%、(2)の信号数は2個、異常レベルは40%、(3)の信号数は1個、異常レベルは20%となる。
【0057】
例えば、(c)MT法+推定手法において、MT法に40%、残りの60%を推定手法に割り当てる場合において、9個の信号のうち3個の信号が0.3%を超えていれば、(1)の信号数は3個で10%、(2)の信号数は3個で25%、(3)の信号数は3個で25%となる。
【0058】
また、設定部14は、
図11に例示する配分パターンの提案画面を生成して、表示装置2へ出力してもよい。例えば、デフォルトで、異常レベルについて、パターンAとして(1)40%,(2)40%,(3)20%という設定、パターンBとして(1)20%,(2)20%,(3)60%という設定、パターンCとして(1)60%,(2)20%,(3)20%という設定を用意しておく、そして、設定部14は、モデルに学習データを適用した結果、全信号が0.3%を超える場合はパターンB→パターンA→パターンCの順番で上記の配分パターンを推奨順(パターンBが最も推奨される配分パターン)に並べ、全信号が0.3%未満の場合はパターンC→パターンA→パターンBの順番で上記の配分パターンを推奨順(パターンCが最も推奨される配分パターン)に並べ、
図11に例示する提案画面300を生成し、表示装置2へ表示する。そして、ユーザが、上から推奨順に並べられた3つの配分パターンの中から、任意のパターンを選択し、OKボタンをクリックすると、設定画面の設定欄104b~016bに選択した配分パターンにて定められた割合が自動入力される。
【0059】
次に、ユーザは、モデルが警告を出す条件となる異常レベルの閾値を設定する(ステップS13)。次にユーザは設定した異常検知手法と学習データおよび異常検知条件の妥当性を検証する(ステップS15)。ステップS15で妥当性が確認されると、妥当性が確認されたモデルを実際の監視環境に配備する(ステップS16)。
【0060】
(効果)
以上説明したように、第二実施形態によれば、第一実施形態の効果に加え、MT法や推定手法における閾値、信号数に応じて加算する信号数および異常レベルの設定を自動で行うことができる。
【0061】
図12は、各実施形態に係る異常検知システムのハードウェア構成の一例を示す図である。コンピュータ900は、CPU901、主記憶装置902、補助記憶装置903、入出力インタフェース904、通信インタフェース905を備える。上述の異常検知装置10および他装置3は、コンピュータ900に実装される。そして、上述した各機能は、プログラムの形式で補助記憶装置903に記憶されている。CPU901は、プログラムを補助記憶装置903から読み出して主記憶装置902に展開し、当該プログラムに従って上記処理を実行する。また、CPU901は、プログラムに従って、記憶領域を主記憶装置902に確保する。また、CPU901は、プログラムに従って、処理中のデータを記憶する記憶領域を補助記憶装置903に確保する。
【0062】
異常検知装置10および他装置3の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各機能部による処理を行ってもよい。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、CD、DVD、USB等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また、このプログラムが通信回線によってコンピュータ900に配信される場合、配信を受けたコンピュータ900が当該プログラムを主記憶装置902に展開し、上記処理を実行しても良い。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0063】
以上のとおり、本開示に係るいくつかの実施形態を説明したが、これら全ての実施形態は、例として提示したものであり、発明の範囲を限定することを意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で種々の省略、置き換え、変更を行うことができる。これらの実施形態及びその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0064】
<付記>
実施形態に記載の異常検知装置、異常検知システム、異常検知方法およびプログラムは、例えば以下のように把握される。
【0065】
(1)第1の態様に係る異常検知装置10は、プラントの状態を示す複数の信号を取得する信号取得部11と、前記複数の信号のうち、その値が許容範囲(推定モデルによる推定値を中心とした偏差閾値(例えば3σ)の範囲)外となる前記信号の数に応じた異常レベル(重み付け)を設定する設定部14と、前記複数の信号を、それぞれの前記信号ごとに定められた前記許容範囲と比較して、前記許容範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定する異常判定部16、を有する。
これにより、異常値となった信号数に応じた異常レベルを設定し、異常レベルに基づいて異常と判定することで、例えば、変動の大きな信号が、たまたま異常値となった場合に異常と判定するような誤検知を抑制することができる。
【0066】
(2)第2の態様に係る異常検知装置10は、(1)の異常検知装置10であって、前記異常レベルを第1の異常レベルとすると、前記設定部14は、前記第1の異常レベルに対する重み付けである第1の重み付けと、前記複数の信号の少なくとも一部に基づいて前記プラントの異常を判定する判定モデル(MT法の単位空間)によって算出された前記プラントの異常の程度を示す第2の異常レベルに対する重み付け(例えば、MT法40%)である第2の重み付けをさらに設定し、前記異常判定部は、前記判定モデルに基づいて、前記第2の異常レベルをさらに算出し、前記第1の異常レベルに前記第1の重み付けを乗じた値と、前記第2の異常レベルに前記重み付けを乗じた値との和に基づいて、前記プラントの異常を判定する。
これにより、複数のモデルによって異常検知を行うことができ、各モデルに対して重みを設定することで、どのモデルによる異常検知を重視するかを設定することができる。
【0067】
(3)第3の態様に係る異常検知装置10は、(2)の異常検知装置10であって、前記設定部は、前記第1の異常レベルに基づいて前記プラントの異常を判定するか、前記第1の異常レベルと前記第2の異常レベルとに基づいて前記プラントの異常を判定するか、又は、前記第2の異常レベルに基づいて前記プラントの異常を判定するかの何れによって異常を判定するかを設定し、前記異常判定部は、前記第1の異常レベルに基づいて前記プラントの異常を判定することが設定された場合、前記第1の異常レベルに基づいて前記プラントの異常を判定し、前記第1の異常レベルと前記第2の異常レベルとに基づいて前記プラントの異常を判定することが設定された場合、前記第1の異常レベルおよび前記第2の異常レベルに基づいて前記プラントの異常を判定し、前記第2の異常レベルに基づいて前記プラントの異常を判定する。
これにより、例えば、(a)MT法、(b)推定手法、(c)MT法+推定手法の何れかで異常検知を行うことができる。
【0068】
(4)第4の態様に係る異常検知装置10は、(1)~(3)の異常検知装置10であって、前記複数の信号のうちの一部を説明変数とし、前記複数の信号のうちの一つを目的変数として、前記説明変数として設定された前記信号から前記目的変数として設定された前記変数の値を推定する推定モデルを構築する学習部、をさらに有し、前記設定部は、前記説明変数とする前記信号と、前記目的変数とする前記信号の設定を行う。
これにより、どの信号に基づいて異常判定を行い、どの信号を用いて異常判定に用いる信号を推定するかを設定することができ、例えば、推定精度が低い信号を推定するような状況を防ぐことができる。
【0069】
(5)第5の態様に係る異常検知装置10は、(1)~(4)の異常検知装置10であって、前記異常判定部による前記プラントの異常の判定結果を通知する異常通知部、をさらに有し、前記異常判定部は、前記判定結果を記憶部に記録し、前記異常通知部は、前記記憶部から前記判定結果を読み出して前記判定結果を出力する。
これにより、過去に発生した異常を照会することができ、検知した異常への対応をスムーズに実施することができる。
【0070】
(6)第6の態様に係る異常検知装置10は、(2)~(5)の異常検知装置10であって、前記設定部は、前記第2の異常レベルの閾値を、前記判定モデルに当該判定モデルの構築に用いた複数の学習データを入力したときに前記判定モデルによって算出された前記第2の異常レベルの標準偏差に基づいて、算出された前記第2の異常レベルの最大値が、(算出された前記第2の異常レベルの平均値+α×算出された前記第2の異常レベルの標準偏差)に含まれるようなαを算出し、(算出した前記α×算出された前記第2の異常レベルの標準偏差)によって計算する。
これにより、判定モデル(MT法)の閾値(MD閾値)を自動的に設定することができる。
【0071】
(7)第7の態様に係る異常検知装置10は、(1)~(6)の異常検知装置10であって、前記設定部は、前記許容範囲の大きさを、所定の推定モデルに当該推定モデルの構築に用いた複数の学習データを入力したときに前記推定モデルによって推定された前記信号の推定値と前記信号の実測値の偏差の標準偏差に基づいて、前記偏差の最大値が、(前記偏差の平均値+β×前記偏差の標準偏差)に含まれるようなβを算出し、(算出した前記β×前記偏差の標準偏差)によって計算する。
これにより、異常判定に用いる信号の閾値(設定画面100の設定欄102の偏差閾値)を自動的に設定することができる。
【0072】
(8)第8の態様に係る異常検知装置10は、(1)~(7)の異常検知装置10であって、前記設定部は、複数の前記信号の各々について、所定の推定モデルによって推定された前記信号の推定値と前記信号の実測値の偏差を計算し、複数の前記信号のうち、前記偏差の標準偏差が所定の閾値以上の前記信号と、前記閾値未満の前記信号と、に分類し、前記閾値以上の前記信号の数が前記閾値未満の前記信号の数より多い場合、前記閾値以上の前記信号の数が前記閾値未満の前記信号の数より少ない場合と比較して、同じ前記信号の数に対してより小さな異常レベルを設定する。
これにより、信号の異常レベルの配分パターン(設定画面100の設定欄104b~106bの値)を自動的に設定することができる。
【0073】
(9)第9の態様に係る異常検知装置10は、(1)~(8)の異常検知装置10であって、前記設定部は、所定の推定モデルに当該推定モデルの構築に用いた複数の前記信号についての複数のデータ点を有する学習データを入力したときに前記推定モデルによって推定された前記信号ごとの推定値と前記学習データに含まれる前記信号の実測値の偏差に基づいて、前記偏差が所定の第2閾値(3σ)を超える前記データ点の割合が所定値(0.3%)を超えるかどうかを前記信号ごとに判定し、前記所定値を超えた前記信号の数を算出して、算出した前記信号の数を、第1の前記許容範囲外となる前記信号の数である第1信号数として設定し、複数の前記信号の全体の信号数から前記第1信号数を減算した値を等分して端数を繰り上げた値を、第2の前記許容範囲外となる前記信号の数である第2信号数として設定し、前記許容範囲外となる前記信号の数が前記第1信号数以上で且つ前記第2信号数未満となったときの前記異常レベルには、前記プラントの異常を誤検知している可能性があることを考慮して定められた所定の値を設定する。
これにより、信号の異常レベルの配分パターン(設定画面100の設定欄104a、104bの値)を自動的に設定することができる。
【0074】
(10)第10の態様に係る異常検知システム20は、(1)~(9)の何れかに記載の異常検知装置10と、通知装置(他装置3)と、を含み、前記通知装置は、前記異常検知装置が検知した異常に係る情報を取得する取得部(入出力部31)と、通知対象とする異常の設定を受け付ける設定部32と、前記取得部が取得する異常に係る情報が、前記通知対象とする異常を含む場合に、前記通知対象とする異常を通知する通知部33と、を備える。
どのような異常を通知対象とするかを設定することで、所望の異常の発生を通知することができる。
【0075】
(11)第11の態様に係る異常検知方法は、プラントの状態を示す複数の信号を取得するステップと、前記複数の信号のうち、その値が許容範囲外となる前記信号の数に応じた異常レベルを設定するステップと、前記複数の信号を、それぞれの前記信号ごとに定められた前記許容範囲と比較して、前記許容範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定するステップと、を有する。
【0076】
(12)第12の態様に係る異常検知方法は、(11)の異常検知方法であって、前記プラントの異常を判定するステップにて、前記プラントが異常と判定された場合に前記異常に係る情報を取得するステップと、通知対象とする異常の設定を受け付けるステップと、前記異常に係る情報を取得するステップにて取得される前記異常に係る情報が、前記通知対象とする異常を含む場合に、前記通知対象とする異常を通知するステップと、をさらに有する。
【0077】
(13)第13の態様に係るプログラムは、コンピュータに、プラントの状態を示す複数の信号を取得するステップと、前記複数の信号のうち、その値が許容範囲外となる前記信号の数に応じた異常レベルを設定するステップと、前記複数の信号を、それぞれの前記信号ごとに定められた前記許容範囲と比較して、前記許容範囲外となる前記信号の数を算出し、算出した前記信号の数と前記異常レベルの設定とに基づいて、算出した前記信号の数に応じた前記異常レベルを算出し、算出した前記異常レベルに基づいて、前記プラントの異常を判定するステップと、を実行させる。
【符号の説明】
【0078】
10・・・異常検知装置
11・・・信号取得部
12・・・入力受付部
13・・・制御部
14・・・設定部
15・・・学習部
16・・・異常判定部
17・・・異常通知部
18・・・記憶部
20・・・異常検知システム
2・・・表示装置
3・・・他装置
31・・・入出力部
32・・・設定部
33・・・通知部
34・・・記憶部
900・・・コンピュータ
901・・・CPU
902・・・主記憶装置
903・・・補助記憶装置
904・・・入出力インタフェース
905・・・通信インタフェース