(57)【特許請求の範囲】
【請求項１】
処理対象であるシステムから時間経過に伴って受信される一連のデータである時系列データを処理するための時系列データ処理装置であって、
前記時系列データの内容と発生時刻情報とについて、複数の前記時系列データの事象とそれらの事象が発生する時間間隔に関する条件である間隔条件とを含む時系列データ検索条件を受信し、前記時系列データの送信元における設定時刻ずれの許容時間である時刻ずれ許容時間を用いて前記間隔条件を変更することにより前記時系列データ検索条件に前記設定時刻ずれを反映させる時系列データ検索処理部と、
前記時系列データ検索処理部が変更した前記時系列データ検索条件を用いて、前記処理対象であるシステムから受信される前記時系列データを監視するデータ監視部と、
を備えている時系列データ処理装置。
【請求項２】
請求項１に記載の時系列データ処理装置であって、前記設定時刻ずれを反映させた前記時系列データ検索条件に合致すると判定された一連の前記時系列データには、設定時刻ずれを考慮して検索されたことを示す設定時刻ずれ反映済み情報を付加する、時系列データ処理装置。
【請求項３】
請求項１に記載の時系列データ処理装置であって、前記時系列データ検索条件の前記間隔条件は、複数の前記事象が発生する時間間隔の最大値と最小値とを含み、前記設定時刻ずれ許容時間の値が前記最小値よりも大であると判定された場合、時系列データ検索処理部は、前記複数の事象の発生順序を入れ替えてなる第２の時系列データ検索条件を作成する、時系列データ処理装置。
【請求項４】
請求項１に記載の時系列データ処理装置であって、前記データ監視部が監視対象とする前記時系列データについて、所定の監視対象範囲を適用して限定する、時系列データ処理装置。
【請求項５】
請求項４に記載の時系列データ処理装置であって、前記所定の監視対象範囲が、前記時系列データが属する時間単位、又は前記時系列データに付帯するロット単位で設定されている、時系列データ処理装置。
【請求項６】
請求項１に記載の時系列データ処理装置であって、前記時系列データ検索処理部は、前記時系列データの前記設定時刻ずれ許容時間を決定するために、前記処理対象システムの前記時系列データ送信元ごとに、前記設定時刻ずれの値を収集し、収集した前記設定時刻ずれの最大値に基づいて前記送信元ごとに前記設定時刻ずれ許容時間を算出する、時系列データ処理装置。
【請求項７】
請求項１に記載の時系列データ処理装置であって、前記データ監視部は、前記時系列データ検索条件について、当該時系列データ検索条件に含まれる第１の事象から所定の前記間隔条件を満たして第２の事象が発生する場合の発生確率を順次算出し、得られた最終発生確率が、所定の発生確率閾値を超えたと判定した場合に、前記時系列データ検索条件によって予測される事象の発生を警告する通知を出力する、時系列データ処理装置。
【請求項８】
処理対象であるシステムから時間経過に伴って受信される一連のデータである時系列データを処理するための時系列データ処理方法であって、プロセッサ及びメモリを有するコンピュータが、
前記時系列データの内容と発生時刻情報とについて、複数の前記時系列データの事象とそれらの事象が発生する時間間隔に関する条件である間隔条件とを含む時系列データ検索条件を受信し、前記時系列データの送信元における設定時刻ずれの許容時間である時刻ずれ許容時間を用いて前記間隔条件を変更することにより前記時系列データ検索条件に前記設定時刻ずれを反映させ、
前記設定時刻ずれを反映させた前記時系列データ検索条件を用いて、前記処理対象であるシステムから受信される前記時系列データを監視する、
時系列データ処理方法。
【請求項９】
請求項８に記載の時系列データ処理方法であって、前記コンピュータが、前記設定時刻ずれを反映させた前記時系列データ検索条件に合致すると判定された一連の前記時系列データには、設定時刻ずれを考慮して検索されたことを示す設定時刻ずれ反映済み情報を付加する、時系列データ処理方法。
【請求項１０】
請求項８に記載の時系列データ処理方法であって、前記時系列データ検索条件の前記間隔条件は、複数の前記事象が発生する時間間隔の最大値と最小値とを含み、前記コンピュータが、前記設定時刻ずれ許容時間の値が前記最小値よりも大であると判定した場合、前記複数の事象の発生順序を入れ替えてなる第２の時系列データ検索条件を作成する、時系列データ処理方法。
【請求項１１】
請求項８に記載の時系列データ処理方法であって、前記コンピュータが、監視対象とする前記時系列データについて、所定の監視対象範囲を適用して限定する、時系列データ処理方法。
【請求項１２】
請求項１１に記載の時系列データ処理方法であって、前記所定の監視対象範囲が、前記時系列データが属する時間単位、又は前記時系列データに付帯するロット単位で設定されている、時系列データ処理方法。
【請求項１３】
請求項８に記載の時系列データ処理方法であって、前記コンピュータが、前記時系列データの前記設定時刻ずれ許容時間を決定するために、前記処理対象システムの前記時系列データ送信元ごとに、前記設定時刻ずれの値を収集し、収集した前記設定時刻ずれの最大値に基づいて前記送信元ごとに前記設定時刻ずれ許容時間を算出する、時系列データ処理方法。
【請求項１４】
請求項８に記載の時系列データ処理方法であって、前記コンピュータが、前記時系列データ検索条件について、当該時系列データ検索条件に含まれる第１の事象から所定の前記間隔条件を満たして第２の事象が発生する場合の発生確率を順次算出し、得られた最終発生確率が、所定の発生確率閾値を超えたと判定した場合に、前記時系列データ検索条件によって予測される事象の発生を警告する通知を出力する、時系列データ処理方法。
【請求項１５】
処理対象であるシステムから時間経過に伴って受信される一連のデータである時系列データを処理するために、プロセッサ及びメモリを有するコンピュータに、
前記時系列データの内容と発生時刻情報とについて、複数の前記時系列データの事象とそれらの事象が発生する時間間隔に関する条件である間隔条件とを含む時系列データ検索条件を受信し、前記時系列データの送信元における設定時刻ずれの許容時間である時刻ずれ許容時間を用いて前記間隔条件を変更することにより前記時系列データ検索条件に前記設定時刻ずれを反映させるステップと、
前記時系列データ検索処理部が変更した前記時系列データ検索条件を用いて、前記処理対象であるシステムから受信される前記時系列データを監視するステップと、
を実行させる、時系列データ処理プログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データ処理装置、時系列データ処理方法、及び時系列データ処理プログラムを格納したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
近年、センシング技術の発達により、実世界から様々なデータを取得することが可能となっており、センシング対象から時系列に取得されるデータである時系列データを種々活用しようとする試みがなされるようになってきている。例えば、発電所等のタービン運転制御、半導体等の製造プラントにおける品質管理、設備稼働状況監視は、多数のセンサから取得される時系列データを解析することにより、実施することができる。【０００３】
このような時系列データの収集及び解析を利用した技術が、例えば特許文献１、特許文献２に開示されている。特許文献１、及び特許文献２は、いずれも時系列データ分析装置等に係わる。特許文献１は、時系列データから複合要因の推移を表すパターンを抽出することを目的として、そのパターンの推移をあるタイムラグ範囲内で選択する構成を提案している。また、特許文献２は、予測対象について発生する事象の時系列的な変化の度合いと、その変化に至る所要時間を推定することが可能な分類モデルを生成することで、イベントの予測を行う構成を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−６６０５８号公報
【特許文献２】特開２００９−２８２９２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１あるいは特許文献２に開示されている構成によっては、時系列データの送信元であるセンサにおける設定時刻のずれに起因する時系列解析結果の誤り等に対処することができないという問題がある。センシング対象のシステムに備えられている多数のセンサは多種多様であり、各々時刻情報を持っているが、通常その時刻情報はマスタークロック等によって管理されているわけではないため、各センサが送信する時系列データに付与されている時刻情報には、相互にずれが存在する。いま、第１のセンサ、第２のセンサから順に時系列データを受信する場合を考え、この順に所定の時間間隔で時系列データを受信することが正常であると判定されるとする。この場合、第１のセンサの時刻情報が第２のセンサの時刻情報に対して遅れていたために、第１のセンサからの時系列データが第２のセンサからの時系列データよりも所定の時間間隔経過前に受信された、あるいは、第１のセンサからの時系列データが第２のセンサからの時系列データよりもあとに受信されたものと判定されたとすると、実際には正常に稼動しているシステムを異常状態にあると誤って判定することになる。これにより、システムチェックのためのシステム稼働停止に伴う時間的あるいは金銭的損失が生じるおそれもある。【０００６】
この点、特許文献１も特許文献２も、時系列データを送信するセンサで生じる時間ずれについては考慮に入れていない。このため、特許文献１あるいは特許文献２に開示されている技術では、時刻ずれにより時系列データが所定の時間間隔から外れて取得され、あるいは時系列データの発生順序が逆転したパターンを検出することはできないと考えられる。【０００７】
本発明は前記の及び他の課題に鑑みてなされたものであり、システムに備えられる複数のセンサから受信する時系列データを、センサ間に存在する設定時刻ずれを考慮して適正に解析することができる時系列データ処理装置、時系列データ処理方法、及び時系列データ処理プログラムを格納したコンピュータ読み取り可能な記録媒体を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記の及び他の課題を解決するための本発明の１つの態様は、処理対象であるシステムから時間経過に伴って受信される一連のデータである時系列データを処理する時系列データ処理装置であって、前記時系列データの内容と発生時刻情報とについて、複数の前記時系列データの事象とそれらの事象が発生する時間間隔に関する条件である間隔条件とを含む時系列データ検索条件を受信し、前記時系列データの送信元における設定時刻ずれの許容時間である時刻ずれ許容時間を用いて前記間隔条件を変更することにより前記時系列データ検索条件に前記設定時刻ずれを反映させる時系列データ検索処理部と、前記時系列データ検索処理部が変更した前記時系列データ検索条件を用いて、前記処理対象であるシステムから受信される前記時系列データを監視するデータ監視部とを備えている時系列データ処理装置である。
【発明の効果】
【０００９】
本発明によれば、システムに備えられる複数の送信元から受信する時系列データを、送信元間に存在する設定時刻ずれを考慮して適正に解析することができる時系列データ処理装置、時系列データ処理方法、及び時系列データ処理プログラムを格納したコンピュータ読み取り可能な記録媒体を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は本発明の実施例１による時系列データ処理装置１００の構成図である。
【図２Ａ】図２Ａは時系列データの一例を示す図である。
【図２Ｂ】図２Ｂは監視クエリの一例を示す図である。
【図３】図３は実施例１の監視クエリの構成例を示す図である。
【図４】図４は実施例１の時刻ずれ許容時間テーブル１２４０の構成例を示す図である。
【図５】図５は実施例１の集約データテーブル２１０の構成例を示す図である。
【図６】図６は実施例１における時刻ずれを考慮した検索処理フローの一例を示すフローチャートである。
【図７】図７は図６のＳ１３０７に示す要素順序の入れ替え処理フローの一例を示すフローチャートである。
【図８】図８は実施例１の集約データ検索画面７００の構成例を示す図である。
【図９】図９は実施例１の監視クエリテーブル１２３０の構成例を示す図である。
【図１０】図１０は実施例１における時系列データ監視処理フローの一例を示す図である。
【図１１】図１１は本発明の実施例２による時系列データ処理装置１００の構成図である。
【図１２】図１２は実施例２の時刻ずれを考慮した検索の設定画面の構成例を示す図である。
【図１３】図１３は実施例２の監視クエリの構成例を示す図である。
【図１４】図１４は実施例２の時刻ずれ許容時間テーブル１２４０の構成例を示す図である。
【図１５】図１５は実施例２における時刻ずれ値の取得・記録処理フローの一例を示すフローチャートである。
【図１６】図１６は実施例２における時刻ずれ許容時間の自動調整・データ切り出しによる検索処理フローの一例を示すフローチャートである。
【図１７】図１７は実施例２の単位別監視クエリテーブル１２３０の構成例を示す図である。
【図１８】図１８は実施例２における時系列データの単位別監視処理フローの一例を示すフローチャートである。
【図１９】図１９は本発明の実施例３による時系列データ処理装置１００の構成図である。
【図２０】図２０は実施例３の遷移確率表１２５０の構成例を示す図である。
【図２１】図２１は実施例３における遷移確率表作成処理フローの一例を示すフローチャートである。
【図２２】図２２は実施例３における遷移確率表を用いた時系列データ監視処理フローの一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態につき、添付図面を参照しながら実施例に即して説明する。
【００１２】
実施例１
まず、本発明の一実施例について説明する。図１に本実施例にかかる時系列データ処理装置１００を含むデータ処理システム１の全体構成例を示している。図１に例示するデータ処理システム１は、時系列データ処理装置１００と、外部記憶装置２００と、クライアント計算機４００とを含んでいる。時系列データ処理装置１００とクライアント計算機４００とは、通信ネットワーク５００によって通信可能に接続されている。制御・監視対象システム３００は、データ処理システム１により処理される時系列データの送信元であり、多数の各種センサを備えているエンジン制御システム、タービン制御システム等の制御システム、半導体製造プラント、化学プラント等の生産管理システムその他の多様なシステムでありうる。時系列データ処理装置１００は、制御・監視対象システム３００から通信ネットワーク５００を通じて種々の時系列データを取得し、それに基づいて制御・監視対象システム３００の稼動状態を監視する機能を果たす。
【００１３】
まず、図１を参照してデータ処理システム１のハードウェア構成について説明する。時系列データ処理装置１００は、プロセッサ１１０と、メモリ１２０と、外部記憶インタフェース１３０と、通信インタフェース１４０と、入出力装置１５０とを備えた一般的なコンピュータの構成を有している。プロセッサ１１０は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro-Processing Unit）等で構成される。メモリ１２０は、例えばＲＡＭ（Random Access Memory）あるいはＲＯＭ（Read Only Memory）であり、プロセッサ１１０が実行する各種コンピュータプログラム（以下「プログラム」）、及びプログラムが使用するパラメータデータ、テーブル等のデータを格納するための一時的な記憶領域を提供する。
【００１４】
外部記憶インタフェース１３０は、後述する外部記憶装置２００とのデータ入出力を実行するためのインタフェース回路であり、外部記憶装置２００の種類によって適切なものを選択すればよい。外部記憶インタフェース１３０としては、例えばＵＳＢ（Universal Serial Bus）、ｉＳＣＳＩインタフェース回路等を用いることができる。通信インタフェース１４０は、通信ネットワーク５００との間でデータ通信処理を行うためのインタフェース回路であり、通信ネットワーク５００の種類に応じて適切なものを選択して用いればよい。例えば通信ネットワーク５００がＬＡＮ（Local Area Network）であれば、通信インタフェース１４０としてＮＩＣ（Network Interface Card）が用いられる。
【００１５】
入出力装置１５０は、一般的なコンピュータで使用されるデータ入出力デバイスを含む。入出力装置１５０には、例えばキーボード、マウス、タッチスクリーン、ペンタブレット等の入力デバイス、及び表示モニタ、プリンタ等の出力デバイスから選択した適宜のデバイスを含めることができる。
【００１６】
通信ネットワーク５００は、前記のように、データ処理システム１による制御・監視処理の対象となっている制御・監視システム３００からの時系列データを時系列データ処理装置１００に送信するためのデータ伝送路であり、例えばＬＡＮとして構成することができるが、他の形式のネットワークであってもよい。通信ネットワーク５００はまた、時系列データ処理装置１００から制御・監視対象システム３００へのデータ送信、及び後述するクライアント計算機４００と時系列データ処理装置１００との間のデータ伝送路としても利用される。
【００１７】
クライアント計算機４００は、一般的なコンピュータの構成を有し、時系列データ処理装置１００及び制御・監視対象システム３００との間で、通信ネットワーク５００を通じてデータ通信を行うことができる。クライアント計算機４００では、例えば時系列データ処理装置１００との間でのデータ入出力インタフェースとなるブラウザ等のアプリケーションが稼動し、時系列データ処理装置１００に後述する検索クエリを入力し、また時系列データ処理装置１００での処理結果データを受信、出力する機能を果たす。
【００１８】
次に、時系列データ処理装置１００の機能について説明する。時系列データ処理装置１００の機能は、メモリ１２０に格納されている各プログラムをプロセッサ１１０が実行することにより実現される。図１の構成例では、時系列データ処理装置１００における時系列データ処理のための一群のプログラム及びテーブル類を含む時系列データ処理部１２２０には、データ受信部１２２１、データ検索部１２２２、データ監視部１２２３が含まれる。
【００１９】
データ受信部１２２１は、制御・監視対象システム３００に備えられている各センサ等から送信される時系列データを、通信ネットワーク５００を通じて受信する機能モジュールである。データ受信部１２２１は、受信した時系列データを、後述のデータ監視部１２２３に送信する。データ監視部１２２３は、受信した時系列データを、あらかじめ設定されている監視クエリと比較することにより、時系列データの送信元である制御・監視対象システム３００の稼動状態を監視する。
【００２０】
ここで、時系列データ、及び監視クエリについて説明する。図２Ａに時系列データの構成の一例を、図２Ｂに監視クエリの構成の一例を示している。図２Ａに示すように、時系列データ２０００は、属性、日時、及び値を含んでなるデータセットの集合である。各データセットは、制御・監視対象システム３００に備えられている各センサからの出力値、及び制御・監視対象システム３００において行われた操作あるいは処理に関する情報を含む。属性の項目は、データ送信元であるセンサの種類、実行された操作の内容等を記録している。日時の項目は、対応する属性及び値が送信された日時を示すタイムスタンプである。値の項目は、対応する属性に関する計測値等の数値あるいは操作、処理等の内容を記録している。例えば、図２Ａの第１行目のエントリは、制御・監視対象システム３００にある圧力センサから、２０１１年７月１日０７：００時に、「１５．２」という測定値が送信されたことを示している。また、図２Ａの第３行目のエントリは、制御・監視対象システム３００の運転について、２０１１年７月１日０７：００時に、「手動による開始という操作が実行されたことを記録している。
【００２１】
図２Ｂに、監視クエリ及び後述する検索クエリに共通して用いられるクエリの構成例を示している。クエリとは、図２Ａに例示した時系列データ２０００について、データ監視部１２２３又は後述のデータ検索部１２２２が、特定のパターンであるイベントが発生しているかを調べるために適用する検索条件である。パターンは、制御・監視対象システム３００における操作・処理あるいはセンサ出力等のイベントを示す情報である要素について、２つの時間的に隣接する要素とその間の間隔条件とを含んでいる。要素間隔は、要素間の時刻情報の差分値であり、間隔条件は、要素間隔について設定した、検索条件成立判定用の不等式であり、「指定最小値＜要素間隔＜指定最大値」で規定される。例えば図２Ｂでは、イベントＡが発生して５分以降３０分以内にイベントＢが発生し、それから０分以降（∞時間以内に）イベントＣが発生した場合に当該クエリの条件成立となる。なお、図２Ｂにおいて、要素間隔は、イベントＡ、Ｂ、Ｃの発生時刻をそれぞれＴａ、Ｔｂ、Ｔｃとしたときに、Ｔｂａ＝Ｔｂ−Ｔａ、Ｔｃｂ＝Ｔｃ−Ｔｂと表されている。
【００２２】
図１に戻り、次に、データ検索部１２２２について説明する。データ検索部１２２２は、クライアント計算機４００から受信する検索クエリに従って時系列データを検索し、検索クエリに一致する時系列データのセットがあるか判定する。データ検索部１２２２には検索クエリ受信部１２２４、クエリ変更部１２２５、クエリ実行部１２２６が設けられている。クエリ変更部１２２５はさらに要素順序入れ替え部１２２５１と間隔条件設定部１２２５２とを備え、クエリ実行部１２２６は時刻ずれ検索結果検出部１２２６１を備える。
【００２３】
検索クエリ受信部１２２４は、クライアント計算機４００で作成された検索クエリを受信する。図３に検索クエリ３０００の構成例を示している。図２Ａを参照して説明した監視クエリと同様に、検索クエリ３０００は１以上のパターンの組み合わせで構成されており、時系列データの中から所定の時間間隔で所定のイベントが発生していることを判定するために用いられる検索条件である。図３に例示する検索クエリ３０００では、検索の対象とする時系列データについての日時条件であるデータ日時条件と、検索対象となるクエリとが組み合わされている。図３の検索クエリ３０００では、「制御・監視対象システム３００においてメンテナンス開始後、０分以上かつ５分以内に手動運転が開始され、手動運転開始から３０分以上経過後でかつ２時間以内に圧力センサ出力値が閾値５０を超える」という検索条件を満たす時系列データが、２０１１年７月１日００時００分００秒から２０１１年７月３１日２３時５９分５９秒までの間に存在するかが判定される。
【００２４】
クエリ変更部１２２５は、制御・監視対象システム３００から受信するセンサ出力値、操作記録等のイベントの情報に付帯している時刻情報に関する時刻ずれを考慮して、検索クエリを必要に応じて変更する機能を有する。要素順序入れ替え部１２２５１は、検索クエリ３０００に含まれる要素に付帯する時刻情報に存する時刻ずれのために要素の順序を入れ替える必要があるか判定し、その結果によって検索クエリ３０００中の要素の順序を入れ替える処理を行う。間隔条件設定部１２２５２は、検索クエリ３０００に含まれる要素に付帯する時刻情報に存する時刻ずれを考慮して、要素間に設定されている間隔条件を設定する機能を有する。
【００２５】
クエリ実行部１２２６は、クエリ変更部１２２５により時刻ずれを考慮して変更された検索クエリを用いて時系列データを検索する機能を有する。時刻ずれ検索結果検出部１２２６１は、実際に検索クエリ３０００を実行して、制御・監視対象システム３００から受信する時系列データに、検索クエリ３０００と一致するデータがあるかを調べ、一致するものがあればそれらを抽出する機能を有する。
【００２６】
次に、データ監視部１２２３について説明する。データ監視部１２２３は、前記の検索クエリ３０００から設定される監視クエリを用いて、制御・監視対象システム３００からの時系列データを監視する。データ監視部１２２３には監視クエリ設定部１２２３１が設けられており、例えばクライアント計算機４００から受信する監視クエリ設定命令に従って図２Ｂに例示したクエリを生成し、後述する監視クエリ設定テーブル１２３０に格納する。
【００２７】
次に、時刻ずれ許容時間テーブル１２４０について説明する。図４に時刻ずれ許容時間テーブル１２４０の構成例を示している。前記のように、時刻ずれ許容時間テーブル１２４０には、制御・監視対象システム３００に設けられている各センサについて、許容しうる時刻ずれが記録されている。図４の例では、時刻ずれ許容時間テーブル１２４０には、対象センサ１２４１及び許容時間１２４２の各項目が記録される。対象センサ１２４１は、時刻ずれ許容時間が設定される制御・監視対象システム３００のセンサを特定する項目であり、許容時間１２４２には、対象センサ１２４１によって特定されるセンサについて許容される時刻ずれの値が記録される。図４の例では、制御・監視対象システム３００に設けられている全センサについて、その出力値の時刻情報に２．０分までのずれを含むことが許容されることを示している。時刻ずれ許容時間テーブル１２４０の内容は、時系列データ処理装置１００の稼動前に、管理者等が設定してメモリ１２０内に格納しておくことができる。
【００２８】
次に、集約データテーブル２１０について説明する。図５に集約データテーブル２１０の構成例を示している。集約データテーブル２１０は、制御・監視対象システム３００から受信される時系列データを、いくつかのイベント種類に集約して記録しており、時系列データ監視処理を実行する際の検索処理速度向上のために利用される。図５の集約データテーブル２１０には、開始時刻２１１及びイベント種類２１２の各項目が記録されている。開始時刻２１１には、対応するイベント種類２１２に分類される時系列データが制御・監視対象システム３００から受信されたときに、その時系列データに付帯している時刻情報を、そのイベントの開始時刻として記録する。イベント種類２１２は、クライアント計算機４００あるいは入出力装置１５０から入力される多数の検索クエリに含まれる要素を相互に比較して、同じ要素が複数重複して記録されることがないように集約してなる項目であり、例えばデータ検索部１２２５が検索クエリを受信するごとにその中に含まれる要素を、重複を排除しつつ記録することにより設定される。
【００２９】
次に、本実施例において実行される、時刻ずれを考慮した検索処理フローについて説明する。図６に、本実施例における、時刻ずれを考慮した検索処理フローの一例を示している。図６の処理フローは、クライアント計算機４００又は入出力装置１５０から入力される検索クエリについて、制御・監視対象システム３００からの時系列データに含まれうる時刻ずれを考慮に入れるために、検索クエリに対して実行する処理である。
【００３０】
まず、クライアント計算機４００又は入出力装置１５０から検索クエリを受信したことを契機として本処理フローが開始されると、その検索クエリを受信した検索クエリ受信部１２２４は、その検索クエリに含まれる分割位置を設定する（Ｓ１３００、Ｓ１３０１）。分割位置には分割開始位置と分割終了位置とがあり、最初の分割開始位置は検索クエリ３０００の第１の要素に、最初の分割終了位置は検索クエリ３０００の第２の要素に、それぞれ設定される。次いでクエリ変更部１２２５が、設定された分割位置に対応する間隔条件を抽出する（Ｓ１３０２）。次いで、クエリ変更部１２２５は、Ｓ１３０１からＳ１３１０までのステップを、対象の検索クエリに含まれる分割終了位置が空となるまで反復して実行する。
【００３１】
まず、クエリ変更部１２２５は、最初の分割位置に設定されている間隔条件の最小指定値が、時刻ずれ許容時間テーブル１２４０に設定されている許容時間１２４２より大であるか判定する（Ｓ１３０４）。間隔条件の最小指定値が、時刻ずれ許容時間テーブル１２４０に設定されている許容時間１２４２より大であると判定した場合（Ｓ１３０４、Ｙｅｓ）、クエリ変更部１２２５の間隔条件設定部１２２５２は、当初の間隔条件に許容時間１２４２を適用して、新たな間隔条件を算出する（Ｓ１３０５）。例えば、対象の間隔条件が５分を超え１０分未満と設定されており、時刻ずれ許容時間テーブル１２４０から読み込んだ許容時間１２４２が２分であったとした場合、この時刻ずれを考慮した間隔条件は、３（＝５−２）分を超え１２（＝１０＋２）分未満と算出される。次いで、クエリ変更部１２２５が対象検索クエリの分割位置を変更して、言い換えれば検索クエリに含まれる次の分割位置を特定し、新たな間隔条件を処理済みクエリに連結して後述する監視クエリテーブル１２３０に登録する（Ｓ１３０９）。
【００３２】
一方、Ｓ１３０４において、間隔条件の最小指定値が、時刻ずれ許容時間テーブル１２４０に設定されている許容時間１２４２以下であると判定した場合（Ｓ１３０４、Ｎｏ）、間隔条件設定部１２２５２は、さらに「次の間隔条件の指定最小値が許容時間より大」又は「分割終了位置が対象検索クエリの最後の要素」のいずれかの条件が成立するかを判定する（Ｓ１３０６）。上記のいずれかの条件が成立すると判定した場合（Ｓ１３０６、Ｙｅｓ）、要素順序入れ替え部１２２５１が対象検索クエリ内の要素の順序を入れ替える処理を行う（Ｓ１３０７）。この要素順序入れ替え処理については別の処理フロー例を参照して後述する。次いで、クエリ変更部１２２５１によるＳ１３０９の処理に移る。なお、Ｓ１３０６において分割終了位置が最後の要素であると判定されていた場合には、Ｓ１３０９の処理を実行後、Ｓ１３０３〜Ｓ１３１０のループを抜ける。
【００３３】
一方、Ｓ１３０６においていずれの条件も成立しないと判定した場合（Ｓ１３０６，Ｎｏ）、間隔条件設定部１２２５２は、対象検索クエリの分割位置を次の分割位置に変更して（Ｓ１３０８）、Ｓ１３０４に処理を戻す。
【００３４】
Ｓ１３０３〜Ｓ１３１０のループを抜けた後、対象の検索クエリについて時刻ずれ許容時間を反映する処理が完了しているので、クエリ実行部１２２６が集約データテーブル２１０を参照して、すべての処理済み検索クエリによって該当するイベント種類２１２があるか検索する（Ｓ１３１１）。次いで、クエリ実行部１２２６の時刻ずれ検索結果検出部１２２６１が、時刻ずれを考慮した検索クエリによって抽出された結果に設定時刻ずれ反映済み情報を付加する等によりその旨をマークして本処理フローを終了する（Ｓ１３１２、Ｓ１３１３）。
【００３５】
以上説明した本実施例の時刻ずれを考慮した検索処理フローによれば、制御・監視対象システム３００から受信する時系列データに時刻ずれが含まれていた場合に、その時刻ずれを考慮した検索クエリを生成することができる。
【００３６】
次に、本実施例において実行される要素順序の入れ替え処理フローについて説明する。図７に、この要素順序の入れ替え処理フローの一例を示している。要素順序の入れ替えフローは、図７の検索処理フローにおけるＳ１３０７のステップであり、図６のＳ１３０６において、「次の間隔条件の指定最小値が許容時間より大」又は「分割終了位置が対象検索クエリの最後の要素」のいずれかの条件が成立した場合に、要素順序入れ替え部１２２５１によって実行される。
【００３７】
まず、Ｓ１４００で、Ｓ１３０６の判定結果に応じて本処理フローが開始されると、要素順序入れ替え部１２２５１は、対象検索クエリの分割開始位置から分割終了位置までに含まれる全パターンを対象パターンとして抽出し、順次処理を実行する（Ｓ１４０１〜Ｓ１４１０のループ）。まず、要素順序入れ替え部１２２５１は、時刻ずれ許容時間に基づいて間隔条件を算出し、その間隔条件を負の範囲と正の範囲に分割する（Ｓ１４０２）。負の範囲とは、間隔条件の最小指定値に対して時刻ずれ許容時間を適用した結果、その最小指定値が負の値となる場合をいう。例えば最小指定値が１分であった時、時刻ずれ許容時間として２分を適用した場合、最小指定値は１−２＝−１分となる。このような場合を負の範囲と呼んでいる。
【００３８】
次いで、要素順序入れ替え部１２２５１は、時刻ずれ許容時間を考慮した間隔条件が負の範囲か正の範囲かを判定する（Ｓ１４０３）。負の範囲であると判定した場合（Ｓ１４０３、負の範囲）、要素順序入れ替え部１２２５１は、次に対象検索クエリについて要素順序入れ替え済みのパターンがあるか判定する（Ｓ１４０６）。要素順序入れ替え済みのパターンがあると判定した場合（Ｓ１４０６、Ｙｅｓ）、要素順序入れ替え部１２２５１は、対象パターンと入れ替え済みパターンとを混ぜたパターンを生成する（Ｓ１４０７）。次いで、間隔条件設定部１２２５２は、時刻ずれ許容時間に基づいて間隔条件を設定し、入れ替え済みパターンとして登録する（Ｓ１４０９）。
【００３９】
Ｓ１４０６で要素順序入れ替え済みのパターンがないと判定した場合（Ｓ１４０６、Ｎｏ）、要素順序入れ替え部１２２５１は、対象パターン内の要素順序を入れ替える（Ｓ１４０８）。次いで、間隔条件設定部１２２５２は、時刻ずれ許容時間に基づいて間隔条件を設定し、入れ替え済みパターンとして登録する（Ｓ１４０９）。
【００４０】
Ｓ１４０３において要素順序入れ替え部１２２５１が、Ｓ１４０２において時刻ずれを考慮した間隔条件が正の範囲であると判定した場合（Ｓ１４０３、正の範囲）、要素順序入れ替え部１２２５１は、次に対象パターンについて要素順序入れ替え済みのパターンがあるか判定する（Ｓ１４０４）。要素順序入れ替え済みのパターンがあると判定した場合（Ｓ１４０４、Ｙｅｓ）、要素順序入れ替え部１２２５１は、対象パターンと入れ替え済みパターンとを混ぜたパターンを生成する（Ｓ１４０５）。次いで、間隔条件設定部１２２５２は、時刻ずれ許容時間に基づいて間隔条件を設定し、入れ替え済みパターンとして登録する（Ｓ１４０９）。
【００４１】
Ｓ１４０４で要素順序入れ替え済みのパターンがないと判定した場合（Ｓ１４０４、Ｎｏ）、間隔条件設定部１２２５２は、時刻ずれ許容時間に基づいてそのまま間隔条件を設定し、入れ替え済みパターンとして登録する（Ｓ１４０９）。以上の処理フローは、前記のように、検索クエリの分割開始位置から分割終了位置までの全パターンについて実行される。
【００４２】
以上の要素順序入れ替え処理によれば、検索クエリに含まれる間隔条件に対して適切に時刻ずれを反映させることができる。
【００４３】
図８に、以上で作成された時間ずれを考慮した検索クエリを用いた集約データの検索画面７００の構成例を示している。集約データ検索画面７００は、クライアント計算機４００又は時系列データ処理装置１００の入出力装置１５０に出力させることができる。集約データ検索画面７００には、検索クエリ７１０、結果データ７２０の各表示項目と、検索ボタン７３０、監視適用ボタン７４０、及び時刻ずれ考慮チェックボックス７５０の各操作オブジェクトが設けられる。検索クエリ７１０の項目には、時刻ずれ考慮の処理対象となっている検索クエリが表示される。結果データ７２０の項目には、検索クエリ７１０に表示されている検索クエリを用いて集約データを検索した結果が、時刻ずれの考慮あり、時刻ずれの考慮なしに分類して表示される。検索ボタン７３０は、検索クエリ７１０に表示されている検索クエリにより集約データの検索を実行するときに操作される。監視適用ボタン７４０は、検索クエリ７１０に表示されている検索クエリを監視クエリとして使用する場合に操作され、この操作によって検索クエリが監視クエリテーブル１２３０に登録される。時刻ずれ考慮チェックボックス７５０は、検索クエリ７１０に表示されている検索クエリに対して時刻ずれを考慮した検索結果を表示させる場合にチェックを入れる。時刻ずれ考慮チェックボックス７５０にチェックを入れない場合、結果データ７２０の項目には時刻ずれ考慮なしのデータのみが表示される。
【００４４】
図９に、以上の時刻ずれ許容時間を考慮して作成された監視クエリが登録される監視クエリテーブル１２３０の構成例を示している。監視クエリテーブル１２３０は、データ監視部１２２３が後述する時系列データの監視処理を実行するときに参照するテーブルであり、クライアント計算機４００又は入出力装置１５０から設定された検索クエリに対して時刻ずれ許容時間を適用して生成した監視クエリを格納している。図９の例では、監視クエリ１２３１として、「メンテナンス→（０分以上７分以内）→手動運転→（２８分以上２時間２分以内）→圧力センサ閾値５０超え」及び「手動運転→（０分以上２分以内）→メンテナンス→（２８分以上２時間２分以内）→圧力センサ閾値５０超え」の２つの監視クエリが、元の検索クエリである「メンテナンス→（０分以上５分以内）→手動運転→（３０分以上２時間以内）→圧力センサ閾値５０超え」について時刻ずれ許容時間２分を適用することにより生成されて格納されている。クエリ種類１２３２は、同一の検索クエリから生成された複数の監視クエリについて同一の符号を付して識別可能としている。
【００４５】
次に、本実施例において実行される時系列データの監視処理について説明する。図１０に、時系列データの監視処理フローの一例を示している。本実施例のデータ処理システム１が稼働することで、図１０の関し処理フローが開始されると（Ｓ１５００）、まずデータ受信部１２２１が制御・監視対象システム３００から時系列データを受信する（Ｓ１５０１）。データ受信部１２２１は、受信した時系列データが定量的データであるか定性的データであるか判定し（Ｓ１５０２）、定量的データであると判定した場合（Ｓ１５０２、定量的）、データ受信部１２２１は、集約データテーブル２１０に規定されている閾値によって定量的データを集約する（Ｓ１５０３）。Ｓ１５０２で定性的データであると判定した場合（Ｓ１５０２、定性的）、データ受信部１２２１は、そのまま処理をＳ１５０４に移行させる。
【００４６】
Ｓ１５０４では、データ監視部１２２３が、監視クエリテーブル１２３０に格納されている監視クエリ１２３１に基づいて、集約データを監視し（Ｓ１５０４）、監視クエリ１２３１が成立したと判定した場合（Ｓ１５０５、Ｙｅｓ）、クライアント計算機４００又は入出力装置１５０に対してアラームを発行し、成立した監視クエリ１２３１とクエリ種類１２３２が同一の監視クエリ１２３１について初期化処理を行い、処理を終了する（Ｓ１５０６、Ｓ１５０７）。Ｓ１５０５で監視クエリ１２３１が成立しないと判定した場合（Ｓ１５０５、Ｎｏ）、データ監視部１２２３は、そのまま処理を終了する（Ｓ１５０７）。
【００４７】
以上説明した時系列データの監視処理によれば、時刻ずれ許容時間を考慮して、時系列データに関して生じた異常等の事象を、適切に検出することができる。
【００４８】
実施例２
次に、本発明の実施例２について説明する。図１１に、実施例２による時系列データ処理装置１００の構成図の一例を示している。実施例２の時系列データ処理装置１００の基本的な構成は、図１に例示した実施例１の場合と同様であるが、時刻ずれ算出部１２２７、データ切り出し部１２２６２、及びデータ切り替え検出部１２２３２を備えている点が異なっている。時刻ずれ算出部１２２７、データ切り出し部１２２６２、及びデータ切り替え検出部１２２３２は、実施例１と同様に、それぞれ該当する機能を有するプログラムである。また、実施例１における監視クエリテーブル１２３０が単位別監視クエリテーブル１２３０Ａに変更されている点も異なっている。
【００４９】
時刻ずれ算出部１２２７は、制御・監視対象システム３００に設けられている各種センサから受信される時系列データに含まれる時刻ずれに関する情報を、各センサについて自動的に収集することにより時刻ずれ許容時間に反映させる機能を有する。データ切り出し部１２２６２は、時刻ずれを考慮した時系列データの検索を行う際に、検索対象の時系列データをある範囲に区切って実行する機能を有する。データ切り替え検出部１２２３２は、上記の検索範囲に関して対象となる時系列データの切り替えを行う機能を有する。これらの機能については、処理フロー例を参照して後述する。
【００５０】
図１２に、実施例２における、時刻ずれを考慮した検索に対する設定画面８００の構成例を示している。この設定画面８００は、本実施例の時系列データ処理装置１００を運用する前に、あるいは運用開始後の設定条件変更時に、クライアント計算機４００又は入出力装置１５０に出力することができる。図１２に例示する設定画面８００には、時刻ずれ考慮の有無８１０、検索対象のデータ単位８２０、及び時刻ずれ許容範囲の設定８３０の各項目が含まれている。時刻ずれ考慮の有無８１０の項目は、時系列データの検索に関して時刻ずれを考慮して実行するか否かを選択することができるようにするチェックボックスを含む。検索対象のデータ単位８２０の項目は、時系列データの監視をどのような単位で実行するかを選択するためのラジオボタンを含み、本実施例の例では時系列データの監視を制御・監視対象システム３００において行われる生産、検査等の単位数量であるロット単位で実行するか、時系列データの時間情報に関する時間ウインドウ単位で実行するかを選択することができるように構成されている。時刻ずれ許容範囲の設定８３０は、時刻ずれ許容時間テーブル１２４０の内容を、実施例１のように手動で設定するか、本実施例に関して後述するように自動的に設定するかを選択することができるラジオボタンを含んでいる。
【００５１】
図１３に、実施例２における検索クエリ４０００の構成例を模式的に示している。検索クエリ４０００は、図３に例示した実施例１の検索クエリ３０００と基本的な構成は同様であるが、検索クエリ４０００には、検索単位の項目が追加されている。図１３の例では、検索単位の項目には、１日の時間ウインドウ単位で検索することが記録されている。
【００５２】
図１４には、実施例２における時刻ずれ許容時間テーブル１２４０の構成例を示している。図１４の時刻ずれ許容時間テーブル１２４０の構成は、図４に例示した実施例１の時刻ずれ許容時間テーブル１２４０と同様であるが、時刻ずれ許容時間１２４２の項目には、所定の時刻に制御・監視対象システム３００に含まれる各センサから受信した時系列データに関する時刻情報が、時系列データ処理装置１００のシステムクロックに対してどれくらいずれているかを示す値が時系列に格納されている。図１４の例では、センサ名１２４１のセンサ１については、２０１１年７月１日０時に１．０分の遅れが、２０１１年８月１日０時に１．１分の遅れがそれぞれ記録されている。センサから受信する時系列データの時間情報のほうがシステムクロックより進んでいる場合には、時刻ずれ許容時間１２４２には負の値が記録される。
【００５３】
次に、実施例２において実行されるデータ処理について説明する。図１５に、実施例２における時刻ずれ値の取得・記録処理フローの一例を示している。時刻ずれ値の取得・記録処理フローは、主に時刻ずれ算出部１２２７によって、時刻ずれ許容時間の自動設定を実現するために実行される。時刻ずれ値の取得、記録処理フローは、設定画面８００において時刻ずれ考慮の有無８１０がチェックされ、時刻ずれ許容範囲の設定８３０が自動に設定されている場合に開始され、まずデータ受信部１２２１がユーザ設定時刻データを受信する（Ｓ１６００、Ｓ１６０１）。
【００５４】
次いで、時刻ずれ算出部１２２７は、各センサからの時系列データに関する時間情報と、ユーザ設定の時刻情報との間の差分の絶対値を算出して、時刻ずれ許容時間テーブル１２４０に格納する処理を、制御・監視対象システム３００から時系列データを送信するすべてのセンサについて繰り返し実行して処理を終了する（Ｓ１６０２〜Ｓ１６０５）。
【００５５】
次に、実施例２において実行される、許容時間の自動調整及びデータ切り出しによる検索処理について説明する。許容時間の自動調整及びデータ切り出しによる検索処理では、センサからの時刻ずれ取得に基づく許容時間の自動調整と、設定画面８００の検索対象のデータ単位８２０によって設定されているデータ単位に従ってデータ切り出しを実行した上で、実施例１で説明した時刻ずれを考慮した検索処理が実行される。図１６に、実施例２の許容時間の自動調整及びデータ切り出しによる検索処理フローの一例を示している。
【００５６】
まず、クライアント計算機４００又は入出力装置１５０からの指示により本処理が開始されると（Ｓ１７００）、データ受信部１２２１がクライアント計算機４００又は入出力装置１５０から検索クエリ４０００を受信する（Ｓ１７０１）。次いで、データ検索部１２２２は、時刻ずれ許容時間テーブル１２４０を参照して、検索範囲内の時刻ずれ最大値を取得し、対象センサについての許容時間として設定する（Ｓ１７０３）。Ｓ１７０３の処理は、時刻ずれ許容時間テーブル１２４０のセンサ名１２４１に登録されているすべてのセンサについて繰り返し実行される（Ｓ１７０２〜Ｓ１７０４）。
【００５７】
次に、データ切り出し部１２２６２が、集約データテーブル２１０から検索範囲のデータを取得し（Ｓ１７０５）、検索クエリ４０００に指定されたデータ切り出し単位がロット単位かウインドウ単位かを判定する（Ｓ１７０６）。検索クエリ４０００に指定されたデータ切り出し単位がロット単位であると判定した場合（Ｓ１７０６、ロット単位）、データ切り出し部１２２６２は、集約データテーブル２１０から取得したデータについて、ロット単位でのデータ切り出しを実行する（Ｓ１７０７）。検索クエリ４０００に指定されたデータ切り出し単位がウインドウ単位であると判定した場合（Ｓ１７０６、ウインドウ単位）、データ切り出し部１２２６２は、集約データテーブル２１０から取得したデータについて、ウインドウ単位でのデータ切り出しを実行する（Ｓ１７０８）。このステップまでで、許容時間の自動調整及び検索データ単位を考慮したデータ切り出しが完了する。この後、Ｓ１７０７又はＳ１７０８で切り出した集約データすべてに対して、図７、図８に例示した、時刻ずれを考慮した検索処理を実行して処理を終了する（Ｓ１７０９〜Ｓ１７１１、Ｓ１７１２）。
【００５８】
次に、実施例２において実行される時系列データの単位別監視処理について説明する。この時系列データの単位別監視処理は、実施例１における時系列データの監視処理を、検索クエリ４０００に設定されている所定のデータ単位に従って実行する処理である。図１８に、時系列データの単位別監視処理フローの一例を示している。図１８に例示する処理フローは、図１０に例示した実施例１の監視処理フローにおいて、所定のデータ単位で監視処理を実行するための処理ステップを加えたものである。すなわち、図１８の処理フローにおけるＳ１８００〜Ｓ１８０３、及びＳ１８０７〜Ｓ１８１０のステップは、図１０の処理フローにおけるＳ１５００〜Ｓ１５０７と同一であり、図１８ではＳ１８０４〜Ｓ１８０６が追加されている。そこで、図１８に関してはこの追加されたステップについて説明する。他のステップについては、実施例１に関する図１０を参照されたい。
【００５９】
図１８に例示する時系列データの単位別監視処理フローでは、Ｓ１８０２及びＳ１８０３において受信した時系列データを定量的データと定性的データとに分類した後、データ監視部１２２３が、検索クエリ４０００に指定されているデータ単位がロット単位であるかウインドウ単位であるかを判定する（Ｓ１８０４）。検索クエリ４０００に指定されたデータ単位がロット単位であると判定した場合（Ｓ１８０４、ロット単位）、データ切り替え検出部１２２３２は、集約データテーブル２１０から取得したデータについて、ロットの切り替わり時に監視クエリを初期状態に戻す処理を実行する（Ｓ１８０５）。この後、データ監視部１２２３は、集約データの監視を新たに開始する。あるロット単位についての処理が終了したことは、例えば、データ監視部１２２３が、時系列データ及び集約データに付帯しているロット番号等の情報を判定することにより実現することができる。検索クエリ４０００に指定されたデータ単位がウインドウ単位であると判定した場合（Ｓ１８０４、ウインドウ単位）、データ切り替え検出部１２２３２は、集約データテーブル２１０から取得したデータについて、ウインドウ範囲の経過時に監視クエリを初期状態に戻す処理を実行する（Ｓ１８０６）。この後、データ監視部１２２３は、集約データの監視を新たに開始する。ある時間ウインドウ単位についての処理が終了したことは、例えば、データ監視部１２２３が、時系列データ及び集約データに付帯している時間情報を判定することにより実現することができる。
【００６０】
以上説明した本発明の実施例２に係る時系列データ処理装置１００によれば、時系列データの処理に考慮すべきセンサ等の時刻ずれの許容値を、自動的に設定させることができる。また、管理上の便宜に従って、監視対象となる時系列データを、制御・監視対象システム３００についてのロット単位、時系列データに関する１日単位等の時間ウインドウ単位で処理することが可能となる。なお、データ単位を考慮した時系列データの処理は、時刻ずれ許容値を手動で設定する実施例１の構成においても適用することができる。
【００６１】
実施例３
次に、本発明の実施例３に係る時系列データ処理装置１００について説明する。実施例３の時系列データ処理装置１００は、制御・監視対象システム３００において発生しうるシステム故障等の予兆となる事象を検出することを目的としている。この点で、実施例３は、制御・監視対象システム３００に正常でない事象が発生したことを時系列データから検出する実施例１あるいは２とは異なっている。
【００６２】
図１９に、実施例３に係る時系列データ処理装置１００を含むデータ処理システム１の構成例を示している。図１９に例示する実施例３の構成は、基本的に図１に示した実施例１の構成例と同様であるが、制御・監視対象システム３００から受信する時系列データに基づいて、制御・監視対象システム３００における異常発生の予兆を検出するために、遷移確率算出部１２２３３、遷移確率表作成部１２２３４、及び遷移確率表１２５０を備えている点が異なる。
【００６３】
ここで、本実施例において事象発生の予兆を検出ための指標として使用される遷移確率について説明する。図２０に、本実施例の時系列データ処理装置１００において作成され利用される遷移確率表１２５０の構成例を示している。遷移確率表１２５０は、前記の遷移確率算出部１２２２３及び遷移確率表作成部１２２２４によって作成されるテーブルである。図２０に例示する遷移確率表１２５０には、監視クエリ１２５１、第一パターン１２５２、第二パターン１２５３の各項目が記録される。また、第一パターン１２５２、第二パターン１２５３には、それぞれ第１要素検出回数１２５２１、１２５３１、第２要素遷移回数１２５２２、１２５３２、遷移確率１２５２３、１２５３３の各項目が記録される。監視クエリ１２５１は、図９に例示した実施例１の監視クエリテーブル１２３０と同様であり、時刻ずれ許容時間を考慮して設定された監視クエリが記録される。
【００６４】
第１パターン１２５２、第２パターン１２５３は、対応する監視クエリ１２５１を順次含まれているパターンに分解して記録している項目である。また、第１パターン１２５２、第２パターン１２５３において、集約データテーブル２１０に集約されている時系列データを調べた結果として、対応する監視クエリ１２５１の第１パターン１２５２の中で、第１要素が検出された回数が第１要素検出回数１２５２１として、第１要素検出後、さらに間隔条件を満たして第２要素へ遷移した回数を第２要素遷移回数１２５２２として記録している。パターンの項目数は、対応する監視クエリ１２５１に含まれるパターン数に対応して追加され得る。遷移確率１２５２３、１２５３３は、第１要素検出回数１２５２１に対する第２要素遷移回数１２５２２の比率として定義される。図２０の先頭エントリを見ると、例えば第１パターン１２５２では、メンテナンス完了の要素が２００回検出され、それから０分以上７分以内に手動運転開始の要素が検出された回数が１００回であり、その結果、第１パターン１２５２の遷移確率１２５２３は、１００／２００＝０．５と求められる。第２パターン１２５３単独の遷移確率１２５３３が０．３であるので、対応する監視クエリ１２５１が成立する場合の遷移確率は０．５＊０．３＝０．１５となる。
【００６５】
次に、本実施例における遷移確率表１２５０の作成処理について説明する。図２１に、遷移確率表１２５０の作成処理フローの一例を示している。図２１に例示する遷移確率表１２５０の作成処理フローは、例えばクライアント計算機４００又は入出力装置１５０からの遷移確率表作成指示入力に基づいて開始される（Ｓ１９００）。まず、データ監視部の監視クエリ設定部１２２３１が、検索処理実行時に生成したすべての検索クエリを、遷移確率表１２５０の監視クエリ１２５１の項目に登録する（Ｓ１９０１）。次に、データ監視部１２２３の遷移確率表作成部１２２２４が、遷移確率表１２５０に記録された各監視クエリ１２５１を、各監視クエリ１２５１に含まれるパターンに分解する（Ｓ１９０３）。遷移確率表作成部１２２２４は、遷移確率表１２５０の各監視クエリ１２５１に対応するエントリに、パターン１２５２、…の項目を追加し、第１要素検出回数１２５２１、第２要素遷移回数１２５２２、及び遷移確率１２５２３の各項目を設ける（Ｓ１９０５）。Ｓ１９０５の処理は、各監視クエリ１２５１に含まれているすべてのパターンについて実行され（Ｓ１９０４〜Ｓ１９０６）、それにより図２０に例示したように、第１パターン１２５２、第２パターン１２５３等と、必要に応じてパターンの項目が追加される。また、各監視クエリ１２５１をそれに含まれるパターンに分解するＳ１９０３以降の処理は、Ｓ１９０１で遷移確率表１２５０に登録されたすべての監視クエリ１２５１について繰り返し実行され（Ｓ１９０２〜Ｓ１９０７）、その後本処理を終了する（Ｓ１９０８）。以上の遷移確率表１２５０の作成処理により、図２０に例示した本実施例の遷移確率表１２５０が作成され、これを利用して制御・監視対象システム３００における以上等の事象の予兆検知を実現することができる。
【００６６】
次に、本実施例における遷移確率表１２５０を利用した監視処理について説明する。遷移確率表１２５０を利用した監視処理は、図２１の処理フロー例により作成した遷移確率表１２５０を利用して、制御・監視対象システム３００での異常等の事象発生の予兆検知を実現する。図２２に、遷移確率表１２５０を用いた監視処理フローの一例を示している。図２２の監視処理フローは、例えばクライアント計算機４００又は入出力装置１５０からの監視処理実行指示入力を契機として開始される（Ｓ２０００）。あるいは、時系列データ処理装置１００のデータ受信部１２２１が制御・監視対象システム３００から時系列データを受信したことを契機とすることもできる。
【００６７】
Ｓ２０００で図２２の監視処理フローが開始されると、まずデータ受信部１２２１が制御・監視対象システム３００から時系列データを受信する（Ｓ２００１）。データ受信部１２２１は、受信した時系列データが定量的データであるか定性的データであるか判定し（Ｓ２００２）、定量的データであると判定した場合（Ｓ２００２、定量的）、データ受信部１２２１は、集約データテーブル２１０に規定されている閾値によって定量的データを集約する（Ｓ２００３）。Ｓ２００２で定性的データであると判定した場合（Ｓ２００２、定性的）、データ受信部１２２１は、そのまま処理をＳ２００４に移行させる。
【００６８】
Ｓ２００４では、データ監視部１２２３が、遷移確率表１２５０に格納されている監視クエリ１２５１に基づいて、集約データを監視する（Ｓ２００４）。データ監視部１２２３は、監視対象が各監視クエリ１２５１の第１パターン１２５２の第１要素であるか判定し（Ｓ２００５）、第１パターン１２５２の第１要素であると判定した場合（Ｓ２００５、Ｙｅｓ）、データ監視部１２２３は、Ｓ２００６の処理に移行する。第１パターン１２５２の第１要素でないと判定した場合（Ｓ２００５、Ｎｏ）、データ監視部１２２３は、Ｓ２００１において次の時系列データ受信を待機する。
【００６９】
Ｓ２００６では、遷移確率算出部１２２２３が、遷移確率表１２５０の第１パターンの第１要素検出回数１２５２１の値を１だけインクリメントし、対象パターンを第１パターンとして設定する。次いで、データ監視部１２２３は、以降の集約データを監視し（Ｓ２００７）、対応する監視クエリ１２５１に設定されている間隔条件内で対象パターンの第２要素に一致する集約データを受領したか判定する（Ｓ２００８）。間隔条件内で対象パターンの第２要素に一致する集約データを受領したと判定した場合（Ｓ２００８、Ｙｅｓ）、データ監視部１２２３はＳ２００９の処理に移行する。間隔条件内で対象パターンの第２要素に一致する集約データを受領しなかったと判定した場合（Ｓ２００８、Ｎｏ）、データ監視部１２２３は、Ｓ２００１において次の時系列データ受信を待機する。
【００７０】
Ｓ２００９では、遷移確率算出部１２２２３が、遷移確率表１２５０に記録されている第２要素遷移回数１２５２２の値を１だけインクリメントし（Ｓ２００９）、第１パターンの第１要素から第２要素へ遷移する遷移確率を算出して遷移確率表１２５０に記録する（Ｓ２０１０）。次いで、データ監視部１２２３は、遷移確率表１２５０から処理対象としている監視クエリ１２５１について、次のパターンが記録されているか判定し（Ｓ２０１１）、次のパターンが記録されていると判定した場合（Ｓ２０１１、Ｙｅｓ）、Ｓ２００６へ戻って次のパターンについての遷移確率算出を行う。この際、図２２中で第１パターンとあるのは、第２パターン、第３パターン等と読み替えるものとする。
【００７１】
処理対象としている監視クエリ１２５１について、次のパターンが記録されていないと判定した場合（Ｓ２０１１、Ｎｏ）、データ監視部１２２３は、算出した各パターンの遷移確率の積を求め、その値がユーザ設定の閾値を超えているか判定する（Ｓ２０１２）。ユーザ設定の閾値を超えていないと判定した場合（Ｓ２０１２、Ｎｏ）、データ監視部１２２３は、Ｓ２００１に戻って次の時系列データ受信を待機する。ユーザ設定の閾値を超えていると判定した場合（Ｓ２０１２、Ｙｅｓ）、データ監視部１２２３は、Ｓ２０１２までの処理で算出された遷移確率の積の値を、処理対象の監視クエリが示唆する事象に関する予兆として、クライアント計算機４００又は入出力装置１５０を通じてユーザに通知し（Ｓ２０１３）、本処理を終了する（Ｓ２０１４）。
【００７２】
以上説明した遷移確率表による時系列データの監視処理によれば、特定の時系列データの発生パターンに関する確率に基づいて、制御・監視対象システム３００において予想される異常等の事象発生を的確に検出することができる。
【００７３】
なお、以上説明した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその等価物も含まれる。
【図１】
0005842010.tif 000002
【図２Ａ】
0005842010.tif 000003
【図２Ｂ】
0005842010.tif 000004
【図３】
0005842010.tif 000005
【図４】
0005842010.tif 000006
【図５】
0005842010.tif 000007
【図６】
0005842010.tif 000008
【図７】
0005842010.tif 000009
【図８】
0005842010.tif 000010
【図９】
0005842010.tif 000011
【図１０】
0005842010.tif 000012
【図１１】
0005842010.tif 000013
【図１２】
0005842010.tif 000014
【図１３】
0005842010.tif 000015
【図１４】
0005842010.tif 000016
【図１５】
0005842010.tif 000017
【図１６】
0005842010.tif 000018
【図１７】
0005842010.tif 000019
【図１８】
0005842010.tif 000020
【図１９】
0005842010.tif 000021
【図２０】
0005842010.tif 000022
【図２１】
0005842010.tif 000023
【図２２】
0005842010.tif 000024