IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 横河電機株式会社の特許一覧

特開2024-170171復帰操作を探索するための装置、方法、および、プログラム
<>
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図1
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図2
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図3
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図4
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図5
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図6
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図7
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図8
  • 特開-復帰操作を探索するための装置、方法、および、プログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024170171
(43)【公開日】2024-12-06
(54)【発明の名称】復帰操作を探索するための装置、方法、および、プログラム
(51)【国際特許分類】
   G05B 23/02 20060101AFI20241129BHJP
【FI】
G05B23/02 X
【審査請求】未請求
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2023087188
(22)【出願日】2023-05-26
(71)【出願人】
【識別番号】000006507
【氏名又は名称】横河電機株式会社
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】神宮 善行
(72)【発明者】
【氏名】藤井 英幸
【テーマコード(参考)】
3C223
【Fターム(参考)】
3C223AA01
3C223AA02
3C223AA03
3C223AA04
3C223AA05
3C223AA06
3C223AA07
3C223BA03
3C223CC02
3C223DD03
3C223EB01
3C223EB07
3C223FF02
3C223FF03
3C223FF04
3C223FF05
3C223FF12
3C223FF13
3C223FF22
3C223FF24
3C223FF26
3C223FF42
3C223FF43
3C223FF45
3C223FF53
3C223GG01
3C223HH03
3C223HH29
(57)【要約】      (修正有)
【課題】復帰操作を探索するための装置、方法、および、プログラムを提供する。
【解決手段】設備の状態を示す状態データを取得する状態データ取得部と、前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価する評価部と、前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索する探索部と、を備える、装置を提供する。前記装置は、前記設備を異常から正常へ復帰させるために目標とする前記設備の状態を示す目標データを決定する目標データ決定部を更に備え、前記評価部は、前記状態データと前記目標データとの間における距離の変化に基づいて前記試行操作を評価してもよい。
【選択図】図1
【特許請求の範囲】
【請求項1】
設備の状態を示す状態データを取得する状態データ取得部と、
前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価する評価部と、
前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索する探索部と、
を備える、装置。
【請求項2】
前記設備を異常から正常へ復帰させるために目標とする前記設備の状態を示す目標データを決定する目標データ決定部を更に備え、
前記評価部は、前記状態データと前記目標データとの間における距離の変化に基づいて前記試行操作を評価する、請求項1に記載の装置。
【請求項3】
前記目標データ決定部は、正常時における前記状態データを示す複数の正常データに基づいて前記目標データを決定する、請求項2に記載の装置。
【請求項4】
前記目標データ決定部は、前記複数の正常データにおける統計量に基づいて前記目標データを決定する、請求項3に記載の装置。
【請求項5】
前記目標データ決定部は、前記複数の正常データにおける時系列に基づいて前記目標データを決定する、請求項3に記載の装置。
【請求項6】
前記状態データを評価モデルに入力したことに応じて、前記設備の状態を評価した評価指標を取得する指標取得部を更に備え、
前記評価部は、前記評価指標の変化に基づいて前記試行操作を評価する、請求項1に記載の装置。
【請求項7】
前記評価モデルを更に備える、請求項6に記載の装置。
【請求項8】
前記探索部は、前記復帰操作を探索するにあたり、前記試行操作に含まれる複数の操作パラメータのうちの1つの操作パラメータを順次変更する、請求項1から7のいずれか一項に記載の装置。
【請求項9】
前記探索部は、前記1つの操作パラメータについて、複数の候補操作量のうちの一部の候補操作量への変更を省略する、請求項8に記載の装置。
【請求項10】
前記状態データに基づいて前記設備の異常を検知する検知部を更に備える、請求項1から7のいずれか一項に記載の装置。
【請求項11】
探索された前記復帰操作によっても予め定められた条件内に前記設備が異常から正常に復帰しない場合に、警告を発する警告部を更に備える、請求項1に記載の装置。
【請求項12】
前記警告部は、前記設備の異常が検知されたことに応じて正常に復帰するまでの経過時間が予め定められた閾値を超える場合に、警告を発する、請求項11に記載の装置。
【請求項13】
前記警告部は、前記試行操作にしたがって前記制御対象が制御された回数が予め定められた閾値を超える場合に、警告を発する、請求項11に記載の装置。
【請求項14】
前記試行操作にしたがって前記制御対象を制御する制御部を更に備える、請求項1から7のいずれか一項に記載の装置。
【請求項15】
コンピュータが、
設備の状態を示す状態データを取得することと、
前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価することと、
前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索することと、
を備える、方法。
【請求項16】
コンピュータにより実行され、前記コンピュータを、
設備の状態を示す状態データを取得する状態データ取得部と、
前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価する評価部と、
前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索する探索部と、
して機能させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、復帰操作を探索するための装置、方法、および、プログラムに関する。
【背景技術】
【0002】
特許文献1には、「プラントの異常要因を特定できるとともに、異常状態からの復帰操作をオペレータの介在なしに自動的に行えるプラント運転装置を得る。」と記載されている。
[先行技術文献]
[特許文献]
[特許文献1] 特開2014-229109号
【発明の概要】
【0003】
本発明の第1の態様においては、復帰操作を探索するための装置を提供する。前記装置は、設備の状態を示す状態データを取得する状態データ取得部と、前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価する評価部と、前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索する探索部と、を備える。
【0004】
前記装置は、前記設備を異常から正常へ復帰させるために目標とする前記設備の状態を示す目標データを決定する目標データ決定部を更に備え、前記評価部は、前記状態データと前記目標データとの間における距離の変化に基づいて前記試行操作を評価してもよい。
【0005】
前記装置のいずれかにおいて、前記目標データ決定部は、正常時における前記状態データを示す複数の正常データに基づいて前記目標データを決定してもよい。
【0006】
前記装置のいずれかにおいて、前記目標データ決定部は、前記複数の正常データにおける統計量に基づいて前記目標データを決定してもよい。
【0007】
前記装置のいずれかにおいて、前記目標データ決定部は、前記複数の正常データにおける時系列に基づいて前記目標データを決定してもよい。
【0008】
前記装置のいずれかは、前記状態データを評価モデルに入力したことに応じて、前記設備の状態を評価した評価指標を取得する指標取得部を更に備え、前記評価部は、前記評価指標の変化に基づいて前記試行操作を評価してもよい。
【0009】
前記装置のいずれかは、前記評価モデルを更に備えてもよい。
【0010】
前記装置のいずれかにおいて、前記探索部は、前記復帰操作を探索するにあたり、前記試行操作に含まれる複数の操作パラメータのうちの1つの操作パラメータを順次変更してもよい。
【0011】
前記装置のいずれかにおいて、前記探索部は、前記1つの操作パラメータについて、複数の候補操作量のうちの一部の候補操作量への変更を省略してもよい。
【0012】
前記装置のいずれかは、前記状態データに基づいて前記設備の異常を検知する検知部を更に備えてもよい。
【0013】
前記装置のいずれかは、探索された前記復帰操作によっても予め定められた条件内に前記設備が異常から正常に復帰しない場合に、警告を発する警告部を更に備えてもよい。
【0014】
前記装置のいずれかにおいて、前記警告部は、前記設備の異常が検知されたことに応じて正常に復帰するまでの経過時間が予め定められた閾値を超える場合に、警告を発してもよい。
【0015】
前記装置のいずれかにおいて、前記警告部は、前記試行操作にしたがって前記制御対象が制御された回数が予め定められた閾値を超える場合に、警告を発してもよい。
【0016】
前記装置のいずれかは、前記試行操作にしたがって前記制御対象を制御する制御部を更に備えてもよい。
【0017】
本発明の第2の態様においては、復帰操作を探索するための方法を提供する。前記方法は、コンピュータが、設備の状態を示す状態データを取得することと、前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価することと、前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索することと、を備える。
【0018】
本発明の第3の態様においては、復帰操作を探索するためのプログラムを提供する。前記プログラムは、コンピュータにより実行され、前記コンピュータを、設備の状態を示す状態データを取得する状態データ取得部と、前記設備を異常から正常に復帰させるために試行する試行操作にしたがって制御対象を制御した場合における前記状態データの変化に基づいて、前記試行操作を評価する評価部と、前記評価された結果に基づいて、前記設備を異常から正常に復帰させるための復帰操作を探索する探索部と、して機能させる。
【0019】
なお、上記の発明の概要は、本発明の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0020】
図1】本実施形態に係る装置1000が含まれてよい制御システム1のブロック図における一例を示す。
図2】目標データを決定する第1の例を示す。
図3】目標データを決定する第2の例を示す。
図4】本実施形態に係る装置1000が実行してよい方法のフロー図における一例を示す。
図5】本実施形態に係る装置1000が含まれてよい制御システム1のブロック図における他の例を示す。
図6】本実施形態の変形例に係る装置1000が含まれてよい制御システム1のブロック図における一例を示す。
図7】本実施形態の変形例に係る装置1000が実行してよい方法のフロー図における一例を示す。
図8】本実施形態の変形例に係る装置1000が含まれてよい制御システム1のブロック図における他の例を示す。
図9】本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ9900の例を示す。
【発明を実施するための形態】
【0021】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0022】
図1は、本実施形態に係る装置1000が含まれてよい制御システム1のブロック図における一例を示す。なお、これらブロックは、それぞれ機能的に分離された機能ブロックであって、実際のデバイス構成とは必ずしも一致していなくてもよい。すなわち、本図において、1つのブロックとして示されているからといって、それが必ずしも1つのデバイスにより構成されていなくてもよい。また、本図において、別々のブロックとして示されているからといって、それらが必ずしも別々のデバイスにより構成されていなくてもよい。これより先のブロック図についても同様である。制御システム1には、設備10と、制御装置20と、装置1000と、が含まれてよい。
【0023】
設備10は、原材料から製品を製造する装置である。設備10は、1の装置であってもよいし、複数の装置を複合させた複合装置であってもよい。設備10は、例えば、プラント全体または工場全体であってよく、プラントまたは工場の一部のセグメントにおける装置群等であってよい。プラントとしては、化学やバイオ等の工業プラントの他、ガス田や油田等の井戸元やその周辺を管理制御するプラント、水力・火力・原子力等の発電を管理制御するプラント、太陽光や風力等の環境発電を管理制御するプラント、上下水やダム等を管理制御するプラント等が挙げられる。
【0024】
設備10には、設備10の内外における様々な状態(物理量)を測定可能な1または複数のセンサ(図示せず)が設けられていてよい。センサは、設備10の様々な箇所における温度、圧力、または、流量等を測定した測定値PV(Process Variable)を出力してよい。設備10の状態を示す状態データには、このような測定値PVが含まれていてよい。状態データには、さらに、バルブの開閉度等を示す操作量MV(Manipulated Variable)が含まれていてよい。状態データには、さらに、設備10におけるエネルギーの消費量、または、原材料の消費量等を示す消費量データが含まれていてよい。状態データには、さらに、設備10において外乱として作用し得る物理量を示す環境データが含まれていてよい。
【0025】
設備10には、制御対象15が設けられてよい。本図においては、説明の便宜上、1の制御対象15のみを示しているが、設備10には、1または複数の制御対象15が設けられてよい。
【0026】
制御対象15は、制御の対象となる機器である。制御対象15は、設備10のプロセスに係る物体の量、温度、圧力、流量、速度、または、pH等の少なくとも1つの物理量を制御する、バルブ、ヒータ、モータ、ファン、または、スイッチ等のアクチュエータ、すなわち、操作端であってよく、操作量に応じた所与の操作を実行してよい。しかしながら、これに限定されるものではない。制御対象15は、操作端を制御するコントローラであってもよい。すなわち、本明細書において用いられる「制御」という用語は、操作端を直接制御することに加えて、コントローラを介して操作端を間接的に制御することをも含まれるものと広義に解釈されてよい。
【0027】
制御装置20は、制御対象15を制御する装置である。制御装置20は、設備10の状態を示す状態データを取得し、状態データに基づいて制御対象15を制御してよい。この際、制御装置20は、PID(Proportional Integral Differential)制御により制御対象15を制御してもよいし、AI(Artificial Intelligence)制御により制御対象15を制御してもよい。
【0028】
なお、AI制御とは、機械学習により生成された操業モデルを用いた制御である。このような操業モデルは、例えば、設備10の状態を評価した評価指標を報酬の少なくとも一部とした強化学習により生成されたものであってよい。また、このような強化学習に用いられる評価指標は、状態データが入力されたことに応じて評価指標を出力するように機械学習された評価モデルから出力されたものであってよい。
【0029】
制御装置20による制御対象15の制御下において、設備10に異常が生じることがある。このような場合、復帰操作にしたがって制御対象15を制御することによって設備10を自動的に復帰させることが望ましい。しかしながら、設備10は、様々な条件に応じて様々な異常状態を取り得る。このような場合に対応すべく、異常状態毎に復帰操作をデータベース等に定義しておくことが考えられる。しかしながら、全ての異常状態を予め考慮しておくことは現実的に不可能であり、このような問題はプラントのように様々な条件が相互に影響を受ける複雑な設備において特に顕著となる。
【0030】
そこで、本実施形態に係る装置1000は、実機を用いた試行錯誤により、設備10を異常から正常に復帰させるための復帰操作を探索する。これにより、本実施形態に係る装置1000によれば、設備10が様々な異常状態を取った場合であっても、試行錯誤により復帰操作を探索することができる。これについて詳細に説明する。装置1000は、状態データ取得部110と、検知部120と、目標データ決定部130と、評価部170と、探索部180と、警告部190と、を備えてよい。
【0031】
状態データ取得部110は、設備10の状態を示す状態データを取得する。状態データ取得部110は、主に、通信インターフェイスにより提供されてよく、状態データを設備10からネットワークを介して時系列に取得してよい。しかしながら、これに限定されるものではない。状態データ取得部110は、状態データを、設備10とは異なる他の装置から取得してもよいし、ネットワークとは異なる他の手段(各種メモリデバイス、または、ユーザ入力等)を介して取得してもよい。状態データ取得部110は、取得した状態データを検知部120へ供給する。
【0032】
検知部120は、状態データに基づいて設備10の異常を検知する。検知部120は、主に、CPUまたはその他のプロセッサによりプログラムを実行することにより提供されてよく、状態データ取得部110により取得された状態データに基づいて設備10の異常を検知してよい。この際、検知部120は、状態データに基づいて設備10を正常な状態と異常な状態とに分類する機械学習モデルを用いてよい。設備10の異常を検知していないと判定した場合、検知部120は、状態データに正常ラベルを付して目標データ決定部130へ供給する。設備10の異常を検知したと判定した場合、検知部120は、状態データに異常ラベルを付して目標データ決定部130および評価部170へ供給する。また、検知部120は、設備10の異常を検知した旨を探索部180および警告部190へ通知する。
【0033】
目標データ決定部130は、設備10を異常から正常へ復帰させるために目標とする設備10の状態を示す目標データを決定する。目標データ決定部130は、主に、CPUにより提供されてよく、検知部120により正常ラベルが付された複数の状態データ、すなわち、正常時における状態データを示す複数の正常データに基づいて目標データを決定してよい。これについては詳細を後述する。目標データ決定部130は、決定した目標データを評価部170へ供給する。
【0034】
評価部170は、設備10を異常から正常に復帰させるために試行する試行操作にしたがって制御対象15を制御した場合における状態データの変化に基づいて、試行操作を評価する。評価部170は、主に、CPUにより提供されてよく、検知部120により異常ラベルが付された状態データと、目標データ決定部130により決定された目標データとの間における距離の変化に基づいて試行操作を評価してよい。評価部170は、評価された結果を探索部180へ供給する。
【0035】
探索部180は、評価された結果に基づいて、設備10を異常から正常に復帰させるための復帰操作を探索する。探索部180は、主に、通信インターフェイス、および、CPUにより提供されてよく、試行操作を、ネットワークを介して制御装置20へ供給してよい。そして、制御装置20は、試行操作にしたがって制御対象15を制御してよい。これにより、設備10は、状態が変化する。状態データ取得部110は、試行操作にしたがった制御後に状態データを再び取得してよい。また、評価部170は、状態データの変化に基づいて試行操作を評価してよい。そして、探索部180は、評価された結果に基づいて、試行操作に含まれる複数の操作パラメータのうちの1つの操作パラメータを順次変更してよい。このような処理を繰り返し実行することによって、探索部180は、評価部170により評価された結果に基づいて、試行錯誤により復帰操作を探索することができる。
【0036】
警告部190は、探索された復帰操作によっても予め定められた条件内に設備10が異常から正常に復帰しない場合に、警告を発する。警告部190は、主に、ディスプレイデバイスにより提供されてよく、探索された復帰操作によっても予め定められた条件内に設備10が異常から正常に復帰しない場合に、その旨を示す警告画面を表示してよい。
【0037】
このような機能部を備えた装置1000は、PC(パーソナルコンピュータ)、タブレット型コンピュータ、スマートフォン、ワークステーション、サーバコンピュータ、または汎用コンピュータ等のコンピュータであってよく、複数のコンピュータが接続されたコンピュータシステムであってもよい。このようなコンピュータシステムもまた広義のコンピュータである。また、装置1000は、コンピュータ内で1または複数実行可能な仮想コンピュータ環境によって実装されてもよい。これに代えて、装置1000は、復帰操作を探索するために設計された専用コンピュータであってもよく、専用回路によって実現された専用ハードウェアであってもよい。また、装置1000がインターネットに接続可能な場合、装置1000は、クラウドコンピューティングにより実現されてもよい。
【0038】
このようなコンピュータは、プログラムを格納するメモリと、プログラムを実行するプロセッサと、を備え、プロセッサがプログラムを実行することにより、装置1000としての機能が実装されてもよい。すなわち、コンピュータにより実行され、コンピュータを、設備10の状態を示す状態データを取得する状態データ取得部110と、設備10を異常から正常に復帰させるために試行する試行操作にしたがって制御対象15を制御した場合における状態データの変化に基づいて、試行操作を評価する評価部170と、評価された結果に基づいて、設備10を異常から正常に復帰させるための復帰操作を探索する探索部180と、して機能させる、プログラムが提供されてよい。
【0039】
図2は、目標データを決定する第1の例を示す。本図は、状態データによって定義される特徴量空間を示している。本図において、丸印(〇)は正常データ、すなわち、検知部120によって正常ラベルが付された状態データを、バツ印(×)は異常データ、すなわち、検知部120によって異常ラベルが付された状態データをそれぞれ示している。符号210は、決定境界を可視化したものである。検知部120が用いてよい機械学習モデルは、このように設備10を正常または異常に分類する境界を決定するために機械学習によってチューニングされていてよい。
【0040】
符号220は、対象となる異常データを示している。目標データ決定部130は、対象となる異常データが検知部120から供給された場合に、設備10を異常から正常へ復帰させるために目標とする設備10の状態を示す目標データを決定してよい。この際、目標データ決定部130は、複数の正常データに基づいて目標データを決定してよい。目標データ決定部130は、このような目標データを様々な手法を用いて決定することができる。
【0041】
本図は、複数の正常データにおける統計量に基づいて目標データを決定する手法を一例としている。符号230は、複数の正常データの重心を示している。目標データ決定部130は、複数の正常データからの距離の二乗和を算出し、距離の二乗和が最小になる点を重心230として定義してよい。この際、目標データ決定部130は、統計処理に用いる複数の正常データを、予め定められたルールにしたがって選択してよい。例えば、目標データ決定部130は、対象となる異常データが検知部120から供給された場合に、それまでに検知部120から供給された正常データを新しい順にm個選択し、選択したm個の正常データを統計処理に用いてもよい。
【0042】
目標データ決定部130は、対象となる異常データ220から複数の正常データの重心230へ向かうベクトル240を算出してよい。そして、目標データ決定部130は、ベクトル240と決定境界210との交点250を、目標データとして決定してよい。なお、上述の説明では、ベクトル240と決定境界210との交点250を目標データとする場合を一例として示したが、目標データ決定部130は、重心230自体を目標データとして決定してもよいし、ベクトル240上における交点250と重心230との間の任意の点を目標データとして決定してもよい。また、上述の説明では、統計量として重心を用いる場合を一例として説明したが、目標データ決定部130は、平均値、中央値、または、最頻値等の他の統計量に基づいて目標データを決定してもよい。目標データ決定部130は、例えばこのようにして、複数の正常データにおける統計量に基づいて目標データを決定することができる。
【0043】
図3は、目標データを決定する第2の例を示す。本図においては、図2と同じ機能および構成を有する部材に対して同じ符号を付すとともに、以下相違点を除き説明を省略する。本図において、丸印(〇)内の数字は、正常データの時系列の順番を示しており、値が小さいほど新しく、値が大きいほど古いデータであることを意味している。
【0044】
本図は、複数の正常データにおける時系列に基づいて目標データを決定する手法を一例として示している。符号310は、選択したm個(本図においては、m=10)の正常データのうちの最新の正常データを示している。目標データ決定部130は、対象となる異常データ220から最新の正常データ310へ向かうベクトル320を算出してよい。そして、目標データ決定部130は、ベクトル320と決定境界210との交点330を、目標データとして決定してよい。なお、上述の説明では、ベクトル320と決定境界210との交点330を目標データとする場合を一例として示したが、目標データ決定部130は、最新の正常データ310自体を目標データとして決定してもよいし、ベクトル320上における交点330と最新の正常データ310との間の任意の点を目標データとして決定してもよい。目標データ決定部130は、例えばこのようにして、複数の正常データにおける時系列に基づいて目標データを決定することもできる。
【0045】
なお、複数の正常データにおける統計量に基づいて目標データを決定する手法と、複数の正常データにおける時系列に基づいて目標データを決定する手法とをそれぞれ別々の手法として説明したが、両者を組み合わせてもよい。例えば、目標データ決定部130は、複数の正常データについて、時系列の順番にしたがって、新しいデータほど寄与が大きく、古いデータほど寄与が小さくなるように重みを設定して加重平均を算出してよい。そして、目標データ決定部130は、加重平均に基づいて目標データを決定してもよい。目標データ決定部130は、例えばこのようにして、複数の正常データにおける統計量、および、時系列に基づいて目標データを決定することもできる。
【0046】
図4は、本実施形態に係る装置1000が実行してよい方法のフロー図における一例を示す。本図における各ステップは、装置1000、すなわち、コンピュータが動作主体となって実行されてよい。しかしながら、各ステップにおいて、全体としてコンピュータが動作主体となっていればよく、主たる部分ではない一部の部分をコンピュータ以外が実行する場合が含まれていてもよい。
【0047】
ステップS1400において、コンピュータは、初期化を実行する。例えば、コンピュータは、試行操作にしたがって制御対象15が制御された回数kをカウントするカウンタを初期化してよい。すなわち、コンピュータは、k=0にセットしてよい。また、コンピュータは、設備10の異常が検知されたことに応じた経過時間tを計時するタイマを初期化してよい。すなわち、コンピュータは、t=0にセットしてよい。
【0048】
ステップS1410において、コンピュータは、設備10の状態を示す状態データを取得する。例えば、コンピュータに実装されてよい状態データ取得部110は、設備10の状態を示す状態データSを、設備10からネットワークを介して時系列に取得してよい。一例として、k=0の場合、状態データ取得部110は、状態データS0を取得してよい。状態データ取得部110は、取得した状態データSを検知部120へ供給する。
【0049】
ステップS1420において、コンピュータは、状態データに基づいて設備10の異常を検知したか否か判定する。例えば、コンピュータに実装されてよい検知部120は、ステップS1410において取得された状態データSに基づいて設備10の異常を検知したか否か判定してよい。一例として、k=0の場合、検知部120は、状態データS0に基づいて設備10の異常を検知したか否か判定してよい。この際、検知部120は、上述のとおり、状態データSに基づいて設備10を正常な状態と異常な状態とに分類する機械学習モデルを用いてよい。
【0050】
状態データSが入力されたことに応じて、機械学習モデルが、設備10を正常な状態に分類した場合に、検知部120は、設備10の異常を検知していない(No)と判定してよい。この場合、検知部120は、状態データSに正常ラベルnを付して目標データ決定部130へ供給する。そして、コンピュータは、処理をステップS1400に戻してフローを継続する。
【0051】
一方、状態データSが入力されたことに応じて、機械学習モデルが、設備10を異常な状態に分類した場合に、検知部120は、設備10の異常を検知した(Yes)と判定してよい。この場合、検知部120は、状態データSに異常ラベルaを付して目標データ決定部130および評価部170へ供給する。また、検知部120は、設備10の異常を検知した旨を探索部180および警告部190へ通知する。そして、コンピュータは、処理をステップS1430へ進める。
【0052】
ステップS1430において、コンピュータは、予め定められた条件内であるか否か判定する。例えば、コンピュータに実装されてよい警告部190は、回数kが予め定められた閾値K(ただし、Kは1または2以上の整数)以内であるか否か判定してよい。また、警告部190は、経過時間tが予め定められた閾値T以内であるか否か判定してよい。しかしながら、これに限定されるものではない。復帰操作の探索を中止、中段、または、終了するための様々な条件が予め定められていてよい。予め定められた条件内である(Yes)と判定された場合、コンピュータは、処理をステップS1440へ進める。
【0053】
ステップS1440において、コンピュータは、復帰処理が実行中であるか否か判定する。例えば、コンピュータは、回数kが0であるか否か判定してよい。そして、k=0である場合、コンピュータは、復帰処理が実行中でない(No)と判定してよい。復帰処理が実行中でないと判定された場合、コンピュータは、処理をステップS1445へ進める。
【0054】
ステップS1445において、コンピュータは、設備10の異常が検知されことに応じた経過時間tを計時するタイマをスタートさせる。ここで、コンピュータは、設備10の異常が検知されたことに対応して予め定められた特定の開始時点からタイマによる計時をスタートしてよい。例えば、コンピュータは、設備10の異常が検知されたタイミングでタイマをスタートさせることにより(S1420のYESの後)、設備10の異常が検知されてからの経過時間tを計時してよい。これに代えて、コンピュータは、設備10の異常が検知された後に最初の試行操作を決定または実行してから(S480)の経過時間tを計時してもよい。コンピュータは、設備10の異常からの復帰に要している時間を計時可能なその他の開始時点を用いてもよい。そして、コンピュータは、処理をステップS1450へ進める。
【0055】
ステップS1450において、コンピュータは、設備10を異常から正常へ復帰させるために目標とする設備10の状態を示す目標データを決定する。例えば、コンピュータに実装されてよい目標データ決定部130は、ステップS1420において正常ラベルnが付された状態データS、すなわち、正常時における状態データSを示す正常データSnに基づいて目標データStを決定してよい。
【0056】
この際、目標データ決定部130は、正常時における状態データSを示す複数の正常データSn1、Sn2、…、Snmに基づいて目標データStを決定してよい。ここで、正常データSn1、Sn2、…、Snmは、設備10の異常が検知された時点よりも前における正常データSnを新しい順にm個選択したものである。mは、正常データSnの時系列の順番を示しており、値が小さいほど新しく、値が大きいほど古いデータであることを意味している。
【0057】
この際、目標データ決定部130は、例えば図2の手法を用いて、複数の正常データSn1、Sn2、…、Snmにおける統計量に基づいて目標データStを決定してよい。また、目標データ決定部130は、例えば図3の手法を用いて、複数の正常データSn1、Sn2、…、Snmにおける時系列に基づいて目標データStを決定してもよい。また、目標データ決定部130は、例えば図2の手法および図3の手法を組み合わせて、複数の正常データSn1、Sn2、…、Snmにおける統計量、および、時系列に基づいて目標データStを決定してもよい。目標データ決定部130は、決定した目標データStを、評価部170へ供給する。
【0058】
ステップS1455において、コンピュータは、設備10を異常から正常に復帰させるために試行する試行操作A0を制御装置20へ供給する。例えば、コンピュータに実装されてよい探索部180は、試行操作A0を、ネットワークを介して制御装置20へ供給してよい。なお、ステップS1455においては、設備10の異常が検知されてから初めて試行操作Aを供給する段階であって、試行操作Aの評価が得られる前であるので、試行操作A0は初期値にセットされていてよい。
【0059】
ここで、試行操作Aは、複数の操作パラメータを含んでいてよい。また、複数の操作パラメータの各々は、複数の候補操作量から選択されてよい。ここでは、一例として、試行操作Aが、複数の操作パラメータ[Aa,Ab,Ac,Ad,…]の組から成るものとする。操作パラメータAaは、ライトの点灯を制御するためのパラメータであり、候補操作量{OFF(消灯),ON(点灯)}から選択されるものとする。操作パラメータAbは、添加剤の供給を制御するためのパラメータであり、候補操作量{OFF(遮断),ON(供給)}から選択されるものとする。操作パラメータAcは、バルブの開度を制御するためのパラメータであり、候補操作量{-5(5度閉める),0(変更なし),+5(5度開く)}から選択されるものとする。操作パラメータAdは、ヒータの温度を制御するためのパラメータであり、候補操作量{-3(3度下げる),0(変更なし),+3(3度上げる)}から選択されるものとする。
【0060】
このような場合、試行操作A0は、例えば、[OFF,OFF,0,0,…]にセットされてよい。探索部180は、例えばこのような試行操作A0を制御装置20へ供給してよい。これに応じて、制御装置20は、試行操作A0にしたがって制御対象15を制御してよい。そして、コンピュータは、処理をステップS1460へ進める。
【0061】
ステップS1460において、コンピュータは、インクリメント処理を実行する。例えば、コンピュータは、k=k+1にセットしてよい。一例としてk=0の場合、コンピュータは、k=1にセットしてよい。そして、コンピュータは、処理をステップS1410へ戻してフローを継続する。
【0062】
すなわち、k=1の場合、状態データ取得部110は、試行操作A0にしたがって制御対象15が制御された後の設備10の状態を示す状態データS1を取得し、検知部120は、状態データS1に基づいて設備10の異常を検知したか否か判定してよい。
【0063】
ここで、k=1の場合、ステップS1440において、コンピュータは、k≠0であるので、復帰処理が実行中である(Yes)と判定してよい。復帰処理が実行中であると判定された場合、コンピュータは、処理をステップS1470へ進める。
【0064】
ステップS1470において、コンピュータは、設備10を異常から正常に復帰させるために試行する試行操作にしたがって制御対象15を制御した場合における状態データの変化に基づいて、試行操作を評価する。例えば、コンピュータに実装されてよい評価部170は、ステップS1420において異常ラベルが付された状態データと、ステップS1450において決定された目標データとの間における距離の変化に基づいて試行操作を評価してよい。
【0065】
一例として、k=1の場合、評価部170は、状態データS0と目標データStとの距離D0を算出してよい。この際、評価部170は、ユークリッド距離、マンハッタン距離、チェビシェフ距離、または、マハラノビス距離の少なくともいずれかを算出してよい。同様に、評価部170は、状態データS1と目標データStとの距離D1を算出してよい。そして、評価部170は、距離D0-距離D1により差分d01を算出してよい。
【0066】
差分d01が0より大きい場合、すなわち、距離D0よりも距離D1が小さい場合、試行操作A0により設備10の状態が目標とする状態に近づいたことを意味している。この場合、評価部170は、試行操作A0に対して0より大きい評価値を与えてよい。この際、評価部170は、差分d01の絶対値が大きいほど値が大きくなるように評価値を与えてよい。
【0067】
差分d01が0の場合、すなわち、距離D0と距離D1とが同じである場合、試行操作A0により設備10の状態が変化しなかったことを意味している。この場合、評価部170は、試行操作A0に対して0の評価値を与えてよい。
【0068】
差分d01が0より小さい場合、すなわち、距離D0よりも距離D1が大きい場合、試行操作A0により設備10の状態が目標とする状態から遠ざかったことを意味している。この場合、評価部170は、試行操作A0に対して0より小さい評価値を与えてよい。この際、評価部170は、差分d01の絶対値が大きいほど値が小さくなるように評価値を与えてよい。
【0069】
評価部170は、例えばこのようにして、状態データSと目標データStとの間における距離Dの変化に基づいて試行操作Aを評価してよい。評価部170は、評価された結果を探索部180へ供給する。
【0070】
ステップS1475において、コンピュータは、評価された結果に基づいて、設備10を異常から正常に復帰させるための復帰操作を探索する。例えば、コンピュータに実装されてよい探索部180は、ステップS1470において評価された結果に基づいて、復帰操作を探索してよい。この際、探索部180は、復帰操作を探索するにあたり、試行操作に含まれる複数の操作パラメータのうちの1つの操作パラメータを順次変更してよい。一例として、k=1の場合において、試行操作A0の評価値が0であったとする。この場合、探索部180は、複数の操作パラメータのうちの1つの操作パラメータをランダムに選択し、1つの操作パラメータを他の候補操作量へ変更してよい。一例として、探索部180は、試行操作A0[OFF,OFF,0,0,…]のうちの操作パラメータAaを「OFF」から「ON」に変更し、試行操作A1を[ON,OFF,0,0,…]にセットしてよい。
【0071】
ステップS1480において、コンピュータは、設備10を異常から正常に復帰させるために試行する試行操作Aを制御装置20へ供給する。例えば、コンピュータに実装されてよい探索部180は、ステップS1475において変更された試行操作Aを、ネットワークを介して制御装置20へ供給してよい。一例として、k=1の場合、探索部180は、試行操作A1[ON,OFF,0,0,…]を制御装置20へ供給してよい。これに応じて、制御装置20は、試行操作A1にしたがって制御対象15を制御してよい。そして、コンピュータは、処理をステップS1460へ進め、復帰処理を繰り返し実行する。
【0072】
すなわち、k=2の場合に、状態データ取得部110は、試行操作A1にしたがって制御対象15が制御された後の設備10の状態を示す状態データS2を取得し、評価部170は、状態データS2と目標データStとの距離D2を算出してよい。そして、評価部170は、距離D1-距離D2により差分d12を算出し、試行操作A1に対して差分d12に応じた評価値を与えてよい。
【0073】
ここで、試行操作A1にしたがって制御対象15が制御された場合において、試行操作A1の評価値が0であったとする。このような評価結果を得た探索部180は、操作パラメータAaの変更が、復帰操作に寄与していない(すなわち、操作パラメータAaは、不感なパラメータである)ことを認識することができる。この場合、探索部180は、操作パラメータAaを任意の候補操作量(例えば、「OFF」)に決定してもよい。そして、探索部180は、複数の操作パラメータのうちの未決定の操作パラメータを1つ選択し、他の候補操作量へ変更してよい。一例として、探索部180は、操作パラメータAbを「OFF」から「ON」に変更し、試行操作A2を[OFF,ON,0,0,…]にセットしてよい。
【0074】
次に、試行操作A2にしたがって制御対象15が制御された場合において、試行操作A2の評価値が0より大きかったとする。このような評価結果を得た探索部180は、操作パラメータAbの変更により、設備10の状態が改善したことを認識することができる。この場合、探索部180は、操作パラメータAbを変更後の候補操作量(ここでは、「ON」)に決定してもよい。そして、探索部180は、複数の操作パラメータのうちの未決定の操作パラメータを1つ選択し、他の候補操作量へ変更してよい。一例として、探索部180は、操作パラメータAcを「0」から「+5」に変更し、試行操作A3を[OFF,ON,+5,0,…]にセットしてよい。
【0075】
次に、試行操作A3にしたがって制御対象15が制御された場合において、試行操作A3の評価値が0より小さかったとする。このような評価結果を得た探索部180は、操作パラメータAcの変更により、設備10の状態が悪化したことを認識することができる。この場合、探索部180は、操作パラメータAcを他の候補操作量(ここでは、「-5」)に変更し、試行操作A4を[OFF,ON,-5,0,…]にセットしてよい。
【0076】
次に、試行操作A4にしたがって制御対象15が制御された場合において、試行操作A4の評価値が0より大きかったとする。このような評価結果を得た探索部180は、操作パラメータAcの変更により、設備10の状態が改善したことを認識することができる。この場合、探索部180は、操作パラメータAcを変更後の候補操作量(ここでは、「-5」)に決定してもよい。そして、探索部180は、複数の操作パラメータのうちの未決定の操作パラメータを1つ選択し、他の候補操作量へ変更してよい。一例として、探索部180は、操作パラメータAdを「0」から「+3」に変更し、試行操作A5を[OFF,ON,-5,+3,…]にセットしてよい。
【0077】
次に、試行操作A5にしたがって制御対象15が制御された場合において、試行操作A5の評価値が0より大きかったとする。このような評価結果を得た探索部180は、操作パラメータAdの変更により、設備10の状態が改善したことを認識することができる。ここで、操作パラメータAdは、他の候補操作量として「-3」も選択可能である。しかしながら、操作パラメータAdを「+」にした結果、設備10の状態が改善したため、操作パラメータAdを「+3」とは極性の異なる「-3」に変更した場合、設備10の状態が悪化することが見込まれる。このような場合、探索部180は、操作パラメータAdを「-3」に変更した試行操作を試すことなく、操作パラメータAdを変更後の候補操作量(ここでは、「+3」)に決定してもよい。探索部180は、例えばこのようにして、1つの操作パラメータについて、複数の候補操作量のうちの一部の候補操作量への変更を省略することもできる。
【0078】
コンピュータは、このように実機を用いて試行錯誤することにより、ステップS1420において、設備10の異常を検知しなくなるまで、または、ステップS1430において、予め定められた条件を超えるまで、復帰操作を探索してよい。
【0079】
このような復帰操作の探索中に、ステップS1430において、回数kが閾値Kを超えた、または、設備10の異常が検知されたことに応じてS1445でタイマをスタートさせてからの経過時間tが閾値Tを超えた場合、警告部190は、予め定められた条件内でない(No)と判定してよい。この場合、コンピュータは、処理をステップS1490へ進める。
【0080】
ステップS1490において、コンピュータは、予め定められた条件内に設備10が異常から正常に復帰しない場合に、警告を発する。例えば、コンピュータに実装されてよい警告部190は、回数kが閾値Kを超えた場合、または、経過時間tが閾値Tを超えた場合、その旨を示す警告画面を表示してよい。この際、警告部190は、探索の実行履歴を画面に表示してもよい。一例として、警告部160は、試行操作Aと状態データSの推移とを、グラフ等を用いて画面に表示してもよい。警告部190は、例えばこのようにして、試行操作にしたがって制御対象15が制御された回数(例えばk)が予め定められた閾値(例えばK)を超える場合に、警告を発してよい。また、警告部190は、設備10の異常が検知されたことに応じて正常に復帰するまでの経過時間(例えばt)が予め定められた閾値(例えばT)を超える場合に、警告を発してよい。
【0081】
このように、コンピュータが、設備10の状態を示す状態データを取得することと、設備10を異常から正常に復帰させるために試行する試行操作にしたがって制御対象15を制御した場合における状態データの変化に基づいて、試行操作を評価することと、評価された結果に基づいて、設備10を異常から正常に復帰させるための復帰操作を探索することと、を備える、方法が提供されてよい。
【0082】
従来、異常状態に対する復帰操作内容を予め定義した復帰操作決定データベースを参照して、異常状態に対する復帰操作内容を決定していた。しかしながら、様々な異常状態を予め考慮しておくことは現実的に不可能であり、このような問題はプラントのように様々な条件が相互に影響を受ける複雑な設備において特に顕著となる。
【0083】
これに対して、本実施形態に係る装置1000は、試行操作にしたがって制御対象15を制御した場合における状態データの変化に基づいて試行操作を評価し、当該評価結果に基づいて復帰操作を探索する。これにより、本実施形態に係る装置1000によれば、実機を用いた試行錯誤により、設備10を異常から正常に復帰させるための復帰操作を探索するので、復帰操作を決定するためのデータベースや設備10を模擬するシミュレータを予め準備することなく、様々な異常状態からの復帰を試みることができる。
【0084】
また、本実施形態に係る装置1000は、目標データを決定し、状態データと目標データとの間における距離の変化に基づいて試行操作を評価してよい。これにより、本実施形態に係る装置1000によれば、設備10の状態が目標とする状態に近づくような試行操作に対して、より高い評価を与えることができる。
【0085】
また、本実施形態に係る装置1000は、複数の正常データに基づいて目標データを決定してよい。これにより、本実施形態に係る装置1000によれば、設備10を異常から正常に復帰させるにあたって目指すべき目標を無作為に設定するのではなく、複数の正常データを根拠として客観的に設定することができる。
【0086】
この際、本実施形態に係る装置1000は、複数の正常データにおける統計量に基づいて目標データを決定してもよいし、複数の正常データにおける時系列に基づいて目標データを決定してもよい。異常と一口に言っても多種多様な異常が存在し、データ間に順序性等の関係がない静的な異常もあれば、データ間に順序性の関係がある動的な異常もある。本実施形態に係る装置1000によれば、このような多種多様な異常に対しても、設備10を異常から正常に復帰させるにあたって目指すべき目標を適切に設定することができる。
【0087】
また、本実施形態に係る装置1000は、復帰操作を探索するにあたり、試行操作に含まれる複数の操作パラメータのうちの1つの操作パラメータを順次変更してよい。これにより、本実施形態に係る装置1000によれば、どの操作パラメータが復帰操作に寄与しているかが不明な場合であっても、各操作パラメータを1つ1つ順番に評価しながら復帰操作を探索することができる。
【0088】
この際、本実施形態に係る装置1000は、1つの操作パラメータについて、複数の候補操作量のうちの一部の候補操作量への変更を省略してもよい。これにより、本実施形態に係る装置1000によれば、全ての候補操作量の組み合わせを網羅的に試行することなく、効率的に復帰操作を探索することができる。
【0089】
また、本実施形態に係る装置1000は、状態データに基づいて設備10の異常を検知する機能を更に備えてよい。これにより、本実施形態に係る装置1000によれば、異常検知機能と、復帰操作探索機能とを一つの装置により実現することができる。また、本実施形態に係る装置1000によれば、人手を介することなく設備10の異常を自律的に検知することができるうえ、状態データに正常ラベルや異常ラベルを付与することにより復帰操作を探索するために必要な正常データと異常データとを自動的に振り分けることができる。
【0090】
また、本実施形態に係る装置1000は、予め定められた条件内に設備10が異常から正常に復帰しない場合に、警告を発する機能を更に備えてよい。これにより、本実施形態に係る装置1000によれば、復帰操作を探索しているにも関わらず、条件内に設備10が異常から正常に復帰しなかった場合に、その旨をユーザに知らしめることができる。したがって、本実施形態に係る装置1000によれば、設備10を自動復帰させることが困難な場合であっても、復帰操作の探索処理を不必要に繰り返すことなく、手動復帰に切り替える等をユーザに促すことができる。
【0091】
この際、本実施形態に係る装置1000は、試行操作にしたがって制御対象15が制御された回数が予め定められた閾値を超える場合に、警告を発してもよいし、設備10の異常が検知されたことに応じて正常に復帰するまでの経過時間が予め定められた閾値を超える場合に、警告を発してもよい。設備10によって時定数や整定時間が様々であるため、試行操作にしたがって制御対象15を制御した場合に、設備の状態が変化する速度は様々である。本実施形態に係る装置1000によれば、このような場合であっても、復帰操作の探索を中止、中段、または、終了するタイミングを設備10毎に最適なタイミングに設定することができる。
【0092】
図5は、本実施形態に係る装置1000が含まれてよい制御システム1のブロック図における他の例を示す。本図においては、図1と同じ機能および構成を有する部材に対して同じ符号を付すとともに、以下相違点を除き説明を省略する。ここまで、制御装置20と装置1000とがそれぞれ独立した別々の装置として提供される場合を一例として示した。しかしながら、制御装置20と装置1000とは、一部または全部が一体となった一つの装置として提供されてもよい。本図においては、装置1000が制御装置20の機能をも提供する場合を示している。
【0093】
本図において、装置1000は、制御部510を更に備える。本図において、状態データ取得部110は、取得した状態データを検知部120に加えて、制御部510へ供給してよい。また、探索部180は、試行操作を制御装置20に代えて、制御部510へ供給してよい。
【0094】
制御部510は、主に、CPUにより提供されてよく、制御装置20と同様の機能部として装置1000内に実装されてよい。すなわち、設備10に異常が生じていない場合、制御部510は、状態データ取得部110により取得された状態データに基づいて制御対象15を制御してよい。この際、制御部510は、PID制御により制御対象15を制御してもよいし、AI制御により制御対象15を制御しても良い。一方、設備10に異常が生じた場合、制御部510は、探索部180から供給される試行操作にしたがって制御対象15を制御してよい。この場合、制御部510は、検知部120により設備10の異常が検知されたか否かに応じて、制御モードを切り替えるとよい。
【0095】
このように、本実施形態に係る装置1000は、制御部510を更に備えてよい。これにより、本実施形態に係る装置1000によれば、復帰操作を探索する機能と制御対象15を制御する機能とを一つの装置により実現することができる。したがって、本実施形態に係る装置1000によれば、装置1000から制御装置20へ試行操作を供給する必要がなく、装置1000と制御装置20との間の通信において試行操作が改竄される等のリスクを排除することができるので、設備10をセキュリティの脅威から守ることができる。
【0096】
図6は、本実施形態の変形例に係る装置1000が含まれてよい制御システム1のブロック図における一例を示す。本図においては、図1と同じ機能および構成を有する部材に対して同じ符号を付すとともに、以下相違点を除き説明を省略する。上述の説明においては、装置1000が目標データを用いて試行操作を評価する場合を一例として示した。しかしながら、本変形例においては、装置1000は、評価指標を用いて試行操作を評価する。
【0097】
本変形例において、制御システム1には、評価モデル40が更に含まれてよい。評価モデル40は、設備10の状態を示す状態データが入力されたことに応じて、設備10の状態を評価した評価指標を出力する。このような評価モデル40を生成するにあたっては、一例として、設備10における操業目標(プラントKPI(Key Performance Indicator:重要業績評価指標)等)、設備10の状態を示す状態データ、および、教師ラベルに基づいてラベリングデータが生成されてよい。このような操業目標は、設備10がプラント全体または工場全体の場合にはプラント全体または工場全体の操業目標であってよく、設備10がプラントまたは工場の一部のセグメントである場合にはセグメントの操業目標であってよく、設備10が単一の装置または単一のプロセスに対応する場合には単一の装置または単一のプロセスの操業目標であってよい。そして、生成されたラベリングデータを学習データとして、機械学習のアルゴリズムにより評価モデル40が生成されてよい。評価モデル40の生成処理自体については任意であってよいので、更なる詳細についてはここでは説明を省略する。
【0098】
なお、本変形例においては、制御装置20は、操業モデルを用いたAI制御を実行するものとする。また、本図においては、評価モデル40が、操業モデルの強化学習の際に用いた評価モデルと同一である場合を一例として示している。すなわち、試行操作の評価に用いる評価指標と、操業モデルの強化学習に用いる評価指標とは、同一のモデルから出力されたものであってよい。しかしながら、これに限定されるものではない。評価モデル40は、操業モデルの強化学習の際に用いた評価モデルと異なっていてもよい。すなわち、試行操作の評価に用いる評価指標と、操業モデルの強化学習に用いる評価指標とは、異なるモデルから出力されたものであってもよい。
【0099】
本変形例において、装置1000は、目標データ決定部130に代えて、指標取得部610を更に備える。また、検知部120は、設備10の異常を検知したと判定した場合、状態データに異常ラベルを付して指標取得部610へ供給する。
【0100】
指標取得部610は、状態データを評価モデル40に入力したことに応じて、設備10の状態を評価した評価指標を取得する。指標取得部610は、主に、通信インターフェイスにより提供されてよく、検知部120により異常ラベルが付された状態データを、ネットワークを介して評価モデル40に供給してよい。評価モデル40は、状態データが入力されたことに応じて、設備10の状態を評価した評価指標を出力してよい。指標取得部610は、このようにして評価モデル40から出力された評価指標を、ネットワークを介して取得してよい。指標取得部610は、取得した評価指標を評価部170へ供給する。
【0101】
本変形例において、評価部170は、評価指標の変化に基づいて試行操作を評価する。評価部170は、主に、CPUにより提供されてよく、指標取得部610から時系列に取得した評価指標を解析して、評価指標の変化を導出してよい。そして、評価部170は、評価指標の変化に基づいて、試行操作を評価してよい。評価部170は、評価された結果を探索部180へ供給する。探索部180は、このような評価結果に基づいて、復帰操作を探索してよい。
【0102】
図7は、本実施形態の変形例に係る装置1000が実行してよい方法のフロー図における一例を示す。ステップS1400~ステップS1460、および、ステップS1475~ステップS1490については、ステップS1450を備えない点を除き、図4と同様の処理であってよいので、ここでは詳細な説明を省略する。本変形例においては、ステップS1440において復帰処理が実行中であると判定した場合、コンピュータは、処理をステップS1465へ進める。
【0103】
ステップS1465において、コンピュータは、状態データを評価モデル40に入力したことに応じて、設備10の状態を評価した評価指標を取得する。例えば、コンピュータに実装されてよい指標取得部610は、ステップS1420において異常ラベルが付された状態データSを、ネットワークを介して評価モデル40に供給してよい。
【0104】
評価モデル40は、状態データSが入力されたことに応じて、設備10の状態を評価した評価指標Iを出力してよい。一例として、k=1の場合、評価モデル40は、状態データS0が入力されたことに応じて、試行操作A0にしたがって制御対象15が制御される前の設備10の状態を評価した評価指標I1を出力してよい。また、評価モデル40は、状態データS1が入力されたことに応じて、試行操作A0にしたがって制御対象15が制御された後の設備10の状態を評価した評価指標I1を出力してよい。これにより、評価モデル40は、試行操作A0にしたがって制御対象15が制御される前後における評価指標I0およびI1を出力してよい。そして、指標取得部610は、評価モデル40から出力された評価指標I0およびI1を、ネットワークを介して取得してよい。
【0105】
同様に、k=2の場合、評価モデル40は、状態データS2が入力されたことに応じて、試行操作A1にしたがって制御対象15が制御された後の設備10の状態を評価した評価指標I2を出力してよい。そして、指標取得部610は、評価モデル40から出力された評価指標I2を、ネットワークを介して取得してよい。指標取得部610は、例えばこのようにして、状態データSを評価モデル40に入力したことに応じて、設備10の状態を評価した評価指標Iを取得する。指標取得部610は、取得した評価指標Iを、評価部170へ供給する。
【0106】
ステップS1470において、コンピュータは、評価指標の変化に基づいて試行操作を評価する。例えば、コンピュータに実装されてよい評価部170は、ステップS1465において取得された評価指標Iの変化に基づいて試行操作Aを評価してよい。
【0107】
一例として、k=1の場合、評価部170は、評価指標I0-評価指標I1により差分i01を算出してよい。差分i01が0より小さい場合、すなわち、評価指標I0よりも評価指標I1の方が評価が高い場合、試行操作A0により設備10の状態が改善したことを意味している。この場合、評価部170は、試行操作A0に対して0より大きい評価値を与えてよい。この際、評価部170は、差分i01の絶対値が大きいほど値が大きくなるように評価値を与えてよい。
【0108】
差分i01が0の場合、すなわち、評価指標I0と評価指標I1とが同じである場合、試行操作A0により設備10の状態が変化しなかったことを意味している。この場合、評価部170は、試行操作A0に対して0の評価値を与えてよい。
【0109】
差分i01が0より大きい場合、すなわち、評価指標I0よりも評価指標I1の方が評価が低い場合、試行操作A0により設備10の状態が悪化したことを意味している。この場合、評価部170は、試行操作A0に対して0より小さい評価値を与えてよい。この際、評価部170は、差分d01の絶対値が大きいほど値が小さくなるように評価値を与えてよい。
【0110】
評価部170は、例えばこのようにして、評価指標Iの変化に基づいて試行操作Aを評価してよい。評価部170は、評価された結果を探索部180へ供給する。そして、探索部180は、例えばこのような評価結果に基づいて復帰操作を探索してよい。
【0111】
上述のとおり、設備10を異常から正常に復帰させるにあたって目指すべき目標を設定するには様々な手法が考えられ、いずれの手法により目的データを決定するのが最適であるか不明な場合があり得る。これに対して、本変形例に係る装置1000は、評価モデル40と協働して試行操作を評価した結果に基づいて復帰操作を探索する。これにより、本変形例に係る装置1000によれば、設備10を異常から正常に復帰させるにあたって目標データ決定部130により特定の目標データを決定してその目標データに近付けるように復帰操作を決定するのに代えて、評価モデル40を用いて得られる評価指標をより良くするように復帰操作を探索することができる。
【0112】
特に、評価指標を出力する評価モデル40が、操業モデルの強化学習の際に用いた評価モデルと同一である場合、本変形例に係る装置1000によれば、AI制御下における操作と矛盾のない、または、矛盾の少ない操作を復帰操作として探索することができる。
【0113】
一方、設備10に異常が生じた場合、その原因がAI制御に用いられる操業モデルや評価モデルにある(例えば、未学習、過学習、または、ラベリングミス等)ことも考えられる。したがって、評価指標を出力する評価モデル40が、操業モデルの強化学習の際に用いた評価モデルと異なる場合、本変形例に係る装置1000によれば、AI制御下における操作と切り離した独立した操作を復帰操作として探索することができる。
【0114】
図8は、本実施形態の変形例に係る装置1000が含まれてよい制御システム1のブロック図における他の例を示す。本図においては、図5または図6と同じ機能および構成を有する部材に対して同じ符号を付すとともに、以下相違点を除き説明を省略する。ここまで、評価モデル40が装置1000の外部に記憶される場合を一例として示した。しかしながら、評価モデル40は、装置1000の内部に記憶されてもよい。本図において、装置1000は、評価モデル40を更に備える。
【0115】
このように、本変形例に係る装置1000は、評価モデル40を更に備えてよい。これにより、本変形例に係る装置1000によれば、復帰操作を探索する機能と評価モデル40を記憶する機能とを一つの装置により実現することができる。したがって、本変形例に係る装置1000によれば、評価指標を取得するにあたり、外部と通信する必要がないため、通信コストや時間を削減することができるとともに、外部への情報漏洩を防ぐことができる。
【0116】
本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。
【0117】
コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0118】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。
【0119】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0120】
図9は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ9900の例を示す。コンピュータ9900にインストールされたプログラムは、コンピュータ9900に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ9900に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ9900に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU9912によって実行されてよい。
【0121】
本実施形態によるコンピュータ9900は、CPU9912、RAM9914、グラフィックコントローラ9916、およびディスプレイデバイス9918を含み、それらはホストコントローラ9910によって相互に接続されている。コンピュータ9900はまた、通信インターフェイス9922、ハードディスクドライブ9924、DVDドライブ9926、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ9920を介してホストコントローラ9910に接続されている。コンピュータはまた、ROM9930およびキーボード9942のようなレガシの入/出力ユニットを含み、それらは入/出力チップ9940を介して入/出力コントローラ9920に接続されている。
【0122】
CPU9912は、ROM9930およびRAM9914内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ9916は、RAM9914内に提供されるフレームバッファ等またはそれ自体の中にCPU9912によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス9918上に表示されるようにする。
【0123】
通信インターフェイス9922は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ9924は、コンピュータ9900内のCPU9912によって使用されるプログラムおよびデータを格納する。DVDドライブ9926は、プログラムまたはデータをDVD-ROM9901から読み取り、ハードディスクドライブ9924にRAM9914を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。
【0124】
ROM9930はその中に、アクティブ化時にコンピュータ9900によって実行されるブートプログラム等、および/またはコンピュータ9900のハードウェアに依存するプログラムを格納する。入/出力チップ9940はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ9920に接続してよい。
【0125】
プログラムが、DVD-ROM9901またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ9924、RAM9914、またはROM9930にインストールされ、CPU9912によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ9900に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ9900の使用に従い情報の操作または処理を実現することによって構成されてよい。
【0126】
例えば、通信がコンピュータ9900および外部デバイス間で実行される場合、CPU9912は、RAM9914にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インターフェイス9922に対し、通信処理を命令してよい。通信インターフェイス9922は、CPU9912の制御下、RAM9914、ハードディスクドライブ9924、DVD-ROM9901、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。
【0127】
また、CPU9912は、ハードディスクドライブ9924、DVDドライブ9926(DVD-ROM9901)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM9914に読み取られるようにし、RAM9914上のデータに対し様々なタイプの処理を実行してよい。CPU9912は次に、処理されたデータを外部記録媒体にライトバックする。
【0128】
様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU9912は、RAM9914から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM9914に対しライトバックする。また、CPU9912は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU9912は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0129】
上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ9900上またはコンピュータ9900近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ9900に提供する。
【0130】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0131】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0132】
10 設備
15 制御対象
20 制御装置
40 評価モデル
1000 装置
110 状態データ取得部
120 検知部
130 目標データ決定部
170 評価部
180 探索部
190 警告部
510 制御部
610 指標取得部
9900 コンピュータ
9901 DVD-ROM
9910 ホストコントローラ
9912 CPU
9914 RAM
9916 グラフィックコントローラ
9918 ディスプレイデバイス
9920 入/出力コントローラ
9922 通信インターフェイス
9924 ハードディスクドライブ
9926 DVDドライブ
9930 ROM
9940 入/出力チップ
9942 キーボード
図1
図2
図3
図4
図5
図6
図7
図8
図9