JP7475554B2 - 不確実システムの確率的モデル予測制御 - Google Patents

不確実システムの確率的モデル予測制御 Download PDF

Info

Publication number
JP7475554B2
JP7475554B2 JP2023547945A JP2023547945A JP7475554B2 JP 7475554 B2 JP7475554 B2 JP 7475554B2 JP 2023547945 A JP2023547945 A JP 2023547945A JP 2023547945 A JP2023547945 A JP 2023547945A JP 7475554 B2 JP7475554 B2 JP 7475554B2
Authority
JP
Japan
Prior art keywords
state
uncertainty
smpc
probability distribution
control
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
JP2023547945A
Other languages
English (en)
Other versions
JP2023546540A (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
Publication of JP2023546540A publication Critical patent/JP2023546540A/ja
Application granted granted Critical
Publication of JP7475554B2 publication Critical patent/JP7475554B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • 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
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42061Stochastic predictive controller spc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Feedback Control In General (AREA)

Description

本発明は、概して制御アプリケーションに関し、より具体的には、システムの少なくともパラメータの推定された不確実性に応じたシステムのモデル予測制御のための方法および装置に関する。
モデル予測制御(MPC:model predictive control)等の最適化ベースの制御および推定技術は、システムダイナミクスおよび制約を直接考慮に入れることができるモデルベースの設計フレームワークを可能にする。MPCは、多くの用途において、さまざまな複雑さを持つ動的システムを制御するために使用され、これらのシステムは、一組の非線形微分方程式によって、すなわち、常微分方程式(ODE:ordinary differential equation)、微分代数方程式(DAE:differential-algebraic equation)、または偏微分方程式(PDE:partial differential equation)のシステムによって記述される。そのようなシステムの例は、生産ライン、自動車のエンジン、ロボット、数値制御機械加工、衛星、および発電機を含む。
MPCは、システムのモデルのリアルタイム有限ホライズン最適化に基づく。MPCは、将来のイベントを予測し適切な制御アクションを行う機能を有する。これは、制約のある将来の有限時間ホライズンにわたってシステムの動作を最適化し現在の時間ステップにわたる制御のみを実施することによって実現される。
MPCは、制御変数の変化によって引き起こされる、モデル化されたシステムの状態変数の変化を、予測することができる。状態変数はシステムの状態を規定する、すなわち、被制御システムの状態は、任意の所与の時間におけるシステムの全体的な状態を表すことができる制御システムの状態空間表現における状態変数の最小セットである。たとえば、被制御システムが自動運転車両である場合、状態変数は、車両の位置、速度、および進行方向を含み得る。MPCは、システムのモデル、現在のシステム測定値および/または状態推定、車両の現在の状態、ならびに状態および制御制約を用いることにより、車両の状態の将来の変化を計算する。これらの変化は、制御変数および状態変数の双方に対する制約に対し、状態を目標の近くで保持するために計算される。MPCは、典型的に、被制御システムのアクチュエータによって実現されることになる各制御変数の第1の変化のみを送出し、次の変化が必要になったときに計算を繰り返す。
制御対象の多くのシステムは、部分的に未知である、または少なくとも不確実である。たとえば、車両を制御する場合、タイヤと道路との間の最大摩擦は正確にはわかっておらず、さらに、車両の状態たとえば車両の速度に対する摩擦の依存性もわかっていない。典型的に、そのような不確実性は、MPCが制御するモデルについてより適切な知識をMPCに与えるために、MPCと同時に推定される。MPCはフィードバックによる固有のロバスト性を示すが、そのようなコントローラは不確実性を直接考慮に入れないので、結果として、モデルの不確実性または外部外乱が存在する状態で、安全性を重視する制約の充足を保証することはできない。1つの代替アプローチはロバストなMPCであり、これは、有界範囲の不確実性が存在する最悪の場合のシナリオの下での制御ポリシーの最適化に依拠する。しかしながら、最悪の場合のシナリオが生じる確率は極端に低いので、ロバストなMPCは保守的な制御性能につながる可能性がある。
別のタイプのMPCは、確率的MPC(SMPC:stochastic model predictive control)であり、この場合、システムの不確実性は、分布を有するようにモデル化され、たとえば、分布は、平均(中心)および共分散(不確実性)を有するガウス分布であってもよい。SMPCは、ロバストなMPCの保守性を、不確実性の確率記述を最適制御問題(OCP:optimal control problem)の定式化に直接組み込むことによって低減することを意図している。いくつかの実装形態において、SMPCは、ある確率で制約が充足されることを必要とする、すなわち、指定されるがゼロではない制約違反の確率を許容するいわゆる機会制約を定式化することにより、ある確率で制約が充足されることを必要とする。加えて、SMPCは、プラントの実行可能領域の境界の近くで閉ループ動作の高い性能が実現される設定において、好都合である。一般的なケースにおいて、機会制約は、計算処理が難しく、典型的には近似定式化を必要とする。
多くのシステムが不確実なパラメータまたは構成要素を有することに加えて、そのような不確実性は時間とともに変化することが多い。たとえば、車両のタイヤ摩擦の場合、この摩擦は、道路が濡れているか乾燥しているかによって、または雪で固められているか氷の破片を有しているかによって、変化する。時間とともに変化する不確実性の場合、不確実性の推定を、オンラインで、すなわち再帰的に、更新する必要がある。SMPCの場合、推定することは、不確実性の確率分布を求めることに関係がある。
しかしながら、SMPCは、不確実性が、オフラインで、すなわちコントローラの実行前に、予め定められていると仮定する。多くの場合、そのような仮定は過度に制限的であり、多くの用途において、不確実性は時間とともに変化し、したがってSMPCの実行前にオフラインで予め定めることはできない。
したがって、システムのリアルタイムの制御中、外部で求められた不確実性分布をSMPCソルバ(solver)に含める必要がある。
いくつかの実施形態の目的は、不確実性の下でシステムを制御するための確率的モデル予測コントローラ(SMPC:stochastic model predictive controller)を提供することであり、不確実性は、たとえば、システムのパラメータの不確実性、または、たとえば不確実性の挙動について事前知識がないことが原因で先験的にパラメータ化できない一般的な不確実性である。いくつかの実施形態の別の目的は、システムの不確実性を再帰的に、すなわちオンラインで推定する推定器と同時に動作するそのようなコントローラを提供することである。いくつかの実施形態の別の目的は、不確実性が時間とともに変化しシステムの状態に依存する場合にそのようなコントローラを提供することである。本明細書で使用されるシステムは、何らかのタスクを達成するために制御することができる制約を有する任意の機械的システムであってもよく、たとえば、障害物を回避する車両であってもよく、この場合不確実性が表面であり状態が速度を含み、または、搭載動作を実行するロボットであってもよく、この場合状態が関節角度を含み不確実性がロボットアームの柔軟性であり、または部屋の温度を制御する空気調和機システムであってもよい。たとえば、制約は、車両が障害物を回避しながら道路から出ることを回避すること、ロボットが時間制限の下で搭載作業を実行すること、または空気調和機システムが所定のエネルギー効率制限内に留まること、の可能性がある。
いくつかの実施形態は、SMPCはオフラインで予め定められている不確実性を仮定するが、実際の用途における多くの不確実性は、時間とともに変化するだけでなく、制御入力およびそのような制御入力に対するシステム応答に依存するので、オフラインで求めることができない、という認識に基づいている。そのため、SMPCにおいて不確実性を予測するのに使用される、SMPCに入力できる分布の不確実性を、推定器が求める必要がある。したがって、いくつかの実施形態の目的は、外部で求められた不確実性分布をSMPCに含めることである。
いくつかの実施形態は、不確実性の確率分布を2種類に、すなわち状態非依存確率分布と状態依存分布に分類できる、という認識に基づいている。状態非依存分布は、求められると、システムの状態を知らずに表すことができる、不確実性の確率分布である。たとえば、車両の質量は、車両の動きに依存しないので、状態に依存しない不確実性である。状態依存分布は、システムの状態の関数として求められる不確実性の確率分布である。たとえば、起こり得るタイヤと道路との間の摩擦は、車両の状態の一部を構成する車両の加速度および速度に依存する。
一実施形態は、システムの制御モデル、すなわちシステムに対する制御コマンドを決定するために使用されるシステムのモデルを、不確実性に依存しない部分と不確実性に依存する部分とを含むように分解することができると認識する。いくつかの実施形態は、状態非依存不確実性を、結果としてその不確実性確率分布を、不確実性に依存する制御モデルの部分への乗数として、SMPCに入力することができると理解する。不確実性は、乗数として入力することができるので、線形性を維持する、すなわちSMPCにおける予測ホライゾン内の不確実性の伝搬は修正する必要がない、すなわちさまざまな不確実性伝搬技術を修正なしで使用することができる。
線形性は状態非依存不確実性に対しては維持されるが、一実施形態は、そのような線形性の維持を状態依存不確実性に対して使用することはできない、という事実に基づいている。状態依存不確実性したがって確率分布のため、不確実性の状態依存分布は、SMPC予測ホライズン内の各時間ステップにおいて修正する必要がある。さらに、状態依存不確実性は、非線形なので、制御モデルの少なくとも一部に対する乗数として抽出することはできない。
いくつかの実施形態は、制御モデルと同様に、状態依存確率分布を、状態依存部分と状態非依存部分とに区切ることができる、という認識に基づいている。状態依存部分は、元のSMPC定式化に含めることができるが、状態非依存部分は、オンラインで推定され、状態非依存確率分布を含める方法と同様に、SMPCに追加される。このようにして、状態依存不確実性をオンラインで求めてSMPCのフレームワーク内で使用することができる。
いくつかの実装形態において、状態依存不確実性の確率分布は、ガウス過程とみなすことができる、すなわち、連続ドメインたとえば空間の関数に対する分布であり、このガウス過程のサンプルは連続不確実性関数である。不確実性の分布をガウス過程として表すことにより、不確実性の推定の精度を高めることができる。しかしながら、ガウス過程の原理に従って不確実性関数を推定することは、特に計算が高速である再帰的実装が必要とされるオンライン設定において、計算が困難なタスクである。
いくつかの実施形態は、ガウス過程の推定を単純化して不確実性関数および関連付けられる不確実性の確率分布を求める方法の実現に基づく。具体的には、いくつかの実施形態において、不確実性は、基底関数の重み付けされた組み合わせとみなされ、不確実性のガウス過程は、基底関数の重みのガウス分布によって捕捉される。各基底関数の重みがガウス分布としてモデル化される場合、基底関数の重み付けされた組み合わせは、ガウス過程としてモデル化された不確実性として解釈されることを示すことができる。言い換えると、ガウス過程を更新するために、いくつかの実施形態は、重みのこれらのガウス分布を更新するだけでよい。実際、不確実性関数を基底関数の重み付けされた組み合わせとみなすことで、確率的な方法で不確実性を推定するための計算要件が減じられる。
他の実施形態において、制御モデルの部分、すなわち不確実性を乗じる、制御に使用されるシステムのモデルは、非線形関数である。別の実施形態において、状態依存不確実性は、重み付けされた基底関数の拡張によって捕捉され、この場合、基底関数はシステムの状態の予め定められた非線形関数であり、重みはオンラインですなわち再帰的に求められる。いくつかの実施形態において、制御モデルの非線形関数は、基底関数の組み合わせを含む、すなわち、SMPCにおいて修正なしで使用することができる。別の実施形態において、基底関数の重みに、システムのモデルの非線形関数を乗じる、すなわち、重みは、不確実性を捕捉し、状態に依存せず、したがって乗数において与えることができる。
いくつかの実施形態は、第1に、不確実性の可能な関数に対する確率分布を求め、第2に、確率分布から特定の関数を求める。このようにすることで、確実に、求めた不確実性が、利用可能なデータに由来する不確実性に準拠し、上記確率分布から求めた特定の関数の不確実性を定量化することができる。このことは、たとえば車両制御において望ましくない挙動のリスクを最小限に抑えるために車両コントローラが状態の特定の範囲について摩擦の大きな不確実性を活用することができる場合に、有利になる可能性がある。
いくつかの実施形態は、離散時間インスタンスにおいて、求めた確率分布から抽出された共分散を伝搬するSMPCに基づく。他の実施形態において、上記確率分布から求めた特定の関数は、確率分布の平均であり、これは、システムの状態をSMPC制御ホライズンにわたって前方に伝搬させるために使用される。
いくつかの実施形態は、予測された状態値の不確実性の前方伝搬において、フィードバック制御アクションを考慮する必要がある、という認識に基づいている。いくつかの実施形態は、アフィンフィードバックゲインの時間不変または時変シーケンスを使用して非線形システムダイナミクスを事前に安定化させ、結果として、将来の不確実性に対するフィードバック制御アクションの影響を直接考慮する共分散伝搬方程式が得られる。たとえば、基準定常状態および入力値における線形化されたシステムダイナミクスのための無限ホライズン線形二次レギュレータを、確率的非線形最適制御問題(OCP)定式化においてシステムダイナミクスを事前に安定化させるために使用することができる。いくつかの実施形態において、不確実性は、システムの状態およびフィードバック制御アクションの双方に依存する。結果として、状態および制御アクションは、基底関数に、すなわち不確実性の、状態および制御依存部分に挿入される。このようにすることで、基底関数の重みは、状態および制御に依存しない状態で確実に維持される。
いくつかの実施形態において、SMPCは、システムの制御モデルを記述する非線形微分方程式の離散化と、非線形システムダイナミクスの不確実性の離散時間伝搬とに基づく、確率機会制約(probabilistic chance constraint)を含む。確率機会制約の各々は、対応する不等式制約に違反する確率が、ある確率しきい値を下回ることを保証することを目的とする。
いくつかの実施形態は、その特定の時間ステップにおける、バックオフ係数値と、制約ヤコビアン行列と、予測された状態値の共分散行列とに依存する項による、不等式制約の各々の強化に基づいた、確率機会制約の定式化を使用する。本発明のいくつかの実施形態は、共分散行列を、近似線形化ベースの共分散伝搬を使用して、制御ホライズン内の各時間ステップにおける状態値に対し、効率良く計算できるという認識に基づいており、この共分散伝搬は不確実性の共分散を含む。共分散方程式は、連続時間非線形システムダイナミクスについての不確実性の線形化ベースの伝搬の離散化に、基づき得る。これに代えて、離散時間共分散伝搬を、非線形動的方程式の離散化されたセットの線形化に基づいて、直接行ってもよい。
いくつかの実施形態は、一組の粒子を維持する粒子フィルタを使用し、各粒子は、システムの状態の推定、不確実性の確率分布関数の推定、および粒子の確率を示す重みを含む。
他の実施形態は、各粒子におけるシステムの状態および各粒子の不確実性の確率分布関数を更新して、測定に適合させ、システムのモーションモデルおよび測定モデルに従って入力を制御することが可能である、という認識に基づいている。
一実施形態において、不確実性の確率分布関数は、各粒子における不確実性の確率分布関数の重み付けされた組み合わせとして求められる。
したがって、一実施形態は、少なくとも1つのプロセッサと、命令が格納されたメモリとを備える、システムを制御するための確率的モデル予測コントローラ(SMPC)を開示し、上記命令は、少なくとも1つのプロセッサによって実行されると、SMPCに、各制御ステップにおいて、システムの状態の、前の状態から現在の状態への遷移を示す、システムの出力の測定値に基づいて、システムの現在の状態の推定と、システムのダイナミクスのパラメータの不確実性の確率分布の推定とを求めることと、推定したパラメータの不確実性の確率分布の一次および二次モーメントでパラメータの不確実性をモデル化するシステムのダイナミクスの関数を含むシステムの制御モデルを更新することと、現在の状態における更新したシステムの制御モデルを予測ホライズンにわたって最適化することにより、システムを制御するための制御入力を求めることと、システムの状態を変化させるために制御入力に基づいてシステムを制御することとを、実行させる。
別の実施形態は、システムを制御するための確率的モデル予測制御(SMPC)方法を開示し、方法は、この方法を実現する格納された命令と結合されたプロセッサを使用し、上記命令は、プロセッサによって実行されるとこの方法のステップを実行し、この方法のステップは、各制御ステップにおいて、システムの状態の、前の状態から現在の状態への遷移を示す、システムの出力の測定値に基づいて、システムの現在の状態の推定と、システムのダイナミクスのパラメータの不確実性の確率分布の推定とを求めるステップと、推定したパラメータの不確実性の確率分布の一次および二次モーメントでパラメータの不確実性をモデル化するシステムのダイナミクスの関数を含む、システムの制御モデルを更新するステップと、現在の状態における更新したシステムの制御モデルを予測ホライズンにわたって最適化することにより、システムを制御するための制御入力を求めるステップと、システムの状態を変化させるために制御入力に基づいてシステムを制御するステップとを含む。
いくつかの実施形態に係る、確率的モデル予測コントローラ(SMPC)に接続された不確実性を有するシステムの一例を示す図である。 状態推定器および不確実性推定器を介してSMPCに接続された、不確実性を有するシステムの一例を示す図である。 いくつかの実施形態に係る、不確実性の分類を説明する図を示す。 いくつかの原理に従うシステムの不確実性の確率分布の推定に基づいてSMPCで使用されるシステムのモデルを如何にして更新できるかを示す図である。 少なくとも1つのプロセッサによって実行されるシステムを制御するためのSMPCのフローチャートを示す図である。 状態非依存である制御モデルに対する乗数の必要性を説明する図を示す。 不確実性を状態依存部分と状態非依存部分とに分解することによって状態依存不確実性を如何にして説明するかを示す図である。 いくつかの実施形態に係る、システムの状態を使用して不確実性の確率分布を更新する方法の概略図を示す。 一実施形態に係る、不確実性の実現可能な空間を既定する確率分布関数を説明するグラフを示す図である。 いくつかの実施形態に係る、不確実性を推定するための方法のブロック図を示す。 いくつかの実施形態に係る、粒子の状態を更新するための方法のブロック図を示す。 いくつかの実施形態に係る、粒子の状態を更新するための別の方法のブロック図を示す。 粒子において更新された状態を生成する3回の反復の結果の簡略化された概略図を示す。 図2Dの第1の反復における5つの状態の可能な割り当てられた確率を示す図である。 一実施形態に係る、各粒子における不確実性の確率分布を更新するための方法のブロック図を示す。 一実施形態に係る、重み付けされた基底関数の使用を説明する図を示す。 基底関数の重みの影響を説明する図を示す。 一実施形態に係る、各粒子における不確実性の確率分布を更新するための方法の1回の反復のブロック図を示す。 一実施形態に係る、各粒子における基底関数の重み付けされた組み合わせの重みを更新するための方法のブロック図を示す。 一実施形態に係る、システムのモデルを更新するための方法のブロック図を示す。 いくつかの実施形態に係る、SMPCのブロック図を示す。 2レベル最適化手順の例示としての実装形態のブロック図を示す。 SMPCを実現するシステムおよび方法のブロック図を示す。 制約付き最適制御構造化非線形計画問題を解くSNMPCコントローラのブロック図を示す。 いくつかの実施形態に係る、1つまたは複数の制約を定式化するブロック図を示す。 離散時間非線形システムダイナミクスのセットについての線形化ベースの状態共分散伝搬を示すブロック図を示す。 不確実性の確率分布に応じて制約を適合させるためのいくつかの原理を説明する図を示し、不確実性は完全状態の少なくともサブセットに依存する。 不確実性の確率分布に応じて制約を適合させるためのいくつかの原理を説明する図を示し、不確実性は完全状態の少なくともサブセットに依存する。 不確実性の確率分布に応じて制約を適合させるためのいくつかの原理を説明する図を示し、不確実性は完全状態の少なくともサブセットに依存する。 いくつかの実施形態の原理を採用するSMPCを含む車両の概略図を示す。 いくつかの実施形態に係るSMPCと車両のコントローラとの間のやり取りの概略図を示す。 自動または半自動制御車両の概略図を示す。 SMPCによって制御される車両の概略図を示す。 滑りの値が変化するときに車両のタイヤの力がどのように変化するかを示す概略図である。 図9Aの2次元等価物を示し、力はホイールに対する垂直力で正規化されている。 いくつかの実施形態に係る、推定されたタイヤ摩擦関数による滑り値制約の適合化を説明する図を示す。 いくつかの実施形態に係る、推定されたタイヤ摩擦関数による滑り値制約の適合化を説明する図を示す。 簡略化された車両の前輪駆動シングルトラックモデルの概略図を示す。 一実施形態に係る、4つの車輪すべてをモデル化したダブルトラックモデルの概略図を示す。
図1Aは、いくつかの実施形態に係る、状態推定器131を介して確率的モデル予測コントローラ(SMPC)110に接続された、不確実性125を有する一例としてのシステム120を示す。SMPCは、動的モデル140、すなわちシステムの制御モデルに従ってプログラムされる。モデルは、現在および以前の入力111と以前の出力103との関数として、ある時間にわたるシステム120の状態および出力103の変化を表す方程式のセットであってもよい。モデルは、システムの物理的および動作上の制限を表す制約142を含み得る。動作中、コントローラは、システムの所望の挙動を示すコマンド101を受ける。コマンドは、たとえばモーションコマンドであってもよい。コマンド101を受けたことに応じて、コントローラは、不確実性125を有する実システム120に対する入力として機能する制御信号111を生成する。この入力に応じて、システムは、システムの出力103を更新する。システムの出力103の測定値および制御モデル140とは概ね異なる推定モデル150に基づいて、推定器131は、システムの推定状態および不確実性125を更新する(121)。システムのこれらの推定121は、コントローラ110に状態フィードバックを与える。
本明細書で言及されるシステム120は、電圧、圧力、力、トルク等の物理量に、場合によっては関連付けられる、何らかの操作入力信号111(入力)によって制御され、以前の状態から現在の状態へのシステムの状態の遷移を示す電流、流量、速度、位置等の物理量に、場合によっては関連付けられる、いくつかの制御された出力信号103(出力)を返す、任意の機械またはデバイスであってもよい。出力値は、部分的にシステムの以前の出力値に関連し、部分的に以前および現在の入力値に関連する。以前の入力および以前の出力に対する依存性は、システムの状態で符号化される。システムの動作、たとえば、システムの構成要素のモーションは、何らかの入力値の適用後にシステムによって生成される出力値のシーケンスを含み得る。
不確実性125は、システム120に作用する任意の外部外乱、力、またはトルクを含む、任意の時変不確実性、任意のモデル化されていないダイナミクス、または、不確実な摩擦係数、摩擦関数、物体の質量、システムの重心、もしくは実システム120の物理的挙動を記述する制御モデル方程式内の不確実な係数およびパラメータ等の、物理量における任意の不確実性である可能性がある。たとえば、いくつかの実装形態において、SMPC110は、コントローラの計算の複雑さを低減するために、または物理的挙動の一部があまりにも複雑でそのために第1の原理によってモデル化するのが困難または不可能であることが理由で、単純化された制御モデル140を使用し、その結果、実システム内の大量の物理的挙動がモデル化されていない状態に留まる。そのような単純化されたモデル化は、不確実性125の原因となるまたは不確実性125に寄与する可能性がある。なお、時間非依存不確実性は、状態およびパラメータ推定器131の一部として、オンラインまたはオフラインのいずれかで推定または学習することができる。
さまざまな実施形態において、推定器131は、リアルタイムで、すなわちシステム120の制御中に、不確実性125および/または推定された不確実性の信頼度を求めるオンライン推定器である。不確実性125は時間とともに変化し制御入力およびそのような制御入力に対するシステム応答に依存し得るので、いくつかの実施形態は、そのようにして、不確実性のオフライン推定の精度について不確実性125の推定の精度を高める。
制御モデル140は、システム120のダイナミクスを既定するダイナミックモデルを含み得る。システム120の制御モデル140は、現在の入力および以前の入力と以前の出力との関数として、システム出力が時間とともにどのように変化するかを記述する、数学的方程式のセットを含み得る。システムの状態は、システムのモデルおよび将来の入力とともに、システムの将来のモーションを一意に既定することができる、一般的に時間とともに変化する任意の情報のセット、例として現在の入力および出力ならびに以前の入力および出力の適切なサブセットである。実システム120は、出力、入力、および場合によってはシステム状態が動作することが可能な範囲を制限する物理的制限および仕様制約142を受ける可能性がある。さまざまな実施形態において、システムの制御モデルは、不確実性125を伴うパラメータを有するシステムのダイナミクスの関数を含む。このようにして、システム120に対して作用する不確実性を、モデル140によって捕捉することができる。不確実性を伴うパラメータの例は、車両のタイヤの剛性の状態、車両のタイヤのピーク摩擦、摩擦挙動を車両操縦挙動の関数として捕捉する摩擦関数、車両の質量、車両の慣性を含む。
コントローラ110は、固定または可変制御周期サンプリング間隔で、システムの推定状態121および所望のモーションコマンド101を受信し、この情報を使用して、システムを動作させるための入力、たとえば制御信号111を決定する、ハードウェアで実現することができる、または、プロセッサ、たとえばマイクロプロセッサで実行されるソフトウェアプログラムとして実現することができる。
推定器131は、固定または可変制御周期サンプリング間隔でシステムの出力103を受信し、新たなおよび以前の出力測定値を使用して、システム120の推定状態および不確実性121を求める、ハードウェアで実現することができる、または、コントローラ110と同じまたは異なるプロセッサのいずれかであるプロセッサで実行されるソフトウェアプログラムとして実現することができる。
図1Bは、いくつかの実施形態に係る、状態推定器131および不確実性推定器132を介してSMPC110に接続された、不確実性125を有する一例としてのシステム120を示す。いくつかの実装形態において、SMPCは、不確実性を有するシステム120の制御モデル140に従ってプログラムされる。制御モデルは、不確実性125とシステムの挙動に対するその関係とをモデル化するための不確実性モデル141を含む。不確実性モデル141は、不確実性と、システムの動的挙動を記述する制御モデル方程式との間の線形関係および/または非線形関係のモデルを含む。加えて、不確実性モデルは、制御モデルにおける時変不確実性の各々についての確率分布のモデルを含む。
たとえば、いくつかの実施形態において、不確実性のパラメータは、タイヤ摩擦曲線の勾配であり、確率分布のモデルがこの勾配の可能な値の不確実性分布を既定する。いくつかの実施形態において、SMPC110の制御モデル140は、1つまたは複数の確率機会制約143を含み得る。本明細書で使用される機会制約は、制御モデルの異なる態様の不確実性を説明するシステムの物理的または幾何学的制限を既定する制約である。たとえば、ある機会制約は、道路上の車両の横方向変位に対する制約を既定することができる。異なる実施形態は、システムに対する物理的制限および仕様制約のうちのいずれか1つまたは複数を、1つまたは複数の確率機会制約143として定式化することができ、これは、対応する制約に違反する確率が決められた確率しきい値未満であることを強制することを意図する。
いくつかの実施形態において、不確実性推定器132は、推定122を、たとえば、不確実性の確率分布、または確率分布の一次および高次モーメントを提供する。本発明のいくつかの実施形態において、状態推定器131および不確実性推定器132は、1つの推定器という構成要素130内で一緒に実現され、これは、固定または可変制御周期サンプリング間隔で、システムの出力103を受信し、新たなおよび以前の出力測定値を使用して、システム120の推定状態121および推定不確実性122ならびに不確実性125を求める。いくつかの実施形態において、推定器130は、粒子フィルタ131と、状態および/または制御入力に依存する基底関数の加重和として不確実性をモデル化する不確実性推定器132とで構成され、重みは、不確実性推定器によって推定される。他の実施形態において、不確実性推定器132は、不確実性を未知の平均および共分散を用いてガウス分布としてモデル化し、この平均および共分散は状態非依存である。いくつかの実装形態において、基底関数の重みは、未知の平均および分散を用いてガウス分布としてモデル化される、すなわち、重みは、ガウス分布としてすなわち状態非依存としてモデル化される不確実性と同様に扱うことができる。
図1Cは、いくつかの実施形態に係る不確実性の分類を説明する図を示す。いくつかの実施形態は、不確実性を、したがって不確実性の確率分布も、状態非依存確率分布115cと状態依存分布125cという2つの種類に分類することができる、という認識に基づいている。状態非依存分布115cは、求められると、システムの状態を知らずに表すことができる、不確実性の確率分布である。たとえば、車両の質量は、車両の動きに依存しないので、状態に依存しない不確実性である。状態依存分布125cは、システムの状態の関数として求められる不確実性の確率分布である。たとえば、起こり得るタイヤと道路との間の摩擦120cは、車両の加速度および速度に依存する。
いくつかの実施形態は、システム120の制御モデル140、すなわちシステムに対する制御コマンド111を決定するために使用されるシステムのモデルが、不確実性に依存しない部分と不確実性に依存する部分とを含むように分解することができると認識する。いくつかの他の実施形態は、状態非依存不確実性を、結果としてその不確実性確率分布を、不確実性に依存する制御モデルの部分への乗数として、SMPCに入力することができると理解する。不確実性は、乗数として入力することができるので、線形性を維持し、すなわちSMPCにおける予測ホライゾン内の不確実性の伝搬は修正する必要がない、すなわち標準的な不確実性伝搬技術を修正なしで使用することができる。
図1Dは、いくつかの原理に従うシステムの不確実性の確率分布の推定に基づいてSMPCで使用されるシステムのモデルを如何にして更新できるかを示す。制御モデル110は、数学的方程式のセットによって記述され、このモデルは、少なくとも2つの成分に分解することができ、各成分は、一般的に時間ステップkにおける状態xおよび制御コマンドuの双方に依存する、システムの部分を記述する、場合によっては非線形関数である。各制御ステップにおいて、推定器130は、不確実性120dの確率分布を推定する。不確実性は、不確実性に依存するシステムのダイナミクスの関数110dへの乗数として制御モデルに入力することができる。
図1Eは、少なくとも1つのプロセッサによって実行されるシステムを制御するためのSMPCのフローチャートを示す。制御の各時間ステップにおいて、SMPC110は、たとえば、以前の状態から現在の状態へのシステムの状態の遷移を示すシステムの出力103の測定値に基づいて、システムの不確実性122および状態121の確率分布を推定する(110e)。SMPC110は、更新されたモデルに含まれる推定した不確実性でシステムの制御モデル140を更新し(120e)、SMPC110は、更新したモデル121eを使用し、予測ホライズンにわたって更新したシステムのモデルを最適化することにより、システムへの制御入力を求め(130e)、最後に、SMPCは、求めた制御入力111を使用して、制御入力に基づいてシステムを制御しシステムの状態を変更する。
さまざまな実施形態において、システムの制御モデル140は、パラメータの不確実性の推定された確率分布の一次および二次モーメントでパラメータの不確実性をモデル化するシステムのダイナミクスの関数を含む。たとえば、推定された、パラメータの不確実性の確率分布の、一次および二次モーメントは、システムのダイナミクスの関数の乗数として制御モデルに含まれ、制御モデルの更新は、乗数の更新を含む。このようにして、パラメータの不確実性を、予測ホライズンにわたる最適化の詳細について効率的に更新することができる。いくつかの実装形態において、そのような更新を、SMPCソルバを修正することもなく、効率的に導入することができる。
図1Fは、状態非依存である制御モデルに対する乗数の必要性、すなわち、不確実性を乗数として制御モデルに追加することによってSMPCの実装を変更する必要がないことを説明する図を示す。図1Fにおいて、推定器130から出力される不確実性122は、状態および/または制御に依存する。そのため、乗数として制御モデル140に入力することはできない、なぜなら、確率分布125cによって表される不確実性122は状態に依存するからである。すなわち、SMPC110で行われるどの最適化も、不確実性122の値に影響を及ぼし、不確実性122をSMPCソルバに含めることを必要とする。さらに、状態依存不確実性は、非線形なので、制御モデルの少なくとも一部に対する乗数として抽出することはできない。
いくつかの実施形態は、状態依存確率分布を、状態依存部分と状態非依存部分とに区切ることができる、という認識に基づいている。状態依存部分は、元のSMPC定式化に含めることができるが、状態非依存部分は、オンラインで推定され、状態非依存確率分布を含める方法と同様に、SMPCに追加される。
そのため、パラメータの不確実性の確率分布がシステムの状態に依存するある実施形態において、パラメータの不確実性の確率分布は、制御モデルにおいてシステムの状態の関数として表される状態依存部分と、システムの状態とは無関係に表される状態非依存部分とに区切られる。状態依存部分は、システムのダイナミクスの関数の内側に含まれ、状態非依存部分は、システムのダイナミクスの関数の外側で乗数に含まれる。たとえば、状態依存部分は関数110dの内側に含まれ、状態非依存部分は乗数120dの少なくとも一部として含まれる。
いくつかの実装形態において、状態依存不確実性の確率分布は、ガウス過程とみなすことができる、すなわち、連続ドメインたとえば空間の関数に対する分布であり、このガウス過程のサンプルは連続不確実性関数である。不確実性の分布をガウス過程として表すことにより、不確実性の推定の精度を高めることができる。しかしながら、ガウス過程の原理に従って不確実性関数を推定することは、特に計算が高速である再帰的実装が必要とされるオンライン設定において、計算が困難なタスクである。
いくつかの実施形態は、ガウス過程の推定を単純化して不確実性関数および関連付けられる不確実性の確率分布を求める方法の実現に基づく。具体的には、いくつかの実施形態において、不確実性は、基底関数の重み付けされた組み合わせとみなされ、不確実性のガウス過程は、基底関数の重みのガウス分布によって捕捉される。言い換えると、不確実性の確率分布を更新するために、いくつかの実施形態は、重みのこれらのガウス分布を更新するだけでよい。実際、不確実性関数を基底関数の重み付けされた組み合わせとみなすことで、確率的な方法で不確実性を推定するための計算要件が減じられる。
図1Gは、不確実性を状態依存部分と状態非依存部分とに分解することによって状態依存不確実性を如何にして説明するかを示す図である。状態依存部分は、事前に既定された決定論的な基底関数のセット110gによって捕捉される。基底関数の重み120gは、不確実性の分布を捕捉し、状態に依存しないため、ダイナミクスの非線形関数への乗数において提供することができる、すなわち、状態非依存不確実性と同様にSMPCに追加することができる。
そのため、いくつかの実施形態において、パラメータの不確実性の確率分布は、システムの状態に依存する基底関数の重み付けされた組み合わせとして表され、パラメータの不確実性の確率分布の状態依存部分は、システムの状態に対する依存性を捕捉する基底関数の組み合わせを含み、パラメータの不確実性の確率分布の状態非依存部分は、システムの状態に依存しない、パラメータの不確実性の推定された確率分布の一次および二次モーメントから導出された、基底関数の組み合わせの重みを含む。
たとえば、一実装形態において、パラメータの不確実性の確率分布は、基底関数の組み合わせの重みを、一次および二次モーメントとしてシステムの制御中にSMPCによって推定された未知の平均および共分散を用いてガウス分布としてモデル化することができる。
いくつかの実施形態は、不確実性の確率分布を求めることにより、システムの状態推定におけるモーションモデルと測定モデルとの間の差を調和させる現在の状態を求める確率を高める。不確実性の確率分布を求める際に、不確実性は直接測定することができずシステム状態を通じて間接的に観察することしかできないので、不確実性は、システム状態を不確実性に関連付けるシステムのモーションモデルを通じてシステム状態に依存する。測定値は、不確実性を直接含んでも含まなくてもよいが、ノイズを有するシステム状態を示すものである。そのため、モーションモデルを用いて判断された状態と測定モデルを用いて判断された状態とを比較することができ、その理由は、不確実性を含むモーションモデルを用いて判断した状態は、測定値と比較した場合の不確実性の確率分布の品質を示すからである。ノイズの存在により、個々の状態ではなく状態の軌道を比較することの方がより信頼できる。
しかしながら、リアルタイムの動作において、センサ測定値は、制御の各時間ステップごとに再帰的に収集される。そのため、状態の軌道の比較は、個々の状態の比較によって行うことができ、個々の状態の比較は、個々の状態の以前の比較において重み付ける成分を含む。そのような比較は、不確実性を示す比較の不確実性を減じる、なぜなら、比較は、サンプルごとに行われるのではなく、制御の連続する時間ステップの複数の状態を含むより長い時間スパンにわたって行われるからである。
図1Hは、いくつかの実施形態に係る、システムの状態を使用して不確実性の確率分布を更新する方法の概略図を示す。これらの実施形態は、制御の各時間ステップごとに、測定モデル130hに従う測定値120hと、不確実性のサンプルを含むモーションモデル111hに従う制御入力110hとを適合させるシステムの状態を求める。言い換えると、これらの実施形態は、両方のモデルに従って求めたシステムの状態を比較して不確実性の確率分布を更新することで、推定における差の誤差を減じる(140h)。たとえば、サンプリングされた不確実性を含むモーションモデルを使用して求めた状態と、測定モデルを使用して求めた状態とを比較することにより、不確実性の確率分布を更新することで、制御入力110hおよび測定値120hの双方に適合するように不確実性のサンプルを改善することが可能である。いくつかの実装形態において、そのような比較は、モーションモデルおよび測定モデルのうちの一方または組み合わせに作用するノイズおよびモデル誤差を考慮するように確率的に行われる。
図1Iは、一実施形態に係る、不確実性の実現可能な空間100iを既定する確率分布関数140iを説明するグラフを示す。確率分布140iの形状は、方法140eの反復ごとに更新される。たとえば、不確実性の分布が各値のガウス分布である場合、分布140iの形状は各値の「ガウスハット」形状であり、不確実性はガウス分布関数、すなわちガウス過程である。本明細書で使用される不確実性の値のサンプリングは、分布140iによって既定される確率で値を引き出すことである。たとえば、分布140iに従うと、サンプル120iが引き出されるまたはサンプリングされる確率は、サンプル150iの確率よりも高い。そのような表現は、不確実性の確率分布を反復的に更新し(160i)、次のステップで不確実性をサンプリングするための更新された実行可能な空間を定める、更新された分布を生成すること(145i)を可能にする。
いくつかの実施形態において、不確実性の確率分布の更新は、カルマンフィルタ型方法を使用して行われる。他の実施形態において、不確実性の確率分布の推定は、粒子フィルタを使用して行われる。他の実施形態は、他の非線形推定器を使用する。
図2Aは、いくつかの実施形態に係る、不確実性を推定するための方法110eのブロック図を示し、不確実性の確率分布の推定は、粒子フィルタを使用して行われる。この実施形態は、測定に応じて粒子フィルタ内の粒子のうちの少なくとも1つを更新することで、粒子を測定値に適合させる。この方法は、粒子内の不確実性の確率分布から不確実性をサンプリングするステップ250aで開始され、サンプリングされた不確実性255aを生成する。たとえば、一実装形態において、サンプルは、前の反復中に求めた分布の平均である。次に、サンプリングされた不確実性、システムのモーションのモデル245a、システムへの制御入力247aを使用して、この方法は、状態を更新し(260a)、更新された状態265aを生成する。更新された状態265a、測定のモデル266a、および制御の現在の時間ステップにおける測定、すなわち表示状態267aを使用して、方法は、状態と表示状態との間の誤差を低減するように粒子の重みを更新する(270a)。次に、方法は、不確実性の確率分布285aを更新する(280a)。
いくつかの実施形態において、システムのモーションモデルは、xk+1=f(x,u)+g(x,u)w(x,u)の形式のシステム状態の非線形関数であり、式中、xは状態、uは制御入力、f(x,u)+g(x,u)はモーションモデルの決定論的な既知の部分であり、w(x,u)は不確実性であり、一般的な場合、状態xおよび制御入力uに依存する。
一実施形態は、制御入力および測定値に対し、各粒子の不確実性のサンプルを生成し、不確実性の各サンプルは、不確実性というそれ自身の信念と以前の状態とを有する粒子に対応する。制御入力および測定値の時間ステップに対応する制御の各時間ステップにおいて、一実施形態は、不確実性から1つまたは複数をサンプリングする。すなわち、複数のサンプルが不確実性から引き出される。そのため、各制御入力は、わずかに異なる軌道に、すなわちわずかに異なる状態に至る。したがって、測定値から求めた表示状態に対する差は、異なるサンプリングされた不確実性に応じて異なる。不確実性の各サンプルは、制御入力と測定値との間の適合を確率的に評価するために使用される粒子を形成する。
図2Bは、いくつかの実施形態に係る、粒子の状態の更新260aのための方法のブロック図を示す。この方法は、状態を確率的に更新する(260a)。この方法は、サンプリングされた不確実性246bおよび制御入力247bをシステムのモーションのモデル245bに挿入し、前の状態のシステムにおけるモーションモデルを評価し(260b)、システムの更新された状態265bを生成する。いくつかの実施形態において、システムのモーションのモデルは制御モデル140であるが、他の実施形態において、システムのモーションのモデルは、制御モデルと比較して単純化されたモデルである。粒子の決定は、制御および測定の各ステップごとに行われ、それにより、システムの状態軌道を表す粒子の軌道が形成される。粒子は、不確実性の確率分布と、システムの状態と、システムの品質を示す重みとを含む。
粒子の状態の更新は、いくつかのやり方で行うことができる。粒子フィルタで使用されるとき、更新された状態は、測定の情報を組み込んだ不確実性の分布からのサンプリングを使用することができる、または、測定を組み込むことなく不確実性に関する情報のみに基づいて更新することができる。なぜなら、そのようなシナリオにおける情報は、各粒子ごとに不確実性の確率分布の更新を暗黙的に決定するからである。
図2Cは、いくつかの実施形態に係る、粒子の状態の更新260aのための別の方法のブロック図を示し、測定値は、各粒子の状態の更新に明示的に組み込まれる。この方法は、状態を確率的に更新する(260a)。この方法は、サンプリングされた不確実性246cおよび制御入力247cをシステムのモーションのモデル245cに挿入し、前の状態の値でモーションモデルを評価し(260c)、システムのモーションモデルから、更新された状態265cを生成する。次に、この方法は、モーションモデルから得た状態265cを測定モデル266cに挿入し、推定状態と状態を表示する測定値267cとの差を求める(270c)。最後に、この方法は、測定値と、モデルに挿入されたモーションモデルからの状態を有する測定モデルとの間の差275cに基づいて、状態265cを補正し(280c)、更新された状態285cを生成する。
図2Dは、一実施形態に係る、各反復ごとに5つの粒子が生成される場合の、粒子において更新された状態を生成する3回の反復の結果の簡略化された概略図を示す。初期状態210dは、時間211dにおいて、モーションのモデルと、システムへの入力と、その粒子の起こり得る不確実性の確率分布についてサンプリングされた不確実性とを使用して、前方に予測されて、次の5つの状態221d、222d、223d、224d、および225dが生成される。確率は、測定値226dおよび測定値226dのバイアス227dの関数として求められる。制御の各時間ステップにおいて、確率のアグリゲートを使用して、アグリゲートされた状態220dおよびパラメータ推定のアグリゲート、たとえばアグリゲートされたタイヤ摩擦関数を生成する。たとえば、一実施形態において、アグリゲートされたタイヤ摩擦関数は、各粒子におけるタイヤ摩擦関数の重み付けされた組み合わせである。別の実施形態において、アグリゲートされたタイヤ摩擦関数は、最も高い確率を有する粒子の関数である。
図2Eは、図2Dの第1の反復における5つの状態の可能な割り当てられた確率を示す。これらの確率22le、222e、223e、224e、および225eは、状態22le、222e、223e、224e、および225eを示すドットのサイズの選択に反映される。
Figure 0007475554000001
いくつかの実施形態において、各状態の重みを含む粒子状態から生成された状態のセットが使用され、この重みは状態と表示状態との間の誤差を反映し、それにより、各粒子の不確実性の確率分布を、状態と、モーションモデルで使用されるときに状態をもたらすモーションとの間の誤差を減少させることにより、更新する。そのような誤差は、不確実性における誤差に起因する誤差を反映し、不確実性の確率分布を更新するために使用することができ、なぜなら、不確実性の確率分布は、各粒子ごとの不確実性の確率分布の重み付けされた組み合わせとして求めることができるからである。これは、表示状態が状態を求める際に既に使用されており各状態の重みに影響を及ぼすので、可能である。
図2Fは、一実施形態に係る、各粒子における不確実性の確率分布を更新するための方法のブロック図を示す。この方法は、不確実性を有するモーションモデルによる更新された状態209fと、不確実性のないモーションモデルを使用する状態201fとの間の関係を求め(210f)、上記関係215fに基づいて不確実性の確率分布を更新し(220f)、それにより、システムの更新された状態と状態の測定との間の誤差を低減する。
いくつかの実施形態において、不確実性を有するモーションモデルで更新された状態209fと、不確実性なしのモーションモデルを使用する状態201fとの間の関係は、不確実性を有する状態と不確実性を有しない状態との間の区分である。他の実施形態において、不確実性を有するモーションモデルで更新された状態209fと、不確実性なしのモーションモデルを使用する更新された状態201fとの間の関係は、差である。
いくつかの実施形態において、不確実性の確率分布は、ガウス過程である、すなわち、連続ドメインたとえば空間の関数に対する分布であり、このガウス過程のサンプルは連続不確実性である。不確実性の確率分布をガウス過程として表すことにより、不確実性の推定の精度を高めることができる。しかしながら、ガウス過程の原理に従って不確実性を推定することは、計算が困難なタスクである。
いくつかの実施形態は、ガウス過程の推定を単純化して不確実性を求める方式の実現に基づく。具体的には、いくつかの実施形態において、不確実性は、有限数の基底関数の重み付けされた組み合わせとみなされ、各基底関数は、状態の既知の関数である、状態および/または制御入力の関数であり、不確実性のガウス過程は、基底関数の重みのガウス分布によって捕捉される。言い換えると、ガウス過程を更新するために、いくつかの実施形態は、重みのこれらのガウス分布を更新するだけでよく、不確実性をサンプリングするために、いくつかの実施形態は、ガウス分布からN個のスカラー重みをサンプリングするだけでよい。実際、不確実性を基底関数の重み付けされた組み合わせとみなすことで、確率的な方法で不確実性を推定するための計算要件が大幅に減じられる。
図3Aは、一実施形態に係る、重み付けされた基底関数の使用を説明する図を示す。この図では、3つの基底関数310a、320a、および330aがある。また、不確実性340aも示されている。基底関数を組み合わせ、各基底関数に対して異なる重みを使用することにより、それらを組み合わせて不確実性を再現することができる。
図3Bは、いくつかの実施形態に係る、不確実性340bのサブセットに対する基底関数の重みの影響を説明する図を示す。基底関数320bおよび330bの重みを非常に小さくし、310bの重みを大きくすることにより、基底関数の拡張は、1つの基底関数だけで不確実性340bを再現することができる。図3Bは、簡略化された概略図であるが、基底関数の原理およびそれが有し得る計算効率を示す。
Figure 0007475554000002
Figure 0007475554000003
Figure 0007475554000004
図3Cは、一実施形態に係る、各粒子における不確実性の確率分布の更新280aのための方法の1回の反復のブロック図を示す。この方法は、粒子における更新された状態310cを使用して基底関数の重み付けされた組み合わせの重みを更新し(310c)、更新された重みで重み付けされた基底関数の重み付けされた組み合わせに従って不確実性の確率分布を更新する(320c)。
図3Dは、一実施形態に係る、各粒子における基底関数の重み付けされた組み合わせの重みを更新するための方法のブロック図を示す。この方法は、入力として状態309cを有するメモリに格納されたスタティック関数310dと、システムのモーションのモデル308dと、行列状に格納された数値315dのセットに入力をマッピングする基底関数307dとを使用する。次に、この方法は、求めた数値315dと、数値315dを重みの分布にマッピングする確率関数320dとを使用する。更新された重みは、重みの分布に基づいてサンプリングすることができる、または、重みの分布を後続の計算において直接使用することができる。
Figure 0007475554000005
一実施形態において、更新は、各粒子に対して使用される、すなわち、各粒子は、その不確実性の確率分布を決定する。次に、不確実性の確率分布を、各粒子の不確実性の確率分布の重み付けされた組み合わせとして求めることができる。このようにすることで、不確実性がガウス過程としてモデル化されても、いくつかの粒子を使用することで、ガウス過程の仮定が非現実的となる状況を確実に抑制することができる。
図4Aは、一実施形態に係る、システムのモデルを更新するための方法120eのブロック図を示す。この方法は、現在の推定状態121を使用し、現在の状態121を不確実性のないモデルに挿入することにより、公称制御モデル411aを求める(410a)。次に、この方法は、公称モデル411aを、不確実性非依存部分と不確実性依存部分とに分解して(420a)分解されたモデル421aを生成する。この方法は、分解されたモデル421aおよび推定された不確実性122を使用し、不確実性依存のダイナミクスの非線形関数に不確実性を乗じて(430a)制御モデル431aを生成し、このモデルをSMPCに挿入する(440a)。
図4Bは、いくつかの実施形態に係る、SMPC110のブロック図を示し、これは、推定された不確実性122を考慮して、システムの推定状態121および出力103がコマンド101に従うように、システムを作動させる。SMPC110はコンピュータを含み、このコンピュータは、たとえば、制御モデル140、不確実性モデル141、制約142、不確実性125を有する実システム120の動作に対する確率機会制約143、および推定モデル144を格納するためのメモリ402に接続された単一の中央処理装置(CPU)または複数のCPUプロセッサ401の形態である。
図4Cは、制御コマンドを生成するための不確実性を表す確率機会制約を含む、SMPC110の各制御ステップにおいて、不等式制約付き非線形動的最適化問題を解くための、2レベル最適化手順の例示としての実装形態のブロック図を示す。2レベル最適化手順は、状態および制御変数465cの固定値に対する予測ホライズン内の確率機会制約の不確実性の確率分布から抽出された共分散行列の伝搬450cと、状態共分散行列455cの固定値に対する予測ホライズン内の状態および制御変数の最適化460cとを、交互に行う。2レベル最適化手順の終了条件が満たされると、制御信号111が計算される。
本発明のいくつかの実施形態において、2レベル最適化手順110は、3つの主要な計算ステップからなる。第1のステップは、線形二次目的関数を準備し、ヤコビアン行列を計算して線形化された等式および不等式制約を準備し、予測された状態値の不確実性を表す共分散行列の軌道を、状態および制御値の現在の軌道465cについての非線形共分散伝搬方程式を評価することにより、制御ホライズンにわたって伝搬させる(450c)。第2のステップは、機会制約の各々を近似する1つまたは複数の強化不等式制約で、結果として得られたブロック構造化QP下位問題を解くことからなる(470c)。第3の最終ステップは、最適状態および制御値の現在の軌道に対するニュートン型更新を含む(475c)。
いくつかの実施形態において、SMPC内の不正確なヤコビアン情報を訂正するために、随伴勾配計算が使用され、結果として得られた2レベル最適化手順は、3つの主要な計算ステップからなる。第1のステップは、線形二次目的関数を準備し、状態変数および制御変数に関してヤコビアン行列を計算して線形化された等式および不等式制約を準備し、随伴ベースの勾配評価を計算し、予測された状態および制御値465cの現在の軌道に対して共分散行列の軌道を伝搬すること(450c)により、目的および制約関数の各々から共分散行列を数値的に排除する。第2のステップは、機会制約の各々を近似する1つまたは複数の強化不等式制約で、結果として得られたブロック構造化QP下位問題を解くことからなる(470c)。第3の最終ステップは、最適状態および制御値の軌道に対するニュートン型更新、ならびにラグランジュ乗数の対応する更新の拡張を含む(475c)。
図5Aは、本発明のいくつかの実施形態に係る、挿入されたモデル509aおよび制御コマンド101を考慮して制御信号111を求める(130e)SMPC110を実現するシステムおよび方法のブロック図を示す。具体的には、SMPCは、各制御時間ステップにおいて制約付き最適化問題を解くこと(550a)により、制御解を計算する、たとえばシステムの予測時間ホライズンにわたる将来の最適なまたはほぼ最適な制御入力のシーケンスを含む解ベクトル565aを計算する(560a)。この最適化問題550aにおける目的関数、等式、および不等式制約のデータ545aは、システムの現在の状態推定121、推定不確実性122、および制御コマンド101から求められた制御モデルおよびシステム制約540aに依存する。
本発明の実施形態は、連続時間SMPC問題を不等式制約付き非線形動的最適化問題として定式化するために、直接最適制御方法を使用する。本発明のいくつかの実施形態は、ニュートン型方法に基づく反復手順と、最適化問題に対する実現可能性および最適性条件の連続線形化とを使用して、不等式制約付き最適化問題550aを正確にまたは近似的に解くために、導関数ベースの最適化アルゴリズムを使用する。そのようなニュートン型の最適化アルゴリズムの例は、内点法(IPM:interior point method)および逐次二次計画法(SQP:sequential quadratic programming)を含む。本発明のいくつかの実施形態は、不等式制約付き最適化問題550aが、最適制御構造化最適化問題(OCP:optimal control structured optimization problem)の形態を有し、導関数ベースの最適化アルゴリズムの実現を利用する構造を、各制御時間ステップにおいて解ベクトル565aを計算するために使用できる、という認識に基づいている。
本発明のいくつかの実施形態において、不等式制約付き最適化問題550aの解は、現在の制御時間ステップにおいて不等式制約付き最適化問題550aを解く計算労力を低減するために、解の推測としてメモリから読み出すことができる、以前の制御時間ステップからの予測時間ホライズンにわたる正確なまたは近似状態および/または制御値510aを使用する。以前の制御時間ステップで解の情報から解の推測510aを計算するというこの概念は、最適化アルゴリズムのウォームスタートまたはホットスタートと呼ばれ、本発明のいくつかの実施形態においてSNMPCの必要な計算労力を低減することができる。同様に、対応する解ベクトル565aを使用して、次の制御時間ステップ560aのための正確なまたは近似状態および/または制御値のシーケンスを更新し格納することができる。
Figure 0007475554000006
Figure 0007475554000007
Figure 0007475554000008
不等式制約の各々に対する個々の強化に基づく、確率機会制約555aの近似定式化を使用し、得られた不等式制約付き非線形動的最適化問題を、最適性および実行可能性条件の連続線形化に基づいたニュートン型最適化アルゴリズムを用いて、解くことができる。そのようなニュートン型最適化アルゴリズムの例は、内点法(IPM)および逐次二次計画法(SQP)を含む。本発明のいくつかの実施形態は、SQPアルゴリズムが、SQP最適化アルゴリズムの各反復において、確率的非線形OCPの二次計画(QP)近似を、不等式制約の各々および強化された確率機会制約の各々について、目的関数の線形-二次近似、離散化されたシステムダイナミクスについての線形化ベースの近似、離散時間共分散伝搬方程式、および線形化ベースの近似に基づいて解く、という認識に基づいている。
本発明のいくつかの実施形態において、目的関数551aにおけるステージおよび/またはターミナルコストは、凸関数および/または非凸関数のいずれかを含む、任意の線形、線形-二次および/または非線形平滑関数によって定義することができる。最適制御問題の目的関数551aは、予測時間ホライズンの各時点に対応するコスト項を含み得る。いくつかの実施形態において、目的関数は、SMPC110におけるコスト関数の基準追跡型定式化をもたらす、予測時間ホライズンの各時点における基準出力値のシーケンスからのシステムの何らかの出力関数の偏差の(非線形)最小二乗型ペナライザーションを含む。
Figure 0007475554000009
Figure 0007475554000010
Figure 0007475554000011
Figure 0007475554000012
Figure 0007475554000013
Figure 0007475554000014
図7Aは、不確実性の確率分布に応じて制約を適合させるためのいくつかの原理を説明する図を示し、不確実性は完全状態の少なくともサブセットに依存する。推定された不確実性730aの確率分布は真の不確実性710aを含む。しかしながら、状態値730aを超えると不確実性は非常に大きいので、これらの状態値を超えてシステムを制御することは、システムの安全性に影響を与える可能性がある。そのため、確率分布730aの大きな範囲に応じて、状態を730aに制限する。
図7Bは、推定器が元の制約730aに近い値について不確実性を推定することができるように、かつ不確実性の確率分布の範囲が730a付近の状態値について縮小するように、システムが制御されている状況を示す。一実施形態において、730aの近傍の状態値に対する不確実性の確率分布の範囲の縮小に応じて、状態制約を730bに増加させる。最後に、将来のある時間ステップにおいて、同じ手順が制約730bについて繰り返され、その結果、図7Cにおいて制約730bを730cまで増加させることができる。同様に、一実施形態において、制約を小さくすることができる。たとえば、ある期間状態値がアクセスされないようにシステムが制御される場合、不確実性の確率分布の範囲が増大し、それを反映するように制約を同様に減じることができる。
図8Aは、いくつかの実施形態の原理を採用するSMPC802を含む車両801の概略図を示す。本明細書で使用される車両801は、乗用車、バス、またはローバー等の任意の種類の車輪自動車であればよい。また、車両801は、自動運転または半自動運転車両であってもよい。たとえば、いくつかの実施形態は車両801のモーションを制御する。モーションの例は、車両801のステアリングシステム803によって制御される車両の横方向モーションを含む。一実施形態において、ステアリングシステム803はコントローラ802によって制御される。これに加えてまたはこれに代えて、ステアリングシステム803は車両801の運転者によって制御されてもよい。
この車両はまた、コントローラ802によってまたは車両801の他の構成要素によって制御可能なエンジン806を含み得る。この車両はまた、周囲環境を検知する1つ以上のセンサ804を含み得る。センサ804の例は、測距装置、レーダー、ライダー、およびカメラを含む。車両801はまた、その現在のモーション量および内部ステータスを検知する1つ以上のセンサ805を含み得る。センサ805の例は、全地球測位システム(GPS)、加速度計、慣性計測装置、ジャイロスコープ、シャフト回転センサ、トルクセンサ、撓みセンサ、圧力センサ、および流量センサを含み得る。センサは情報をコントローラ802に提供する。この車両は、有線または無線通信チャネルを介したコントローラ802の通信機能を可能にするトランシーバ806を備えていてもよい。
図8Bは、いくつかの実施形態に係るSMPC802と車両801のコントローラ820との間のやり取りの概略図を示す。たとえば、いくつかの実施形態において、車両801のコントローラ820は、車両820の回転および加速を制御するステアリングコントローラ825およびブレーキ/スロットルコントローラ830である。このような場合、確率的予測コントローラ802は、コントローラ825および830に対し制御入力を出力して車両の状態を制御する。コントローラ820はまた、確率的予測コントローラ802の制御入力をさらに処理する、ハイレベルコントローラ、たとえば車線維持支援コントローラ835を含み得る。いずれの場合も、コントローラ820は、車両のモーションを制御するために、SMPC802の出力を用いて車両のステアリングホイールおよび/またはブレーキ等の車両の少なくとも1つのアクチュエータを制御する。
図8Cは、自動または半自動制御車両850の概略図を示し、本発明の実施形態を使用することにより、この車両に対し、動的に実現可能であり多くの場合最適である軌道855を計算することができる。生成された軌道は、車両を特定の道路境界852の内部に留めることを意図しており、かつ、他の非制御車両を、すなわち制御車両850に対する障害物851を回避することを意図している。いくつかの実施形態において、障害物851の各々は、制約付き最適制御問題の時間または空間式における1つまたは複数の不等式制約によって表すことができる。たとえば、確率的モデル予測コントローラを実現するように構成された実施形態に基づいて、自動または半自動制御車両850は、たとえば、左側もしくは右の別の車両を追い越す、またはその代わりに道路852の現在の車線内の別の車両の後方に留まる等の決断を、リアルタイムで行うことができる。本発明の実施形態は、車両850の現在の状態および予測された状態に関する不確実性、車両モデルのパラメータに関する不確実性、ならびに、たとえば自動または半自動制御車両850の位置から一定の距離以内にある障害物851を含む、環境の現在の状態および予測された状態に関する不確実性を、直接考慮する、SNMPCに基づく。
図8Dは、本発明の実施形態を使用することにより、上側の道路境界860および下側の道路境界861の内部の急な車線変更操作の動的に実現可能かつ最適な軌道870を追跡することを意図しているSNMPCによって制御される、車両865の概略図を示す。図8Dは、第1の時点における、SNMPCコントローラ871による予測状態軌道の不確実性の伝搬を含む車両位置865と、第2の時点における、車両位置866および対応する予測状態不確実性の伝搬872と、第3の時点における、車両位置867および対応する予測状態不確実性の伝搬873とを示す。本発明のいくつかの実施形態に係る確率機会制約を伴うSMPCの使用は、制御された車両が、何らかの確率しきい値を下回るように道路境界制約860および/または861に違反する確率を許容する。より具体的には、図8Dは、第2の時点における予測状態軌道872の確率的チューブが上側道路境界制約860に達すること(875)を示し、これは、不確実性の下で制御されるシステムの決定論的制約と確率機会制約の両方を充足することを意図している確率的予測コントローラの挙動を示す。
システムおよびその環境の不確実性の例は、車両のタイヤと路面との間の摩擦挙動に関連する任意のパラメータ、たとえば車両を制御しながらオフラインおよび/またはオンラインのいずれかで学習または推定することができる、パセイカ(Pacejka)タイヤ-力モデルのパラメータを含み得る。推定パラメータ値および推定不確実性は、本発明の実施形態に係る、確率的非線形モデル予測コントローラの直接最適制御問題定式化における時変および不確実外乱変数として定義することができる。
いくつかの実施形態において、不確実性は、タイヤ摩擦、すなわちタイヤと道路との間の摩擦のモデル化である。図9Aは、いくつかの実施形態により使用される長手方向および横方向の双方において滑りの値が変化するときに車両のタイヤの力がどのように変化するかを示す概略図である。この状況は、2つの異なるタイヤ摩擦関数910aおよび920aについての結果を示す。本開示の残りの部分では、単純にするために、長手方向の滑りおよび横方向の滑りのいずれか一方がゼロであるが、当該分野における経験を積んだ読者が理解するように、本明細書に記載の各種実施形態が組み合わされた滑りの場合もカバーすることを理解されたい。
図9Bは、図9Aの2次元等価物を示し、力はホイールに対する垂直力で正規化されている。力がその最大に達する値913は、ピーク摩擦912と呼ばれる。いくつかの自動車制御システムにおいて、ピーク摩擦912を知ることは有用である。たとえば、ピーク摩擦についての知識は、電子安定性制御システム(ESC:electronic stability control system)において特定のホイールにどの程度のブレーキトルクを加えることができるかを知るために重要である。ピーク摩擦値および対応する滑り値913を、アンチロックブレーキシステム(ABS:anti-lock braking system)において、最適制動力を実現するために使用することができる。力曲線910の初期傾斜911は、通常はタイヤの剛性と呼ばれる。滑りが小さい通常運転中、力曲線をタイヤ剛性911で近似することができる。本明細書で使用される通常運転は、標準運転として、たとえば、車両が非常ブレーキおよび回避操縦操作を避ける、都市部における日常の運転として、定義される。
通常運転は、車両のホイールに大きな力が加えられるときの無謀な運転と対比させることができる。本明細書で使用される無謀な運転は、ブレーキ/加速および/またはステアリングトルクが、車両がタイヤの材料および道路の表面のタイヤ粘着限界近くで動作するのに十分大きい、運転として定義される。たとえば、タイヤ力関数の線形領域の妥当性は、異なる表面間で変化するが、タイヤ力関数を線形関数で近似することは、アスファルト表面上のおよそ4m/sまでの加速度、すなわち、アスファルト上の利用可能な力の合計の約40%まで、有効である。一例として、量産型電子安定性制御システムは、ステアリングホイール角度および前後方向速度を使用し、タイヤ力関数を線形近似として使用して、予測された測定値から車両モデルへの偏差を測定する。偏差がしきい値よりも大きい場合、安全ブレーキが作動する。このように、通常運転の、具体例としての1つの尺度は、これらの作動しきい値をはるかに下回る運転である。言い換えると、運転が無謀でない場合、運転は通常運転である。
無謀運転中、車輪はより大きく滑り、これがより大きな力/摩擦変動を引き起こす。この変動は極めて非線形である。たとえば、力の大きさおよび道路の種類とは関係なく、ほとんどすべての表面に最大摩擦があり、最大摩擦が発生するポイントは、より大きなブレーキ/ステアリングトルクを与えると力が減少するポイントである。このポイントの後で、ホイールの滑りが増加すると、タイヤ力は小さくなる。最大力を超える大きなホイールの滑りの場合、最大力のポイントを超えるとダイナミクスは不安定になるので、所望のホイールの滑りを維持することがより困難になる。そのため、大抵はピークを超えないようホイールの滑りを十分小さく保つように車両を制御し、したがって、高性能の操縦のためにはピーク912が到達した場所911を知ることが不可欠である。
決定論的タイヤ摩擦関数決定部を用いて、大きな滑り値に対して非線形であるタイヤ摩擦関数をリアルタイムで求めるために、短期間のタイヤ摩擦関数全体についてデータを収集する必要がある。これは、車両ダイナミクスの不安定領域で/不安定領域の近くでの運転を必要とするので、困難である。典型的に、通常車両運転中に動作領域全体がアクセスされることはなく、車両挙動の適切な予測モデルをまだ取得していないコントローラ、または閉ループ不安定性が生じ得るような動作領域におけるタイヤ摩擦の不確実性がわかっているコントローラのいずれかを用いて、ダイナミクスのこの部分にアクセスすることは、危険な場合がある。
いくつかの実施形態は、リアルタイム動作中にタイヤ摩擦曲線の全体を求めることは不可能であるが、リアルタイム動作中にタイヤ摩擦関数全体の確率分布を求めることは可能であり、この確率分布は、特定の滑り値についてデータ収集がない場合の最終的な不確実性を捕捉し、このタイヤ摩擦関数は、車両120に対する不確実性125である、という理解に基づいている。
別の実施形態は、自動またはマニュアルいずれかの車両のコントローラが、確率的なアプローチを使用し、この情報を用いて、不確実領域を探索してより多くの知識を獲得することで不確実性を減じることができる、または、不確実性が探索のリスクを引き起こすという理由でその領域を回避することができる、という理解に基づいている。
一実施形態は、量産車両が、タイヤ摩擦関数を直接測定するためのセンサ機器を有していなくても、量産車両内のセンサのいくつかは、車両状態または車両状態の組み合わせを測定するので、タイヤ摩擦関数に関する間接的な情報を与える、という認識に基づいている。本明細書で使用される車両状態は、車両の速度および車両の進行方向レートを含む。たとえば、慣性測定ユニットは、車両の進行方向レートおよび車両の加速度を測定する。したがって、慣性センサは、車両状態の一部を直接測定する。一方、加速度センサは、ニュートンの第二法則により車両速度とタイヤ摩擦関数との双方に関連付けられる車両の加速度を測定する。たとえば、車両のホイールスピードセンサは、車両状態となり得る車両の前進速度を示す。
いくつかの実施形態において、タイヤ摩擦関数の線形部分のみが推定され、すなわち同等に剛性911で示される勾配が推定され、これは、小さな滑り値に対しては一定である。したがって、そのような推定は、傾き911が一定なので、状態非依存の不確実性をもたらす。他の実施形態において、完全関数910の確率分布が推定され、不確実性は、いくつかの他の実施形態に対し基底関数の重み付けされた組み合わせを使用することにより、状態非依存にすることができる。
傾き911を推定するだけで、より一層単純な推定問題となり、不確実性は既に状態非依存であるので、基底関数の重み付けされた組み合わせの必要はない。しかしながら、タイヤ摩擦関数は極めて非線形なので、タイヤ摩擦関数のモデルが911としての線形状態非依存傾斜としてモデル化されるとき、大きな滑り値に対して車両を制御することは、危険となる可能性がある。
Figure 0007475554000015
制御モデルおよび推定モデルの双方において、異なるタイプのモーションモデルを使用することができる。計算のためには単純なモデルが好ましく、その理由は、これが高速計算の実現を容易にすることにある。しかしながら、モデル精度が重要である場合は高忠実度モデルが好ましい。
加えて、本発明が使用するモデルに応じて、異なる数のパラメータを較正することができる。
いくつかの実施形態において、不確実性は、完全タイヤ摩擦関数をモデル化し、重み付けされた基底関数の組み合わせを使用することで、摩擦関数を、いくつかの実施形態に係る状態依存部分と状態非依存部分とに分解する。
いくつかの実施形態は、タイヤ摩擦関数を推定することはピーク摩擦を推定することを含むが、運転の量、すなわち入手可能なセンサデータの量は、推定の精度に影響する、という理解に基づいている。そのため、推定されたピークは、低すぎるもしくは大きすぎると推定される場合がある、または異なる滑り値に対して生じると推定される場合がある。そのような場合、SMPCが大きな滑り値に対して車両を作動させることは、不確実性が正しく求められないので危険となり得る。
そのため、いくつかの実施形態は、ピークが生じると推定される場合はSMPCにおける滑り値を大きくならないように制限する。図9Cは、いくつかの実施形態に係る、推定されたタイヤ摩擦関数による滑り値制約の適合化を説明する図を示す。真の摩擦関数910cは適切に推定されていない(920c)が、推定された摩擦関数の分布930cは真の摩擦関数を含む。ピークの値の付近の不確実性は大きく、このことは、摩擦関数についての知識が限られていることを意味する。このため、一実施形態は、ピークが生じる値940c付近になるように滑り値を制約する。
車両が制約の近くで制御されている場合、より多くの知識が集められる。図9Dは、データの取得に応じて摩擦関数920dの推定が変化することを説明する図を示す。より多くのセンサ測定値が得られて処理され、その結果、確率分布930dおよび推定された摩擦関数920dはより高い品質となる。したがって、滑り値制約940dを調整することができる。
さまざまな実施形態が、滑り制約を異なるやり方で求める。
一実施形態は、ピークが、異なる表面に対して異なる滑り値で発生する、という理解を使用する。たとえば、雪で覆われた表面上の場合、一実施形態は、ある小さな滑り値、たとえば5度に対する公称制限を採用するが、推定器がアスファルトに対する表面変化について学習し、推定された摩擦関数においてピークが形成されると、制約をピーク付近の値まで増加させることにより、摩擦について推定器がより多く学習することができるが、危険領域に達することを防止する。
Figure 0007475554000016
図10Aは、一実施形態に係る、各アクスル上の2つのホイールがひとまとめにされている、簡略化された前輪駆動シングルトラックモデルの概略図を示す。このモデルは、加速時の4つのタイヤ摩擦関数または剛性に依存し、1つは長手方向で2つは横方向である。図10Bにおいて、「δ」はフロントホイールのステアリング角度、αは横の場合の滑り角度、βは車両の車体の滑りであり、これは、車両の前進速度と横方向速度の比として定義され、それぞれ、長手方向(前進方向)および横方向の力である。
図10Bは、一実施形態に係る、4つの車輪すべてをモデル化したダブルトラックモデルの概略図を示す。このようなモデルでは、8つのタイヤ摩擦関数が車両のモデルの運動に影響を及ぼす。
上記本発明の実施形態は、数多くのやり方のうちのいずれかで実現することができる。たとえば、これらの実施形態は、ハードウェア、ソフトウェア、またはその組み合わせを用いて実現されてもよい。ソフトウェアで実現される場合、ソフトウェアコードは、任意の適切なプロセッサまたはプロセッサの集まりにおいて、これが1つのコンピュータに設けられていても複数のコンピュータに分散されていても、実行することができる。このようなプロセッサは、1以上のプロセッサが集積回路コンポーネント内にある集積回路として実現されてもよい。しかしながら、プロセッサは、任意の適切なフォーマットの回路を用いて実現されてもよい。
また、本明細書で概要が示された各種方法またはプロセスは、さまざまなオペレーティングシステムまたはプラットフォームのうちのいずれか1つを採用する1つ以上のプロセッサ上で実行可能なソフトウェアとして符号化されてもよい。加えて、このようなソフトウェアは、複数の適切なプログラミング言語および/またはプログラミングもしくはスクリプトツールのうちのいずれかを用いて記述されてもよく、また、フレームワークもしくは仮想マシン上で実行される、実行可能なマシン言語コードまたは中間符号としてコンパイルされてもよい。典型的に、プログラムモジュールの機能は、各種実施形態において所望される通りに組み合わされても分散されてもよい。
また、本発明の実施形態は、方法として実施されてもよく、その一例が提供されている。この方法の一部として実行される動作の順序は任意の適切なやり方で決められてもよい。したがって、実施形態は、例示されている順序と異なる順序で動作が実行されるように構成されてもよく、これは、いくつかの動作を、例示されている実施形態では一連の動作として示されるが、同時に実行することを含み得る。
本発明を好ましい実施形態の例を用いて説明してきたが、その他の各種応用および修正を本発明の精神および範囲の中で行い得ることが理解されるはずである。したがって、以下の請求項の目的は、本発明の真の精神および範囲に含まれるこのような変形および修正のすべてをカバーすることである。

Claims (20)

  1. 少なくとも1つのプロセッサと、命令が格納されたメモリとを備える、システムを制御するための確率的モデル予測コントローラ(SMPC)であって、前記命令は、前記少なくとも1つのプロセッサによって実行されると、前記SMPCに、
    各制御ステップにおいて、前記システムの状態の、前の状態から現在の状態への遷移を示す、前記システムの出力の測定値に基づいて、前記システムの前記現在の状態の推定と、前記システムのダイナミクスのパラメータの不確実性の確率分布の推定とを求めることと、
    前記推定したパラメータの不確実性の確率分布の一次および二次モーメントで前記パラメータの不確実性をモデル化する前記システムのダイナミクスの関数を含む前記システムの制御モデルを更新することと、
    前記現在の状態における前記更新したシステムの制御モデルを予測ホライズンにわたって最適化することにより、前記システムを制御するための制御入力を求めることと、
    前記システムの状態を変化させるために前記制御入力に基づいて前記システムを制御することとを実行させる、確率的モデル予測コントローラ(SMPC)。
  2. 前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントは、前記システムのダイナミクスの関数の乗数として前記制御モデルに含まれ、前記制御モデルの更新は、前記乗数の更新を含む、請求項1に記載のSMPC。
  3. 前記パラメータの不確実性の確率分布は前記システムの状態に依存しない、請求項2に記載のSMPC。
  4. 前記パラメータの不確実性の確率分布は前記システムの状態に依存し、前記パラメータの不確実性の確率分布は、前記制御モデルにおいて前記システムの状態の関数として表される状態依存部分と、前記システムの状態とは無関係に表される状態非依存部分とに区切られ、前記状態依存部分は、前記システムのダイナミクスの関数の内側に含まれ、前記状態非依存部分は、前記システムのダイナミクスの関数の外側で前記乗数に含まれる、請求項2に記載のSMPC。
  5. 前記パラメータの不確実性の確率分布は、前記システムの状態に依存する基底関数の重み付けされた組み合わせとして表され、前記パラメータの不確実性の確率分布の前記状態依存部分は、前記システムの状態に対する依存性を捕捉する基底関数の組み合わせを含み、前記パラメータの不確実性の確率分布の前記状態非依存部分は、前記システムの状態に依存しない、前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントから導出された、基底関数の組み合わせの重みを含む、請求項4に記載のSMPC。
  6. 前記パラメータの不確実性の確率分布は、前記基底関数の組み合わせの重みを、前記一次および二次モーメントとして前記システムの制御中に前記SMPCによって推定された未知の平均および共分散を用いてガウス分布としてモデル化する、請求項5に記載のSMPC。
  7. 前記プロセッサは、確率フィルタを実行して前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントの双方を求めることにより、測定された状態変数と、前記更新した制御モデルで推定された状態変数との間の誤差を低減するように構成される、請求項1に記載のSMPC。
  8. 前記プロセッサは、粒子フィルタを実行して前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントの双方を求めるように構成される、請求項7に記載のSMPC。
  9. 前記粒子フィルタは一組の粒子を維持し、各粒子は、前記パラメータの不確実性の確率分布の重み付けされた推定を表し、前記一組の粒子は集合的に、前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントを表し、前記粒子を更新するために、前記プロセッサは、
    前記不確実性を有する前記制御モデルで推定された前記システムの状態と、不確実性なしのモーションモデルで推定された前記システムの状態との間の関係を求め、
    前記パラメータの不確実性の確率分布を、前記求めた関係に基づいて更新することにより、前記推定された状態と測定値との間の誤差を低減するように、構成される、請求項8に記載のSMPC。
  10. 前記関係は、前記不確実性を有する前記制御モデルで推定された前記システムの状態と、不確実性なしの前記モーションモデルで推定された前記システムの状態との間の区分、および、前記不確実性を有する前記制御モデルで推定された前記システムの状態と、不確実性なしの前記モーションモデルで推定された前記システムの状態との間の差、の一方または組み合わせである、前記請求項9に記載のSMPC。
  11. 前記プロセッサは、カルマンフィルタを実行して前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントの双方を求めるように構成される、請求項7に記載のSMPC。
  12. 前記パラメータの不確実性の確率分布は、前記一次および二次モーメントとして前記システムの制御中に前記カルマンフィルタによって推定された未知の平均および共分散で、ガウス分布としてモデル化される、請求項11に記載のSMPC。
  13. 前記推定したパラメータの不確実性の確率分布の前記一次および二次モーメントは、共分散行列としてモデル化され、前記SMPCは、共分散行列の軌道を、状態および制御値の現在の軌道についての非線形共分散伝搬方程式を評価することにより、前記予測ホライズンにわたって伝搬させる、請求項1に記載のSMPC。
  14. 前記SMPCは制約の下で最適化を実行し、前記制御モデルの更新は、前記推定したパラメータの不確実性の確率分布の前記二次モーメントに基づいて前記制約を更新する、請求項1に記載のSMPC。
  15. 前記システムは車両である、請求項1に記載のSMPC。
  16. 前記パラメータの不確実性の確率分布は、前記車両のタイヤの摩擦を、前記車両が走行する道路を用いてモデル化する、前請求項15に記載のSMPC。
  17. 前記パラメータの不確実性の確率分布は、前記車両のタイヤの剛性の状態を、前記車両が走行する道路を用いてモデル化し、制約のうちの少なくとも1つを、前記タイヤの剛性の状態から求められたピーク摩擦に基づいて適合化させる、請求項15に記載のSMPC。
  18. 機会制約は安定性制約を含む、請求項17に記載のSMPC。
  19. システムを制御するための確率的モデル予測制御(SMPC)方法であって、前記方法は、前記方法を実現する格納された命令と結合されたプロセッサを使用し、前記命令は、前記プロセッサによって実行されると前記方法のステップを実行し、前記方法のステップは、
    各制御ステップにおいて、前記システムの状態の、前の状態から現在の状態への遷移を示す、前記システムの出力の測定値に基づいて、前記システムの前記現在の状態の推定と、前記システムのダイナミクスのパラメータの不確実性の確率分布の推定とを求めるステップと、
    前記推定したパラメータの不確実性の確率分布の一次および二次モーメントで前記パラメータの不確実性をモデル化する前記システムのダイナミクスの関数を含む前記システムの制御モデルを更新するステップと、
    前記現在の状態における前記更新したシステムの制御モデルを予測ホライズンにわたって最適化することにより、前記システムを制御するための制御入力を求めるステップと、
    前記システムの状態を変化させるために前記制御入力に基づいて前記システムを制御するステップとを含む、確率的モデル予測制御(SMPC)方法。
  20. システムを制御するための確率的モデル予測制御(SMPC)方法を実行するためにプロセッサが実行可能なプログラムが実装された非一時的なコンピュータ読取可能記憶媒体であって、前記SMPC方法は、
    各制御ステップにおいて、前記システムの状態の、前の状態から現在の状態への遷移を示す、前記システムの出力の測定値に基づいて、前記システムの前記現在の状態の推定と、前記システムのダイナミクスのパラメータの不確実性の確率分布の推定とを求めるステップと、
    前記推定したパラメータの不確実性の確率分布の一次および二次モーメントで前記パラメータの不確実性をモデル化する前記システムのダイナミクスの関数を含む前記システムの制御モデルを更新するステップと、
    前記現在の状態における前記更新したシステムの制御モデルを予測ホライズンにわたって最適化することにより、前記システムを制御するための制御入力を求めるステップと、
    前記システムの状態を変化させるために前記制御入力に基づいて前記システムを制御するステップとを含む、非一時的なコンピュータ読取可能記憶媒体。
JP2023547945A 2020-12-10 2021-08-05 不確実システムの確率的モデル予測制御 Active JP7475554B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/117,159 US11698625B2 (en) 2020-12-10 2020-12-10 Stochastic model-predictive control of uncertain system
US17/117,159 2020-12-10
PCT/JP2021/029781 WO2022123826A1 (en) 2020-12-10 2021-08-05 Stochastic model-predictive control of uncertain system

Publications (2)

Publication Number Publication Date
JP2023546540A JP2023546540A (ja) 2023-11-02
JP7475554B2 true JP7475554B2 (ja) 2024-04-26

Family

ID=77739114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023547945A Active JP7475554B2 (ja) 2020-12-10 2021-08-05 不確実システムの確率的モデル予測制御

Country Status (5)

Country Link
US (1) US11698625B2 (ja)
EP (1) EP4260146A1 (ja)
JP (1) JP7475554B2 (ja)
CN (1) CN116710855A (ja)
WO (1) WO2022123826A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11960020B2 (en) * 2019-04-26 2024-04-16 Telefonaktiebolaget Lm (Publ) Sharing of user equipment states
WO2020218957A1 (en) 2019-04-26 2020-10-29 Telefonaktiebolaget Lm Ericsson (Publ) Device type state estimation
US20220028002A1 (en) * 2020-07-24 2022-01-27 Gregor Ko{hacek over (z)}elj Mechanism for stability within automatic reserve management artificial intelligence
US12106553B2 (en) * 2020-12-18 2024-10-01 The Boeing Company Method and system for aerial object detection
US12038727B2 (en) * 2021-03-29 2024-07-16 Mitsubishi Electric Research Laboratories, Inc. System for performing a task according to a reference trajectory
US12049007B2 (en) * 2022-03-01 2024-07-30 Mitsubishi Electric Research Laboratories, Inc. System and method for robust robotic manipulation using chance constrained optimization
US20240069508A1 (en) * 2022-08-12 2024-02-29 Mitsubishi Electric Research Laboratories, Inc. System and Method for Controlling an Operation of a Device
US20240253663A1 (en) * 2023-01-27 2024-08-01 Motional Ad Llc Generating worst-case constraints for autonomous vehicle motion planning

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019113926A (ja) 2017-12-21 2019-07-11 株式会社Ihi モデル予測制御装置
WO2020183872A1 (en) 2019-03-11 2020-09-17 Mitsubishi Electric Corporation Model-based control with uncertain motion model

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7180443B1 (en) * 2005-03-16 2007-02-20 Lockheed Martin Corporation Reduced state estimator for systems with physically bounded parameters
US10738548B2 (en) * 2016-01-29 2020-08-11 Halliburton Energy Services, Inc. Stochastic control method for mud circulation system
US11327449B2 (en) * 2020-05-29 2022-05-10 Mitsubishi Electric Research Laboratories, Inc. Nonlinear optimization for stochastic predictive vehicle control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019113926A (ja) 2017-12-21 2019-07-11 株式会社Ihi モデル予測制御装置
WO2020183872A1 (en) 2019-03-11 2020-09-17 Mitsubishi Electric Corporation Model-based control with uncertain motion model

Also Published As

Publication number Publication date
JP2023546540A (ja) 2023-11-02
US20220187793A1 (en) 2022-06-16
CN116710855A (zh) 2023-09-05
US11698625B2 (en) 2023-07-11
EP4260146A1 (en) 2023-10-18
WO2022123826A1 (en) 2022-06-16

Similar Documents

Publication Publication Date Title
JP7475554B2 (ja) 不確実システムの確率的モデル予測制御
US10370004B2 (en) System and method for determining state of stiffness of tires of vehicle
US11254315B2 (en) Friction adaptive vehicle control
EP3948440B1 (en) Nonlinear optimization method for stochastic predictive control
US10093321B1 (en) System and method for calibrating parameters of tires
US11597364B2 (en) System and method for determining friction curve of tire
CN117581166A (zh) 基于借助高斯假设密度滤波器的不确定性传播的随机非线性预测控制器及方法
US11474486B2 (en) Model-based control with uncertain motion model
US11679759B2 (en) System and method for adaptive control of vehicle dynamics
JP7278502B2 (ja) タイヤの摩擦曲線を判定するためのシステムおよび方法
JPWO2020183871A5 (ja)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230414

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240416

R150 Certificate of patent or registration of utility model

Ref document number: 7475554

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150