(57)【要約】【課題】モデルと実機との偏差（モデル誤差）が生じた場合にも、制御対象の運転状態に悪影響を及ぼすことなく運転可能な運転制御装置、及び運転制御方法を提供することを目的とする。【解決手段】制御対象の制御量とその目標値との偏差である制御偏差に基づく評価値を最大または最小とする操作量を導出して制御する制御装置の運転制御方法において、前記制御対象の特性を模擬したモデルを有し、前記モデルを対象にしてモデルの制御偏差に基づく評価値を最大または最小にする操作量を算出し、前記操作量で前記制御対象を制御した場合の制御偏差に基づいて評価値を算出し、前記モデルの制御偏差の評価値と、前記制御対象の制御偏差の評価値の偏差に基づいて、現ステップの操作量と次ステップで決定する操作量との差である操作量の変化幅を決定することを特徴とする運転制御方法である。【選択図】図１
2007272498.tif 000002
【特許請求の範囲】
【請求項１】
制御対象の制御量とその目標値との偏差である制御偏差に基づく評価値を最大または最小とする操作量を導出して制御する制御装置の運転制御方法において、
前記制御対象の特性を模擬したモデルを有し、
前記モデルを対象にしてモデルの制御偏差に基づく評価値を最大または最小にする操作量を算出し、
前記操作量で前記制御対象を制御した場合の制御偏差に基づいて評価値を算出し、
前記モデルの制御偏差の評価値と、前記制御対象の制御偏差の評価値の偏差に基づいて、現ステップの操作量と次ステップで決定する操作量との差である操作量の変化幅を決定することを特徴とする運転制御方法。
【請求項２】
請求項１に記載の運転制御方法において、
前記操作量の変化幅を決定する場合は、前記評価値の偏差が大きい場合は変化幅を小さく、前記評価値の偏差が小さい場合は変化幅を大きくすることを特徴とする運転制御方法。
【請求項３】
請求項１に記載の運転制御方法において、
前記操作量の変化幅の上限を設定することを特徴とする運転制御方法。
【請求項４】
請求項１に記載の運転制御方法において、
前記評価値の偏差が所定値より大きい場合は、前記モデルを修正することを特徴とする運転制御方法。
【請求項５】
制御対象の制御量とその目標値との偏差である制御偏差に基づく評価値を最大または最小とする操作量を導出して制御する運転制御装置において、
前記制御対象の特性を模擬したモデルを備え、
前記モデルを対象に制御した場合の制御偏差に基づいて評価値を算出するモデルの評価値計算部と、
前記モデルの評価値を最大または最小にする操作量を算出する操作信号生成部と、
前記操作量で前記制御対象を制御した場合の制御偏差に基づいて評価値を算出する制御対象の評価値計算部と、
前記モデルの制御偏差の評価値と、前記制御対象の制御偏差の評価値に基づいて、現ステップの操作量と次ステップで決定する操作量との差である操作量の変化幅を決定する操作信号更新部を備えることを特徴とする運転制御装置。
【請求項６】
請求項５に記載の運転制御装置において、
前記操作信号生成部は、前記評価値の偏差が大きい場合は変化幅を小さく、前記評価値の偏差が小さい場合は変化幅を大きくすることを特徴とする運転制御装置。
【請求項７】
請求項５に記載の運転制御装置において、
前記操作信号更新部は、前記操作量変化幅の上限を有することを特徴とする運転制御方法。
【請求項８】
請求項５に記載の運転制御装置において、
前記評価値の偏差が所定値より大きい場合は、モデルを修正するモデルパラメータ更新部を有することを特徴とする運転制御装置。
【請求項９】
制御対象へ複数の操作を行い制御する制御装置と、表示装置を有する運転制御システムにおいて、
前記制御装置は、前記制御対象への複数の操作の操作量をそれぞれ複数の軸に設定し、制御対象へ適用した各操作の始点と到達点を表示し、１ステップ前の操作の到達点と次のステップの操作の始点を接続して表示する画像情報を作成し、前記表示装置へ送信することを特徴とする運転制御システム。
【請求項１０】
請求項９に記載の運転制御システムにおいて、
前記制御装置は、前記制御対象の特性を模擬したモデルを有し、前記モデルを対象に制御した場合の制御偏差に基づいて評価値を算出するモデルの評価値計算部と、前記制御対象を制御した場合の制御偏差に基づいて評価値を算出する制御対象の評価値計算部を有し、前記各操作を行った際のモデルの評価値及び制御対象からの評価値の差を算出し、前記各操作の表示に対応して表示する表示データを作成し、前記表示装置へ送信することを特徴とする運転制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、教師なし学習を応用した運転制御装置、及び運転制御方法に関する。
【背景技術】
【０００２】
近年、教師なし学習の分野で強化学習と呼ばれる手法が盛んに研究されている。強化学習とは、制御対象などの環境との試行錯誤的な相互作用を通じて、環境から得られる計測信号が望ましいものとなるように、環境への操作信号を生成する学習制御の枠組みとして知られている。強化学習では、環境から得られる計測信号を用いて計算されるスカラー量の評価値（強化学習では、報酬と呼ばれている）を手がかりに、現状態から将来までに得られる評価値の期待値が最大となるように、環境への操作信号を生成する学習機能を持つ。このような学習機能を実装する方法として、例えばActor-Critic，Ｑ学習，実時間
Dynamic Programmingなどのアルゴリズムがある。
【０００３】
また、上述の手法を発展させた強化学習の枠組みとして、Dyna−アーキテクチャと呼ばれる枠組みがある。これは、制御対象を模擬するモデルを対象にどのような操作信号を生成するのが良いかを予め学習し、この学習結果を用いて制御対象に印加する操作信号を決定する方法である。また、制御対象とモデルの誤差を小さくするモデル調整機能を持っている。
【０００４】
また、強化学習を適用した技術として、特許文献１に述べられている技術が挙げられる。これは、モデルと学習機能を有するシステムの組である強化学習モジュールを複数備えておき、各強化学習モジュールにおけるモデルと制御対象との予測誤差が小さいものほど大きな値を取る責任信号を求め、この責任信号に比例して各強化学習モジュールから生成される制御対象への操作信号を重み付けし、制御対象に印加する操作信号を決定する技術である。
【０００５】
【特許文献１】特開２０００−３５９５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
制御対象の特性が複雑で、この特性を完全に模擬できるモデルを用いることが難しい場合には、前述のDyna−アーキテクチャを構成するモデルと、制御対象の特性が異なる可能性がある。この場合、特許文献１の技術を用いて、モデルに対して有効な操作方法を学習しても、この操作方法が制御対象にとっては有効とならない可能性がある。また、学習した操作方法に基づいた操作信号を制御対象に印加することによって、制御対象の運転状態が悪化してしまう可能性もある。
【０００７】
本発明では、モデルと実機との偏差（モデル誤差）が生じた場合にも、制御対象の運転状態に悪影響を及ぼすことなく運転可能な運転制御装置、及び運転制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
制御対象の制御量とその目標値との偏差である制御偏差に基づく評価値を最大または最小とする操作量を導出して制御する制御装置の運転制御方法において、前記制御対象の特性を模擬したモデルを有し、前記モデルを対象にしてモデルの制御偏差に基づく評価値を最大または最小にする操作量を算出し、前記操作量で前記制御対象を制御した場合の制御偏差に基づいて評価値を算出し、前記モデルの制御偏差の評価値と、前記制御対象の制御偏差の評価値の偏差に基づいて、現ステップの操作量と次ステップで決定する操作量との差である操作量の変化幅を決定することを特徴とする運転制御方法である。
【発明の効果】
【０００９】
本発明は、モデル誤差が生じた場合にも、制御対象の運転状態に悪影響を及ぼすことなく運転することができる。
【発明を実施するための最良の形態】
【００１０】
以下、発明を実施するための一例について、添付図面を参照しながら説明する。図１は、本発明に係る制御装置２００を制御対象１００に適用した例について説明する図である。
【００１１】
制御装置２００に備え付けられている操作信号生成部３００は、制御対象に印加する操作信号２０１を生成する。また、評価値計算部５００では、制御対象からの計測信号202を用いて評価値信号２０３を計算する。操作信号生成部３００は、この評価値信号２０３を受信する。
【００１２】
操作信号生成部３００では、現状態から将来までの評価値信号２０３の期待値の総和が最大、もしくは最小となるように、操作信号２０１を生成する機能を持つ。以下では、操作信号生成部３００では、評価値信号２０３の期待値の総和が最大となるように、操作信号２０１を生成する場合について説明する。
【００１３】
評価値計算部５００では、計測信号２０２とその目標値との偏差に応じた評価値信号
２０３を生成する。例えば、計測信号２０２が目標値と一致する場合には、評価値信号
２０３を「１」とし、一致しない場合には「０」と設定する。あるいは、計測信号２０２とその目標値との偏差に反比例するように、評価値信号２０３を設定する。つまり後述する図５に記載するように、評価値は、＋３０の様に数値が大きいほど目標に近く、−３０の様に数値が小さいほど目標から遠い。この場合の評価値の算出は複数の方法をとることができる。評価値算出の一例を図１２に示す。制御量及び目標値の差と評価値を対応させた表を持ち、これを参照して評価値を生成できる。また、評価値を制御量と目標値の差の関数として設定しておいて、算出することもできる。
【００１４】
操作信号生成部３００を実装する方法として、強化学習を用いる方法が挙げられる。強化学習では、学習の初期段階においては試行錯誤的に操作信号２０１を生成する。その後、学習を進めるに従って、評価値信号２０３が大きくなるような操作信号２０１を生成するようになる。
【００１５】
このような学習アルゴリズムは、例えばActor-Critic，Ｑ学習などのアルゴリズムを用いることができる。
【００１６】
図１の制御装置は、Dyna−アーキテクチャと呼ばれる枠組みを用いている。これは、制御対象１００の模擬するモデル部４００を持ち、操作信号生成部３００では予めモデル部４００を対象に操作信号２０１の生成方法を学習しておき、その学習結果を用いて操作信号２０１を生成する枠組みである。
【００１７】
操作信号生成部３００は、モデル部４００に入力する操作信号２０４を生成し、モデル部４００からの計測信号２０５と評価値信号２０６を受信する機能を持つ。この評価値信号２０６は、評価値計算部５１０において、計測信号２０５を用いて計算される。評価値計算部５１０は、評価値計算部５００と同様の機能を持つ。
【００１８】
操作信号生成部３００は、操作信号生成パラメータ記憶部６００に保存されているデータを参照して、制御対象１００に印加する操作信号２０１を決定する。
【００１９】
図２は、操作信号生成パラメータ記憶部６００に保存されているデータの様態を説明する図である。図２のように、操作信号生成パラメータ記憶部６００には、制御対象１００に備え付けられている操作端の名称、その操作量の１周期あたりの変化幅、及び単位に関するデータが保存されている。操作端は、操作量変化幅の範囲で操作量を増加・あるいは減少することができる。
【００２０】
尚、図２では操作端の数が複数個ある場合について記載しているが、操作端の数は１つであってもよい。また、図２では操作端毎に操作変化幅を記載しているが、複数の操作端を一くくりにまとめて、その操作端の変化幅の和を制限することもできる。
【００２１】
図２の操作量変化幅の制限値は、操作信号生成パラメータ更新部７００において決定する。
【００２２】
パラメータ更新の処理に必要な設定値は、キーボード３０とマウス４０で構成される外部入力装置２０から入力される。これらの情報は、ＣＲＴなどの画像表示装置１０に表示される。制御対象１００の運転員は、画像表示装置１０と外部入力装置２０を用いて、設定値２１４を入力する。
【００２３】
図３は、画像表示装置１０に表示される画面の例である。この画面を通して、運転員は操作端の操作量変化幅の初期値、上限，下限、及び更新率を設定することができる。ここで設定した設定値の使用方法について、図４を用いて説明する。図４は、操作信号生成パラメータ更新部７００における処理を説明する図である。以下では、図４の各々の処理内容について説明する。
処理７１０では、ステップ数ｔが０より大きいかどうかを判定し、０である場合（ＮＯの場合）は処理７２０を実施し、０より大きい場合（ＹＥＳの場合）は処理７４０を実施する。ここでステップ数とは、制御対象１００に印加する操作信号を変更した回数であり、０を初期値に、操作する度に１ずつ増加する値である。
【００２４】
処理７２０では、図３において設定した初期値を取得する。
【００２５】
処理７３０では、処理７２０にて取得した初期値を、操作信号生成パラメータ記憶部
６００にデータ２０９として送信する。
【００２６】
処理７４０では、操作信号生成パラメータ記憶部６００に保存されている前回の操作信号生成パラメータをデータ２０８として取得する。
【００２７】
処理７５０では、評価値信号２０３と評価値信号２０６を取得する。
【００２８】
処理７６０では、数１を用いて操作量変化幅を変更する。ここで、ｔはステップ数、
Ｇ(ｔ)はステップｔにおける操作量、ｒ1(ｔ)は評価値信号２０３の値、ｒ2(ｔ)は評価値信号２０６の値、ｆ(ｒ1(ｔ)，ｒ2(ｔ))はｒ1(ｔ)とｒ2(ｔ)を変数とする関数である。
（数１）
Ｇ(ｔ＋１)＝Ｇ(ｔ)＋ｆ(ｒ1(ｔ)，ｒ2(ｔ))
数１における関数ｆ(ｒ1(ｔ)，ｒ2(ｔ))の例して、数２に示す関数が挙げられる。
（数２）
ｆ(ｒ1(ｔ)，ｒ2(ｔ))＝α−β(｜ｒ1(ｔ)−ｒ2(ｔ)｜)
処理７７０では、数１及び数２を用いて計算したＧ(ｔ＋１)が図３で設定した上限を超える場合にはＧ(ｔ＋１)を設定した上限の値とし、下限より小さい場合にはＧ(ｔ＋１)を設定した下限の値とする。
【００２９】
最後に、処理７８０では、処理７７０によって求められたＧ(ｔ＋１)を操作信号生成パラメータ記憶部６００にデータ２０９として送信する。
【００３０】
尚、数式２の様に関数の形で操作量変化幅を算出することもできるし、図１３の様に、評価値信号２０３，２０６の差と、操作量変化幅Ｇ(ｔ＋１)−Ｇ(ｔ)を対応させて表として記憶させて、これを参照して操作量を決定することとしても良い。
【００３１】
このように、モデルの制御偏差に基づく評価値２０６と制御対象を制御した場合の制御偏差に基づく評価値２０３の差で操作量変化幅を算出しているので、制御対象の運転状態に悪影響を及ぼすことなく運転可能である。また、モデルと実機のズレに応じて柔軟に制御できる。
【００３２】
また、評価値の差が大きい場合は変化幅を小さく、評価値の差が小さい場合は変化幅を大きくすることにより、モデルとのズレが大きい場合に操作量を安全に変更でき、モデルとのズレが小さい場合に操作量を早く変更できる。
【００３３】
また、操作量変化幅の上限を設定することにより、操作量変化幅を大きくすると、実機とモデルのズレが大きく影響するので、操作量を早く変更することと制御対象の運転状態に悪影響を及ぼすことのバランスをとることができる。
【００３４】
モデルパラメータ記憶部８００には、モデル部４００を構成するのに必要なパラメータが保存されている。モデル部４００が物理モデルである場合は、モデルパラメータ記憶部８００には物理モデルを構成するのに必要な物理定数が保存されている。例えば、制御対象１００が火力発電プラントである場合は、熱伝達率などの値が保存される。
【００３５】
モデルパラメータ更新部９００では、制御対象とモデルの特性が一致するように、モデルパラメータ記憶部８００に記憶されているパラメータ２１２を読み出しパラメータを修正し、修正されたパラメータ２１３を送信し、モデルパラメータを更新する。例えば、制御対象１００が火力発電プラントである場合は、特開１０−２１４１１２号公報，特開
２００１−１５４７０５号公報等に述べられている技術を用いて、モデルパラメータ211をモデル部４００へ設定し、モデルのパラメータを更新する。
【００３６】
図５〜図７は、従来の制御装置を制御対象１００に適用した場合に発生すると考えられる問題について説明する図である。
【００３７】
図５は、操作量の空間と得られる評価値の関係である。例えば操作量Ａの値がＡ1 、操作量Ｂの値がＢ1 の場合、その操作量をモデル部４００に入力したときに得られる評価値が−３０である。また、Ａ2，Ｂ2の時の評価値は＋１０である。
【００３８】
評価値の期待値の総和が最大となるような行動は、図５の点線のように評価値が負となる領域を避け、正である領域へ向かう行動となる。
【００３９】
図６は、一回の行動で移動可能な操作量の変化幅を矢印で示した図である。この図では、操作量の変化幅を一定としている。このように、スタート地点から評価値が＋３０となる地点まで、６ステップで到達する。
【００４０】
ここでは、モデルと制御対象の特性が異なる場合について考える。図７は、モデルと制御対象の特性の違う例を示した図である。図７のように、評価値が負となる操作量の条件が、モデルと制御対象とで異なる。この場合、モデルで学習した操作方法をたどって操作を実行すると、１ステップ後の評価値は−３０となり、望ましい状態ではない。
【００４１】
図８〜図１０は、本発明の制御装置をプラント１００に適用した時の効果について説明する図である。本発明の制御装置では、操作量変化幅を一定にせず、図３の処理を通して操作量の変化幅を決定する。
【００４２】
初期値を小さく設定することにより、１ステップ目の操作量変化幅を小さくすることができる。その結果、図８のように、１ステップ後の評価値は−１０となる。これは、従来法にて１ステップ後に得られる−３０よりも、優れた値である。
【００４３】
このように、操作の最初の段階における操作量変化幅を小さくすることで、初期状態と近似した運転状態に移動するので、制御対象の安全性を保つことができる。
【００４４】
この１ステップの操作によって、制御装置２００は制御対象１００とモデル部４００の特性が異なっているという情報を入手する。制御対象１００からの計測信号２０２とモデル部４００からの出力信号２０５を用いて、モデルパラメータ更新部９００ではモデル部４００と制御対象１００の特性が一致するように、モデルパラメータ記憶部８００に保存されているパラメータを更新する。モデルと制御対象の特性が違う場合には、初期状態
（図８におけるStart ）に戻るように、操作信号２０１を戻す。このように、評価値の差が所定値より大きい場合はモデルを修正することにより、モデルと実機のズレが所定値より小さいときは、モデルに沿って安全に制御できる。
【００４５】
図９は、操作量の空間と、修正後のモデルから得られる評価値の関係を説明する図である。このモデルを対象に、評価値の期待値の総和が最大となるような行動は、図９の点線のように評価値が負となる領域を避け、正である領域へ向かう行動である。この操作経路は、修正前のモデルを用いた場合と修正後のモデルを用いた場合とで異なるものとなる。
【００４６】
図１０は、修正後の操作経路を用いて制御対象１００を制御した時の経路である。
【００４７】
本発明では、操作を実施したことによって得られる評価値が、モデルを対象としたときに得られた評価値と一致する場合に、操作量変化幅を大きくする。その結果、図１０のように、除々に矢印の大きさが大きくなる。
【００４８】
図１１は、図１０の操作実行時におけるステップ数と操作量変化幅の関係を説明する図である。
【００４９】
モデルの評価値、及び制御対象からの評価値が共に０であるので、数２における第２項目は０となる。従って、操作量変化幅は、１ステップ当たり、αだけ大きくなる。
【００５０】
図１のＣＲＴ１０には、操作信号２０１が表示される。また、操作信号生成パラメータ記憶部６００に記憶されているデータ２１０である操作量変化幅等のデータを表示することもできる。制御対象１００の制御量２０２も表示することができる。ＣＲＴ１０は、図５〜図１０の操作量の空間と評価値の関係を画面に表示することができる。
【００５１】
図１４に、操作量の空間と評価値の関係を画面に表示した場合の一例を示す。制御装置１００は、制御対象へ適用する複数の操作の操作量をそれぞれ複数の軸に設定し、制御対象へ適用した各操作の始点と到達点を表示し、１ステップ前の操作の到達点と次のステップの操作の始点を接続して表示する画像情報を作成してＣＲＴ１０で表示する。これにより各操作の変化量を操作全体との対比で容易に把握することができる。尚、始点から到達点を矢印で表示する。
【００５２】
また、制御装置１００は、制御対象の特性を模擬したモデル４００を有し、モデルを対象に制御した場合の制御偏差に基づいて評価値を算出するモデルの評価値計算部５１０と、制御対象を制御した場合の制御偏差に基づいて評価値を算出する制御対象の評価値計算部５００を有し、各操作を行った際のモデルの評価値及び制御対象からの評価値の差を算出し、各操作の表示に対応して表示する表示データを作成し、ＣＲＴ１０へ送信する。この様に、各操作を行った際のモデルの評価値及び制御対象からの評価値の差をこの各操作表示に対応して表示することにより、操作を行いながらモデル誤差を把握することができる。
【００５３】
以上に述べたように、本発明の運転制御装置を制御対象に適用することによって、操作開始直後においては操作量の変化幅を小さくし、モデルを対象に学習した操作方法が、制御対象にも有効であるかどうかを確認する。その後、制御対象とモデルの特性が近く、モデルを対象に学習した操作方法が制御対象に対しても有効であることが分かった後、除々に操作量の変化幅が大きくなる。
【００５４】
よって、モデルと制御対象の特性に違いがあった場合でも制御対象の運転が悪化するリスクを軽減できる。
【００５５】
また、モデル誤差が生じた場合にも、制御対象の運転状態に悪影響を及ぼすことなく運転可能である。
【図面の簡単な説明】
【００５６】
【図１】本発明の制御装置を制御対象に適用した例について説明する図である。
【図２】操作信号生成パラメータ記憶部に保存されているデータの態様を説明する図である。
【図３】画像表示装置に表示する画面を説明する図である。
【図４】操作信号生成パラメータ更新部の処理を説明する図である。
【図５】モデルの特性を説明する図である。
【図６】ステップ毎の到達点を説明する図である。
【図７】制御対象とモデル特性の違いを説明する図である。
【図８】本発明の操作方法を説明する図である。
【図９】修正後のモデルの特性を説明する図である。
【図１０】を説明する図である。
【図１１】ステップ数と操作量変化幅の関係を説明する図である。
【図１２】評価値算出の一例である。
【図１３】操作量を決定するための表の一例。
【図１４】操作量の空間と評価値の関係を画面に表示した例。
【符号の説明】
【００５７】
１０…画像表示装置、２０…外部入力装置、３０…キーボード、４０…マウス、１００…制御対象、２００…制御装置、３００…操作信号生成部、４００…モデル部、５００，５１０…評価値計算部、６００…操作信号生成パラメータ記憶部、７００…操作信号生成パラメータ更新部、８００…モデルパラメータ記憶部、９００…モデルパラメータ更新部。
【図１】
2007272498.tif 000003
【図２】
2007272498.tif 000004
【図３】
2007272498.tif 000005
【図４】
2007272498.tif 000006
【図５】
2007272498.tif 000007
【図６】
2007272498.tif 000008
【図７】
2007272498.tif 000009
【図８】
2007272498.tif 000010
【図９】
2007272498.tif 000011
【図１０】
2007272498.tif 000012
【図１１】
2007272498.tif 000013
【図１２】
2007272498.tif 000014
【図１３】
2007272498.tif 000015
【図１４】
2007272498.tif 000016