JP2022143341A - コントローラ、制御方法及び制御プログラム - Google Patents

コントローラ、制御方法及び制御プログラム Download PDF

Info

Publication number
JP2022143341A
JP2022143341A JP2021043802A JP2021043802A JP2022143341A JP 2022143341 A JP2022143341 A JP 2022143341A JP 2021043802 A JP2021043802 A JP 2021043802A JP 2021043802 A JP2021043802 A JP 2021043802A JP 2022143341 A JP2022143341 A JP 2022143341A
Authority
JP
Japan
Prior art keywords
controlled object
process data
manipulated variable
actual
controller
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.)
Granted
Application number
JP2021043802A
Other languages
English (en)
Other versions
JP7409343B2 (ja
Inventor
琢 劉
Taku Ryu
宏明 鹿子木
Hiroaki Kaneki
豪 ▲高▼見
Go Takami
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2021043802A priority Critical patent/JP7409343B2/ja
Priority to US17/679,632 priority patent/US20220299950A1/en
Priority to EP22158515.1A priority patent/EP4060431A1/en
Priority to CN202210177065.8A priority patent/CN115113520A/zh
Publication of JP2022143341A publication Critical patent/JP2022143341A/ja
Application granted granted Critical
Publication of JP7409343B2 publication Critical patent/JP7409343B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33027Artificial neural network controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39271Ann artificial neural network, ffw-nn, feedforward neural network

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

Figure 2022143341000001
【課題】学習済みモデルの汎用性、実用性を向上させる。
【解決手段】コントローラは、実際の制御対象のプロセスデータを取得する取得部と、実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、取得部によって取得されたプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、実際の制御対象の操作量を算出する算出部と、を備え、学習済みモデルは、特定の制御対象のプロセスデータが入力されると、特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、パラメータは、実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む。
【選択図】図2

Description

本発明は、コントローラ、制御方法及び制御プログラムに関する。
学習済みモデルを用いるコントローラが提案されている(例えば特許文献1を参照)。
特開2018-202564号公報
例えばプロセス制御に用いる学習済みモデルは、特定の制御対象及び特定の目標設定値の条件のもとで学習される。このような学習済みモデルは、条件が異なると適切な制御が行えなくなるので、汎用性、実用性を欠く。
本発明は、学習済みモデルの汎用性、実用性を向上させることを目的とする。
一側面に係るコントローラは、実際の制御対象のプロセスデータを取得する取得部と、実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、取得部によって取得されたプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、実際の制御対象の操作量を算出する算出部と、を備え、学習済みモデルは、特定の制御対象のプロセスデータが入力されると、特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、パラメータは、実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む。
一側面に係る制御方法は、実際の制御対象のプロセスデータを取得することと、実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、取得したプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、実際の制御対象の操作量を算出することと、を含み、学習済みモデルは、特定の制御対象のプロセスデータが入力されると、特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、パラメータは、実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む。
一側面に係る制御プログラムは、コンピュータに、実際の制御対象のプロセスデータを取得する処理と、実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、取得したプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、実際の制御対象の操作量を算出する処理と、を実行させる制御プログラムであって、学習済みモデルは、特定の制御対象のプロセスデータが入力されると、特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、パラメータは、実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む。
本発明によれば、学習済みモデルの汎用性、実用性を向上させることが可能になる。
実施形態に係るコントローラの概略構成の例を示す図である。 学習済みモデルの学習の例を模式的に示す図である。 学習済みモデルの概略構成の例を模式的に示す図である。 操作変更量の決定の例を示す図である。 AIコントローラの概略構成の例を示す図である。 写像関数による写像の例を模式的に示す図である。 コントローラにおいて実行される処理の例を示すフローチャートである。 変形例に係るコントローラの概略構成の例を示す図である。 コントローラのハードウェア構成の例を示す図である。
以下、図面を参照しつつ実施形態について説明する。同一の要素には同一の符号を付し、重複する説明は適宜省略する。
図1は、実施形態に係るコントローラの概略構成の例を示す図である。コントローラ1は、制御対象9を制御する。制御の例は、プラントのプロセス制御等であり、その場合、プロセス制御に関するさまざまな制御対象が制御対象9となりうる。例示されるコントローラ1は、学習済みモデル2と、AIコントローラ3とを含む。
コントローラ1は、制御対象9のプロセスデータXを取得し、プロセスデータXを目標設定値Nに近づけるような操作量MVを算出する。算出された操作量MVが制御対象9に与えられ、制御対象9が制御される。
プロセスデータX及び操作量MVのいくつかの例について述べる。例えば、制御対象9が水槽等の場合、プロセスデータXは、液面水位等であってよい。タンク内の液体の液位(水位)、パイプを流れる流体の流量等が、プロセスデータXであってもよい。操作量MVは、バルブの開度、回転量、移動量等であってよい。制御対象9が炉等の場合、プロセスデータXは、炉の(例えば全体の)温度等であってよい。操作量MVは、電熱線への電流値等であってよい。
なお、操作量MVは、操作量の絶対値であってもよいし、現時点での操作量に対する変更量(操作変更量)であってもよい。学習済みモデル2について、図2~図4も参照して説明する。
図2は、学習済みモデルの学習の例を模式的に示す図である。学習済みモデル2は、特定の制御対象9aのプロセスデータが入力されると、制御対象9aのプロセスデータを特定の目標設定値Naに近づけるための操作量を出力するように学習された(生成された)AI制御モデルである。なお、図中のパラメータPaは、制御対象9aのパラメータである。パラメータについては後に改めて説明する。
図3は、学習済みモデルの概略構成の例を模式的に示す図である。学習済みモデル2には、現在のプロセス状態に対して、目標設定値Naに近づけるための制御に必要な制御対象9aの操作量を決定するポリシーが保存されている。具体的に、学習済みモデル2は、複数のサンプルデータを保持している。この例では、複数のサンプルデータの各々は、「特徴データ」と、「操作変更量」と、「重み」とを対応付けて記述する。
「特徴データ」は、制御対象9aのプロセスの状態(例えば、水位、バルブ開度等)を示す。1つのサンプルデータが複数の特徴データを含んでよく、図ではそれらが「State_1」及び「State_2」等として模式的に示される。「操作変更量」(Action)は、その時点のプロセスの状態に応じて行う制御対象9aへの操作変更量である。「重み」(Weight)は、特徴データと操作変更量との組み合わせに対する評価を表す。
上述のような学習済みモデル2の生成には、KDPP(Kernel Dynamic Policy Programming)等の既知の強化学習アルゴリズムが用いられてよい。学習済みモデル2を用いることで、現在のプロセス状態に対する最適な操作変更量が決定される。具体例について、図4を参照して説明する。
図4は、操作変更量の決定の例を示す図である。特徴データのうちのState_1は、タンクの水位であり、その値は20である。State2_は、バルブの開度であり、その値は40である。対応する操作変更量として、-3、-1、0、1及び3が、選択肢として存在する。選択肢ごと(行ごと)に、例えば上述の図3に示される各サンプルデータ(重みの列は除く)との間でカーネル計算を行い、重みを乗算し、加算することで、選択肢として与えられた操作変更量それぞれの評価値が求められる。もっとも評価値の高い操作変更量が、次の操作変更量として決定される。
図1に戻り、AIコントローラ3は、上述の学習済みモデル2を用いて、操作量MVを算出する。AIコントローラ3には、目標設定値Nの他に、パラメータPも与えられる。後述の原理により、AIコントローラ3は、さまざまな制御対象9及び目標設定値Nの組み合わせに対しても、同じ学習済みモデル2を用いて操作量MVを算出する。例えば、制御対象9が制御対象9aと異なっている場合でも、その制御対象9の操作量MVが学習済みモデル2を用いて算出される。制御対象9は制御対象9aと同じあるが目標設定値Nが目標設定値Naと異なっている場合でも、その制御対象9の操作量MVが学習済みモデル2を用いて算出される。制御対象9が制御対象9aと異なり、また、目標設定値Nが目標設定値Naと異なる場合であっても、その制御対象9の操作量MVが、学習済みモデル2を用いて算出される。AIコントローラ3について、図5も参照して説明する。
図5は、AIコントローラの概略構成の例を示す図である。AIコントローラ3は、取得部31と、調整部32と、算出部33と、記憶部34とを含む。先に説明した学習済みモデル2の他に、学習部21も図示される。学習部21は、学習済みモデル2の学習を行う。学習には、制御対象9aのプロセスデータ及び目標設定値Naを含む学習データが用いられる。学習部21によって学習された学習済みモデル2が、AIコントローラ3によって利用可能である。
取得部31は、制御対象9のプロセスデータXを取得する。例えば、取得部31は、制御周期Tで、制御対象9のプロセスデータXを取得する。制御周期Tは、この後で説明する調整部32によって調整される。
調整部32は、学習済みモデル2を用いて制御対象9の操作量MVを算出するために必要なさまざまな調整を行う。調整部32には、目標設定値N及びパラメータPが与えられる。
目標設定値Nは、先にも述べたように、プロセスデータXの目標値である。例えば、プロセスデータXが温度の場合には、目標設定値Nは、目標温度(50℃、100℃等)である。
パラメータPは、制御対象9の制御の特徴を表すパラメータである。例えば、パラメータPは、制御対象9の操作量と、当該操作量によって得られるプロセスデータ(制御量等とも称される)との関係を特定するためのパラメータであってよい。操作量と得られるプロセスデータとの関係(入出力特性)は、PID(Proportional Integral Differential)制御等において、伝達特性等とも称される。そのようなパラメータPの具体例は、入出力範囲、プロセスゲイン及び時定数等である。例えば、入出力範囲は、操作量及びプロセスデータの範囲を示す。プロセスゲインは、プロセスデータを操作量で除算した値を示す。時定数は、一次遅れ時定数等を示す。先に説明した学習済みモデル2の学習時の制御対象9aのパラメータPa(図2)についても同様である。
目標設定値N及びパラメータPは、制御対象9によってさまざまに異なりうる。従って、調整部32には、実際の制御対象9に対応した(制御対象別の)目標設定値N及びパラメータPが与えられる。なお、ここでの制御対象別の目標設定値Nは、同じ制御対象9に対する異なる目標設定値も含む意味である。これらの目標設定値N及びパラメータPは、ユーザ操作によって与えられてもよいし、例えば、制御対象9ごとの目標設定値N及びパラメータPの少なくとも一方を記述したデータテーブル等が参照され、自動的に与えられてもよい。
調整部32による具体的な調整について説明する。具体的な調整に関する機能ブロックとして、調整部32は、周期調整部321と、関数調整部322とを含む。
周期調整部321は、与えられたパラメータPに含まれる時定数に基づいて、制御周期Tを調整(決定、更新等)する。制御周期Tは、先に述べたように、取得部31によるプロセスデータXの取得周期であり、また、後述の算出部33による操作量MVの算出周期にもなりうる。時定数に基づく制御周期TでプロセスデータXが取得され、操作量MVが算出され、制御対象9が制御されることにより、制御対象9の応答速度等に応じた適切な制御が行われる。例えば、周期調整部321は、時定数が小さくなるにつれて制御周期Tが短くなるように、制御周期Tを調整してよい。時定数が小さいほど、細かい間隔での制御が求められるからである。制御周期Tは、時定数の大きさに比例するように調整されてよい。
関数調整部322は、与えられた目標設定値N及びパラメータPの少なくとも一方に基づいて、写像関数fを調整する。写像関数fは、取得部31によって取得されたプロセスデータXを特徴データSに写像(変換)する。
図6は、写像関数による写像の例を模式的に示す図である。プロセスデータXが、「x1」、「x2」及び「x3」等として模式的に示される。特徴データSが、「s1」、「s2」及び「s3」等として模式的に示される。この例では、プロセスデータx1が特徴データs1に、プロセスデータx2が特徴データs2に、プロセスデータx3が特徴データs3にそれぞれ写像される(変換される)。なお、写像は、このような1対1の単射に限らず、全射であってもよい。
例えば、写像関数fによる写像が線形写像であり、写像関数fが係数ベクトルAを用いてf(x)=Axとして表されるとする。プロセスデータXが(x1、x2)の場合、特徴データS(s1、s2)は、以下のように求められる。下記の式中の係数a1~係数a4は、係数ベクトルAの成分を示す。
Figure 2022143341000002
上記の係数ベクトルAが、関数調整部322によって調整される。具体的に、関数調整部322は、与えられた目標設定値N及びパラメータPの少なくとも一方と、目標設定値Na及びパラメータPa(学習済みモデル2の学習時の目標設定値及びパラメータ)の少なくとも一方とに基づいて、係数ベクトルAを調整する。
仮に、目標設定値N及びパラメータPと、目標設定値Na及びパラメータPaとが同じであれば、係数ベクトルAは、以下のように調整される。
Figure 2022143341000003
上記の場合には、特徴データSは、プロセスデータXと同じである。ただし、実際には、目標設定値N及びパラメータPと目標設定値Na及びパラメータPaとが異なる場合が少なくなく、特徴データSは、プロセスデータXとは異なるデータになる。
関数調整部322は、目標設定値N及びパラメータPの少なくとも一方と、目標設定値Na及びパラメータPaの少なくとも一方との比較結果(例えば比率等)に基づいて、係数ベクトルAを調整する。例えば、特定の制御対象9aの特定の目標設定値Naが制御対象9の目標設定値Nよりも小さい場合、関数調整部322は、特徴データSがプロセスデータXよりも小さくなるように、係数ベクトルAを調整する。特定の制御対象9aの特定の目標設定値Naと制御対象9の目標設定値Nとの比率が1:2であれば、調整部32は、特徴データSがプロセスデータXの0.5倍(1/2)になるように、係数ベクトルAを調整してよい。以下のような係数ベクトルAが得られる。
Figure 2022143341000004
同様の趣旨で、関数調整部322は、パラメータPと、パラメータPaとが異なる場合にも、それらの比較結果(比率等)に基づいて、係数ベクトルAを調整する。例えば、パラメータPに含まれるプロセスゲインとパラメータPaに含まれるプロセスゲインとの比率に基づいたり、制御対象9に含まれる入出力範囲とパラメータPaに含まれる入出力範囲との比率に基づいたりして、係数ベクトルAが調整される。
なお、係数ベクトルAの調整は、ユーザ操作によって手動で行われてもよい。学習済みモデル2のハイパーパラメータが手動で調整されてもよい。
例えば以上のようにして、関数調整部322は、写像関数fを調整する。関数調整部322は、逆写像関数f-1も調整する。逆写像関数f-1は、写像関数fの逆関数であり、上述の係数ベクトルAの逆行列等を用いて調整される。
図5に戻り、算出部33は、取得部31によって取得されたプロセスデータXと、学習済みモデル2とを用いて、操作量MVを算出する。算出に関する機能ブロックとして、算出部33は、写像部331と、実行部332と、逆写像部333とを含む。
写像部331は、関数調整部322によって調整された写像関数fを用いて、取得部31によって取得されたプロセスデータXを、特徴データSに写像(変換)する。
実行部332は、写像部331による写像によって得られた特徴データSを、学習済みモデル2に入力する。学習済みモデル2は、例えば先に図2及び図3を参照して説明したように、入力された特徴データSに対応する対応する操作量(操作変更量)を選択肢として与える。それらは重みと対応付けられており、乗算、加算等によって、評価値が求められる。もっとも評価値の高い操作量が、特徴データSMVとして決定される。なお、特徴データSMVの決定に必要な計算(乗算、加算等)は、学習済みモデル2において実行されてもよいし、実行部332によって実行されてもよい。いずれにしても、実行部332は、学習済みモデル2から特徴データSMVを取得する。
逆写像部333は、関数調整部322によって調整された逆写像関数f-1を用いて、実行部332によって取得された特徴データSMVを、操作量MVに逆写像(逆変換)する。
例えば以上のようにして、算出部33は、操作量MVを算出する。算出部33は、算出した操作量MVを制御対象9に与える(出力する)ことによって、制御対象9を制御する。
記憶部34は、AIコントローラ3において実行される処理に必要なさまざまな情報を記憶する。記憶される情報として、学習時情報34a及び制御プログラム34bが例示される。学習時情報34aは、学習済みモデル2の学習時の情報であり、先に図2を参照して説明した目標設定値Na及びパラメータPaを含む。制御プログラム34bは、コンピュータにAIコントローラ3の処理を実行させるプログラムである。
なお、記憶部34は、AIコントローラ3だけでなく、コントローラ1の記憶部として機能してもよい。制御プログラム34bは、コンピュータにコントローラ1の処理を実行させるためのプログラムであってもよい。
図7は、コントローラにおいて実行される処理(制御方法)の例を示すフローチャートである。これまでの説明と重複する内容については適宜省略する。
ステップS101において、パラメータPに基づいて制御周期Tが調整される。周期調整部321が、与えられたパラメータPに含まれる時定数に基づいて制御周期Tを調整する。
ステップS102において、目標設定値N、パラメータPに基づいて写像関数f等が調整される。関数調整部322が、与えられた目標設定値N及びパラメータPの少なくとも一方に基づいて、写像関数f及び逆写像関数f-1を調整する。
ステップS103では、先のステップS101で調整された制御周期TでステップS104~ステップS107の処理を繰り返し実行するために、処理が分岐する。制御周期Tの間隔で(ステップS103:Yes)、ステップS104に処理が進められる。それ以外のタイミングでは(ステップS103:No)、処理は進められない。この判断は、例えば取得部31によって行われてよい。
ステップS104において、プロセスデータXが取得される。取得部31が、制御対象9のプロセスデータXを取得する。
ステップS105において、写像関数fを用いてプロセスデータXが写像され、特徴データSが取得される。算出部33の写像部331が、先のステップS102で調整された写像関数fを用いて、先のステップS104で取得されたプロセスデータXを特徴データSに写像(変換)する。
ステップS106において、特徴データSが学習済みモデル2に入力され、特徴データSMVが取得される。算出部33の実行部332が、先のステップS105で取得された特徴データSを、学習済みモデル2に入力する。もっとも評価値の高い操作量が特徴データSMVとして決定され、取得される。
ステップS107において、逆写像関数f-1を用いて特徴データSMVが逆写像され、操作量MVが取得される。算出部33の逆写像部333は、先のステップS102で調整された逆写像関数f-1を用いて、先のステップS106で取得された特徴データSMVを逆写像(逆変換)し、操作量MVを取得する。
例えば以上のようにして、学習済みモデル2を用いて、制御対象9の操作量MVが算出される。操作量MVが制御対象9に与えられ(出力され)、制御対象9が制御される。なお、上記のステップS101及びステップS102の処理は、逆の順序で実行されてもよいし、同時に(並列に)実行されてもよい。
以上説明したコントローラ1によれば、特定の制御対象9aに関して学習された学習済みモデル2を用いて、実際の制御対象9が制御対象9aと異なっていたり、制御対象9の目標設定値Nが制御対象9aの目標設定値Naと異なっていたりする場合でも、その制御対象9の操作量MVを算出できるようになる。実際の制御対象9の目標設定値N及びパラメータPは、設備更新、生産計画の変更等によってさまざまに異なるが、いずれの制御対象9及び目標設定値Nの場合にも、同じ学習済みモデル2を用いることができる。従って、学習済みモデル2の汎用性、実用性を向上させることができる。
以上、本開示の一実施形態について説明した。開示される技術は、上記の実施形態に限られない。いくつかの変形例について説明する。
一実施形態において、AIコントローラが、PIDコントローラに組み合わされて用いられてもよい。そのようなハイブリッド型のコントローラの例について、図7を参照して説明する。
図8は、変形例に係るコントローラの概略構成の例を示す図である。例示されるコントローラ1Aは、コントローラ1(図1)と比較して、PIDコントローラ4及び切替部5をさらに含む点において相違する。
PIDコントローラ4も、制御対象9の操作量MVを算出する。具体的に、PIDコントローラ4は、プロセスデータXと目標設定値Nとの差を0に近づけるような操作量MVを算出する。算出は、例えば下記の式に基づいて行われる。
Figure 2022143341000005
上記の式において、e(t)及びu(t)は、プロセスデータX(制御量)及び操作量MVにそれぞれ対応する。Kp、Ki及びKdは、Pゲイン、Iゲイン及びDゲイン(PIDゲイン)である。Kp、Ki及びKdは、定数であってよい。これらは、経験値若しくは理論値及び現場での合わせ込み等によって決定されてよい。
上述のようなPIDコントローラ4をも備えるコントローラ1Aにおいては、AIコントローラ3を用いて制御対象9を制御する第1の制御モードと、PIDコントローラ4を用いて制御対象9を制御する第2の制御モードとが利用可能である。
切替部5は、第1の制御モード及び第2の制御モードを切り替える。例えば、切替部5は、第1の制御モードに切り替えることを示す信号をAIコントローラ3及びPIDコントローラ4に出力する。これによって、AIコントローラ3(の算出部33)によって算出された操作量MVを制御対象9に与える第1の制御モードに、制御モードが切り替わる。第1の制御モードにおいては、PIDコントローラ4は停止していてもよい。切替部5は、第2の制御モードに切り替えることを示す信号をAIコントローラ3及びPIDコントローラ4に出力する。これによって、PIDコントローラ4によって算出された操作量MVを制御対象9に与える第2の制御モードに、制御モードが切り替わる。第2の制御モードにおいては、AIコントローラ3は停止していてもよい。切替部5による第1の制御モード及び第2の制御モードの切り替えは、自動的に行われてもよいし、ユーザ操作等に応じて手動で行われてもよい。
PIDコントローラ4を用いる場合、プロセスデータXを目標設定値Nに近づける制御は行えるものの、立ち上がり時のオーバーシュート及びアンダーシュートの少なくとも一方が発生することが少なくない。例えば温度制御でオーバーシュートが発生すると、温度が下がるのに時間がかかり、その分、生産開始が遅れるといった問題が生じる。一方で、オーバーシュートが発生しないようにPIDゲインを調整すると、プロセスデータXを目標設定値Nに近づけるまでに時間がかかる。最適なPIDゲイン調整には、多くの時間と手間が必要になる。条件変化等によっては、再びPIDゲイン調整(再チューニング)が必要になることもある。
一方で、AIコントローラ3は、上述のようなオーバーシュート等の発生を抑制しつつ早く目標設定値に到達するように学習された学習済みモデル2を用いることで、上述のPIDコントローラ4の欠点が改善された制御を行うことができる。
例えば、切替部5は、立ち上がり時には、制御モードを第1の制御モード(AIコントローラ3による制御)に切り替えてよい。水位、炉温度の立ち上げ時は、PIDコントローラ4では最適な制御が難しく、AIコントローラ3を用いた方がよい場合も少なくないからである。一方で、切替部5は、目標設定値N付近では、制御モードを第2の制御モード(PIDコントローラ4による制御)に切り替えてよい。PIDコントローラ4による汎用的な制御で足りるからである。これにより、例えば上述のオーバーシュート等を抑制しながら、プロセスデータXを素早く目標設定値N付近で安定させることができる。
コントローラ1Aによれば、例えば学習済みモデル2及びAIコントローラ3だけを用いる場合よりも、また、PIDコントローラ4を単独で用いる場合よりも、制御対象9の制御精度を向上できる可能性が高まる。
一実施形態において、学習済みモデル2は、AIコントローラ3の内部に設けられてよい。例えば、学習済みモデル2は、AIコントローラ3の記憶部34に記憶されてよい。学習部21も、AIコントローラ3の内部に設けられてよい。例えば、AIコントローラ3において、或る制御対象及び或る目標設定値の条件のもとでの学習によって生成された学習済みモデル2を、その制御対象と同じ制御対象ではあるが目標設定が異なるという条件での制御に用いることができる。
一実施形態において、コントローラ1(又はコントローラ1A)による処理は、クラウドコンピューティング等によって実現されてもよい。例えば、学習済みモデル2、AIコントローラ3の取得部31、調整部32、算出部33及び記憶部34の機能の一部又は全部が、コントローラ1の外部の装置に設けられてよい。コントローラ1は、そのような外部の装置と通信することによって、これまで説明した処理を実行してよい。
上記実施形態では、写像関数fを用いてプロセスデータXを変換する例について説明した。ただし、写像関数fに限らず、プロセスデータXを変換することが可能なあらゆる手法が用いられてよい。
上記実施形態では、パラメータPとして、時定数、入出力範囲及びプロセスゲインを例に挙げて説明した。ただし、これらに限らず、制御対象9の制御の特徴を表すことの可能なあらゆるパラメータが、パラメータPとして用いられてよい。
上記実施形態では、学習済みモデル2が、複数のサンプルデータを保持する構成を備える例について説明した。ただし、特定の制御対象9aのプロセスデータを特定の目標設定値Naに近づけるための操作量を出力することが可能なあらゆる構成を備える学習済みモデルが、学習済みモデル2として用いられてよい。
図9は、コントローラのハードウェア構成の例を示す図である。例示されるハードウェア構成を備えるコンピュータ等が、これまで説明したコントローラ1(又はコントローラ1A)として機能する。この例ではコントローラ1は、バス等で相互に接続される通信装置1a、表示装置1b、HDD(Hard Disk Drive)1c、メモリ1d及びプロセッサ1eを備える。
通信装置1aは、ネットワークインタフェースカードなどであり、他の装置との通信を可能にする。表示装置100bは、例えばタッチパネルやディスプレイなどである。HDD1cは、記憶部34として機能し、制御プログラム34b等を記憶する。
プロセッサ1eは、制御プログラム34bをHDD1c等から読み出してメモリ1dに展開することで、コンピュータを、コントローラ1として機能させる。機能は、これまで説明したような取得部31の機能、調整部32の機能及び算出部33の機能を含む。
制御プログラム34bは、インターネットなどのネットワークを介して配布することができる。また、制御プログラム34bは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
以上説明した技術は、例えば次のように特定される。図1~図7等を参照して説明したように、コントローラ1は、取得部31と、算出部33と、を備える。取得部31は、実際の制御対象9のプロセスデータXを取得する。算出部33は、実際の制御対象9の目標設定値N及びパラメータP(例えば入出力範囲及びプロセスゲイン等)の少なくとも一方に基づいて、取得部31によって取得されたプロセスデータXを変換し、変換後のプロセスデータ(特徴データS)と、学習済みモデル2とを用いて、実際の制御対象9の操作量MVを算出する。学習済みモデル2は、特定の制御対象9aのプロセスデータが入力されると、特定の制御対象9aのプロセスデータを特定の目標設定値Naに近づけるための操作量を出力する。パラメータPは、実際の制御対象9の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む。コントローラ1は、学習済みモデル2の学習を行う学習部21を備えてもよい。
上記のコントローラ1によれば、特定の制御対象9aに関して学習された学習済みモデル2を用いて、実際の制御対象9が制御対象9aと異なっていたり、制御対象9の目標設定値Nが制御対象9aの目標設定値Naと異なっていたりする場合でも、その制御対象9の操作量MVを算出できるようになる。実際の制御対象9の目標設定値N及びパラメータPは、設備更新、生産計画の変更等によってさまざまに異なるが、いずれの制御対象9及び目標設定値Nの場合にも、同じ学習済みモデル2を用いることができる。従って、学習済みモデル2の汎用性、実用性を向上させることができる。
図5等を参照して説明したように、コントローラ1は、実際の制御対象9の目標設定値N及びパラメータPの少なくとも一方と、特定の制御対象9aの特定の目標設定値Na及び特定の制御対象9aのパラメータPaの少なくとも一方との比較結果(例えば比率等)に基づいて、写像関数fを調整する関数調整部322を備え、算出部33は、関数調整部322によって調整された写像関数fを用いて、取得部31によって取得されたプロセスデータXを変換してよい。例えばこのような写像関数fを用いることにより、プロセスデータXを適切に変換することができる。算出部33は、変換後のプロセスデータ(特徴データS)と学習済みモデル2とを用いて算出したデータ(特徴データSMV)に対して上述の変換とは逆の逆変換(逆写像関数f-1による逆写像)を行うことにより、実際の制御対象9の操作量MVを算出してよい。
パラメータPは、時定数を含み、コントローラ1は、パラメータPに含まれる時定数に基づいて制御周期Tを調整する周期調整部321を備え、取得部31は、周期調整部321によって調整された制御周期Tで、実際の制御対象9のプロセスデータを取得してよい。これにより、適切な制御周期Tで制御対象9を制御することができる。
図8等を参照して説明したように、コントローラ1は、実際の制御対象9の操作量MVを算出するPIDコントローラ4と、(AIコントローラ3の)算出部33によって算出された操作量MVを実際の制御対象9に与える第1の制御モード及びPIDコントローラ4によって算出された操作量MVを実際の制御対象9に与える第2の制御モードを切り替える切替部5と、を備えてよい。これにより、例えばAIコントローラ3又はPIDコントローラ4だけを用いる場合よりも、制御対象9の制御精度を向上できる可能性が高まる。
図7等を参照して説明した制御方法も、実施形態の1つである。制御方法は、実際の制御対象9のプロセスデータXを取得すること(ステップS104)と、実際の制御対象9の目標設定値N及びパラメータPの少なくとも一方に基づいて、取得したプロセスデータXを変換し、変換後のプロセスデータ(特徴データS)と、学習済みモデル2とを用いて、実際の制御対象9の操作量MVを算出すること(ステップS105~ステップS107)と、を含む。このような制御方法によっても、これまで説明したように、学習済みモデル2の汎用性、実用性を向上させることができる。
図5及び図8等を参照して説明した制御プログラム34bも、実施形態の1つである。制御プログラム34bは、コンピュータに、実際の制御対象9のプロセスデータXを取得する処理と、実際の制御対象9の目標設定値N及びパラメータPの少なくとも一方に基づいて、取得したプロセスデータXを変換し、変換後のプロセスデータ(特徴データS)と、学習済みモデル2とを用いて、実際の制御対象9の操作量MVを算出する処理と、を実行させる。このような制御プログラム34bによっても、これまで説明したように、学習済みモデル2の汎用性、実用性を向上させることができる。なお、図9等を参照して説明したような、制御プログラム34bが記録された記録媒体も、実施形態の1つである。
1 コントローラ
2 学習済みモデル
21 学習部
3 AIコントローラ
31 取得部
32 調整部
321 周期調整部
322 関数調整部
33 算出部
331 写像部
332 実行部
333 逆写像部
34 記憶部
34a 学習時情報
34b 制御プログラム
4 PIDコントローラ
5 切替部
9 制御対象
9a 制御対象(特定の制御対象)
A 係数ベクトル
f 写像関数
-1 逆写像関数
MV 操作量
N 目標設定値
Na 目標設定値(特定の目標設定値)
P パラメータ
Pa パラメータ(特定の制御対象のパラメータ)
S 特徴データ
MV 特徴データ(操作変更量に関する特徴データ)
T 制御周期
X プロセスデータ

Claims (10)

  1. 実際の制御対象のプロセスデータを取得する取得部と、
    前記実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、前記取得部によって取得されたプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、前記実際の制御対象の操作量を算出する算出部と、
    を備え、
    前記学習済みモデルは、特定の制御対象のプロセスデータが入力されると、前記特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、
    前記パラメータは、前記実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む、
    コントローラ。
  2. 前記実際の制御対象の目標設定値及びパラメータの少なくとも一方と、前記特定の制御対象の前記特定の目標設定値及び前記特定の制御対象のパラメータの少なくとも一方との比較結果に基づいて、写像関数を調整する関数調整部を備え、
    前記算出部は、前記関数調整部によって調整された前記写像関数を用いて、前記取得部によって取得されたプロセスデータを変換する、
    請求項1に記載のコントローラ。
  3. 前記比較結果は、比率を含む、
    請求項2に記載のコントローラ。
  4. 前記パラメータは、入出力範囲及びプロセスゲインの少なくとも1つを含む、
    請求項1~3のいずれか1項に記載のコントローラ。
  5. 前記パラメータは、時定数を含み、
    前記コントローラは、前記パラメータに含まれる前記時定数に基づいて制御周期を調整する周期調整部を備え、
    前記取得部は、前記周期調整部によって調整された制御周期で、前記実際の制御対象のプロセスデータを取得する、
    請求項1~4のいずれか1項に記載のコントローラ。
  6. 前記算出部は、前記変換後のプロセスデータと前記学習済みモデルとを用いて算出したデータに対して前記変換とは逆の逆変換を行うことにより、前記実際の制御対象の操作量を算出する、
    請求項1~5のいずれか1項に記載のコントローラ。
  7. 前記実際の制御対象の操作量を算出するPIDコントローラと、
    前記算出部によって算出された操作量を前記実際の制御対象に与える第1の制御モード及び前記PIDコントローラによって算出された操作量を前記実際の制御対象に与える第2の制御モードを切り替える切替部と、
    を備える、
    請求項1~6のいずれか1項に記載のコントローラ。
  8. 前記学習済みモデルの学習を行う学習部を備える、
    請求項1~7のいずれか1項に記載のコントローラ。
  9. 実際の制御対象のプロセスデータを取得することと、
    前記実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、取得したプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、前記実際の制御対象の操作量を算出することと、
    を含み、
    前記学習済みモデルは、特定の制御対象のプロセスデータが入力されると、前記特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、
    前記パラメータは、前記実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む、
    制御方法。
  10. コンピュータに、
    実際の制御対象のプロセスデータを取得する処理と、
    前記実際の制御対象の目標設定値及びパラメータの少なくとも一方に基づいて、取得したプロセスデータを変換し、変換後のプロセスデータと、学習済みモデルとを用いて、前記実際の制御対象の操作量を算出する処理と、
    を実行させる制御プログラムであって、
    前記学習済みモデルは、特定の制御対象のプロセスデータが入力されると、前記特定の制御対象のプロセスデータを特定の目標設定値に近づけるための操作量を出力し、
    前記パラメータは、前記実際の制御対象の操作量と、当該操作量によって得られるプロセスデータとの関係を特定するためのパラメータを含む、
    制御プログラム。
JP2021043802A 2021-03-17 2021-03-17 コントローラ、制御方法及び制御プログラム Active JP7409343B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021043802A JP7409343B2 (ja) 2021-03-17 2021-03-17 コントローラ、制御方法及び制御プログラム
US17/679,632 US20220299950A1 (en) 2021-03-17 2022-02-24 Controller, control method, and computer-readable recording medium
EP22158515.1A EP4060431A1 (en) 2021-03-17 2022-02-24 Controller, control method, and control program
CN202210177065.8A CN115113520A (zh) 2021-03-17 2022-02-25 控制器、控制方法以及计算机可读取记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021043802A JP7409343B2 (ja) 2021-03-17 2021-03-17 コントローラ、制御方法及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2022143341A true JP2022143341A (ja) 2022-10-03
JP7409343B2 JP7409343B2 (ja) 2024-01-09

Family

ID=80448308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021043802A Active JP7409343B2 (ja) 2021-03-17 2021-03-17 コントローラ、制御方法及び制御プログラム

Country Status (4)

Country Link
US (1) US20220299950A1 (ja)
EP (1) EP4060431A1 (ja)
JP (1) JP7409343B2 (ja)
CN (1) CN115113520A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04602A (ja) * 1990-04-18 1992-01-06 Gijutsu Kenkyu Kumiai Kokusai Fuajii Kogaku Kenkyusho 適応型ファジィ制御方法
JPH06262234A (ja) * 1993-03-12 1994-09-20 Hitachi Ltd プラント制御装置及び方法
JP2001188602A (ja) * 1999-12-28 2001-07-10 Yamatake Corp 排気ガス制御システム
WO2018179191A1 (ja) * 2017-03-29 2018-10-04 株式会社日立製作所 制御装置及び制御システム
JP6833133B1 (ja) * 2020-04-20 2021-02-24 三菱電機株式会社 制御装置、制御システム、制御方法及びプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5570282A (en) * 1994-11-01 1996-10-29 The Foxboro Company Multivariable nonlinear process controller
JP2008503012A (ja) * 2004-06-12 2008-01-31 フィッシャー−ローズマウント システムズ, インコーポレイテッド 制御ループのプロセス利得に関連する異常状況を検出するためのシステムおよび方法
US10139840B2 (en) * 2015-09-03 2018-11-27 Horatio Quinones System, device, and method for fluid dispensing control
JP6235543B2 (ja) * 2015-09-30 2017-11-22 ファナック株式会社 加工機のサイクル加工時間を最適化する機械学習装置、モータ制御装置、加工機、および機械学習方法
JP6542839B2 (ja) 2017-06-07 2019-07-10 ファナック株式会社 制御装置及び機械学習装置
JP7229686B2 (ja) * 2017-10-06 2023-02-28 キヤノン株式会社 制御装置、リソグラフィ装置、測定装置、加工装置、平坦化装置及び物品製造方法
US10915073B2 (en) * 2017-12-15 2021-02-09 Exxonmobil Research And Engineering Company Adaptive PID controller tuning via deep reinforcement learning
US11209184B2 (en) * 2018-01-12 2021-12-28 Johnson Controls Tyco IP Holdings LLP Control system for central energy facility with distributed energy storage
JP6781191B2 (ja) * 2018-05-24 2020-11-04 ファナック株式会社 プログラマブルコントローラ及び機械学習装置
JP6608010B1 (ja) * 2018-07-25 2019-11-20 積水化学工業株式会社 制御装置、サーバ、管理システム、コンピュータプログラム、学習モデル及び制御方法
US11615609B2 (en) * 2019-07-01 2023-03-28 Axell Corporation Learning apparatus, inferring apparatus, learning method, program, and inferring method
US20210089887A1 (en) * 2019-09-24 2021-03-25 Apple Inc. Variance-Based Learning Rate Control For Training Machine-Learning Models
US11776117B2 (en) * 2020-07-22 2023-10-03 Siemens Healthcare Gmbh Machine learning from noisy labels for abnormality assessment in medical imaging
JP7226411B2 (ja) 2020-08-07 2023-02-21 株式会社安川電機 拡張モジュール、産業用機器、及び産業用機器のパラメータ又は前記産業用機器により制御される機器の内部状態の推定方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04602A (ja) * 1990-04-18 1992-01-06 Gijutsu Kenkyu Kumiai Kokusai Fuajii Kogaku Kenkyusho 適応型ファジィ制御方法
JPH06262234A (ja) * 1993-03-12 1994-09-20 Hitachi Ltd プラント制御装置及び方法
JP2001188602A (ja) * 1999-12-28 2001-07-10 Yamatake Corp 排気ガス制御システム
WO2018179191A1 (ja) * 2017-03-29 2018-10-04 株式会社日立製作所 制御装置及び制御システム
JP6833133B1 (ja) * 2020-04-20 2021-02-24 三菱電機株式会社 制御装置、制御システム、制御方法及びプログラム

Also Published As

Publication number Publication date
EP4060431A1 (en) 2022-09-21
US20220299950A1 (en) 2022-09-22
JP7409343B2 (ja) 2024-01-09
CN115113520A (zh) 2022-09-27

Similar Documents

Publication Publication Date Title
JP6774637B2 (ja) 制御装置及び制御方法
Zribi et al. A new PID neural network controller design for nonlinear processes
Mizumoto et al. Design of discrete time adaptive PID control systems with parallel feedforward compensator
JP7206874B2 (ja) 制御装置、制御方法及びプログラム
JP6380552B2 (ja) 制御装置、そのプログラム、プラント制御方法
KR101849464B1 (ko) Pid 게인 자동 튜닝 방법
Robert et al. An $ H_ {\infty} $ LPV design for sampling varying controllers: Experimentation with a T-Inverted pendulum
JP4908433B2 (ja) 制御パラメータ調整方法および制御パラメータ調整プログラム
CN111930010A (zh) 一种基于lstm网络的通用mfa控制器设计方法
JP7014330B1 (ja) 制御装置、制御方法、及びプログラム
JP2022143341A (ja) コントローラ、制御方法及び制御プログラム
JP7115654B1 (ja) 制御装置、制御方法及びプログラム
JP7283095B2 (ja) 制御装置、制御方法及びプログラム
JP7469476B2 (ja) 制御支援装置、制御システム及び制御支援方法
Wang et al. Predictor-based optimal robust guaranteed cost control for uncertain nonlinear systems with completely tracking errors constraint
Schrodt et al. On iterative closed-loop identification using affine Takagi–Sugeno models and controllers
JP7275492B2 (ja) 制御装置、制御方法及びプログラム
CN113655816A (zh) 钢包底吹氩系统流量控制方法及计算机可读存储介质
CN116149262B (zh) 一种伺服系统的跟踪控制方法及系统
Özer et al. Performance analysis of a DC-motor control system with time-delay: Smith predictor vs optimization-based controller design
JP7409345B2 (ja) 学習処理装置、制御装置、学習処理方法、制御方法、学習プログラムおよび制御プログラム
CN117193025B (zh) 加药机控制方法、装置、电子设备及存储介质
JP7484504B2 (ja) 制御装置、制御方法及びプログラム
WO2023199588A1 (ja) 制御装置、制御方法及びプログラム
JP2019523627A (ja) マルチレベルモジュラ変換器の制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220502

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230320

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231204

R150 Certificate of patent or registration of utility model

Ref document number: 7409343

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150