(57)【特許請求の範囲】
【請求項１】
機械動特性のモデルに従って機械の動作を制御する方法であって、
制御入力に対する制約、および前記機械の状態に対する制約を条件としたコスト関数の最適化に基づいて前記モデルを用いて求められた前記制御入力を用いて、前記機械の前記動作を反復的に制御することを含み、
前記動作は、複数の反復にわたってオンラインで制御され、
各反復は、
以前の反復について求められた以前の制御入力を用いて制御された前記機械の出力の測定結果を用いて、前記機械の現在の状態を求めることと、
前記機械の物理量を表す、前記機械動特性のモデルのパラメーターを更新し、前記現在の状態と、前記機械動特性の前記モデルを用いて推定された状態との間の予測誤差を縮小することと、
前記コスト関数を最適化し、制御入力を生成することと、
前記制御入力を用いて前記機械を制御することと、
を含み、
前記コスト関数は、前記機械の性能に関係する第１の項と、前記機械動特性の前記モデルの前記パラメーターの推定を改善する第２の項を含み、前記第２の項は、前記予測誤差の関数によって重み付けられ、前記第２の項は、前記機械動特性の前記モデルの予測されたパラメーター誤差共分散の情報汎関数を含み、
該方法は、方法を実行する格納された命令がプロセッサにより実行されるとき、前記命令は、前記方法の少なくともいくつかのステップを実行する、機械動特性のモデルに従って機械の動作を制御する方法。
【請求項２】
前記予測誤差の関数は、非負の非減少関数である、請求項１に記載の方法。
【請求項３】
前記機械動特性の前記モデルは、前記モデルのパラメーター間の関係を規定する公称モデルと、前記モデルの少なくとも１つのパラメーターの値の範囲を規定する不確実性モデルとを含み、前記機械動特性の前記モデルの前記パラメーターは、前記パラメーターの更新された値が前記値の範囲内になるように更新される、請求項１に記載の方法。
【請求項４】
前記不確実性モデルは、前記公称モデルおよび前記不確実性モデルの組み合わせが、加法性外乱の凸結合を有する線形モデルの凸結合に含まれるように拡張される、請求項３に記載の方法。
【請求項５】
前記機械動特性の前記モデルは、前記機械動特性の前記モデルの前記パラメーターが前記線形モデルの凸結合および前記加法性外乱の凸結合内になるように再帰的に更新される、請求項４に記載の方法。
【請求項６】
前記機械動特性の前記モデルを更新することは、
前記線形モデルの組み合わせベクトルおよび前記加法性外乱の組み合わせベクトルを求めることと、
前記線形モデルの前記組み合わせベクトルを前記線形モデルの前記凸結合に投影することと、
前記加法性外乱の前記組み合わせベクトルを前記加法性外乱の前記凸結合に投影することと、
を含む、請求項４に記載の方法。
【請求項７】
前記制御入力に対する前記制約は、前記制御入力に対する制御不変制約であって、該制御不変制約を満たす前記制御入力の任意の値が、前記機械の前記動作に対する制約を満たす状態の制御不変部分集合内に前記機械の状態を維持するように選択された前記制御入力に対する制御不変制約を含み、前記制御不変部分集合内の前記機械の任意の状態について、前記制御不変制約を満たすとともに、前記不確実性モデルによって規定された前記範囲内の前記機械動特性の前記モデルの前記パラメーターの全ての値について前記機械の前記状態を前記制御不変部分集合内に維持する、許容可能な制御入力が存在する、請求項３に記載の方法。
【請求項８】
前記制御入力に対する前記制約は、前記機械の前記動作に対する制約を満たす状態の制御不変部分集合内の任意の状態について、制御不変制約が、前記公称モデルおよび前記不確実性モデルによって規定された前記機械動特性の前記モデルの前記パラメーターの全ての値について前記動作中満たされるような制御入力が存在することを保証する後方到達可能反復によって前記線形モデルの前記凸結合および前記加法性外乱の前記凸結合から求められた前記制御不変制約を含む、請求項４に記載の方法。
【請求項９】
前記制御入力に対する前記制約は、前記公称モデルおよび前記不確実性モデルによって規定された前記機械動特性の前記モデルの前記パラメーターの全ての値について、前記機械の前記状態を目標値に収束させる安定性制約を含む、請求項７に記載の方法。
【請求項１０】
前記安定性制約は、前記機械の制御リアプノフ関数を含む、請求項９に記載の方法。
【請求項１１】
前記制御リアプノフ関数は、前記制御不変制約を満たす前記機械の全ての状態について実現可能値低減テストを満たす無限ノルム制御リアプノフ関数であり、前記実現可能値低減テストは、
前記無限ノルム制御リアプノフ関数を記述する行列の行を選択することと、
前記制御不変制約を満たす前記機械の少なくとも１つの入力について前記無限ノルム制御リアプノフ関数を記述する前記行列の前記行に対する実現可能値低減を、正の条件および負の条件について満たす前記機械の前記状態の凸成分を求めることと、
前記凸成分の和集合を求めることと、
前記機械の前記状態の前記制御不変部分集合内の前記機械の全ての前記状態が前記凸成分の前記和集合に含まれることを検証することと、
からなる、請求項１０に記載の方法。
【請求項１２】
前記最適化は、数値最適化アルゴリズムによって解かれる、請求項１に記載の方法。
【請求項１３】
機械動特性のモデルのパラメーター間の関係を規定する公称モデルと、前記モデルの少なくとも１つのパラメーターの値の範囲を規定する不確実性モデルとを含む前記機械動特性の前記モデルに従って機械の動作を制御する方法であって、
コスト関数の最適化に基づいて前記機械動特性の前記モデルを用いて求められた制御入力を用いて、前記機械の前記動作を反復的に制御すること、
を含み、前記最適化は、前記制御入力に対する制約、および前記機械の状態に対する制約を含む前記機械の前記動作に対する制御不変制約であって、該制御不変制約を満たす前記制御入力の任意の値が、前記機械の前記動作に対する制約を満たす状態の制御不変部分集合内に前記機械の状態を維持するように選択された前記制御入力に対する制御不変制約を条件とし、前記制御不変部分集合内の前記機械の任意の状態について、前記制御不変制約を満たすとともに、前記不確実性モデルによって規定された前記範囲内の前記モデルの前記パラメーターの全ての値について前記機械の前記状態を前記制御不変部分集合内に維持する、許容可能な制御入力が存在し、前記機械動特性の前記モデルの前記パラメーターは、前記機械の物理量を表し、前記動作は、複数の反復にわたってオンラインで制御され、各反復は、
以前の反復について求められた以前の制御入力を用いて制御された前記機械の出力の測定結果を用いて、前記機械の現在の状態を求めることと、
前記パラメーターの更新された値が前記値の範囲内にあるように前記機械動特性のモデルのパラメーターを更新し、前記現在の状態と、前記機械動特性の前記以前のモデルを用いて推定された状態との間の予測誤差を縮小することと、
前記コスト関数を最適化し、制御入力を生成することと、
前記制御入力を用いて前記機械を制御することと、
を含み、
前記コスト関数は、前記機械の性能に関係する第１の項と、前記機械動特性の前記モデルの前記パラメーターの推定を改善する第２の項を含み、前記第２の項は、前記予測誤差の関数によって重み付けられ、前記第２の項は、前記機械動特性の前記モデルの予測されたパラメーター誤差共分散の情報汎関数を含み、
該方法は、方法を実行する格納された命令がプロセッサにより実行されるとき、前記命令は、前記方法の少なくともいくつかのステップを実行する、機械動特性のモデルに従って機械の動作を制御する方法。
【請求項１４】
機械動特性のモデルに従って機械の動作を反復的に制御する制御システムであって、
前記モデルのパラメーター間の関係を規定する公称モデルと、前記モデルの少なくとも１つのパラメーターの値の範囲を規定する不確実性モデルとを含む前記機械の前記モデル、および制御入力に対する制約と前記機械の状態に対する制約を含む前記機械の前記動作に対する前記制約を記憶するメモリと、
少なくとも１つのプロセッサであって、
前記機械の出力の測定結果を用いて、前記機械の現在の状態を求め、
前記機械動特性のモデルのパラメーターを更新し、前記現在の状態と、前記機械動特性の前記モデルを用いて推定された状態との間の予測誤差を縮小し、前記パラメーターの更新された値が前記値の範囲内になるようにし、
コスト関数を最適化して制御入力を生成し、前記コスト関数は、前記機械の性能に関係する第１の項と、前記機械動特性の前記モデルの前記パラメーターの推定を改善する第２の項を含み、前記第２の項は、前記予測誤差の関数によって重み付けられ、前記第２の項は、前記機械動特性の前記モデルの予測されたパラメーター誤差共分散の情報汎関数を含み、
前記制御入力を用いて前記機械を制御する、機械動特性のモデルに従って機械の動作を反復的に制御する制御システム。
【請求項１５】
前記制御入力に対する前記制約は、前記制御入力に対する制御不変制約であって、該制御不変制約を満たす制御入力の任意の値が、前記機械の前記動作に対する制約を満たす状態の制御不変部分集合内に前記機械の状態を維持するように選択された前記制御入力に対する制御不変制約を含み、前記制御不変部分集合内の前記機械の任意の状態について、前記制御不変制約を満たすとともに、前記不確実性モデルによって規定された前記範囲内の前記モデルの前記パラメーターの全ての値について前記機械の前記状態を前記制御不変部分集合内に維持する、許容可能な制御入力が存在する、請求項１４に記載の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、機械の動作を制御することに関し、より詳細には、後退ホライズンにわたってモデル予測制御（ＭＰＣ）を用いて動作を制御することに関する。
【背景技術】
【０００２】
機械制御では、ソフトウェアまたはハードウェアの一方または組み合わせを用いて実施することができるコントローラが、例えば、センサーおよび／または推定器、機械の出力から取得された測定値に基づいて、この機械への入力のコマンド値を生成する。コントローラは、機械が所望のとおり動作するように、例えば、動作が所望の基準プロファイルに従うか、または出力をある特定の値に調整するように、入力を選択する。いくつかの場合には、コントローラは、例えば、対応する変数がいくつかの所定の範囲内にあることを確保して物理的仕様から安全な機械動作を確保する制約を機械の入力および出力に対して課す。そのような制約を課すために、コントローラは、多くの場合、機械のモデルを用いて、コマンド、すなわち、制御入力が印加されたときに機械がどのような挙動を引き起こすのかを予測する。制約を機械の入力および出力に対して課している間に機械の制御を達成することが可能なコントローラにおけるプロセスの１つの例は、モデル予測制御（ＭＰＣ）である。
【０００３】
ＭＰＣは、機械のモデルの反復的な有限ホライズン最適化に基づいており、適切な制御動作を取るために将来のイベントを予想する能力を有する。これは、制約を条件として、将来の有限時間ホライズンにわたって機械の動作を最適化し、あとは、現在のタイムスロットにわたって制御を実施するだけで達成される。例えば、制約は、機械の物理的限界、機械の動作に対する安全性限界、および軌道上の性能限界を表すことができる。機械の制御ストラテジーは、そのような制御ストラテジーについて、機械によって引き起こされた運動が全ての制約を満たすときに許容することができる。例えば、時間ｔにおいて、機械の現在の状態がサンプリングされ、許容可能なコスト最小化制御ストラテジーが、将来における比較的短い時間ホライズンについて求められる。具体的には、オンライン計算またはリアルタイム計算が、時間ｔ＋Ｔまでのコスト最小化制御ストラテジーを求める。制御のステップが実施された後、状態が再びサンプリングされ、計算がその時の現在の状態から開始して繰り返され、新たな制御および新たな予測された状態パスが得られる。予測ホライズンは、前方にシフトし、この理由から、ＭＰＣは、後退ホライズン制御とも呼ばれる。
【０００４】
ＭＰＣは、システムの様々な物理的制約および仕様制約を条件として、有限の将来の時間にわたって最適制御問題を解くことによって、システムのモデルおよび所望の基準軌道に基づいて、機械の運動の実際の軌道を生成するのに用いることができる。ＭＰＣは、機械の基準運動と実際の運動との間の誤差、機械のエネルギー消費、および誘発されるシステム振動等の機械の運動の性能指数を最小化することを目標とする。
【０００５】
ＭＰＣは、モデルベースのフレームワークであるので、ＭＰＣの性能は、必然的に、最適制御計算において用いられる予測モデルの品質に依存する。しかしながら、ほとんどの場合、いくつかのパラメーターは、正確に測定されないので、機械動特性のモデルは、事前には未知である。このため、コントローラは、機械がすでに動作中に、機械のモデルの未知のパラメーターを推定することが必要な場合があり、このため、パラメーターが推定されている間、制約を課す場合もある。そのような問題を取り扱う従来の手法は、適応型ＭＰＣまたは学習ベースのＭＰＣを含み、これらのＭＰＣでは、未知の機械パラメーターを学習するために、ＭＰＣ制御問題が、閉ループ同定方式を用いて強化される。未知のパラメーターを学習することによって、コントローラによって達成される機械の動作が改善される。
【０００６】
しかしながら、適応型ＭＰＣおよび学習ベースのＭＰＣの現在の手法は、複数の理由のために限界がある。第１に、未知のパラメーターを推定している間、制約が違反される可能性があるか、または制約を控えめに課すために、制御性能が過度に低減される場合がある。実際に、特許文献１に記載されている方法等のいくつかの既存の方法は、制約を単に無視し、このため、制約を条件として機械の許容可能な制御ストラテジーを生成することが可能でない。
【０００７】
第２に、閉ループ同定方法をＭＰＣコントローラに単に含めることによって生成される、所望の値への推定される未知のパラメーターの収束は、遅くなる可能性がある。これは、パラメーターを推定するために機械の強い励振が同定に必要とされている間、コントローラは、機械の励振を制限するので、適応型制御における一般的な問題を反映している。また、未知のパラメーターを用いて制約を課す控えめな方法は、多くの場合、制約の違反を防止するために大きな励振を回避し、このため、推定値のさらに遅い収束が得られる。最後に、適応型ＭＰＣのいくつかの方法は、かなりの計算量を必要とし、高価なプロセッサにおいても低速でしか実行することができず、低い応答帯域幅を有する機械を制御することしか可能でない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許出願公開第２０１１／００２２１９３号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
したがって、不確実性を含むＭＰＣを用いて制約を受ける機械の動作を制御する方法が必要とされている。
【課題を解決するための手段】
【００１０】
本発明のいくつかの実施の形態は、機械の動作に対する制約がモデルのパラメーターの任意の許容可能な値について違反されないことを保証しつつ、機械の各状態に印加することができる制御入力の値に対する制約を用いることによって、機械の動作に対して制約を課すことと、機械のモデルのパラメーターの値への高速な収束とを有するモデル予測制御（ＭＰＣ）方法を提供することが可能であるという認識に基づいている。いくつかの実施の形態では、ＭＰＣの制御ストラテジーは、制御の性能と、パラメーターの推定率とを合わせて最適化する。
【００１１】
いくつかの実施の形態は、機械パラメーターの不確実な値の許容可能な範囲に基づいて規定されたモデルのファミリーに対して制約を課すことが可能であるという認識に基づいている。このモデルのファミリーは、実現可能な状態の集合を提供する。例えば、これらの実現可能な状態の特別な部分集合は、この部分集合内の全ての状態について、それらの既知の範囲内の未知の機械パラメーターの全ての値について、状態をその部分集合内に維持する実現可能な制御入力が存在するように、設計することができる。
【００１２】
最適化された入力が状態を上記特別な部分集合内に維持するように、ＭＰＣを用いてシステムを制御することが可能であるということがさらに認識されている。これによって、ＭＰＣによって制御されるシステムは、パラメーターが不確実である場合を含む全ての制約を常に満たすことが保証される。
【００１３】
状態を上記特別な部分集合内に維持する入力の中で、制御と同定性能との間のトレードオフを最適化する入力を選ぶことができるということがさらに認識されている。構築することによって、この入力も、未知のパラメーターの真の値にかかわらず、制約の充足を保証する。
【００１４】
ＭＰＣ予測モデルおよび制御と同定との間のトレードオフは、未知のパラメーターの同定に基づいてオンラインで更新することができるということ、並びに制御と同定性能との間のトレードオフは、残っている不確実性に基づいて調整することができるということも認識されている。
【００１５】
したがって、本発明の１つの実施の形態は、機械のモデルに従って機械の動作を制御する方法を開示する。本方法は、制御入力に対する制約を条件としたコスト関数の最適化に基づいて前記モデルを用いて求められた前記制御入力を用いて、前記機械の前記動作を反復的に制御すること、を含み、少なくとも１つの現在の反復は、前記機械の以前のモデルを用いて以前のコスト関数を最適化することによって以前の反復について求められた以前の制御入力を用いた前記制御の後に、前記機械の現在の状態を求めることと、前記機械の現在のモデルを求めて、前記現在の状態と、前記機械の前記以前のモデルを用いて推定された状態との間の相違を縮小することと、前記以前のモデルと前記現在のモデルとの間の相違に基づいて前記コスト関数を更新して、現在のコスト関数を生成することと、前記現在のモデルおよび前記現在のコスト関数を用いて前記現在の反復における前記制御の現在の制御入力を求めることと、を含み、該方法のステップは、前記機械の前記動作を制御するコントローラのプロセッサによって実行される。
【００１６】
別の実施の形態は、機械のモデルのパラメーター間の関係を規定する公称モデルと、前記モデルの少なくとも１つのパラメーターの値の範囲を規定する不確実性モデルとを含む前記モデルに従って前記機械の動作を制御する方法を開示する。本方法は、コスト関数の最適化に基づいて前記機械の前記モデルを用いて求められた制御入力を用いて、前記機械の前記動作を反復的に制御すること、を含み、前記最適化は、前記制御入力に対する制御不変制約であって、該制御不変制約を満たす前記制御入力の任意の値が、前記機械の前記動作に対する制約を満たす状態の制御不変部分集合内に前記機械の状態を維持するように選択された前記制御入力に対する制御不変制約を条件とし、前記制御不変部分集合内の前記機械の任意の状態について、前記制御不変制約を満たすとともに、前記不確実性モデルによって規定された前記範囲内の前記モデルの前記パラメーターの全ての値について前記機械の前記状態を前記制御不変部分集合内に維持する、許容可能な制御入力が存在し、少なくとも１つの現在の反復は、前記機械の以前のモデルを用いて以前のコスト関数を最適化することによって以前の反復について求められた以前の制御入力を用いた前記制御の結果から得られる前記機械の現在の状態を求めることと、前記機械の現在のモデルの前記パラメーターの現在の値が前記値の範囲内にあるように前記現在のモデルを求めて、前記測定された現在の状態と、前記機械の前記以前のモデルを用いて推定された状態との間の相違を縮小することと、前記以前のモデルと前記現在のモデルとの間の相違に基づいて前記コスト関数を更新することであって、前記コスト関数は、前記動作の目的に従って前記制御入力の第１の値を求める第１の項を含むとともに、前記機械の前記現在の状態と前記機械のモデルを用いて推定された状態との間の前記相違を縮小する前記制御入力の第２の値を求める第２の項を含み、前記最適化は、前記第１の項および前記第２の項の組み合わせを最適化するようになっており、前記コスト関数を前記更新することは、前記組み合わせにおける前記第２の項の重みを変化させることを含むことと、前記現在のモデルおよび前記現在のコスト関数を用いて前記現在の反復における前記制御の現在の制御入力を求めることと、を含み、該方法のステップは、前記機械の前記動作を制御するコントローラのプロセッサによって実行される。
【００１７】
さらに別の実施の形態は、機械のモデルに従って機械の動作を反復的に制御する制御システムを開示する。本システムは、前記モデルのパラメーター間の関係を規定する公称モデルと、前記モデルの少なくとも１つのパラメーターの値の範囲を規定する不確実性モデルとを含む前記機械の前記モデル、および前記機械に対する前記制約を記憶するメモリと、少なくとも１つのプロセッサであって、前記機械の現在のモデルを用いて現在の制御入力に対する制約を条件として現在のコスト関数を最適化することによって現在の反復中の前記制御の前記現在の制御入力を求める制御入力モジュールと、前記現在のモデルの前記パラメーターの現在の値が、前記値の範囲を有するとともに、前記機械の以前のモデルを用いて以前のコスト関数を最適化することによって以前の反復について求められた以前の制御入力を用いた前記制御の結果から得られた前記機械の現在の状態と、前記機械の前記以前のモデルを用いて推定された推定状態との間の相違を縮小するように、前記機械の前記現在のモデルを求めるモデル学習モジュールと、前記機械の前記現在の状態と、以前の機械状態および以前の機械制御入力から前記現在の機械モデルを用いて推定された前記機械の状態との間の相違を用いて、前記以前のコスト関数を更新するコスト関数モジュールと、を含む前記コントローラのモジュールを実行する、少なくとも１つのプロセッサと、を備える。
【図面の簡単な説明】
【００１８】
【図１Ａ】本発明の１つの実施の形態による機械の動作を制御するコントローラのブロック図である。
【図１Ｂ】本発明の１つの実施の形態による図１Ａのコントローラの一般的な構造のブロック図である。
【図２Ａ】本発明の１つの実施の形態によるコントローラの様々なモジュールのブロック図である。
【図２Ｂ】本発明の１つの実施の形態によるコントローラのモジュールによって実行される方法のブロック図である。
【図３Ａ】本発明のいくつかの実施の形態の原理を視覚化した座標系に配置された一例示のポリトープの概略図である。
【図３Ｂ】機械の状態に対するモデルのパラメーターの不確実性の影響の概略図である。
【図４Ａ】本発明のいくつかの実施の形態による機械の動作に対する様々な制約によって規定された状態の制御不変部分集合の２次元投影の一例の概略図である。
【図４Ｂ】本発明のいくつかの実施の形態に従って求められた、機械の状態の実現可能領域と制御不変部分集合との間の関係を示す概略図である。
【図５】本発明の１つの実施の形態による制御不変部分集合を求める後方可到達領域計算のブロック図である。
【図６】本発明の１つの実施の形態による状態の以前の集合を求める一例示の実施の態様のブロック図である。
【図７】本発明の１つの実施の形態による状態−入力の組を求める方法のブロック図である。
【図８】本発明の１つの実施の形態による制御不変リアプノフを求める方法のブロック図である。
【図９】本発明の１つの実施の形態による候補のリアプノフ関数の状態の部分集合を求める方法のブロック図である。
【図１０Ａ】有効な制御不変リアプノフ関数および無効な制御不変リアプノフ関数を判断するテストの概略図である。
【図１０Ｂ】有効な制御不変リアプノフ関数および無効な制御不変リアプノフ関数を判断するテストの概略図である。
【図１１】本発明の１つの実施の形態による機械のモデルを更新する方法のブロック図である。
【発明を実施するための形態】
【００１９】
図１Ａは、機械１０２の動作を制御する制御システム１０１のブロック図を示している。機械１０２は、その動作が、コマンドに応答して、位置、速度、電流、温度、数値等の量を変化させる装置である。機械の動作は、本明細書において用いられるように、そのような量を変化させる機械の運動を決定する。制御システムは、上記量のうちのいくつかの所望の軌道または目標点等の機械の所望の運動１０３を受け取り、制御入力１０４を介して機械を制御する。これらの制御入力は、機械の動作のパラメーターを変化させるコマンドを含むこともできるし、機械の運動に影響を与え、その結果、機械の量１０５を生成する電圧、圧力、トルク、力等のパラメーターの実際の値を含むこともできる。
【００２０】
制御システム１０１は、機械に直接またはリモートに接続されたセンサー、ハードウェア、またはソフトウェアから、機械の運動についての情報１０６を受信する。情報１０６は、機械の状態を含む。機械は、この状態を制御入力１０４の選択に用いる。情報１０６は、運動の量１０５のうちのいくつかまたは全てを含むことができ、機械についての追加の情報も含むことができる。量１０５、制御入力１０４、またはそれらの組み合わせには、機械の動作に対する制約１１４によるいくつかのあらかじめ規定された範囲内に留まるように要求することができる。
【００２１】
図１Ｂは、本発明の１つの実施の形態による制御システム１０１の一般的な構造を示している。制御システム１０１は、コントローラのモジュールを実行する少なくとも１つのプロセッサ１３０を備える。プロセッサ１３０は、モデル１１２および制約１１４を記憶するメモリ１２０に作動接続されている。本発明のいくつかの実施の形態の目的は、制約１１４を条件として機械１１２のモデルを用いて制御入力１０４を求めることである。いくつかの実施の形態の別の目的は、制約１１４が更新中満たされるように、機械のモデルを動作中に更新する（１１６）ことである。
【００２２】
図２Ａは、本発明の１つの実施の形態による制御システム１０１の様々なモジュールのブロック図を示している。本発明のいくつかの実施の形態では、機械のＭＰＣまたはモデルは、不確実性の少なくとも１つのパラメーターを含む。例えば、ロボットのアームのモデルは、物体をケアするアームの質量についての不確実性を含むことがある。列車の移動のモデルは、現在の天候条件における車輪とレールとの摩擦についての不確実性を含むことがある。いくつかの実施の形態では、制御システム１０１は、制御の不確実性を求めるのに用いられる。
【００２３】
いくつかの実施の形態では、機械のモデルは、モデル１１２のパラメーター間の関係を規定する公称モデル２０２と、モデル１１２および／または公称モデル２０２の少なくとも１つのパラメーターの値の範囲を規定する不確実性モデル２０３とを含む。例えば、公称モデルのパラメーターは、当該パラメーターのデフォルト値を用いることができる。例えば、公称モデル２０２は、理想的な条件における機械の運動を記述することができる。しかしながら、機械は、摩耗、外部動作、時間および天候に起因した変動、製造プロセスにおける不完全性に起因した正確に知られていない物理量、または測定誤差等の外部の影響を受け、したがって、機械の実際の運動は、公称モデルのものと正確に同じではない。例えば、１つの実施の形態は、公称モデルから開始して、機械状態値のシーケンスの観点から、現在のモデルが観察された機械の運動と一致するまで、現在のモデルを反復的に更新する。
【００２４】
機械量のうちのいくつかは、機械の動作に対する制約２０５によって規定される所望の範囲内に留まる必要がある。本発明のいくつかの実施の形態は、制御入力に対する制約２０６を、不確実性モデル２０３を考慮に入れて、機械の動作に対する制約２０５から求めることができるという付加的な認識に基づいている。例えば、制御入力に対する制約２０６は、制約２０６を満たす制御入力１０４によって制御される機械１０２が、不確実性モデル２０３によって規定された許容可能な範囲内にあるモデルのパラメーターの値の全ての変動について制約２０６を満たすことを保証するように求められる。
【００２５】
いくつかの実施の形態では、制約２０６は、オフラインで求められ、制約２０５は、機械の制御に用いられない。いくつかの実施の形態では、制約２０６は、機械を制御する少なくともいくつかの制約２０５と組み合わせて用いられる。
【００２６】
いくつかの実施の形態では、制御入力１０４は、当該制御入力に対する制約２０６を条件としたコスト関数２０９の最適化に基づいて求められる。制約２０６は、制御の実現可能性を保証するので、いくつかの実施の形態は、機械の動作の目的を達成する制御と、機械のモデルのパラメーターの不確実性を低減する割合を増加させる制御との間のトレードオフのための種々の項をコスト関数に含む。
【００２７】
例えば、コスト関数は、動作の目的に従って制御入力の第１の値を求める第１の項を含むことができ、機械の現在の状態と、機械のモデルを用いて推定された状態との間の相違を縮小する制御入力の第２の値を求める第２の項を含み、そのため、最適化は、これらの第１の項および第２の項の組み合わせを最適化し、コスト関数を更新することは、この組み合わせにおける第２の項の重みを変化させることを含む。
【００２８】
したがって、いくつかの実施の形態では、制御システム１０１の様々なモジュールは、異なる制御目的について異なる項を含むコスト関数の最適化を用いて、機械の公称モデルおよび不確実性モデルによって規定された値の範囲内で機械のモデルのパラメーターを更新しながら、機械の動作の目的を満たす機械の制御を達成する。
【００２９】
制御システムは、機械のモデルを記憶するメモリ１２０と、コントローラのモジュールを実行するプロセッサ１３０とを備える。モジュールは、現在のコスト関数２０９を最適化することによって現在の反復中に制御する現在の制御入力１０４を求める制御入力モジュール２０８を含む。この制御入力モジュールは、現在の制御入力に対する制約２０６を条件として、機械の現在のモデル２０１を用いて現在のコスト関数を最適化する。
【００３０】
制御システムは、機械の現在のモデル２０１を求めるモデル学習モジュール２０４も備える。このモデル学習モジュールは、現在のモデルのパラメーターの現在の値が、公称モデル２０２および不確実性モデル２０３によって規定された値の範囲を有するとともに、機械の以前のモデルを用いて以前のコスト関数を最適化することによって以前の反復の間に求められた以前の制御入力を用いて制御した結果得られた機械の現在の状態１０６と、機械の以前のモデルを用いて推定された推定状態２１６との間の相違を縮小するようになっている。
【００３１】
コントローラは、現在のコスト関数２０９を求めるコスト関数モジュール２０７も備える。例えば、コスト関数モジュールは、以前のモデルと現在のモデルとの間の相違を用いて以前のコスト関数を更新し、現在のコスト関数を生成する。制御のステップは、反復的に実行されるので、現在のモデルおよび現在のコスト関数は、後続の反復については以前のモデルおよび以前のコスト関数になる。例えば、以前のモデル、以前のコスト関数、および以前の制御入力は、以前の反復においては、現在のモデル、現在のコスト関数、および現在の制御入力として求められる。
【００３２】
図２Ｂは、制御システム１０１のモジュールによって実行される方法のブロック図を示している。本方法は、コスト関数の最適化に基づいて機械のモデルを用いて求められた制御入力を用いて、機械の動作を反復的に制御する（２７０）。本方法は、機械の以前のモデルを用いて以前のコスト関数を最適化することによって以前の反復について求められた以前の制御入力を用いた制御の結果から得られる機械の現在の状態を求める（２１０）。
【００３３】
本方法は、測定された現在の状態と、機械の以前のモデルを用いて推定された状態との間の相違を縮小する機械の現在のモデルを、この現在のモデルのパラメーターの現在の値が上記値の範囲を有するように調整し（２２０）、以前のモデルと現在のモデルとの間の相違に基づいてコスト関数を更新する（２３０）。この更新２３０は、機械の動作の目的を達成する制御と、機械のモデルのパラメーターの不確実性を低減する割合を増加させる制御との間のトレードオフを提供する。
【００３４】
いくつかの実施の形態では、コスト関数は、動作の目的に従って制御入力の第１の値を求める第１の項を含むとともに、機械の現在の状態と機械のモデルを用いて推定された状態との間の相違を縮小する制御入力の第２の値を求める第２の項を含み、最適化は、第１の項および第２の項の組み合わせを最適化する。それらの実施の形態では、コスト関数は、その組み合わせにおける第２の項の重みを変化させることによって更新される。例えば、以前のモデルと現在のモデルとの間の相違が小さいほど、組み合わせにおける第２の項の重みは、低減される。
【００３５】
次に、本方法は、現在のモデルおよび現在のコスト関数を用いて、現在の反復における制御のための現在の制御入力を求める（２８０）。例えば、本方法は、更新された現在のコスト関数および現在の機械モデルを用いて、現在の時刻から、少なくとも新たな機械状態の測定値を取得するのに十分な長さの将来の固定時間量の間の将来の入力のシーケンスを、予測された将来の機械状態および入力が制御入力に対する制約を満たすように求める（２４０）。機械の状態の新たな測定値を取得するのに必要とされる時間量に等しい継続期間の間の入力シーケンスの第１の部分は、現在の制御入力として機械に印加される（２５０）。機械の現在の状態、機械の現在のモデル、および機械への現在の制御入力に基づいて、機械の次の状態が求められ（２６０）、コントローラは、新たな状態測定値が受信されるまで待機する（２７０）。
【００３６】
不確実性モデリング
本発明のいくつかの実施の形態は、モデルのパラメーターの真の値が不確実であっても、モデルのパラメーターの不確実性が既知の範囲内にあるという認識に基づいている。例えば、列車の質量は、空の列車および一杯に荷を積んだ列車の値の範囲内とすることができる。同様に、モデルのパラメーターの値に対する外乱には、限界が存在するとすることができる。不確実性モデル２０３は、公称モデルおよび不確実性モデルの組み合わせを用いてＭＰＣの機械の現在のモデルを求めることができるように、モデルの少なくとも１つのパラメーターの可能な値の範囲を表す。
【００３７】
図３Ａは、上記認識の原理を視覚化した座標系３２０に配置された一例示のポリトープ３１０を示している。座標系３２０は、通常、不確実性を有するモデルのパラメーターの低次元系である。例えば、モデルが、不確実性を有する４つのパラメーターを含む場合、座標系３２０は、４次元であり、パラメーターの組み合わせの新たな値、例えば、値３３３、３３５、３３７がポリトープ３１０内で選択されるように、パラメーターのそれぞれにつき、１つの次元３２２、３２４、３２６、および３２８を有する。
【００３８】
例えば、所与の機械状態、入力、および不確実性の組み合わさった影響を表す外乱ｄの連立差分方程式によって、等時間間隔のサンプリング時点における機械の運動を記述する関数は、以下の式となる。
【数１】
0006513015.tif 000002
ここで、ｋはサンプリング時点のインデックスであり、ｆは汎用関数であり、Ｃは行列であり、ｘは機械状態１０６であり、ｕは機械入力１０４であり、ｙは機械出力１０５である。外乱の状況の数は、範囲Ｄ内に制限され、状態は範囲
【数２】
0006513015.tif 000003
内に制限され、制御入力は、範囲Ｕ内に制限されることが了解されている。
【数３】
0006513015.tif 000004
【００３９】
例えば、値の範囲Ｄは、機械質量の最小値および最大値、外力の最小値および最大値によって求めることができる。同様に、入力および状態の範囲は、速度、位置、電圧、またはトルクの最小値および最大値によって求めることができる。
【００４０】
いくつかの実施の形態は、ｆおよびＤに基づいて、それぞれ
【数４】
0006513015.tif 000005
である行列の集合、加法線形外乱行列、および加法性外乱の多面体集合を構築し、この結果、任意の所与のｘおよびｕについて、
【数５】
0006513015.tif 000006
となるような多元差分包含
【数６】
0006513015.tif 000007
が得られる。ここで、
【数７】
0006513015.tif 000008
であり、ｗｉはＷの頂点であり、「co」はこの集合の凸包を示すようになっている。
【００４１】
式（４）における線形モデルは、例えば、Ｄによって許容されるベクトルｄを形成するパラメーターおよび／またはそれらの組み合わせの最大値および最小値を選ぶことによって求めることができる。
【００４２】
図３Ｂは、機械の状態を推定する際の、式（４）によって求められたモデルのパラメーターの不確実性の影響の概略図を示している。機械の現在の状態ｘ３０１および制御入力が与えられると、機械の次の状態は、機械のモデルのパラメーターのｄの種々の可能な値について、集合３０２内で変動する可能性がある。例えば、ベクトルｄの特定の値に応じて、状態３０１は、制御入力の同じ値について集合３０２内で異なる状態３１０に遷移する可能性がある。
【００４３】
本発明のいくつかの実施の形態では、不確実性モデルは、公称モデルおよび不確実性モデルの組み合わせが、加法性外乱の凸結合を有する線形モデルの凸結合３０３に含まれるように拡張される。例えば、Ｗ＝０のとき、式（４）のモデルは、有界多面体、すなわちポリトープである集合３０３によって集合３０２を過剰近似する。ここで、頂点３０４は、以下の式から求められる。
【数８】
0006513015.tif 000009
ここで、ｌ、（Ａｉ，Ｂｉ），ｉ＝１．．．ｌは、それぞれ、式（３）において規定された数および行列である。Ｗ≠０である実施の形態では、集合３０３は、集合
【数９】
0006513015.tif 000010
の凸包から取得された和集合である。
【００４４】
式（４）に基づいて、全てが
【数１０】
0006513015.tif 000011
を満たす範囲
【数１１】
0006513015.tif 000012
内の入力ｕによって、集合３０３は、完全に、許容可能な状態の範囲３２０内となり、したがって、（１）による機械の可能な次の状態３０２も３２０内になる。このため、式（４）に対して制約を課すことによって、式（１）に対して制約を課すことが保証される。式（４）によって求められたモデルを用いる実施の形態は、計算上有利である。なぜならば、式（４）によって求められたモデルは、式（１）に記述された不確実な非線形モデルではなく、線形モデルの集合を含むからである。
【００４５】
機械への制御入力に対する制約
本発明のいくつかの実施の形態は、機械の運動に対する制約が、所定の範囲内のモデルのパラメーターの値の全ての変動について、機械の動作中満たされることを保証するために、状態の実現可能領域
【数１２】
0006513015.tif 000013
の部分集合を、機械の状態がそのような部分集合内にあるときは、常に、その状態がパラメーターの全ての可能な値および外乱について、その部分集合内に留まるような少なくとも１つの許容可能な制御入力が存在するように求めることができるという認識に基づいている。部分集合内に留まることによって、その部分集合は、実現可能領域
【数１３】
0006513015.tif 000014
に含まれるので、全ての機械の運動制約が満たされる。
【００４６】
本発明のいくつかの実施の形態は、本明細書において制御入力に対する制御不変制約と呼ばれる制御入力に対するそのような制約を求めて用い、本明細書において状態の制御不変部分集合と呼ばれる状態の実現可能領域
【数１４】
0006513015.tif 000015
のそのような部分集合内に機械の状態を維持する制御入力を求める。この構成によって、制御不変制約を満たす制御入力は、不確実性モデルによって規定された範囲内のモデルのパラメーターの全ての値について、機械の状態を、機械の動作に対する制約を満たす状態の制御不変部分集合内に維持する。
【００４７】
図４Ａは、本発明の実施の形態による、機械の動作に対する様々な制約によって規定された状態の制御不変部分集合の２次元投影４１０の一例を示している。通常、この実現可能領域は、動作に対する制約に対応する複数の次元に沿って、１次不等式によって表される超平面によって決定された多次元ポリトープである。
【００４８】
後退ホライズン制御の性質に起因して、ある特定のホライズンの解が存在することは、それだけで、後続のホライズンの解が存在することを保証するものではない。例えば、機械の状態および基準軌道の状態４２０は、１つの反復にとって最適かつ実現可能である可能性があるが、コントローラが次の反復中に取ることが可能な全ての制御動作４２１〜４２４は、機械の状態を実現可能領域４１０の外部に持っていく可能性がある。
【００４９】
本発明のいくつかの実施の形態は、実現可能領域の制御不変部分集合４１５を、その制御不変部分集合内の機械の任意の状態から、基準軌道の既知の将来の状態または基準軌道の全ての許容可能な将来の状態について、その部分集合内に機械の状態を維持する制御入力が存在するように選択することが可能であるというさらに別の認識に基づいている。例えば、部分集合４１５内およびコントローラが実行することができる全ての可能な制御入力４３１〜４３４内の状態４３０等の任意の状態について、機械および基準の状態を部分集合４１５内に維持する少なくとも１つの制御入力４３４が存在する。この場合、部分集合４１５は、制御不変部分集合である。
【００５０】
いくつかの実施の形態は、制御不変部分集合内の状態ごとに、式（５）による全ての可能な状態値について、機械の状態を制御不変部分集合内に維持する少なくとも１つの制御動作が存在するように、式（４）のモデルの状態の制御不変部分集合を求める。
【００５１】
図４Ｂは、機械の状態の実現可能領域４０１と、
【数１５】
0006513015.tif 000016
内における式（１）による不確実性を有するモデルの状態の最も大きいロバスト制御不変部分集合４０２との間の関係を示している。いくつかの実施の形態では、制御不変部分集合４０２は、この部分集合４０２よりも小さいが、線形方程式によって形成されるより単純な形状を有する制御不変４０３を形成するように縮小される。部分集合４０２は、非線形方程式によって求められるので、部分集合４０２の形状は、非凸である可能性がある。このように、４０３の計算は、より単純で、より効率的であり、制御目的に有利である。
【００５２】
図５は、本発明の１つの実施の形態による実現可能領域
【数１６】
0006513015.tif 000017
４０１から開始してロバスト制御不変部分集合４０３を求める後方可到達領域計算のブロック図を示している。後方可到達領域計算は、ロバスト制御不変部分集合Ｃｘを求めるとともに、制御不変集合Ｃｕ（ｘ）も求める。この計算は、Ｃｘ内の任意のｘについて、印加することができる
【数１７】
0006513015.tif 000018
内の入力ｕの集合を、（４）による全ての可能な次の状態がＣｘの内部となるように求める。
【００５３】
後方可到達領域計算は、現在の集合
【数１８】
0006513015.tif 000019
を実現可能集合
【数１９】
0006513015.tif 000020
に初期化し（５０１）、Ｐ内のパラメーターｐの全ての可能な値について、更新された状態が現在の集合
【数２０】
0006513015.tif 000021
内となるような
【数２１】
0006513015.tif 000022
内の入力ｕが、
【数２２】
0006513015.tif 000023
内の全ての状態ｘについて存在するように、状態の以前の集合
【数２３】
0006513015.tif 000024
を、現在の集合
【数２４】
0006513015.tif 000025
の部分集合として求める（５０２）。
【００５４】
５０３において、以前の集合
【数２５】
0006513015.tif 000026
が空である場合（５０４）、コントローラの正しい動作を保証することができない。これは、パラメーターの可能な値の集合Ｐのサイズが、場合によっては機械の動作の設計または目的を変更することによって、縮小されるべきであることを意味する。５０５において、現在の集合と以前の集合とが等しい場合には、以前の集合が現在の集合となるように割り当てられ（５０７）、計算が再び反復され（５０８）、等しくない場合には、５０６において、集合Ｃｘも計算される。集合Ｃｘが見つかった場合、状態−入力対の最後に計算された集合が、Ｃｘ内の全てのｘについてのロバスト許容可能入力集合Ｃｕ（ｘ）である。
【００５５】
図６は、１つの実施の形態による状態の以前の集合を求める（５０２）一例示の実施の態様のブロック図を示している。この実施の形態は、パラメーターの全ての値について現在の集合内にある更新された状態を生成する状態−入力対を特定し（６０１）、これらの状態入力対を状態値に投影する（６０２）。すなわち、この実施の形態は、そのような状態−入力対のうちの少なくとも１つに属する状態を特定する。
【００５６】
図７は、１次不等式が集合
【数２６】
0006513015.tif 000027
および
【数２７】
0006513015.tif 000028
を記述しているときの状態−入力の対の計算（６０１）の方法のブロック図を示している。本方法は、現在の集合を以下の式とみなし、
【数２８】
0006513015.tif 000029
現在の集合に対する加法性外乱ｗの最悪の場合の影響
【数２９】
0006513015.tif 000030
を求める（７０１）。ここで、Ｈ（ｃ）は、（８）において規定された現在の集合を記述する行列であり、
【数３０】
0006513015.tif 000031
は、現在の集合の行列Ｈ（ｃ）の行の数である。
【００５７】
次に、本方法は、これらの最悪の場合の外乱の影響分だけ現在の集合を縮小して（７０２）、
【数３１】
0006513015.tif 000032
によって記述される縮小された現在の集合
【数３２】
0006513015.tif 000033
を生成し、次いで、更新された状態が（１８）における全ての頂点系について現在の集合の内部になるような、すなわち、
【数３３】
0006513015.tif 000034
となるような対（ｘ，ｕ）を求める（７０３）。
【００５８】
安定性制約
本発明のいくつかの実施の形態では、制御入力に対する制約は、公称モデルおよび不確実性モデルによって規定された機械のモデルのパラメーターの全ての値について、機械の状態を目標値に収束させる安定性制約を含む。１つの実施の形態では、これらの安定性制約は、機械の制御リアプノフ関数を含む。例えば、式（４）のモデルの制御リアプノフ関数（ＣＬＦ）は、以下の実現可能値低減を満たす関数νである。
【数３４】
0006513015.tif 000035
ここで、ｆは、式（４）のモデルであり、νは、所望の目標においては０であり、それ以外のあらゆる箇所においては正である関数であり、ρは、０〜１の値である。
【００５９】
いくつかの実施の形態では、制御リアプノフ関数νは、制御不変である。本明細書において規定されているように、有効な不変制御リアプノフ関数は、例えば、式（４）のモデルについて求められた制御不変部分集合Ｃｘの内部の全てのｘについて、Ｃｕ（ｘ）の内部に制御入力ｕが存在するような制御リアプノフ関数、すなわち、式（１１）が満たされるように制御不変制約を満たす制御リアプノフ関数である。
【００６０】
図８は、本発明の１つの実施の形態による制御システムの不変制御リアプノフ関数を求める方法を示している。本方法は、候補のＣＬＦを生成し（８０１）、この候補のＣＬＦの状態の部分集合を、式（１１）が有効であるように
【数３５】
0006513015.tif 000036
の内部にｕが存在するようなＣｘの部分集合として求める（８０２）。次に、本方法は、部分集合８０２が部分集合Ｃｘに等しいか否かを検証する（８０３）。これに該当する場合（８０４）、候補のＣＬＦνは、制御不変リアプノフ関数であり、そうでない場合（８０５）、異なる候補のＣＬＦが生成される。
【００６１】
図９は、ν（ｘ）＝｜｜Ｐｘ｜｜∞である１つの実施の形態による、候補のリアプノフ関数の状態の部分集合を求める（８０２）方法のブロック図を示している。ここで、Ｐは、ｎｐ個の行を有する無限ノルム制御リアプノフ関数を記述した行列である。この実施の形態は、行列Ｐのこれまでに選択されていない行９１１を選択し（９０１）、正の条件σ＝＋１について、不等式
【数３６】
0006513015.tif 000037
がσ＝＋１の場合に当てはまるようなｕおよびεが存在するようにｘの集合を計算することによって、行９１１に関係した部分集合の凸成分を求める（９０２）。ここで、ｎｐは、行列Ｐの行の数である。
【００６２】
次に、この実施の形態は、負の条件σ＝−１について、行９１１に関係した部分集合の凸成分を求め（９０３）、−１は、（１２）がこの時はσ＝−１で満たされるようなｕおよびεが存在するようにｘの集合として計算される。全ての行が選択されると、全ての凸成分の和集合は、部分集合８０２を形成する。
【００６３】
図１０Ａおよび図１０Ｂは、有効な制御不変リアプノフ関数および無効な制御不変リアプノフ関数を判断するテストの説明図を示している。制御不変部分集合１００１内の部分集合１００２は、部分集合１００３が候補のＣＬＦの複数の凸成分１００３の和集合である場合に有効である。図１０Ａでは、部分集合１００２および１００１が異なるので、ＣＬＦは、制御不変ではない。図１０Ｂでは、部分集合１００４が部分集合１００１のエリア全体を包含することから、有効な部分集合１００４を有する候補のＣＬＦが部分集合１００１について有効であるので、ＣＬＦは、制御不変である。
【００６４】
例えば、本発明の１つの実施の形態では、制御リアプノフ関数は、制御不変制約を満たす機械の全ての状態について実現可能値低減テストを満たす無限ノルム制御リアプノフ関数である。このテストは、無限ノルム制御リアプノフ関数を記述する行列の行を選択することと、制御不変制約を満たす機械の少なくとも１つの入力について無限ノルム制御リアプノフ関数を記述する行列の行に対する実現可能値低減を、正の条件および負の条件について満たす機械の状態の凸成分を求めることとを含むことができる。次に、この実施の形態は、これらの凸成分の和集合を求め、機械の状態の制御不変部分集合内の機械の全ての状態が凸成分の和集合に含まれることを検証する。
【００６５】
モデル学習
１つの実施の形態では、機械の現在のモデル２０１は、公称モデル２０２に基づいて初期化される。この初期化では、一対の推定されたシステム行列
【数３７】
0006513015.tif 000038
が、式（３）における行列の集合の凸包から選択され、
【数３８】
0006513015.tif 000039
加法性外乱推定値
【数３９】
0006513015.tif 000040
が、式（３）における加法性外乱の多面体集合から選択される。
【数４０】
0006513015.tif 000041
【００６６】
式（１３）〜（１４）における現在のモデルは、現在のモデルが、機械状態値のシーケンスの観点から、観察された機械の運動と一致するまで、入力１０４および状態１０６を用いて各時間ステップにおいて、そのそれぞれの集合内で更新される。
【００６７】
１つの実施の形態では、このモデル更新の実施の態様は、（１３）および（１４）におけるモデルを、式（６）の頂点とＷの頂点との線形結合であるとみなす。
【数４１】
0006513015.tif 000042
ここで、θは、線形モデルの組み合わせベクトルであり、ηは、加法性外乱の組み合わせベクトルである。
【数４２】
0006513015.tif 000043
そのため、結合パラメーターベクトル
【数４３】
0006513015.tif 000044
について、線形回帰モデルを形成することができる。
【００６８】
この線形回帰モデルは、以下の形を取る。
【数４４】
0006513015.tif 000045
ここで、εは、測定雑音を表し、
【数４５】
0006513015.tif 000046
である。
【００６９】
線形回帰（１７）は、この場合、いくつかの方法によって解くことができる。例えば、１つの実施の形態は、回帰の出力λ＝［θ  η］Ｔが、（１５ｂ）によるその許容された範囲内にあることを確実にするように修正された再帰的最小二乗（ＲＬＳ）方法を用いる。
【００７０】
例えば、ＲＬＳ方法は、以下の式の解を含むことができる。
【数４６】
0006513015.tif 000047
ここで、κＲＬＳは、推定訂正利得であり、Ψは、推定共分散行列であり、ｐｒｏｊλは、その引数をλのドメイン内に投影する演算子である。
【００７１】
図１１は、本発明の１つの実施の形態に従って、修正されたＲＬＳを用いて機械のモデルを更新し、機械の現在のモデルを生成するブロック図を示している。各ステップにおける修正されたＲＬＳは、以前の入力および以前の状態を用いてリグレッサー行列Ｍを形成する（１１０１）とともに、現在の時間ステップの状態を測定値ｙとして用いる。修正されたＲＬＳは、予測誤差共分散行列Ψを更新し（１１０２）、推定利得σを更新する（１１０３）。
【００７２】
次に、修正されたＲＬＳは、パラメーターの第１の推定値
【数４７】
0006513015.tif 000048
を求め（１１０４）、パラメーターの第１の推定値を、（１５ｂ）によって求められたλ＝［θ  η］Ｔの許容可能な範囲上に投影することによってパラメーターの第２の推定値
【数４８】
0006513015.tif 000049
を求める（１１０５）。次に、修正されたＲＬＳは、次の測定まで待機する（１１０６）。
【００７３】
第２のパラメーター推定値は、複数の方法で求めることができる（１１０５）。例えば、１つの実施の形態は、まず、パラメーターの第１の推定値
【数４９】
0006513015.tif 000050
の各成分を０と１との間にサチュレートさせ、次いで、パラメーターの第１の推定値における
【数５０】
0006513015.tif 000051
および
【数５１】
0006513015.tif 000052
の各成分を、当該パラメーターの第１の推定値における
【数５２】
0006513015.tif 000053
および
【数５３】
0006513015.tif 000054
のサチュレートされた成分の合計により除算することによって、それらの各成分を正規化することで、第２のパラメーターを求める。この結果、現在の時間ステップにおけるパラメーターベクトル（１６）の推定値が得られ、それによって、（１３）および（１４）における現在のモデルの更新された推定値が与えられる。他の実施の形態では、他の回帰モデルおよび／または推定アルゴリズムが、（１３）および（１４）に基づいて機械の現在のモデル２０１を更新するのに用いられる。
【００７４】
コスト関数
本発明のいくつかの実施の形態では、コスト関数モジュール２０７は、公称コスト関数に基づいて現在のコスト関数２０９を初期化する。１つの実施の形態では、この公称コスト関数は、多面的であり、相反する目的を有する。例えば、コスト関数は、動作の目的に従って制御入力の第１の値を求める第１の項を含むことができるとともに、機械の現在の状態と、機械のモデルを用いて推定された状態との間の相違を縮小する制御入力の第２の値を求める第２の項を含み、そのため、最適化は、これらの第１の項および第２の項の組み合わせを最適化し、コスト関数を更新することは、この組み合わせにおける第２の項の重みを変化させることを含む。
【００７５】
１つの実施の形態では、コスト関数は、以下の式の形を取る。
【数５４】
0006513015.tif 000055
ここで、ＦｔおよびＬｔは、機械の状態にバイアスをかけるそれらの引数と、多面的な目的を反映した値への入力との関数であり、Ｐｋは、ＲＬＳアルゴリズムからの予測されたパラメーター誤差共分散行列である。１つの実施の形態では、Ｌｔは、機械の状態およびモデルのパラメーターを学習する目的の二元的な客観的取引規則を含む。例えば、コスト関数の第１の項は、機械の性能に関係し、第２の項は、モデルのパラメーターの推定を改善することに関係し、第２の項は、現在のモデルの予測誤差の非負の非減少関数として測定された機械の現在のモデルの信頼性によって重み付けされる。
【００７６】
１つの実施の形態では、関数Ｌｔは、以下の式となる。
【数５５】
0006513015.tif 000056
ここで、γは、現在のモデル２０１によって予測された状態と、測定された実際の状態１０６との間の残余誤差の関数であり、ψ（Ｐｋ）は、予測されたパラメーター誤差共分散行列の情報汎関数である。
【００７７】
この情報汎関数は、未知のパラメーターベクトル（１６）と関連付けられた情報の尺度である。この例には、トレース、行列式、および最大固有値が含まれる。情報汎関数が、コスト関数において優先権を与えられた場合、すなわち、γが大きい場合、機械の状態および入力には、モデル学習を改善する値に向けてバイアスがかけられ、そうでない場合、状態および入力には、機械の状態の調整に向けてバイアスがかけられる。
【００７８】
現在のコスト関数（１９）は、残余誤差が大きいときは、コスト関数がモデル学習の改善のみを試みるように、各時間ステップにおいて、現在のモデルによって予測された状態および測定された実際の状態を用いて更新される。例えば、コスト関数の第２の項は、以前のモデルと現在のモデルとの間の相違の関数を含み、更新することは、以前のモデルと現在のモデルとの間の相違を求め、求められた相違を用いてコスト関数の第２の項を更新する。
【００７９】
別の実施の形態では、コスト関数は、入力計算２０８に用いられる２つのコスト関数に分離される。ここで、第１のコスト関数は、モデル学習にのみ関係があり、すなわち、Ｆｔ＝０およびＬｔ＝ψ（Ｐｋ）であり、第２のコスト関数は、機械の状態および第１のコスト関数の適用によって生成された入力シーケンスからの逸脱にペナルティを科すことの二元的な客観的取引規則を形成する。
【００８０】
入力計算
いくつかの実施の形態では、入力計算２０８は、以下の式の有限ホライズン数値最適化問題の形を取る。
【数５６】
0006513015.tif 000057
この式は、現在のコスト関数（ＦｔおよびＬｔ）２０７と、ホライズンにわたって状態の展開を予測する現在のパラメーター推定値
【数５７】
0006513015.tif 000058
を有する機械モデル２０１と、ロバスト制約
【数５８】
0006513015.tif 000059
２０６と、現在の時間ステップにおける状態ｘ（ｔ）とから形成されている。問題（２０）は、問題制約を条件として現在のコスト関数を最小化する入力シーケンスＵ＝［ｕ１．．．ｕＮ］Ｔを見つけ出す数値ソルバーを用いて解かれる。この入力シーケンスにおける第１の入力ｕ１は、入力計算２０８の出力とみなされ、機械１０２に印加される。次の時間ステップｔ＋１において、モデルおよびコスト関数が更新され、状態が更新され、数値最適化問題が再び解かれる。
【００８１】
代替の実施の形態では、問題（２０）は、以下の２つのフェーズに分解される。
ｉ）モデル学習フェーズ、例えば、Ｌｔ＝ψ（Ｐｋ）。このフェーズは、予測されたパラメーター誤差共分散行列の情報汎関数を最小化する入力シーケンスを生成することのみに関係する。
ｉｉ）制御フェーズ。このフェーズは、機械を起点に調整する入力シーケンスを生成することのみに関係し、例えば、以下の式である。
【数５９】
0006513015.tif 000060
【００８２】
モデル学習フェーズから制御フェーズへの切り替えは、現在のモデル２０１によって予測された状態と測定された実際の状態１０６との間の残余誤差に基づく。すなわち、この誤差が、設定された閾値未満であるとき、モデル学習は、もはや必要ではなく、制御フェーズへの切り替えが実施される。モデル学習フェーズへの戻し切り替えは、上記誤差が、設定された閾値を上回った場合に実施される。
【００８３】
本発明の上記で説明した実施の形態は、数多くの方法のうちの任意のもので実施することができる。例えば、これらの実施の形態は、ハードウェア、ソフトウェア、またはそれらの組み合わせを用いて実施することができる。ソフトウェアで実施されるとき、ソフトウェアコードは、単一のコンピューターに設けられるかまたは複数のコンピューター間に分散されるかを問わず、任意の適したプロセッサまたはプロセッサの集合体上で実行することができる。そのようなプロセッサは、集積回路コンポーネントに１つまたは複数のプロセッサを有する集積回路として実施することができる。ただし、プロセッサは、任意の適した形式の回路部を用いて実施することができる。
【００８４】
さらに、コンピューターは、ラックマウントコンピューター、デスクトップコンピューター、ラップトップコンピューター、ミニコンピューター、またはタブレットコンピューター等の複数の形態のうちの任意のもので具現化することができることが理解されるべきである。そのようなコンピューターは、エンタープライズネットワークまたはインターネット等のローカルエリアネットワークまたはワイドエリアネットワークを含む１つまたは複数のネットワークによって任意の適した形態に相互接続することができる。そのようなネットワークは、任意の適した技術に基づくことができ、任意の適したプロトコルに従って動作することができ、無線ネットワーク、有線ネットワーク、または光ファイバーネットワークを含むことができる。
【００８５】
また、本明細書において略述した様々な方法またはプロセスは、様々なオペレーティングシステムまたはプラットフォームのうちの任意の１つを用いる１つまたは複数のプロセッサ上で実行可能なソフトウェアとしてコード化することもできる。加えて、そのようなソフトウェアは、複数の適したプログラミング言語および／またはプログラミングツールもしくはスクリプティングツールのうちの任意のものを用いて記述することができる。
【００８６】
また、本発明の実施の形態は、方法として具現化することもできる。この方法の一例が提供されている。この方法の一部として実行されるステップは、任意の適した方法で順序付けることができる。したがって、例示されたものと異なる順序で動作が実行される実施の形態を構築することができ、これらの実施の形態は、いくつかの動作を、例示の実施の形態では順次的な作用として示されていても、同時に実行することを含むことができる。
【図１Ａ】
0006513015.tif 000061
【図１Ｂ】
0006513015.tif 000062
【図２Ａ】
0006513015.tif 000063
【図２Ｂ】
0006513015.tif 000064
【図３Ａ】
0006513015.tif 000065
【図３Ｂ】
0006513015.tif 000066
【図４Ａ】
0006513015.tif 000067
【図４Ｂ】
0006513015.tif 000068
【図５】
0006513015.tif 000069
【図６】
0006513015.tif 000070
【図７】
0006513015.tif 000071
【図８】
0006513015.tif 000072
【図９】
0006513015.tif 000073
【図１０Ａ】
0006513015.tif 000074
【図１０Ｂ】
0006513015.tif 000075
【図１１】
0006513015.tif 000076