(57)【要約】      （修正有）【課題】時変なフィードバック制御器のパラメータを自動で調整する情報処理装置を提供する。【解決手段】制御器と、制御対象と、制御対象の出力の参照モデルとを備えるフィードバックシステムの制御パラメータを算出する情報処理装置１において、時系列データ取得部３０は、制御器の出力の時系列データである第１時系列データと、制御対象の出力の時系列データである第２時系列データとを取得する。入力信号推定部３１は、制御器に入力する入力信号の時系列データの推定値である第３時系列データを推定する。モデル出力算出部３２は、推定された入力信号を入力した場合の参照モデルの出力の時系列データである第４時系列データを算出する。窓関数設定部３３は、第２時系列データと第４時系列データとの差分信号に、所定の幅を持つ窓関数を設定する。パラメータ更新部３４は、設定された窓関数の範囲の差分信号に基づいて制御器の制御パラメータを更新する。【選択図】図５
2020095613.tif 000002
【特許請求の範囲】
【請求項１】
制御器と、前記制御器の出力を入力とする制御対象と、前記制御対象に入力する入力信号を入力として前記制御対象の出力をモデル化する参照モデルを備え、前記制御対象の出力が前記制御器の入力にフィードバックされる制御システムにおいて、前記制御器の制御パラメータを算出する情報処理装置であって、
前記制御器の出力の時系列データである第１時系列データと、前記制御対象の出力の時系列データである第２時系列データとを逐次的に取得する時系列データ取得部と、
前記制御器の制御パラメータ、前記第１時系列データ、及び前記第２時系列データから、前記制御器に入力する入力信号の時系列データの推定値である第３時系列データを推定する入力信号推定部と、
前記入力信号推定部が推定した入力信号を入力した場合の前記参照モデルの出力の時系列データである第４時系列データを算出するモデル出力算出部と、
前記第２時系列データと前記第４時系列データとの差分信号に、所定の幅を持つ窓関数を設定する窓関数設定部と、
前記窓関数設定部が設定した窓関数の範囲における前記差分信号を入力とする所定の評価関数の評価値に基づいて前記制御器の制御パラメータを更新するパラメータ更新部と、
を備える情報処理装置。
【請求項２】
前記窓関数設定部は、前記差分信号において複数の異なる時刻を起点とする複数の窓関数を設定し、
前記パラメータ更新部は、前記複数の窓関数それぞれの範囲において、前記差分信号が小さくなるように前記制御器の制御パラメータを更新する、
請求項１に記載の情報処理装置。
【請求項３】
前記窓関数設定部は、前記複数の窓関数のそれぞれが、他の少なくとも一つの窓関数と重複する区間を持つように、前記複数の窓関数を設定する、
請求項２に記載の情報処理装置。
【請求項４】
前記パラメータ更新部は、ある窓関数の範囲における前記差分信号を入力とする前記評価関数の評価値が、既に計算が終了している他の窓関数の範囲における前記差分信号を入力とする前記評価関数の評価値よりも評価が低いことを示す値である場合、他の窓関数の範囲において更新された前記制御パラメータを前記制御器の制御パラメータとして更新する、
請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記パラメータ更新部は、あらかじめ定められた所定の回数を反復回数の上限として、粒子群最適化の手法を用いて各窓関数の範囲における前記制御パラメータを更新する、
請求項１から４のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置に関し、特に、フィードバックシステムの制御器の制御パラメータを設定する技術に関する。
【背景技術】
【０００２】
フィードバックシステムにおける制御対象のモデルを用いない制御手法が種々提案されている。このようなモデルを用いない制御器パラメータの自動調整手法の一つにＦＲＩＴ（Fictitious Reference Iterative Tuning）が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１８２６２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
産業界ではＰＩＤ(Proportional-Integral-Differential)制御が多く用いられており、ＰＩＤゲインを自動調整することが期待されている。上記のＦＲＩＴはオフライン計算にて最適パラメータを得る。このため、制御対象のシステムが時変の場合には、システムの変動に対応してＰＩＤゲインを取得することが難しい。仮に、ＦＲＩＴをオンライン化しようとしても、ＦＲＩＴにおいてＰＩＤゲインを算出するために用いられている評価関数は非線形であり、計算コストが大きくなる。
【０００５】
本発明はこれらの点に鑑みてなされたものであり、時変なフィードバックシステムにおける制御器パラメータの自動調整手法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の態様は、制御器と、前記制御器の出力を入力とする制御対象と、前記制御対象に入力する入力信号を入力として前記制御対象の出力をモデル化する参照モデルを備え、前記制御対象の出力が前記制御器の入力にフィードバックされる制御システムにおいて、前記制御器の制御パラメータを算出する情報処理装置である。この装置は、前記制御器の出力の時系列データである第１時系列データと、前記制御対象の出力の時系列データである第２時系列データとを逐次的に取得する時系列データ取得部と、前記制御器の制御パラメータ、前記第１時系列データ、及び前記第２時系列データから、前記制御器に入力する入力信号の時系列データの推定値である第３時系列データを推定する入力信号推定部と、前記入力信号推定部が推定した入力信号を入力した場合の前記参照モデルの出力の時系列データである第４時系列データを算出するモデル出力算出部と、前記第２時系列データと前記第４時系列データとの差分信号に、所定の幅を持つ窓関数を設定する窓関数設定部と、前記窓関数設定部が設定した窓関数の範囲における前記差分信号を入力とする所定の評価関数の評価値に基づいて前記制御器の制御パラメータを更新するパラメータ更新部と、を備える。
【０００７】
前記窓関数設定部は、前記差分信号において複数の異なる時刻を起点とする複数の窓関数を設定してもよく、前記パラメータ更新部は、前記複数の窓関数それぞれの範囲において、前記差分信号が小さくなるように前記制御器の制御パラメータを更新してもよい。
【０００８】
前記窓関数設定部は、前記複数の窓関数のそれぞれが、他の少なくとも一つの窓関数と重複する区間を持つように、前記複数の窓関数を設定してもよい。
【０００９】
前記パラメータ更新部は、ある窓関数の範囲における前記差分信号を入力とする前記評価関数の評価値が、既に計算が終了している他の窓関数の範囲における前記差分信号を入力とする前記評価関数の評価値よりも評価が低いことを示す値である場合、他の窓関数の範囲において更新された前記制御パラメータを前記制御器の制御パラメータとして更新してもよい。
【００１０】
前記パラメータ更新部は、あらかじめ定められた所定の回数を反復回数の上限として、粒子群最適化の手法を用いて各窓関数の範囲における前記制御パラメータを更新してもよい。
【発明の効果】
【００１１】
本発明によれば、時変なフィードバックシステムにおける制御器パラメータの自動調整手法を提供する事ができる。
【図面の簡単な説明】
【００１２】
【図１】参照モデルを備えるフィードバックシステムを模式的に示す図である。
【図２】時変システムに拡張したＦＲＩＴで用いられる窓関数を模式的に示す図である。
【図３】拡張ＰＳＯにおいて評価関数が３つのときの矩形窓を模式的に示す図である。
【図４】ステップ入力をフィードバックシステムに印加したときのシミュレーション結果を示す模式図である。
【図５】実施の形態に係る情報処理装置の機能構成を模式的に示す図である。
【図６】実施の形態に係る情報処理装置が実行する情報処理の流れを説明するためのフローチャートである。
【発明を実施するための形態】
【００１３】
＜実施の形態の前提となる技術＞
本発明の実施の形態を説明する前に、まず、本発明の実施の形態の前提とする前提技術について説明する。
【００１４】
［１．概略］
標準的なＦＲＩＴは評価関数が非線形であり、オフライン計算にて最適パラメータを得るため、特性変動による制御性能の劣化に対応することが難しいという問題がある。この問題に対して、評価関数が制御パラメータに関して線形になるように表現し、逐次最小二乗法により最適パラメータを推定する手法や、評価関数が非線形のままオンライン計算にて最適制御パラメータを得る手法が提案されている。前者は、ＳＩＳＯ（Single Input Single Output）システムのＰＩＤ制御に検討されているが、ＭＩＭＯ（Multiple Input Multiple Output）系やむだ時間等を含めたシステムへの検討は行われていないのが現状である。後者の中には、評価関数を非線形のままオンラインで制御パラメータを得る手法も存在するが、制御時間とともに計算コストが増加することに加え、現在時刻までの評価区間全体の最適なＰＩゲインを決定しており、適応系への検討はされていないのが現状である。すなわち、特性が変動した場合には、ＦＲＩＴの学習を初期化する必要がある。
【００１５】
本願の発明者は、オンライン計算でむだ時間を含むシステム、ＭＩＭＯ系への適用、及び従来手法と比較して計算コストの低減を可能にする手法を考案した。本発明の実施の形態は、評価区間が一定である評価関数を用いることで計算コストを一定とすることに加え、評価タイミングを更新サンプルごとずらした複数の評価関数をもつことで時変システムに対応する。実施の形態が用いる評価関数は非線形であり、非線形最適化を粒子群最適化（Particle Swarm Optimization；ＰＳＯ）にて行う。時変システムに対応できるようＰＳＯを拡張したことにより、実施の形態に係る手法は、システムの特性変動に応じた最適化計算を迅速に終了でき、時変システムに対応することができる。
【００１６】
［２.  制御系設計］
ＦＲＩＴとＰＳＯを時変システムに対応できるよう拡張する。ＦＲＩＴとＰＳＯを用いることで、ＰＳＯの各粒子の評価関数を仮想的に計算でき、制御器パラメータの最適解を得られる。
【００１７】
［２・１  ＦＲＩＴの拡張］
一般的なＦＲＩＴの説明を行ったあと、ＦＲＩＴを時変システムに適用する方法を説明する。
【００１８】
［２・１・１  従来のＦＲＩＴ］
図１は、参照モデルＭを備えるフィードバックシステムである制御システムＳを模式的に示す図であり、ＦＲＩＴの概略を説明するための図である。図１に示す制御システムＳにおいて、制御器Ｃは制御パラメータθを引数とする関数Ｃ（θ）で表現されている。図１に示す制御システムＳは、制御対象Ｐの出力ｙと後述する参照モデルＭの出力とを一致させることが目的である。具体的には、この目的を達成するために制御対象Ｐに入力すべき制御量ｕを出力するようなパラメータθを特定することが目的である。なお、図１において、θは自由に調整できるパラメータであり、ｕ及びｙは観測可能なデータである。
【００１９】
ＦＲＩＴは１組の入出力データと参照モデルＭとから、閉ループ系の制御器Ｃのパラメータθを自動調整する手法である。初期のパラメータθを用いて１組の閉ループ実験を行い、そのときの入出力データｕ及びｙをサンプリングして計測する。このとき、閉ループ系は安定であるとする。図１より、Ｃ（θ）（ｒ−ｙ）＝ｕであるから、参照信号ｒはｕ及びｙを用いて以下の式（１）で表せる。
ｒ（θ，ｋ）＝Ｃ-１（θ）ｕ（ｋ）＋ｙ（ｋ）    （１）
ここで、ｋは１以上の整数であり、ｕ又はｙのサンプリングの番号を示す指標である。ｕ（ｋ）及びｙ（ｋ）はあらかじめ計測した１組の入出力データである。以下本明細書において、式（１）で示す参照信号ｒ（θ，ｋ）を擬似参照信号と表記することがある。
【００２０】
図１に示す一般的なフィードバック制御の応答と、参照モデルＭ（ｚ）及び擬似参照信号ｒ（θ，ｋ）から得られる目標応答との誤差に関する評価関数Ｊは次式（２）で表される。
【数１】
2020095613.tif 000003
ここで、Ｍ（ｚ）は参照モデル、ｚはシフトオペレータ演算子である。
【００２１】
この評価関数Ｊを最小にする制御器Ｃのパラメータθは、制御対象Ｐの出力ｙ（ｋ）と参照モデルＭの出力Ｍ（ｚ）ｒ（θ，ｋ）との２乗誤差を最小化するという意味において、制御器Ｃの最適なパラメータθである。一般的なＦＲＩＴでは、オフライン計算で最適なパラメータθが計算される。
【００２２】
［２・１・２  ＦＲＩＴの時変システムへの拡張］
実施の形態に係る手法も、図１に示す制御システムＳを前提としている。適応制御を実施するために、現時点から一定時刻過去のデータのみ用いることが一案として考えられる。そこで、実施の形態に係る手法は幅がｍである矩形の窓関数を導入し、かつあらかじめ計測した１組の入出力ｕ、ｙではなく逐次計測している入出力ｕ（ｋ）、ｙ（ｋ）を用いることで標準ＦＲＩＴの評価関数Ｊを次式のように変形する。
【００２３】
【数２】
2020095613.tif 000004
ｒ（θ，ｉ）＝Ｃ-１（θ）ｕ（ｉ）＋ｙ（ｉ）    （４）
【００２４】
式（３）及び式（４）を用いることで、評価区間を一定にすることができ、ＦＲＩＴの課題であった時間とともに計算量が増えることを抑制できる。ただし、式（３）は制御器Ｃのパラメータθの更新頻度がｍサンプル毎であることを示しており、その間に発生する制御対象Ｐの特性変動に対応できないことになる。
【００２５】
このような問題に対して、評価関数Ｊをオーバーラップさせながら制御器Ｃのパラメータθを更新する手法が提案されている。この手法では、制御器Ｃのパラメータθの更新頻度に合わせて評価関数ＪをＮ個用意する。これを実現するためにＮ個の矩形の窓関数を導入し、用意したＮ個の評価関数ＪにそれぞれＮ個の窓関数を設定し、Ｎ個の評価関数Ｊを設定する。
【００２６】
図２は、時変システムに拡張したＦＲＩＴで用いられる窓関数を模式的に示す図であり、ｎ番目（ｎ＝１，・・・，Ｎ）の評価関数Ｊを示す図である。ここで、ｎ番目の評価関数Ｊは式（５）で表される。
【００２７】
【数３】
2020095613.tif 000005
ここで、評価関数Ｊの個数Ｎとパラメータθの更新頻度との関係は、Ｎを整数として、以下の式（６）で示される。
Ｎ＝ｍ／ｑ    （６）
【００２８】
［２・２  制御器Ｃのパラメータθの更新方法］
Ｎ個の評価関数ＪにつきＮ個の拡張したＰＳＯにより最適解を求める。なお、拡張したＰＳＯの詳細は後述する。
【００２９】
以下、ｎ番目の評価関数Ｊｎに対応する拡張ＰＳＯをＰＳＯｎと記載する。図３は、拡張ＰＳＯにおいて評価関数Ｊが３つのときの矩形窓を模式的に示す図である。ｎが１の評価関数Ｊ１は時刻０から時刻ｍ−１までの各粒子の評価関数値を計算し、拡張ＰＳＯにより制御器Ｃの最適なパラメータθを求める。そして、時刻ｍのとき時刻ｍ−１で求めたパラメータθを制御器Ｃへ反映するとともにＰＳＯ１の時刻ｍで更新した各粒子の評価関数値の計算を再び始める。このときｎが２の評価関数Ｊ２は、時刻ｑからｑ＋ｍ−１までのＰＳＯ２の各粒子の評価値を計算している。同様に、ｎが３の評価関数Ｊ３は、時刻２ｑから２ｑ＋ｍ−１までのＰＳＯ３の各粒子の評価値を計算している。
【００３０】
時刻ｑ＋ｍ−１になったとき、評価関数Ｊ２は評価関数の計算及びＰＳＯ２により最適解を求め、時刻ｑ＋ｍになったとき、制御器Ｃのパラメータθを制御器Ｃへ反映するとともに、新たに更新した評価関数値の計算を再び始める。評価関数Ｊ３も同様の処理を行う。評価関数Ｊ３により制御器Ｃのパラメータθが更新されると、ｑサンプル後にｎが１の評価関数Ｊ１とＰＳＯ１により、制御器Ｃのパラメータ（θ）の反映が行われる。
【００３１】
以上より、矩形窓及び評価関数Ｊの組を３組用いることで、制御器Ｃのパラメータθをｑサンプル毎に更新できることがわかる。また、各粒子を更新してから評価関数Ｊの計算をするので、現在時刻のデータのみを使用するだけでよく、パラメータθの更新を実行しているコンピュータの計算負荷を低減できる。なお、図３は矩形窓と評価関数Ｊとの組が３組の場合の例を示しているが、３組以外の場合も同様である。
【００３２】
［２・３  ＰＳＯの時変システムへの拡張（Ｎ個の評価関数Ｊの最適化方法）］
続いて、拡張したＰＳＯを説明するが、まず、一般的なＰＳＯの説明を行い、その後ＰＳＯを時変システムに適用する方法を説明する。
【００３３】
［２・３・１  従来のＰＳＯアルゴリズム］
ＰＳＯは群知能の一種であり、複数の粒子が群れを構成して情報交換を行いながら、最適解を探索する既知の最適化手法である。
【００３４】
ステップ１：粒子群の初期化
ステップ回数ｋを１で初期化し、初期の粒子位置ｘ（ｋ）と速度ｖ（ｋ）とを乱数により決定する。
ステップ２：各粒子の評価
各粒子の位置ｘ（ｋ）を評価関数Ｊを用いて評価し、各粒子の最良位置情報であるｐｂｅｓｔｉとその評価値ｆ（ｘ（ｋ））を記憶する。ここで、ｉは、Ｎ次元ユークリッド空間内の粒子を示す指標値である。なお、各粒子の最良位置情報であるｐｂｅｓｔｉをパーソナルベストｐｂｅｓｔｉと記載することもある。
【００３５】
ステップ３：各粒子の最良位置情報ｐｂｅｓｔｉの更新
各粒子の位置を評価関数Ｊを用いて評価し、ｐｂｅｓｔｉとその評価値を記憶する。
【数４】
2020095613.tif 000006
【００３６】
ステップ４：群れにおける最良位置情報ｇｂｅｓｔの更新
全粒子の中で最良の評価位置情報を記憶する。なお、群れにおける最良位置情報ｇｂｅｓｔをグローバルベストｇｂｅｓｔと記載することもある。
【数５】
2020095613.tif 000007
【００３７】
ステップ５：各粒子の速度ｖと位置ｘの更新
以下の式（９）及び式（１０）にしたがって速度ｖと位置ｘを計算する。
【数６】
2020095613.tif 000008
ここで、ｗは慣性係数、Ｃ１及びＣ２は加速度係数、ｒ１及びｒ２は０以上１以下の一様乱数、ｘｉはＮ次元ユークリッド空間内の粒子ｉの時間ｋにおける位置ベクトル、ｖｉはＮ次元ユークリッド空間内の粒子ｉの時間ｋにおける速度ベクトル（単位時間あたりの移動ベクトル）である。
【００３８】
ステップ６：終了条件判定
収束条件を満たすまでｋをｋ＋１に更新してステップ３に戻る。
【００３９】
［２・３・２  ＰＳＯの拡張］
２・２節で説明したように、評価関数Ｊの個数と同一数のＰＳＯを用意し、各評価関数Ｊを最小にする最適解を得ることでＰＳＯを適応制御系に対応できるように拡張する。ここで、ｎ個の評価関数Ｊに対応するＰＳＯをＰＳＯｎと記載する。ＰＳＯを実行するコンピュータのメモリを節約すべく、繰り返し計算の回数の上限値をあらかじめ定める。例えば、上限値を１とする場合、評価区間の過去の入出力データは記憶せず、現在時刻の入出力データのみを使用することになる。すなわち、ＰＳＯの繰り返し計算は行わず、評価関数Ｊの評価区間につき、１回しか各粒子の位置を更新しない。
【００４０】
一般的なＰＳＯはパーソナルベストｐｂｅｓｔ、グローバルベストｇｂｅｓｔ及びそれらの評価関数値を記憶し、記憶したパーソナルベストｐｂｅｓｔの評価関数Ｊと更新された各粒子の位置に関する評価関数Ｊとに基づいて、パーソナルベストｐｂｅｓｔを更新する。時変システムへの適用に際しては、刻々と変化する目標値に対する応答の評価をするために、各粒子の位置の評価に加え、パーソナルベストｐｂｅｓｔ及びグローバルベストｇｂｅｓｔを再評価して最適解を算出する。
【００４１】
本発明の実施の形態は、刻々と変化する目標値に対する応答を同一条件で評価することを目的としている。例えば、定常時のパーソナルベストｐｂｅｓｔの評価関数値と過渡時の各粒子の位置に関する評価関数値とを比較した場合、前者の値のほうが小さくなりやすく対等な比較ができなくなる。このような状況を防ぐべくパーソナルベスト及びグローバルベストを再評価する。なお、本発明の実施の形態ではグローバルベストｇｂｅｓｔも再評価しているが、これはＮ個の評価関数Ｊｎに対してＮ個のＰＳＯがあり、その中の最良解を得るためである。
【００４２】
パーソナルベストｐｂｅｓｔを再評価することによって各評価関数Ｊｎの単調減少はなくなるが、速度ｖが小さくなりすぎると位置ｘの更新が収束する場合もある。そこで、本発明の実施の形態では、各粒子の速度ｖの変化量が小さくなった場合や評価関数値の変動が小さくなった場合には、停滞した速度ｖに摂動を与えることで時変システムに対応する。評価関数Ｊｎの値を最小にするＰＳＯｎのアルゴリズムを以下に示す。
【００４３】
ステップ０：初期値の設定
各粒子のｐｂｅｓｔｉ、速度ｖ、位置ｘ、ｐｂｅｓｔｉの評価関数値、ｇｂｅｓｔの評価関数値、制御器Ｃのパラメータθの初期値を設定する。
【００４４】
ステップ１：各粒子の速度ｖ及び位置ｘの更新
評価関数Ｊｎに関するＰＳＯｎにおける各粒子の速度を更新する。
【数７】
2020095613.tif 000009
【００４５】
時変システムに対応するため、速度の変化量が調整パラメータεより小さい場合、粒子の位置が収束しないように摂動を与える。
【数８】
2020095613.tif 000010
【００４６】
ここで、ｓは１又は−１が等確率で出現する乱数、ｒ３は０以上１以下の一様乱数、γは調整パラメータであり各粒子の１０％程度の値を与え、εは摂動を与えるか否かを決定するための閾値である。式（１２）で得た各粒子の速度を用いて次式（１３）により各粒子の位置を更新する。
【００４７】
【数９】
2020095613.tif 000011
【００４８】
ステップ２：評価関数Ｊｎの値を計算し、各粒子の最良位置情報ｐｂｅｓｔｉの更新
ＰＳＯｎにおける各粒子の評価関数Ｊｎ（ｘｉ）及びＪｎ（ｐｂｅｓｔｉ）の評価値を求め、次式（１４）により各粒子の最良位置情報を更新する。
【００４９】
【数１０】
2020095613.tif 000012
【００５０】
ステップ３：ＰＳＯｎにおける群れにおける最良位置情報ｇｂｅｓｔｎの更新
ＰＳＯｎにおける評価関数Ｊｎ（ｐｂｅｓｔｉ）及びＪｎ（ｇｂｅｓｔｎ）の評価値を求め、次式（１５）により群れの最良位置情報グローバルベストｇｂｅｓｔを更新する。
【００５１】
【数１１】
2020095613.tif 000013
【００５２】
ステップ４：全体のｇｂｅｓｔを決定
ＰＳＯｎで計算されたグローバルベストｇｂｅｓｔｎ（ｎ＝１，・・・，Ｎ）と現在の最良位置情報ｇｂｅｓｔとを比較し、最良位置情報ｇｂｅｓｔを更新する。この値が制御器Ｃのパラメータθの最適解となる。
【００５３】
【数１２】
2020095613.tif 000014
【００５４】
ステップ５：次の時間ステップで制御器Ｃに最適解を反映させ、ｋをｋ＋１に更新してステップ１に戻る。
【００５５】
［３．シミュレーション結果］
［３・１  システムの定式化］
シミュレーションを実行するための制御対象Ｐ、ＦＲＩＴの参照モデルＭ、制御パラメータθの定式化について説明する。
【００５６】
［３・１・１  制御対象Ｐ］
式（１７）に示すように、むだ時間Ｌｄを含む１次遅れシステムを制御対象Ｐとする。
【数１３】
2020095613.tif 000015
ここで、ａはシステムの応答に関するパラメータである。ｓはラプラス演算子である。
【００５７】
［３・１・２  参照モデルＭ］
参照モデルＭの出力はむだ時間の長さよりも速く立ち上げることはできないので、参照モデルＭには立ち上がりのための調整パラメータＬＭを含ませる。ＬＭは制御対象Ｐのむだ時間の推定値に相当する。
【００５８】
【数１４】
2020095613.tif 000016
ここで、τＭはシステムのパラメータである。
【００５９】
［３・１・３  制御器Ｃのパラメータθ］
ＰＩＤ制御の場合、比例ゲイン、積分ゲイン、微分ゲインが制御器Ｃのパラメータになる。さらに、むだ時間に対応するためのパラメータがある。すなわち、制御器Ｃのパラメータθは以下の式（１９）で表される。
θ＝（ＫＰ，ＫＩ，ＫＤ，ＬＭ）    （１９）
ＰＩＤ制御の場合における制御器Ｃの伝達特性Ｃ（ｓ）は、以下の式（２０）となる。
【００６０】
【数１５】
2020095613.tif 000017
【００６１】
［３・２  シミュレーション］
図４（ａ）−（ｄ）は、ステップ入力を制御システムＳに印加したときのシミュレーション結果を示す模式図である。なお、サンプリング時間は８ミリ秒とし、離散化はゼロ次ホールドを用いてシミュレーションを行った。ステップ入力は、図１における信号ｒに対応する。
【００６２】
図４（ａ）の横軸は時間、縦軸はステップ入力のゲインを示す。図４（ａ）に示すように、制御システムＳに印加するステップ入力は、８秒から始まって８秒毎に、４秒間入力ゲインが１となり、他の時間は０となる信号である。制御器Ｃの初期パラメータθの突然の特性変動を確認するため、制御器Ｃの初期パラメータθは任意とし、３０秒経過時に制御対象Ｐのむだ時間Ｌｄを０．１秒から０．０２秒に変化させた。
【００６３】
図４（ｂ）は、［２・１・１］節で示した従来の手法と、［２・１・２］節及び［２・３・２］節で示した実施の形態に係る手法との参照軌道と応答とを示す模式図であり、特に６３．５秒から６７秒までの応答を示す図である。具体的には、図４（ｂ）において、太い実線はステップ入力を示し、細い実線は実施の形態に係る手法における参照モデルＭの出力を示し、破線は実施の形態に係る手法における制御対象Ｐの出力を示している。また、図４（ｂ）において、一点鎖線は従来の方法における参照モデルＭの出力を示し、二点鎖線は従来の方法における制御対象Ｐの出力を示している。
【００６４】
図４（ｂ）に示すように、従来の方法は制御対象Ｐの特性変動に対応できていないが、提案手法は参照軌道のむだ時間がほぼ制御対象Ｐのむだ時間と同じであり、その応答も参照軌道に追従できていることが確認できる。これより、数回の目標値入力で参照軌道に一致していることが確認でき、ＰＳＯの課題であるパラメータθが収束し続けてしまう問題も回避することがわかる。
【００６５】
図４（ｃ）は、制御対象Ｐのシステムパラメータであるａの時間変化を示す模式図である。図４（ｃ）に示すように、制御対象Ｐの伝達特性を示す式（１７）のパラメータであるａを、３０秒経過時を起点として徐々に増加させてシミュレーションを行った。また、図４（ｂ）に示すシミュレーションと同様に、３０秒経過時に制御対象Ｐのむだ時間Ｌｄを０．１秒から０．０２秒に変化させた。
【００６６】
図４（ｄ）は、従来の方法と実施の形態に係る手法との参照軌道と応答とを示す別の図であり、特に６３．５秒から６７秒までの応答を示す図である。図４（ｄ）に示すように、従来の方法は制御対象Ｐの特性変動に対応できていないが、実施の形態に係る手法は応答が参照軌道に追従していることが確認できる。
【００６７】
以上の結果から、実施の形態に係る手法は特性が変化するシステムに対し、ＦＲＩＴの評価関数Ｊを非線形のまま扱って制御器Ｃのパラメータθを更新できることがわかった。
【００６８】
＜実施の形態に係る情報処理装置１の機能構成＞
以上の技術を前提として、実施の形態に係る情報処理装置１を説明する。
【００６９】
図５は、実施の形態に係る情報処理装置１の機能構成を模式的に示す図である。情報処理装置１は、記憶部２と制御部３とを備える。図５において、矢印は主なデータの流れを示しており、図５に示していないデータの流れがあってもよい。図５において、各機能ブロックはハードウェア（装置）単位の構成ではなく、機能単位の構成を示している。そのため、図５に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に分かれて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。
【００７０】
記憶部２は、情報処理装置１を実現するコンピュータのＢＩＯＳ（Basic Input Output System）等を格納するＲＯＭ（Read Only Memory）や情報処理装置１の作業領域となるＲＡＭ（Random Access Memory）、ＯＳ（Operating System）やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等の大容量記憶装置である。
【００７１】
制御部３は、情報処理装置１のＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）等のプロセッサであり、記憶部２に記憶されたプログラムを実行することによって時系列データ取得部３０、入力信号推定部３１、モデル出力算出部３２、窓関数設定部３３、及びパラメータ更新部３４として機能する。
【００７２】
なお、図５は、情報処理装置１が単一の装置で構成されている場合の例を示している。しかしながら、情報処理装置１は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部３を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。
【００７３】
前提技術の［２・１・２］節で説明したように、実施の形態に係る情報処理装置１は、図１に示す制御システムＳにおける制御器Ｃのパラメータθを算出する装置である。すなわち、情報処理装置１は、制御器Ｃと、制御器Ｃの出力を入力とする制御対象Ｐと、制御対象Ｐに入力する入力信号を入力として制御対象Ｐの出力をモデル化する参照モデルＭを備え、制御対象Ｐの出力が制御器Ｃの入力にフィードバックされる制御システムＳにおいて、制御器Ｃの制御パラメータθを算出する。
【００７４】
時系列データ取得部３０は、制御器Ｃの出力の時系列データである第１時系列データと、制御対象Ｐの出力の時系列データである第２時系列データとを逐次的に取得する。ここで、第１時系列データは、図１において制御対象Ｐに入力する制御量ｕに相当し、第１時系列データは、図１における制御対象Ｐの出力ｙに相当する。したがって、以下本明細書において、第１時系列データを「第１時系列データｕ（ｋ）」、第２時系列データを「第２時系列データｙ（ｋ）」と記載する。なお、ｋはサンプリング番号を示す指標値である。
【００７５】
入力信号推定部３１は、制御器Ｃの制御パラメータであるパラメータθ、第１時系列データｕ、及び第２時系列データｙから、制御器Ｃに入力する入力信号の時系列データの推定値である第３時系列データを推定する。ここで、制御器Ｃに入力する入力信号は、図１における制御器Ｃに入力する信号ｒに相当し、第３時系列データは、式（１）で示す参照信号ｒ（θ，ｋ）に相当する。そこで、以下本明細書において、第３時系列データを「第３時系列データｒ（θ，ｋ）」と記載する。
【００７６】
モデル出力算出部３２は、入力信号推定部３１が推定した入力信号の時系列データの推定値である第３時系列データｒ（θ，ｋ）を入力とした場合の参照モデルＭの出力の時系列データである第４時系列データを算出する。ここで、第４時系列データは、図１における参照モデルＭの出力Ｍ（ｚ）ｒ（θ，ｋ）に相当する。そこで、以下本明細書において、第４時系列データを「第４時系列データＭ（ｚ）ｒ（θ，ｋ）」と記載する。
【００７７】
窓関数設定部３３は、第２時系列データｙ（ｋ）と第４時系列データＭ（ｚ）ｒ（θ，ｋ）との差分信号に、所定の幅を持つ窓関数を設定する。窓関数設定部３３が差分信号に設定する窓関数は、前提技術の［２・２］節で説明した矩形窓に相当する。所定の幅の具体的な値は、情報処理装置１の計算能力や制御対象Ｐの制御に求められるリアルタイム性等を考慮して定めればよい。
【００７８】
パラメータ更新部３４は、窓関数設定部３３が設定した窓関数の範囲における差分信号を入力とする所定の評価関数Ｊの評価値に基づいて制御器Ｃのパラメータθを更新する。具体的には、パラメータ更新部３４は、前提技術の［２・３・２］節で説明した拡張したＰＳＯを用いて、前提技術の［２・１・２］節で説明した時変システムに拡張したＦＲＩＴに基づいて、制御器Ｃのパラメータθを更新する。これにより、実施の形態に係る情報処理装置１は、時変なフィードバックシステムである制御システムＳにおける制御器Ｃのパラメータθを自動で調整することができる。
【００７９】
前提技術の［２・２］節において図３を参照しながら説明したように、窓関数設定部３３は、差分信号において複数の異なる時刻を起点とする複数の窓関数を設定する。パラメータ更新部３４は、複数の窓関数それぞれの範囲において、差分信号が小さくなるように制御器Ｃのパラメータθを更新する。
【００８０】
これにより、情報処理装置１は、制御器Ｃのパラメータθを異なるタイミングで更新することができる。また、情報処理装置１は、過去の更新結果を利用して評価関数Ｊの計算をするので、現在時刻のデータのみを使用するだけでよく、結果として情報処理装置１の計算負荷を低減することができる。
【００８１】
さらに、図３に示すように、窓関数設定部３３は、複数の窓関数のそれぞれが、他の少なくとも一つの窓関数と重複する区間を持つように、複数の窓関数を設定する。これにより、情報処理装置１は、１つの窓関数を用いる場合と比較してパラメータθの更新頻度を上げることができる。
【００８２】
前提技術の［２・３・２］節で説明したように、パラメータ更新部３４は、ある窓関数の範囲における差分信号を入力とする評価関数Ｊの評価値が、既に計算が終了している他の窓関数の範囲における差分信号を入力とする評価関数Ｊの評価値よりも、評価が低いことを示す値である場合、他の窓関数の範囲において更新された制御器Ｃのパラメータθを、制御器Ｃのパラメータとして採用し更新する。具体的には、パラメータ更新部３４は、式（１５）にしたがってグローバルベストｇｂｅｓｔを更新する。
【００８３】
前提技術の［２・３・２］節で説明したＰＳＯの拡張は、複数の窓関数の範囲において個別に評価関数Ｊが評価される。式（１５）にしたがってグローバルベストｇｂｅｓｔを更新することにより、パラメータ更新部３４は、複数の評価関数Ｊに対応する複数のＰＳＯの中の最良解を得ることができる。
【００８４】
さらに、前提技術の［２・３・２］節で説明したように、パラメータ更新部３４は、あらかじめ定められた所定の回数を反復回数の上限として、ＰＳＯの手法を用いて各窓関数の範囲における制御器Ｃのパラメータθを更新する。例えば、反復回数の上限値を１回に定めた場合、パラメータ更新部３４は、繰り返し計算は行わずに評価関数Ｊの各評価区間につき、１回しかパラメータθを更新しないことになる。
【００８５】
その代わり、パラメータ更新部３４は、過去の更新結果を利用して評価関数Ｊの計算をする。制御システムＳが時変であっても、近接する窓関数の範囲においては近似的に時不変と考えれば、各評価区間についてパラメータθの繰り返し計算の回数が少なくても、隣接する窓関数の範囲に繰り返し計算を引き継ぐことで、結果として多数の繰り返し計算を行うことと近い結果を得ることができる。ただし，反復回数が２回以上の場合、評価関数を計算するための入出力データをＲＡＭに記憶する必要がある。所定の回数の具体的な値は、情報処理装置１の計算能力や制御対象Ｐの制御に求められるリアルタイム性およびコントローラのＲＡＭ容量等を考慮して定めればよい。
【００８６】
このように、パラメータ更新部３４があらかじめ定められた所定の回数を反復回数の上限として制御器Ｃのパラメータθを更新することにより、情報処理装置１は、パラメータθの更新に係る計算コストを抑制することができる。
【００８７】
＜情報処理装置１が実行する情報処理の処理フロー＞
図６は、実施の形態に係る情報処理装置１が実行する情報処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置１が起動したときに開始する。
【００８８】
時系列データ取得部３０は、制御器Ｃの出力の時系列データである第１時系列データｕを逐次的に取得する（Ｓ２）。また、時系列データ取得部３０は、制御対象Ｐの出力の時系列データである第２時系列データｙを逐次的に取得する（Ｓ４）。
【００８９】
入力信号推定部３１は、制御器Ｃのパラメータθ、第１時系列データｕ、及び第２時系列データｙから、式（１）に基づいて、制御器Ｃに入力する入力信号の時系列データの推定値である第３時系列データｒ（θ，ｋ）を推定する（Ｓ６）。
【００９０】
モデル出力算出部３２は、入力信号推定部３１が推定した入力信号の時系列データの推定値である第３時系列データｒ（θ，ｋ）を入力とした場合の、参照モデルＭの出力の時系列データである第４時系列データＭ（ｚ）ｒ（θ，ｋ）を算出して取得する（Ｓ８）。
【００９１】
窓関数設定部３３は、第２時系列データｙと第４時系列データＭ（ｚ）ｒ（θ，ｋ）との差分信号の時系列データである差分データを取得する（Ｓ１０）。窓関数設定部３３は、取得した差分データに、所定の幅を持つ窓関数を設定する（Ｓ１２）。
【００９２】
パラメータ更新部３４は、窓関数設定部３３が設定した窓関数の範囲における差分データを入力とする所定の評価関数Ｊの評価値に基づいて、制御器Ｃのパラメータθを更新する（Ｓ１２）。
【００９３】
パラメータ更新部３４が制御器Ｃのパラメータθを更新すると、本フローチャートにおける処理は終了する。情報処理装置１は、上記の処理を繰り返すことにより、時変なフィードバックシステムにおける制御器Ｃのパラメータを自動で調整することができる。
【００９４】
＜実施の形態に係る情報処理装置１が奏する効果＞
以上説明したように、実施の形態に係る情報処理装置１によれば、時変なフィードバックシステムにおける制御器Ｃのパラメータを自動で調整することができる。
【００９５】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の分散・統合の具体的な実施の形態は、以上の実施の形態に限られず、その全部又は一部について、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を合わせ持つ。
【符号の説明】
【００９６】
１・・・情報処理装置
２・・・記憶部
３・・・制御部
３０・・・時系列データ取得部
３１・・・入力信号推定部
３２・・・モデル出力算出部
３３・・・窓関数設定部
３４・・・パラメータ更新部
Ｃ・・・制御器
Ｐ・・・制御対象
Ｍ・・・参照モデル
Ｓ・・・制御システム
【図１】
2020095613.tif 000018
【図２】
2020095613.tif 000019
【図３】
2020095613.tif 000020
【図４】
2020095613.tif 000021
【図５】
2020095613.tif 000022
【図６】
2020095613.tif 000023