(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024070658
(43)【公開日】2024-05-23
(54)【発明の名称】解析装置、解析方法および情報処理プログラム
(51)【国際特許分類】
G05B 23/02 20060101AFI20240516BHJP
【FI】
G05B23/02 302Y
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022181283
(22)【出願日】2022-11-11
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】川ノ上 真輔
【テーマコード(参考)】
3C223
【Fターム(参考)】
3C223AA11
3C223BA03
3C223EB01
3C223EB02
3C223FF04
3C223FF13
3C223FF16
3C223FF22
3C223FF35
3C223FF45
3C223GG01
3C223HH03
3C223HH05
3C223HH08
(57)【要約】
【課題】大規模な制御システムについて生成された因果関係グラフであっても、解釈性の低下を抑制できる手法を提供する。
【解決手段】解析装置は、製造ラインに関するデータを取得する取得部と、取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成する第1の生成部と、第1の因果関係グラフに含まれるノード間の類似性に基づいて、第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成する第2の生成部とを含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
製造ラインに関するデータを取得する取得部と、
前記取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成する第1の生成部と、
前記第1の因果関係グラフに含まれるノード間の類似性に基づいて、前記第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成する第2の生成部とを備える、解析装置。
【請求項2】
前記第2の生成部は、主成分分析により算出される第1主成分の寄与率に基づいて、集約するノードを決定する、請求項1に記載の解析装置。
【請求項3】
前記第2の生成部は、相互情報量による非線形相関に基づいて、集約するノードを決定する、請求項1に記載の解析装置。
【請求項4】
前記第2の生成部は、最も簡素化されるように、集約可能なノードの全部または一部を集約することで、前記第2の因果関係グラフを生成する、請求項2または3に記載の解析装置。
【請求項5】
前記第1の生成部は、前記取得されたデータから算出された特徴量の偏相関と、前記製造ラインを制御するためのユーザプログラムに定義された変数間の依存関係とに基づいて、前記第1の因果関係グラフを生成する、請求項1~3のいずれか1項に記載の解析装置。
【請求項6】
前記第2の因果関係グラフを出力する出力部をさらに備え、
前記出力部は、前記第1の因果関係グラフと前記第2の因果関係グラフとを切り替える、請求項1~3のいずれか1項に記載の解析装置。
【請求項7】
前記第2の因果関係グラフを出力する出力部をさらに備え、
前記出力部は、前記第2の因果関係グラフにおいて集約されるノードを示す集約対象表示を前記第1の因果関係グラフに付加する、請求項1~3のいずれか1項に記載の解析装置。
【請求項8】
コンピュータが実行する解析方法であって、
製造ラインに関するデータを取得することと、
前記取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成することと、
前記第1の因果関係グラフに含まれるノード間の類似性に基づいて、前記第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成することとを備える、解析方法。
【請求項9】
情報処理プログラムであって、コンピュータに、
製造ラインに関するデータを取得することと、
前記取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成することと、
前記第1の因果関係グラフに含まれるノード間の類似性に基づいて、前記第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成することとを実行させる、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、解析装置、解析方法および情報処理プログラムに関する。
【背景技術】
【0002】
従来より、実験データおよび観測データなどの不完全な情報に基づいて、事象に至る因果関係を統計的に推定する技術が公知である。このような技術を産業オートメーション(industrial automation)に適用することで、製造現場で生じる異常の要因特定を容易化できる。
【0003】
より具体的には、制御システムがセンサなどのフィールドデバイスから収集する情報に基づいて因果関係グラフを生成し、当該生成した因果関係グラフを参照することで、製品不良などの異常の要因をより容易に特定できるようになる。
【0004】
例えば、国際公開第2018/073955号(特許文献1)は、複数のセンサが出力するセンサ値間における因果関係を示す因果関係情報を用いるシステム分析方法を開示する。国際公開第2018/073960号(特許文献2)は、異常センサをグループ同士の階層関係を示す情報と共に、ユーザに提示する表示方法を開示する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】国際公開第2018/073955号
【特許文献2】国際公開第2018/073960号
【発明の概要】
【発明が解決しようとする課題】
【0006】
大規模な制御システムにおいては、大量の情報から因果関係グラフが生成されるので、専門的な知識に乏しいユーザにとっては、因果関係グラフが示す意味が分かりにくくなる。すなわち、因果関係グラフの解釈性が低下し得る。
【0007】
本発明は、大規模な制御システムについて生成された因果関係グラフであっても、解釈性の低下を抑制できる手法を提供することを一つの目的とする。
【課題を解決するための手段】
【0008】
本発明の一例に従う解析装置は、製造ラインに関するデータを取得する取得部と、取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成する第1の生成部と、第1の因果関係グラフに含まれるノード間の類似性に基づいて、第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成する第2の生成部とを含む。
【0009】
この構成によれば、第1の因果関係グラフに含まれるノード間の類似性に基づいて、第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフが生成されるので、大規模な制御システムについて生成された因果関係グラフであっても、解釈性の低下を抑制できる。
【0010】
第2の生成部は、主成分分析により算出される第1主成分の寄与率に基づいて、集約するノードを決定するようにしてもよい。この構成によれば、主成分分析の結果に基づいて、集約するノードを決定できる。
【0011】
第2の生成部は、相互情報量による非線形相関に基づいて、集約するノードを決定するようにしてもよい。この構成によれば、相互情報量による非線形相関に基づいて、集約するノードを決定できる。
【0012】
第2の生成部は、最も簡素化されるように、集約可能なノードの全部または一部を集約することで、第2の因果関係グラフを生成するようにしてもよい。この構成によれば、因果関係グラフが最も簡素化されるように、集約可能なノードのうちから実際に集約されるノードを決定できる。
【0013】
第1の生成部は、取得されたデータから算出された特徴量の偏相関と、製造ラインを制御するためのユーザプログラムに定義された変数間の依存関係とに基づいて、第1の因果関係グラフを生成するようにしてもよい。この構成によれば、特徴量の偏相関だけではなく、ユーザプログラムに定義された変数間の依存関係に基づいて、より適切な因果関係グラフを生成できる。
【0014】
解析装置は、第2の因果関係グラフを出力する出力部をさらに含んでいてもよい。出力部は、第1の因果関係グラフと第2の因果関係グラフとを切り替えて表示するようにしてもよい。この構成によれば、必要に応じて、第1の因果関係グラフおよび第2の因果関係グラフの両方を出力できる。
【0015】
解析装置は、第2の因果関係グラフを出力する出力部をさらに含んでいてもよい。出力部は、第2の因果関係グラフにおいて集約されるノードを示す集約対象表示を第1の因果関係グラフに付加して表示するようにしてもよい。この構成によれば、第1の因果関係グラフに対して集約されたノードなどを明示的に示すことができる。
【0016】
本発明の別の一例に従えば、コンピュータが実行する解析方法が提供される。解析方法は、製造ラインに関するデータを取得することと、取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成することと、第1の因果関係グラフに含まれるノード間の類似性に基づいて、第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成することと、第2の因果関係グラフを出力することとを含む。
【0017】
本発明のさらに別の一例に従う情報処理プログラムは、コンピュータに、製造ラインに関するデータを取得することと、取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成することと、第1の因果関係グラフに含まれるノード間の類似性に基づいて、第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成することと、第2の因果関係グラフを出力することとを実行させる。
【発明の効果】
【0018】
本発明によれば、大規模な制御システムについて生成された因果関係グラフであっても、解釈性の低下を抑制できる。
【図面の簡単な説明】
【0019】
【
図1】本実施の形態に従う情報処理システムの機能構成を示す模式図である。
【
図2】本実施の形態に従う情報処理システムの制御装置のハードウェア構成例を示すブロック図である。
【
図3】本実施の形態に従う情報処理システムの解析装置のハードウェア構成例を示すブロック図である。
【
図4】本実施の形態に従う情報処理システムにおける因果関係グラフの生成に係る処理手順を示すフローチャートである。
【
図5】
図4に示す因果関係グラフを生成する処理の処理手順を示すフローチャートである。
【
図6】
図4に示すノード集約処理の処理手順を示すフローチャートである。
【
図7】
図6に示す最も簡素化された組み合わせを決定する処理の概要を説明するための模式図である。
【
図8】本実施の形態に従う情報処理システムが因果関係グラフを生成する製造ラインの一例を示す模式図である。
【
図9】本実施の形態に従う情報処理システムが包装機について生成した因果関係グラフの一例を示す。
【
図10】本実施の形態に従う情報処理システムが包装機について生成した因果関係グラフの一例を示す。
【
図11】本実施の形態に従う解析装置が提供する表示画面の一例を示す模式図である。
【
図12】本実施の形態に従う解析装置が提供する表示画面における因果関係グラフの表示例を示す模式図である。
【発明を実施するための形態】
【0020】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【0021】
<A.適用例>
まず、本発明が適用される場面の一例について説明する。以下では、製造ラインから収集される情報に基づいて、因果関係グラフを生成する例について説明する。但し、製造ラインから収集される情報に限らず、任意の情報から生成された因果関係グラフに適用可能である。
【0022】
図1は、本実施の形態に従う情報処理システム1の機能構成を示す模式図である。
図1を参照して、情報処理システム1は、1または複数の制御装置100と、解析装置200とを含む。
【0023】
図1を参照して、制御装置100は、PLC(Programmable Logic Controller)などの産業用コントローラである。制御装置100は、PLCエンジン150と、変数マネジャ152と、インターフェイス154と、TSDB(Time Series Data Base)156とを含む。
【0024】
制御装置100は、センサ42およびアクチュエータ44を含むフィールドデバイス40と接続される。制御装置100は、フィールドデバイス40(センサ42)からプロセスデータ(入力データ)を収集するとともに、PLCエンジン150による制御演算の結果に従って、フィールドデバイス40(アクチュエータ44)に指令(出力データ)を出力する。
【0025】
PLCエンジン150は、製造ラインを構成する各製造装置を制御するためのユーザプログラム132に従って、制御演算を実行する。制御演算は、シーケンス制御および/またはモーション制御を含む。
【0026】
変数マネジャ152は、PLCエンジン150がユーザプログラム132を実行するにあたって参照可能な変数(変数が示す値を)管理する。変数マネジャ152は、予め登録された変数の値をTSDB156に周期的またはイベント的に書き込む。
【0027】
インターフェイス154は、フィールドデバイス40との間で周期的にデータ(入力データおよび出力データ)をやり取りする。このような周期的なデータのやり取りは、「I/Oリフレッシュ処理」と称されることもある。
【0028】
TSDB156は、予め登録された変数の値を時系列に格納する。そのため、TSDB156には、時系列データ50が格納されることになる。時系列データ50は、フィールドデバイス40から収集した入力データと、フィールドデバイス40へ与えられた出力データと、PLCエンジン150の内部で保持される内部データとを含み得る。
【0029】
解析装置200は、制御装置100のTSDB156に格納される時系列データ50から因果関係グラフを生成する。解析装置200は、解析モジュール250と、GUI(Graphical User Interface)モジュール270とを含む。
【0030】
解析モジュール250は、ノード生成モジュール252と、因果関係グラフ生成モジュール254と、ノード集約モジュール256とを含む。
【0031】
ノード生成モジュール252は、製造ラインに関する時系列データ50を制御装置100から取得し、取得した時系列データ50から特徴量(各ノードが示す値)を算出する。このように、ノード生成モジュール252は、製造ラインに関する時系列データ50を取得する処理と、取得した時系列データ50から特徴量を算出する処理とを実行する。
【0032】
因果関係グラフ生成モジュール254は、解析モジュール250が算出した特徴量(ノード)から因果関係グラフを示す因果関係データ260を生成する。すなわち、因果関係グラフ生成モジュール254は、取得された時系列データ50に基づいて、事象に至る因果関係を推定することで、複数のノードを含む因果関係グラフを生成する。このとき、事象に至る因果関係を統計的に推定してもよいし、演繹的に決定してもよい。
【0033】
ノード集約モジュール256は、ユーザ操作あるいは任意の条件に従って、因果関係グラフ生成モジュール254が生成した因果関係グラフのノードを集約して、新たな因果関係グラフを示す因果関係データ260を生成する。ノード集約モジュール256は、複数のアルゴリズムを含むアルゴリズム群258を有しており、各アルゴリズムに従って、ノードを集約するための統計処理を実行する。このように、ノード集約モジュール256は、因果関係グラフに含まれるノード間の類似性に基づいて、因果関係グラフに含まれるノードの一部を集約して簡略化された因果関係グラフを生成する。
【0034】
GUIモジュール270は、因果関係データ260に対応する因果関係グラフを表示するとともに、ユーザ操作を受け付ける。GUIモジュール270は、ノード集約モジュール256により生成された因果関係グラフを表示する。
【0035】
GUIモジュール270が表示する表示内容300において、例えば、解析直後の因果関係グラフ302と、因果関係グラフ302のノードを集約した因果関係グラフ304とが切り替えて表示される。
【0036】
本明細書において、因果関係グラフを出力することは、(1)解析装置200に含まれる表示部218上で、または、解析装置200とは別の表示装置上で、因果関係グラフを表現する画像または映像を表示すること、(2)解析装置200に含まれる表示部218などのデバイス、または、解析装置200とは別の装置に因果関係グラフを表現するためのデータまたは信号を送出すること、(3)解析装置200に含まれる表示部218などのデバイス、または、解析装置200とは別の装置に、因果関係グラフを表現するための命令を送出することを少なくとも含む。
【0037】
そのため、(1)の意味において、「因果関係グラフを出力する出力部」は、因果関係グラフを再現した画像または映像を視覚化する表示デバイスを含む。(2)の意味において、「因果関係グラフを出力する出力部」は、因果関係グラフを表現するためのデータまたは信号を生成および送出するためのソフトウェアおよび/またはハードウェアを含む。(3)の意味において、「因果関係グラフを出力する出力部」は、因果関係グラフを表現するための命令を生成および送出するためのソフトウェアおよび/またはハードウェアを含む。
【0038】
情報処理システム1は、因果関係グラフを任意の方法で集約して表示することで、因果関係グラフの解釈性を向上させる。
【0039】
図1には、制御装置100と解析装置200とを別体の装置として例示するが、制御装置100と解析装置200とを一体の装置として構成してもよい。また、解析装置200に含まれる解析モジュール250(ノード生成モジュール252、因果関係グラフ生成モジュール254、ノード集約モジュール256)およびGUIモジュール270の一部をクラウド上のリソースで実行するようにしてもよい。すなわち、本実施の形態に従う解析装置200は、単一の装置として実装してもよいし、複数の装置を用いて実装してもよい。
【0040】
<B.ハードウェア構成例>
次に、本実施の形態に従う情報処理システム1のハードウェア構成例について説明する。
【0041】
(b1:制御装置100)
図2は、本実施の形態に従う情報処理システム1の制御装置100のハードウェア構成例を示すブロック図である。
図2を参照して、制御装置100は、PLC(プログラマブルロジックコントローラ)などの、一種のコンピュータとして具現化されてもよい。
【0042】
より具体的には、制御装置100は、CPU(Central Processing Unit)およびMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、主記憶装置106と、二次記憶装置108と、フィールドバスコントローラ110と、USB(Universal Serial Bus)コントローラ112と、メモリカードインターフェイス114とを含む。
【0043】
プロセッサ102は、二次記憶装置108に格納された各種プログラムを読み出して、主記憶装置106に展開して実行することで、制御対象を制御するための処理を実現する。チップセット104は、プロセッサ102と各コンポーネントとの間のデータ伝送などを制御する。
【0044】
二次記憶装置108には、制御演算を実行するためのPLCエンジン150を提供するためのシステムプログラム131に加えて、制御演算に係る処理を定義したユーザプログラム132が格納される。
【0045】
フィールドバスコントローラ110は、フィールドバスを介してフィールドデバイス40との間でデータをやり取りする。フィールドバスは、産業用の通信プロトコルを採用することが好ましい。このような通信プロトコルとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などが知られている。
【0046】
USBコントローラ112は、USB接続を介して解析装置200との間のデータのやり取りを制御する。
【0047】
メモリカードインターフェイス114は、メモリカード116を着脱可能に構成されており、メモリカード116に対してデータを書込み、メモリカード116から各種データ(ユーザプログラム132およびトレースデータなど)を読み出すことが可能になっている。
【0048】
図2には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、制御装置100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
【0049】
(b2:解析装置200)
本実施の形態に従う解析装置200は、一例として、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)を用いてプログラムを実行することで実現される。
【0050】
図3は、本実施の形態に従う情報処理システム1の解析装置200のハードウェア構成例を示すブロック図である。
図3を参照して、解析装置200は、CPUおよびMPUなどのプロセッサ202と、光学ドライブ204と、主記憶装置206と、二次記憶装置208と、USBコントローラ212と、ネットワークコントローラ214と、入力部216と、表示部218とを含む。これらのコンポーネントはバス220を介して接続される。
【0051】
プロセッサ202は、二次記憶装置208に格納されたプログラムを読み出して、主記憶装置206に展開して実行することで、後述するような各種処理を実現する。
【0052】
二次記憶装置208は、例えば、HDD(Hard Disk Drive)およびSSD(Solid State Drive)などで構成される。二次記憶装置208には、典型的には、OS222と、制御装置100との間で必要なデータをやり取りするためのPLCインターフェイスプログラム224と、因果関係グラフを生成するための解析プログラム226と、GUIに係る処理を実行するGUIプログラム228とが格納される。これらのプログラムの全部または一部が情報処理プログラムに相当する。二次記憶装置208には、
図3に示すプログラム以外の必要なプログラムが格納されてもよい。
【0053】
解析装置200は、光学ドライブ204を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体205(例えば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムが読み取られて二次記憶装置208などにインストールされる。
【0054】
解析装置200で実行されるプログラムは、コンピュータ読取可能な記録媒体205を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に従う解析装置200が提供する機能は、OS222が提供するモジュールの一部を利用する形で実現される場合もある。
【0055】
USBコントローラ212は、USB接続を介して制御装置100との間のデータのやり取りを制御する。ネットワークコントローラ214は、任意のネットワークを介した他の装置との間のデータのやり取りを制御する。
【0056】
入力部216は、キーボードおよびマウスなどで構成され、ユーザ操作を受け付ける。表示部218は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ202からの処理結果などを出力する。
【0057】
図3には、プロセッサ202がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
【0058】
<C.処理手順>
次に、本実施の形態に従う情報処理システム1における処理手順について説明する。
【0059】
(c1:全体処理)
図4は、本実施の形態に従う情報処理システム1における因果関係グラフの生成に係る処理手順を示すフローチャートである。
図4に示す各ステップは、典型的には、解析装置200のプロセッサ202がプログラム(
図3に示す解析プログラム226およびGUIプログラム228など)を実行することで実現される。
【0060】
図4を参照して、解析装置200は、因果関係グラフの生成開始条件が成立したか否かを判断する(ステップS1)。因果関係グラフの生成開始条件は、例えば、ユーザが明示的に作成開始を指示したことを含んでいてもよいし、何らかのイベントが発生したことを含んでいてもよい。さらに、因果関係グラフの生成開始条件は、前回の因果関係グラフの生成から所定時間が経過したことを含んでいてもよい。
【0061】
因果関係グラフの生成開始条件が成立していなければ(ステップS1においてNO)、ステップS1の処理が繰り返される。
【0062】
因果関係グラフの生成開始条件が成立していれば(ステップS1においてYES)、解析装置200は、制御装置100から時系列データ50を取得する(ステップS2)。すなわち、解析装置200は、製造ラインに関するデータを取得する。
【0063】
続いて、解析装置200は、取得した時系列データ50に含まれるフレーム変数のデータを特定するとともに、解析の対象となるデータ(入力データ、出力データ、内部データ)を特定する(ステップS3)。フレーム変数のデータは、解析処理における対象区間を決定するために用いられる。例えば、フレーム変数のデータが同じ値を示している区間を1つのフレームとして抽出することができる。
【0064】
そして、解析装置200は、時系列データ50から因果関係グラフを生成し(ステップS4)、生成された因果関係グラフを表示する(ステップS5)。このように、解析装置200は、取得された時系列データ50に基づいて、事象に至る因果関係を推定することで、複数のノードを含む因果関係グラフを生成する。
【0065】
続いて、解析装置200は、ノード集約が指示されたか否かを判断する(ステップS6)。
【0066】
ノード集約が指示されると(ステップS6においてYES)、解析装置200は、ノード集約処理を実行し(ステップS7)、生成されたノード集約後の因果関係グラフを表示する(ステップS8)。すなわち、解析装置200は、ノード集約前の因果関係グラフに含まれるノード間の類似性に基づいて、ノード集約前の因果関係グラフに含まれるノードの一部を集約してノード集約後の因果関係グラフを生成する。そして、解析装置200は、ノード集約後の因果関係グラフを出力する。
【0067】
ノード集約が指示されなければ(ステップS6においてNO)、および、ステップS8の実行後、解析装置200は、因果関係グラフの生成に係る処理の終了が指示されたか否かを判断する(ステップS9)。
【0068】
因果関係グラフの生成に係る処理の終了が指示されなければ(ステップS9においてNO)、ステップS6以下の処理が繰り返される。因果関係グラフの生成に係る処理の終了が指示されると(ステップS9においてYES)、ステップS1以下の処理が繰り返される。
【0069】
(c2:因果関係グラフ生成)
次に、
図4に示す因果関係グラフを生成する処理(ステップS4)について説明する。
【0070】
図5は、
図4に示す因果関係グラフを生成する処理の処理手順を示すフローチャートである。
図5を参照して、解析装置200は、時系列データ50をフレーム毎に分割し(ステップS41)、フレーム毎に特徴量を算出する(ステップS42)。特徴量は、対象の各データについて、各フレームにおける平均値、最小値、最大値といった、各フレームを代表する任意の値である。各特徴量は、因果関係グラフを構成する各ノードとなる。
【0071】
解析装置200は、何らかの異常が発生したフレーム(異常ラベルが付与されたフレーム)に着目して、各特徴量の重要度および貢献度を算出する(ステップS43)。解析装置200は、特徴量の偏相関を算出し(ステップS44)、算出した偏相関とユーザプログラム132に定義された変数間の依存関係とを合成する(ステップS45)。ユーザプログラム132を考慮することで、工程の情報を反映した因果関係グラフを生成できる。すなわち、取得された時系列データ50から算出された特徴量の偏相関と、製造ラインを制御するためのユーザプログラム132に定義された変数間の依存関係とに基づいて、因果関係グラフを生成することができる。
【0072】
また、ユーザプログラム132を考慮することで、状態遷移なども考慮した因果関係グラフを生成できる。解析装置200は、構造方程式モデリング(SEM:Structural Equation Modeling)に基づく変数間の依存関係を生成する(ステップS46)。
【0073】
最終的に、解析装置200は、各特徴量の重要度および貢献度(ステップS43)、偏相関とユーザプログラム132に定義された変数間の依存関係との合成結果(ステップS44,S45)、および、構造方程式モデリングに基づく変数間の依存関係(ステップS46)に基づいて、因果関係グラフを生成する(ステップS47)。
【0074】
すなわち、解析装置200は、ステップS42において算出した特徴量(ノード)間の結合関係(エッジ)を決定する。決定される結合関係(エッジ)は、無向性であってもよいし、有向性であってもよい。
【0075】
なお、因果関係グラフを生成するためには、ステップS43~S46に示される情報をすべて用いる必要はなく、また、ステップS43~S46に示される情報以外の情報を用いるようにしてもよい。
【0076】
(c3:ノード集約処理)
次に、
図4に示すノード集約処理(ステップS7)について説明する。
【0077】
図6は、
図4に示すノード集約処理の処理手順を示すフローチャートである。
図6を参照して、解析装置200は、1または複数のアルゴリズムに従って、特徴量(ノード)間の類似性を算出し(ステップS71)、集約できるノード群候補を決定する(ステップS72)。
【0078】
例えば、主成分分析などにより、異常ラベルに対する第1主成分の寄与率が予め定められた値以上を示すノード同士を集約することができる。すなわち、主成分分析により算出される第1主成分の寄与率に基づいて、集約するノードを決定してもよい。
【0079】
また、寄与率が予め定められた値以上を示すノード同士を集約することができる。
また、相互情報量による非線形相関(MIC:Maximum Information Coefficient)が予め定められた値以上を示すノード同士を集約することができる。すなわち、相互情報量による非線形相関に基づいて、集約するノードを決定してもよい。
【0080】
なお、上述のいずれのしきい値についても、アルゴリズムに応じて任意に設定できる。
さらに、ユーザの事前知識に基づいて、集約するノードを決定してもよい。
【0081】
続いて、解析装置200は、因果関係グラフにおいて、集約できるノード群候補の各々について集約した状態、および、集約しない状態のすべての組み合わせを生成する(ステップS73)。例えば、互いにノードの重複がないノード群候補が3つ決定された場合には、8通りの状態が生成される。
【0082】
解析装置200は、ステップS73において生成した組み合わせのうち、最も簡素化された組み合わせを決定する(ステップS74)。最も簡素化された組み合わせがノード集約後の因果関係グラフに相当する。
【0083】
例えば、エッジ数が最小となる組み合わせを最も簡素化された組み合わせとして決定してもよい。また、因果関係グラフが大規模(例えば、ノード数が100を超える)である場合などにおいては、モジュラリティ指標を用いて、最も簡素化された組み合わせを決定してもよい。
【0084】
このように、最も簡素化されるように、集約可能なノードの全部または一部を集約することで、ノード集約後の因果関係グラフを生成することができる。
【0085】
図7は、
図6に示す最も簡素化された組み合わせを決定する処理の概要を説明するための模式図である。
図7(A)には、ノード集約前の因果関係グラフの一例を示す。
図7(B)には、ノードCとノードDとを集約した場合の例を示し、
図7(C)には、ノードEとノードFとを集約した場合の例を示し、
図7(D)には、ノードCとノードDとを集約するとともに、ノードEとノードFとを集約した場合の例を示す。
【0086】
図7(B)~
図7(D)に示す3つの組み合わせのうち、
図8(D)において、エッジ数が最小となる。そのため、
図8(D)に示す因果関係グラフがノード集約後の因果関係グラフとして決定される。
【0087】
また、モジュラリティ指標は、各組み合わせについて、集約したノード群のノード同士がつながるエッジ(リンク)の割合から、リンクがランダムに配置された場合の期待値を引いた値として定義される。
【0088】
<D.ノード集約処理の一例>
次に、ノード集約処理の一例について説明する。
【0089】
図8は、本実施の形態に従う情報処理システム1が因果関係グラフを生成する製造ラインの一例を示す模式図である。
図8を参照して、製品(または、半製品)がコンベヤで順次搬送される製造ラインを想定すると、各区間のコンベヤはモータ61,62,63でそれぞれ駆動される。モータ61,62,63は、それぞれドライバ71,72,73から電力供給を受ける。
【0090】
図8に示すような機構においては、コンベヤ間の同期制御なども必要となり、ドライバ71,72,73が検出するトルク(入力データ)および/または指令(出力データ)は、多重共線性(相対的に強い相関)を示す。このような多重共線性を示す情報は、集約しても、異常の要因特定に与える影響は小さい。すなわち、多重共線性を示す情報は、いずれも同様の傾向を示すため、1つの情報に着目すれば十分であると考えられる。
【0091】
図9および
図10は、本実施の形態に従う情報処理システム1が包装機について生成した因果関係グラフの一例を示す。
図9および
図10に示す因果関係グラフにおいて、各ノードは、フレーム毎の特徴量を示し、各エッジは、ノード間の影響の強さ(例えば、SHAP値といった貢献量)を示す。
【0092】
図9に示す因果関係グラフは、包装機においてシールの位置ずれが発生した場合に対応する。
図9(A)には、ノード集約前の因果関係グラフ80を示し、
図9(B)には、ノード集約後の因果関係グラフ82を示す。
【0093】
包装機において、motor1,2,3は、位置同期制御されている。そのため、
図9(A)に示す因果関係グラフ80において、motor1,2,3の相互情報量による非線形相関は0.95となっているとする。この場合には、motor1,2,3の位置に対応する3つのノードは、集約対象ノード81と決定できる。その結果、
図9(B)に示す因果関係グラフ82を生成できる。
【0094】
因果関係グラフ82において、motor1,2,3の位置に対応する3つのノードは、1つの合成ノード83として表現されている。
【0095】
ユーザは、
図9(B)に示す因果関係グラフ82を参照して、ワークの位置ずれを要因として推定できる。そして、ユーザは、ワークの位置ずれを生じる、フィンガの劣化の有無などを点検する。
【0096】
図10に示す因果関係グラフは、包装機において噛み込みが発生した場合に対応する。
図10(A)には、ノード集約前の因果関係グラフ80を示し、
図10(B)には、ノード集約後の因果関係グラフ82を示す。
【0097】
包装機において、motor2,3は、機械的に連結されている。そのため、
図10(A)に示す因果関係グラフ80において、motor2,3は高い相関を示し、motor1,2,3のうち、motor2,3についての主成分分析による第1主成分の寄与率が80%を超えているとする。この場合には、motor2,3の位置に対応する2つのノードは、合成ノード85と決定できる。その結果、
図10(B)に示す因果関係グラフ84を生成できる。
【0098】
因果関係グラフ82において、motor2,3の位置に対応する2つのノードは、1つの合成ノード85として表現されている。
【0099】
ユーザは、
図10(B)に示す因果関係グラフ84を参照して、噛み込みの原因として、フィルム送りベルトなどを点検する。
【0100】
<E.GUI>
次に、解析装置200のGUIモジュール270が提供するGUIの一例を説明する。
【0101】
図11は、本実施の形態に従う解析装置200が提供する表示画面310の一例を示す模式図である。
図11を参照して、表示画面310は、制御装置100から取得した時系列データ50の波形を示す波形表示エリア312と、生成された因果関係グラフを表示するグラフ表示エリア320と、算出される特徴量の一覧を表示する特徴量表示エリア330と、公平性指標を表示する指標表示エリア332とを含む。
【0102】
ユーザは、何らかの異常が発生すると、波形表示エリア312において因果関係グラフの生成に用いる区間314を設定する。なお、区間314は、イベント発生に応じて、自動的に設定されてもよい。さらに、何らかの異常が発生した区間316(異常ラベルが付与される区間)を表示するようにしてもよい。区間314の設定に応じて、解析装置200は、上述したような処理手順に従って、因果関係グラフを生成する。
【0103】
続いて、ユーザが集約ボタン318を押下すると、上述したようなノード集約処理が実行される。そして、グラフ表示エリア320には、ノード集約後の因果関係グラフが表示される。
【0104】
グラフ表示エリア320においては、
図1、
図9、
図10などに示されるように、ノード集約前の因果関係グラフと、ノード集約後の因果関係グラフとを切り替えて表示するようにしてもよい。
【0105】
あるいは、集約されるノードを追加的に示す情報を因果関係グラフに付加して表示するようにしてもよい。すなわち、ノード集約後の因果関係グラフにおいて集約されるノードを示す集約対象表示をノード集約前の因果関係グラフに付加して表示するようにしてもよい。
【0106】
図12は、本実施の形態に従う解析装置200が提供する表示画面310における因果関係グラフの表示例を示す模式図である。
図12を参照して、ノード集約前の因果関係グラフに対して、集約されるノードを示す集約対象表示321,322,323,324が付加されている例を示す。
【0107】
このように、ノード集約後の因果関係グラフをそのまま表示するのではなく、集約されるノードを明示的に示すことで、ノード集約前の因果関係グラフの関係性を維持したまま、解釈性の低下も抑制できる。
【0108】
<F.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
【0109】
[構成1]
製造ラインに関するデータ(50)を取得する取得部(252)と、
前記取得されたデータに基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフ(302)を生成する第1の生成部(254)と、
前記第1の因果関係グラフに含まれるノード間の類似性に基づいて、前記第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフ(304)を生成する第2の生成部(256)とを備える、解析装置。
【0110】
[構成2]
前記第2の生成部は、主成分分析により算出される第1主成分の寄与率に基づいて、集約するノードを決定する、構成1に記載の解析装置。
【0111】
[構成3]
前記第2の生成部は、相互情報量による非線形相関に基づいて、集約するノードを決定する、構成1または2に記載の解析装置。
【0112】
[構成4]
前記第2の生成部は、最も簡素化されるように、集約可能なノードの全部または一部を集約することで、前記第2の因果関係グラフを生成する、構成2または3に記載の解析装置。
【0113】
[構成5]
前記第1の生成部は、前記取得されたデータから算出された特徴量の偏相関と、前記製造ラインを制御するためのユーザプログラム(132)に定義された変数間の依存関係とに基づいて、前記第1の因果関係グラフを生成する、構成1~4のいずれか1項に記載の解析装置。
【0114】
[構成6]
前記第2の因果関係グラフを出力する出力部をさらに備え、
前記出力部は、前記第1の因果関係グラフと前記第2の因果関係グラフとを切り替えて表示する、構成1~5のいずれか1項に記載の解析装置。
【0115】
[構成7]
前記第2の因果関係グラフを出力する出力部をさらに備え、
前記出力部は、前記第2の因果関係グラフにおいて集約されるノードを示す集約対象表示(321,322,323,324)を前記第1の因果関係グラフに付加して表示する、構成1~5のいずれか1項に記載の解析装置。
【0116】
[構成8]
コンピュータが実行する解析方法であって、
製造ラインに関するデータを取得すること(S2)と、
前記取得されたデータ(50)に基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成すること(S4)と、
前記第1の因果関係グラフに含まれるノード間の類似性に基づいて、前記第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成すること(S7)と、
前記第2の因果関係グラフを出力すること(S8)とを備える、解析方法。
【0117】
[構成9]
情報処理プログラム(226,228)であって、コンピュータ(200)に、
製造ラインに関するデータを取得すること(S2)と、
前記取得されたデータ(50)に基づいて、事象に至る因果関係を推定することで、複数のノードを含む第1の因果関係グラフを生成すること(S4)と、
前記第1の因果関係グラフに含まれるノード間の類似性に基づいて、前記第1の因果関係グラフに含まれるノードの一部を集約して第2の因果関係グラフを生成すること(S7)とを実行させる、情報処理プログラム。
【0118】
<G.利点>
本実施の形態に従う情報処理システム1によれば、大規模な制御システムについて生成された因果関係グラフであっても、解釈性の低下を抑制できる。
【0119】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0120】
1 情報処理システム、40 フィールドデバイス、42 センサ、44 アクチュエータ、50 時系列データ、61,62,63 モータ、71,72,73 ドライバ、80,82,84,302,304 因果関係グラフ、81 集約対象ノード、83,85 合成ノード、100 制御装置、102,202 プロセッサ、104 チップセット、106,206 主記憶装置、108,208 二次記憶装置、110 フィールドバスコントローラ、112,212 USBコントローラ、114 メモリカードインターフェイス、116 メモリカード、131 システムプログラム、132 ユーザプログラム、150 PLCエンジン、152 変数マネジャ、154 インターフェイス、156 TSDB、200 解析装置、204 光学ドライブ、205 記録媒体、214 ネットワークコントローラ、216 入力部、218 表示部、220 バス、222 OS、224 インターフェイスプログラム、226 解析プログラム、228 GUIプログラム、250 解析モジュール、252 ノード生成モジュール、254 因果関係グラフ生成モジュール、256 ノード集約モジュール、258 アルゴリズム群、260 因果関係データ、270 モジュール、300 表示内容、310 表示画面、312 波形表示エリア、314,316 区間、318 集約ボタン、320 グラフ表示エリア、321,322,323,324 集約対象表示、330 特徴量表示エリア、332 指標表示エリア。