(57)【要約】  系列データ解析装置（１０）において、算出部（２１）は、ある事象を観測して得られた時系列データである入力系列データ（３２）と、その事象についての標準の時系列データである参照系列データ（３１）とを比較して、互いに対応する入力系列データ（３２）のデータ要素と参照系列データ（３１）のデータ要素との組み合わせを抽出する。算出部（２１）は、抽出した組み合わせごとに、参照系列データ（３１）での事象の進捗に対する、入力系列データ（３２）での事象の進捗の相対速度である相対進捗速度を算出する。判定部（２２）は、算出部（２１）により算出された相対進捗速度によって、入力系列データ（３２）での事象の進捗に異常があるかどうかを判定する。
2019155533.tif 000002
【特許請求の範囲】
【請求項１】
ある事象を観測して得られた時系列データである入力系列データと、前記事象についての標準の時系列データである参照系列データとを比較して、互いに対応する前記入力系列データのデータ要素と前記参照系列データのデータ要素との組み合わせを抽出し、抽出した組み合わせごとに、前記参照系列データでの前記事象の進捗に対する、前記入力系列データでの前記事象の進捗の相対速度である相対進捗速度を算出する算出部と、
前記算出部により算出された相対進捗速度によって、前記入力系列データでの前記事象の進捗に異常があるかどうかを判定する判定部と
を備える系列データ解析装置。
【請求項２】
前記算出部は、前記入力系列データと前記参照系列データとの間のワーピングパスを算出し、算出したワーピングパスの要素を、前記入力系列データのデータ要素と前記参照系列データのデータ要素との組み合わせとして抽出する請求項１に記載の系列データ解析装置。
【請求項３】
前記入力系列データは、映像のデータであり、前記映像の各フレームが前記入力系列データのデータ要素として扱われる請求項１または２に記載の系列データ解析装置。
【請求項４】
前記判定部は、前記相対進捗速度とともに、前記算出部により抽出された２つ以上の組み合わせにおいて、前記参照系列データの連続するデータ要素が前記入力系列データの同じデータ要素に対応しているかどうかによって、前記異常があるかどうかを判定する請求項１から３のいずれか１項に記載の系列データ解析装置。
【請求項５】
前記判定部は、前記参照系列データに含まれる、ある区間のデータでの前記事象の進捗に対する相対速度によって、その区間に対応する区間のデータが前記入力系列データから抜けているという異常があるかどうかを判定する請求項１から４のいずれか１項に記載の系列データ解析装置。
【請求項６】
前記判定部は、前記相対進捗速度とともに、前記算出部により抽出された２つ以上の組み合わせにおいて、前記入力系列データの連続するデータ要素が前記参照系列データの同じデータ要素に対応しているかどうかによって、前記異常があるかどうかを判定する請求項１から５のいずれか１項に記載の系列データ解析装置。
【請求項７】
前記判定部は、前記入力系列データに含まれる、ある区間のデータでの前記事象の進捗の相対速度によって、その区間のデータが標準外のデータであるという異常があるかどうかを判定する請求項１から６のいずれか１項に記載の系列データ解析装置。
【請求項８】
前記判定部は、前記参照系列データに含まれる、ある第１区間に対応する区間のデータが前記入力系列データから抜けているという異常と、前記入力系列データに含まれる、ある第２区間のデータが標準外のデータであるという異常とがあると判定した場合、前記第２区間のデータを前記入力系列データから削除し、削除したデータを前記第１区間に対応する区間のデータとして前記入力系列データに挿入することで、前記入力系列データを補正する請求項１から７のいずれか１項に記載の系列データ解析装置。
【請求項９】
前記算出部は、前記判定部により補正される前の前記入力系列データと前記参照系列データとの類似度である第１類似度と、前記判定部により補正された後の前記入力系列データと前記参照系列データとの類似度である第２類似度とを算出し、
前記判定部は、前記第１類似度と前記第２類似度とを比較し、前記第２類似度が前記第１類似度よりも高い場合、前記入力系列データでの前記事象に順番の入替という異常があると判定する請求項８に記載の系列データ解析装置。
【請求項１０】
算出部が、ある事象を観測して得られた時系列データである入力系列データと、前記事象についての標準の時系列データである参照系列データとを比較して、互いに対応する前記入力系列データのデータ要素と前記参照系列データのデータ要素との組み合わせを抽出し、抽出した組み合わせごとに、前記参照系列データでの前記事象の進捗に対する、前記入力系列データでの前記事象の進捗の相対速度である相対進捗速度を算出し、
判定部が、前記算出部により算出された相対進捗速度によって、前記入力系列データでの前記事象の進捗に異常があるかどうかを判定する系列データ解析方法。
【請求項１１】
コンピュータに、
ある事象を観測して得られた時系列データである入力系列データと、前記事象についての標準の時系列データである参照系列データとを比較して、互いに対応する前記入力系列データのデータ要素と前記参照系列データのデータ要素との組み合わせを抽出し、抽出した組み合わせごとに、前記参照系列データでの前記事象の進捗に対する、前記入力系列データでの前記事象の進捗の相対速度である相対進捗速度を算出する算出処理と、
前記算出処理により算出された相対進捗速度によって、前記入力系列データでの前記事象の進捗に異常があるかどうかを判定する判定処理と
を実行させる系列データ解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、系列データ解析装置、系列データ解析方法および系列データ解析プログラムに関するものである。
【背景技術】
【０００２】
特許文献１には、ＤＴＷにより、標準時系列データと異常検出対象時系列データとの間の距離を算出して、異常検出対象時系列データが異常か正常かを調べる方法が記載されている。「ＤＴＷ」は、Ｄｙｎａｍｉｃ  Ｔｉｍｅ  Ｗａｒｐｉｎｇの略語である。【０００３】
特許文献２には、センサデータの時系列的な波形に生じた極値と、その極値の発生時刻とに基づき、波形の正常モデルを学習し、正常モデルと診断対象のセンサデータとを比較して、診断対象のセンサデータが異常か正常かを判定する方法が記載されている。【０００４】
特許文献３には、基準データと基準データの時系列から抽出される特徴係数とから基準得点を求め、対象データと対象データの時系列から抽出される特徴係数とから対象得点を求め、基準得点と対象得点とを比較して、対象データが異常か正常かを判定する方法が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２７１９９７号公報
【特許文献２】特開２０１７−０３３４７０号公報
【特許文献３】特開２０１６−０３８８５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
工場の生産現場では、品質管理のために、「落とした部品を使う」、「ねじを締め忘れる」および「作業順序が異なる」といった作業者の異常動作を見つけたいというニーズが存在する。しかし、異常動作の発見は、現状、監視映像を目視確認することで行われており、監視者にかかる負荷が高い。そこで、映像解析技術により作業映像から異常作業シーンを自動で検出する技術が求められる。【０００７】
工場における作業映像には、ある一連の作業動作パターンが繰り返し現れる。そのため、基準となる作業映像と監視映像とを比較し、差分を見つけることで、作業者の異常動作を自動で検出することができる。ここで、作業映像の解析を系列データの解析と解釈すれば、検出対象シーンとして挙げた「落とした部品を使う」、「ねじを締め忘れる」および「作業順序が異なる」は、それぞれ「標準外の系列データの挿入」、「系列データの抜け」および「系列データの入替」と解釈できる。そのため、これらの系列データの異常をフレーム単位で検出可能な系列データ解析技術が必要となる。しかし、従来技術では、系列データの異常をフレーム単位で検出することができない。【０００８】
本発明は、系列データの異常をデータ要素単位で検出することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一態様に係る系列データ解析装置は、
ある事象を観測して得られた時系列データである入力系列データと、前記事象についての標準の時系列データである参照系列データとを比較して、互いに対応する前記入力系列データのデータ要素と前記参照系列データのデータ要素との組み合わせを抽出し、抽出した組み合わせごとに、前記参照系列データでの前記事象の進捗に対する、前記入力系列データでの前記事象の進捗の相対速度である相対進捗速度を算出する算出部と、
前記算出部により算出された相対進捗速度によって、前記入力系列データでの前記事象の進捗に異常があるかどうかを判定する判定部と
を備える。
【発明の効果】
【００１０】
本発明では、互いに対応する入力系列データのデータ要素と参照系列データのデータ要素との組み合わせごとに、参照系列データでの事象の進捗に対する、入力系列データでの事象の進捗の相対速度である相対進捗速度が算出される。そして、相対進捗速度によって、入力系列データでの事象の進捗に異常があるかどうかが判定される。そのため、本発明によれば、入力系列データの異常をデータ要素単位で検出することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る系列データ解析装置の構成を示すブロック図。
【図２】実施の形態１に係る系列データ解析装置の動作を示すフローチャート。
【図３】実施の形態１に係るワーピングパス算出処理の手順を示すフローチャート。
【図４】実施の形態１に係るワーピングパス算出処理により算出されるワーピングパスの例を示す図。
【図５】実施の形態１に係る相対進捗速度算出処理の手順を示すフローチャート。
【図６】実施の形態１に係る相対進捗速度算出処理により算出されるワーピングパスの傾きの例を示す図。
【図７】実施の形態１に係る相対進捗速度算出処理により算出される相対進捗速度の例を示す図。
【図８】実施の形態１に係る系列データ抜け区間検出処理の手順を示すフローチャート。
【図９】実施の形態１に係る系列データ抜け区間検出処理により検出される系列データ抜け区間の例を示す図。
【図１０】実施の形態１に係る標準外系列データ挿入区間検出処理の手順を示すフローチャート。
【図１１】実施の形態１に係る標準外系列データ挿入区間検出処理により検出される標準外系列データ挿入区間の例を示す図。
【図１２】実施の形態１に係る系列データ入替区間検出処理の手順を示すフローチャート。
【図１３】実施の形態１に係る系列データ入替区間検出処理により検出される系列データ入替区間の例を示す図。
【図１４】実施の形態１に係る異常情報記録処理により記録される異常情報の例を示す図。
【図１５】実施の形態１に係る異常情報記録処理により記録される異常情報の例を示す図。
【図１６】実施の形態１の変形例に係る系列データ解析装置の構成を示すブロック図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について、図を用いて説明する。各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。なお、本発明は、以下に説明する実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。例えば、以下に説明する実施の形態は、部分的に実施されても構わない。
【００１３】
実施の形態１．
本実施の形態について、図１から図１５を用いて説明する。
【００１４】
＊＊＊構成の説明＊＊＊
図１を参照して、本実施の形態に係る系列データ解析装置１０の構成を説明する。
【００１５】
系列データ解析装置１０は、コンピュータである。系列データ解析装置１０は、プロセッサ１１を備えるとともに、メモリ１２、参照系列データ記憶装置１３、入力系列データ記憶装置１４および異常情報記憶装置１５といった他のハードウェアを備える。プロセッサ１１は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００１６】
系列データ解析装置１０は、機能要素として、算出部２１と、判定部２２とを備える。算出部２１は、ワーピングパス算出部２３と、相対進捗速度算出部２４とを備える。判定部２２は、データ抜け検出部２５と、標準外データ挿入検出部２６と、データ入替推論部２７と、異常情報記録部２８とを備える。算出部２１および判定部２２の機能は、ソフトウェアにより実現される。
【００１７】
プロセッサ１１は、系列データ解析プログラムを実行する装置である。系列データ解析プログラムは、算出部２１および判定部２２の機能を実現するプログラムである。プロセッサ１１は、例えば、ＣＰＵ、ＧＰＵ、ＤＳＰ、または、これらのうちいくつか、もしくは、すべての組み合わせである。「ＣＰＵ」は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略語である。「ＧＰＵ」は、Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略語である。「ＤＳＰ」は、Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒの略語である。
【００１８】
メモリ１２は、系列データ解析プログラムと、系列データ解析プログラムによって生成されるワーピングパス情報３３、相対進捗速度情報３４、系列データ抜け区間情報３５、標準外系列データ挿入区間情報３６、系列データ入替区間情報３７およびその他の情報とを記憶する装置である。メモリ１２は、例えば、ＲＡＭ、フラッシュメモリまたはこれらの組み合わせである。「ＲＡＭ」は、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略語である。
【００１９】
参照系列データ記憶装置１３は、系列データ解析プログラムに入力される参照系列データ３１を記憶する装置である。参照系列データ記憶装置１３は、例えば、ＨＤＤ、フラッシュメモリまたはこれらの組み合わせである。「ＨＤＤ」は、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略語である。
【００２０】
入力系列データ記憶装置１４は、系列データ解析プログラムに入力される入力系列データ３２を記憶する装置である。入力系列データ記憶装置１４は、例えば、ＨＤＤ、フラッシュメモリまたはこれらの組み合わせである。
【００２１】
異常情報記憶装置１５は、系列データ解析プログラムから出力される異常情報３８を記憶する装置である。異常情報記憶装置１５は、例えば、ＨＤＤ、フラッシュメモリまたはこれらの組み合わせである。
【００２２】
参照系列データ記憶装置１３、入力系列データ記憶装置１４および異常情報記憶装置１５は、系列データ解析装置１０の外部に設けられてもよい。参照系列データ記憶装置１３、入力系列データ記憶装置１４および異常情報記憶装置１５は、それぞれ独立したハードウェアとして実装されてもよいし、統合されたハードウェアとして実装されてもよい。
【００２３】
系列データ解析装置１０は、ハードウェアとして、通信デバイス、入力機器およびディスプレイを備えてもよい。
【００２４】
通信デバイスは、系列データ解析プログラムに入力される参照系列データ３１、入力系列データ３２およびその他のデータを受信するレシーバと、系列データ解析プログラムから出力される異常情報３８およびその他の情報を送信するトランスミッタとを含む。通信デバイスは、例えば、通信チップまたはＮＩＣである。「ＮＩＣ」は、Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄの略語である。
【００２５】
入力機器は、系列データ解析プログラムへの閾値等のパラメータの入力のためにユーザにより操作される機器である。入力機器は、例えば、マウス、キーボード、タッチパネル、または、これらのうちいくつか、もしくは、すべての組み合わせである。
【００２６】
ディスプレイは、系列データ解析プログラムから出力される異常情報３８およびその他の情報を画面に表示する機器である。ディスプレイは、例えば、ＬＣＤである。「ＬＣＤ」は、Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙの略語である。
【００２７】
系列データ解析プログラムは、メモリ１２からプロセッサ１１に読み込まれ、プロセッサ１１によって実行される。メモリ１２には、系列データ解析プログラムだけでなく、ＯＳも記憶されている。「ＯＳ」は、Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍの略語である。プロセッサ１１は、ＯＳを実行しながら、系列データ解析プログラムを実行する。なお、系列データ解析プログラムの一部または全部がＯＳに組み込まれていてもよい。
【００２８】
系列データ解析プログラムおよびＯＳは、補助記憶装置に記憶されていてもよい。補助記憶装置は、例えば、ＨＤＤ、フラッシュメモリまたはこれらの組み合わせである。系列データ解析プログラムおよびＯＳは、補助記憶装置に記憶されている場合、メモリ１２にロードされ、プロセッサ１１によって実行される。補助記憶装置は、参照系列データ記憶装置１３、入力系列データ記憶装置１４および異常情報記憶装置１５の少なくともいずれかとして用いられてもよい。
【００２９】
系列データ解析装置１０は、プロセッサ１１を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、系列データ解析プログラムの実行を分担する。それぞれのプロセッサは、例えば、ＣＰＵ、ＧＰＵ、ＤＳＰ、または、これらのうちいくつか、もしくは、すべての組み合わせである。
【００３０】
系列データ解析プログラムにより利用、処理または出力される信号値および変数値は、メモリ１２、補助記憶装置、または、プロセッサ１１内のレジスタまたはキャッシュメモリに記憶される。
【００３１】
系列データ解析プログラムは、算出部２１および判定部２２により行われる処理をそれぞれ算出処理および判定処理としてコンピュータに実行させるプログラムである。系列データ解析プログラムは、コンピュータ読取可能な媒体に記録されて提供されてもよいし、記録媒体に格納されて提供されてもよいし、プログラムプロダクトとして提供されてもよい。
【００３２】
系列データ解析装置１０は、１台のコンピュータで構成されていてもよいし、複数台のコンピュータで構成されていてもよい。系列データ解析装置１０が複数台のコンピュータで構成されている場合は、算出部２１および判定部２２の機能が、各コンピュータに分散されて実現されてもよい。
【００３３】
＊＊＊動作の説明＊＊＊
図２から図１５を参照して、本実施の形態に係る系列データ解析装置１０の動作を説明する。系列データ解析装置１０の動作は、本実施の形態に係る系列データ解析方法に相当する。
【００３４】
図２は、系列データ解析装置１０により行われる系列データ解析処理の手順を示している。
【００３５】
系列データ解析処理は、ステップＳ１００の系列データ読込処理と、ステップＳ２００のワーピングパス算出処理と、ステップＳ３００の異常抽出処理と、ステップＳ４００の異常情報書出処理との４つに大きく分けられる。
【００３６】
ステップＳ１００において、算出部２１は、入力系列データ３２と参照系列データ３１とを取得する。入力系列データ３２は、ある事象Ｘを観測して得られた時系列データである。事象Ｘは、任意の事象でよいが、本実施の形態では撮影して映像に記録できる事象であり、具体的には工場における作業である。すなわち、入力系列データ３２は、本実施の形態では映像のデータであり、具体的には工場で行われた作業を撮影した映像のデータである。参照系列データ３１は、事象Ｘについての標準の時系列データである。参照系列データ３１は、入力系列データ３２と同じ形式のデータでなくてもよいが、本実施の形態では入力系列データ３２と同じ形式、すなわち、映像のデータであり、具体的には正しく行われた作業を撮影した映像のデータである。
【００３７】
ステップＳ１００の系列データ読込処理では、具体的には、ステップＳ１１０の参照系列データ読込処理と、ステップＳ１２０の入力系列データ読込処理とが行われる。
【００３８】
ステップＳ１１０の参照系列データ読込処理では、参照系列データ記憶装置１３から読み込んだ参照系列データ３１をメモリ１２に書き出す処理が算出部２１により行われる。ステップＳ１２０の入力系列データ読込処理では、入力系列データ記憶装置１４から読み込んだ入力系列データ３２をメモリ１２に書き出す処理が算出部２１のワーピングパス算出部２３により行われる。
【００３９】
ステップＳ２００において、算出部２１は、入力系列データ３２と参照系列データ３１とを比較して、互いに対応する入力系列データ３２のデータ要素と参照系列データ３１のデータ要素との組み合わせを抽出する。前述したように、入力系列データ３２は、映像のデータであり、映像の各フレームが入力系列データ３２のデータ要素として扱われる。参照系列データ３１も、映像のデータであり、映像の各フレームが参照系列データ３１のデータ要素として扱われる。
【００４０】
ステップＳ２００のワーピングパス算出処理では、具体的には、ステップＳ２１０の類似度マップ算出処理と、ステップＳ２２０のスコアマップ算出処理と、ステップＳ２３０のワーピングパス算出処理とが行われる。
【００４１】
ステップＳ２１０の類似度マップ算出処理と、ステップＳ２２０のスコアマップ算出処理と、ステップＳ２３０のワーピングパス算出処理とについては後述する。
【００４２】
ステップＳ３００において、算出部２１は、ステップＳ２００で抽出した組み合わせごとに、相対進捗速度Ｖを算出する。相対進捗速度Ｖは、参照系列データ３１での事象Ｘの進捗に対する、入力系列データ３２での事象Ｘの進捗の相対速度である。判定部２２は、算出部２１により算出された相対進捗速度Ｖによって、入力系列データ３２での事象Ｘの進捗に異常があるかどうかを判定する。
【００４３】
ステップＳ３００の異常抽出処理では、具体的には、ステップＳ３１０の相対進捗速度算出処理と、ステップＳ３２０の系列データ抜け区間検出処理と、ステップＳ３３０の標準外系列データ挿入区間検出処理と、ステップＳ３４０の系列データ入替区間推論処理とが行われる。
【００４４】
ステップＳ３１０の相対進捗速度算出処理と、ステップＳ３２０の系列データ抜け区間検出処理と、ステップＳ３３０の標準外系列データ挿入区間検出処理と、ステップＳ３４０の系列データ入替区間推論処理とについては後述する。
【００４５】
ステップＳ４００の異常情報書出処理では、ステップＳ３００の異常抽出処理で抽出された異常情報３８を異常情報記憶装置１５に書き出す処理が判定部２２の異常情報記録部２８により行われる。
【００４６】
図３は、ステップＳ２００のワーピングパス算出処理の手順を示している。
【００４７】
ステップＳ２００において、算出部２１のワーピングパス算出部２３は、参照系列データ記憶装置１３と入力系列データ記憶装置１４とから読み込んだ参照系列データ３１と入力系列データ３２とについて、ＤＰマッチングを用いて両系列データ間の対応するフレームを示したワーピングパス情報３３を算出する。「ＤＰ」は、Ｄｙｎａｍｉｃ  Ｐｒｏｇｒａｍｍｉｎｇの略語である。
【００４８】
先述のとおり、ステップＳ２００のワーピングパス算出処理では、具体的には、ステップＳ２１０の類似度マップ算出処理と、ステップＳ２２０のスコアマップ算出処理と、ステップＳ２３０のワーピングパス算出処理とが行われる。
【００４９】
ステップＳ２１０において、ワーピングパス算出部２３は、入力系列データ３２と参照系列データ３１とについて、全フレーム間の類似度ＳＩＭ［ｉ，ｊ］を算出し、メモリ１２に書き出す。類似度ＳＩＭ［ｉ，ｊ］は次式で計算される。
ＳＩＭ［ｉ，ｊ］＝Ａ［ｉ］・Ｂ［ｊ］／（｜｜Ａ［ｉ］｜｜｜｜Ｂ［ｊ］｜｜）
ここで、ｉ＝｛０，・・・，Ｑ−１｝、ｊ＝｛０，・・・，Ｐ−１｝、Ｑは入力系列データの長さ、Ｐは参照系列データの長さである。ＡおよびＢはそれぞれ入力系列データ３２および参照系列データ３１であり、それぞれ次式で表される。
Ａ＝｛Ａ［０］，Ａ［１］，・・・，Ａ［ｉ］，・・・，Ａ［Ｑ−１］｝
Ｂ＝｛Ｂ［０］，Ｂ［１］，・・・，Ｂ［ｊ］，・・・，Ｂ［Ｐ−１］｝
ここで、Ａ［ｉ］＝｛Ａ［ｉ，０］，Ａ［ｉ，１］，・・・，Ａ［ｉ，Ｄ−１］｝、Ｂ［ｊ］＝｛Ｂ［ｊ，０］，Ｂ［ｊ，１］，・・・，Ｂ［ｊ，Ｄ−１］｝である。Ｄはデータ次元数である。
【００５０】
ステップＳ２２０において、ワーピングパス算出部２３は、スコアマップＤＴＷを次式で初期化する。
ＤＴＷ［＊，０］＝ＳＩＭ［＊，０］
ＤＴＷ［０，＊］＝ＳＩＭ［０，＊］
【００５１】
その後、ワーピングパス算出部２３は、類似度マップＳＩＭからスコアマップＤＴＷを次式で算出する。
ＤＴＷ［ｋ，ｈ］＝ＳＩＭ［ｋ−１，ｈ］＋ｍａｘ｛ＤＴＷ［ｋ−１，ｈ］，ＤＴＷ［ｋ，ｈ−１］，ＤＴＷ［ｋ−１，ｈ−１］｝
ここで、ｋ＝｛１，・・・，Ｑ−１｝、ｈ＝｛１，・・・，Ｐ−１｝である。
【００５２】
ステップＳ２３０において、ワーピングパス算出部２３は、スコアマップＤＴＷから、ワーピングパスを探索する。ワーピングパス算出部２３は、ＤＴＷ［Ｑ−１，Ｐ−１］のセルを起点とし、当該セル値の算出で用いた式のｍａｘ関数で選択された隣接セルを辿ることを繰り返すことでワーピングパスを探索する。
【００５３】
このように、本実施の形態において、算出部２１は、入力系列データ３２と参照系列データ３１との間のワーピングパスを算出する。そして、算出部２１は、算出したワーピングパスの要素を、入力系列データ３２のデータ要素と参照系列データ３１のデータ要素との組み合わせとして抽出する。
【００５４】
ワーピングパスの例を図４に示す。この例では、ワーピングパスの先頭の要素は、入力系列データ３２の先頭のフレームと参照系列データ３１の先頭のフレームとの組み合わせとして抽出されている。ワーピングパスの２番目の要素は、入力系列データ３２の２番目のフレームと参照系列データ３１の先頭のフレームとの組み合わせとして抽出されている。ワーピングパスの３番目の要素は、入力系列データ３２の３番目のフレームと参照系列データ３１の２番目のフレームとの組み合わせとして抽出されている。ワーピングパスの４番目の要素は、入力系列データ３２の４番目のフレームと参照系列データ３１の２番目のフレームとの組み合わせとして抽出されている。ワーピングパスの５番目以降の要素も、入力系列データ３２のいずれかのフレームと参照系列データ３１のいずれかのフレームとの組み合わせとして抽出されている。
【００５５】
図５は、ステップＳ３１０の相対進捗速度算出処理の手順を示している。
【００５６】
ステップＳ３１０において、算出部２１の相対進捗速度算出部２４は、ワーピングパス算出部２３からワーピングパス情報３３を受け取り、参照系列データ３１と入力系列データ３２との間の相対的な進捗速度をフレーム単位で調べ、相対進捗速度情報３４として出力する。
【００５７】
ステップＳ３１０の相対進捗速度算出処理では、具体的には、ワーピングパスの傾きθを計算するステップＳ３１１の処理と、ワーピングパスの傾きθから相対進捗速度Ｖを計算するステップＳ３１２の処理とが行われる。
【００５８】
ステップＳ３１１において、相対進捗速度算出部２４は、ステップＳ２３０で算出されたワーピングパスについて、局所的な傾きθを次式で計算する。
ｄ≦ｍ＜Ｍ−１−ｄの場合：
θ［ｍ］＝ｔａｎ−１（ｑ［ｍ＋ｄ］−ｑ［ｍ−ｄ］，ｐ［ｍ＋ｄ］−ｐ［ｍ−ｄ］）
ｍ＜ｄの場合：
θ［ｍ］＝ｔａｎ−１（ｑ［ｍ＋ｄ］−ｑ［０］，ｐ［ｍ＋ｄ］−ｐ［０］）
ｍ≧Ｍ−１−ｄの場合：
θ［ｍ］＝ｔａｎ−１（ｑ［Ｍ−１］−ｑ［ｍ−ｄ］，ｐ［Ｍ−１］−ｐ［ｍ−ｄ］）
ここで、ｍ＝｛０，・・・，Ｍ−１｝、Ｍはワーピングパスの長さである。ｐ［ｍ］およびｑ［ｍ］はそれぞれワーピングパス上のｍ番目のセルに対応する参照系列データ３１のフレーム番号と入力系列データ３２のフレーム番号とを示す。
【００５９】
ステップＳ３１２において、相対進捗速度算出部２４は、ワーピングパスの傾きθから、次式を用いて相対進捗速度Ｖを計算する。
Ｖ［ｍ］＝（θ［ｍ］−π／４）／（π／４）
【００６０】
このように、本実施の形態において、算出部２１は、抽出した入力系列データ３２のデータ要素と参照系列データ３１のデータ要素との組み合わせごとに、相対進捗速度Ｖを算出する。
【００６１】
ワーピングパスの傾きθの例を図６に示す。この例では、ｄ＝１であるが、ｄは１より大きい整数に設定されてもよい。
【００６２】
相対進捗速度Ｖの例を図７に示す。この例では、図４および図６の例に従って相対進捗速度Ｖが算出されている。そのため、ワーピングパスの先頭の要素については、θ［０］＝ｔａｎ−１（ｑ［１］−ｑ［０］，ｐ［１］−ｐ［０］）＝ｔａｎ−１（１，０）、Ｖ［０］＝（θ［０］−π／４）／（π／４）＝（ｔａｎ−１（１，０）−π／４）／（π／４）＝−１．０が算出されている。ワーピングパスの２番目の要素については、θ［１］＝ｔａｎ−１（ｑ［２］−ｑ［０］，ｐ［２］−ｐ［０］）＝ｔａｎ−１（１，２）、Ｖ［１］＝（θ［１］−π／４）／（π／４）＝（ｔａｎ−１（１，２）−π／４）／（π／４）＝−０．４が算出されている。ワーピングパスの３番目の要素については、θ［２］＝ｔａｎ−１（ｑ［３］−ｑ［１］，ｐ［３］−ｐ［１］）＝ｔａｎ−１（１，２）、Ｖ［２］＝（θ［２］−π／４）／（π／４）＝（ｔａｎ−１（１，２）−π／４）／（π／４）＝−０．４が算出されている。ワーピングパスの４番目の要素については、θ［３］＝ｔａｎ−１（ｑ［４］−ｑ［２］，ｐ［４］−ｐ［２］）＝ｔａｎ−１（１，１）、Ｖ［３］＝（θ［３］−π／４）／（π／４）＝（ｔａｎ−１（１，１）−π／４）／（π／４）＝０が算出されている。ワーピングパスの５番目以降の要素についても、Ｖ［ｍ］が算出されている。
【００６３】
図８は、ステップＳ３２０の系列データ抜け区間検出処理の手順を示している。
【００６４】
ステップＳ３２０において、判定部２２のデータ抜け検出部２５は、相対進捗速度算出部２４から受け取った相対進捗速度情報３４から、入力系列データ３２について、参照系列データ３１のとおり系列データが抜けていないかを調べる。データ抜け検出部２５は、系列データが抜けた区間がある場合は、系列データ抜け区間情報３５を出力する。すなわち、データ抜け検出部２５は、ステップＳ３１０で計算された相対進捗速度Ｖをもとに、入力系列データ３２について、参照系列データ３１と比較したときの系列データ抜け区間を検出する。
【００６５】
ステップＳ３２１において、データ抜け検出部２５は、検出対象区間の開始フレームと区間の長さとを記憶する「開始フレーム番号」と「カウンタ」とをそれぞれ−１および０で初期化する。
【００６６】
その後、データ抜け検出部２５は、ワーピングパスを構成するセルを指すインデックスｒを用いて、開始セルから終了セルまで、順番に次の処理を実施する。
【００６７】
相対進捗速度Ｖ［ｒ］が１．０である場合、ステップＳ３２２において、データ抜け検出部２５は、カウンタを１インクリメントする。このとき、開始フレーム番号に初期化コードである−１が設定されていれば、ステップＳ３２３において、データ抜け検出部２５は、開始フレーム番号にインデックスｒを代入する。相対進捗速度Ｖ［ｒ］が１．０でない場合、データ抜け検出部２５は、カウンタと閾値Ｔ１との大小を調べる。カウンタの値が閾値Ｔ１より大きければ、ステップＳ３２４において、データ抜け検出部２５は、区間［開始フレーム番号，ｒ−１］を系列データ抜け区間として検出する。続いて、ステップＳ３２５において、データ抜け検出部２５は、カウンタと開始フレーム番号とをそれぞれ初期化する。なお、閾値Ｔ１は、適宜調節される。
【００６８】
このように、本実施の形態において、判定部２２は、相対進捗速度Ｖとともに、算出部２１により抽出された２つ以上の組み合わせにおいて、参照系列データ３１の連続するデータ要素が入力系列データ３２の同じデータ要素に対応しているかどうかによって、入力系列データ３２での事象Ｘの進捗に異常があるかどうかを判定する。
【００６９】
判定部２２は、参照系列データ３１に含まれる、ある区間Ｒ１のデータでの事象Ｘの進捗に対する相対速度によって、その区間Ｒ１に対応する区間Ｒ２のデータが入力系列データ３２から抜けているという異常があるかどうかを判定する。
【００７０】
系列データ抜け区間の例を図９に示す。本実施の形態では、相対進捗速度Ｖが継続して１．０であり、かつ、長さが閾値Ｔ１によって決まる長さを超える区間Ｒ１が系列データ抜け区間として検出されている。これにより、「ねじを締め忘れる」といった作業者の異常動作を自動的に検出することができる。
【００７１】
図１０は、ステップＳ３３０の標準外系列データ挿入区間検出処理の手順を示している。
【００７２】
ステップＳ３３０において、判定部２２の標準外データ挿入検出部２６は、相対進捗速度算出部２４から受け取った相対進捗速度情報３４から、入力系列データ３２について参照系列データ３１に現れない系列データが挿入されていないかを調べる。標準外データ挿入検出部２６は、参照系列データ３１には含まれない系列データ区間がある場合は、標準外系列データ挿入区間情報３６を出力する。すなわち、標準外データ挿入検出部２６は、ステップＳ３１０で計算された相対進捗速度Ｖをもとに、入力系列データ３２について、参照系列データ３１と比較したときの標準外系列データ挿入区間を検出する。
【００７３】
ステップＳ３３１において、標準外データ挿入検出部２６は、検出対象区間の開始フレームと区間の長さとを記憶する「開始フレーム番号」と「カウンタ」とをそれぞれ−１および０で初期化する。
【００７４】
その後、標準外データ挿入検出部２６は、ワーピングパスを構成するセルを指すインデックスｒを用いて、開始セルから終了セルまで、順番に次の処理を実施する。
【００７５】
相対進捗速度Ｖ［ｒ］が−１．０である場合、ステップＳ３３２において、標準外データ挿入検出部２６は、カウンタを１インクリメントする。このとき、開始フレーム番号に初期化コードである−１が設定されていれば、ステップＳ３３３において、標準外データ挿入検出部２６は、開始フレーム番号にインデックスｒを代入する。相対進捗速度Ｖ［ｒ］が−１．０でない場合、標準外データ挿入検出部２６は、カウンタと閾値Ｔ２との大小を調べる。カウンタの値が閾値Ｔ２より大きければ、ステップＳ３３４において、標準外データ挿入検出部２６は、区間［開始フレーム番号，ｒ−１］を標準外系列データ挿入区間として検出する。続いて、ステップＳ３３５において、標準外データ挿入検出部２６は、カウンタと開始フレーム番号とをそれぞれ初期化する。なお、閾値Ｔ２は、適宜調節される。
【００７６】
このように、本実施の形態において、判定部２２は、相対進捗速度Ｖとともに、算出部２１により抽出された２つ以上の組み合わせにおいて、入力系列データ３２の連続するデータ要素が参照系列データ３１の同じデータ要素に対応しているかどうかによって、入力系列データ３２での事象Ｘの進捗に異常があるかどうかを判定する。
【００７７】
判定部２２は、入力系列データ３２に含まれる、ある区間Ｒ２のデータでの事象Ｘの進捗に対する相対速度によって、その区間Ｒ２のデータが標準外のデータであるという異常があるかどうかを判定する。
【００７８】
標準外系列データ挿入区間の例を図１１に示す。本実施の形態では、相対進捗速度Ｖが継続して−１．０であり、かつ、長さが閾値Ｔ２によって決まる長さを超える区間Ｒ２が標準外系列データ挿入区間として検出されている。これにより、「落とした部品を使う」といった作業者の異常動作を自動的に検出することができる。
【００７９】
図１２は、ステップＳ３４０の系列データ入替区間推論処理の手順を示している。
【００８０】
ステップＳ３４０において、判定部２２のデータ入替推論部２７は、データ抜け検出部２５と標準外データ挿入検出部２６とからそれぞれ受け取った系列データ抜け区間情報３５と標準外系列データ挿入区間情報３６とから、入力系列データ３２について、参照系列データ３１どおりの順番であるかを調べる。データ入替推論部２７は、系列データの入替が見つかれば、系列データ入替区間情報３７を出力する。すなわち、データ入替推論部２７は、系列データ抜け区間情報３５と標準外系列データ挿入区間情報３６とから、入力系列データ３２について、参照系列データ３１に対する系列データの入替が発生していないかを調べる。
【００８１】
はじめに、データ入替推論部２７は、検出された系列データ抜け区間と標準外系列データ挿入区間とがそれぞれ１つずつであるかを確認する。少なくともいずれかの区間の数が１つでない場合は、データ入替推論部２７は、系列データの入替はなしと判断する。両区間の数が１つである場合は、データ入替推論部２７は、系列データ抜け区間に対応する参照系列データ３１の区間の長さＬ１と標準外系列データ挿入区間に対応する入力系列データ３２の区間の長さＬ２との差が閾値Ｔ３より小さいかを調べる。両区間長さの差が閾値Ｔ３より小さい場合は、ステップＳ３４１において、データ入替推論部２７は、標準外系列データ区間の系列データを切り出し、系列データ抜け区間発生個所に挿入することで、入力系列データ３２を加工する。加工した入力系列データについて、元の入力系列データ３２と同様に、ステップＳ２１０の類似度マップ算出処理と、ステップＳ２２０のスコアマップ算出処理と、ステップＳ２３０のワーピングパス算出処理とが実施される。ステップＳ３４２において、データ入替推論部２７は、ワーピングパスのスコア値を調べ、加工前の入力系列データ３２のワーピングパスのスコア値との大小を比較する。スコア値とは、ワーピングパス終端セル位置におけるスコアマップの値のことである。加工前よりスコア値が大きくなった場合は、ステップＳ３４３において、データ入替推論部２７は、当該両区間を系列データ入替区間として検出する。なお、閾値Ｔ３は、適宜調節される。
【００８２】
このように、本実施の形態において、判定部２２が、参照系列データ３１に含まれる、ある第１区間Ｒ１ａに対応する区間Ｒ２ａのデータが入力系列データ３２から抜けているという異常と、入力系列データ３２に含まれる、ある第２区間Ｒ２ｂのデータが標準外のデータであるという異常とがあると判定する場合がある。その場合、判定部２２は、第２区間Ｒ２ｂのデータを入力系列データ３２から削除し、削除したデータを第１区間Ｒ１ａに対応する区間Ｒ２ａのデータとして入力系列データ３２に挿入することで、入力系列データ３２を補正する。
【００８３】
算出部２１は、判定部２２により補正される前の入力系列データ３２と参照系列データ３１との類似度である第１類似度と、判定部２２により補正された後の入力系列データと参照系列データ３１との類似度である第２類似度とを算出する。判定部２２は、第１類似度と第２類似度とを比較する。第２類似度が第１類似度よりも高い場合、判定部２２は、入力系列データ３２での事象Ｘに順番の入替という異常があると判定する。
【００８４】
系列データ入替区間の例を図１３に示す。この例のように、系列データ入替区間を検出することにより、「作業順序が異なる」といった作業者の異常動作を自動的に検出することができる。
【００８５】
図２に示したステップ４００において、判定部２２の異常情報記録部２８は、データ抜け検出部２５と標準外データ挿入検出部２６とデータ入替推論部２７とからそれぞれ受け取った系列データ抜け区間情報３５と標準外系列データ挿入区間情報３６と系列データ入替区間情報３７とから異常情報３８を生成する。異常情報記録部２８は、異常情報３８を異常情報記録装置１０９に書き出す。異常情報記憶装置１０９への出力の例を図１４および図１５に示す。
【００８６】
＊＊＊実施の形態の効果の説明＊＊＊
本実施の形態では、互いに対応する入力系列データ３２のデータ要素と参照系列データ３１のデータ要素との組み合わせごとに、参照系列データ３１での事象Ｘの進捗に対する、入力系列データ３２での事象Ｘの進捗の相対速度である相対進捗速度が算出される。そして、相対進捗速度によって、入力系列データ３２での事象Ｘの進捗に異常があるかどうかが判定される。そのため、本実施の形態によれば、入力系列データ３２の異常をデータ要素単位で検出することができる。
【００８７】
本実施の形態によれば、入力系列データ３２から「標準外の系列データの挿入」、「系列データの抜け」および「系列データの入替」をフレーム単位で検出することができる。
【００８８】
本実施の形態では、ＤＴＷにより得られた入力系列データ３２と参照系列データ３１との間のフレーム対応情報から、参照系列データ３１と入力系列データ３２との間の相対的なフレーム進捗速度が算出される。フレーム対応情報は、具体的にはワーピングパスである。「系列データの抜け」区間と「標準外系列データの挿入」区間とが異常区間としてフレーム単位で検出される。その後、両異常区間について系列データの順序が入れ替えられる。入替前の入力系列データ３２と入替後の入力系列データとについて、参照系列データ３１との類似度の変化が調べられる。入替により類似度が大きくなった場合には、入力系列データ３２に入替があると判定される。このような処理手続きにより、高い詳細度で入力系列データ３２の異常を検出することが可能となる。
【００８９】
＊＊＊他の構成＊＊＊
本実施の形態では、算出部２１および判定部２２の機能がソフトウェアにより実現されるが、変形例として、算出部２１および判定部２２の機能がハードウェアにより実現されてもよい。この変形例について、主に本実施の形態との差異を説明する。
【００９０】
図１６を参照して、本実施の形態の変形例に係る系列データ解析装置１０の構成を説明する。
【００９１】
系列データ解析装置１０は、電子回路１６、参照系列データ記憶装置１３、入力系列データ記憶装置１４および異常情報記憶装置１５といったハードウェアを備える。
【００９２】
電子回路１６は、算出部２１および判定部２２の機能を実現する専用のハードウェアである。電子回路１６は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＦＰＧＡ、ＡＳＩＣ、または、これらのうちいくつか、もしくは、すべての組み合わせである。「ＩＣ」は、Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略語である。「ＧＡ」は、Ｇａｔｅ  Ａｒｒａｙの略語である。「ＦＰＧＡ」は、Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略語である。「ＡＳＩＣ」は、Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略語である。
【００９３】
系列データ解析装置１０は、電子回路１６を代替する複数の電子回路を備えていてもよい。これら複数の電子回路は、全体として算出部２１および判定部２２の機能を実現する。それぞれの電子回路は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＦＰＧＡ、ＡＳＩＣ、または、これらのうちいくつか、もしくは、すべての組み合わせである。
【００９４】
別の変形例として、算出部２１および判定部２２の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、算出部２１および判定部２２の機能の一部が専用のハードウェアにより実現され、残りがソフトウェアにより実現されてもよい。
【００９５】
プロセッサ１１および電子回路１６は、いずれも処理回路である。すなわち、系列データ解析装置１０の構成が図１および図１６のいずれに示した構成であっても、算出部２１および判定部２２の動作は、処理回路により行われる。
【符号の説明】
【００９６】
１０  系列データ解析装置、１１  プロセッサ、１２  メモリ、１３  参照系列データ記憶装置、１４  入力系列データ記憶装置、１５  異常情報記憶装置、１６  電子回路、２１  算出部、２２  判定部、２３  ワーピングパス算出部、２４  相対進捗速度算出部、２５  データ抜け検出部、２６  標準外データ挿入検出部、２７  データ入替推論部、２８  異常情報記録部、３１  参照系列データ、３２  入力系列データ、３３  ワーピングパス情報、３４  相対進捗速度情報、３５  系列データ抜け区間情報、３６  標準外系列データ挿入区間情報、３７  系列データ入替区間情報、３８  異常情報。
【図１】
2019155533.tif 000003
【図２】
2019155533.tif 000004
【図３】
2019155533.tif 000005
【図４】
2019155533.tif 000006
【図５】
2019155533.tif 000007
【図６】
2019155533.tif 000008
【図７】
2019155533.tif 000009
【図８】
2019155533.tif 000010
【図９】
2019155533.tif 000011
【図１０】
2019155533.tif 000012
【図１１】
2019155533.tif 000013
【図１２】
2019155533.tif 000014
【図１３】
2019155533.tif 000015
【図１４】
2019155533.tif 000016
【図１５】
2019155533.tif 000017
【図１６】
2019155533.tif 000018
【国際調査報告】
2019155533.tif 000019
2019155533.tif 000020