(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0015】
この発明を添付の図面に従い説明する。各図を通じて同符号は同一部分又は相当部分を示しており、その重複説明は適宜に簡略化又は省略する。
【0016】
実施の形態1.
図1から
図3は、この発明の実施の形態1に係るもので、
図1は設定計算システムの全体構成を説明する図、
図2は設定計算システムの学習装置の動作を説明するフロー図、
図3は設定計算システムが備える学習装置を中心とする詳細な構成を説明する図である。
【0017】
図1に示すのは、例えば圧延プラントのプロセスライン等を構成する機械設備1の設定値を計算する設定計算システム2の全体構成である。この設定計算システム2は、設定計算装置3、実測値収集装置4及び学習装置5を備えている。
【0018】
設定計算装置3には、機械設備1が動作することにより生じる物理現象を数式によりモデル化した数式モデルが予め登録されている。設定計算装置3は、この数式モデルを用いて機械設備1が動作した結果をシミュレートすることにより、機械設備1の動作した結果が目標値により近くなるように機械設備1の設定値を計算する。設定計算装置3により計算された設定値は、機械設備1へと出力される。そして、機械設備1は、設定計算システム2より計算された設定値に従って動作する。
【0019】
実測値収集装置4は、機械設備1や機械設備1が動作する環境中の物理量のうち、学習装置5における数式モデルの学習に必要な、予め定められた種類の物理量の実測値を収集するものである。機械設備1や機械設備1が設置された環境中には、前記物理量を計測するための計測器等が予め設置されている。そして、実測値収集装置4は計測器等により計測された前記物理量の実測値を収集する。
【0020】
学習装置5は、実測値収集装置4により収集された実測値に基づいて、設定計算装置3で用いられる数式モデルの学習を実施するものである。学習装置5は、数式モデル学習計算部6、実測値判定部7及び補完学習計算部8を備えている。
【0021】
数式モデル学習計算部6は、設定計算装置3で用いられるものと同じ数式モデルを用いて実績計算値を計算する。ここで、実績計算値とは、実測値収集装置4により収集された実測値を入力とした場合の数式モデルからの出力である。そして、数式モデル学習計算部6は数式モデルから計算した実績計算値と、実測値収集装置4により収集された実測値から直接に求めた実績値とを比較し、これらの値の違いが小さくなるように数式モデルの学習項を計算する。
【0022】
実測値判定部7は、実測値収集装置4により収集された実測値が正常であるか異常であるかを判定するものである。ここで、実測値が異常である状態とは、実測値の値が正常である範囲(この範囲は計測対象毎に予め定められる)から逸脱した状態に加え、実測値そのものが存在しない欠測の状態も含まれる。
【0023】
実測値判定部7により実測値が異常であると判定された場合、学習装置5は、この異常であると判定された実測値に相当する実績計算値が存在するときには、当該実測値に代えてこの実績計算値を用いて学習項の計算を進める。
【0024】
ここで、「実測値に相当する実績計算値」について、さらに説明する。まず、前にも述べたように、数式モデルで再現しようとする物理現象が複雑なものである場合、より単純な関数を複数組み合わせることにより当該物理現象を再現する数式モデルを構成することがある。このような場合には、ある関数(以下「上流側関数」という)からの出力が、他の関数(以下「下流側関数」という)の入力となって数式モデルの計算が進められる。
【0025】
このような関係にある上流側関数と下流側関数が存在する場合、下流側関数における学習項の更新は、通常であれば、実測値収集装置4により収集された実測値を下流側関数に入力したときに下流側関数から出力される実績計算値を用いて行う。しかし、下流側関数に入力されるべき実測値が異常であった場合、下流側関数に実測値を入力することができないため、下流側関数の学習を行うことができなくなってしまう。
【0026】
そこで、上流側関数から出力された実績計算値を実測値の代わりに下流側関数に入力することで、下流側関数における学習を進める。すなわち、上でいう「実測値に相当する実績計算値」とは、数式モデルにおいて下流側関数の入力として用いられる上流側関数の実績計算値のことである。
【0027】
このように、上流側関数から出力された実績計算値を実測値の代わりに下流側関数に入力することで下流側関数における学習を進めた場合、本来であれば(すなわち、下流側関数に入力すべき正常な実測値が得られていたのであれば)、上流側関数の学習項で吸収すべきである誤差についても、下流側の学習項で吸収されることになる。そうすると、その後に下流側関数の入力に用いる実測値として正しいものが得られるようになった場合に、上流側関数と下流側関数のそれぞれでの学習を再開したときに、かえって上流側関数及び下流側関数の個々の学習項での学習精度が低下してしまうという事態に落ち入ってしまう。
【0028】
そこで、この発明に係る学習装置5には、実測値に代えて上流側関数から出力された実績計算値を入力として用いて計算された下流側関数の出力と、この出力に対応する実績値との誤差を、所定の手続きで求めた分配比でもって上流側関数及び下流側関数の双方の学習項に分配する補完学習計算部8が備えられている。
【0029】
この補完学習計算部8は、下流側関数に入力されるべき実測値が異常であると実測値判定部7により判定された場合に、下流側関数の出力と、この出力に対応する実績値との誤差をまず計算する。そして、この誤差を、所定の手続きで求めた分配比でもって上流側関数及び下流側関数の双方の学習項に分配する。
【0030】
この際の誤差の分配比を求める手続きについて説明する。まず、数式モデルの学習が進行するほど数式モデルの出力と実績値との誤差は小さくなる。したがって、数式モデルの学習が十分に進行した状態においては、学習項が更新された際の変化は小さくなる。そして、このように学習項が安定した状態においては、各関数の学習項の相対的な大きさを、それぞれの関数の大きさを目安として評価することができる。ここで、関数の大きさとは、関数への入力を基準とする当該関数からの出力の大きさのことである。
【0031】
そこで、補完学習計算部8は、上流側関数及び下流側関数のそれぞれについて、関数への入力を基準とする関数からの出力の大きさを求める。そして、こうして求めた上流側関数の大きさと下流側関数の大きさとの比を、前記分配比とする。ここで、各関数の大きさを求める際に関数に入力する値には、原則として実測値収集装置4により収集された実測値を用いる。ただし、入力しようとする実測値が異常であって利用できない場合には、実績計算値等の他の値で代用してもよい。
【0032】
このようにして求めた分配比でもって、補完学習計算部8は、前記誤差を上流側関数及び下流側関数の双方の学習項に分配する。そして、数式モデル学習計算部6は、補完学習計算部8により分配された誤差に基づいて、上流側関数及び下流側関数のそれぞれの学習項を更新する。
【0033】
次に、
図2を参照しながら、設定計算装置3及び学習装置5についてさらに詳しく説明する。なお、ここでは、説明上の便宜のため、数式モデルは上流側関数と下流側関数の2つから構成されているとし、
図2に示すように、上流側関数はさらにモデル式1a及びモデル式1bから構成され、下流側関数はさらにモデル式2a及びモデル式2bから構成されているとする。
【0034】
設定計算装置3は、機械設備1の動作した結果を表す数式モデルの出力が目標値により近くなるように機械設備1の設定値を計算する。この数式モデルの出力の計算について順を追って説明する。まず、数式モデルの上流側関数について、モデル式1aの関数をf、入力する物理量をV
0、機械設備1の設定値をX
1i(i=1,2,…)、その他の条件入力をa
1j(j=1,2,…)とすると、モデル式1aからの途中結果出力Y
1は次の(数1)式で表される。
【0036】
この途中結果出力Y
1に対して次の(数2)式で表される学習項による補正を施した結果であるY
1Zを求める。そして、求めたY
1Zをモデル式1bの入力として、次の(数3)式を計算することで、上流側関数からの出力であるV
1が得られる。ここで、(数2)式において、Hは誤差補正関数、Z
1は学習項の係数であり、(数3)式において、gはモデル式1bの関数、W
1l(l=1,2,…)はその他の変数入力、b
1k(k=1,2,…)はその他の条件入力である。
【0038】
こうして上流側関数から出力されたV
1を下流側関数へと入力して数式モデルの計算が進められる。数式モデルの下流側関数について、モデル式2aの関数をf、機械設備1の設定値をX
2i(i=1,2,…)、その他の条件入力をa
2j(j=1,2,…)とすると、モデル式2aからの途中結果出力Y
2は次の(数4)式で表される。
【0040】
そして、この途中結果出力Y
2に対して次の(数5)式で表される学習項による補正を施した結果のY
2Zをモデル式2bの入力とする次の(数6)式を計算することで、下流側関数からの出力であるV
2が得られる。このV
2が数式モデルからの最終結果出力である。ここで、(数5)式において、Hは誤差補正関数、Z
2は学習項の係数であり、(数6)式において、gはモデル式2bの関数、W
2l(l=1,2,…)はその他の変数入力、b
2k(k=1,2,…)はその他の条件入力である。
【0042】
設定計算装置3は、こうして得られた最終結果出力V
2を目標値であるV
AIMと等しくなるようなX
1i及びX
2iを求めることで、機械設備1の設定値を決定する。すなわち、次の(数7)式のように置いた上で、(数1)〜(数7)式を満たすようなX
1i及びX
2iを求める。
【0044】
学習装置5が備える数式モデル学習計算部6は、実績計算値計算部6aと学習項計算部6bとから構成されている。実績計算値計算部6aは、設定計算装置3で用いられるものと同じ数式モデルを用いて実績計算値を計算する。学習項計算部6bは、実績計算値計算部6aにより計算した実績計算値と、実測値収集装置4により収集された実測値による実績値とを比較し、これらの値の違いが小さくなるように数式モデルの学習項を計算する。
【0045】
この数式モデル学習計算部6における学習項の計算に関し、まず、実績計算値計算部6aにおける実績計算値の計算について説明する。この実績計算値の計算は、原則として上流側関数及び下流側関数で同じであるため上流側関数及び下流側関数をそれぞれ表す添字である「1」及び「2」を省略する。モデル式aの関数をf、入力する物理量の実測値をV
ACT、機械設備1の設定値の実際の値をX
ACTi(i=1,2,…)、その他の条件入力をa
j(j=1,2,…)とすると、モデル式aからの途中結果出力(実績計算値)Y
ACALは次の(数8)式で表される。
【0047】
この途中結果出力Y
ACALに対して次の(数9)式で表される学習項による補正を施した結果であるY
ACALZを求める。そして、求めたY
ACALZをモデル式bの入力として、次の(数10)式を計算することで実績計算値V
ACALが得られる。ここで、(数9)式において、Hは誤差補正関数、Zは学習項の係数であり、(数10)式において、gはモデル式bの関数、W
l(l=1,2,…)はその他の変数入力、b
k(k=1,2,…)はその他の条件入力である。
【0049】
次に、学習項計算部6bにおける学習項の計算について説明する。この学習項の計算も、実績計算値の場合と同様、原則として上流側関数及び下流側関数で同じである。ここで説明する例においては、学習項はモデル式aからの途中結果出力に対して施される。したがって、学習のための実績計算値と実績値との比較は、モデル式aからの途中結果出力において行われる。
【0050】
このため、まず、実測値V
ACTに基づいて、モデル式aからの途中結果出力に対応する実績値Y
ACTを次の(数11)式により計算する。この(数11)式において、g
−1はモデル式bの逆関数、W
ACTl(l=1,2,…)はその他の変数入力の実測値、b
k(k=1,2,…)はその他の条件入力である。
【0052】
こうして求めた実績値Y
ACTと(数8)式により求めたY
ACALとから、誤差Z
CURを次の(数12)式により計算する。この(数12)式において、hは誤差計算関数である。
【0054】
なお、この誤差計算関数hの具体的な形については、例えば、Y
ACTとY
ACALとの差をとるものとしてもよいし(すなわち、Z
CUR=Y
ACT−Y
ACAL)、Y
ACTとY
ACALとの比をとるものとしてもよい(すなわち、Z
CUR=Y
ACT/Y
ACAL)。そして、この誤差計算関数hの具体的な形に応じて(数2)、(数5)、(数9)式の誤差補正関数Hの具体的な形も変わってくる。すなわち、誤差計算関数hが入力変数の差をとるものであった場合、誤差補正関数Hは入力変数の和をとるものとなり、誤差計算関数hが入力変数の比をとるものであった場合、誤差補正関数Hは入力変数の積をとるものとなる。
【0055】
そして、次の(数13)式により、この誤差を平滑化した上で学習項へと反映して新しい学習項Z
NEWを計算する。この(数13)式において、Z
NEWは次回の設定計算装置3での設定計算で使用する学習項、Z
OLDは前回の設定計算装置3での設定計算で使用した学習項、βは平滑化係数である。
【0057】
以上が、学習項の計算に必要な実測値を正常に得ることができた場合における学習項の計算方法である。一方、前述したように、下流側関数の学習項の計算において下流側関数に入力される実測値が異常であった場合には、上流側関数からの出力された実績計算値を下流側関数に入力して計算を進めることで、下流側関数での学習に必要な実績計算値を得る。以下においては、この下流側関数の学習項の計算において下流側関数に入力される実測値が異常であった場合における下流側関数での学習に必要な実績計算値の計算について説明する。
【0058】
この場合、下流側関数のモデル式2aに入力されるのは、上流側関数において(数10)式を用いて計算されたV
ACALである。したがって、下流側関数のモデル式2aの関数をf、機械設備1の設定値の実測値をX
2ACTi(i=1,2,…)、その他の条件入力をa
2j(j=1,2,…)とすると、モデル式2aからの途中結果出力Y
2ACALは次の(数14)式で表される。この(数14)式において、V
1ACALは上流側関数において(数10)式を用いて計算された実績計算値である。
【0060】
そして、こうして計算したY
2ACALと、(数11)式において実測値V
ACT=V
2ACTを代入して得られた実績値Y
2ACTとから、学習項の計算を行う。ただし、ここで、前述したようにY
2ACALには上流側関数と下流側関数の双方の誤差が含まれているため、補完学習計算部8により、誤差(Y
ACT−Y
2ACAL)を上流側関数及び下流側関数の双方の学習項に分配する。
【0061】
この補完学習計算部8における誤差の分配比の計算方法は、(数12)式における誤差計算関数hの形によって変わってくる。具体的には、誤差計算関数hが入力変数の差をとるものであった場合、補完学習計算部8における誤差の分配は、次の(数15)式及び(数16)式に基づく比例配分により行われる。
【0063】
また、誤差計算関数hが入力変数の比をとるものであった場合、補完学習計算部8における誤差の分配は、次の(数17)式及び(数18)式に基づく比例配分により行われる。
【0065】
なお、これらの(数15)〜(数18)式において、Z
1CURは上流側関数の学習項へと分配される誤差、Z
2CURは上流側関数の学習項へと分配される誤差、fはモデル式aの関数である。
【0066】
こうして上流側関数及び下流側関数の各学習項へと誤差を比例配分した後は、上流側関数と下流側関数のそれぞれの学習項について、(数13)式によりそれぞれに分配された誤差を平滑化した上で学習項へと反映される。更新された新たな学習項は、次の設定タイミングにおける設定計算装置3での設定値計算に使用される。
【0067】
このように構成された学習装置5における動作の流れを、
図3を参照しながら今一度説明する。まず、ステップS1において、実測値収集装置4が実測値を収集する。次に、ステップS2へと進み、実測値判定部7は実測値収集装置4が収集した実測値のうち、V
2ACTが異常であるか否かを確認する。V
2ACTが異常でなければステップS3へと進む。このステップS3においては、実測値判定部7は実測値収集装置4が収集した実測値のうち、V
1ACTが異常であるか否かを確認する。V
1ACTが異常でなければステップS4へと進む。
【0068】
このステップS4においては、実績計算値計算部6aは、(数8)式を用いて上流側関数の実績計算値Y
1ACALを計算する。続くステップS5において、学習項計算部6bは、(数11)式を用いて上流側関数の実績値Y
1ACTを計算する。次にステップS6へと進み、学習項計算部6bは、(数12)式を用いて上流側関数の誤差Z
1CURを計算する。
【0069】
ステップS6の後はステップS7へと進む。このステップS7においては、実績計算値計算部6aは、(数8)式のV
ACTに実測値V
1ACTを代入して下流側関数の実績計算値Y
2ACALを計算する。続くステップS8において、学習項計算部6bは、(数11)式を用いて下流側関数の実績値Y
2ACTを計算する。次にステップS9へと進み、学習項計算部6bは、(数12)式を用いて下流側関数の誤差Z
2CURを計算する。
【0070】
ステップS9の後はステップS10へと進む。このステップS10においては、学習項計算部6bは、(数13)式のZ
CURにZ
1CUR及びZ
2CURをそれぞれ代入して、上流側関数の学習項Z
1NEW及び下流側関数の学習項Z
2NEWを計算する。そして、ステップS11へと進み、計算した学習項Z
1NEW及びZ
2NEWで設定計算装置3の数式モデルの学習項を更新し、一連の学習項更新処理は終了する。
【0071】
一方、ステップS3において、V
1ACTが異常であった場合にはステップS20へと進む。このステップS20においては、実績計算値計算部6aは、(数8)式を用いて上流側関数の実績計算値Y
1ACALを計算する。続くステップS21において、実績計算値計算部6aは、(数9)式及び(数10)式を用いて上流側関数の実績計算値V
1ACALを計算する。
【0072】
ステップS21の後はステップS22へと進む。このステップS22においては、実績計算値計算部6aは、(数14)式によりV
1ACALを使用した下流側関数の実績計算値Y
2ACALを計算する。続くステップS23において、学習項計算部6bは、(数11)式を用いて下流側関数の実績値Y
2ACTを計算する。
【0073】
そして、ステップS24へと進み、補完学習計算部8は、(数15)式及び(数16)式、又は、(数17)式及び(数18)を用いて、Z
1CUR及びZ
2CURを計算する。ステップS24の後は、前述したステップS10へと移行する。
【0074】
また、ステップS2において、V
2ACTが異常であった場合にはステップS30へと進む。このステップS30においては、実測値判定部7は実測値収集装置4が収集した実測値のうち、V
1ACTが異常であるか否かを確認する。V
1ACTも異常であった場合には、上流側関数及び下流側関数の両方ともにおいて学習項の更新は行わない。
【0075】
一方、ステップS30においてV
1ACTが異常でない場合はステップS31へと進む。このステップS31においては、実績計算値計算部6aは、(数8)式を用いて上流側関数の実績計算値Y
1ACALを計算する。続くステップS32において、学習項計算部6bは、(数11)式を用いて上流側関数の実績値Y
1ACTを計算する。次にステップS33へと進み、学習項計算部6bは、(数12)式を用いて上流側関数の誤差Z
1CURを計算する。
【0076】
ステップS33の後はステップS34へと進む。このステップS34においては、学習項計算部6bは、(数13)式を用いて上流側関数の学習項Z
1NEWを計算する。そして、ステップS35へと進み、計算した学習項Z
1NEWで設定計算装置3の数式モデルの学習項を更新し、一連の学習項更新処理は終了する。
【0077】
以上のように構成された設定計算システムの学習装置は、数式モデルを構成する上流側関数及び下流側関数それぞれの学習項を実測値を用いて計算する学習項計算部と、学習項計算部での下流側関数の学習項の計算において下流側関数に入力される第1の実測値が異常であるか否かを判定する実測値判定部と、第1の実測値が異常であると判定された場合に、上流側関数からの出力を下流側関数に入力して下流側関数から出力される実績計算値を計算する実績計算値計算部と、下流側関数からの出力に対応する第2の実測値に対する実績計算値の誤差を、上流側関数の学習項及び下流側関数の学習項に分配する補完学習計算部と、を備えている。
【0078】
したがって、学習のために下流側関数に入力する実測値が得られなかった場合でも、上流側関数から出力された実績計算値を実測値の代わりに下流側関数に入力することで下流側関数における学習を進めるとともに、蓄積される誤差を上流側関数の学習項へと配分して、上流側関数と下流側関数の双方における適切な学習を実現する。
【0079】
すなわち、数式モデルの学習に必要な実績値の一部が得られない場合であっても、得られた分の実績値を用いた学習を実施して数式モデルを構成する各関数の学習項を適切に更新することが可能であって、数式モデルの精度の低下を抑制することができる。そして、このため、機械設備の設定値の計算精度向上に貢献し得る。
【0080】
なお、以上のように構成された設定計算システムの学習装置は、例えば、数式モデル学習計算部、実績計算値計算部、学習項計算部、実測値判定部及び補完学習計算部の各部の果たす機能を実現するための情報処理を、中央処理装置や記憶装置等を有するハードウェア資源に実行させることで構築することも可能である。