[go: up one dir, main page]

JP7693110B2 - フィードバックコントローラを較正するためのシステム、方法、およびコンピュータ読取可能記憶媒体 - Google Patents

フィードバックコントローラを較正するためのシステム、方法、およびコンピュータ読取可能記憶媒体 Download PDF

Info

Publication number
JP7693110B2
JP7693110B2 JP2024524508A JP2024524508A JP7693110B2 JP 7693110 B2 JP7693110 B2 JP 7693110B2 JP 2024524508 A JP2024524508 A JP 2024524508A JP 2024524508 A JP2024524508 A JP 2024524508A JP 7693110 B2 JP7693110 B2 JP 7693110B2
Authority
JP
Japan
Prior art keywords
control
machine
state
control parameters
measurement
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.)
Active
Application number
JP2024524508A
Other languages
English (en)
Other versions
JP2024524771A (ja
Inventor
メナー,マルセル
バーントープ,カール
ディ・カイラノ,ステファノ
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority claimed from PCT/JP2022/021477 external-priority patent/WO2023013212A1/en
Publication of JP2024524771A publication Critical patent/JP2024524771A/ja
Application granted granted Critical
Publication of JP7693110B2 publication Critical patent/JP7693110B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0243Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
    • G05B23/0254Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model based on a quantitative model, e.g. mathematical relationships between inputs and outputs; functions: observer, Kalman filter, residual calculation, Neural Networks
    • 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
    • G05B13/027Adaptive 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 using neural networks only
    • 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/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/048Adaptive 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 using a predictor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0286Modifications to the monitored process, e.g. stopping operation or adapting control
    • G05B23/0294Optimizing process, e.g. process efficiency, product quality

Landscapes

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

Description

本開示は、概して制御システムに関し、より具体的にはフィードバックコントローラを較正するためのシステム、方法、およびコンピュータ読取可能記憶媒体に関する。
現在、構造化されていない不確実な環境で動作することができるさまざまな動的マシンが存在する。実際、これらの動的マシンは、構造化されていない不確実な環境で動作するために、本質的にはより複雑である。動的マシンは、本質的に複雑であり、ますます構造化されていないまたは不確実な環境で動作するので、動的マシンの設計および較正プロセスを自動化する必要性が、より重要になる。特に、自動運転車両またはロボット等の多くの動的マシンの制御は、大抵は矛盾しているさまざまな仕様を含み、それ故に、手作業での較正の手間をかなり必要とする。さらに、較正は通常生産段階で行われ、動的マシンの動作条件はその寿命を通して変化するので、多くの場合、動的マシンに関連付けられたコントローラを後の段階で調整することは難しい。
コントローラの較正を自動化しコントローラを動的マシンの動作および動作条件に適合させることを可能にすることを目的とする、いくつかの現在利用可能な方法がある。しかしながら、これらの利用可能な方法は、人間の専門家から学習すること、またはトライアル・アンド・エラーサーチを通じた反復学習タスクに着目する。したがって、これらの利用可能な方法は、反復学習に適合する用途にしか適さない場合がある。例として、これらの利用可能な方法は、物体を操作するためのロボットにおいて使用することができる。しかしながら、これらの利用可能な方法は、自動運転等の本質的により連続的な制御用途において、コントローラの較正を提供しない。さらに、トライアル・アンド・エラーサーチは、多くの場合、安全を最重視するマシンには適合しない。また、人間のデモンストレータを置くという要件は、自動化の量を制限する。
したがって、効率的かつ実現可能なやり方でコントローラを自動的に較正することができるシステムが必要とされている。
いくつかの実施形態の目的は、リアルタイムでコントローラを反復的に較正し、較正されたコントローラを使用してマシンの動作を制御することである。マシンの例は、車両(たとえば自動運転車両)、ロボットアセンブリ、モータ、エレベータのドア、HVAC(暖房、換気、および空調(Heating, Ventilating, and Air-Conditioning))システムなどを含み得る。マシンの動作の例は、特定の軌道に従って車両を動作させること、特定のパラメータに従ってHVACシステムを動作させること、特定のタスクに従ってロボットアームを動作させること、およびエレベータのドアを開閉することを含み得るが、これらに限定される訳ではない。コントローラの例は、PID(比例・積分・微分(Proportional Integral Derivative))コントローラ、最適コントローラ、ニューラルネットワークコントローラなどを含み得る。以下、「コントローラ」および「フィードバックコントローラ」は、同じ意味を持つものとして区別なく使用される場合がある。
フィードバックコントローラを較正するために、いくつかの実施形態はカルマンフィルタを使用する。しかしながら、カルマンフィルタは、一般的に、マシンの状態を定める状態変数を推定する際に使用され、マシンの状態は、位置、速度などのような物理量である可能性がある。このため、いくつかの実施形態の目的は、マシンの状態変数とは対照的な、マシンを制御するためのフィードバックコントローラの制御パラメータを推定するために、カルマンフィルタを変換または適合させることである。状態変数は制御されているマシンの状態を定めるが、制御パラメータは制御コマンドを計算するために使用される。制御パラメータの例は、PIDコントローラにおけるゲイン等の、フィードバックコントローラのゲイン、および/またはロボットアームの質量のような、マシンの物理的構造のパラメータ、または車両のタイヤと道路との間の摩擦である。特に、制御パラメータは、アクチュエータを制御するための電圧の値のような、フィードバックコントローラによって実行される制御法則または制御ポリシーへの入力と出力とを定める制御の変数と混同されてはならない。言い換えると、入力制御変数は、制御パラメータによって定められる制御法則に基づいて、出力制御変数にマッピングされる。マッピングは、分析的であってもよく、または最適化問題に対する解に基づいていてもよい。
多くの制御用途において、制御パラメータは、事前にわかっており、固定されている、すなわち制御中は一定のままである。たとえば、ロボットアームの質量は、測定することができ、またはロボットの仕様からわかっており、タイヤの摩擦は制限または選択することができ、コントローラのゲインは研究室で調整することができる。しかしながら、制御パラメータを事前に固定することは、いくつかの用途では最適でない可能性があり、むしろ不確実性を有する制御パラメータでマシンを制御する必要があるであろういくつかの他の用途では、非実用的となる可能性さえある。
いくつかの実施形態は、カルマンフィルタによって提供される状態変数を追跡する原理を、制御パラメータを追跡するために拡張または適合させることができる、という認識に基づいている。実際、制御はマシンではなくプロセスであるが、制御を、制御パラメータによって定められる仮想状態を有する仮想マシンのように扱い得ることが認識される。この直感的な知識によると、カルマンフィルタは、予測段階中にカルマンフィルタによって使用される予測モデルが、測定モデルに従ってマシンの状態の測定値を説明することができる制御パラメータを予測できる場合、制御パラメータを反復的に追跡することができる。
特に、予測モデルおよび測定モデルはカルマンフィルタの設計者によって提供されるので、この柔軟性は、異なる種類の制御目的に対してカルマンフィルタを適合させることを可能にする。たとえば、いくつかの実施形態において、予測モデルは、制御パラメータがプロセスノイズの分散内において変化しないであろうと予測する定数またはアイデンティモデルである。実際、そのような予測は、固定された制御パラメータを用いる多くの制御用途に共通する。それに加えてまたはその代わりに、いくつかの実施形態は、少なくともいくつかのパラメータを、他のパラメータとの予め定められた関係に基づいて予測することができる、予測モデルを定める。たとえば、いくつかの実施形態は、車両の現在の速度に基づいてタイヤ摩擦の変化を予測することができる。カルマンフィルタのこの構成において、プロセスノイズは、制御パラメータが時間とともにどれだけ速く変化するかを制御する。
いずれにせよ、そのような予測モデルは、制御パラメータを追跡するための主な労力を測定モデルに向け、制御目的に基づいて測定モデルの更新を変化させるための柔軟性を追加する。特に、そのような柔軟性は、異なるマシンを制御するために測定モデルを変化させることを可能にするが、同じマシンの制御中の異なる時点または異なる状態において測定モデルを変化させることも可能にする。
そのため、さまざまな実施形態において、測定モデルは、閉ループマシンの動作を制御する性能をオンラインで評価する性能目標を使用し、次にこれを使用して、性能目標に関して測定された閉ループマシンの動作を改善するように制御パラメータを適合させる。特に、性能目標は、非常に柔軟な構造を有し、最適コントローラの目的とは異なり得る。このことは、最適な制御コスト関数がそのリアルタイム用途に起因して制限される構造を有するので、有益であり、たとえば、コスト関数は、多くの場合、数値最適化に適するよう微分可能かつ凸状である必要がある。加えて、性能目標は、同一の最適な制御目的に従って制御の異なる時間において変化し得る。さらに、最適制御目的または他の制御パラメータは、異なる時点で、または同一の性能目標に従ってマシンの状態の関数として変化し得る。
このように、カルマンフィルタの利点は、制御パラメータの再帰的推定に拡大される。これらの利点は、カルマンフィルタが、(i)マシン動作中にパラメータをオンラインで適合させること、(ii)フィルタベースの設計に起因するノイズに対してロバストであること、(iii)閉ループ動作の安全性の保証を維持すること、(iv)計算が効率的であること、(v)再帰的な実現が原因でデータ記憶の低減を必要とすること、および(vi)実現が容易であることを含み、それゆえに、これを産業用途にとって魅力のあるものにする。
いくつかの実施形態は、多くの用途において、いくつかの制御パラメータは互いに依存しつつまとめて調整される必要がある、という認識に基づいている。たとえば、PIDコントローラのゲインは、所望の性能を得て安全な動作を保証するためにまとめて調整される必要があり、最適制御のためのコスト関数の重みは、それらが、複数の、場合によっては矛盾する目的との間のトレードオフを定めるので、まとめて調整される必要があり、Hコントローラまたは動的出力フィードバックコントローラに使用されるフィルタ係数は、性能および安定性要件を保証するためにまとめて調整される必要がある。
一般的に、相互依存パラメータを較正することは、この相互依存性が、考慮すべき別の変数を追加するので、より一層困難な問題である。それ故に、較正する複数の相互依存パラメータを持つことは、較正の複雑さを増す可能性がある。しかしながら、いくつかの実施形態は、較正された制御パラメータのそのような相互依存性は、異なるパラメータの更新に対して異なる重みをかけるカルマンゲインを調整することにより、統計的に自然に調整することができる、という認識に基づいている。
いくつかの実施形態は、フィードバックコントローラで使用される制御パラメータがマシンの状態に依存する、という認識に基づいている。いくつかの実施形態は、マシンの状態の関数である基底関数の線形結合を使用してこの状態依存に対処する。実際、カルマンフィルタは、基底関数の係数を調整するように実現することができ、これらはその後制御パラメータを生成するために使用される。それに加えてまたはその代わりに、いくつかの実施形態は、基底関数と組み合わせて状態依存領域を使用する。各領域において、制御パラメータは、基底関数の線形結合として計算される。カルマンフィルタは、各領域における基底関数の係数と、制御パラメータを計算するためにどの基底関数のセットが使用されるかを決定する領域との両方を調整することができる。
異なる実施形態において、制御されているマシンは、線形または非線形力学、および、異なる範囲を有する制御パラメータの異なる不確実性を有する。いくつかの実施形態は、カルマンフィルタの異なるタイプの実装形態および/またはプロセスおよび/または測定ノイズについての異なる分散を選択することにより、これらの差異に対処する。
たとえば、一実施形態は、カルマンゲインを計算するために拡張カルマンフィルタ(EKF:extended Kalman filter)を使用する。EKFは、制御パラメータに対する性能目標の勾配を数値的に計算する。(i)マシンの状態に対する性能目標の勾配、および(ii)制御パラメータに対する動的マシンの状態の勾配という、2つの勾配を使用して、勾配を計算するので、EKFは、性能目標がマシンの状態に対して区別可能である場合の問題に対して有用である。マシンの状態に対する性能目標の勾配は、設計者によって計算される。制御パラメータに対するマシンの状態の勾配は、フィードバックコントローラの構造およびマシンの力学を定めるモデルを使用して計算される。
それに加えてまたはその代わりに、一実施形態は、アンセンテッドカルマンフィルタ(UKF:unscented Kalman filter)を使用してカルマンゲインを計算する。UKFは、性能目標の関数評価を用いて、制御パラメータに対する性能目標の勾配を推定する。この場合、UKFは、制御パラメータの実現であるシグマ点を計算することができる。そうすると、勾配は、制御パラメータの同時確率分布と組み合わせて、すべてのシグマ点に対する性能目標の評価を使用して推定される。UKFは、関数評価を使用して勾配を推定するので、微分可能および微分不可能な性能目標に対して有用である。
いくつかの実施形態は、フィードバックコントローラの制御パラメータのオンライン反復更新は、制御の品質を改善し得るものの、追加の課題を伴う、という理解に基づいている。たとえば、マシンの動作中の制御パラメータのオンライン更新は、制御の不連続性を導入する場合がある。しかしながら、いくつかの実施形態は、そのような不連続性は、マシンの動作に対する制約を満たすように制御コマンドを実施することによって対処することができる、という認識に基づいている。これらの制約は、確立された制御理論的特性を満たすように制御パラメータを確認することによって確立することができる。
それに加えてまたはその代わりに、いくつかの実施形態は、制御パラメータのオンライン更新がマシンの動作を不安定にする場合がある、という認識に基づいている。たとえば、制御法則または制御ポリシーが、制御パラメータによる微分方程式(ODE)で表される場合、制御パラメータの変更によりODEの平衡の安定性が損なわれる場合がある。異なる実施形態のカルマンフィルタによって場合によっては導入されるこの新たな問題に対処するために、いくつかの実施形態は、安全確認、たとえばカルマンフィルタによって生成される制御パラメータの値を用いた制御ポリシーに対する安定性確認を実行する。さらに、制御ポリシーにおける制御パラメータは、安定性確認が満たされた場合にのみ更新されてもよい。
たとえば、安定確認は、更新された制御パラメータを伴う制御ポリシーのためのリアプノフ関数が存在する場合に満たされる。リアプノフ関数の存在は、多数のやり方で確認することができる。たとえば、いくつかの実施形態は、リアプノフ関数を発見することおよび/またはその存在を証明することを目的とした最適化問題を解く。それに加えてまたはその代わりに、一実施形態は、更新された制御パラメータが、状態および入力の履歴全体に対する性能目標に関して、状態のコストの減少をもたらすか否かを確認する。それに加えてまたはその代わりに、別の実施形態は、更新された制御パラメータが、その原点へのマシンの近接性を保存するか否かを確認する。原点への近接性は、更新されたパラメータを伴う制御ポリシーの予測区間の終点に関連付けられたコストが、たとえば、ターミナルコストを定める正の定値行列の最大固有値対最小固有値の比によって境界付けられるという認識により、保存される。
加えて、いくつかの実施形態は、カルマンフィルタによって生成された制御パラメータが安全確認を満たさない場合、フィードバックコントローラの制御パラメータをカルマンフィルタの出力で更新すべきではないが、カルマンフィルタ自体は再始動されるべきではなく、カルマンフィルタの制御パラメータがフィードバックコントローラの制御パラメータと異なっていても、新たに生成された制御パラメータを用いてその反復を継続すべきである、という認識に基づいている。後続の反復のうちのいくつかの反復の間にカルマンフィルタの制御パラメータが安全確認を満たす場合、カルマンフィルタの安全な制御パラメータはフィードバックコントローラの古い制御パラメータを更新する。このようにして、実施形態は、制御パラメータのオンライン更新の存在下での制御の安定性を保証する。
したがって、一実施形態は、タスクを実行するためにマシンの動作を制御するためのシステムを開示する。システムは、制御入力のシーケンスをマシンにサブミットし対応する測定値のシーケンスを含むフィードバック信号を受信するように構成されたトランシーバを備え、各測定値は、対応する制御入力によって引き起こされるマシンの状態を示す。システムはさらに、各制御ステップにおいて、制御ポリシーを適用することにより、マシンの現在の状態の現在の測定値を含むフィードバック信号に基づいてマシンを制御するための現在の制御入力を決定するように構成された、フィードバックコントローラを備え、フィードバックコントローラは、制御ポリシーを適用することにより、現在の測定値を、フィードバックコントローラの制御パラメータのセット内の制御パラメータの現在の値に基づいて、現在の制御入力に変換する。さらに、システムはカルマンフィルタを備え、カルマンフィルタは、プロセスノイズの影響を受ける制御パラメータの値を予測するための予測モデルと、測定ノイズの影響を受ける測定値のシーケンスに基づいて制御パラメータの予測された値を更新するための測定モデルとを用いて、制御パラメータによって定められるフィードバックコントローラの状態を反復的に更新することにより、性能目標に従って測定値のシーケンスを説明する制御パラメータの現在の値を生成するように構成される。
したがって、別の実施形態は、タスクを実行するためにマシンの動作を制御するための方法を開示する。この方法は、制御入力のシーケンスをマシンにサブミットするステップと、対応する測定値のシーケンスを含むフィードバック信号を受信するステップとを含み、各測定値は、対応する制御入力によって引き起こされるマシンの状態を示し、方法はさらに、各制御ステップにおいて、制御ポリシーを適用することにより、マシンの現在の状態の現在の測定値を含むフィードバック信号に基づいてマシンを制御するための現在の制御入力を決定するステップを含み、制御ポリシーを適用することにより、現在の測定値を、フィードバックコントローラの制御パラメータのセット内の制御パラメータの現在の値に基づいて、現在の制御入力に変換し、方法はさらに、プロセスノイズの影響を受ける制御パラメータの値を予測する予測モデルと、測定ノイズの影響を受ける測定値のシーケンスに基づいて制御パラメータの予測された値を更新する測定モデルとを用いて、制御パラメータによって定められるフィードバックコントローラの状態を反復的に更新することにより、性能目標に従って測定値のシーケンスを説明する制御パラメータの現在の値を生成するステップを含む。
したがって、さらにもう1つの実施形態は、タスクを実行するためにマシンの動作を制御する方法を実行するためにプロセッサが実行可能なプログラムが実装された、非一時的なコンピュータ読取可能記憶媒体を開示する。この方法は、制御入力のシーケンスをマシンにサブミットするステップと、対応する測定値のシーケンスを含むフィードバック信号を受信するステップとを含み、各測定値は、対応する制御入力によって引き起こされるマシンの状態を示し、方法はさらに、各制御ステップにおいて、制御ポリシーを適用することにより、マシンの現在の状態の現在の測定値を含むフィードバック信号に基づいてマシンを制御するための現在の制御入力を決定するステップを含み、制御ポリシーを適用することにより、現在の測定値を、フィードバックコントローラの制御パラメータのセット内の制御パラメータの現在の値に基づいて、現在の制御入力に変換し、方法はさらに、プロセスノイズの影響を受ける制御パラメータの値を予測する予測モデルと、測定ノイズの影響を受ける測定値のシーケンスに基づいて制御パラメータの予測された値を更新する測定モデルとを用いて、制御パラメータによって定められるフィードバックコントローラの状態を反復的に更新することにより、性能目標に従って測定値のシーケンスを説明する制御パラメータの現在の値を生成するステップを含む。
本開示のいくつかの実施形態に係る、カルマンフィルタの原理の概要を示す図である。 本開示のいくつかの実施形態に係る、動的マシンの動作を制御するための制御システムのブロック図を示す。 本開示のいくつかの実施形態に係る、制御パラメータを生成するためのカルマンフィルタを示す図である。 本開示のいくつかの実施形態に係る、1つの特定の制御パラメータを表すガウス分布を示す図である。 本開示のいくつかの実施形態に係る、異なる分散を伴うガウス分布を示す図である。 本開示のいくつかの実施形態に係る、ある時間にわたるマシンの状態の発展を示す図である。 本開示のいくつかの実施形態に係る、制御パラメータの予測値を更新するための概略図を示す。 本開示のいくつかの実施形態に係る、複数の相互依存制御パラメータを較正するためのカルマンフィルタのブロック図を示す。 本開示のいくつかの実施形態に係る、カルマンフィルタによって実行される方法を示す図である。 本開示のいくつかの他の実施形態に係る、カルマンフィルタによって実行される方法を示す図である。 本開示のいくつかの実施形態に係る、状態依存制御パラメータを較正するための方法を示す図である。 本開示のいくつかの実施形態に係る、マシンの動作を制御するためのシステムのブロック図を示す。 本開示のいくつかの実施形態に係る、安全確認モジュールによって実行される安全確認方法を示す図である。 本開示のいくつかの他の実施形態に係る、マシンの状態の発展を示す図である。 本開示のいくつかの実施形態に係る、カルマンフィルタによって使用される性能目標のリストを示す図である。 本開示のいくつかの実施形態に係る、システム内で使用されるフィードバックコントローラのリストを示す図である。 本開示のいくつかの実施形態に係る、マシンを制御するためのフィードバックコントローラを示すブロック図を示す。 本開示のいくつかの実施形態に係る、電動機を制御するためのシステムの概略図を示す。 本開示のいくつかの実施形態に係る、車両を制御するためのシステムの概略図を示す。
以下の記載では、説明のために、本開示が十分に理解されるよう多数の具体的な詳細事項を述べる。しかしながら、本開示はこれらの具体的な詳細事項なしで実施し得ることが当業者には明らかであろう。その他の場合では、本開示を不明瞭にするのを回避することだけのために装置および方法をブロック図の形式で示す。
本明細書および請求項で使用される、「たとえば(for example)」、「例として(for instance)」、および「~のような(such as)」という用語、ならびに「備える(comprising)」、「有する(having)」、「含む(including)」、およびこれらの動詞の他の形態は、1つ以上の構成要素またはその他のアイテムの列挙とともに使用される場合、その列挙がさらに他の構成要素またはアイテムを除外するとみなされてはならないことを意味する、オープンエンドと解釈されねばならない。「~に基づく」という用語は、少なくとも部分的に基づくことを意味する。さらに、本明細書で使用される文体および術語は、具体的に限定と定義されていない限り、説明のためのものであって限定とみなされてはならないことが理解されるはずである。本明細書で使用されるいかなる見出しも、便宜的なものにすぎず、法的または限定効果を持つものではない。
図1は、本開示のいくつかの実施形態に係る、カルマンフィルタの原理の概要を示す。カルマンフィルタ100は、統計的ノイズおよび他の不正確さを含む、ある期間にわたって観察された一連の測定値を使用して、未知変数の推定値を生成するプロセス(または方法)である。実際、未知変数のこれらの生成された推定値は、単一の測定値を使用して生成された未知変数の推定値よりも正確となり得る。カルマンフィルタ100は、未知変数にわたる同時確率分布を推定することによって未知変数の推定値を生成する。
具体例としてのシナリオにおいて、カルマンフィルタ100によって使用される一連の測定値は、動的マシンの状態変数に関連付けられる測定値102とすることができる。したがって、この具体例としてのシナリオにおいて、カルマンフィルタ100は、動的マシンの状態推定104を生成する際に使用されてもよい。本明細書で使用される、状態変数は、動的マシンの「状態」を数学的に記述する変数であってもよい。動的マシンの状態は、動的マシンに影響を与えるいかなる外力もない場合のその将来の挙動(たとえば運動)を決定するのに十分に、動的マシンを記述する。例として、状態推定値104は、速度、位置、および/またはその他のような物理量の推定値とすることができる。実際、これらの状態推定値104は、ナビゲーションガイダンス、ならびに車両、特に航空機、宇宙船、および動的に位置決めされる船舶の制御等の用途において必要とされる。
カルマンフィルタ100は、予測ステップと更新ステップとを含む2ステッププロセスである。予測ステップにおいて、カルマンフィルタ100は、予測モデルを使用して、現在の状態を、プロセスノイズによって支配されるそれらの不確実性とともに予測する。例として、予測モデルは、現在の状態を予測しつつ、状態における不確実性を低減するためのプロセスノイズ(たとえば仮定108)の影響を予測モデルが受けるように、人為的に設計されてもよい。実際、予測された現在の状態は、現在の状態にわたる同時確率分布によって表されてもよい。いくつかの実施形態の例において、予測モデルは、動的マシンのモデル106を使用して現在の状態を予測してもよい。本明細書で使用される、動的マシンのモデル106は、動的マシンの状態を(i)動的マシンの以前の状態および(ii)動的マシンへの制御入力に関連付ける数式であってもよい。モデル106の例は以下の通りである。
Figure 0007693110000001
更新ステップにおいて、次の測定の結果(必然的にランダムノイズを含むある程度の誤差で損なわれる)が観察されると、予測された状態は、測定ノイズの影響を受ける測定モデルに従って更新される。測定ノイズは測定における誤差を制御することができる。また、測定ノイズは仮定108に含まれ得る。測定モデルは、測定モデルが予測を測定値と整合させることを目的とするように、設計されてもよい。たとえば、測定モデルは、重み付き平均を使用して現在の状態にわたる同時確率分布を更新してもよく、確実性がより高い推定値にはより多くの重みが与えられる。
カルマンフィルタ100の出力は、ノイズ(たとえばプロセスノイズおよび測定ノイズ)についての仮定108および動的マシンのモデル106を考慮して状態の受信された測定値102の尤度を最大化する状態推定値104であってもよい。例として、ノイズについての仮定108は、状態および測定値の不正確さを低減することを目的とする数学的ノイズモデルを含み得る。カルマンフィルタ100は、現在の測定値ならびに以前に計算された状態およびその不確実性行列のみを使用して、リアルタイムで実行することができる、再帰的プロセスであり、追加の過去の情報は不要である。
いくつかの実施形態は、動的マシンの状態を推定するためにカルマンフィルタ100によって提供される原理を、仮想マシンの仮想状態を推定するために拡張または適合させることができる、という認識に基づいている。言い換えると、動的マシンの状態を推定するカルマンフィルタ100を、仮想マシンの仮想状態を推定するカルマンフィルタ110に拡張することができる。特に、予測モデルおよび測定モデルはカルマンフィルタ100の設計者によって提供されるので、この柔軟性は、カルマンフィルタ100をカルマンフィルタ110に適合させるまたは拡張することを可能にする。
多くの制御用途において、コントローラの状態を定める制御パラメータは、事前にわかっている可能性があり、固定されている、すなわち動的マシンの制御中は一定のままである。制御パラメータの例は、PIDコントローラにおけるゲイン等の、コントローラのゲイン、および/またはロボットアームの質量のような、動的マシンの物理的構造のパラメータ、または、車両のタイヤと道路との間の摩擦を含む。たとえば、ロボットアームの質量は、測定することができ、またはロボットの仕様から知ることができ、タイヤの摩擦は制限または選択することができ、コントローラのゲインは研究室で調整することができる。しかしながら、制御パラメータを事前に固定することは、いくつかの用途では最適ではない可能性があり、むしろ不確実性を有する制御パラメータで動的マシンを制御する必要があるであろういくつかの他の用途では、非実用的となる可能性さえある。
そのため、いくつかの実施形態の目的は、コントローラの状態を定める制御パラメータ112を推定するカルマンフィルタ110に、カルマン100を拡張するまたは適合させることである。これらの実施形態において、仮想状態は、制御パラメータによって定められる状態であり、仮想マシンはコントローラである。カルマンフィルタ100をカルマンフィルタ110に拡張するために、予測ステップにおいて、プロセスノイズの影響を受ける予測モデルを、制御パラメータ112の遷移モデル116を使用して制御パラメータを予測するように適合させてもよい。カルマンフィルタ110におけるプロセスノイズは、状態における不正確さを制御するのではなく、制御パラメータがある時間にわたってどれだけ速く変化するかを制御することができる。このようにして仮定118を設計することができる。さらに、遷移モデル116は人為的に設計されてもよい。
更新ステップにおいて、測定ノイズの影響を受ける測定モデルを、性能目標114に基づいて動的マシンの制御における予測された制御パラメータの性能を評価するように、適合させてもよい。さらに、測定モデルを、評価に基づいて予測された制御パラメータを更新するように、適合させてもよい。特に、性能目標114は、非常に柔軟な構造を有し、コントローラの目標とは異なり得る。
それにより、カルマンフィルタ110は、性能目標114からの誤差の存在下で制御パラメータがどれだけ速く変化するかについての仮定118に基づいて、制御パラメータ112を推定することができる。実際、カルマンフィルタ110の出力は、(i)仮定118および(ii)遷移モデル116を考慮して、受信した性能目標114の尤度を最大にする制御パラメータ推定値112である。例として、カルマンフィルタ110の原理を使用する制御システムは、図2Aの詳細な説明でにおいて説明される通りである。
図2Aは、本開示のいくつかの実施形態に係る、動的マシン202の動作を制御するための制御システム200のブロック図を示す。いくつかの実施形態は、制御システム200の目的が、工学プロセスにおいて動的マシン202を制御することである、という認識に基づいている。このため、制御システム200は、動的マシン202に動作可能に結合することができる。以下、「制御システム」および「システム」は、同じ意味を持つものとして区別なく使用される場合がある。以下、「動的マシン」および「マシン」は、同じ意味を持つものとして区別なく使用される場合がある。マシン202の例は、車両(たとえば自動運転車両)、ロボットアセンブリ、モータ、エレベータのドア、HVAC(暖房、換気、および空調)システムなどを含み得る。たとえば、車両は、自動運転車、航空機、宇宙船、動的に位置決めされる船舶などの可能性がある。マシン202の動作の例は、特定の軌道に従って車両を動作させること、特定のパラメータに従ってHVACシステムを動作させること、特定のタスクに従ってロボットアームを動作させること、およびエレベータドアを開閉することを含み得るが、これらに限定される訳ではない。
システム200は、少なくとも1つのプロセッサ204と、トランシーバ206と、バス208とを含み得る。加えて、システム200は、メモリを含み得る。メモリは、RAM(ランダムアクセスメモリ)、ROM(読出専用メモリ)、ハードディスク、またはそれらの任意の組み合わせ等の記憶媒体として実現されてもよい。例として、メモリは、少なくとも1つのプロセッサ204が実行可能な命令を格納することができる。少なくとも1つのプロセッサ204は、シングルコアプロセッサ、マルチコアプロセッサ、コンピューティングクラスタ、または任意の数の他の構成として実現されてもよい。少なくとも1つのプロセッサ204は、バス208を介してメモリおよび/またはトランシーバ206に動作可能に接続されてもよい。ある実施形態に従うと、少なくとも1つのプロセッサ204は、フィードバックコントローラ210および/またはカルマンフィルタ212として構成されてもよい。したがって、フィードバックコントローラ210およびカルマンフィルタ212は、シングルコアプロセッサ、マルチコアプロセッサ、コンピューティングクラスタ、または任意の数の他の構成内で実現されてもよい。代わりに、フィードバックコントローラ210は、システム200の外部で実現されてもよく、システム200と通信してもよい。この構成において、システム200は、フィードバックコントローラ210に動作可能に結合されてもよく、フィードバックコントローラは、マシン202に結合されてもよい。たとえば、フィードバック制御部210は、PID(比例・積分・微分)コントローラ、最適コントローラ、ニューラルネットワークコントローラなどであってもよい。
ある実施形態に従うと、フィードバックコントローラ210は、マシン202を制御するための制御入力のシーケンスを決定するように構成されてもよい。たとえば、制御入力は、場合によっては、電圧、圧力、力、トルクなどのような物理量に関連付けられてもよい。実施形態の例において、フィードバックコントローラ210は、制御入力のシーケンスが、たとえば基準を追跡するという特定のタスクを実行するために、マシン202の状態を変化させるように、制御入力のシーケンスを決定してもよい。制御入力のシーケンスが決定されると、トランシーバ206は、制御入力のシーケンスを入力信号214としてサブミットするように、構成されてもよい。その結果、マシン202の状態は、特定のタスクを実行するために入力信号214に従って変更されてもよい。例として、トランシーバ206は、RF(無線周波数)トランシーバなどであってもよい。
さらに、マシン202の状態は、マシン202に設置された1つ以上のセンサを使用して測定することができる。1つ以上のセンサは、フィードバック信号216をトランシーバ206に送信することができる。トランシーバ206はフィードバック信号216を受信することができる。実施形態の例において、フィードバック信号216は、制御入力のシーケンスのそれぞれに対応する測定値のシーケンスを含み得る。例として、測定値のシーケンスは、制御入力のシーケンスに従いマシン202によって出力される状態の測定値であってもよい。したがって、測定値のシーケンス内の各測定値は、対応する制御入力によって引き起こされるマシン202の状態を示し得る。測定のシーケンス内の各測定値は、場合によっては、電流、流量、速度、位置および/またはその他等の物理量に関連付けられ得る。このようにして、システム200は、制御入力のシーケンスを反復的にサブミットし、フィードバック信号を受信することができる。実施形態の例において、現在の反復における制御入力のシーケンスを決定するために、システム200は、マシン202の現在の状態を示す測定値のシーケンスを含むフィードバック信号216を使用する。
現在の反復における制御入力のシーケンスを決定するために、フィードバックコントローラ210は、各制御ステップにおいて、マシンの現在の状態の現在の測定値を含むフィードバック信号216に基づいてマシン202を制御するための現在の制御入力を決定するように構成されてもよい。ある実施形態に従うと、現在の制御入力を決定するために、フィードバックコントローラ210は制御ポリシーを適用するように構成されてもよい。本明細書で使用される、制御ポリシーは、マシン202の状態のすべての状態または状態のサブセットを制御入力にマッピングする数式のセットであってもよい。このマッピングは、分析的であってもよく、または最適化問題に対する解に基づいていてもよい。制御ポリシーの適用に応じて、現在の状態の現在の測定値が、フィードバックコントローラ210の制御パラメータのセット内の制御パラメータの現在の値に基づいて、現在の制御入力に変換されてもよい。本明細書で使用される、制御パラメータは、(i)フィードバックコントローラ210のゲインおよび/または(ii)マシン202の物理的構造のパラメータであってもよい。たとえば、フィードバックコントローラ210がPIDコントローラに対応する場合、制御パラメータのセットは、PIDコントローラの、比例ゲイン、積分ゲイン、および微分ゲインを含む。たとえば、マシン202の物理的構造のパラメータは、ロボットアームの質量、または車両のタイヤと道路との摩擦を含み得る。特に、制御パラメータは、制御ポリシーの出力である制御入力と混同されてはならない。ある実施形態に従うと、制御パラメータの現在の値はカルマンフィルタ212によって生成されてもよい。例として、制御パラメータを生成するカルマンフィルタ212は、図2Bの詳細な説明において説明される通りである。
図2Bは、本開示のいくつかの実施形態に係る、制御パラメータを生成するためのカルマンフィルタ212を示す。図2Bは図2Aとの関連で説明される。ある実施形態に従うと、カルマンフィルタ212は、フィードバックコントローラ210の状態を反復的に更新するように構成されてもよい。ある実施形態に従うと、フィードバックコントローラ210の状態は、制御パラメータによって定められる。このため、カルマンフィルタ212の目的は、制御パラメータを反復的に生成することである。実施形態の例において、カルマンフィルタ212は、予測モデル218と測定モデル220とを用いて制御パラメータを反復的に生成してもよい。例として、予測モデル218および測定モデル220は人為的に設計されてもよい。
現在の反復において(たとえば時間ステップkにおいて)制御パラメータを生成するために、予測モデル218は、制御パラメータの事前知識218aを使用して制御パラメータの値を予測するように構成されてもよい。例として、制御パラメータの事前知識218aは、前の反復(たとえば時間ステップk-1において)で生成されてもよい。制御パラメータの事前知識218aは、前の反復における制御パラメータにわたる同時確率分布(またはガウス分布)であってもよい。前の反復における制御パラメータにわたる同時確率分布は、前の反復において計算された、平均θk-1|k-1、および分散(または共分散)Pk-1|k-1によって定めることができる。例として、前の反復における同時確率分布は、過去の反復において(たとえば時間ステップk-2において)生成された同時確率分布および/またはフィードバックコントローラ210のモデル(たとえば遷移モデル116)に基づいて生成されてもよい。
ある実施形態に従うと、現在の反復において予測される制御パラメータの値は、同時確率分布218b(またはガウス分布218b)であってもよい。例として、予測モデル218の出力は、予測モデル218が複数の制御パラメータを予測するように構成されている場合、同時確率分布218bであってもよい。代わりに、予測モデル218の出力は、予測モデル218が単一の制御パラメータを予測するように構成されている場合、ガウス分布218bであってもよい。例として、同時確率分布218aは、現在の反復において計算される、平均θk|k-1、および分散(または共分散)Pk|k-1によって定められてもよい。たとえば、単一の制御パラメータを予測しながら、予測モデル218によって出力されるガウス分布は、図2Cに示される通りである。
図2Cは、本開示のいくつかの実施形態に係る、1つの特定の制御パラメータを表すガウス分布224を示す。図2Cは図2Bとの関連で説明される。ガウス分布224は、予測モデル218によって予測されてもよい。例として、ガウス分布224はガウス分布218bに対応し得る。ガウス分布224は、平均228(たとえば平均θk|k-1)および分散226(たとえば分散Pk|k-1)によって定められてもよく、平均228はガウス分布224の中心位置を定め、分散226はガウス分布224の広がり(または幅)の測定値を定める。
再び図2Bを参照して、ある実施形態に従うと、予測モデル218はプロセスノイズの影響を受ける場合がある。本明細書で使用される、プロセスノイズは、制御パラメータが時間とともにどれだけ速く変化するかを定める仮定(たとえば仮定118)であってもよい。プロセスノイズは、プロセスノイズによって定められる分散内で制御パラメータが時間とともにどれだけ速く変化するかを制御することができる。プロセスノイズは人為的に設計されてもよい。たとえば、予測モデル218がプロセスノイズの影響を受ける場合、予測モデル218は、1つの特定の制御パラメータに対して複数のガウス分布を出力してもよく、複数のガウス分布は、プロセスノイズの分散内で定められる異なる分散を有し得る。例として、1つの特定の制御パラメータについて予測モデル218によって出力される複数のガウス分布は、図2Dに示される通りである。
図2Dは、本開示のいくつかの実施形態に係る、異なる分散を有するガウス分布230、232、および234を示す。図2Dは図2Bとの関連で説明される。ガウス分布230、232、および234は、予測モデル218によって予測されてもよい。これらのガウス分布230、232、および234の各々は、互いに異なる分散を有し得るが、ガウス分布230、232、および234の平均236は一定である可能性がある。(i)小さな分散と、(ii)他のガウス分布の中で最も高い確率を有する平均236を有するガウス分布とは、制御パラメータの正しい予測となり得る。例として、ガウス分布230は制御パラメータの正しい予測を表すことができる。
再び図2Bを参照すると、このようにして、プロセスノイズの影響を受ける予測モデル218は、同時確率分布218b(またはガウス分布218b)として出力される制御パラメータの値を予測するように構成されてもよい。同時確率分布218bが現在の反復において予測モデル218によって出力されると、測定モデル220は、測定のシーケンス220aに基づいて、制御パラメータの現在の値を生成するための制御パラメータの予測値を更新するように構成されてもよい。実施形態の例において、測定値のシーケンス220aは、トランシーバ206が受信する測定値のシーケンスであってもよい。例として、測定モデル220によって使用される測定値のシーケンス220aは、図2Eに示される通りである。
図2Eは、本開示のいくつかの実施形態に係る、マシン202の状態の経時的な発展238を示す。図2Eは図2Aおよび図2Bとの関連で説明される。例として、マシン202の状態の発展238は、マシン202に設置された1つ以上のセンサから取得されてもよい。例として、現在時刻がtである場合、測定モデル220は、N個の状態測定値240を使用して、制御パラメータの予測値を更新してもよい。N個の状態測定値240は、測定値のシーケンス220aに対応し得る。N個の状態測定値240は、過去の時間t-Nに関連付けられる測定値xt-Nから始まり、現在時刻tに関連付けられる測定値xt0で終わる、測定値を含み得る。ここで、図2Eでは、1つの状態のみについてN個の状態測定値240を用いた測定モデル220について検討する。しかしながら、マシン202が2つ以上の状態に関連付けられる場合、測定モデル220は、同じ時間フレーム内のすべての状態のN個の測定値を使用してもよい。
再び図2Bを参照して、いくつかの実施形態は、1つ以上のセンサから得られた測定値のシーケンス220aが、センサの欠陥、他のノイズ(たとえばランダムノイズ)などが原因で、正確ではないことがある、という認識に基づいている。このため、測定モデル220が測定ノイズの影響を受けるようにしてもよい。本明細書で使用される、測定ノイズは、センサの欠陥、他のノイズなどによって引き起こされる測定220aの不正確さを低減するために使用できる、ノイズモデルである。例として、測定ノイズは人為的に設計することができる。
実施形態の例において、測定ノイズの影響を受ける測定モデル220は、測定値のシーケンス220aに基づいて制御パラメータの予測値を更新するように構成されてもよい。予測値を更新するために、測定モデル220は、測定値のシーケンス220aとマシン202のモデル(たとえば、モデル106)との間のモデル不整合を計算するように構成されてもよい。さらに、測定モデル220は、予測された制御値、マシン202のモデル、および計算されたモデル不整合を使用して、マシン202の発展(たとえば、状態の測定)をシミュレートするように構成されてもよい。たとえば、シミュレートされた発展(すなわち、状態の測定)は、測定のシーケンス220aと同様であってもよい。さらに、測定モデル220は、性能目標220bに従って、マシン202のシミュレートされた発展を評価して、制御パラメータの現在値を生成するように構成されてもよい。制御パラメータの現在値は、測定のシーケンス220aと同様である可能性があるシミュレートされた発展の評価に基づいて生成されるので、制御パラメータの現在値は、測定のシーケンス220aを説明することができる。たとえば、制御パラメータの予測値を更新する測定モデル220を図2Fにグラフで示す。
図2Fは、本開示のいくつかの実施形態に係る、制御パラメータの予測値を更新するための概略図242を示す。図2Fは図2Bとの関連で説明される。概略図242は、予測されたガウス分布244と、制御パラメータ246(または制御パラメータの値)と、更新されたガウス分布248とを含む。例として、予測ガウス分布244は、平均θk|k-1および分散Pk|k-1によって定められるガウス分布218bであってもよい。例として、制御パラメータ246は、性能目標220bに関して特定の軌道を実現するためにマシン202を制御するのに使用することができる制御パラメータであってもよい。さらに、制御パラメータ246は、予測ガウス分布244に由来してもよく、その場合、測定値は、予測ガウス分布244とのゼロ確率に近い。このため、測定モデル220は、予測ガウス分布244が更新ガウス分布248に近づくように、予測ガウス分布244を更新してもよい。言い換えると、測定モデル220は、予測されたガウス分布244に関連付けられる平均および分散を、更新されたガウス分布248に対応する平均(たとえば平均θk|k)および分散(たとえば分散Pk|k)、更新されたガウスに対応する分散)に更新することができる。
再び図2Bを参照すると、このようにして、測定モデル220は、測定値のシーケンス220aに基づいて制御パラメータの予測値を更新して、制御パラメータの現在値を性能目標220bに従って生成してもよい。実施形態の例において、性能目標220bは、制御入力を決定するために使用されるフィードバックコントローラ210の制御ポリシーとは異なり得る。このことは、制御ポリシーがそのリアルタイムの適用が原因で制限される構造を有するので、有益であり、たとえば、コスト関数は、多くの場合、コスト関数が数値最適化に適したものとなり得るように、微分可能かつ凸状である必要がある。しかしながら、性能目標220bは、同一の制御ポリシーに従って制御の異なる時間において変化する可能性がある。
ある実施形態に従うと、測定モデル220は、生成された制御パラメータの現在の値を、同時確率分布220d(またはガウス分布220d)として出力してもよく、これらは、量220cを、たとえば平均θk|kおよび分散Pk|k-を定める。カルマンフィルタ212は、次の反復222において(たとえば時間ステップk+1において)制御パラメータを生成するための手順を繰り返してもよい。
このようにして、カルマンフィルタ212は、フィードバックコントローラ210の状態を反復的に更新するために使用することができる制御パラメータを反復的に生成してもよい。フィードバックコントローラ210の更新された状態は、次に、マシン202の動作を制御するための制御入力を決定するために使用されてもよい。カルマンフィルタ212は、データ履歴全体を使用して制御パラメータを再計算するのではなく、制御パラメータの同時確率分布(たとえば事前知識218a)を使用して制御パラメータを反復的に生成するので、カルマンフィルタ212は、マシン202の動作を制御するための制御パラメータを効率的に生成することができる。さらに、システム200はデータ履歴全体ではなく制御パラメータの事前知識のみを格納すればよいので、システム200のメモリに格納すべきデータも減じることができる。したがってシステム200のメモリ要件を減じることができる。
いくつかの実施形態は、制御パラメータのうちの1つ以上の制御パラメータが同じ制御パラメータのうちの別の(他の)制御パラメータに依存する場合、カルマンフィルタ212は制御パラメータをまとめて較正しなければならない、という認識に基づいている。たとえば、PIDコントローラにおいて、PIDコントローラのゲインは相互依存しているので、ゲインはまとめて較正されなければならない。
一般的に、これらの相互依存制御パラメータを較正することは、相互依存性が較正中に追加の変数を追加することがあるので、困難な場合がある。そのような状況において、カルマンフィルタ212は、図3の詳細な説明で述べるように構成されてもよい。
図3は、本開示のいくつかの実施形態に係る、複数の相互依存制御パラメータを較正するためのカルマンフィルタ212のブロック図を示す。図3は図2Bとの関連で説明される。ある実施形態に従うと、制御パラメータが複数の相互依存制御パラメータに対応するとき、カルマンフィルタ212は、制御パラメータを較正するためにカルマンゲイン300を調整するように構成されてもよい。例として、制御パラメータに含まれる1つ以上の制御パラメータが、同じ制御パラメータのうちの他の制御パラメータに依存する場合、制御パラメータを、多重相互依存制御パラメータと呼ぶことができる。本明細書で使用される、「カルマンゲイン300を調整する」ことは、制御パラメータに異なる重みをかけることを示し得る。多重相互依存制御パラメータを較正するために、カルマンフィルタ212は、カルマンゲイン300を、他の制御パラメータに依存する1つ以上の制御パラメータに対して他の制御パラメータよりも多くの重みをかけるように、調整してもよい。さらに、カルマンフィルタ212は、較正された相互依存制御パラメータ302を出力するために、測定モデル220を使用して制御パラメータを同時に更新するように構成されてもよい。例として、カルマンフィルタ212は、図4Aおよび/または図4Bの詳細な説明で述べるようにカルマンゲイン300を計算することができる。
Figure 0007693110000002
Figure 0007693110000003
Figure 0007693110000004
Figure 0007693110000005
Figure 0007693110000006
Figure 0007693110000007
Figure 0007693110000008
Figure 0007693110000009
さらに、カルマンフィルタ212は、平均θおよび分散Pk|kによって定められる更新された同時確率分布を、マシンを制御するための制御パラメータとして出力することができる。
Figure 0007693110000010
Figure 0007693110000011
Figure 0007693110000012
Figure 0007693110000013
Figure 0007693110000014
Figure 0007693110000015
Figure 0007693110000016
さらに、カルマンフィルタ212は、平均θおよび分散Pk|kによって定められる更新された同時確率分布を、マシンを制御するための制御パラメータとして出力することができる。
図5は、本開示のいくつかの実施形態に係る、状態依存制御パラメータを較正するための方法500を示す。図5は図2Aおよび図2Bに関連して説明される。いくつかの実施形態は、フィードバックコントローラ212の制御パラメータのセットが、マシン202の状態に依存する少なくともいくつかの制御パラメータを含み得る、という認識に基づいている。たとえば、車両のタイヤの摩擦は車両の速度に依存し得る。以下、「マシンの状態に依存する少なくともいくつかの制御パラメータ」および「状態依存制御パラメータ」は、同じ意味を持つものとして区別なく使用される場合がある。制御パラメータのセットが状態依存制御パラメータを含む場合、これらの状態依存制御パラメータはマシンの状態に対して連続的に変化し得るので、制御パラメータの較正は困難になる可能性がある。これらの実施形態において、カルマンフィルタ212は、状態依存制御パラメータを較正するための方法500を実行することができる。
Figure 0007693110000017
ステップ504において、カルマンフィルタ212は、マシン202の状態との代数関係に基づいて、プロセスノイズによって定められる分散内の状態依存制御パラメータを予測することができる。例として、カルマンフィルタ212の予測モデル218は、マシン202の状態との代数関係に基づいてプロセスノイズによって定められる分散内の状態依存制御パラメータを予測モデル218が予測するように、設計(または記述)されてもよい。たとえば、状態依存制御パラメータの代数関係が、状態依存制御パラメータと基底関数との線形結合に対応するとき、予測モデル218は、基底関数が2つ以上の状態依存領域によって定められるか否かを確認するように構成されてもよい。基底関数が2つ以上の状態依存領域によって定められない場合、予測モデル218は基底関数の係数を予測するように構成されてもよい。
Figure 0007693110000018
Figure 0007693110000019
図6Aは、本開示のいくつかの他の実施形態に係る、マシン202の動作を制御するためのシステム200のブロック図を示す。図6Aは図2Aおよび図2Bとの関連で説明される。いくつかの実施形態は、制御パラメータのオンライン更新がマシン202の動作を不安定にする場合がある、という認識に基づいている。たとえば、制御法則または制御ポリシーが制御パラメータの微分方程式(たとえば常微分方程式(Ordinary differential equation)(ODE))で表される場合、制御パラメータの変更(更新)によって微分方程式の平衡の安定性が損なわれる場合がある。このため、システム200は安全確認モジュール600をさらに含み得る。例として、安全確認モジュール600は、少なくとも1つのプロセッサ204内で実現されてもよい。代わりに、安全確認モジュール600は、少なくとも1つのプロセッサ204が実行することができる、メモリに格納されたソフトウェアモジュールであってもよい。ある実施形態に従うと、安全確認ジュール600は、マシン202の安全な動作を保証するためにカルマンフィルタ212によって生成された制御パラメータの値を使用して安全確認方法を実行するように構成されてもよい。例として、安全確認モジュール600によって実行される安全確認方法は、図6Bの詳細な説明において説明される通りである。
図6Bは、本開示のいくつかの実施形態に係る、安全確認モジュール600によって実行される安全確認方法を示す。図6Bは図6Aとの関連で説明される。ステップ602において、安全確認モジュール600は、カルマンフィルタ212によって生成された制御パラメータの値(たとえば現在の値)を取得することができる。
ステップ604において、安全確認モジュール600は、カルマンフィルタ212によって生成された制御パラメータの値が制御ポリシーに従って安全確認を満たすか否かを確認することができる。言い換えると、安全確認モジュール600は、カルマンフィルタ212によって生成された制御パラメータで更新された制御ポリシーに従ってマシン202がフィードバックコントローラ210によって制御される場合、カルマンフィルタ212による制御パラメータの値がマシン202の安定した制御を提供するか否かを確認することができる。カルマンフィルタ212によって生成された制御パラメータが安全確認を満たすか否かを確認するために、安全確認モジュール600は、前の状態、測定のシーケンス(たとえば測定のシーケンス220a)、および/またはマシン202のモデル(たとえばモデル106)を使用することができる。
たとえば、カルマンフィルタ212によって生成された制御パラメータで更新された制御ポリシーについてリアプノフ関数が存在する場合、安全確認は満たされる。いくつかの実施形態において、リアプノフ関数の存在は、リアプノフ関数を発見することを目的とした最適化問題を解くことによって証明することができる。一実施形態において、カルマンフィルタ212によって生成された制御パラメータで更新されたフィードバックコントローラ210を用いてマシン202を制御する間に、状態の履歴全体および測定値のシーケンスについての性能目標に関してマシン202の状態の減少するコストが実現される場合、安全確認は満たされる。別の実施形態において、カルマンフィルタ212によって生成された制御パラメータで更新されたフィードバックコントローラ210を用いてマシン202を制御している間に、原点へのマシン202の状態の近接性(または有界性)が実現される場合、安全確認は満たされる。さらにもう1つの実施形態において、マシン202の状態の減少するコストと、原点へのマシン202の状態の近接性との組み合わせが実現される場合、安全確認は満たされる。したがって、安全確認は、マシン202の状態の減少するコストおよびマシン202の状態の近接性のうちの、1つまたは組み合わせを含み得る。例として、安全確認を実行する安全確認モジュール600は、図6Cの詳細な説明において説明される通りである。
Figure 0007693110000020
再び図6Bを参照して、カルマンフィルタ212によって生成された制御パラメータの値が安全確認を満たさない場合、安全確認モジュール600は、ステップ608において、フィードバックコントローラ210の制御パラメータを保持してもよい。言い換えると、安全確認が失敗した場合、安全確認モジュール600は、フィードバックコントローラ210の制御パラメータを、カルマンフィルタ212によって生成された制御パラメータで更新しなくてもよい。さらに、カルマンフィルタ212は、安全確認が満たされるまで、制御パラメータの新たな値を反復的に生成するように構成されてもよい。特に、カルマンフィルタ212によって生成された制御パラメータが安全確認を満たさない場合であっても、カルマンフィルタ212は再始動されるべきではない。
カルマンフィルタ212によって生成された制御パラメータの値が安全確認を満たす場合、安全確認モジュール600は、ステップ606において、フィードバックコントローラ210の制御パラメータを、カルマンフィルタ212によって生成された制御パラメータで更新することができる。このようにして、安全確認モジュール600は、フィードバックコントローラ210の制御パラメータのオンライン更新中に、制御の安定性を保証することができる。
再び図6Aを参照して、フィードバックコントローラ210の制御パラメータが更新されると、フィードバックコントローラ210は、カルマンフィルタ212によって生成された制御パラメータで更新された制御ポリシーを適用することにより、マシン202の動作を制御するための制御入力を決定するように構成されてもよい。
いくつかの実施形態は、フィードバックコントローラ210の制御パラメータのオンライン更新は、制御の品質を改善し得るものの、追加の課題を伴う、という理解に基づいている。たとえば、マシン202の動作中の制御パラメータのオンライン更新は、制御の不連続性を導入する場合がある。いくつかの実施形態は、制御の不連続性を処理して、マシン202の動作に対する制約を満たすように制御コマンドを実施することができる、という認識に基づいている。このために、フィードバックコントローラ210は、マシン202の動作に対する制約を満たす制御コマンドを使用して制御入力(たとえば現在の制御入力)を決定するように構成されてもよい。言い換えると、フィードバックコントローラ210は、マシン202の動作に対する制約の影響を受ける制御入力を決定することにより、制御の不連続性を処理するように構成されてもよい。例として、制御コマンドは、制御パラメータ(たとえば現在の制御パラメータ)が制御理論特性を満たすときに、マシン202の動作に対する制約を満たす。たとえば、制御理論特性は、設計者によって指定されてもよい。
Figure 0007693110000021
それに加えてまたはその代わりに、性能目標200bは、(状態または制御入力ではなく)特定の制御パラメータについてのコスト関数を含み得るものであり、たとえば、y=θnom、h(θ)=θであり、θnomは、いずれかまたはすべての制御パラメータの公称値を定める。
いくつかの実施形態において、測定モデル220は、マシンの状態およびマシンを取り囲む環境の状態のうちの1つまたは組み合わせに基づいて、性能目標のリストの中から1つを選択するように構成されてもよい。たとえば、マシンの状態および/またはマシンを制御するために使用される制御パラメータに応じて、測定モデル220は、性能目標のリストから、性能目標のリストの中の他のコスト関数と比較して制御の性能を著しく低下させるコスト関数を特定することができる。さらに、測定モデル220は、特定されたコスト関数を性能目標220aとして選択することができる。例として、コスト関数700が性能目標のリストの中の他のコスト関数と比較して制御の性能を著しく低下させる場合、測定モデル220はコスト関数700を性能目標200aとして選択することができる。さらに、測定モデル220は、制御パラメータを生成しながらコスト関数700を最適化(たとえば最小化)することによって制御パラメータを更新することができる。
いくつかの実施形態は、制御パラメータがマシンの状態に依存しない場合、制御パラメータの不確実性についての境界を予め決定することができる、という認識に基づいている。以下、「制御パラメータはマシンの状態に依存しない」および「状態非依存制御パラメータ」は、同じ意味を持つものとして区別なく使用される場合がある。これらの実施形態において、カルマンフィルタ212は、境界に基づいて、性能目標、測定ノイズ、またはプロセスノイズのうちの1つまたは組み合わせを選択することができる。さらに、いくつかの可能な状態依存制御パラメータおよび状態非依存制御パラメータは、図8Aに示される通りである。
Figure 0007693110000022
Figure 0007693110000023
Figure 0007693110000024
Figure 0007693110000025
Figure 0007693110000026
Figure 0007693110000027
コントローラ812の場合、カルマンフィルタ212は、性能とロバストネスとの間のトレードオフを決定するために使用される、前置補償器および後置補償器のフィルタ係数を推定することができる。たとえば、H∞コントローラ812は図8Bに示される。
Figure 0007693110000028
ここで、Hコントローラ812は、マシン202の周波数応答の最大の大きさを最小にすることによって計算されてもよい。
図9は、本開示のいくつかの実施形態に係る、電動機900を制御するためのシステム200の概略図を示す。この例において、システム200のフィードバックコントローラは、電動機900を制御するPIDコントローラであってもよい。システム200は、電動機900に設置されたセンサ902から、位置または速度信号904(たとえばフィードバック信号216)を受信することができる。さらに、システム200は、所望の位置または速度信号906(たとえば制御コマンド)を受信して、誤差信号908を計算することができる。さらに、システム200は、比例ゲインk、積分ゲインkI、および微分ゲインkを較正することができる。さらに、システム200は、誤差信号908を使用し、制御ポリシーを適用することにより、制御入力910を決定することができる。例として、制御ポリシーは、3つの成分の和、たとえば、誤差に較正された比例ゲインkを乗算することによって得られる比例成分912aと、誤差を積分し積分した誤差に較正された積分ゲインkを乗算することによって得られる積分成分912bと、時間に対する誤差の微分を求めこの微分に較正された微分ゲインkを乗算することによって得られる微分成分912cとの和であってもよい。さらに、システム200は、電動機900を制御するために、決定された制御入力910を電動機にサブミットすることができる。
図10は、本開示のいくつかの実施形態に係る、車両1000を制御するためのシステム200の概略図を示す。この例において、システム200は、車両1000がレーン1002の中央に留まるように車両1000を制御することができる。システム200は、センサ1004から位置および/または速度信号を受信することができる。システム200はさらに、制御ポリシーに関連付けられる1つ以上の制御パラメータを較正することができる。たとえば、制御パラメータは車両1000のタイヤと道路との摩擦であってもよい。さらに、システム200は、較正された1つ以上の制御パラメータで更新された制御ポリシーを適用することによって制御入力を決定することができる。例として、システム200は、制御入力が車両1000をレーン1002の中央に留まらせるように、制御入力を決定することができる。たとえば、決定される制御入力は、レーン1002の中央に収束する車両軌道1008で車両1000が進むようにするステアリング角度1006であってもよい。
上記説明は、具体例としての実施形態のみを提供し、本開示の範囲、適用可能性、または構成を限定することは意図していない。むしろ、具体例としての実施形態の上記説明は、具体例としての1つ以上の実施形態を実現すること可能にする説明を当業者に提供する。意図されているのは、添付の請求項に記載されている、開示された主題の精神および範囲から逸脱することなく、要素の機能および構成に対して行われ得る各種変更である。
具体的な詳細事項が、上記説明において、実施形態の十分な理解を得るために提供されている。しかしながら、これらの具体的な詳細事項がなくても実施形態を実行し得ることを当業者は理解する。たとえば、開示されている主題におけるシステム、プロセス、および他の要素は、実施形態を不必要な詳細事項で不明瞭にしないようにするために、ブロック図の形態で構成要素として示される場合がある。他の例において、実施形態を不明瞭にしないようにするために、周知のプロセス、構造、および技術が、不必要な詳細事項なしで示される場合がある。さらに、各種図面における同様の参照番号および名称は同様の要素を示す。
また、個々の実施形態は、フローチャート、フロー図、データフロー図、構造図、またはブロック図として示されるプロセスとして説明される場合がある。フローチャートは動作を逐次プロセスとして説明する場合があるが、動作の多くは並列にまたは同時に実行することができる。さらに、動作の順序は入れ替え可能である。プロセスは、その動作が完了したときに終了されてもよいが、論じられていないまたは図に含まれていない他のステップを有し得る。さらに、具体的に記載されている何らかのプロセスにおけるすべての動作がすべての実施形態に起こり得る訳ではない。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応する場合、関数の終了は、呼び出し関数または主関数に当該関数を戻すことに対応し得る。
さらに、開示された主題の実施形態は、少なくとも部分的に、手作業または自動のいずれかで実現されてもよい。手作業または自動による実現は、マシン、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組み合わせの使用を通して行われてもよく、または少なくとも支援されてもよい。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実現される場合、必要なタスクを実行するためのプログラムコードまたはコードセグメントは、マシン読取可能媒体に格納されてもよい。プロセッサが必要なタスクを実行してもよい。
本明細書で概要を述べた各種方法またはプロセスは、さまざまなオペレーティングシステムまたはプラットフォームのうちのいずれか1つを採用した1つ以上のプロセッサ上で実行可能なソフトウェアとして符号化されてもよい。加えて、そのようなソフトウェアは、複数の好適なプログラミング言語および/またはプログラミングもしくはスクリプトツールのうちのいずれかを用いて記述されてもよく、また、フレームワークもしくは仮想マシン上で実行される、実行可能な機械言語コードまたは中間コードとしてコンパイルされてもよい。典型的に、プログラムモジュールの機能は、各種実施形態における要望に応じて組み合わせても分散させてもよい。
本開示の実施形態は、方法として実現されてもよく、その一例が提供されている。この方法の一部として実行される動作の順序は任意の適切なやり方で決定されてもよい。したがって、実施形態は、例示されている順序と異なる順序で動作が実行されるように構成されてもよく、これは、いくつかの動作を、例示されている実施形態では一連の動作として示されていても、同時に実行することを含み得る。本開示をいくつかの好ましい実施形態を参照しながら説明してきたが、その他のさまざまな適合化および修正を本開示の精神および範囲の中で行い得ることが理解されるはずである。したがって、本開示の真の精神および範囲に含まれるそのような変形および修正のすべてをカバーすることが添付の請求項の態様である。

Claims (19)

  1. タスクを実行するためにマシンの動作を制御するためのシステムであって、前記システムは、
    制御入力のシーケンスを前記マシンにサブミットし対応する測定値のシーケンスを含むフィードバック信号を受信するように構成されたトランシーバを備え、各測定値は、対応する前記制御入力によって引き起こされる前記マシンの状態を示し、前記システムはさらに、
    各制御ステップにおいて、制御ポリシーを適用することにより、前記マシンの現在の状態の現在の測定値を含む前記フィードバック信号に基づいて前記マシンを制御するための現在の制御入力を決定するように構成された、フィードバックコントローラを備え、前記フィードバックコントローラは、前記制御ポリシーを適用することにより、前記現在の測定値を、前記フィードバックコントローラの制御パラメータのセット内の制御パラメータの現在の値に基づいて、前記現在の制御入力に変換し、前記システムはさらに、
    カルマンフィルタを備え、前記カルマンフィルタは、プロセスノイズの影響を受ける前記制御パラメータの値を予測するための予測モデルと、測定ノイズの影響を受ける前記測定値のシーケンスに基づいて前記制御パラメータの予測された値を更新するための測定モデルとを用いて、前記制御パラメータによって定められる前記フィードバックコントローラの状態を反復的に更新することにより、性能目標に従って前記測定値のシーケンスに関連付けられる前記制御パラメータの前記現在の値を生成するように構成され、
    前記予測モデルは、前記制御パラメータの予測分散が前記プロセスノイズによって定められる分散が一定であるとして構成されたアイデンティティ行列である、システム。
  2. 前記カルマンフィルタはさらに、複数の相互依存制御パラメータを較正するためにカルマンゲインを調整するように構成される、請求項1に記載のシステム。
  3. 前記予測モデルは、前記マシンの状態との代数関係に基づいて前記プロセスノイズによって定められる分散内の少なくともいくつかの制御パラメータを予測するように構成される、請求項1に記載のシステム。
  4. 前記制御パラメータを更新するための前記性能目標は、前記フィードバックコントローラの前記制御ポリシーとは異なる、請求項1に記載のシステム。
  5. 前記性能目標は、前記マシンの基準状態からの前記マシンの状態の偏差を定めるコスト関数を含み、前記測定モデルは前記コスト関数を最適化することによって前記制御パラメータを更新するように構成される、請求項1に記載のシステム。
  6. 前記測定モデルはさらに、前記マシンの状態および前記マシンを取り囲む環境の状態のうちの1つまたは組み合わせに基づいて、異なる性能目標の中から1つを選択するように構成される、請求項1に記載のシステム。
  7. 前記性能目標は、(i)基準状態からの前記状態の偏差を定めるコスト関数、(ii)最適動作領域を超える前記状態についてのコスト関数、(iii)基準状態が特定の値だけオーバーシュートされた場合のコスト関数、(iv)前記状態の振動についてのコスト関数、および(v)前記状態が時間ステップ間で変化する場合のコスト関数、のうちの1つまたは組み合わせを含む、請求項1に記載のシステム。
  8. 前記制御パラメータは、(i)前記フィードバックコントローラの1つまたは複数のゲイン、(ii)前記マシンの1つまたは複数の構造パラメータ、(iii)前記フィードバックコントローラによって使用される1つまたは複数のフィルタの1つまたは複数の係数、または(iv)ニューラルネットワークコントローラの1つまたは複数の重み、のうちの1つまたは組み合わせを含む、請求項1に記載のシステム。
  9. 前記制御パラメータを生成するために、前記カルマンフィルタは、1つまたは複数の状態依存領域における基底関数の係数を更新するように構成される、請求項1に記載のシステム。
  10. 前記制御パラメータを生成するために、前記カルマンフィルタは、複数の状態依存領域における基底関数の係数を、前記複数の状態依存領域を分離する境界とともに更新するように構成される、請求項1に記載のシステム。
  11. 前記カルマンフィルタは、前記性能目標の勾配を計算することによってカルマンゲインを計算するように構成された拡張カルマンフィルタ(EKF)である、請求項1に記載のシステム。
  12. 前記カルマンフィルタは、前記性能目標に関して前記制御パラメータを評価することによってカルマンゲインを計算するように構成されたアンセンテッドカルマンフィルタ(UKF)である、請求項1に記載のシステム。
  13. 前記制御パラメータのうちの少なくとも1つの不確実性の境界が予め決定されており、前記カルマンフィルタはさらに、前記不確実性の境界に基づいて、前記プロセスノイズ、前記測定ノイズ、または前記性能目標のうちの1つまたは組み合わせを選択するように構成される、請求項1に記載のシステム。
  14. 前記フィードバックコントローラは、前記マシンの動作に対する制約の影響を受ける前記現在の制御入力を決定しそれによって前記制御の不連続性を処理するように構成される、請求項1に記載のシステム。
  15. 安全確認モジュールをさらに備え、前記安全確認モジュールは、
    前記カルマンフィルタによって生成された前記制御パラメータの値が前記制御ポリシーに従って安全確認を満たすか否かに関連付けられた確認を実行し、
    前記安全確認が満たされた場合、前記カルマンフィルタによって生成された前記制御パラメータを用いて前記フィードバックコントローラの前記制御パラメータを更新するように、構成される、請求項1に記載のシステム。
  16. 前記カルマンフィルタによって生成された前記制御パラメータの値が前記安全確認を満たさない場合、前記カルマンフィルタはさらに、前記安全確認が満たされるまで前記制御パラメータの新たな値を反復的に生成するように構成される、請求項15に記載のシステム。
  17. 前記安全確認は、原点への前記状態の有界性および前記状態の減少するコストのうちの1つまたは組み合わせを含む、請求項15に記載のシステム。
  18. タスクを実行するためにマシンの動作を制御するための方法であって、前記方法は、
    制御入力のシーケンスを前記マシンにサブミットするステップと、
    対応する測定値のシーケンスを含むフィードバック信号を受信するステップとを含み、各測定値は、対応する前記制御入力によって引き起こされる前記マシンの状態を示し、前記方法はさらに、
    各制御ステップにおいて、制御ポリシーを適用することにより、前記マシンの現在の状態の現在の測定値を含む前記フィードバック信号に基づいて前記マシンを制御するための現在の制御入力を決定するステップを含み、前記制御ポリシーを適用することにより、前記現在の測定値を、フィードバックコントローラの制御パラメータのセット内の制御パラメータの現在の値に基づいて、前記現在の制御入力に変換し、前記方法はさらに、
    プロセスノイズの影響を受ける前記制御パラメータの値を予測する予測モデルと、測定ノイズの影響を受ける前記測定値のシーケンスに基づいて前記制御パラメータの予測された値を更新する測定モデルとを用いて、前記制御パラメータによって定められる前記フィードバックコントローラの状態を反復的に更新することにより、性能目標に従って前記測定値のシーケンスを説明する前記制御パラメータの前記現在の値を生成するステップを含み、
    前記予測モデルは、前記制御パラメータの予測分散が前記プロセスノイズによって定められる分散が一定であるとして構成されたアイデンティティ行列である、方法。
  19. タスクを実行するためにマシンの動作を制御する方法を実行するためにプロセッサが実行可能なプログラムが実装された、非一時的なコンピュータ読取可能記憶媒体であって、前記方法は、
    制御入力のシーケンスを前記マシンにサブミットするステップと、
    対応する測定値のシーケンスを含むフィードバック信号を受信するステップとを含み、各測定値は、対応する前記制御入力によって引き起こされる前記マシンの状態を示し、前記方法はさらに、
    各制御ステップにおいて、制御ポリシーを適用することにより、前記マシンの現在の状態の現在の測定値を含む前記フィードバック信号に基づいて前記マシンを制御するための現在の制御入力を決定するステップを含み、前記制御ポリシーを適用することにより、前記現在の測定値を、フィードバックコントローラの制御パラメータのセット内の制御パラメータの現在の値に基づいて、前記現在の制御入力に変換し、前記方法はさらに、
    プロセスノイズの影響を受ける前記制御パラメータの値を予測する予測モデルと、測定ノイズの影響を受ける前記測定値のシーケンスに基づいて前記制御パラメータの予測された値を更新する測定モデルとを用いて、前記制御パラメータによって定められる前記フィードバックコントローラの状態を反復的に更新することにより、性能目標に従って前記測定値のシーケンスを説明する前記制御パラメータの前記現在の値を生成するステップを含み、
    前記予測モデルは、前記制御パラメータの予測分散が前記プロセスノイズによって定められる分散が一定であるとして構成されたアイデンティティ行列である、非一時的なコンピュータ読取可能記憶媒体。
JP2024524508A 2021-08-02 2022-05-19 フィードバックコントローラを較正するためのシステム、方法、およびコンピュータ読取可能記憶媒体 Active JP7693110B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163228228P 2021-08-02 2021-08-02
US63/228,228 2021-08-02
US17/403,222 2021-08-16
US17/403,222 US11977374B2 (en) 2021-08-02 2021-08-16 System and method for calibrating feedback controllers
PCT/JP2022/021477 WO2023013212A1 (en) 2021-08-02 2022-05-19 System and method for calibrating feedback controllers

Publications (2)

Publication Number Publication Date
JP2024524771A JP2024524771A (ja) 2024-07-05
JP7693110B2 true JP7693110B2 (ja) 2025-06-16

Family

ID=85153270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024524508A Active JP7693110B2 (ja) 2021-08-02 2022-05-19 フィードバックコントローラを較正するためのシステム、方法、およびコンピュータ読取可能記憶媒体

Country Status (4)

Country Link
US (1) US11977374B2 (ja)
EP (1) EP4381353A1 (ja)
JP (1) JP7693110B2 (ja)
CN (1) CN117716302A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119289478B (zh) * 2024-12-13 2025-03-04 山东大学 一种建筑暖通空调系统自适应模型预测控制方法及系统
CN120742656B (zh) * 2025-09-02 2025-11-04 厦门弗瑞特流体控制有限公司 一种双速电动执行机构控制系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000056805A (ja) 1998-08-06 2000-02-25 Hitachi Ltd 予測制御装置
JP2010195323A (ja) 2009-02-26 2010-09-09 Nissan Motor Co Ltd 車両用状態推定装置、車両用状態推定方法、車両用懸架制御装置および自動車

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112009000224T5 (de) * 2008-01-31 2011-01-05 Fisher-Rosemount Systems, Inc., Austin Robuster andaptiver modellprädiktiver Regler mit Abstimmung zum Ausgleich einer Modellfehlanpassung
US8447443B1 (en) 2011-06-21 2013-05-21 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Systems and methods for peak-seeking control
WO2013016438A2 (en) * 2011-07-26 2013-01-31 General Electric Company Wastewater treatment plant online monitoring and control
US9901470B2 (en) 2013-03-01 2018-02-27 St. Jude Medical, Cardiology Division, Inc. Methods of repositioning a transcatheter heart valve after full deployment
US9235657B1 (en) * 2013-03-13 2016-01-12 Johnson Controls Technology Company System identification and model development
US10281897B2 (en) * 2015-06-02 2019-05-07 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties
US20180275621A1 (en) 2017-03-24 2018-09-27 Mitsubishi Electric Research Laboratories, Inc. Model Predictive Control with Uncertainties
US10996639B2 (en) * 2019-03-11 2021-05-04 Mitsubishi Electric Research Laboratories, Inc. Model predictive control of systems with continuous and discrete elements of operations
CN111152795B (zh) * 2020-01-08 2022-12-13 东南大学 一种基于模型和参数动态调整的自适应车辆状态预测系统及预测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000056805A (ja) 1998-08-06 2000-02-25 Hitachi Ltd 予測制御装置
JP2010195323A (ja) 2009-02-26 2010-09-09 Nissan Motor Co Ltd 車両用状態推定装置、車両用状態推定方法、車両用懸架制御装置および自動車

Also Published As

Publication number Publication date
CN117716302A (zh) 2024-03-15
EP4381353A1 (en) 2024-06-12
JP2024524771A (ja) 2024-07-05
US20230038215A1 (en) 2023-02-09
US11977374B2 (en) 2024-05-07

Similar Documents

Publication Publication Date Title
JP7297155B2 (ja) マシンの動作を制御するためのシステムおよびコンピュータ実施方法
CN113874865B (zh) 确定技术系统的调节策略的模型参数的方法和装置
JP7357813B2 (ja) データ駆動型モデル適応を用いる制御のための装置および方法
WO2023013212A1 (en) System and method for calibrating feedback controllers
CN114761966A (zh) 用于以轨迹为中心的基于模型的强化学习的稳健优化的系统及方法
JP7693110B2 (ja) フィードバックコントローラを較正するためのシステム、方法、およびコンピュータ読取可能記憶媒体
Menner et al. Automated controller calibration by Kalman filtering
CN112051731B (zh) 用于确定针对技术系统的控制策略的方法和设备
US11790247B2 (en) Robust adaptive dynamic mode decomposition for modeling, prediction, and control of high dimensional physical systems
Schnelle et al. Adaptive nonlinear model predictive control design of a flexible-link manipulator with uncertain parameters
CN115167102A (zh) 一种基于并行优势动作评价的强化学习自适应pid控制方法
CN113939775B (zh) 用于确定针对技术系统的调节策略的方法和设备
CN119585682A (zh) 用于控制装置的操作的系统和方法
Naderolasli Constrained super-twisting sliding-mode controller for beam and ball nonlinear system stabilization with limited field-of-view constraints
JP2020003893A (ja) ロバスト調整装置及びモデル作成方法
Dias et al. Intelligent nonlinear adaptive flight control using incremental approximate dynamic programming
CN116149262B (zh) 一种伺服系统的跟踪控制方法及系统
CN119717495B (zh) 基于滑模控制器与pd控制器的控制方法、系统及介质
Zhang et al. USLC: Universal self‐learning control via physical performance policy‐optimization neural network
Liu et al. Self-attention network-based auto-tuning MPC for mobile robot systems
Bobál et al. Design And Simulation Of Self-Tuning Predictive Control Of Time-Delay Processes.
CN120921392A (zh) 面向工业机器人重复路径运行的速度规划优化方法及系统
Wang et al. Output fluctuation and overshoot restraining model-free adaptive control for a class of discrete-time nonlinear single-input single-output systems
Taghia et al. Design of Controllers
Tadeo et al. Implementation of predictive controllers as outer-loop controllers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20241017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20241029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250401

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: 20250507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250604

R150 Certificate of patent or registration of utility model

Ref document number: 7693110

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150