(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】情報処理装置、パラメータ算出方法及びパラメータ算出プログラム
(51)【国際特許分類】
G05B 23/02 20060101AFI20241008BHJP
【FI】
G05B23/02 F
(21)【出願番号】P 2021042568
(22)【出願日】2021-03-16
【審査請求日】2023-09-08
(73)【特許権者】
【識別番号】000006507
【氏名又は名称】横河電機株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】西野 宏亮
【審査官】牧 初
(56)【参考文献】
【文献】特開2005-285005(JP,A)
【文献】特開2017-091032(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/00-23/02
G05B 17/00-17/02
(57)【特許請求の範囲】
【請求項1】
プロセスデータに対する非定常状態の期間の指定を受け付ける受付部と、
前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する算出部と、
を有し、
前記算出部は、前記定常状態判定により定常状態または非定常状態のラベルが判定される時点から過去の所定期間のうち、前半の区間および後半の区間の間で平均値の差が有意であるか否かを判定する判定式の定数に組み込まれたパラメータを算出する、
ことを特徴とす
る情報処理装置。
【請求項2】
プロセスデータに対する非定常状態の期間の指定を受け付ける受付部と、
前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する算出部と、
を有し、
前記算出部は、前記定常状態判定により定常状態または非定常状態のラベルが判定される時点から過去の所定期間のうち、前半の区間および後半の区間の間で標準偏差の比が有意に異なるか否かを判定する判定式の定数に組み込まれたパラメータを算出する、
ことを特徴とす
る情報処理装置。
【請求項3】
プロセスデータに対する非定常状態の期間の指定を受け付ける受付部と、
前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する算出部と、
を有し、
前記算出部は、前記受付部により指定が受け付けられた非定常期間と、前記定常状態判定により判定される非定常期間との両者の一致度が最大となる、あるいは両者の誤差が最小となるパラメータを算出する、
ことを特徴とす
る情報処理装置。
【請求項4】
前記誤差は、前記非定常状態の期間の指定により定まるラベルが非定常状態である一方で前記定常状態判定により判定されたラベルが定常状態である誤判定の回数と、前記非定常状態の期間の指定により定まるラベルが定常状態である一方で前記定常状態判定により判定されたラベルが非定常状態である判定漏れの回数とを含む、
ことを特徴とする請求項
3に記載の情報処理装置。
【請求項5】
プロセスデータに対する非定常状態の期間の指定を受け付け、
前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する、
処理をコンピュータが実行
し、
前記算出する処理は、前記定常状態判定により定常状態または非定常状態のラベルが判定される時点から過去の所定期間のうち、前半の区間および後半の区間の間で平均値の差が有意であるか否かを判定する判定式の定数に組み込まれたパラメータを算出する処理を含む、
ことを特徴とするパラメータ算出方法。
【請求項6】
プロセスデータに対する非定常状態の期間の指定を受け付け、
前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する、
処理をコンピュータに実行させ
、
前記算出する処理は、前記定常状態判定により定常状態または非定常状態のラベルが判定される時点から過去の所定期間のうち、前半の区間および後半の区間の間で平均値の差が有意であるか否かを判定する判定式の定数に組み込まれたパラメータを算出する処理を含む、
ことを特徴とするパラメータ算出プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、パラメータ算出方法及びパラメータ算出プログラムに関する。
【背景技術】
【0002】
リアルタイムでプラントの操業を最適化する技術として、RTO(Real Time Optimizer)が知られている(例えば、特許文献1参照)。RTOは、プロセス制御システムやプラント情報管理システム(PIMS:Plant Information Management System)とオンラインで接続してデータを取り込み、厳密モデルを用いたシミュレーションでケーススタディを行うことによりモデルを構築する。このようにシミュレーションで構築されたモデルと運転条件に基づいて、RTOは、利益が最大となる最適値を算出して高度制御システムにオンラインで反映する。
【0003】
ここで、上記シミュレーションには、プロセスの運転条件を変更している最中でない定常状態であることを前提に機能するものが含まれる。このため、シミュレーションの精度低下を抑制する側面から、シミュレーションの実行時には、プロセスが定常状態であるか否かの判定が実行される。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の定常状態判定に用いるパラメータの設定は、経験、あるいは専門知識を有するエンジニアによるトライ&エラーに委ねられている現状がある。このような現状、パラメータの設定には、エンジニアによるトライ&エラーという対価が求められるので、エンジニアの工数が増大してしまう一面がある。
【0006】
1つの側面では、本発明は、定常状態判定に用いるパラメータの設定に関する工数を削減することを目的とする。
【課題を解決するための手段】
【0007】
1つの側面にかかる情報処理装置は、プロセスデータに対する非定常状態の期間の指定を受け付ける受付部と、前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する算出部と、を有する。
【0008】
1つの側面にかかるパラメータ算出方法では、プロセスデータに対する非定常状態の期間の指定を受け付け、前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する、処理をコンピュータが実行する。
【0009】
1つの側面にかかるパラメータ算出プログラムは、プロセスデータに対する非定常状態の期間の指定を受け付け、前記指定を受け付けた非定常状態の期間がラベル付けされた前記プロセスデータに基づいて、プロセスシミュレータによるシミュレーションを実行するか否かを制御する定常状態判定に用いるパラメータを算出する、処理をコンピュータに実行させる。
【発明の効果】
【0010】
定常状態判定に用いるパラメータの設定に関する工数を削減できる。
【図面の簡単な説明】
【0011】
【
図1】実施形態に係るシステム構成例を示す図である。
【
図4】情報処理装置の機能構成例を示すブロック図である。
【
図6】定常状態の誤判定および判定漏れの回数の算出例を示す図である。
【
図7】パラメータ算出処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、添付図面を参照して本願に係る情報処理装置、パラメータ算出方法及びパラメータ算出プログラムの実施形態について説明する。各実施形態には、あくまで1つの例や側面を示すに過ぎず、このような例示により数値や機能の範囲、利用シーンなどは限定されない。そして、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0013】
<システム構成>
図1は、実施形態に係るシステム構成例を示す図である。
図1に示すプラント管理システム1は、プラントの運転を管理するシステムである。ここで言う「プラント」には、工場施設、機械施設、生産施設、発電施設、貯蔵施設、石油、天然ガス等を採掘する井戸元における施設などが含まれ得る。
【0014】
図1に示すように、プラント管理システム1には、プロセス制御システム2と、OPC(Open Platform Communications)サーバ3と、DB(database)サーバ5、高度制御装置6と、運転支援装置7と、情報処理装置10とが含まれ得る。
【0015】
プロセス制御システム2は、プラントにおける生産工程、いわゆるプロセスを制御するシステムである。あくまで一例として、プロセス制御システム2は、DCS(Distributed Control Systems)やPLC(Programmable Logic Controller)として構築され得る。例えば、DCSを例に挙げれば、プラント等のフィールドには、センサなどの測定機器やアクチュエータなどの操作機器などがフィールド機器(不図示)として設置される。このようなフィールド機器を制御するコントローラがプロセスの制御単位である制御ループ、例えば測定、制御演算および操作などのループごとに分散して配置される。
【0016】
OPCサーバ3は、ネットワークNW1及びネットワークNW2の間の通信を中継するゲートウェイ装置の一例である。これらネットワークNW1及びネットワークNW2のうち、ネットワークNW1には、専用に構築された制御バスを採用することができる。このようなネットワークNW1で伝送されるデータには、リアルタイム性および信頼性が求められる側面がある。このような側面から、ネットワークNW1およびOPCサーバ3は、冗長化することができる。また、ネットワークNW2には、LAN(Local Area Network)等を採用することができる。
【0017】
1つの側面として、OPCサーバ3は、プロセスデータ通信の標準規格であるOPCやOPC UA(OPC Unified Architecture)などの規格に対応するOPCインタフェイスを提供する。このようなOPCインタフェイスを介して、プロセス制御システム2と、DBサーバ5、高度制御装置6および運転支援装置7との間におけるデータ交換が実現される。
【0018】
DBサーバ5は、プロセス制御システム2から収集されるデータを管理するサーバである。例えば、DBサーバ5では、データベース管理システムの一例として、プラント情報管理システム、いわゆるPIMSが実行される。このようなPIMSでは、フィールド機器などからプロセスデータなどをリアルタイムで収集する機能、プロセスデータが時系列に収集された履歴をヒストリアンデータとして保存する機能、収集されたデータやヒストリアンデータを提供する機能などが実現される。
【0019】
高度制御装置6は、プロセスの高度制御(APC:Advanced Process Control)を実行する制御装置の一例である。1つの側面として、高度制御装置6は、APCの機能を実現するソフトウェアを実行することにより、RTOのプラットフォームとして機能する。
【0020】
運転支援装置7は、プラントの運転を支援する装置の一例である。あくまで一例として、運転支援装置7は、プロセスシミュレータを含むRTOを実行する。このようなRTOでは、プロセスにおいて最適な運転条件を自動的に計算し、プラントの運転に反映させる機能が実現される。
【0021】
情報処理装置10は、プロセス制御システム2やDBサーバ5、高度制御装置6、運転支援装置7などとの間のHMI(Human Machine Interface)として機能するコンピュータの一例である。1つの側面として、情報処理装置10は、プラント管理システム1のエンジニアリングを行うエンジニアを始め、その管理者を含む関係者全般により使用され得る。なお、
図1には、あくまで一例として、情報処理装置10と、DBサーバ5、高度制御装置6及び運転支援装置7とがネットワークNW2を介して接続される例を挙げるが、インターネットなどを介して両者が接続されることとしてもよい。
【0022】
<RTO>
次に、プロセスシミュレータを含むRTOの動作例について説明する。
図2は、RTOの動作例を示す図である。
図2には、RTO7Aが有するゲインジェネレータ7A1およびオプティマイザ7A2の2つの機能と共に、RTO7Aと連携するプロセス制御システム2、DBサーバ5および高度制御装置6の関連機能がブロックとして模式化されている。さらに、
図2には、プロセス制御システム2の関連機能の一例としてDCS2Aが例示され、DBサーバ5の関連機能の一例としてPIMS5Aが例示され、高度制御装置6の関連機能としてAPC6Aが例示されている。
【0023】
図2に示すように、RTO7Aは、ゲインジェネレータ7A1およびオプティマイザ7A2を有する。ゲインジェネレータ7A1は、DCS2AまたはPIMS5Aからオンラインでプロセスデータを取得する。そして、ゲインジェネレータ7A1は、プロセスデータに基づいてプラントの挙動を模擬するシミュレーションを運転条件が異なる複数の事例ごとに実行する。このシミュレーション結果として、事例ごとにシミュレートされたプロセスデータの予測値が制御変数CV(Control Variable)として得られると共に当該制御変数CVを目的関数へ入力することにより目的関数値の一例として利益が出力される。このように、ゲインジェネレータ7A1は、事例ごとにシミュレーションを実行するケーススタディにより、制御変数CVの変動と利益の変動との比、すなわちゲインを計算する。その後、オプティマイザ7A2は、ゲインジェネレータ7A1により計算されたゲインを用いて、利益が最適値、例えば最大値となるCVターゲットを計算する。
【0024】
このようにオプティマイザ7A2により計算されたCVターゲットは、APC6Aへ出力される。そして、APC6Aは、オプティマイザ7A2により出力されたCVターゲットからプロセスへの入力変数に対応する操作変数MV(Manipulated Variable)、あるいはDCS2Aの設定値SV(Setting Variable)を計算した上でDCS2Aへ出力する。
【0025】
ここで、上記のゲインジェネレータ7A1は、プロセスの運転条件を変更している最中でない定常状態であることを前提としてシミュレーションを実行するものである。このため、シミュレーションの精度低下を抑制する側面から、シミュレーションの実行時には、プロセスが定常状態であるか否かの定常状態判定が実行される。
【0026】
<定常状態判定>
あくまで一例として、RTOの定常状態判定は、ゲインジェネレータ7A1のシーケンスの一部として実行することができる。
図3は、プロセスデータの一例を示す図である。
図3には、あくまで一例として、オンラインで1分おきにプロセス値を取得するRTOが定常状態判定の時点から遡って過去の60分間のプロセス値を含むプロセスデータを定常状態判定に用いる例を挙げる。さらに、
図3には、定常状態判定の時点を0とする経過時間を横軸とし、流量や温度、圧力などのプロセス値を縦軸とするグラフ上に、過去60分間のプロセスデータに含まれるプロセス値の各々がマーク(黒の四角)でプロットされている。
【0027】
図3に示すように、定常状態判定では、プロセスデータが前半および後半の2つに分割される。ここで言う「前半」とは、60分前から30分前までの区間を指す一方で、「後半」とは、30分前から現在、すなわち定常状態判定が実行される時点までの区間を指す。このように分割された前半および後半の区間ごとに当該区間におけるプロセス値の平均値および標準偏差が算出される。これにより、前半の平均値M1、前半の標準偏差σ1、後半の平均値M2および後半の標準偏差σ2が得られる。なお、「M1」および「M2」のオーバーライン、いわゆるバーの表記は省略する。
【0028】
これら前半の平均値M1、前半の標準偏差σ1、後半の平均値M2および後半の標準偏差σ2に基づいて、RTOは、定常状態判定を実行する。あくまで一例として、RTOは、下記の式(1)に示す定常状態判定式1および下記の式(2)に示す定常状態判定式2を満たすか否かにより、プロセスが定常状態であるか否かを判定する。例えば、定常状態判定式1および定常状態判定式2の両方の不等式を満たす場合、定常状態と識別される。なお、定常状態判定式1および定常状態判定式2は、あくまで一例として、ウェルチのt検定などの統計学の検定に従って定式化できる。
【0029】
【0030】
上記の定常状態判定式1では、前半および後半の間で平均値の差が有意に明らかであるか否かが識別される。1つの側面として、定常状態判定式1では、Toleranceの設定値に応じて定常状態が厳しく判定されるか、あるいは緩く判定されるかが変わる。例えば、Toleranceの値が小さくなるに連れて判定が厳しく、言い換えれば定常状態と判定されにくくなる。また、Toleranceの値が大きくなるに連れて判定が緩く、言い換えれば定常状態と判定されやすくなる。なお、上記の式(1)における「ε」は、定数であり、例えば、サンプル数、本例では「30」に依存して決定される。また、上記の式(1)における分母は、無次元に正規化する側面から定式化されている。
【0031】
上記の定常状態判定式2では、前半および後半の間で標準偏差の比が大きく異なるか否か、すなわち後半が前半に比べて収束に向かっているか否かが識別される。1つの側面として、定常状態判定式2では、αの設定値に応じて定常状態が厳しく判定されるか、あるいは緩く判定されるかが変わる。例えば、αの値が小さくなるに連れて判定が厳しく、言い換えれば定常状態と判定されにくくなる。また、αの値が大きくなるに連れて判定が緩く、言い換えれば定常状態と判定されやすくなる。なお、上記の式(2)における「δ」は、定数であり、例えば、サンプル数、本例では「30」に依存して決定される。
【0032】
<課題の一側面>
これらTolerance及びαなどのパラメータの設定は、定常状態判定の精度に大影響を与える。このため、パラメータが適切に設定されない場合、次のような誤判定や判定漏れが生じる。
【0033】
例えば、非定常状態が定常状態と誤判定される場合、非定常状態時にシミュレーションが実行される。このため、ゲインジェネレータ7A1が非現実的なゲインを計算してオプティマイザ7A2がCVターゲットをAPC6Aに適用してしまうか、あるいはゲインジェネレータ7A1がゲインをそもそも計算できない事態が生じる。この場合、正しいゲインで計算できていないCVターゲットに基づいてプロセス制御が行われるので、プラントで得られる利益が真の最適な運転状態と比べて低下する場合がある。また、定常状態時に非定常状態と判定される判定漏れの場合、ゲインジェネレータ7A1によりゲインを更新すべきにもかかわらず、ゲインが更新されない事態が生じる。この場合、プラントで得られるべき利益が逸失してしまう場合がある。
【0034】
このようにパラメータを適切に設定する重要性から、パラメータの設定は、経験、あるいは専門知識を有するエンジニアによるトライ&エラーに委ねられている現状がある。このような現状、パラメータの設定には、エンジニアによるトライ&エラーという対価が求められるので、エンジニアの工数が増大してしまう一面がある。
【0035】
そこで、本実施形態では、非定常状態の期間が指定されたプロセスデータに基づいて定常状態の判定に用いるパラメータを算出するパラメータ算出機能10Aを有する情報処理装置10を提供する。
【0036】
<機能構成>
図4は、情報処理装置10の機能構成例を示すブロック図である。
図4には、情報処理装置10が有する機能に対応するブロックが模式化されている。
図4に示すように、情報処理装置10は、入力部11と、表示部12と、通信インタフェイス部13と、記憶部14と、制御部15とを有する。なお、
図4には、上記のパラメータ算出機能10Aに関連する機能部が抜粋されているに過ぎず、図示以外にも既存のコンピュータがデフォルトまたはオプションで装備する機能部が情報処理装置10に備わることとしてもよい。
【0037】
入力部11は、各種の操作を入力する機能部である。あくまで一例として、情報処理装置10がデスクトップ型またはラップトップ型のPCにより実現される場合、キーボードやマウスなどの汎用の周辺機器により入力部11が実現され得る。
【0038】
表示部12は、各種の情報を表示する機能部である。あくまで一例として、表示部12は、液晶ディスプレイや有機EL(Electro Luminescence)ディスプレイなどにより実現され得る。なお、表示部12は、入力部11と一体化することにより、タッチパネルとして実現されることとしてもよい。
【0039】
通信インタフェイス部13は、情報処理装置10と他の装置との間の通信を制御する通信制御部の一例に対応する。あくまで一例として、通信インタフェイス部13は、LANカードなどのネットワークインタフェイスカードにより実現され得る。例えば、通信インタフェイス部13は、DCS2AやPIMS5Aからプロセスデータを受け付けたり、また、パラメータの算出結果をRTO7Aへ出力したりする。
【0040】
記憶部14は、各種のデータを記憶する機能部である。あくまで一例として、記憶部14は、ストレージ、例えば内部、外部または補助のストレージにより実現される。例えば、記憶部14には、制御部15による処理実行の開始時に参照するデータ、処理実行の過程で得られるデータや処理実行の結果として得られるデータなど、情報処理装置10が実行する処理で発生する各種データが記憶され得る。
【0041】
制御部15は、情報処理装置10の全体制御を行う処理部である。例えば、制御部15は、ハードウェアプロセッサにより実現される。
図1に示すように、制御部15は、取得部15Aと、受付部15Bと、算出部15Cと、設定部15Dとを有する。なお、各機能部は、プロセッサが実行するプロセスなどにより実現される以外にも、ハードワイヤードロジックにより実現されることを妨げない。
【0042】
取得部15Aは、プロセスデータを取得する処理部である。あくまで一例として、取得部15Aは、パラメータ算出のリクエストを入力部11を介して受け付けた場合、DCS2AやPIMS5Aからプロセスデータを取得する。ここで、取得部15Aがプロセスデータを取得する情報ソースは、任意の情報ソースであってよく、ネットワークNW2を介する通信に限定されない。例えば、取得部15Aは、情報処理装置10が有するストレージ、あるいは情報処理装置10に着脱可能なリムーバブルメディア、例えばメモリカードやUSB(Universal Serial Bus)メモリなどからプロセスデータを取得することとしてもよい。
【0043】
受付部15Bは、プロセスデータに対する非定常状態の期間の指定を受け付ける処理部である。以下、非定常状態の期間のことを指して「非定常期間」と記載する場合がある。あくまで一例として、受付部15Bは、取得部15Aにより取得されたプロセスデータが表示されたGUI(Graphical User Interface)を介して非定常期間の指定を受け付けることができる。
【0044】
図5は、パラメータ設定画面の一例を示す図である。
図5には、非定常期間の指定の受付前の状態と、非定常期間の指定の受付後の状態とのパラメータ設定画面200が上下に並べて示されている。
図5に示すパラメータ設定画面200には、あくまで一例として、特定の期間、例えば1日間のプロセス値の時系列データがプロセスデータ210として表示されている。
【0045】
このようなプロセスデータ210には、入力部11を介して各種のGUI操作を実行できる。例えば、入力部11がポインティングデバイスにより実現される場合、ドラッグ&ドロップの操作により、非定常期間の指定を受け付けることができる。すなわち、プロセスデータ210上の非定常期間の開始時刻に対応する位置にポインタが合わされた状態で押下操作を受け付け、そのままの状態でポインタを移動させ、非定常期間の終了時刻に対応する位置で押下操作を終了する。あくまで一例として、
図5に示す非定常期間p1~非定常期間p4の4つの非定常期間の指定を受け付けることができる。このように非定常期間の指定が行われた状態で決定ボタン220の操作を受け付けた場合、非定常期間p1~非定常期間p4の指定が確定される。一方、キャンセルボタン230の操作を受け付けた場合、非定常期間p1~非定常期間p4の指定がキャンセルされる。なお、ここでは、非定常期間の開始時刻の位置でドラッグ操作を開始し、非定常期間の終了時刻の位置でドロップ操作を行う例を挙げたが、ドラッグ操作およびドロップ操作が行われる位置は逆であってもよい。
【0046】
ここで、プロセスデータ210の視認性を高める側面から、プロセスデータ210の拡大または縮小を実行させることとしてもよい。例えば、プロセスデータ210におけるプロセス値の時間間隔が1分おきである場合、1分間に対応する目盛りが視認できるスケールと、プロセスデータ210の全体が俯瞰できるスケールとの間でプロセスデータ210の表示を切り替えることもできる。この他、マウスホイールの回転方向によりプロセスデータ210の拡大または縮小を指定させ、マウスホイールの回転量に応じてプロセスデータ210の拡大率または縮小率を指定させることとしてもよい。
【0047】
このように、受付部15Bは、プロセスデータに定常期間および非定常期間のラベルを付与する際に非定常期間の指定を受け付ける。これにより、非定常期間よりもピリオドが長い定常期間の代わりに定常期間よりもピリオドが短い非定常期間の指定により定常期間および非定常期間のラベル付けを実現できるので、期間指定の操作性を向上させることができる。
【0048】
なお、ここでは、あくまで一例として、受付部15Bが非定常期間の指定をGUIを介して受け付ける例を挙げたが、これに限定されない。例えば、受付部15Bは、CLI(Command Line Interface)を介して非定常期間の指定を受け付けることとしてもよい。
【0049】
算出部15Cは、定常状態判定に用いるパラメータを算出する処理部である。あくまで一例として、算出部15Cは、受付部15Bにより指定が受け付けられた非定常期間と、定常状態判定式1及び定常状態判定式2により判定される非定常期間との両者の一致度が最大となる、あるいは両者の誤差が最小となるパラメータを算出する。このようなパラメータは、最適化問題に定式化することにより算出することができる。
【0050】
以下、あくまで一例として、受付部15Bによりエンジニア等の指定が受け付けられた非定常期間と、定常状態判定式1及び定常状態判定式2により判定される非定常期間との誤差を変数とする目的関数を最小化する最小化問題に定式化する例を挙げる。さらに、以下では、前者の非定常期間と後者の非定常期間との間で両者を区別する側面から、前者の非定常期間のことを「エンジニア指定の非定常期間」と識別し、後者の非定常期間のことを「判定式で判定された非定常期間」と識別する場合がある。
【0051】
例えば、下記の式(3)の目的関数を最小化する最小化問題に定式化できる。下記の「誤A」は、定常状態の誤判定の数を指す。ここで言う「誤判定」とは、エンジニア指定のラベルが「非定常状態」である一方で、判定式で判定されたラベルが「定常状態」である事象、いわゆるフォールスポジティブを指す。また、下記の「誤B」は、定常状態の判定漏れの数を指す。ここで言う「判定漏れ」とは、エンジニア指定のラベルが「定常状態」である一方で、判定式で判定されたラベルが「非定常状態」である事象、いわゆるフォールスネガティブを指す。さらに、下記の「係数1」および下記の「係数2」は、いずれも定数を指す。これら係数1および係数2は、定常状態の「誤判定」および「判定漏れ」のいずれを優先するかを定める重みとして機能させることができる。例えば、誤判定の回数または判定漏れの回数に大きい重みを付与するほど、大きい重みが付与された方の優先度をより高めることができる。
【0052】
目的関数:(係数1)×(誤Aの数)+(係数2)×(誤Bの数)・・・(3)
【0053】
ここで、上記の「誤A」および上記の「誤B」などの誤差は、定常状態判定式1のパラメータTolerance及び定常状態判定式2のパラメータαにより定まる。これらパラメータTolerance及びαには、0よりも大きい正の数という制約条件(Tolerance>0,α>0)が与えられる。
【0054】
このような定式化の下、算出部15Cは、次のような処理を実行する。すなわち、算出部15Cは、パラメータTolerance及びαに初期値を設定する。その上で、算出部15Cは、パラメータTolerance及びαの更新が所定の反復回数kに渡って反復されるか、あるいはパラメータTolerance及びαの更新量が閾値未満となるまで次のような処理を実行する。例えば、算出部15Cは、取得部15Aにより取得されたプロセスデータの定常状態判定を定常状態判定式1及び定常状態判定式2にしたがって実行する。そして、算出部15Cは、定常状態判定式1及び定常状態判定式2により判定された非定常期間と、受付部15Bにより指定を受け付けた非定常期間とを比較することにより、定常状態の誤判定(誤A)および判定漏れ(誤B)の回数を算出する。
【0055】
図6は、定常状態の誤判定および判定漏れの回数の算出例を示す図である。
図6には、エンジニア指定の非定常期間p1~p4が重畳表示されたプロセスデータ300Aと、判定式で判定された非定常期間P1~P4が重畳表示されたプロセスデータ300Bとが示されている。
図6に示すように、プロセスデータ300Aおよびプロセスデータ300Bは、プロセス値の時間波形として表示されている。これらを「定常状態」または「非定常状態」のラベルの配列に模式化すると、次の通りになる。すなわち、プロセスデータ300Aは、エンジニア指定のラベルの配列310Aとして模式化できる一方で、プロセスデータ300Bは、判定式で判定されたラベルの配列310Bとして模式化できる。ラベルの配列310Aおよびラベルの配列310Bを比較することにより、定常状態の誤判定(誤A)および判定漏れ(誤B)の回数を算出できる。例えば、ラベルの配列310Aおよびラベルの配列310Bが上下に並べられたテーブル310でラベルが列方向に照合される。このような照合結果を各時間における正解、誤Aまたは誤Bの照合結果の配列320として模式的に示す。
図6に示す例で言えば、エンジニア指定のラベルが「非定常状態」である一方で、判定式で判定されたラベルが「定常状態」である誤判定は、時間t3で観測される。さらに、エンジニア指定のラベルが「定常状態」である一方で、判定式で判定されたラベルが「非定常状態」である判定漏れは、時間t9で観測される。よって、定常状態の誤判定(誤A)の回数は「1」と算出されると共に定常状態の判定漏れ(誤B)の回数も「1」と算出される。
【0056】
その上で、算出部15Cは、誤判定(誤A)の回数および判定漏れ(誤B)の回数に基づいてパラメータTolerance及びαを更新する。これらパラメータTolerance及びαは、あくまで一例として、ニュートン法や勾配法などの更新式にしたがって更新することができる。その後、パラメータTolerance及びαの更新が所定の反復回数kに渡って反復されるか、あるいはパラメータTolerance及びαの更新量が閾値未満となってパラメータTolerance及びαが収束するまで、パラメータTolerance及びαの更新が反復される。これにより、パラメータTolerance及びαの自動算出を実現できる。
【0057】
設定部15Dは、パラメータを設定する処理部である。あくまで一例として、設定部15Dは、算出部15Cにより算出されたパラメータTolerance及びαをRTO7Aのゲインジェネレータ7A1に設定することができる。例えば、設定部15Dは、算出部15Cにより算出されたパラメータTolerance及びαが記述されたコンフィグファイルをネットワークNW2を介して送信する。また、設定部15Dは、コンフィグファイルに記述された設定を算出部15Cにより算出されたパラメータTolerance及びαに更新するコマンドをネットワークNW2を介して送信することもできる。なお、ここでは、パラメータTolerance及びαが自動的に設定される例を挙げたが、これはあくまで一例に過ぎず、パラメータTolerance及びαを手動で設定させることとしてもよい。この際、設定部15Dは、パラメータTolerance及びαを表示部12に表示させることもできる。
【0058】
<処理の流れ>
図7は、パラメータ算出処理の手順を示すフローチャートである。この処理は、あくまで一例として、パラメータ算出のリクエストを受け付けた場合に起動される。
図7に示すように、取得部15Aは、DCS2AやPIMS5Aからプロセスデータを取得する(ステップS101)。そして、受付部15Bは、ステップS101で取得されたプロセスデータに対する非定常状態の期間の指定を受け付ける(ステップS102)。続いて、算出部15Cは、パラメータTolerance及びαに初期値を設定する(ステップS103)。
【0059】
その後、算出部15Cは、パラメータTolerance及びαの更新が所定の反復回数kに渡って反復されるか、あるいはパラメータTolerance及びαの更新量が閾値未満となるまで、ステップS104~ステップS106の処理を繰り返すループ処理1を開始する。
【0060】
すなわち、算出部15Cは、ステップS101で取得されたプロセスデータの定常状態判定を定常状態判定式1及び定常状態判定式2にしたがって実行する(ステップS104)。
【0061】
そして、算出部15Cは、定常状態判定式1及び定常状態判定式2により判定された非定常期間と、ステップS101で指定を受け付けた非定常期間とを比較して、定常状態の誤判定(誤A)および判定漏れ(誤B)の回数を算出する(ステップS105)。
【0062】
その上で、算出部15Cは、ステップS105で算出された誤判定(誤A)の回数および判定漏れ(誤B)の回数に基づいてパラメータTolerance及びαを更新する(ステップS106)。
【0063】
その後、パラメータTolerance及びαの更新が所定の反復回数kに渡って反復されるか、あるいはパラメータTolerance及びαの更新量が閾値未満となるまで、パラメータTolerance及びαの更新が反復されることで、ループ処理1が終了する。
【0064】
そして、設定部15Dは、算出部15Cにより算出されたパラメータTolerance及びαをRTO7Aのゲインジェネレータ7A1に設定し(ステップS107)、処理を終了する。
【0065】
上述してきたように、本実施形態にかかる情報処理装置10は、非定常状態の期間が指定されたプロセスデータに基づいて定常状態の判定に用いるパラメータを算出するパラメータ算出機能10Aを有する。このようなパラメータ算出機能10Aにより、パラメータ算出の自動化が実現される。したがって、本実施形態にかかる情報処理装置10によれば、定常状態判定に用いるパラメータの設定に関する工数を削減できる。
【0066】
<応用例>
上記の実施形態は一例を示したものであり、種々の応用が可能である。
【0067】
(1)確認表示
例えば、上記の実施形態では、算出部15Cにより算出されたパラメータが設定部15DによりRTO7Aに設定される例を挙げたが、設定の前にパラメータやその定常状態判定の結果を確認表示することもできる。あくまで一例として、情報処理装置10は、取得部15Aにより取得されたプロセスデータの定常状態判定を算出部15Cにより算出されたパラメータに基づいて実行する。その上で、情報処理装置10は、定常状態判定式1及び定常状態判定式2により判定された非定常期間を取得部15Aにより取得されたプロセスデータに重畳して表示させることができる。この際、情報処理装置10は、リファレンスとして、エンジニア指定の非定常期間が重畳されたプロセスデータをさらに表示させることもできる。このとき、情報処理装置10は、定常状態判定式1及び定常状態判定式2により定常期間または非定常期間が判定されたラベルと、エンジニア指定の定常期間または非定常期間のラベルが一致しないラベルの不一致期間を強調表示することもできる。さらに、情報処理装置10は、上記のラベルの不一致期間のうち誤判定の時刻と判定漏れの時刻とを区別して表示したり、誤判定や判定漏れの頻度、例えば回数や割合などを表示したりすることもできる。
【0068】
(2)プロセスデータの追加
この他、情報処理装置10は、算出部15Cによるパラメータの算出後、パラメータの算出に用いられたプロセスデータとは異なる他のプロセスデータの定常状態判定を算出部15Cにより算出されたパラメータに基づいて実行することもできる。以下、前者のプロセスデータと、後者のプロセスデータとを区別する側面から、前者のプロセスデータを「第1のプロセスデータ」と識別し、後者のプロセスデータを「第2のプロセスデータ」と識別する場合がある。その上で、情報処理装置10は、算出部15Cにより算出されたパラメータに基づいて判定された非定常期間を第2のプロセスデータに重畳して表示させることができる。この際、情報処理装置10は、第2のプロセスデータに対する非定常期間の指定、例えば判定結果の編集や非定常期間のユーザ指定などを受け付けることもできる。このように第2のプロセスデータに対する非定常期間の指定を受け付けた場合、情報処理装置10は、次のような処理を実行できる。すなわち、情報処理装置10は、第1のプロセスデータで指定された非定常期間および第2のプロセスデータで指定された非定常期間と、定常状態判定式1及び定常状態判定式2で判定される非定常期間との誤差を最小化するパラメータを再算出することができる。なお、第1のプロセスデータおよび第2のプロセスデータの数は、いずれも複数であってよい。
【0069】
(3)プロセスデータのフィルタリング
また、情報処理装置10は、第1のプロセスデータおよび第2のプロセスデータをPIMS5Aから取得する際、PIMS5Aに保存されたヒストリアンデータのうち所定の条件を満たすプロセスデータを抽出または除外してから取得することができる。例えば、パラメータ算出に用いるプロセスデータに含まれる非定常期間の数が十分でない場合、ゲインジェネレータ7A1への適用時に未知の非定常状態が現れる可能性が高まるので、定常状態判定の精度低下の一因となり得る。このような側面から、情報処理装置10は、PIMS5Aに保存されたヒストリアンデータのうちプロセスの運転条件が変更された頻度が閾値以上であるプロセスデータを第1のプロセスデータや第2のプロセスデータとして抽出することもできる。これとは逆に、情報処理装置10は、プロセスの運転条件が変更された頻度が閾値未満であるプロセスデータを除外することもできる。この他、情報処理装置10は、PIMS5Aに保存されたヒストリアンデータのうちプロセス値のダイナミックレンジが閾値以上であるプロセスデータを第1のプロセスデータや第2のプロセスデータとして抽出することもできる。
【0070】
<適用例>
上記の実施形態は一例を示したものであり、種々の適用が可能である。
【0071】
(1)定常状態判定式
上記の実施形態では、定常状態判定式1および定常状態判定式2を定常状態判定に用いる例を挙げたが、必ずしも定常状態判定式1および定常状態判定式2の2つを用いずともよい。例えば、定常状態判定式1および定常状態判定式2のうちいずれか1つのみを定常状態判定に用いることもできる。また、定常状態判定式1および定常状態判定式2の判定基準、例えば判定式を定常状態判定に用いることもできる。
【0072】
(2)パラメータ算出機能の実行主体
上記の実施形態では、パラメータ算出機能10Aが情報処理装置10に搭載される例を挙げたが、パラメータ算出機能10Aの実行主体は情報処理装置10に限らない。あくまで一例として、パラメータ算出機能10Aは、ゲインジェネレータ7A1の一機能として実現されてもよいし、PIMS5Aの一機能として実現されてもよい。
【0073】
<システム>
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0074】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0075】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPU(Central Processing Unit)および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0076】
<ハードウェア>
次に、情報処理装置10のハードウェア構成例を説明する。
図8は、ハードウェア構成例を説明する図である。
図8に示すように、情報処理装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、
図8に示した各部は、バス等で相互に接続される。
【0077】
通信装置10aは、ネットワークインタフェイスカードなどであり、他のサーバとの通信を行う。HDD10bは、
図4に示した機能を動作させるプログラムやDBを記憶する。
【0078】
プロセッサ10dは、
図4に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、
図4等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、情報処理装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、取得部15A、受付部15B、算出部15Cおよび設定部15D等と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、取得部15A、受付部15B、算出部15Cおよび設定部15D等と同様の処理を実行するプロセスを実行する。
【0079】
このように、情報処理装置10は、プログラムを読み出して実行することでパラメータ算出方法を実行するコンピュータとして動作する。また、情報処理装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記の実施形態と同様の機能を実現することもできる。なお、この他の実施形態でいうプログラムは、情報処理装置10によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【0080】
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【符号の説明】
【0081】
1 プラント管理システム
2 プロセス制御システム
2A DCS
3 OPCサーバ
5 DBサーバ
5A PIMS
6 高度制御装置
6A APC
7 運転支援装置
7A RTO
7A1 ゲインジェネレータ
7A2 オプティマイザ
10 情報処理装置
11 入力部
12 表示部
13 通信インタフェイス部
14 記憶部
15 制御部
15A 取得部
15B 受付部
15C 算出部
15D 設定部