以下、本発明の実施形態および変形例を図面に基づいて説明する。図面においては同様な構成および機能を有する部分については同じ符号が付されており、下記説明では重複説明が省略される。
<1.異常予測システム>
<1−1.異常予測システムの概略構成>
図1は、一実施形態に係る異常予測システム100として機能する情報処理システム1の一例を概略的に示すブロック図である。
異常予測システム100は、例えば、監視の対象となる装置(監視対象装置とも言う)の状態に係る情報を用いて、監視対象装置における異常の発生を予測することができる。監視対象装置には、例えば、印刷装置および基板処理装置等の種々の装置が含まれ得る。異常予測システム100は、例えば、監視対象装置内および監視対象装置外の何れに位置していてもよい。
情報処理システム1は、例えば、コンピュータ等によって実現され、バスラインBu1を介して接続された、入力部2、出力部3、記憶部4、制御部5およびドライブ6を備えている。
入力部2は、例えば、情報処理システム1を使用するユーザーの動作等に応じた信号を入力することができる。入力部2には、例えば、ユーザーの操作に応じた信号を入力可能なマウスおよびキーボード等を含む操作部、ユーザーの音声に応じた信号を入力可能なマイク、ユーザーの動きに応じた信号を入力可能なセンサ、および外部の機器からの信号を入力可能な通信部等が含まれ得る。
出力部3は、各種情報を出力することができる。出力部3には、例えば、各種情報をユーザーが認識可能な態様で出力可能な表示部およびスピーカ、ならびに各種情報をデータの形式で出力可能な通信部等が含まれ得る。該表示部は、例えば、入力部2と一体化されたタッチパネルの形態を有していても良い。スピーカでは、各種情報が可聴的に出力され得る。通信部では、各種情報が情報処理システム1の外部に配された各種機器に対してデータの形式で出力され得る。該通信部は、例えば、通信回線を介して各種外部装置との間においてデータを授受することができる。
記憶部4は、各種の情報を記憶することができる。該記憶部4は、例えば、ハードディスクおよびフラッシュメモリ等の記憶媒体によって構成され得る。記憶部4では、例えば、1つの記憶媒体を有する構成、2つ以上の記憶媒体を一体的に有する構成、および2つ以上の記憶媒体を2つ以上の部分に分けて有する構成の何れが採用されても良い。
記憶部4には、例えば、プログラムP1およびその他の各種情報が記憶され得る。各種情報には、例えば、監視対象装置における異常の発生を予測するためのモデル(予測モデルともいう)を示す情報、および監視対象装置の状態に係る情報等が含まれ得る。監視対象装置の状態に係る情報には、例えば、監視対象装置の状態の変化および該監視対象装置への指令の入力のうちの少なくとも一方に属する1種類のイベントの発生に係る1つ以上の情報(イベント発生情報ともいう)が含まれる。記憶部4には、後述するメモリ5bが含まれても良い。
制御部5は、例えば、プロセッサーとして働く処理部5aおよび情報を一時的に記憶するメモリ5b等を含む。処理部5aとしては、例えば、中央演算部(CPU)等の電子回路が採用され、メモリ5bとしては、例えば、ランダムアクセスメモリ(RAM)等が採用され得る。制御部5において、例えば、記憶部4に記憶されているプログラムP1が処理部5aに読み込まれて実行されることで、情報処理システム1が異常予測システム100として機能し得る。制御部5における各種情報処理によって一時的に得られる各種情報は、適宜メモリ5b等に記憶され得る。
ドライブ6は、例えば、可搬性の記憶媒体RM1の脱着が可能な部分である。ドライブ6では、例えば、記憶媒体RM1が装着されている状態で、該記憶媒体RM1と制御部5との間におけるデータの授受が行われ得る。また、プログラムP1が記憶された記憶媒体RM1がドライブ6に装着されることで、記憶媒体RM1から記憶部4内にプログラムP1が読み込まれて記憶される態様が採用されても良い。
<1−2.異常予測システムの機能的な構成>
図2は、処理部5aで実現される異常予測システム100の機能的な構成の一例を概略的に示すブロック図である。図2には、処理部5aでプログラムP1の実行によって実現される異常を予測する処理(異常予測処理ともいう)に係る各種機能が例示されている。
図2で示されるように、処理部5aは、実現される機能的な構成として、取得部51と、記憶制御部52、モデル作成部53と、予測実行部54と、異常通知部55とを有している。これらの各部51〜55での処理におけるワークスペースとして、例えば、メモリ5bが使用される。
<1−2−1.取得部>
取得部51は、監視対象装置の状態に係る情報を取得することができる。該情報には、例えば、監視対象装置の状態に係る複数の情報が含まれる。監視対象装置の状態に係る複数の情報には、例えば、監視対象装置の状態の変化および監視対象装置への指令の入力のうちの少なくとも一方に属する、監視対象装置において発生した1つ以上のイベントの情報(イベント発生情報)が含まれる。
監視対象装置の状態の変化には、例えば、監視対象装置の動作の実行において生じる能動的なイベントの情報が含まれ得る。能動的なイベントには、例えば、処理の開始および完了、注意および警告の出力、障害およびエラー等の問題の報知、ならびに異常の発生等が含まれ得る。
ここで、例えば、監視対象装置が印刷機であれば、処理には、例えば、印刷処理およびクリーニング処理等が含まれ得る。注意および警告の対象には、例えば、メンテナンス時期の到来等が含まれ得る。問題には、例えば、印刷用紙の不足、インクの不足、紙を交換するためのドアの開放、および軸ずれ等の機械的なトラブル等が含まれ得る。異常には、例えば、紙詰まり、印刷の不良および印刷動作の不能等が含まれ得る。
また、例えば、監視対象装置が基板処理装置であれば、処理には、例えば、基板の洗浄処理および基板の乾燥処理等が含まれ得る。注意および警告の対象には、例えば、フィルターの交換時期の到来等が含まれる。問題には、例えば、洗浄液の残量の不足、洗浄液を交換するためのドアの開放およびフィルターの目詰まり等が含まれ得る。異常には、例えば、液漏れ、洗浄の不良、洗浄動作の不能等が含まれ得る。
監視対象装置への指令の入力には、例えば、監視対象装置における動作の受け付けにおいて生じる受動的なイベントの情報が含まれ得る。受動的なイベントには、例えば、入力部2における指令の入力等が含まれる。該指令の入力は、例えば、操作部に対するオペレータの操作に応じた信号の入力、および外部装置から通信部への信号の入力によって実現され得る。オペレータは、例えば、ヒトであっても人工知能等を有するヒト以外の存在であってもよい。また、該指令の入力は、監視対象装置における処理内容を規定するレシピに応じた信号の入力によって実現されてもよい。
ここで、例えば、監視対象装置が印刷機であれば、オペレータの操作には、例えば、印刷処理を開始するためのボタンの押下、および印刷条件を設定するためのボタンの操作等が含まれ得る。外部装置から通信部への信号の入力には、遠隔操作に応じた信号の入力等が含まれ得る。
また、例えば、監視対象装置が基板処理装置であれば、オペレータの操作には、例えば、洗浄を開始するためのボタンの押下、および洗浄条件を設定するためのボタンの操作等が含まれ得る。外部装置から通信部への信号の入力には、遠隔操作に応じた信号の入力等が含まれ得る。
監視対象装置の状態には、例えば、センサ等で取得される監視対象装置の状態を示すパラメータの測定値が全く含まれていない態様、および該測定値等が含まれている態様が考えられる。監視対象装置の状態を示すパラメータには、例えば、処理液の温度および流量ならびに基板の回転速度等が含まれ得る。測定値に基づく異常の検知は、例えば、測定値と閾値との比較によって実現され得る。
また、取得部51は、イベント発生情報の取得に応答して、該イベント発生情報を記憶制御部52に出力することができる。また、取得部51は、イベント発生情報の取得に応答して、該イベント発生情報の取得に係る信号をモデル作成部53および予測実行部54に出力することができる。
<1−2−2.記憶制御部>
記憶制御部52は、取得部51で取得された1つ以上のイベント発生情報を記憶部4に記憶させることができる。これにより、記憶部4には、監視対象装置における1以上のイベント発生情報が蓄積されたイベント履歴情報としてのデータベース(イベント履歴DBとも言う)4aが記憶され得る。つまり、イベント履歴DB4aには、1つ以上のイベント発生情報が含まれる。各イベント発生情報には、例えば、イベントが発生した時刻、発生したイベント名、イベントが発生した発生源およびその他のイベント毎の付随情報等が含まれ得る。付随情報には、例えば、ある指令に対する該指令を入力したオペレータを特定する情報、処理の開始に対する該処理の条件を示す情報、ならびに処理液の流量の異常に対する上限値または下限値との定性的または定量的な関係を示す情報等が含まれ得る。
オペレータを特定する情報は、例えば、オペレータ名あるいはオペレータ毎に与えられる識別情報(ID)の監視対象装置に対する入力等によって取得され得る。上限値または下限値との定性的な関係には、例えば、上限値を超えたこと等が含まれ得る。上限値または下限値との定量的な関係には、例えば、上限値をどの程度超えたのか等といった情報が含まれ得る。
図3および図4は、イベント履歴情報の具体例を示す図である。図3の例では、イベント履歴情報には、各イベントの発生について、イベントの発生時刻と、発生したイベントを示す識別情報(ID)と、イベントの発生時に出力部3で出力したメッセージ(イベントメッセージともいう)とが関連付けられた情報が蓄積されている。図4には、イベントを示すIDとイベントの内容との関係が示されている。
<1−2−3.モデル作成部>
モデル作成部53は、監視対象装置における異常の発生を予測するための予測モデルを作成することができる。モデル作成部53では、過去に発生した異常の発生前におけるイベントの発生状況から、予測モデルが作成される。このとき、例えば、記憶部4に記憶されている全ての期間についてのイベント発生情報が用いられてもよいし、一部の期間についてのイベント発生情報が用いられてもよい。つまり、全ての期間あるいは一部の期間が、予測モデルを作成するために、イベント発生情報が用いられる対象の期間(対象期間ともいう)となる。一部の期間が対象期間とされる場合には、対象期間は、例えば、年月、日時および時刻等を含む時間の情報に応じて決定されてもよいし、イベントの発生数に応じて決定されてもよい。予測モデルは、例えば、異常の種類毎に作成され得る。
図5は、モデル作成部53における機能的な構成の一例を概略的に示すブロック図である。図5で示されるように、モデル作成部53は、例えば、パラメータ設定部53a、トランザクション作成部53b,認識部53c、関連度算出部53d、選択部53e、抽出部53f、評価スコア算出部53g、仮条件設定部53h、比率算出部53i、検出条件設定部53jおよびモデル決定部53kを有している。
<1−2−3−1.パラメータ設定部>
パラメータ設定部53aは、予測モデルを用いて異常の発生をより精度良く予測することができるように、予測モデルを生成する際に用いられる1つ以上のパラメータ(モデルパラメータともいう)を最適な値に設定することができる。これにより、異常の発生をより精度よく予測することができるといった観点から、予測モデルが最適化される。
1つ以上のモデルパラメータには、例えば、認識部53cにおけるトランザクションの作成条件、および重み関数wt(t)等が含まれ得る。
トランザクションの作成条件には、特定期間の長さおよびパターンの採用数N(Nは2以上の自然数)等といった各種のパラメータが含まれ得る。
特定期間は、1つのトランザクションの作成の対象となる期間である。特定期間は、例えば、異常の発生前における期間である。具体的には、特定期間は、例えば、異常が発生したタイミングを基準とした、該異常が発生したタイミングの直前のある程度の幅を持った期間に設定される。ここで、異常の発生を誘引するイベントは、異常が発生するタイミングの直前のある程度の幅を持った期間に生じる場合がある。そこで、例えば、特定期間の長さが適宜調整されれば、異常の発生が、予測モデルを用いてより精度良く予測され得る。
パターンは、異常の発生としてのイベントとその他のイベントとの組合せを示すイベントのパターンである。パターンの採用数Nは、予測モデルの作成に用いるパターンとして採用するパターンの数である。
重み関数wt(t)は、関連度算出部53dにおける演算で用いられる時間と重みとの関係を示す関数である。ここでは、例えば、異常が発生するタイミングと該異常を誘引する他のイベントが発生するタイミングとの時間間隔と、異常の発生し易さとの間には、ある程度の相関関係がある場合がある。そこで、重み関数wt(t)が適宜調整されることで、異常の発生が、予測モデルを用いてより精度良く予測され得る。
ここで、1つ以上のモデルパラメータの調整による予測モデルの最適化は、例えば、モデルパラメータを変数として、検出スコアが極力大きくなるようなモデルパラメータを探索することで実現され得る。検出スコアとしては、例えば、異常の検出率から異常の誤検出率を減じたスコアが採用され得る。このような予測モデルの最適化は、例えば、遺伝的アルゴリズムおよびベイジアン最適化等の任意の手法が採用されることで実現され得る。
<1−2−3−2.トランザクション作成部>
トランザクション作成部53bは、記憶部4に記憶されたイベント履歴DB4aを参照して、対象期間に含まれる1つ以上の特定期間のそれぞれについて、一連の処理としての1つのトランザクションを形成することができる。一連の処理としての1つのトランザクションは、特定期間についての1つ以上のイベント発生情報によって形成される。つまり、トランザクション作成部53bでは、特定の異常が発生したタイミングを基準として時間を遡った特定期間における1つ以上のイベントから1つのトランザクションが作成される。
ここでは、特定期間は、例えば、特定の異常が発生したタイミングを基準とした期間となり得る。具体的には、例えば、特定の異常が発生したタイミングの直前において予め設定された数(例えば、3つ)のイベントが発生した期間が、特定期間となり得る。また、例えば、特定の異常が発生したタイミングの直前における予め設定された時間(例えば、30分間)が、特定期間とされてもよい。特定の異常は、作成の対象である予測モデルによって発生が予測される対象としての異常であればよい。
図6は、イベント履歴DB4aにおける情報の一例を簡略的に示す図である。図6では、時刻の経過に対して順に発生したイベントのイベント名が左から右に向かって順に記載されている。具体的には、図6には、時間的に順に発生したイベント名が順に列挙された文字列が示されている。図6では、イベントA、イベントB、イベントC、イベントEおよびイベントXが発生したことが示されている。具体的には、・・・,A,A,A,A,B,C,X,A,A,C,E,A,C,X,A,A,A,・・・の順にイベントが発生したことが示されている。イベントXは、特定の異常の発生を示す。
図7から図9は、トランザクション作成部53bによって作成されるトランザクションを例示する図である。ここでは、特定の異常の発生としてのイベントXを基準とした、イベントXの直前において予め設定された数(ここでは、3つ)のイベントが発生した期間が特定期間とされている。
図7には、図6で示された1回目の特定の異常の発生としての第1のイベントXTb1が発生したタイミングを基準とした特定期間について作成される第1トランザクションTr1が示されている。第1トランザクションTr1では、第1のイベントXTb1の発生直前にA,B,Cの順にイベントが発生したことが示されている。
図8には、図6で示された2回目の特定の異常の発生としての第2のイベントXTb2が発生したタイミングを基準とした特定期間について作成される第2トランザクションTr2が示されている。第2トランザクションTr2では、第2のイベントXTb2の発生直前にE,A,Cの順にイベントが発生したことが示されている。
図9には、3回目の特定の異常の発生としての第3のイベントXTb3が発生したタイミングを基準とした特定期間について作成される第3トランザクションTr3が示されている。第3トランザクションTr3では、第3のイベントXTb3の発生直前にB,A,Cの順にイベントが発生したことが示されている。
<1−2−3−3.認識部>
認識部53cは、イベント履歴DB4aを構築しているイベント履歴情報のうち、対象期間に含まれる1つ以上の特定期間のそれぞれについての少なくとも1つのイベント発生情報をイベントの種類毎に認識することができる。認識部53cでは、例えば、トランザクション作成部53bで作成された各トランザクションについて、特定の異常としてのイベントXに対して、トランザクションに含まれるイベント名が関連付けられた、イベントのパターンが認識され得る。
また、認識部53cでは、特定の異常についての複数のトランザクションについて、頻出するイベントが抽出されてもよい。複数のトランザクションから頻出するイベントを抽出する処理は、例えば、パターンマイニング等によって実現され得る。これにより、例えば、特定の異常についての複数のトランザクションにおいて、出現回数が多い方から所定数(例えば、3つ)のイベントが、頻出するイベントとして抽出され得る。そして、例えば、特定の異常としてのイベントXに対して、頻出するイベント名が関連付けられた、イベントのパターンが、頻出するイベントのパターン(頻出パターンともいう)として認識され得る。ここで、例えば、認識された頻出パターンが予測モデルの作成に採用されれば、予測モデルの作成に係る演算量が低減され得る。所定数は、予測モデルの作成に用いられるパターンの採用数Nとなる。これにより、予測モデルが容易に作成され得る。
例えば、特定の異常としてのイベントXに対する複数のトランザクションにおいて、イベントA,C,B,Eの順に、イベント名が出現している回数が多い場合には、出現回数が多い方から3つのイベントA,C,Bが認識され得る。このときイベントAに係る頻出パターン(A//X)、イベントCに係る頻出パターン(C//X)およびイベントBに係る頻出パターン(B//X)が認識され得る。
<1−2−3−4.関連度算出部>
関連度算出部53dは、認識部53cにおける認識結果に基づいて、イベントの種類毎に、監視対象装置における特定の異常の発生に対してイベントが関連する度合いを示す数値(関連度ともいう)を算出することができる。例えば、このような関連度が用いられれば、監視対象装置において異常が発生する前に実際に生じたイベントの発生状況から、予測モデルが作成され得る。その結果、監視対象装置の状態を計測するセンサの数に拘わらず、異常の発生が精度良く予測され得る。
例えば、対象期間に、特定の異常に係る2以上の特定期間が含まれる場合を想定する。このとき、例えば、関連度算出部53dにおいて、認識部53cにおける認識結果に基づいて、イベントの種類毎に、2以上の特定期間のうちの対象となるイベントが発生した特定期間の割合に係る値が、関連度として算出される態様が考えられる。このような態様が採用されれば、例えば、特定の異常の発生に対してイベントの発生が関連している度合いを示す関連度が、容易に算出され得る。
具体的には、例えば、特定の異常の発生に対する各イベントの関連度として、次の式(1)で示される支持度Dsが採用される態様が採用され得る。ここでは、支持度Dsは、対象となるイベントが存在するトランザクションの数Tpが、トランザクション作成部53bで作成された全てのトランザクションの数Taで除されることで算出され得る。
ここで、例えば、特定の異常としてのイベントXについて、トランザクション作成部53bよって第1〜3トランザクションTr1〜Tr3が作成される場合を想定する。ここでは、図7から図9で示されるように、例えば、イベントAおよびイベントCのそれぞれは、第1〜3トランザクションTr1〜Tr3の全てに含まれている。例えば、イベントBは、第1〜3トランザクションTr1〜Tr3のうち、第1および第3トランザクションTr1,Tr3に含まれている。例えば、イベントEは、第1〜3トランザクションTr1〜Tr3のうち、第1トランザクションTr2のみに含まれている。このため、例えば、イベントAに係るパターン(A//X)の支持度Dsは、1(=Tp/Ta=3/3)と算出される。イベントCに係るパターン(C//X)の支持度Dsも、1(=Tp/Ta=3/3)と算出される。イベントBに係るパターン(B//X)の支持度Dsは、2/3(=Tp/Ta)と算出される。イベントEに係るパターン(E//X)の支持度Dsは、1/3(=Tp/Ta)と算出される。
なお、各イベントに係るパターンの支持度Dsとして、例えば、分数ではなく、小数または百分率等、その他の割合を示す値が採用されてもよいし、割合を示す値に予め設定されたルールに応じた係数が乗じられた値等、その他の割合に係る値が採用されてもよい。
ところで、特定の異常の発生に関連する度合いが強いイベントは、特定の異常が発生したタイミングに対して、より近いタイミングで発生している傾向がある場合がある。この場合には、関連度算出部53dは、例えば、支持度Dsを算出する際に、各特定期間について、イベントの種類毎に、特定の異常が発生したタイミングと、イベントが発生したタイミングとの時間間隔に応じた重み付けの演算(重み付け演算ともいう)を行ってもよい。これにより、例えば、特定の異常が発生したタイミングに対してより近いタイミングで発生したイベントの関連度が相対的に高まり得る。これにより、監視対象装置の状態を計測するセンサの数に拘わらず、異常の発生が精度良く予測され得る。
重み付け演算としては、例えば、特定の異常が発生したタイミングとの時間差が増加する程、重みが減少する傾向を示す重み関数wt(t)を用いた演算が考えられる。但し、特定の異常の発生を誘引するイベントが発生したタイミングから暫く時間が経過した後に、特定の異常が発生する場合がある。この場合、特定の異常の発生を誘引するイベントが発生した後であって特定の異常が発生する前に、他のイベントが発生し得る。そこで、特定の異常が発生する直前のごく短い期間については、重みが零となるような重み関数wt(t)が設定されてもよい。
図10は、重み関数wt(t)によって規定される、特定の異常の発生時からの時間差と重みとの関係を例示する図である。図10では、特定の異常の発生時からの時間差と重みとの関係が太い曲線で描かれている。
このような重み関数wt(t)が採用される場合には、各イベントに係るパターンの支持度Dsは、例えば、次の式(2)および式(3)によって算出され得る。
上式(2)および上式(3)は、対象期間におけるトランザクションの数Ta、i番目のトランザクションに係る重みの平均Wt(i)、トランザクション内における対象としてのイベントの発生件数Ntおよび時間差tjによって規定される。時間差tjは、1つのトランザクション内における特定の異常の発生時とj番目の対象としてのイベントの発生時との時間間隔を示す。
ここで、トランザクション作成部53bによって、対象期間に含まれる2つの特定期間について2つのトランザクションTr01,Tr02が作成される場合を想定する。
図11は、トランザクションTr01において特定の異常の発生としてのイベントXTb01の発生時と各イベントの発生時との時間的な関係を例示する図である。図12は、トランザクションTr02において特定の異常の発生としてのイベントXTb02の発生時とイベントの発生時との時間的な関係を例示する図である。
図11のトランザクションTr01は、特定の異常の発生時を基準とした2つの時間差t1,t3のタイミングにおいてイベントAが発生し、特定の異常の発生時を基準とした1つの時間差t2のタイミングにおいてイベントCが発生したことを示している。図12のトランザクションTr02は、特定の異常の発生時を基準とした1つの時間差t4のタイミングにおいてイベントCが発生し、特定の異常の発生時を基準とした1つの時間差t5のタイミングにおいてイベントAが発生したことを示している。
図13は、重み付けによる支持度Dsの算出例を示す図である。ここでは、イベントAに係るパターン(A//X)については、例えば、トランザクションTr01(図11)に係る重みの平均Wtが0.6と算出され、トランザクションTr02(図12)に係る重みの平均Wtが0.4と算出され、支持度Dsは0.5と算出される。また、イベントCに係るパターン(C//X)については、例えば、トランザクションTr01(図11)に係る重みの平均Wtが0.7と算出され、トランザクションTr02(図12)に係る重みの平均Wtが0.7と算出され、支持度Dsは0.7と算出される。このように、例えば、トランザクション内に出現するイベントAの回数がイベントCの回数よりも多いにも拘わらず、イベントCの方が、支持度Dsが大きくなる場合がある。
ところで、例えば、監視対象装置において、異常の発生とは無関係に頻繁に発生するイベントがあれば、該イベントが、全てのトランザクションにおいて出現している可能性が高い。このため、異常の発生とは無関係に頻繁に発生するイベントに関する関連度を低下させるべき場合がある。このとき、例えば、対象期間において、特定の異常に係る2以上の特定期間が含まれる場合を想定する。この場合には、関連度算出部53dは、例えば、認識部53cにおける認識結果に基づき、イベントの種類毎に、上記支持度Dsと、対象のイベントの重要度Dtとに基づいて関連度Drを算出してもよい。支持度Dsとしては、上述したように、例えば、2以上の特定期間のうちの対象のイベントが発生した特定期間の割合に係る値が採用され得る。重要度Dtとして、例えば、対象期間において対象のイベントが発生した回数のうちの2以上の特定期間において対象のイベントが発生した回数の割合に係る値が採用され得る。これにより、例えば、特定の異常の発生に対してイベントの発生が関連している度合いを示す関連度Drが、容易かつ精度良く算出され得る。
具体的には、例えば、重要度Dtは、次の式(4)によって算出され得る。ここでは、重要度Dtは、トランザクション作成部53bで作成された全てのトランザクションに含まれている対象のイベントに係るイベント発生情報の数Natが、対象期間において対象のイベントが発生した全ての件数Naで除されることで算出され得る。
例えば、イベントAについて、トランザクション作成部53bで作成された第1〜3トランザクションTr1〜Tr3に含まれている対象のイベントAに係るイベント発生情報の数Natが3であり、対象期間において対象のイベントAが発生した全ての件数Naが10件である場合を想定する。この場合、イベントAについての重要度Dtは、0.3(=3/10)と算出される。また、例えば、イベントCについて、第1〜3トランザクションTr1〜Tr3に含まれている対象のイベントCに係るイベント発生情報の数Natが3であり、対象期間において対象のイベントCが発生した全ての件数Naが3件である場合を想定する。この場合、イベントCについての重要度Dtは、1(=3/3)と算出される。
なお、各イベントに係る重要度Dtとして、例えば、小数および分数以外の百分率等、その他の割合を示す値が採用されてもよいし、割合を示す値に予め設定されたルールに応じた係数が乗じられた値等、その他の割合に係る値が採用されてもよい。
そして、例えば、関連度Drは、次の式(5)によって算出され得る。ここでは、関連度Drは、支持度Dsに重要度Dtが乗じられることで算出され得る。
例えば、イベントAについて、支持度Dsが0.5であり、重要度Dtが0.3であれば、関連度Drは、0.15(=0.5×0.3)と算出される。また、例えば、イベントCについて、支持度Dsが0.7であり、重要度Dtが1であれば、関連度Drは、0.7(=0.7×1)と算出される。
なお、各イベントに係る関連度Drは、例えば、支持度Dsに重要度Dtのn乗(nは任意の正の数)を乗じた値等、支持度Dsと重要度Dtとに基づいて算出され得る値であればよい。
<1−2−3−5.選択部>
選択部53eは、関連度算出部53dによって算出されたイベントの種類毎の関連度Drのうち、予め設定されたルールに基づいた数のイベントについての関連度Drを選択することができる。予め設定されたルールに基づく数のイベントとしては、例えば、関連度Drが高い方からN個(Nは2以上の自然数)のイベントが採用され得る。ここで特定の異常に対して採用されるイベントの数Nは、パターンの採用数に相当する。
また、選択部53eは、選択した関連度Drを、予測モデルを構成する候補として、記憶部4に選択的に記憶することができる。予測モデルは、例えば、後述する異常の発生を予測する際に、予兆スコアの算出に用いられる。これにより、例えば、異常の発生に対して関連する度合いの低いイベントについての関連度を用いることなく、予兆スコアが算出され得る。これにより、例えば、関連度を記憶する記憶部の容量の低減、および予測モデルに基づく異常の発生の予測に係る演算量の低減が図られ得る。
なお、例えば、選択部53eで選択されなかった関連度は0とされてもよい。また、例えば、関連度算出部53dで算出されたイベントの種類毎の関連度がそのまま予測モデルを構成する候補とされてもよい。
<1−2−3−6.抽出部>
抽出部53fは、対象期間のうちの特定時間における監視対象装置の状態に係る情報群を、記憶部4に記憶されたイベント履歴DB4aから抽出することができる。情報群は、1種類以上のイベントの発生に係る1つ以上のイベント発生情報を含む。ここで、特定時間は、例えば、特定期間の長さに対応する時間に設定される。この場合、例えば、特定時間が、特定期間と同様に、予め設定された数(例えば、3つ)のイベントが発生した時間に設定される。
ここでは、対象期間について、各イベントが発生したタイミングを基準として、特定時間が設定され得る。例えば、図6のイベント履歴DB4aについては、抽出部53fによって、イベント履歴DB4aから相対的に前のタイミングで生じた3つのイベントA,A,Aに係る3つのイベント発生情報によって構成される1つの情報群が抽出される。その後、1つのイベントずつずれた、3つのイベントA,A,A、3つのイベントA,A,B、3つのイベントA,B,C、・・・、3つのイベントA,A,Aのそれぞれに係る3つのイベント発生情報によって構成される1つの情報群として抽出される。ここで、1つの情報群は、一連の処理としての1つのトランザクションに相当する。
<1−2−3−7.評価スコア算出部>
評価スコア算出部53gは、抽出部53fで抽出された各情報群について、該情報群におけるイベントの種類毎のイベント発生情報の存在頻度と、関連度算出部53dでイベントの種類毎に算出された関連度Drとに基づいて、評価スコアを算出することができる。評価スコアは、監視対象装置における特定の異常の生じ易さを示す評価用の指標である。
例えば、T番目(Tは自然数)の情報群についての評価スコアSは、次の式(6)によって算出され得る。ここでは、T番目(Tは自然数)の情報群についての評価スコアSは、N個のパターンについて、x番目(xは1からNの自然数)のパターンに係る関連度Dr(x)と、T番目の情報群におけるx番目のパターンの存在頻度Nt(x)との積を積算することで算出され得る。
例えば、特定の異常の発生に係るイベントXについて、イベントAに係るパターン(A//X)の関連度Drが0.15、イベントCに係るパターン(C//X)の関連度Drが0.7、イベントBに係るパターン(B//X)の関連度Drが0.1である場合を想定する。この場合、T番目の情報群に、イベントAの2つのイベント発生情報、およびイベントCの1つのイベント発生情報が含まれていれば、T番目の情報群に係る評価スコアSは、1.0(=0.3+0.7+0(=0.15×2+0.7×1+0.1×0))と算出される。ここでは、例えば、評価スコアSが大きい程、特定の異常が発生し易い状況にあると言える。なお、例えば、評価スコアSが上記評価スコアの逆数で示されるような場合には、評価スコアSが小さい程、特定の異常が発生し易い状況にあると言える。
図14は、時間の経過に対する評価スコアの変動の一例を示す図である。図14では、横軸が時刻を示し、縦軸が評価スコアを示しており、抽出部53fで抽出された各情報群についてのイベントの発生時刻と評価スコアSとの関係が太線でつながれた折れ線グラフが示されている。ここでは、例えば、各情報群についてのイベントの発生時刻が、各情報群についての時間的に最後のイベントが発生した時刻とされている。
<1−2−3−8.仮条件設定部>
仮条件設定部53hは、評価スコアSが、特定の異常が発生する前に満たすべき仮の条件(仮条件ともいう)を設定することができる。仮条件としては、例えば、評価スコアSが閾値を超える条件等、が考えられる。
図14には、特定の異常の発生としてイベントXがそれぞれ発生した4つの時刻Tx1〜Tx4が例示されている。また、図14には、評価スコアが閾値Vthを超えた4つの時刻Tp1〜Tp4が例示されている。
<1−2−3−9.比率算出部>
比率算出部53iは、評価スコアSが、仮条件を満たしたそれぞれのタイミングについて、該タイミングから予め設定された時間が経過するまでの期間に、特定の異常が生じた比率(検出率ともいう)を算出することができる。また、比率算出部53iは、評価スコアSが、仮条件を満たしたそれぞれのタイミングについて、該タイミングから予め設定された時間が経過するまでの期間に、特定の異常が生じなかった比率(誤検出率)を算出することができる。
ここで、予め設定された時間は、例えば、トランザクション作成部53bで作成された1つのトランザクションに対応する特定期間の長さT0に設定され得る。図14には、予め設定された時間T0が示されている。
ところで、図14の例では、時刻Tx1で発生した特定の異常の発生としてのイベントXについては、評価スコアSが閾値Vthを超えた時刻Tp1から時間T0が経過するまでの期間に、イベントXの発生時刻Tx1が存在している。このようなケースを、評価スコアSによって特定の異常の発生としてのイベントXが生じる予兆を正しく検出することができたケースとする。また、図14の例では、時刻Tx3で発生した特定の異常の発生としてのイベントXについては、発生時刻Tx3よりも時間T0前から発生時刻Tx3に至るまでの時間帯に、評価スコアSが閾値Vthを超えた時刻が存在していない。このようなケースを、評価スコアSによって特定の異常の発生としてのイベントXが生じる予兆を検出することができなかったケースとする。さらに、図14の例では、評価スコアSが閾値Vthを超えた時刻Tp3から時間T0が経過するまでの期間に、特定の異常の発生としてのイベントXが生じていない。このようなケースを、評価スコアSによって特定の異常の発生としてのイベントXが生じる予兆を誤って検出したケースとする。
ここで、例えば、評価スコアSの変動と閾値Vthとの比較によって、特定の異常のすべての発生回数(総発生回数ともいう)のうち、特定の異常が生じる予兆を正しく検出することができた回数(検出回数ともいう)の割合が、検出率として算出され得る。図14の例では、検出率は、0.75(=3/4=(検出回数/総発生回数))と算出される。また、例えば、評価スコアSの変動と閾値Vthとの比較によって、特定の異常が生じる予兆を検出した全ての回数(総検出回数ともいう)のうち、特定の異常が生じる予兆を誤って検出した回数(誤検出回数ともいう)の割合が、誤検出率として算出され得る。図14の例では、誤検出率は、0.25(=1/4=(誤検出回数/総検出回数))と算出される。
<1−2−3−10.検出条件設定部>
検出条件設定部53jは、仮条件設定部53hによって仮条件を変化させた際に、検出率から誤検出率を減じた値(検出スコアともいう)が最も大きくなるときの仮条件に応じて、特定の異常が発生する予兆を検出するための条件(検出条件ともいう)を設定することができる。仮条件の変化は、例えば、予め準備された数の仮条件を順に適用することで実現され得る。ここでは、例えば、最適化した仮条件を検出条件として設定することができる。これにより、例えば、特定の異常が発生する予兆を検出することができる比率(ここでは、検出率)が高まり、特定の異常が発生する予兆を誤って検出する比率(ここでは、誤検出率)が低下し得る。その結果、異常の発生が精度良く予測され得る。
図15は、検出率および誤検出率と閾値Vthとの関係を例示する図である。図15では、横軸が閾値を示し、縦軸が比率を示す。また、図15では、太い実線で描かれた折れ線が検出率と仮条件を規定する閾値Vthとの関係の一例を示し、太い破線で描かれた折れ線が誤検出率と閾値Vthとの関係の一例を示している。図15で示されるように、検出率および誤検出率は、閾値Vthの増減に応じて変動し得る場合がある。
図16は、閾値の最適値の算出についての一例を示す図である。図16では、横軸が閾値を示し、検出スコアを示す。また、図16では、検出率から誤検出率を減じた値(検出スコア)と仮条件を規定する閾値Vthとの関係の一例が、太い実線で描かれた折れ線で示されている。図16で示されるように、閾値Vthの変化に対して、検出スコアがピークを示している。このため、検出条件設定部53jでは、例えば、検出スコアが最大となる閾値Vthが、特定の異常が発生する前に評価スコアSが満たすべき検出条件を規定する値として設定され得る。これにより、例えば、最適化された仮条件が検出条件として設定され得る。
ここでは、例えば、パラメータ設定部53aによって、1つ以上のモデルパラメータを変化させ、検出スコアが最大となるように、1つ以上のモデルパラメータが最適化され得る。つまり、1つ以上のモデルパラメータの調整による予測モデルの最適化が実現され得る。
<1−2−3−11.モデル決定部>
モデル決定部53kは、予測モデルを決定することができる。ここでは、例えば、モデルパラメータが最適化された際における、予測モデルを構成する候補としての関連度が、予測モデル4bを構成する関連度として決定され得る。また、このとき、検出条件設定部53jにおいて設定された検出条件が、予測モデルを構成する情報として採用される。また、予測モデルには、例えば、上記式(6)で示されたような算出式が含まれていてもよい。モデル決定部53kで決定された、予測モデル4bは、記憶部4に記憶される。
なお、モデル作成部53における予測モデル4bの作成は、例えば、予め設定された条件を満たせば、実行されてもよい。予め設定された条件には、例えば、入力部2に対する予め設定された信号の入力、予め設定された時間の経過、および特定の異常の発生等といった種々の条件のうちの少なくとも1つの条件が含まれ得る。特定の異常の発生は、取得部51によって特定の異常に係るイベント発生情報が取得されることで認識され得る。このような場合には、モデル作成部53において新たな予測モデル4bが作成される度に、記憶部4に記憶される予測モデル4bが新たな予測モデル4bに更新される。
<1−2−4.予測実行部>
予測実行部54は、予測モデル4bに基づいて、監視対象装置における異常の発生を予測することができる。図17は、予測実行部54における機能的な構成の一例を示すブロック図である。図17で示されるように、予測実行部54は、例えば、情報群取得部54a、予兆スコア算出部54bおよび判定部54cを有している。
<1−2−4−1.情報群取得部>
情報群取得部54aは、監視対象装置の状態に係る情報群を取得することができる。該情報群には、例えば、監視対象装置の状態の変化および該監視対象装置への指令の入力のうちの少なくとも一方に属する1種類以上のイベントの発生に係る1つ以上の情報(イベント発生情報)が含まれる。
情報群取得部54aでは、例えば、予め設定された条件を満たしたタイミング(取得タイミングともいう)で、記憶部4のイベント履歴DB4aから情報群が取得され得る。ここで、取得タイミングとしては、例えば、イベント発生情報を取得したことを示す信号が取得部51から予測実行部54に入力されたタイミングが考えられる。なお、取得タイミングは、例えば、特定の種類のイベントの発生に係るイベント発生情報を取得したことを示す信号が取得部51から予測実行部54に入力されたタイミング、予め設定された時間が経過したタイミング、および乱数の発生に応じたランダムなタイミングの何れのタイミングとされてもよい。
また、情報群取得部54aで取得される1つの情報群は、例えば、イベント履歴DB4aに蓄積されている1以上のイベント発生情報のうち、取得タイミングを基準とした直前期間において生じたイベントに係る1以上のイベント発生情報を含む。直前期間は、取得タイミングを基準とした該取得タイミングの直前の特定時間の期間である。特定時間は、上述したように、例えば、予測モデルの作成における特定期間の長さに対応する時間に設定される。この場合、例えば、特定時間が、特定期間と同様に、予め設定された数(例えば、3つ)のイベントが発生した時間に設定される。ここで、情報群取得部54aで取得される各情報群は、一連の処理としての1つのトランザクションに相当する。例えば、直前期間において生じた3つのイベント(例えば、イベントA,A,A等)に係るイベント発生情報が、イベント履歴DB4aから1つの情報群(1つのトランザクション)として取得され得る。
<1−2−4−2.予兆スコア算出部>
予兆スコア算出部54bは、情報群取得部54aで取得された1つの情報群におけるイベントの種類毎のイベント発生情報の存在頻度と、イベントの種類毎の関連度とに基づいて、予兆スコアを算出することができる。ここで、関連度は、例えば、記憶部4に記憶されている予測モデル4bに含まれており、監視対象装置における特定の異常の発生に対してイベントが関連する度合いを示す。予兆スコアは、監視対象装置において、特定の異常が発生する予兆に係る指標である。
例えば、直前期間の情報群についての予兆スコアScは、上記式(6)に対応する次の式(7)によって算出され得る。ここでは、予兆スコアScは、N個のパターンについて、x番目(xは1からNの自然数)のパターンに係る関連度Dr(x)と、直前期間の情報群におけるx番目のパターンの存在頻度Nr(x)との積を積算することで算出され得る。
例えば、特定の異常の発生に係るイベントXについて、イベントAに係るパターン(A//X)の関連度Drが0.15、イベントCに係るパターン(C//X)の関連度Drが0.7、イベントBに係るパターン(B//X)の関連度Drが0.1である場合を想定する。この場合、例えば、直前期間の情報群に、イベントAの1つのイベント発生情報、イベントCの1つのイベント発生情報、イベントBの1つのイベント発生情報が含まれていれば、直前期間の情報群に係る予兆スコアScは、0.95(=0.15+0.7+0.1(=0.15×1+0.7×1+0.1×1))と算出される。ここでは、予兆スコアScが大きい程、特定の異常が発生し易い状況にあると言える。なお、例えば、予兆スコアScが上記予兆スコアの逆数で示されるような場合には、予兆スコアScが小さい程、特定の異常が発生し易い状況にあると言える。
なお、例えば、異常の種類毎に予測モデル4bが存在している場合には、予兆スコア算出部54bが、異常の種類毎に予兆スコアScを算出してもよい。
<1−2−4−3.判定部>
判定部54cは、予兆スコア算出部54bで算出された予兆スコアScが、予め設定された検出条件を満たすか否か判定することができる。ここで、検出条件は、例えば、予測モデル4bに含まれている。予め設定された検出条件を満たす場合には、例えば、予兆スコアScが、検出条件を既定する閾値Vthを超える場合が含まれる。この場合、判定部54cは、例えば、予兆スコアScが、閾値Vthを超えれば、特定の異常が発生する予兆があるものと判断することができる。これにより、監視対象装置の状態を計測するセンサの数に拘わらず、異常の発生が予測され得る。
そして、判定部54cは、例えば、予兆スコアScが、検出条件を満たしていれば、特定の異常が発生する予兆があるものとして、異常通知部55に特定の信号を送信することができる。特定の信号としては、例えば、特定の異常が発生する予兆がある旨を示す信号、あるいは特定の異常が発生する予兆があることまたは特定の異常の発生が予想されることに対応する予め設定された信号等が採用され得る。
なお、例えば、予兆スコアScが、一旦検出条件を満たした後に、検出条件を満たさなくなった場合には、判定部54cは、特定の異常が発生する予兆が収まったものとして、異常通知部55に所定の信号を送信してもよい。
また、例えば、異常の種類毎に予測モデル4bが存在している場合には、判定部54cでは、異常の種類毎に予兆スコアScが、予め設定された検出条件を満たすか否か判定してもよい。このとき、判定部54cから異常通知部55に送信される信号は、例えば、異常の種類毎に異なる信号であってもよいし、異常の分類毎に異なる信号であってもよいし、異常の種類に拘わらず同一の信号であってもよい。
<1−2−5.異常通知部>
異常通知部55は、判定部54cから入力される特定の信号に応答して、出力部3によって、特定の異常が発生し得る状況である旨を示す情報を出力させることができる。つまり、出力部3は、判定部54cによって予兆スコアScが検出条件を満たすものと判定されたことに応答して、特定の異常が発生し得る状況である旨を示す情報を出力することができる。
ここで、出力部3による情報の出力には、例えば、表示部における可視的な情報の出力、スピーカによる可聴的な情報の出力、通信部による外部の機器に対するデータの出力等が含まれる。外部の機器に対するデータの出力には、例えば、メールによる通知等が含まれる。これにより、例えば、監視対象装置において特定の異常が生じ得る状況であることが対象者に報知され得る。これにより、例えば、報知を受けた者が適切な対応を行うことで、特定の異常の発生が回避され得る。
そして、例えば、出力部3によって出力される情報に、予兆スコアの算出に用いられたイベント発生情報も含ませれば、報知を受けた者は、特定の異常が生じる予兆の内容を把握した上で、適切な対応を行うことが可能となり得る。その結果、特定の異常が生じるリスクの低減が図られ得る。
ここでは、例えば、予兆スコアScが検出条件を満たしている間は、表示部における可視的な情報の出力およびスピーカによる可聴的な情報の出力が継続的に行われてもよい。一方、予兆スコアScが、一旦検出条件を満たした後に、検出条件を満たさなくなった場合には、表示部における可視的な情報の出力およびスピーカによる可聴的な情報の出力が終了されてもよい。
<1−3.異常予測システムの動作>
<1−3−1.予測モデルを作成する動作>
図18は、予測モデルの作成に係る動作フローの一例を示す流れ図である。本動作は、例えば、異常予測システム100が起動されることで開始され得る。
図18のステップS1では、例えば、取得部51によって、特定の異常が発生したか否かが判定される。ここでは、取得部51が、特定の異常の発生に係るイベント発生情報を取得するまで、特定の異常が発生したか否かの判定が繰り返される。そして、特定の異常が発生したものと判定されれば、ステップS2に進む。そして、ステップS2からステップS13の処理が行われることで、予測モデルが作成される。つまり、特定の異常の発生がトリガーとされて、予測モデルの作成が開示される。
ステップS2では、パラメータ設定部53aによって、モデルパラメータが設定あるいは変更される。ここで、ステップS1からステップS2に進んできた場合には、モデルパラメータが新規に設定される。一方、ステップS13からステップS2に戻ってきた場合には、モデルパラメータが変更される。
ステップS3では、トランザクション作成部53bによって、イベント履歴DB4aを構築しているイベント履歴情報のうち、対象期間に含まれる1つ以上の特定期間のそれぞれについて、一連の処理としての1つのトランザクションが形成される。
ステップS4では、認識部53cによって、イベント履歴DB4aを構築しているイベント履歴情報のうち、対象期間に含まれる1つ以上の特定期間のそれぞれについての少なくとも1つのイベント発生情報がイベントの種類毎に認識される。ここでは、例えば、ステップS3で作成された各トランザクションについて、特定の異常としてのイベントに対して、トランザクションに含まれるイベント名が関連付けられた、イベントのパターンが認識される。
ステップS5では、関連度算出部53dによって、ステップS4における認識結果に基づいて、イベントの種類毎に、監視対象装置における特定の異常の発生に対してイベントが関連する度合いを示す関連度が算出される。
ステップS6では、選択部53eによって、ステップS5で算出されたイベントの種類毎の関連度のうち、予め設定されたルールに基づいた数のイベントについての関連度が選択される。ここで選択された関連度は、例えば、予測モデルを構成する候補として、記憶部4に選択的に記憶される。これにより、予測モデルの候補が作成される。
ステップS7では、抽出部53fによって、対象期間のうちの各特定時間における監視対象装置の状態に係る情報群としてのトランザクションが、記憶部4に記憶されたイベント履歴DB4aから抽出される。
ステップS8では、評価スコア算出部53gによって、ステップS7で抽出された各情報群(各トランザクション)について、情報群おけるイベントの種類毎のイベント発生情報の存在頻度と、ステップS5でイベントの種類毎に算出された関連度とに基づいて、評価スコアSが算出される。
ステップS9では、仮条件設定部53hによって、評価スコアSが特定の異常が発生する前に満たすべき仮条件を規定する閾値が設定される。ここでは、例えば、ステップS8からステップS9に進んでくると、予め準備された数の仮条件のうちの初期値が仮条件として設定される。そして、例えば、ステップS11からステップS9に戻ってくるたびに、予め準備された数の仮条件のうち、初期値を除くその他の仮条件が順に設定される。
ステップS10では、比率算出部53iによって、ステップS8で算出された評価スコアSが、ステップS9で設定された仮条件を満たした各タイミングについて、該タイミングから予め設定された時間が経過するまでの期間に、特定の異常が生じた検出率と特定の異常が生じなかった誤検出率とが算出される。
ステップS11では、仮条件設定部53hによって、仮条件(例えば、閾値)の変化が完了したか否か判定される。ここでは、例えば、予め準備された数の仮条件のうちの全ての仮条件に設定されるまで、ステップS9からS11の処理が繰り返される。そして、例えば、予め準備された数の仮条件の全てに設定されれば、ステップS12に進む。
ステップS12では、検出条件設定部53jによって、ステップS9からステップS11で仮条件を変化させた際に算出された検出率から誤検出率を減じた検出スコアが最大となる仮条件に応じて、特定の異常が発生する予兆を検出するための検出条件(例えば、閾値)が設定される。
ステップS13では、パラメータ設定部53aによって、1以上のモデルパラメータの調整による予測モデルの最適化が完了したか否かが判定される。ここでは、例えば、ステップS13による判定の回数が、予め設定された回数に到達していれば、予測モデルの最適化が完了したものと判定され得る。また、ステップS12で算出される検出スコアの最大値が、予め設定された算出回数において変化しなくなれば、予測モデルの最適化が完了したものと判定され得る。ここで、予測モデルの最適化が完了したものと判定されるまで、ステップS2からステップS13の処理が繰り返される。そして、予測モデルの最適化が完了すれば、ステップS14に進む。
ステップS14では、モデル決定部53kによって、予測モデルが決定される。ここでは、例えば、ステップS2からステップS13の処理において最適化された予測モデルが、予兆スコアを算出するための予測モデルとして決定される。そして、関連度および検出条件を含む予測モデル4bが記憶部4に記憶される。ここで、例えば、既に記憶部4に予測モデル4bが記憶されていれば、予測モデル4bの更新処理が行われる。
ステップS14の処理が終了すれば、ステップS1に戻り、次の異常が発生するまで、ステップS1の処理が繰り返される。また、次の異常が発生すれば、ステップS2からステップS14の処理が行われることで、予測モデル4bの更新が行われ得る。
<1−3−2.異常の発生を予測する動作>
図19は、異常の発生を予測する方法(異常予測方法ともいう)に係る動作フローの一例を示す流れ図である。本動作は、例えば、異常予測システム100が起動され、予測モデル4bが記憶部4に記憶されていれば、開始され得る。
図19のステップST1では、例えば、取得部51によって、イベントが発生したか否かが判定される。ここでは、取得部51が、イベント発生情報を取得するまで、イベントが発生したか否かの判定が繰り返される。そして、イベントが発生したものと判定されれば、ステップST2に進む。
ステップST2では、情報群取得部54aによって、監視対象装置の状態に係る情報群としてのトランザクションを取得することができる。該情報群には、例えば、監視対象装置の状態の変化および該監視対象装置への指令の入力のうちの少なくとも一方に属する1種類以上のイベントの発生に係る1つ以上のイベント発生情報が含まれる。
ステップST3では、予兆スコア算出部54bによって、ステップST2で取得された情報群としてのトランザクションにおけるイベントの種類毎のイベント発生情報の存在頻度と、イベントの種類毎の関連度とに基づいて、予兆スコアScが算出される。ここで、関連度は、例えば、記憶部4に記憶されている予測モデル4bに含まれており、監視対象装置における特定の異常の発生に対してイベントが関連する度合いを示す。予兆スコアScは、監視対象装置において、特定の異常が発生する予兆に係る指標である。
ステップST4では、判定部54cによって、ステップST3で算出された予兆スコアScが、予め設定された検出条件を満たすか否か判定する。検出条件は、例えば、予測モデル4bに含まれている。ここでは、例えば、予兆スコアが、予め設定された検出条件としての閾値を超えているか否かが判定される。ここで、例えば、予兆スコアが閾値を超えていなければ、予兆スコアが検出条件を満たしていないため、ステップST1に戻る。一方、例えば、予兆スコアが閾値を超えていれば、予兆スコアが検出条件を満たしているため、ステップST5に進む。このとき、例えば、判定部54cによって、異常通知部55に特定の信号が送信される。
ステップST5では、異常通知部55によって、出力部3に特定の異常が発生し得る状況である旨を示す情報を出力させる。つまり、ステップST3で算出された予兆スコアScがステップST4で検出条件を満たすものと判定されたことに応答して、出力部3によって、特定の異常が発生し得る状況である旨を示す情報が出力される。
このような異常の発生の予測に係る動作フローにより、例えば、監視対象装置の状態を計測するセンサの数に拘わらず、異常の発生が予測され得る。そして、例えば、監視対象装置において異常が生じ得る状況であることが対象者に報知され得るため、例えば、異常の発生が回避され得る。
<1−4.一実施形態のまとめ>
以上のように、一実施形態に係る異常予測システム100では、監視対象装置で生じる状態の変化および指令の入力の少なくとも一方に係る1種類以上のイベントについて、イベントの発生頻度と、イベントが異常の発生に関連する度合いとに基づき、異常が生じる予兆を示す予兆スコアが算出される。そして、該予兆スコアが、予め設定された検出条件を満たすか否かが判定される。これにより、例えば、監視対象装置の状態を計測するセンサの数に拘わらず、監視対象装置における異常の発生が予測され得る。
ここで、例えば、監視対象装置で複数種類の異常が発生し得る場合には、異常の種類毎に、異常の発生に係る予兆スコアが算出され、該予兆スコアが検出条件を満たすか否かが判定され得る。このとき、監視対象装置における複数の異常の発生が予測され得る。
また、例えば、監視対象装置で生じたイベントの履歴を示す情報を参照して、各異常の発生前における特定期間について、少なくとも1つのイベント発生情報がイベントの種類毎に認識される。そして、例えば、イベントの種類毎に、監視対象装置における異常の発生に対してイベントが関連する度合いを示す関連度が算出される。これにより、例えば、予兆スコアの算出ルールを規定する予測モデルが作成され得る。その結果、監視対象装置の状態を計測するセンサの数に拘わらず、異常の発生が精度良く予測され得る。
<2.変形例>
本発明は上述の一実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更、改良等が可能である。
上記一実施形態に係る異常予測システム100では、例えば、異常予測システム100とは異なる装置またはシステムにおいて予測モデル4bが予め準備され、モデル作成部53が省略されてもよい。
上記一実施形態に係る異常予測システム100は、例えば、複数の監視対象装置についての異常の発生を予測するものであってもよい。例えば、図20で示されるように、複数の監視対象装置AP1〜AP3に通信回線NW1を介して接続されたコンピュータCP1によって、各監視対象装置AP1〜AP3における異常の発生が予測されてもよい。この場合、上記一実施形態に係る異常予測システム100は、例えば、各監視対象装置AP1〜AP3について、上記一実施形態と同様に、異常の発生の予測および通知、ならびに予測モデルの作成等が行われる異常予測システム100Aとされてもよい。
上記一実施形態において、例えば、特定の異常の発生に対する各イベントの関連度として、関連度Drの代わりに支持度Dsが採用されてもよい。該支持度Dsは、例えば、上記式(1)によって算出され得る。また、例えば、特定の異常の発生に対する各イベントの関連度として、特定の異常が発生したタイミングと、イベントが発生したタイミングとの時間間隔に応じた重み付け演算が行われることで算出された支持度Dsが採用されてもよい。該支持度Dsは、例えば、上記式(2)および式(3)によって算出され得る。
上記一実施形態において、例えば、情報群に含まれるイベント発生情報には、監視対象装置に設けられたセンサで測定される数値に係るイベントが発生した情報が含まれてもよい。数値に係るイベントには、例えば、数値が閾値を超えたイベント等が含まれ得る。
上記一実施形態において、例えば、予測モデルを用いた異常の発生を予測する際に予兆スコアの算出に用いる1つのトランザクションを構成するイベント発生情報の数と、予測モデルの作成に用いる1つのトランザクションを構成するイベント発生情報の数とが異なっていてもよい。
上記一実施形態および各種変形例をそれぞれ構成する全部または一部を、適宜、矛盾しない範囲で組み合わせ可能であることは、言うまでもない。