JP2024060240A - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP2024060240A
JP2024060240A JP2022167491A JP2022167491A JP2024060240A JP 2024060240 A JP2024060240 A JP 2024060240A JP 2022167491 A JP2022167491 A JP 2022167491A JP 2022167491 A JP2022167491 A JP 2022167491A JP 2024060240 A JP2024060240 A JP 2024060240A
Authority
JP
Japan
Prior art keywords
sub
data elements
data
elements
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022167491A
Other languages
English (en)
Inventor
浩臣 山田
Hiroomi Yamada
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2022167491A priority Critical patent/JP2024060240A/ja
Publication of JP2024060240A publication Critical patent/JP2024060240A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】データ分析の初動をサポートすることが可能な情報処理方法を提供する。【解決手段】情報処理方法は、複数のデータ要素を含む時系列データを取得するステップを備える。データ要素は、対応する時刻を示す第1サブ要素と、対応する時刻における複数の変数の値を示す第2サブ要素とを含む。情報処理方法は、第1サブ要素を複数の時間領域のいずれかに分類するステップと、第2サブ要素を複数の空間領域のいずれかに分類するステップと、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせの各々について、当該組み合わせに属するデータ要素の度数を示す情報を出力するステップと、をさらに備える。【選択図】図1

Description

本開示は、情報処理装置、情報処理方法およびプログラムに関する。
近年、大量のデータを分析する様々な手法が開発されている。例えば、特開2021-77046号公報(特許文献1)は、各クライアント装置から取得された属性データをクラスタリングし、クラスタリングの結果に基づいて、各クライアント装置を複数のグループのうちの少なくともいずれかに割り当てる技術を開示している。
特開2021-77046号公報
一般に、データ分析の初動は、ユーザの経験およびデータに対する理解度に基づいて行なわれる。そのため、経験の浅いユーザは、大量のデータのどこから手を付けるべきか見当がつかない。そのため、データ分析の初動をサポートする技術が望まれている。
本開示は、上記の問題に鑑みてなされたものであり、その目的は、データ分析の初動をサポートすることが可能な情報処理装置、情報処理方法およびプログラムを実現することである。
本開示の一例によれば、情報処理装置は、互いに異なる時刻に対応する複数のデータ要素を含む時系列データを取得する取得部を備える。複数のデータ要素の各々は、対応する時刻を示す第1サブ要素と、対応する時刻における複数の変数の値を示す第2サブ要素とを含む。情報処理装置は、さらに、第1分類部と、第2分類部と、出力部と、を備える。第1分類部は、複数のデータ要素に含まれる第1サブ要素に対してクラスタリングを行なうことにより、第1サブ要素を複数の時間領域のいずれかに分類する。第2分類部は、複数のデータ要素に含まれる第2サブ要素に対してクラスタリングを行なうことにより、第2サブ要素を複数の空間領域のいずれかに分類する。出力部は、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせの各々について、複数のデータ要素のうち当該組み合わせに属するデータ要素の度数を示す第1情報を出力する。
この開示によれば、ユーザは、第1情報を確認することにより、時間領域と空間領域との相関を大まかに把握できる。例えば、ユーザは、各組み合わせに属するデータ要素の度数の分布から、時間経過による複数の空間領域の度数変化を容易に把握できる。そのため、ユーザは、ある時間領域における各空間領域の度数分布が残りの時間領域における各空間領域の度数分布と異なる場合、当該ある時間領域においてシステムに何らかの状態変化が発生していると推定できる。その結果、ユーザは、当該ある時間領域に対応し、かつ、特異な度数を有する組み合わせに属するデータ要素から重点的に確認し始めることができる。このように、上記の開示によれば、情報処理装置は、データ分析の初動をサポートできる。
上述の開示において、第1情報は、複数の時間領域を表す第1軸と、複数の空間領域を表す第2軸とを有するグラフを示す。グラフは、度数の分布を示す。上記の開示によれば、ユーザは、グラフを確認することにより、組み合わせごとの度数の状況を即座に把握できる。グラフは例えば2次元ヒートマップである。
上述の開示において、出力部は、複数のデータ要素のうち複数の時間領域の各々に属する第1サブ要素を含むデータ要素の度数分布図を示す第2情報と、複数のデータ要素のうち複数の空間領域の各々に属する第2サブ要素を含むデータ要素の度数分布図を示す第3情報と、をさらに出力する。
上記の開示によれば、ユーザは、時間領域ごとの度数分布と空間領域ごとの度数分布とを容易に把握できる。
上述の開示において、情報処理装置は、複数の組み合わせのうちの1以上の組み合わせの選択を受け付ける受付部をさらに備える。出力部は、複数の変数のうちの少なくとも1つの変数の時系列散布図を示す第4情報と、複数の変数のうちの少なくとも2つの変数に対する多次元散布図を示す第5情報とを出力する。出力部は、時系列散布図および多次元散布図において、複数のデータ要素のうち1以上の組み合わせのいずれかに属するデータ要素に対応する点の表示形式を残りの点の表示形式と異ならせる。
上記の開示によれば、ユーザは、複数の組み合わせのうち注目する組み合わせを選択できる。そして、ユーザは、時系列散布図および多次元散布図における注目する組み合わせに属するデータ要素の位置を容易に特定できる。
上述の開示において、情報処理装置は、複数の組み合わせのうちの1つの組み合わせの選択を受け付ける受付部をさらに備える。出力部は、第2分類部による1つの組み合わせの空間領域への第2サブ要素の分類における複数の変数の各々の寄与度を示す第6情報をさらに出力する。
上記の開示によれば、ユーザは、注目する組み合わせの空間領域への分類に影響のある変数を容易に特定できる。
上述の開示において、出力部は、複数の時間領域の各々における、当該時間領域に属する第1サブ要素によって示される時刻の分布を示す第7情報をさらに出力する。
上記の開示によれば、ユーザは、各時間領域における第1サブ要素の粗密を容易に把握できる。
上述の開示において、第2分類部は、複数のデータ要素に含まれる第2サブ要素に対して階層クラスタリングを行なう。出力部は、複数の空間領域の樹形図を示す第8情報をさらに出力する。
上記の開示によれば、ユーザは、ある空間領域に属するデータ要素が別のどの空間領域に属するデータ要素に類似しているかを容易に把握できる。
本開示の別の例によれば、コンピュータによって実行される情報処理方法は、第1~第4のステップを備える。第1のステップは、コンピュータが、互いに異なる時刻に対応する複数のデータ要素を含む時系列データを取得するステップである。複数のデータ要素の各々は、対応する時刻を示す第1サブ要素と、対応する時刻における複数の変数の値を示す第2サブ要素とを含む。第2のステップは、コンピュータが、複数のデータ要素に含まれる第1サブ要素をクラスタリングすることにより、第1サブ要素を複数の時間領域のいずれかに分類するステップである。第3のステップは、コンピュータが、複数のデータ要素に含まれる第2サブ要素をクラスタリングすることにより、第2サブ要素を複数の空間領域のいずれかに分類するステップである。第4のステップは、コンピュータが、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせの各々について、複数のデータ要素のうち当該組み合わせに属するデータ要素の度数を示す情報を出力するステップである。
本開示のさらに別の例によれば、プログラムは、上記の方法をコンピュータに実行させる。これらの開示によっても、データ分析の初動をサポートできる。
本開示によれば、データ分析の初動をサポートできる。
実施の形態に係る情報処理方法を示す概略図である。 実施の形態に係る生産システムの全体構成例を示す模式図である。 実施の形態に係る生産システムの応用例を示す模式図である。 実施の形態に係る生産システムによる制御系を説明する図である。 実施の形態に係る生産システムによる予測制御系の予測結果に基づく制御の一例を示す模式図である。 実施の形態に係る生産システム1を用いた予測モデル140の生成処理の処理手順を示すフローチャートである。 実施の形態に係る予測モデル140の学習方法について説明する図である。 実施の形態に係る生産システム1を構成する制御装置100のハードウェア構成例を示すブロック図である。 実施の形態に係る生産システム1を構成するサポート装置200のハードウェア構成例を示すブロック図である。 実施の形態に係る生産システム1を構成する制御装置100およびサポート装置200のソフトウェア構成例を示すブロック図である。 図10に示す解析プログラム226に含まれる機能モジュールの概要を示すブロック図である。 実施の形態に係る前処理機能を実行する前処理部について説明する図である。 初動サポート画面の一例を示す図である。 初動サポート画面の別の例を示す図である。 ラベリング画面の第1例を示す図である。 ラベリング画面の第2例について説明する図である。 ラベリング画面の第3例について説明する図である。 ラベリング画面の第4例について説明する図である。 時系列データテーブルおよび特徴量データテーブルについて説明する図である。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
§1 適用例
図1を参照して、本発明が適用される場面の一例について説明する。図1は、実施の形態に係る情報処理方法を示す概略図である。図1には、生産システムに関するデータ分析の初動をサポートする方法が示される。
図1に示されるように、情報処理方法は、互いに異なる時刻に対応する複数のデータ要素8を含む時系列データ7を取得するステップS100を備える。複数のデータ要素8の各々は、対応する時刻を示す第1サブ要素8aと、対応する時刻における複数の変数の値を示す第2サブ要素8bとを含む。
情報処理方法は、複数のデータ要素8に含まれる第1サブ要素8aに対してクラスタリングを行なうことにより、第1サブ要素8aを複数の時間領域のいずれかに分類するステップS200を備える。複数の時間領域の各々にはラベル(以下、「時間領域ラベル」と称する。)が付与される。図1に示す例では、第1サブ要素8aは、時間領域ラベル「1」~「14」の時間領域のいずれかに分類される。
さらに、情報処理方法は、複数のデータ要素8に含まれる第2サブ要素8bに対してクラスタリングを行なうことにより、第2サブ要素8bを複数の空間領域のいずれかに分類するステップS300を備える。複数の空間領域の各々にはラベル(以下、「空間領域ラベル」と称する。)が付与される。図1に示す例では、第2サブ要素8bは、空間領域ラベル「1」~「14」の空間領域のいずれかに分類される。
さらに、情報処理方法は、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせの各々について、複数のデータ要素8のうち当該組み合わせに属するデータ要素8の度数を示す第1情報を出力する。図1に示す例では、第1情報は、14×14=196通りの組み合わせの各々に属するデータ要素8の度数を色および濃度で表すグラフを示す。
特許文献1に開示のようなクラスタリングは、時刻を考慮することなく、時刻以外の変数を分類するために使用されている。すなわち、従来のクラスタリングの結果には、時刻情報が欠落している。そのため、クラスタリングの結果に時刻情報を追加することが考えられる。例えば、複数の変数に対する主成分分析によって得られる2つの主成分の散布図において、クラスタリングの結果を表す境界を表示するとともに、各点を時刻ごとに色分けすることが考えられる。しかしながら、この場合、情報過多であるために、わかりにくい散布図となり、データ分析の初動を十分にサポートできない。
これに対し、図1に示す情報処理方法によれば、ユーザは、各組み合わせに属するデータ要素8の度数の分布から、時間経過による複数の空間領域の度数変化を容易に把握できる。生産システムでは、何らかの異常が発生したタイミングにおいて、複数の変数のうちのいずれかが当該異常に影響され得る。そのため、ユーザは、ある時間領域における各空間領域の度数分布が残りの時間領域における各空間領域の度数分布と異なる場合、当該ある時間領域において生産システムに何らかの状態変化が発生していると推定できる。その結果、ユーザは、当該ある時間領域に対応し、かつ、特異な度数を有する組み合わせに属するデータ要素8から重点的に確認し始めることができる。このように、本実施の形態に係る情報処理方法によれば、データ分析の初動をサポートできる。
§2 具体例
<システム構成>
上記の情報処理方法が適用される具体的なシステムについて説明する。以下、主として、予測機能を有する生産システムの主要な局面について説明する。なお、上記の情報処理方法は、以下に記す予測機能を有する生産システムに限定されず、他のシステム(例えば、異常検知機能を有する生産システムなど)にも適用され得る。
図2は、実施の形態に係る生産システムの全体構成例を示す模式図である。図2を参照して、実施の形態に係る生産システム1は、主たる構成要素として、制御対象を制御する制御装置100と、制御装置100に接続されるサポート装置200とを含む。
制御装置100は、PLC(プログラマブルロジックコントローラ)などの、一種のコンピュータとして具現化されてもよい。制御装置100は、フィールドバス2を介してフィールド装置群10と接続されるとともに、フィールドバス4を介して1または複数の表示装置600と接続されてもよい。さらに、制御装置100は、上位ネットワーク6を介して上位サーバ300に接続されてもよい。なお、上位サーバ300および表示装置600はオプショナルな構成であり、生産システム1の必須の構成ではない。
制御装置100は、設備や機械を制御するための各種演算を実行する制御ロジック(以下、「PLCエンジン」とも称す。)を有している。PLCエンジンに加えて、制御装置100は、フィールド装置群10にて計測され、制御装置100へ転送されるデータ(以下、「入力データ」とも称す。)を収集する収集機能を有している。さらに、制御装置100は、収集した入力データに基づいて将来の時間変化を予測する予測機能も有している。
具体的には、制御装置100に実装される時系列データベース(以下、「TSDB(Time Series Data Base)」とも記す。)130が収集機能を提供し、制御装置100に実装される予測モデル140が監視機能を提供する。TSDB130および予測モデル140の詳細については後述する。
フィールドバス2およびフィールドバス4は、産業用の通信プロトコルを採用することが好ましい。このような通信プロトコルとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などが知られている。
フィールド装置群10は、制御対象または制御に関連する製造装置や生産ラインなど(以下、「フィールド」とも総称する。)から入力データを収集する装置を含む。このような入力データを収集する装置としては、入力リレーや各種センサなどが想定される。フィールド装置群10は、さらに、制御装置100にて生成される指令(以下、「出力データ」とも称す。)に基づいて、フィールドに対して何らかの作用を与える装置を含む。このようなフィールドに対して何らかの作用を与える装置としては、出力リレー、コンタクタ、サーボドライバおよびサーボモータ、その他任意のアクチュエータが想定される。これらのフィールド装置群10は、フィールドバス2を介して、制御装置100との間で、入力データおよび出力データを含むデータを遣り取りする。
図2に示す構成例においては、フィールド装置群10は、リモートI/O(Input/Output)装置12と、リレー群14と、画像センサ18およびカメラ20と、サーボドライバ22およびサーボモータ24とを含む。
リモートI/O装置12は、フィールドバス2を介して通信を行う通信部と、入力データの収集および出力データの出力を行うための入出力部(以下、「I/Oユニット」とも称す。)とを含む。このようなI/Oユニットを介して、制御装置100とフィールドとの間で入力データおよび出力データが遣り取りされる。図2には、リレー群14を介して、入力データおよび出力データとして、デジタル信号が遣り取りされる例が示されている。
I/Oユニットは、フィールドバス2に直接接続されるようにしてもよい。図2には、フィールドバス2にI/Oユニット16が直接接続されている例を示す。
画像センサ18は、カメラ20によって撮像された画像データに対して、パターンマッチングなどの画像計測処理を行って、その処理結果を制御装置100へ送信する。
サーボドライバ22は、制御装置100からの出力データ(例えば、位置指令など)に従って、サーボモータ24を駆動する。
上述のように、フィールドバス2を介して、制御装置100とフィールド装置群10との間でデータが遣り取りされることになるが、これらの遣り取りされるデータは、数百μsecオーダ~数十msecオーダのごく短い周期で更新されることになる。なお、このような遣り取りされるデータの更新処理を、「I/Oリフレッシュ処理」と称することもある。
また、フィールドバス4を介して制御装置100と接続される表示装置600は、ユーザからの操作を受けて、制御装置100に対してユーザ操作に応じたコマンドなどを送信するとともに、制御装置100での演算結果などをグラフィカルに表示する。
上位サーバ300は、制御装置100と上位ネットワーク6を介して接続され、制御装置100との間で必要なデータを遣り取りする。上位ネットワーク6には、イーサネット(登録商標)などの汎用プロトコルが実装されてもよい。
サポート装置200は、制御装置100が制御対象を制御するために必要な準備を支援する情報処理装置(コンピュータの一例)である。具体的には、サポート装置200は、制御装置100で実行されるユーザプログラムの開発環境(プログラム作成編集ツール、パーサ、コンパイラなど)、制御装置100および制御装置100に接続される各種デバイスのパラメータ(コンフィギュレーション)を設定するための設定環境、生成したユーザプログラムを制御装置100へ送信する機能、制御装置100上で実行されるユーザプログラムなどをオンラインで修正・変更する機能、などを提供する。
さらに、実施の形態に係るサポート装置200は、制御装置100に実装される予測モデル140の生成および最適化を支援するための機能を有している。すなわち、サポート装置200は、予測モデル140を予め決定する予測モデル生成部を有している。これらの機能の詳細については後述する。
<生産システムの応用例>
図3は、実施の形態に係る生産システムの応用例を示す模式図である。図3には、プレス機30を含む生産設備の例を示す。
図3を参照して、プレス機30は、ワーク31を受け入れ、ベース33に設けられた支持台34上に受け入れたワーク31を配置する。そして、モータ37で駆動される駆動軸36の先端に設けられた押し込み板35でワーク31を圧縮して、中間製品32を生成する。
プレス機30においては、予期しない要因変動により中間製品32に不良が発生し得るとする。そのため、プレス機30の下流側に配置された検査機による検査、あるいは、検査員による目視検査または抜き取りによる検査によって、中間製品32に不良が発生しているか否かを判断する。もし、不良が発生していると判断されると、目標値などを都度調整することになる。
このように、通常の製造工程においては、中間製品32の良品率を維持および向上させるためには、目標値を都度調整する必要があるが、様々な観点から事前設計したとしても、すべての要因変動に対応することが難しい。
これに対して、実施の形態に係る予測モデル140を用いて、中間製品32の状態(すなわち、加工後の品質)を予測することで、不良が実際に発生する前に、制御装置100による制御を補正できる。このような事前の不良発生の予測を利用できることで、目標値などの都度調整に係る工数を削減するとともに、中間製品32に不良が発生することを防止できる。
図4は、実施の形態に係る生産システムによる制御系を説明する図である。図4を参照して、本例における、制御対象は、プレス機30である。既存制御系には、装置の設定値が入力されて目標値が生成される。プレス機30の制御量と、目標値とに基づくフィードバック制御により制御対象に対する操作量が設定される。また、既存制御系に対して予測制御系が設けられる。具体的には、説明変数に対して目的変数を算出する予測器が設けられる。予測器の一例は、予測モデル140である。プレス機30の品質特性の目標値と目的変数とに基づいて補正器で補正値が算出される。当該補正値が操作量に加えられる。
図5は、実施の形態に係る生産システムによる予測制御系の予測結果に基づく制御の一例を示す模式図である。
図5の(A)には、ある時点におけるプレス機の押し込み位置の計画値(指令)と、実際のプレス機30の押し込み位置(実績値)とを示す。目標値は、加工後の中間製品32のあるべき厚みを示す。
図5の(B)を参照して、ある時点において、それまでの情報(実績値を含み得る)に基づいて、この先のプレス機30の押し込み位置(予測値)を算出し、その算出された予測値に基づいて、プレス機30に対する操作量を補正値により補正する。
図3~図5に示すプレス機30においては、プレス機30の押し込み位置を予測し、その予測結果に基づいて制御量を補正することで、例えば、ワーク31の硬さのばらつきなどに応じて、作業者が目標値を都度調整するようなことは必要ない。その結果、予期しない要因変動による不良品の発生を抑制でき、ワーク31に何らかのばらつきがあっても、品質を安定化できる。
予測に用いるデータ(実績値または観測値)と予測されるデータとは、一部または全部が同一であってもよいし、全く異なるものであってもよい。
実施の形態に係る生産システム1は、予測モデル140を適切に生成するための機能を提供する。予測モデル140を適切に生成するための機能は、典型的には、サポート装置200に実装されてもよい。
<予測モデルの生成および運用の概要>
次に、実施の形態に係る生産システム1を用いた予測モデル140の生成および運用の概要について説明する。
図6は、実施の形態に係る生産システム1を用いた予測モデル140の生成処理の処理手順を示すフローチャートである。図5に示す各ステップは、典型的には、サポート装置200のプロセッサ202がプログラム(解析プログラム226およびOS228など)を実行することで実現される。
図6を参照して、サポート装置200は、TSDB130に格納されている実績値の時系列データ7を取得する(ステップS1)。続いて、サポート装置200は、取得した実績値の時系列データ7から予測対象区間の設定を受け付ける(ステップS2)。
サポート装置200は、ステップS2において設定された予測対象区間の変化を予測するための予測モデルの生成に用いられる学習用サンプルを選択する(ステップS3)。ステップS3においては、複数種類のデータのうち、いずれのデータが学習に用いられるのかが選択される。
サポート装置200は、選択した学習用サンプルに基づいて機械学習する(ステップS4)。
サポート装置200は、機械学習により予測モデル140を生成する(ステップS6)。本例における予測モデル140は、決定木により構成される。決定木は、ある時点の特徴量に対して押し込み位置(予測値)を出力するように構成される。この決定木の学習方法には、CLS(Concept Learning System)、ID3(Iterative Dichotomiser 3)、C4.5等が用いられてもよい。
本明細書において、「サンプル」は、予測モデル140から出力されるべき予測値の教師データとして用いられる所定時間長さのデータ列を意味する。「サンプル」は、基本的には、予測対象の時系列データ(生データ)が用いられるが、予測対象が時系列データから抽出される特徴量である場合には、特徴量を用いてもよい。「サンプル」という用語は、複数のデータを処理する際の処理単位に注目したものであり、それに含まれるデータの内容などについては、特に限定するようなものではない。
本明細書において、任意の予測値を算出または決定するために参照されるデータを「説明変数」とも称す。1または複数の「説明変数」を用いて、任意の予測値が算出または決定される。そのため、学習用サンプルは、「説明変数」の候補となり得るデータと何らかの方法で関連付けられることになる。
本明細書において、「特徴量」は、処理対象の時系列データに含まれる情報を包含する用語であり、例えば、対象の時系列データについての、最大値、最小値、中間値、平均値、標準偏差、分散などを含み得る。なお、「特徴量」は、対象の時系列データそのものも含み得る。
図7は、実施の形態に係る予測モデル140の学習方法について説明する図である。図7の(A)に示されるように、TSDB130に格納されている時系列データ7が示されている。当該時系列データ7に対して、予測対象区間が設定され、予測対象区間の時刻tおよびt-1の2点の特徴量に対して予測対象の目的変数である予測値が推定される。図7の(B)に示されるように、当該時系列データ7を用いて、単位時刻分ずらして学習処理を実行する場合が示されている。
以上のような処理手順によって生成された予測モデル140を制御装置100に設定することで、図3~図5に示すような運用が可能となる。
<ハードウェア構成例>
次に、実施の形態に係る生産システム1を構成する主要な装置のハードウェア構成例について説明する。
(制御装置100のハードウェア構成例)
図8は、実施の形態に係る生産システム1を構成する制御装置100のハードウェア構成例を示すブロック図である。図8を参照して、制御装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ102と、チップセット104と、主記憶装置106と、二次記憶装置108と、上位ネットワークコントローラ110と、USB(Universal Serial Bus)コントローラ112と、メモリカードインターフェイス114と、内部バスコントローラ122と、フィールドバスコントローラ118,120と、I/Oユニット124-1,124-2,…とを含む。
プロセッサ102は、二次記憶装置108に格納された各種プログラムを読み出して、主記憶装置106に展開して実行することで、PLCエンジン150および予測モデル140を実現する。チップセット104は、プロセッサ102と各コンポーネントとの間のデータ伝送などを制御する。
二次記憶装置108には、PLCエンジン150を実現するためのシステムプログラムに加えて、PLCエンジン150を利用して実行されるユーザプログラムが格納される。さらに、二次記憶装置108には、予測モデル140を実現するためのプログラムも格納される。
上位ネットワークコントローラ110は、上位ネットワーク6を介した別の装置との間のデータの遣り取りを制御する。USBコントローラ112は、USB接続を介してサポート装置200との間のデータの遣り取りを制御する。
メモリカードインターフェイス114は、メモリカード116を着脱可能に構成されており、メモリカード116に対してデータを書き込み、メモリカード116から各種データ(ユーザプログラムやトレースデータなど)を読み出すことが可能になっている。
内部バスコントローラ122は、制御装置100に搭載されるI/Oユニット124-1,124-2,…との間でデータを遣り取りするインターフェイスである。
フィールドバスコントローラ118は、フィールドバス2を介した別の装置との間のデータの遣り取りを制御する。同様に、フィールドバスコントローラ120は、フィールドバス4を介した別の装置との間のデータの遣り取りを制御する。
図8には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、制御装置100の主要部を、汎用的なアーキテクチャに基づくハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
(サポート装置200のハードウェア構成例)
実施の形態に係るサポート装置200は、一例として、汎用的なアーキテクチャに基づくハードウェア(例えば、汎用パソコン)を用いてプログラムを実行することで実現される。
図9は、実施の形態に係る生産システム1を構成するサポート装置200のハードウェア構成例を示すブロック図である。図9を参照して、サポート装置200は、CPUやMPUなどのプロセッサ202と、光学ドライブ204と、主記憶装置206と、二次記憶装置208と、USBコントローラ212と、上位ネットワークコントローラ214と、入力部216と、表示部218とを含む。これらのコンポーネントはバス220を介して接続される。
プロセッサ202は、二次記憶装置208に格納された各種プログラムを読み出して、主記憶装置206に展開して実行することで、後述するようなモデル生成処理を含む各種処理を実現する。
二次記憶装置208は、例えば、HDD(Hard Disk Drive)やSSD(Flash Solid State Drive)などで構成される。二次記憶装置208には、典型的には、サポート装置200において実行されるユーザプログラムの作成、作成したユーザプログラムのデバッグ、システム構成の定義、各種パラメータの設定などを行うための開発プログラム222と、制御装置100との間で予測機能に関するデータを遣り取りするためのPLCインターフェイスプログラム224と、予測モデル140の生成などを実現するための解析プログラム226と、OS228とが格納される。二次記憶装置208には、図9に示すプログラム以外の必要なプログラムが格納されてもよい。
サポート装置200は、光学ドライブ204を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体205(例えば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムが読み取られて二次記憶装置208などにインストールされる。
サポート装置200で実行される各種プログラムは、コンピュータ読取可能な記録媒体205を介してインストールされてもよいが、ネットワーク上の任意のサーバからダウンロードする形でインストールするようにしてもよい。また、実施の形態に係るサポート装置200が提供する機能は、OSが提供するモジュールの一部を利用する形で実現される場合もある。
USBコントローラ212は、USB接続を介して制御装置100との間のデータの遣り取りを制御する。上位ネットワークコントローラ214は、任意のネットワークを介した別の装置との間のデータの遣り取りを制御する。
入力部216は、キーボードやマウスなどで構成され、ユーザ操作を受け付ける。表示部218は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ202からの処理結果などを出力する。
図9には、プロセッサ202がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
<ソフトウェア構成例/機能構成例>
次に、実施の形態に係る生産システム1を構成する制御装置100およびサポート装置200のソフトウェア構成例および機能構成例について説明する。
図10は、実施の形態に係る生産システム1を構成する制御装置100およびサポート装置200のソフトウェア構成例を示すブロック図である。図10を参照して、制御装置100は、主要な機能構成として、PLCエンジン150に加えて、TSDB130および予測モデル140を含む。
PLCエンジン150は、ユーザプログラム154を逐次解釈して、指定された制御演算を実行する。PLCエンジン150は、フィールドから収集される状態値を変数152の形で管理しており、変数152は予め定められた周期で更新される。PLCエンジン150は、制御装置100のプロセッサ102がシステムプログラムを実行することで実現されてもよい。
本明細書において、「状態値」は、フィールドから収集される入力値、フィールドへ出力される指令値、および、制御装置100の内部で管理されるシステム状態値や内部値を含む。実施の形態に係る制御装置100においては、「状態値」を「変数」の形で参照するので、以下の説明においては、便宜上、「変数」との用語を「状態値」を含む趣旨で用いる。なお、本開示の技術的範囲は、「状態値」を「変数」の形で参照する構成に限定されることはない。
ユーザプログラム154は、予測値取得コード156と、誤差評価コード158と、追加学習コード160と、TSDB書き込みコード162と、制御演算コード164とを含む。
予測値取得コード156は、制御演算コード164が参照可能な状態値のうち1または複数の状態値からなる実績値を予測モデル140に入力することで予測値を取得する予測値取得部を実現する。より具体的には、予測値取得コード156は、変数152として管理される必要な実績値を取得して、予測モデル140に入力することで、予測値を取得する命令を含む。
誤差評価コード158は、予測値取得コード156により取得された予測値と目標値との誤差を評価する命令を含む。
追加学習コード160は、誤差評価コード158により評価された誤差に応じて、必要に応じて、予測モデル140を追加学習する命令を含む。
TSDB書き込みコード162は、変数152として管理される変数のうち、予め定められた変数を取得して、TSDB130の記憶領域132に書き込む。
制御演算コード164は、制御対象を制御するための制御演算を実行する制御演算部を実現する。より具体的には、制御演算コード164は、制御対象を制御するための制御演算を実行するとともに、誤差評価コード158により評価された誤差に応じて、必要に応じて、制御演算に用いる目標値を補正する。
TSDB130は、記憶領域132に書き込まれたデータを必要に応じて、サポート装置200などへエクスポートするエクスポートモジュール134を有している。
予測モデル140は、参照軌道144を有している。
一方、サポート装置200は、開発プログラム222および解析プログラム226がインストールされている。
開発プログラム222は、ユーザ操作に従って、ユーザプログラム154を生成し、制御装置100へ転送する。また、開発プログラム222は、制御演算コード164の内容を適宜修正する機能も有している。
解析プログラム226は、予測モデル140を予め決定する予測モデル生成部を実現するための情報処理プログラムに相当する。より具体的には、解析プログラム226は、予測モデル140の生成を支援するものであり、モデル生成モジュール2262と、前処理モジュール2264とを含む。
モデル生成モジュール2262は、予測モデル140を生成する処理に必要な機能を実現する。
前処理モジュール2264は、予測モデル140を生成するために用いられる学習用サンプルを選択するために用いられる。予測対象の時系列データ(生データ)の中から必要なデータを抽出するとともに、不要なデータを学習用サンプルから除外する処理を実行する。これにより、予測モデル140の精度を向上させることが可能となる。
図11は、図10に示す解析プログラム226に含まれる機能モジュールの概要を示すブロック図である。図11を参照して、サポート装置200の解析プログラム226は、主要な機能構成として、ユーザインターフェイス230と、入出力管理モジュール236と、画面表示モジュール238と、グラフライブラリ240と、解析モジュール242と、解析ライブラリ244とを含む。
ユーザインターフェイス230は、ユーザからの設定を受け付けるとともに、ユーザに対して各種情報を提供するための統括的な処理を実行する。具体的な実装形態として、ユーザインターフェイス230は、スクリプトエンジン232を有しており、必要な処理を記述したスクリプトを含む設定ファイル234を読み込んで、設定された処理を実行する。
入出力管理モジュール236は、指定されたファイルなどからデータを読み込むファイル入力機能と、データストリームを受信するストリーム入力機能と、生成したデータなどを含むファイルを出力するファイル出力機能とを含む。
画面表示モジュール238は、入力された予測モデルに基づいてモデル評価画面を生成する機能と、ユーザの操作を受けて評価結果を表示する機能とを含む。グラフライブラリ240を参照して必要な処理を実行するようにしてもよい。
解析モジュール242は、解析プログラム226の主要な処理を実現するモジュールであり、モデル生成機能および前処理機能を有している。解析モジュール242に含まれる各機能は、解析ライブラリ244を参照することで実現される。
解析ライブラリ244は、解析モジュール242に含まれる各機能が処理を実行するためのライブラリを含む。より具体的には、解析ライブラリ244は、統計量機能、決定木機能、時系列回帰機能、グリッドサーチ機能、クラスタリング機能、推論速度評価機能、精度評価機能、および、異常検知機能を有している。
<前処理ツール>
図12は、実施の形態に係る前処理機能を実行する前処理部について説明する図である。図12を参照して、前処理部250は、取得部251と、第1分類部252と、第2分類部253と、出力部254と、受付部255と、ラベリング部256とを含む。前処理部250は、一例として前処理モジュール2264により実現される。
図1のフローで説明したステップS100~S400および図6のフローで説明したステップS1~S3の部分については前処理部250によって実行される。
取得部251は、TSDB130に格納されている時系列データ7を取得する。時系列データ7は、互いに異なる時刻に対応する複数のデータ要素8を含む(図1参照)。複数のデータ要素8の各々は、対応する時刻を示す第1サブ要素8aと、対応する時刻における複数の変数の値(実績値)を示す第2サブ要素8bとを含む。
第1分類部252は、複数のデータ要素8に含まれる第1サブ要素8aに対してクラスタリングを行なうことにより、第1サブ要素8aを複数の時間領域のいずれかに分類する。
第2分類部253は、複数のデータ要素8に含まれる第2サブ要素8bに対してクラスタリングを行なうことにより、第2サブ要素8bを複数の空間領域のいずれかに分類する。
第1分類部252および第2分類部253は、公知のクラスタリング手法を用いればよい。公知のクラスタリング手法として、非階層クラスタリングおよび階層クラスタリングが存在する。非階層クラスタリングとしてk-means法が挙げられる。階層クラスタリングとして、ウォード法、群平均法、最短距離法、最長距離法などが挙げられる。
時間領域の個数(クラスタ数)および空間領域の個数(クラスタ数)は、例えば、データ要素8の個数とスタージェスの公式とを用いて決定されてもよい。あるいは、時間領域の個数および空間領域の個数は、ユーザによって指定されてもよい。
第2分類部253は、複数の変数の各々に対して、第2サブ要素8bを複数の空間領域の各々に分類する際の寄与度を算出する。第2分類部253は、公知の因子分析手法等に基づいて複数の変数の寄与度を算出すればよい。
受付部255は、入力部216の操作に応じて、複数の組み合わせのうちの1以上の組み合わせの選択入力を受け付ける。
出力部254は、入力部216の操作に応じて、以下の第1~第8情報を出力する。具体的には、出力部254は、第1~第8情報のうちの少なくとも1つに基づいた画面を生成し、生成した画面を表示部218に表示させる。
(a)第1情報は、上述したように、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせの各々について、複数のデータ要素8のうち当該組み合わせに属するデータ要素8の度数を示す。
(b)第2情報は、複数のデータ要素8のうち複数の時間領域の各々に属する第1サブ要素8aを含むデータ要素8の度数分布図を示す。
(c)第3情報は、複数のデータ要素8のうち複数の空間領域の各々に属する第2サブ要素8bを含むデータ要素8の度数分布図を示す。
(d)第4情報は、複数の変数のうちの少なくとも1つの変数の時系列散布図を示す。
(e)第5情報は、複数の変数のうちの少なくとも2つの変数に対する多次元散布図を示す。
(f)第6情報は、第2分類部253による、受付部255によって受け付けられた1つの組み合わせの空間領域への第2サブ要素8bの分類における複数の変数の各々の寄与度を示す。
(g)第7情報は、複数の時間領域の各々における、当該時間領域に属する第1サブ要素8aによって示される時刻の分布を示す。
(h)第8情報は、複数の空間領域の樹形図を示す。なお、第8情報は、第2分類部253が複数のデータ要素8に含まれる第2サブ要素8bに対して階層クラスタリングを行なう場合にのみ生成される。
ラベリング部256は、入力部216の操作に応じて、予測モデル140を生成するために用いられる学習用サンプルを選択するための指標として、複数のデータ要素8にラベルを付与する。
図13は、初動サポート画面の一例を示す図である。図13に示す初動サポート画面400は、出力部254によって生成され、表示部218に表示される。
図13に示されるように、初動サポート画面400は、第1情報に基づいて生成されるグラフ410を含む。グラフ410は、複数の時間領域を表す横軸(第1軸)と、複数の空間領域を表す縦軸(第2軸)とを有する。グラフ410は、例えば、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせの各々について、当該組み合わせに属するデータ要素8の度数を色および濃度で表す2次元ヒートマップである。
さらに、初動サポート画面400は、複数のデータ要素8のうち複数の時間領域の各々に属する第1サブ要素8aを含むデータ要素8の度数分布図420と、複数のデータ要素8のうち複数の空間領域の各々に属する第2サブ要素8bを含むデータ要素8の度数分布図430とを含む。度数分布図420および度数分布図430は、第2情報および第3情報に基づいてそれぞれ生成される。
初動サポート画面400は、複数の時間領域のうちの1つと複数の空間領域のうちの1つとの複数の組み合わせのうちの1以上の組み合わせを選択するためのカーソル440を含む。受付部255は、カーソル440に対する入力部216の操作に応じて、1以上の組み合わせの選択入力を受け付ける。
ユーザは、初動サポート画面400のグラフ410を確認することにより、時間領域と空間領域との相関を大まかに把握できる。
例えば、ユーザは、時間経過による複数の空間領域の度数変化を容易に把握できる。ユーザは、ある時間領域における各空間領域の度数分布が残りの時間領域における各空間領域の度数分布と異なる場合、当該ある時間領域において生産システム1のフィールドに何らかの状態変化が発生していると推定できる。その結果、ユーザは、当該ある時間領域に対応し、かつ、特異が度数を有する組み合わせに属するデータ要素8から重点的に確認し始めることができる。
また、ユーザは、度数分布図420,430を確認することにより、各時間領域に属するデータ要素8の度数と、各空間領域に属するデータ要素8の度数とを容易に把握できる。そのため、ユーザは、例えば、特異な度数を有する時間領域または空間領域に属するデータ要素8から重点的に確認し始めることができる。
さらに、ユーザは、生産システム1において蓄積されるイベントデータ、生産管理データ等を適宜参照してもよい。イベントデータは、生産システム1において発生したイベントの種類とその発生時刻とを対応付けたデータである。生産管理データは、ロット番号と、当該ロット番号の製品が生産された期間とを対応づけたデータである。これにより、ユーザは、グラフ410上の注目する時間領域において発生したイベントを把握したり、当該時間領域において生産されたロット番号を特定したりできる。
図14は、初動サポート画面の別の例を示す図である。図14に示す初動サポート画面400Aは、出力部254によって生成され、表示部218に表示される。
図14に示されるように、初動サポート画面400Aは、図13に示す初動サポート画面400と同様に、第1情報に基づいて生成されるグラフ410を含む。さらに、初動サポート画面400Aは、複数の時間領域の各々における、当該時間領域に属する第1サブ要素8aによって示される時刻の分布を示す分布図450を含む。分布図450は、第7情報に基づいて生成される。
さらに、初動サポート画面400Aは、複数の空間領域の階層構造を示す樹形図460を含む。樹形図460は、第8情報に基づいて生成される。
ユーザは、初動サポート画面400Aの分布図450を確認することにより、各時間領域におけるデータ要素8の粗密を把握できる。
空間領域は、生産システム1のフィールドの状態を表していると言える。そのため、ユーザは、樹形図460を確認することにより、ある空間領域に属するデータ要素8によって示されるフィールドの状態が別のどの空間領域に属するデータ要素8によって示されるフィールドの状態に類似しているかを容易に把握できる。
なお、分布図450および樹形図460は、図13に示す初動サポート画面400に含まれていてもよい。
図15は、ラベリング画面の第1例を示す図である。図15に示すラベリング画面500は、図13に示す初動サポート画面400(または図14に示す初動サポート画面400A)において1以上の組み合わせが選択されたことに応じて出力部254によって生成され、表示部218に表示される。
図15に示されるように、ラベリング画面500は、時系列散布図560と、2次元散布図530とを含む。時系列散布図560および2次元散布図530は、第4情報および第5情報に基づいてそれぞれ生成される。さらに、ラベリング画面500は、複数の変数のリスト520を含む。
ラベリング画面500は、時系列データ7のファイルデータを特定するファイル入力欄510を含む。本例においては、一例として、「C:¥hoge.csv」のファイル名の時系列データ7が展開された場合が示されている。
図15に示すラベリング画面500において、時系列散布図560は、縦軸変数「TopSeal_Act_Trq」の時間変化を示す。時系列散布図560には、開始点選択ライン562と、終了点選択ライン564とが設けられる。開始点選択ライン562および終了点選択ライン564は、ユーザが例えばポイティングデバイスを用いて任意の位置に変更することが可能である。
開始点選択ライン562と終了点選択ライン564とで指定される範囲は、行ラベルの付与対象となるデータ範囲である。
2次元散布図530には、縦軸の変数を選択入力する縦軸入力欄512と、横軸の変数を選択入力する横軸入力欄514と、色を指定入力するための入力欄516とが設けられている。ユーザは、例えばポインティングデバイスを用いて複数の変数の中から選択入力することが可能である。複数の変数は、変数のリスト520の列名が用いられる。
例えば、縦軸入力欄512のドロップダウンボタンを選択すると選択可能な変数のリストが表示され、当該変数のリストの中から縦軸に指定する変数を選択することが可能である。同様に、横軸入力欄514のドロップダウンボタンを選択すると選択可能な変数のリストが表示され、当該変数のリストの中から横軸に指定する変数を選択することが可能である。入力欄516のドロップダウンボタンを選択すると選択可能な色のリストが表示され、当該色のリストの中から指定したい色を選択することが可能である。
なお、縦軸および横軸で選択する変数は異なるものが選択されるため、一方の軸に対して選択された変数は、他方の軸に対しては選択不能にしてもよい。
一例として、図15に示すラベリング画面500において、縦軸変数「TopSeal_Act_Trq」と横軸変数「TopSeal_Act_Pos」とが選択されているときの2次元散布図530が示されている。
また、ラベリング画面500には、列ラベル入力欄540と、行ラベル入力欄550とが設けられている。ユーザは、例えばポインティングデバイスを用いて複数の変数の中からラベリングする変数を選択するとともに、列ラベル入力欄540にラベル名を入力して登録ボタンを押下することにより当該変数に対して列ラベルを付与することが可能である。また、ユーザは、例えばポインティングデバイスを用いて選択した範囲において行ラベル入力欄550にラベル名を入力して登録ボタンを押下することにより当該範囲に対して行ラベルを付与することが可能である。
図15に示されるように、出力部254は、時系列散布図560および2次元散布図530において、受付部255によって受け付けられた1以上の組み合わせのいずれかに属するデータ要素8に対応する点の表示形式を残りの点の表示形式と異ならせる。これにより、ユーザは、時系列散布図560および2次元散布図530において、図13に示す初動サポート画面400において選択した組み合わせに属するデータ要素8を容易に特定できる。その結果、ユーザは、図13に示す初動サポート画面400において選択した組み合わせに属するデータ要素8の特徴を把握しやすくなる。
変数のリスト520には、変数名と、当該変数の特徴量とがリスト表示されている。一例として、特徴量「ユニーク数」、「無効値数」が示されている。また、列ラベルの欄も設けられており、列ラベル入力欄540で入力したラベル名が、選択した変数に対応する列ラベルとして表示される。また、リスト520の順序を所定の方式に従ってソートすることも可能に設けられている。
本例においては、初期状態において変数のリスト520の列名の最上位の変数が縦軸変数(一例として「TopSeal_Act_Trq」)として設定される。
これにより、時系列散布図560および2次元散布図530において共に同じ変数が縦軸の変数として設定されるため当該変数の推移について容易に把握することが可能である。ユーザは、当該変数の推移を容易に把握することにより列ラベルおよび行ラベルを簡易な仕方で付与することが可能となる。
なお、本例においては、2次元散布図530において、変数のリスト520の2番目の変数が横軸変数として設定される。
さらに、変数のリスト520には、受付部255によって受け付けられた1つの組み合わせの空間領域への第2サブ要素8bの分類における各変数の寄与度が含まれる。当該寄与度は、第6情報によって示される。
上記したように、縦軸入力欄512および横軸入力欄514は、ユーザ操作により任意の変数に設定することが可能である。当該変数に設定を変更した場合には、設定した変数に対応する散布図に変更される。例えば、縦軸入力欄512の縦軸変数「Chapter」に変更された場合には、縦軸変数「Chapter」の時系列散布図560が表示されるとともに、縦軸変数「Chapter」および横軸変数「TopSeal_Act_Pos」の2次元散布図530が表示される。他の場合についても同様である。
なお、本例においては、変数を選択する際に、ドロップダウンボタンを利用する場合について説明したが、特にドロップダウンボタンを用いた形式に限定されない。例えば、キーボードを用いて直接入力する形式でも良いし、あるいは、いわゆるドラッグアンドドロップにより変数を選択するようにしてもよい。例えば、ポインティングデバイスを用いて変数のリスト520において、変数を選択した状態でドラッグし、縦軸入力欄512あるいは横軸入力欄514の位置でドロップするような操作形式を採用してもよい。
次に列ラベルを付与する場合について説明する。
図16は、ラベリング画面の第2例について説明する図である。図16に示すラベリング画面504には、図15に示すラベリング画面500と同様に、第4情報によって示される時系列散布図560と、第5情報によって示さされる2次元散布図530と、変数のリスト520とが表示される。
図16に示すラベリング画面504において、変数のリスト520は、ソート操作に応じて、ユニーク数が「1」の変数を示している。時系列散布図560は、縦軸の変数(「VirtualMaster.Act.Trq」)の経時変化を示す。2次元散布図530は、縦軸変数「VirtualMaster.Act.Trq」と横軸変数「VirtualMaster.Cmd.Trq」の散布図である。すなわち、2次元散布図530に用いられる変数として、変数のリスト520において上位および2番目の変数が選択されている。
また、ラベリング画面504には、列ラベル入力欄540と、行ラベル入力欄550とが設けられている。
本例においては、列ラベル入力欄540には、列ラベル(「parameter」)が入力されるとともに、登録ボタンを選択した場合が示されている。
これにより、変数のリスト520のユニーク数が「1」に対応する選択された変数に対して列ラベルを付与することが可能である。本例においては、列ラベル(<parameter>)が付与された場合が示されている。
例えば、当該方式によりユーザは、ユニーク数が「1」の変数に列ラベルを付与することにより予測モデルの学習用サンプルとして利用が適切でない変数を容易に選別することが可能である。なお、本例においては、複数の変数に対応して一括して列ラベルを付与する場合について説明したが、1つずつ変数に対応して列ラベルを付与することも可能である。
図17は、ラベリング画面の第3例について説明する図である。図17に示すラベリング画面506には、図15に示すラベリング画面500と同様に、第4情報によって示される時系列散布図560と、第5情報によって示さされる2次元散布図530と、変数のリスト520とが表示される。
本例においては、変数のリスト520において複数の変数のリストが選択されている場合が示されている。本例においては、一例として主要なモータに関する変数のリストが選択されている。
図17に示すラベリング画面506において、時系列散布図560は、縦軸の変数(「FilmFeedMain.Act.Pos」)の経時変化を示す。2次元散布図530は、縦軸変数「FilmFeedMain.Act.Pos」と横軸変数「ProductFeed.Act.Pos」との散布図である。すなわち、2次元散布図530に用いられる変数として、変数のリスト520において上位および2番目の変数が選択されている。
また、ラベリング画面506には、列ラベル入力欄540と、行ラベル入力欄550とが設けられている。
本例においては、列ラベル入力欄540には、列ラベル(「4motor.act」)が入力されるとともに、登録ボタンを選択した場合が示されている。
これにより、変数のリスト520において、選択された複数の変数に対して列ラベルを付与することが可能である。本例においては、列ラベル(<4motor.act>)が付与された場合が示されている。
例えば、当該方式によりユーザは、複数の変数に列ラベルを付与することにより予測モデルの学習用サンプルとして特に利用する変数を容易に選別することが可能である。なお、本例においては、複数の変数に対応して一括して列ラベルを付与する場合について説明したが、1つずつ変数に対応して列ラベルを付与することも可能である。
図18は、ラベリング画面の第4例について説明する図である。図18に示すラベリング画面508には、図15に示すラベリング画面500と同様に、第4情報によって示される時系列散布図560と、第5情報によって示さされる2次元散布図530と、変数のリスト520とが表示される。
本例においては、変数のリスト520において複数の変数のリストが選択されている場合が示されている。
本例においては、行ラベル入力欄550には、行ラベル(「normal」)が入力されている場合が示されている。例えば、ポインティングデバイスを用いて開始点選択ライン562と終了点選択ライン564とで指定した範囲が、行ラベルの付与対象となるデータ範囲として選択される。
例えばポインティングデバイスを用いて選択した範囲において行ラベル入力欄550にラベル名を入力して登録ボタンを押下することにより当該範囲に対して行ラベルを付与することが可能である。
なお、本例においては、ポインティングデバイスを用いて開始点選択ライン562および終了点選択ライン564を用いて範囲を指定する場合について説明したが、これに限られず時刻を直接指定して範囲を選択するようにしてもよく、範囲の選択の仕方については何ら限定されない。
例えば、当該方式によりユーザは、データセットに対して行ラベルを付与することにより予測モデルの学習用サンプルとしてある特定の期間を容易に選別することが可能である。
なお、本例においては、時系列散布図560を用いて指定した範囲のデータに対して行ラベルを付与する場合について説明したが、これに限られず、例えば、2次元散布図530を用いて行ラベルを付与することも可能である。例えば、2次元散布図530においてデータを包含する範囲を指定することにより当該範囲に含まれるデータに対して行ラベルを付与することが可能である。
図19は、時系列データテーブルおよび特徴量データテーブルについて説明する図である。
図19の(A)に示されるように、時系列データテーブルは、時刻に対応する複数の変数との対応関係を示す。本例においては、変数var1(「CenterHeaterDPC_MV」)、var2(「CenterHeaterTemp」)等が登録されている。また、行ラベルが登録された場合には、行ラベルの列が追加(更新)される。一例として、行ラベル(「normal」)が追加された場合が示されている。
時刻に対応して有効値(「True」)と、無効値(「False」)のいずれが登録される。例えば、開始点選択ライン562および終了点選択ライン564を用いて選択した範囲の時刻に対応する箇所について有効値(「True」)となり、非選択の範囲が無効値(「False」)に設定される。これにより、行ラベル(「normal」)として付与した範囲を特定することが可能となる。
図19の(B)に示されるように、特徴量データテーブルは、複数の変数と、対応する変数の特徴量との関係を規定する。具体的には、特徴量データテーブルは、複数の変数と、対応する変数の特徴量との対応関係を示す。本例においては、特徴量feat1(「ユニーク数」)、feat2(「無効値数」)等が登録されている。特徴量は、各変数の時系列データに対して所定のアルゴリズムに基づいて算出されるものである。なお、本例においては、「ユニーク数」や「無効値数」について説明したが、これに限られるものではなく、例えば、「平均値」や「最大値」等の統計的特徴量であってもよい。
また行ラベルが登録された場合には、行ラベル(「normal」)の項目が追加(更新)される。また、列ラベルが登録された場合には、列ラベルの項目が追加される。
一例として、列ラベル(「parameter」、「4motor.act」)がそれぞれ追加された場合が示されている。
変数に対応して有効値(「True」)と、無効値(「False」)のいずれが登録される。例えば、列ラベルを割り当てた変数について有効値(「True」)となり、割り当てない変数について無効値(「False」)に設定される。
これにより、列ラベル(「parameter」、「4motor.act」)として割り当てた変数を容易に特定することが可能となる。
実施形態においては、ラベリング画面においてユーザの選択等により変数等に対してラベリングすることが可能となる。そして、前処理部250は、ラベリング画面への入力に応じて、行レベルが付与された時系列データテーブル(図18の(A)参照)、ならびに、行ラベルおよび列ラベルが付与された特徴量データテーブルを生成する。
そして、モデル生成モジュール2262は、生成された当該時系列データテーブルおよび特徴量データテーブルに基づいて予測モデルを生成する。
具体的には、予測モデルの生成に際して、データとして除外するために列ラベルとして登録した「parameter」を選択することにより不要なデータを除いた学習用サンプルを選択することが可能である。
また、予測モデルの生成に際して、主要なデータとして列ラベルとして登録した「4motor.act」を選択することにより、有用なデータを選択した学習用サンプルを選択することが可能である。
さらに、予測モデルの生成に際して、行ラベルとして登録した(「normal」)を選択することにより、指定した範囲の時系列データの学習用サンプルを選択することが可能である。
これにより、不要なデータを学習用サンプルから除外して、予測モデルの精度を向上させることが可能となる。
上記においては、主に決定木に代表される木構造の学習アルゴリズムに基づく予測モデルを生成する場合について説明したが、決定木に限られず、他の学習アルゴリズムを用いた予測モデルにも同様に適用することが可能である。
さらに、本例においては、予測モデルの生成のために前処理ツールを用いてラベリングを実行する場合について説明したが、予測モデルの生成に限られず、例えばデータ分析のためにラベリングする場合においても同様に適用可能である。
<変形例>
上記の説明では、サポート装置200プロセッサ202は、サポート装置200内の表示部218に初動サポート画面400,400A,ラベリング画面500,504,506,508を表示させる。しかしながら、プロセッサ202は、第1情報~第8情報を外部の装置に出力してもよい。そして、外部の装置が初動サポート画面400,400A,ラベリング画面500,504,506,508を表示してもよい。
§3 付記
以上のように、本実施の形態は以下のような開示を含む。
(構成1)
情報処理装置(200)であって、
互いに異なる時刻に対応する複数のデータ要素(8)を含む時系列データ(7)を取得する取得部(202,251)を備え、前記複数のデータ要素(8)の各々は、対応する時刻を示す第1サブ要素(8a)と、前記対応する時刻における複数の変数の値を示す第2サブ要素(8b)とを含み、前記情報処理装置(200)は、さらに、
前記複数のデータ要素(8)に含まれる前記第1サブ要素(8a)に対してクラスタリングを行なうことにより、前記第1サブ要素(8a)を複数の時間領域のいずれかに分類する第1分類部(202,252)と、
前記複数のデータ要素(8)に含まれる前記第2サブ要素(8b)に対してクラスタリングを行なうことにより、前記第2サブ要素(8b)を複数の空間領域のいずれかに分類する第2分類部(202,252)と、
前記複数の時間領域のうちの1つと前記複数の空間領域のうちの1つとの複数の組み合わせの各々について、前記複数のデータ要素(8)のうち当該組み合わせに属するデータ要素の度数を示す第1情報を出力する出力部(202,252)と、を備える、情報処理装置(200)。
(構成2)
前記第1情報は、前記複数の時間領域を表す第1軸と、前記複数の空間領域を表す第2軸とを有するグラフ(410)を示し、
前記グラフ(410)は、前記度数の分布を示す、構成1に記載の情報処理装置(200)。
(構成3)
前記グラフ(410)は2次元ヒートマップである、構成2に記載の情報処理装置(200)。
(構成4)
前記出力部(202,252)は、
前記複数のデータ要素のうち前記複数の時間領域の各々に属する前記第1サブ要素を含むデータ要素の度数分布図(420)を示す第2情報と、
前記複数のデータ要素のうち前記複数の空間領域の各々に属する前記第2サブ要素を含むデータ要素の度数分布図(430)を示す第3情報と、をさらに出力する、構成1から3のいずれかに記載の情報処理装置(200)。
(構成5)
前記複数の組み合わせのうちの1以上の組み合わせの選択を受け付ける受付部(202,255)をさらに備え、
前記出力部(202,254)は、
前記複数の変数のうちの少なくとも1つの変数の時系列散布図(560)を示す第4情報と、前記複数の変数のうちの少なくとも2つの変数に対する多次元散布図(530)を示す第5情報とを出力し、
前記時系列散布図(560)および前記多次元散布図(530)において、前記複数のデータ要素(8)のうち前記1以上の組み合わせのいずれかに属するデータ要素に対応する点の表示形式を残りの点の表示形式と異ならせる、構成1から3のいずれかに記載の情報処理装置(200)。
(構成6)
前記複数の組み合わせのうちの1つの組み合わせの選択を受け付ける受付部(202,255)をさらに備え、
前記出力部(202,254)は、前記第2分類部(202,253)による前記1つの組み合わせの空間領域への前記第2サブ要素(8b)の分類における前記複数の変数の各々の寄与度を示す第6情報をさらに出力する、構成1から3のいずれかに記載の情報処理装置(200)。
(構成7)
前記出力部(202,254)は、前記複数の時間領域の各々における、当該時間領域に属する前記第1サブ要素(8a)によって示される時刻の分布(450)を示す第7情報をさらに出力する、構成1から3のいずれかに記載の情報処理装置(200)。
(構成8)
前記第2分類部(202,253)は、前記複数のデータ要素(8)に含まれる前記第2サブ要素(8b)に対して階層クラスタリングを行ない、
前記出力部(202,254)は、前記複数の空間領域の樹形図(460)を示す第8情報をさらに出力する、構成1から3のいずれかに記載の情報処理装置(200)。
(構成9)
コンピュータ(200)によって実行される情報処理方法であって、
前記コンピュータ(200)が、互いに異なる時刻に対応する複数のデータ要素(8)を含む時系列データ(7)を取得するステップ(S100)を備え、前記複数のデータ要素(8)の各々は、対応する時刻を示す第1サブ要素(8a)と、前記対応する時刻における複数の変数の値を示す第2サブ要素(8b)とを含み、前記情報処理方法は、さらに、
前記コンピュータ(200)が、前記複数のデータ要素(8)に含まれる前記第1サブ要素(8a)をクラスタリングすることにより、前記第1サブ要素(8a)を複数の時間領域のいずれかに分類するステップ(S200)と、
前記コンピュータ(200)が、前記複数のデータ要素(8)に含まれる前記第2サブ要素(8b)をクラスタリングすることにより、前記第2サブ要素(8b)を複数の空間領域のいずれかに分類するステップ(S300)と、
前記コンピュータ(200)が、前記複数の時間領域のうちの1つと前記複数の空間領域のうちの1つとの複数の組み合わせの各々について、前記複数のデータ要素(8)のうち当該組み合わせに属するデータ要素の度数を示す情報を出力するステップ(S400)と、を備える、情報処理方法。
(構成10)
コンピュータに情報処理方法を実行させるプログラムであって、
前記情報処理方法は、
互いに異なる時刻に対応する複数のデータ要素(8)を含む時系列データ(7)を取得するステップ(S100)を備え、前記複数のデータ要素(8)の各々は、対応する時刻を示す第1サブ要素(8a)と、前記対応する時刻における複数の変数の値を示す第2サブ要素(8b)とを含み、前記情報処理方法は、さらに、
前記複数のデータ要素(8)に含まれる前記第1サブ要素(8a)をクラスタリングすることにより、前記第1サブ要素(8a)を複数の時間領域のいずれかに分類するステップ(S200)と、
前記複数のデータ要素(8)に含まれる前記第2サブ要素(8b)をクラスタリングすることにより、前記第2サブ要素(8b)を複数の空間領域のいずれかに分類するステップ(S300)と、
前記複数の時間領域のうちの1つと前記複数の空間領域のうちの1つとの複数の組み合わせの各々について、前記複数のデータ要素(8)のうち当該組み合わせに属するデータ要素の度数を示す情報を出力するステップ(S400)と、を含む、プログラム。
本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 生産システム、2,4 フィールドバス、6 上位ネットワーク、7 時系列データ、8 データ要素、8a 第1サブ要素、8b 第2サブ要素、10 フィールド装置群、12 リモートI/O装置、14 リレー群、16,124 I/Oユニット、18 画像センサ、20 カメラ、22 サーボドライバ、24 サーボモータ、30 プレス機、31 ワーク、32 中間製品、33 ベース、34 支持台、35 押し込み板、36 駆動軸、37 モータ、100 制御装置、102,202 プロセッサ、104 チップセット、106,206 主記憶装置、108,208 二次記憶装置、110,214 上位ネットワークコントローラ、112,212 USBコントローラ、114 メモリカードインターフェイス、116 メモリカード、118,120 フィールドバスコントローラ、122 内部バスコントローラ、132 記憶領域、134 エクスポートモジュール、140 予測モデル、144 参照軌道、150 エンジン、154 ユーザプログラム、200 サポート装置、204 光学ドライブ、205 記録媒体、216 入力部、218 表示部、220 バス、222 開発プログラム、224 インターフェイスプログラム、226 解析プログラム、230 ユーザインターフェイス、232 スクリプトエンジン、234 設定ファイル、236 入出力管理モジュール、238 画面表示モジュール、240 グラフライブラリ、242 解析モジュール、244 解析ライブラリ、250 前処理部、251 取得部、252 第1分類部、253 第2分類部、254 出力部、255 受付部、256 ラベリング部、300 上位サーバ、400,400A 初動サポート画面、410 グラフ、420,430 度数分布図、440 カーソル、450 分布図、460 樹形図、500,504,506,508 ラベリング画面、510 ファイル入力欄、512 縦軸入力欄、514 横軸入力欄、516 入力欄、520 リスト、530 2次元散布図,560 時系列散布図、540 列ラベル入力欄、550 行ラベル入力欄、562 開始点選択ライン、564 終了点選択ライン、600 表示装置、2262 モデル生成モジュール、2264 前処理モジュール。

Claims (10)

  1. 情報処理装置であって、
    互いに異なる時刻に対応する複数のデータ要素を含む時系列データを取得する取得部を備え、前記複数のデータ要素の各々は、対応する時刻を示す第1サブ要素と、前記対応する時刻における複数の変数の値を示す第2サブ要素とを含み、前記情報処理装置は、さらに、
    前記複数のデータ要素に含まれる前記第1サブ要素に対してクラスタリングを行なうことにより、前記第1サブ要素を複数の時間領域のいずれかに分類する第1分類部と、
    前記複数のデータ要素に含まれる前記第2サブ要素に対してクラスタリングを行なうことにより、前記第2サブ要素を複数の空間領域のいずれかに分類する第2分類部と、
    前記複数の時間領域のうちの1つと前記複数の空間領域のうちの1つとの複数の組み合わせの各々について、前記複数のデータ要素のうち当該組み合わせに属するデータ要素の度数を示す第1情報を出力する出力部と、を備える、情報処理装置。
  2. 前記第1情報は、前記複数の時間領域を表す第1軸と、前記複数の空間領域を表す第2軸とを有するグラフを示し、
    前記グラフは、前記度数の分布を示す、請求項1に記載の情報処理装置。
  3. 前記グラフは2次元ヒートマップである、請求項2に記載の情報処理装置。
  4. 前記出力部は、
    前記複数のデータ要素のうち前記複数の時間領域の各々に属する前記第1サブ要素を含むデータ要素の度数分布図を示す第2情報と、
    前記複数のデータ要素のうち前記複数の空間領域の各々に属する前記第2サブ要素を含むデータ要素の度数分布図を示す第3情報と、をさらに出力する、請求項1から3のいずれか1項に記載の情報処理装置。
  5. 前記複数の組み合わせのうちの1以上の組み合わせの選択を受け付ける受付部をさらに備え、
    前記出力部は、
    前記複数の変数のうちの少なくとも1つの変数の時系列散布図を示す第4情報と、前記複数の変数のうちの少なくとも2つの変数に対する多次元散布図を示す第5情報とを出力し、
    前記時系列散布図および前記多次元散布図において、前記複数のデータ要素のうち前記1以上の組み合わせのいずれかに属するデータ要素に対応する点の表示形式を残りの点の表示形式と異ならせる、請求項1から3のいずれか1項に記載の情報処理装置。
  6. 前記複数の組み合わせのうちの1つの組み合わせの選択を受け付ける受付部をさらに備え、
    前記出力部は、前記第2分類部による前記1つの組み合わせの空間領域への前記第2サブ要素の分類における前記複数の変数の各々の寄与度を示す第6情報をさらに出力する、請求項1から3のいずれか1項に記載の情報処理装置。
  7. 前記出力部は、前記複数の時間領域の各々における、当該時間領域に属する前記第1サブ要素によって示される時刻の分布を示す第7情報をさらに出力する、請求項1から3のいずれか1項に記載の情報処理装置。
  8. 前記第2分類部は、前記複数のデータ要素に含まれる前記第2サブ要素に対して階層クラスタリングを行ない、
    前記出力部は、前記複数の空間領域の樹形図を示す第8情報をさらに出力する、請求項1から3のいずれか1項に記載の情報処理装置。
  9. コンピュータによって実行される情報処理方法であって、
    前記コンピュータが、互いに異なる時刻に対応する複数のデータ要素を含む時系列データを取得するステップを備え、前記複数のデータ要素の各々は、対応する時刻を示す第1サブ要素と、前記対応する時刻における複数の変数の値を示す第2サブ要素とを含み、前記情報処理方法は、さらに、
    前記コンピュータが、前記複数のデータ要素に含まれる前記第1サブ要素をクラスタリングすることにより、前記第1サブ要素を複数の時間領域のいずれかに分類するステップと、
    前記コンピュータが、前記複数のデータ要素に含まれる前記第2サブ要素をクラスタリングすることにより、前記第2サブ要素を複数の空間領域のいずれかに分類するステップと、
    前記コンピュータが、前記複数の時間領域のうちの1つと前記複数の空間領域のうちの1つとの複数の組み合わせの各々について、前記複数のデータ要素のうち当該組み合わせに属するデータ要素の度数を示す情報を出力するステップと、を備える、情報処理方法。
  10. コンピュータに情報処理方法を実行させるプログラムであって、
    前記情報処理方法は、
    互いに異なる時刻に対応する複数のデータ要素を含む時系列データを取得するステップを含み、前記複数のデータ要素の各々は、対応する時刻を示す第1サブ要素と、前記対応する時刻における複数の変数の値を示す第2サブ要素とを含み、前記情報処理方法は、さらに、
    前記複数のデータ要素に含まれる前記第1サブ要素をクラスタリングすることにより、前記第1サブ要素を複数の時間領域のいずれかに分類するステップと、
    前記複数のデータ要素に含まれる前記第2サブ要素をクラスタリングすることにより、前記第2サブ要素を複数の空間領域のいずれかに分類するステップと、
    前記複数の時間領域のうちの1つと前記複数の空間領域のうちの1つとの複数の組み合わせの各々について、前記複数のデータ要素のうち当該組み合わせに属するデータ要素の度数を示す情報を出力するステップと、を含む、プログラム。
JP2022167491A 2022-10-19 2022-10-19 情報処理装置、情報処理方法およびプログラム Pending JP2024060240A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022167491A JP2024060240A (ja) 2022-10-19 2022-10-19 情報処理装置、情報処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022167491A JP2024060240A (ja) 2022-10-19 2022-10-19 情報処理装置、情報処理方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2024060240A true JP2024060240A (ja) 2024-05-02

Family

ID=90828756

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022167491A Pending JP2024060240A (ja) 2022-10-19 2022-10-19 情報処理装置、情報処理方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2024060240A (ja)

Similar Documents

Publication Publication Date Title
JP6043348B2 (ja) 産業プロセスを監視する方法
JP6903976B2 (ja) 制御システム
JP2019520659A (ja) 時系列パターンモデルを用いて主要パフォーマンス指標(kpi)を監視するコンピュータシステム及び方法
WO2022030041A1 (ja) 予測システム、情報処理装置および情報処理プログラム
CN110262279A (zh) 控制系统以及控制方法
EP2791745B1 (en) A method of operating a process or machine
CN108693822A (zh) 控制装置、存储介质、控制系统及控制方法
JP2018151917A (ja) 制御装置
WO2021111936A1 (ja) 予測システム、情報処理装置および情報処理プログラム
JP7151312B2 (ja) 制御システム
JP2024060240A (ja) 情報処理装置、情報処理方法およびプログラム
JP7556306B2 (ja) 予測システム、情報処理装置および情報処理プログラム
JP2023151886A (ja) 情報処理装置および情報処理プログラム
WO2022176375A1 (ja) 予測システム、情報処理装置および情報処理プログラム
JP2023151755A (ja) 情報処理装置および情報処理プログラム
WO2022270056A1 (ja) 予測システム、情報処理装置および情報処理プログラム
JP2023151888A (ja) 予測システム、制御装置および制御プログラム
WO2022162957A1 (ja) 情報処理装置、制御システムおよびレポート出力方法
WO2023053511A1 (ja) 制御システム、情報処理方法および情報処理装置
WO2022181007A1 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
JP2023002962A (ja) 情報処理装置、モデル生成プログラムおよびモデル生成方法
JP2023006304A (ja) 制御システム、モデル生成方法およびモデル生成プログラム
JP2023151722A (ja) 情報処理システム、情報処理方法および情報処理装置
JP2023111403A (ja) 情報処理システム、情報処理方法および情報処理プログラム