(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-17
(45)【発行日】2025-04-25
(54)【発明の名称】感知によって発見可能な不確実な環境で動作するマシンの制御
(51)【国際特許分類】
B60W 30/00 20060101AFI20250418BHJP
B60W 40/02 20060101ALI20250418BHJP
B60W 50/00 20060101ALI20250418BHJP
G05B 11/36 20060101ALI20250418BHJP
G06N 99/00 20190101ALI20250418BHJP
【FI】
B60W30/00
B60W40/02
B60W50/00
G05B11/36 G
G06N99/00 180
(21)【出願番号】P 2024500699
(86)(22)【出願日】2021-12-15
(86)【国際出願番号】 JP2021047454
(87)【国際公開番号】W WO2022215300
(87)【国際公開日】2022-10-13
【審査請求日】2023-09-14
(32)【優先日】2021-04-05
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ディ・カイラノ,ステファノ
(72)【発明者】
【氏名】ボンザニニ,アンジェロ・ドメニコ
(72)【発明者】
【氏名】メスバフ,アリ
【審査官】鶴江 陽介
(56)【参考文献】
【文献】米国特許第09568915(US,B1)
【文献】特表2018-534205(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 30/00-60/00
G08G 1/00- 1/16
(57)【特許請求の範囲】
【請求項1】
マシンの動作を制御するためのコントローラであって、少なくとも1つのプロセッサと、命令が格納されたメモリとを備え、前記命令は、前記少なくとも1つのプロセッサによって実行されると、前記コントローラに、
前記マシンの周囲の環境を感知する少なくとも1つのセンサの測定値から、前記マシンの状態と前記センサの動作を制御する感知命令とに基づいて、前記環境内の物体の情報を示す前記環境の知識を取得することと、
前記環境についての取得された知識を処理し、前記環境の状態および前記環境の状態の不確実性を推定することと、
前記マシンのダイナミクスのモデルの多変数制約付き最適化を解くことによって、前記マシンの軌道を定義する前記マシンに対する制御入力のシーケンスと、前記環境の所望の知識とを共同で決定することとを実行させ、
前記マシンのダイナミクスのモデルは、前記マシンの状態および制御入力の許容可能な値に対する制約を受ける前記制御入力のシーケンスと、前記軌道とを関連付けており、
前記マシンの状態および前記制御入力は、前記環境の状態および前記環境の状態の前記不確実性によって表わされる周囲の環境の所望の知識に基づいて定義されており、
さらに、前記命令は前記コントローラに、
前記マシンの状態を変更するように前記制御入力のシーケンスに基づいて前記マシンを制御することと、
前記環境の前記所望の知識に基づいて前記感知命令を更新し、前記更新された感知命令を前記センサに提示することとを実行させ、
前記多変数制約付き最適化は、予測ホライズンに沿って得られる最適化された制御入力によって制御される前記マシンの動作のステージコストと、前記予測ホライズンの終わりにおける終端条件に関連付けられた終端コストとを含むコスト関数を最適化し、前記ステージコストおよび前記終端コストの各々は、制御目的に従った前記マシンの前記動作の性能に関する性能項と、前記環境の状態の前記不確実性に関する環境項とを含み、これらの項間の均衡化は、各項を乗算する非負の重みによって得られ、
現在の時間ステップについての前記ステージコストの前記環境項および前記終端コストの前記環境項が、前の時間ステップでの前記終端コストについての前記環境項未満であり、かつ、現在の時間ステップについての前記ステージコストの前記性能項および前記終端コストの前記性能項が、前記前の時間ステップについての前記終端コストの前記性能項以下である場合に、前記制御目的の成就が保証される、コントローラ。
【請求項2】
前記環境の状態は、前記状態の許容不可能な値を定義し、前記環境の状態の前記不確実性は、前記状態の追加の許容不可能な値を定義し、これにより、前記制約によって定義される前記許容可能な値は、前記状態の前記許容不可能な値および前記追加の許容不可能な値を除外する、請求項1に記載のコントローラ。
【請求項3】
前記制御入力によって定義されるコマンドのセットは、前記環境の前記取得された知識を変更する一方で前記マシンの状態に影響を及ぼさない前記感知命令に関連するコマンドを含む、請求項1に記載のコントローラ。
【請求項4】
前記コントローラは、前記環境の状態のダイナミクスのモデルに基づいて、前記環境の状態および前記環境の状態の前記不確実性を再帰的に推定するように構成される、請求項1に記載のコントローラ。
【請求項5】
前記コントローラは、前記マシンの前記動作のデータからトレーニングされた動的関数に基づいて、前記環境の状態および前記環境の状態の前記不確実性を再帰的に推定するように構成される、請求項1に記載のコントローラ。
【請求項6】
前記環境の状態の前記不確実性は、前記環境の前記取得された知識の逆数であり、前記状態および前記制御入力の前記許容可能な値に課される制約は、相互作用関数に従って相互作用することが許可された変数の相互作用制約を含み、前記変数は、前記マシンの状態、前記環境の状態、および前記制御入力を含み、これにより、前記多変数制約付き最適化は、前記環境の状態の前記不確実性がある状態で前記相互作用制約を満たすように提示される、請求項1に記載のコントローラ。
【請求項7】
前記環境の状態の前記不確実性のメトリックの単調増加関数は、前記相互作用制約を満たすための信頼度を判定する前記環境の状態の確率分布に基づいている、請求項6に記載のコントローラ。
【請求項8】
前記単調増加関数は、前記環境の状態に対する前記相互作用制約の感度と、前記相互作用制約を満たすための所望の信頼度とに基づいて決定される、請求項7に記載のコントローラ。
【請求項9】
前記状態および前記制御入力の前記許容可能な値は、前記環境の状態に対する前記相互作用制約の前記感度に基づいて低減される、請求項8に記載のコントローラ。
【請求項10】
前記状態および前記制御入力の前記許容可能な値を決定するために、前記コントローラは、
前記環境の取得された知識に基づいて、前記マシンの状態および前記環境の状態の値の組合わせによって記述される空間内の許容可能な領域を判定し、
前記環境の状態の前記不確実性と前記環境の状態に対する前記相互作用制約の前記感度とに基づいて低減係数を決定し、
前記環境の状態の前記不確実性の前記確率分布と、前記相互作用制約を満たすための前記所望の信頼度とに基づいて、前記低減係数を修正し、
前記修正された低減係数に基づいて前記許容可能な領域を低減し、
前記許容可能な領域を、制御される前記マシンの状態および前記制御入力に対する前記制約に変換するように構成される、請求項8に記載のコントローラ。
【請求項11】
前記許容可能な値は、前記環境の状態の前記不確実性の前記単調増加関数に基づいて低減される、請求項9に記載のコントローラ。
【請求項12】
前記コントローラは、前記制御目的の成就についての予想される進行をチェックし、前記制御目的の成就が保証できない場合、前記ステージコストおよび前記終端コストの前記項の重みをゼロにするように選択し、そうでない場合、前記制御目的を満たすことを可能にする前記ステージコストおよび前記終端コストの重みを選択する、請求項1に記載のコントローラ。
【請求項13】
前記コントローラは、制御サイクルのシーケンスにわたって前記マシンを反復的に制御し、制御サイクルを実行するために、前記コントローラは、
マシン状態の状態を受信し、前記状態のダイナミクスのマシン予測子を決定し、
前記環境の取得された知識を受信し、前記環境のダイナミクスの環境予測子を決定し、
相互作用することが許可された変数の相互作用制約を決定するように構成され、前記変数は、前記マシンの状態、前記環境の状態、および前記制御入力を含み、前記コントローラはさらに、
マシン目標を受信し、制御目的を構築し、予測ホライズンにわたって前記制御目的に到達するためのコスト関数を構築し、前記予測ホライズンの終わりにおける終端制約を決定し、
前記環境の状態の前記不確実性がある状態で前記相互作用制約を受けるコスト関数を最適化して、前記予測ホライズンにわたる時間ステップのシーケンスに関する最適化解のシーケンスを生成し、
前記最適化解のシーケンスの第1の要素を、前記マシンの1つまたは複数のアクチュエータおよび前記センサの1つまたは複数のアクチュエータに提示するように構成される、請求項1に記載のコントローラ。
【請求項14】
前記マシンは自律型車両または自律型ロボットである、請求項1に記載のコントローラ。
【請求項15】
マシンの動作を制御するための制御方法であって、前記方法は、前記方法を実施する格納された命令と連携してプロセッサを用い、前記命令は、前記プロセッサによって実行されると、前記方法のステップを実行し、前記ステップは、
前記マシンの周囲の環境を感知する少なくとも1つのセンサから、前記マシンの状態と前記センサの動作を制御する感知命令とに基づいて、測定値を取得するステップと、
前記測定値を処理して、前記環境内の物体の情報を示す前記環境の知識を取得し、前記環境の状態および前記環境の状態の不確実性を推定するステップと、
前記マシンのダイナミクスのモデルの多変数制約付き最適化を解くことによって、前記マシンの軌道を定義する前記マシンに対する制御入力のシーケンスと、前記環境の所望の知識とを共同で決定するステップとを含み、
前記マシンのダイナミクスのモデルは、前記マシンの状態および制御入力の許容可能な値に対する制約を受ける前記制御入力のシーケンスと、前記軌道とを関連付けており、
前記マシンの状態および前記制御入力は、前記環境の状態および前記環境の状態の前記不確実性によって表わされる周囲の環境の所望の知識に基づいて定義されており、
前記ステップは、さらに、
前記マシンの状態を変更するように前記制御入力のシーケンスに基づいて前記マシンを制御するステップと、
前記環境の前記所望の知識に基づいて前記感知命令を更新し、前記更新された感知命令を前記センサに提示するステップとを含み、
前記多変数制約付き最適化は、予測ホライズンに沿って得られる最適化された制御入力によって制御される前記マシンの動作のステージコストと、前記予測ホライズンの終わりにおける終端条件に関連付けられた終端コストとを含むコスト関数を最適化し、前記ステージコストおよび前記終端コストの各々は、制御目的に従った前記マシンの前記動作の性能に関する性能項と、前記環境の状態の前記不確実性に関する環境項とを含み、これらの項間の均衡化は、各項を乗算する非負の重みによって得られ、
現在の時間ステップについての前記ステージコストの前記環境項および前記終端コストの前記環境項が、前の時間ステップでの前記終端コストについての前記環境項未満であり、かつ、現在の時間ステップについての前記ステージコストの前記性能項および前記終端コストの前記性能項が、前記前の時間ステップについての前記終端コストの前記性能項以下である場合に、前記制御目的の成就が保証される、制御方法。
【請求項16】
方法を実行するためのプロセッサによって実行可能なプログラムが具現化された非一時的なコンピュータ可読記憶媒体であって、前記方法は、
マシンの周囲の環境を感知する少なくとも1つのセンサから、前記マシンの状態と前記センサの動作を制御する感知命令とに基づいて測定値を取得するステップと、
前記測定値を処理して、前記環境内の物体の情報を示す前記環境の知識を取得し、前記環境の状態および前記環境の状態の不確実性を推定するステップと、
前記マシンのダイナミクスのモデルの多変数制約付き最適化を解くことによって、前記マシンの軌道を定義する前記マシンに対す
る制御入力のシーケンスと、前記環境の所望の知識とを共同で決定するステップとを含み、
前記マシンのダイナミクスのモデルは、前記マシンの状態および制御入力の許容可能な値に対する制約を受ける前記制御入力のシーケンスと、前記軌道とを関連付けており、
前記マシンの状態および前記制御入力は、前記環境の状態および前記環境の状態の前記不確実性によって表わされる周囲の環境の所望の知識に基づいて定義されており、
前記方法は、さらに、
前記マシンの状態を変更するように前記制御入力のシーケンスに基づいて前記マシンを制御するステップと、
前記環境の前記所望の知識に基づいて前記感知命令を更新し、前記更新された感知命令を前記センサに提示するステップとを含み、
前記多変数制約付き最適化は、予測ホライズンに沿って得られる最適化された制御入力によって制御される前記マシンの動作のステージコストと、前記予測ホライズンの終わりにおける終端条件に関連付けられた終端コストとを含むコスト関数を最適化し、前記ステージコストおよび前記終端コストの各々は、制御目的に従った前記マシンの前記動作の性能に関する性能項と、前記環境の状態の前記不確実性に関する環境項とを含み、これらの項間の均衡化は、各項を乗算する非負の重みによって得られ、
現在の時間ステップについての前記ステージコストの前記環境項および前記終端コストの前記環境項が、前の時間ステップでの前記終端コストについての前記環境項未満であり、かつ、現在の時間ステップについての前記ステージコストの前記性能項および前記終端コストの前記性能項が、前記前の時間ステップについての前記終端コストの前記性能項以下である場合に、前記制御目的の成就が保証される、非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、完全には知られていないが感知動作によって発見可能である環境において動作するマシンのための制御戦略に関する。マシンの例は自律型または半自律型の車両および自律型ロボットを含む。
【背景技術】
【0002】
自動車両、無人ドローン、自動地上車両、倉庫内移動ロボット等の自律型マシンが動作することが多い環境は、時間が経つにつれて変化するので、ほんの概略的にしか知られていない。マシンは、1つ以上の割当てられた制御目標を達成しなければならず、これは、障害物と衝突するかまたは環境内に具体的に印付けされたエリアから離れる等の、環境内のマシンの動作に起因する可能性のある安全でない事象を回避しながら達成されなければならない。しかしながら、環境に関する情報は、マシン自体のセンサまたは通信ネットワークを介してマシンに接続された環境内のセンサを用いた感知により取得することができ、これにより環境の知識を増やす。
【0003】
例えば、自律型車両の1つの目的は、他の車両と衝突することなく、適切な車線区分線内の走行を維持することによって道路上に留まったままでそのターゲット目的地に到達することである。他の車両および道路標示の位置は事前には知られていないが、様々な物体がセンサおよび見通し線の範囲内にある限り、レーダ、ソナー、ライダー等のセンサから取得することができる。これらのセンサは、車両の内部にあっても外部にあってもよい。例えば、センサは、車両上または路側ユニット(road-side unit:RSU)に配置することができる。
【0004】
別の例では、倉庫ロボットは、人の作業者を危険に晒すことを回避するために割当てられた廊下内の走行を維持しつつ、かつ、倉庫内の他のロボットおよび材料との衝突を回避しつつ、特定の部品を作業台に搬送する。作業者および材料が倉庫内を移動すると、それらの位置は未知の方法で変化するが、これは、様々な物体がセンサの範囲および見通し線内にある限り、ライダおよびソナー等のロボットに搭載されたセンサから取得することができるか、または、ロボットがセンサの通信範囲内にある限り、環境に配置されたセンサからロボットに中継することもできる。
【0005】
環境内の特定の物体について取得される情報の量は、そのような物体が受ける感知の量に左右される。すなわち、センサを用いて物体を観察すればするほど、当該物体に関してより多くの情報が取得され、すなわち、物体の状態に関してより多くの知識が得られる。従って、その知識を増やすために環境内の物体に関する情報を取得することは動的プロセスである。
【0006】
他方で、センサを介して取得される環境に関する情報の量は、マシンがどのように操作されるかに左右されることが多い。例えば、ある物体が当該物体を観察するためのセンサの範囲内にある場合にのみ、かつ、マシン上に配置されたセンサと物体との間に自由な見通し線がある場合に、当該物体を適切に発見および観察することができる。従って、物体がより長くセンサの範囲内および見通し線内に留まるようにマシンを操作する場合、物体に関して取得される情報量はより多くなり、物体状態の知識はより正確になるだろう。また、範囲を小さくしながら情報量を増やすことができるので、障害物のより近くでマシンを制御すれば、より多くの情報が取得される。しかしながら、障害物の実際の位置に関する十分な知識が入手可能になる前に障害物の想定位置に近づきすぎると、いくつかのリスクが生じる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【0007】
マシンの動きが入手可能な知識のみに基づいて決定される場合、部分的に未知の環境によって引起こされる安全でない事象を回避する必要があるので、マシンの動きが過度に慎重になり、最も良く知っている経路上に留まる可能性があり、結果として、性能が低下する可能性、例えば、目標に到達するまでの時間が長くなったり、使用エネルギーが増えたりする可能性がある。他方で、環境に関して最も多くの情報を取得するようにマシンの動きが決定される場合、マシンの動きは、制御目標を達成するのに必要な動きから著しく逸脱する可能性があり、結果として、全体的な性能が低下する可能性、例えば、目標に到達しない可能性、大幅に遅れて目標に到達する可能性がある。
【0008】
従って、不確実であるが感知によって発見可能である環境によって引起こされる安全でない事象を回避しつつマシンの最適な動作を決定する制御方法が必要とされている。感知の情報取得能力は、マシンがどのように操作されるかに依存するものであり、このため、情報の取得により、マシンによるその目標の達成が妨げられることはなく、または、その目標達成の性能が低下することはない。
【課題を解決するための手段】
【0009】
いくつかの実施形態は、感知により発見された部分的に未知の環境で動作するマシンを制御するためのコントローラについて検討する。制御目的は、マシンが、動作要件およびその環境との相互作用に関する当該マシンの安全性を確保しつつ特定の状態への到達または所与の基準信号の追跡等の所与の目標または制御目的を達成することである。
【0010】
そのようなマシンの例として自律型車両、ならびに航空宇宙車両および可動式ロボットまたはマニピュレータロボットが含まれるが、これらは、動きおよびダイナミクスのモデルが利用可能なマシンであるが、完全には知られていない環境で動作しているマシンである。例えば、環境の不確実性は、位置および動きが事前には知られていないがカメラ、ライダ、またはレーダ等のセンサを用いて発見することができる他の車または物体等の他のエージェントの存在に起因する可能性がある。安全性は、車両またはロボットの動きが速度、加速度および力に対する制限等の動作仕様を満たすように当該車両またはロボットを制御することによって保証される。環境との安全な相互作用は、車両またはロボットが他のエージェント、例えば他の車または他のロボットと衝突せず、車両またはロボットが留まるのに適切なエリア、例えば、道路上の適切な車線または予め定義された作業空間に留まるように、当該車両またはロボットを制御することによって保証される。他のエージェントおよび場合によっては動きの範囲についての知識が完全ではないので、安全な相互作用を保証することは完全に確実ではあり得ないが、センサからより多くの情報を取得してそれらについての知識を増やすことによって、より確実なものにすることができる。
【0011】
上述の定義および例に従って動作するマシンの場合、制御によって発行されるコマンドは、環境において入手可能な知識の量に依存する。例えば、制御は、未検出のリスクを回避するために、知識が得られていないエリアを回避することを必要とする可能性がある。他方で、感知はまた、制御がそのコマンドを通じてマシンをどのように操作するかに依存する。例えば、マシンがあるエリアにどれだけ近接しているかによって、そのようなエリアがどれだけ十分に感知されるかが決まる。別の例として、コントローラは、特定のエリア上で感知されたデータに対して行われる処理の量をリアルタイムで決定する場合もあり、これにより、センサから抽出される情報の量を増減させることができる。このため、感知と制御との間には循環的な相互依存性がある。
【0012】
しかしながら、コントローラの全体的な目標は、マシンのための特定の制御目的を達成することである。従って、感知目的は、マシンの動作に影響を及ぼすものの、それ自体ではマシンの動作を動機付けるものではないため、制御目的に対して二次的なものである。
【0013】
そのために、いくつかの実施形態は、制御が主要な目的であるとともに感知が二次的な目的である、相互依存的であるが不均衡な制御および感知のアプリケーションを開示する。相互依存性を達成するために、実施形態は、例えば単一の単位多変数最適化の一部として、マシンの状態軌道と、マシンの周囲の環境の状態について必要な知識の量とを共同で決定する。それらの重要性を不均衡にするために、いくつかの実施形態は、状態軌道および環境の状態の知識の量に対して多変数制約付き最適化を用い、この場合、環境の知識は、マシン状態および制御コマンドについての許容可能な値を決定する制約に対して作用する。このように、環境の知識は制御目的に対して副次的なものとなる。なぜなら、制約に対して作用する知識の量は独立した最適化目的を有しておらず、マシン状態および制御コマンドについての許容可能な値を制限することによって作用するからである。
【0014】
従って、様々な実施形態は、マシンの動作を制限する適切な制約によって環境の知識を決定する一方で、制御目的を性能目的として決定する。そのような制約は、決定論的成分および不確実性成分から構成される。決定論的成分は、環境の現在の知識に基づいた制約を表わす。不確実性成分は、環境の現在の知識がどれくらい信頼できるかという制約ベースで、追加の安全マージンをどれだけ残さなければならないかを表わす。従って、不確実性成分の影響によりこれらの制約がより厳密になればなるほど、環境に関する現在入手可能な知識の信頼性がより低下することとなる。
【0015】
結果として、コントローラは、目標に到達するのにより高い性能を有するようにマシンを操作する制御を可能にするより適切な知識が得られるエリアにおいて、感知を改善するようにマシンを動作させ得るが、目標を達成する性能が低下する場合に環境の知識を改善するようにマシン動作を修正することはないだろう。
【0016】
いくつかの実施形態は、確率的制約を受ける予測制御としてコントローラを設計し、この場合、このような確率的制約における不確実性は、環境の推定についての予測信頼性である。環境の推定についての信頼性は、動的方程式またはマシン学習モデルに基づいて構築することができる推定器のモデルを用いて計算される。確率的制約は、環境の知識における不確実性を考慮しつつ、環境によって課されるマシン動作に対する制限を考慮に入れる一方で、予測コントローラのコスト関数は目標の達成を考慮に入れるものである。付加的または代替的には、いくつかの実施形態は、環境の特定の部分についての知識を改善するという二次的な目的を含むとともに、コスト関数を適切に設計することによって依然として目標を達成するものである。
【0017】
従って、一実施形態は、マシンの動作を制御するためのコントローラを開示する。当該コントローラは、少なくとも1つのプロセッサと、命令が格納されたメモリとを備え、当該命令は、当該少なくとも1つのプロセッサによって実行されると、当該コントローラに、当該マシンの状態と当該センサの動作を制御する感知命令とに基づいて環境を感知する少なくとも1つのセンサの測定値から当該マシンの周囲の当該環境の知識を取得することと、当該環境についての取得された知識を処理し、当該環境の状態および当該環境の状態の不確実性を推定することと、当該環境の状態および当該環境の状態の当該不確実性によって表わされる周囲の環境の所望の知識に基づいて定義される状態および制御入力の許容可能な値に対する制約を受ける制御入力のシーケンスに状態軌道を関連付ける当該マシンのダイナミクスのモデルの多変数制約付き最適化を解くことによって、当該マシンの当該状態軌道および当該環境の所望の知識を定義する、当該マシンに対する制御入力のシーケンスを共同で決定することと、当該マシンの状態を変更するように当該制御入力のシーケンスに基づいて当該マシンを制御することと、当該環境の当該所望の知識に基づいて当該感知命令を更新し、当該更新された感知命令を当該センサに提示することとを実行させる。
【図面の簡単な説明】
【0018】
【
図1A】感知によって発見される環境において動作するマシンを制御するためのコントローラを含む、本開示で考慮される一般的なアーキテクチャを示す概略図である。
【
図1B】いくつかの実施形態によって用いられる共同的な多変数最適化を示す概略図である。
【
図1C】いくつかの実施形態に従った、不均衡多変数制約付き最適化によって用いられる制約を示す概略図である。
【
図1D】いくつかの実施形態に従った、不均衡多変数制約付き最適化によって最適化されるコスト関数の原理を示す概略図である。
【
図2】共同的であるが不均衡な最適化を達成するためにいくつかの実施形態によって実行される多変数制約付き最適化のための方法を示すブロック図である。
【
図3A】いくつかの実施形態に従った、感知によって発見される環境において動作する車両を制御するための例示的なコントローラを示す概略図である。
【
図3B】感知によって発見される環境において動作するマシンを制御するためのコントローラの計算プラットフォームを示す、本開示のいくつかの実施形態に従ったブロック図である。
【
図4A】コントローラが車両を現在の車線に留まるように、または車線を左に変更するように操作し、現在の車線に留まることが好ましいように見える場合の、本開示のいくつかの実施形態に従ったコントローラの動作の結果を示す概略図である。
【
図4B】コントローラが車両を現在の車線に留まるように、または車線を左に変更するように操作し、現在の車線に留まることが好ましいように見える場合の、本開示のいくつかの実施形態に従ったコントローラの動作の結果を示す概略図である。
【
図5A】制約が環境の不確実性によって拡大され、コントローラがそのような不確実性を減らすための如何なるアクションも取らない場合に、衝突回避によって課される制約を回避しつつコントローラが車両をターゲット位置に到達させるように操作する際の、本開示のいくつかの実施形態に従ったコントローラの動作の結果を示す概略図である。
【
図5B】いくつかの実施形態に従った、制約によりその所望の挙動が制限される時に、制約が環境の不確実性によって拡大され、コントローラがそのような不確実性を減らすためのアクションを取る場合に、衝突回避によって課される制約を回避しつつコントローラが車両をターゲット位置に到達させるように操作する際の、当該実施形態に従ったコントローラの動作の結果を示す概略図である。
【
図5C】制約が環境の不確実性によって拡大された場合であって、本開示の実施形態によって制限が課されることなく車両性能および不確実性低減の共同のコスト関数を最適化することに基づいてコントローラがそのような不確実性を減らすためのアクションを取る場合に、衝突回避によって課される制約を回避しつつコントローラが車両をターゲット位置に到達させるように操作する際の、いくつかの実施形態に従ったコントローラの動作の結果を示す概略図である。
【
図6A】いくつかの実施形態に従った、感知によって発見される環境において動作するマシンを制御するためのコントローラを示すブロック図である。
【
図6B】いくつかの実施形態に従った制御ユニットの反復動作を示すフロー図である。
【
図7】制御ユニットによって施行されるマシンの動作に対する制約によって環境およびその不確実性の影響が考慮されている、いくつかの実施形態に従ってマシンを制御するために制御ユニットによって用いられる予測モデルの構成を示すフロー図である。
【
図8】制御ユニットによって施行されるマシンの動作に対する制約によって環境およびその不確実性の影響が考慮されている、いくつかの実施形態に従ってマシンを制御するために制御ユニットによって用いられるコスト関数の構成を示すフロー図である。
【
図9A】いくつかの実施形態に従った、環境状態に関する不確実性に基づいて、組合わされたマシン状態空間および環境状態空間の許容可能な領域を小さくする、不確実性依存の緊密な相互作用制約の効果を示す概略図である。
【
図9B】いくつかの実施形態に従った、不確実性依存の緊密な相互作用制約を構築するための動作を示すフロー図である。
【発明を実施するための形態】
【0019】
図1Aは、いくつかの実施形態に従った制御アーキテクチャの概略図である。マシン101は、コントローラ102によって制御されて、動作に影響を及ぼすとともに感知によって発見可能である環境103において動作している。コントローラ102によって発行されるコマンドに応答したマシン101の挙動は既知であると仮定される。マシンが動作する環境は完全には知られていないが、それに関する情報は、マシン上に配置されるかまたはマシンに遠隔接続されるセンサ104から取得することができる。コントローラ102は、センサ104から得られる環境103に関するデータに対する情報抽出111を含み、その情報を制御ユニット112内のマシン101に関する既知の情報と共に用いて、マシン101の動作要件および環境103との相互作用に関する安全性を確保しつつ制御目的を達成するためのマシン用コマンドを計算する。
【0020】
従って、不確実であるが感知によって発見可能である環境によって引起こされる安全でない事象を回避しつつマシンの最適な動作を決定する方法およびマシンが必要とされており、この場合、感知の情報取得能力は、さらに、情報の取得がマシンの目標達成の妨げまたは目標達成時の性能の低下をもたらすことがないようにマシンが如何に操作されるかに左右される。
【0021】
いくつかの実施形態は、感知目的が、制御目的に影響を及ぼすもののそれ自体ではマシンの動作を動機付けるものではないので、当該制御目的に対して二次的なものであるという認識に基づく。そのために、いくつかの実施形態は、制御が主要な目的であるとともに感知が二次的な目的である、相互依存的であるが不均衡な制御および感知のアプリケーションを開示する。
【0022】
そのために、制御ユニット112は、制御入力と環境の所望の知識とについての共同的であるが不均衡な最適化を実行する。
図1B、
図1Cおよび1Dは、制御ユニット112によって実行される共同的であるが不均衡な最適化についての様々な原理と、様々な実施形態によって採用されるいくつかの実現例とを例示する概略図を示す。
図1B~
図1Dは、限定としてではなく明確にするために提供される。
【0023】
図1Bは、いくつかの実施形態によって用いられる共同的な多変数最適化の概略図を示す。相互依存性を実現するために、実施形態は、マシンの状態軌道とマシンの周囲の環境の状態について必要とされる知識の量とを共同で、すなわち単一の単位多変数最適化の一部として、決定する。従って、いくつかの実施形態は、逐次最適化110および均衡な多変数最適化115を不均衡な多変数最適化117に置換える。
【0024】
それらの重要性の不均衡を実現するために、いくつかの実施形態は、状態軌道および環境の状態についての知識の量に関して多変数制約付き最適化を用いるが、この場合、環境の知識は制約に作用する。このように、環境の知識は制御目的に副次的なものとなる。なぜなら、制約に作用する知識の量が独立した最適化目的を有しておらず、マシンのために選択される制御コマンドを制限するだけであるからである。
【0025】
図1Cは、いくつかの実施形態に従った不均衡な多変数制約付き最適化によって用いられる制約の概略図を示す。いくつかの実施形態の目的は、マシンの状態軌道を最適化するのに必要な知識が不十分である場合にのみ感知命令を更新する、制御コマンドおよび所要の知識のこのような多変数制約付き最適化を提供することである。そのために、付加的または代替的には、取得された知識に制約を課すために、取得されるであろう知識に基づいてマシンの許容可能な状態に制約を課す必要があることが認識された。これらの許容可能な状態は、制御されたマシンの状態軌道の最適化の空間を管理し、これにより、取得された知識が不足しているために最適な軌道に到達できない場合にのみ、当該取得された知識を増やす必要性を生じさせる。このように、いくつかの実施形態は、相互作用制約120の構造を有する制約を定義することを目的とする。
【0026】
いくつかの実施形態では、環境は、環境の状態または環境状態として本明細書で言及されるその状態によって定義される。環境の状態は、制御されたマシンに対する影響の観点から、環境に関する全ての関連データを収集する。環境の状態は、複数の状態変数、例えば、制御されたマシンの周囲のエリアにおける占有グリッド、周囲環境における点および/または物体の動き、制御されたマシンが動作可能な空間の境界、環境内の物体とのマシンの許容される分離および相対速度、等を含み得る。環境の状態は、関連知識、入手可能な知識または取得された知識を取込む。取得された知識は、状態および制御入力の許容可能な値に対する制約に明確に変換することができる。しかしながら、多変数制約付き最適化の目的のために、環境についての入手可能な知識の量だけでなくこの知識の不足にも基づいて制約を定義する必要もある。何が未知であるかに基づいて制約を定義することは困難である。
【0027】
いくつかの実施形態は、状態および制御入力の許容可能な値に対する制約が2つの部分を含み得るという認識に基づく。第1の部分は、環境の現在の知識によって正に定義することができる。第2の部分は、正確な知識の不足を定義するので負の性質を有する。いくつかの実施形態は、第2の部分の負の性質を第1の部分に基づいて正の制限に変換することができるという認識に基づく。すなわち、未知のものを記述する第2の部分を有するのではなく、第2の部分は第1の部分の不確実性として正に定義することができる。このように、環境についての既知の知識および環境に関する未知の知識によって定義される制約を有するのではなく、いくつかの実施形態は、環境の知識によって定義される制約120と、環境の知識によって定義されたものに関する不確実性とを決定した。このような変換は、制約導出に適した方法で未知の知識を表わすことを可能にする。
【0028】
従って、いくつかの実施形態では、制約120は、環境の状態および環境の状態の不確実性を用いて確率的に定義される。例えば、既知の(すなわち取得された)知識が、制御されたマシンの許容可能な状態値の領域、または同等に、許容不可能な状態値の領域を定義するために用いられる場合、知識の不足による不確実性は、許容可能な値の領域を小さくすること、および/または許容不可能な値の領域を広げることによって、正に表わすことができる。このように、確率的制約120は知識の不確実性を反映することができる。
【0029】
この理解を用いて、いくつかの実施形態は、制約120および表現125を組合わせて確率的制約または機会制約127にする。制約127は様々な実装例を有し得る。例えば、制約127は、マシンの状態、環境の状態、および制御入力の相互作用の関数を、環境の状態の不確実性のメトリックの単調増加関数の負数によって制限するように実装することができる。
【0030】
図1Dは、いくつかの実施形態に従った不均衡多変数制約付き最適化によって最適化されるコスト関数の原理の概略図を示す。いくつかの実施形態は、マシン101の動作の原理が、ステージコスト133および終端コスト134を含むコスト関数130によって取込み可能であり、各々が、制御目的に対するマシンの状態の性能に比例する項と、環境の知識の量に比例する項とを含むという認識に基づく。いくつかの実施形態は、以前の制御目標に関連していなかったために情報が取得されていなかった以前に回避されたエリアでマシンが動作することが必要となる可能性があるので、環境の知識の量に比例する項をコスト関数内のステージコストおよび終端コストに含めることが、将来、制御の目的を変更する際に役立ち得るという認識に基づく。
【0031】
しかしながら、いくつかの実施形態は、不均衡制御を達成するために、コスト関数130が環境の状態に依存すべきではないという認識に基づく。そのために、いくつかの実施形態は、例えば、それらの重みをゼロに等しくすることによってコスト関数からステージコストおよび終端コストを除去するか、または、1つのシナリオもしくは2つのシナリオの組合わせにおいて取得された知識を改善することを可能にする特別な制約135を課すものである。第1のシナリオでは、コントローラは、制御目的を達成する性能に直接的な利益をもたらさない限り、環境の知識を改善する如何なるための労力も払わない。第2のシナリオでは、コントローラは、制御目的の達成を妨げない限り、環境の知識をさらに改善させ得る。
【0032】
例えば、いくつかの実施形態では、多変数制約付き最適化は、予測ホライズンに沿って得られる最適化された制御入力によって制御されるマシンの動作のステージコスト133と、予測ホライズンの終わりにおける終端条件に関連付けられた終端コスト134とを含むコスト関数130を最適化する。ステージコストおよび終端コストは各々、制御目的に応じたマシンの動作の性能に関する性能項と、環境の状態の不確実性に関する環境項とを含む。これらの項同士の間の均衡化は、各項を乗算する非負の重みによって得られる。例えば、均衡化を実行するために、コントローラは、制御目的の成就について予想される進行をチェックし、制御目的の成就が保証できない場合にはステージコストおよび終端コストの項の重みをゼロにするよう選択し、それ以外の場合、制御目的を満たすことを可能にするステージコストおよび終端コストの重みを選択することができる。いくつかの実装例では、今回の時間ステップについてのステージコストの制御項および終端コストの制御項を前回の時間ステップについての終端コストの制御項以下に維持したままで、今回時間ステップについてのステージコストの環境項および終端コストの環境項を前回の時間ステップでの終端コストについての環境項よりも小さくすることができれば、制御目的の成就が保証される。
【0033】
図2は、共同的であるが不均衡な最適化を達成するためにコントローラ102のいくつかの実施形態によって実行される多変数制約付き最適化のための方法のブロック図を示す。コントローラ102は、マシンの状態に基づいてマシンの周囲の環境を感知するとともに、センサの動作を制御する命令を感知する少なくとも1つのセンサから測定値215を取得し(210)、当該測定値を処理して(220)、環境の知識を取得し(225)、環境の状態および環境の状態の不確実性を推定する(227)ように構成される。
【0034】
次に、コントローラは、環境の状態および環境の状態の不確実性によって表わされる周囲環境の所望の知識237に基づいて定義される状態および制御入力の許容可能な値に対する制約を受ける制御入力のシーケンスと状態軌道を関連付けるマシンのダイナミクスのモデルの多変数制約付き最適化を解くことによって、マシンの状態軌道および環境の所望の知識237を定義するマシンへの制御入力のシーケンス235を共同で決定する(230)ように構成される。コントローラ102は、多変数制約付き最適化問題の解を用いて、制御入力235のシーケンスに基づいてマシンを制御し(240)、マシンの状態を変更し、環境の所望の知識237に基づいて感知命令を更新し(250)、更新された感知命令をセンサに提示する。
【0035】
例示的な構造構成要素
図3Aは、本開示のいくつかの実施形態の原理を採用するコントローラ312を含む車両311の概略図である。本明細書で用いる場合、車両311は、乗用車、バスまたはローバー等の任意のタイプの車輪付き車両であり得る。また、車両311は自律型または半自律型であり得る。例えば、いくつかの実施形態は車両311の動きを制御する。動きの例には、車両311の操舵機構313によって制御される車両の横運動が含まれる。操舵機構313はコントローラ312によって制御される。
【0036】
車両はまた、車両311のコントローラ312または他の構成要素によって制御可能なエンジン316を含み得る。車両311はまた、非限定的な例として、その現在の運動量および内部状態を感知するための1つ以上のセンサ315を含み得る。センサ315の例として、全地球測位装置(global positioning machine:GPS)、加速度計、慣性計測装置、ジャイロスコープ、軸回転センサ、トルクセンサ、たわみセンサ、圧力センサ、流量センサ等が含まれる。車両は、入力インターフェイス318を介して無線通信チャネルを通じてコントローラ312の通信能力を可能にするトランシーバ317を備え得る。車両は周囲環境を感知するための1つ以上のセンサ314a、314bを含む。センサ314a、314bの例として距離レンジファインダ、レーダ、ライダ、およびカメラがあり得る。代替的に、または同時に、周囲環境に関するセンサデータは、車両に対して遠隔に配置されたセンサ用のトランシーバ317を介して受信することができる。車両は、車両が動作するエリア内の道路に関するデータを格納する地図データベースマシンを備え得るか、または、トランシーバ317を介して遠隔に格納された地図データにアクセスし得る。
【0037】
この例では、車両311は制御されたマシン101であり、センサ314a、314bとトランシーバ317から情報を受信する任意の遠隔センサとはセンサ104であり、コントローラ312はコントローラ102であり、道路および他の車両は環境103である。
【0038】
図3Bは、いくつかの実施形態に従ったコントローラ102の計算プラットフォームのブロック図である。例えば、
図3Bは、一実施形態に従ったコントローラ312のブロック図を示す。コントローラ102は、メモリ302、例えば、非一時的なコンピュータ可読媒体、に接続されたハードウェアプロセッサ301を含む。いくつかの実装例では、メモリ302は、マシン101に関するデータを格納するための第1のセクション321と、マシンの制御を計算するための制御ユニット112のプログラムを格納するための第2のセクション322と、環境103に関するデータを格納するための第3のセクション323と、センサ104からのデータから環境に関するデータ111を抽出するためのプログラムを格納するための第4のセクション324とを含む。
【0039】
例えば、メモリ302の第1のセクション321は、最大加速度および最大速度等のマシン挙動についてのパラメータ、ならびにマシンのモデルおよびマシンに関する目標を格納することができる。車両311に対するコマンドを計算するためにプロセッサ301によって実行可能なプログラムをメモリ302の第2のセクション322上に具現化することができる。
【0040】
さらに
図3Bを参照すると、メモリ302の第3のセクション323は、環境に関するデータ、例えば、許可された動作空間および他のエージェントの存在、許可された相互作用、ならびに、更新された情報および環境内の要素のために入手可能な情報の履歴量等を含む。メモリ302の第4のセクション324には、車両311内のセンサ314a、314bおよびトランシーバ317を介して通信する遠隔センサから得られた情報を処理するためにプロセッサ301によって実行可能なプログラムを具現化することができる。
【0041】
プロセッサ301は、計算を実行することができる任意の計算デバイスであり得るとともに、同じタイプまたは異なるタイプの1つまたは多数の物理的デバイスを含み得る。プロセッサ301は、複数の計算デバイス、例えばマイクロプロセッサ、を含み得る可能性がある。同様に、メモリ302は、データを格納できる任意の論理メモリおよび/または非一時的なコンピュータ可読記憶媒体であり得るとともに、同じタイプまたは異なるタイプの1つ以上の物理データ格納手段を含み得る。プロセッサ301によって実行される計算は、メモリの第2のセクション322および第4のセクション324に格納されたプログラムによって命令されるとともに、メモリの第1のセクション321および第3のセクション323に格納されたマシンデータと、センサ315、314a、314bおよびトランシーバ317から得られるデータとを用いる。プロセッサ301の計算により、結果として、マシン101の状態を変更するコマンド304が得られる。
【0042】
例示的な制御目的
いくつかの実施形態は、マシン101が、未知であるが感知により取得される情報を通じて発見される環境で動作する場合、それ自体が、適用されるコマンドに関連しているという認識に基づく。例えば、
図4A、
図4Bは、車両311が現在の車線411に留まるかまたは左車線412に変更するかを決定しなければならない場合のシナリオを示す。コントローラが
図4Aの軌道413を選択する場合、先行車両416が存在しているので、センサ視野414、415は、現在の車線上においてさらに前方にある車両417についての情報を捕捉することができるが、左車線上において前方にある車両418についての情報は捕捉できない。車両が
図4Bの軌道423を選択する場合、先行車両416が存在しているので、センサ視野414、415は、現在の車線上においてさらに前方にある車両417に関する情報を捕捉することはできないが、左車線上において前方にある車両418に関する情報を捕捉することができる。従って、軌道413は、現在の車線上の他の車両に関するより多くの情報を取得することを可能にし、軌道423は、左車線上の車両に関するより多くの情報を取得することを可能にする。しかしながら、制御コマンドは環境についての入手可能な知識にも依存する。従って、車線を変更することが所望される場合、左車線上において前方にある車両418に関する知識が不足していれば、そのような車線上の車両の位置が不確実であるので、車両を左車線412に変更するための軌道をコントローラが安全に計画することができなくなる可能性がある。従って、制御コマンドは環境に関する入手可能な知識に影響を及ぼし、環境に関する知識の入手可能性は制御コマンドに影響を及ぼす。
【0043】
従って、目標の達成および環境の知識の取得が可能となるように制御コマンドを選択する必要があり得る。しかしながら、これら2つの目的は競合し合う可能性がある。
図5Aは、車両311が目標位置511に到達しなければならず、2つの障害物512、513が存在するシナリオを示す。車両311は、障害物512、513と衝突することなく目標位置511に到達する制御目的を有する。障害物の位置は正確には分かっていないので、センサからの情報を用いずに、車両がエリア514、515を避け得るように、衝突を回避するための追加の安全マージンを取っておく必要があるかもしれない。この結果、安全マージン514により、必要以上に障害物512から遠く離れたままの軌道516が計画されることとなる。しかしながら、障害物位置に関する追加の知識の感知を用いることができるので、安全マージン514、515のサイズを小さくすることができる。
【0044】
例えば、軌道526を計画するための
図5Bでは、範囲527を有するセンサは、障害物514に関するより多くの情報を取得することができ、結果として、回避されるべき安全マージンエリア524がより小さくなる。このようにして、目標までの軌道はより直線になる。しかしながら、環境に関する知識を取得する目標が目標位置に到達する目標と等しく取扱われる場合、制御コマンドは、安全マージン515を535にまで小さくするように障害物513をセンサ範囲527内に導くために、直線から目標位置511へと逸れていく
図5Cの軌道536を生成する可能性がある。しかしながら、これでは目標を達成する際の性能が改善されず、逆に性能が損なわれ、結果として軌道の直線性が低下してしまう。実際には、マシンは、目標511の達成さえも妨げられる可能性があり、目標に近いが目標ではない中間位置538で停止してしまう可能性もあるが、そこから障害物513に関する情報を取得し続けることができる。
【0045】
従って、いくつかの実施形態は、相互依存的であるが不均衡な制御および知識取得を用いる。この場合、環境に関する知識の取得が制御目標を達成することに等しいとは見なされないが、むしろ環境に関する知識の取得とこれにより環境に関する不確実性の低減とがマシン目標の達成に対して副次的なものであり、これが主にそのような目標をより適切に達成するために実行されると見なされる。本開示では、環境に関する知識の量は、マシンの動作を制限する制約に含まれており、より多くの知識はより小さい安全マージン、すなわち、より許容可能な制約に対応する。従って、マシンに関してより多くの知識を取得することにより、制約の安全マージンが小さくなり、マシンが目標に到達するためにより許容可能な軌道を有することが可能となる。しかしながら、軌道526を計画するためにマージン514を524にまで小さくする等のために、マージンを小さくすることで目標までのより適切な軌道が提供される場合にのみ、軌道は、環境に関するより多くの情報を取得するように計画される。代わりに、軌道526を計画するためにマージン515を535にまで小さくする等のために、知識を増やした後にマージンを減らしても目標までの適切な軌道が提供されない場合、軌道は、環境に関するより多くの情報を取得しようと試みることはない。
【0046】
【0047】
【0048】
【0049】
【0050】
いくつかの実施形態は、コントローラが、環境またはその部分に関してセンサによって取得される知識の量を変更する感知命令をセンサに提供し得るという認識に基づく。例えば、環境の特定のエリアの知識は、マシンの状態を変更することなく、センサの焦点を関心エリアに合わせることによって取得することができる。しかしながら、センサの焦点をどこに合わせるかを決定してもマシンの状態は変化しない。結果として、いくつかの実施形態は、マシンの状態の変化に影響を及ぼさないが環境またはその部分に関して取得された知識の量にのみ影響を及ぼす制御入力を定義し、それらを制御コマンドの最適化に含める。
【0051】
【0052】
従って、いくつかの実装例では、制御入力によって定義されるコマンドのセットは、環境から取得される知識の量を変更する一方でマシンの状態に影響を及ぼさない感知命令に関連するコマンドを含む。
【0053】
【0054】
【0055】
【0056】
【0057】
このように、環境の状態の不確実性は、取得された環境の知識の逆数であり、状態および制御入力の許容可能な値に課される制約は、相互作用することが許可された変数の相互作用制約を含み、当該変数は、マシンの状態、環境の状態、および制御入力を含み、このため、多変数制約付き最適化は、環境の状態の不確実性がある状態で相互作用制約を満たすように提示される。
【0058】
【0059】
【0060】
【0061】
【0062】
予測子(11a)および(11b)における不確実性はマシンの状態およびコマンドに依存するので、マシンの状態軌道を決定するコマンドと、マシンの周囲の環境の状態について必要とされる知識の量とは相互依存的である。
【0063】
【0064】
いくつかの実施形態は、制御入力の状態の許容可能な値に対する制約が、環境の状態の現在の知識およびそのような知識に対する不確実性という2つの部分として区分できる場合、そのような表現は、環境の現在の知識または取得された知識を表わす平均および環境の知識の不確実性を表わす分散を伴う確率的制約によって有利に取込むことができるという認識に基づく。そのような確率的表現は、反復多変数制約付き最適化における様々な確率的技術の使用を可能にする。従って、制御ユニットは、予測された環境の状態およびその不確実性から相互作用制約(9)を構築する(613)。
【0065】
【0066】
例えば、環境の状態は第1のモーメントであり、環境の不確実性は、環境の状態の推定値の確率分布の第2のモーメントであり、このため、第2のモーメントの単調増加関数は相互作用制約を満たすための信頼度を定義する。
【0067】
【0068】
不確実性依存の緊密な相互作用制約(12)は予測された不確実性に依存するので、マシンの周囲の環境の状態について取得された知識とマシンの状態軌道を決定するコマンドとは相互依存的である。
【0069】
予測子(11a)および(11b)における不確実性はマシン状態およびコマンドに依存するので、マシンの状態軌道を決定するコマンドとマシンの周囲の環境の状態について必要な知識の量とは相互依存的である。
【0070】
【0071】
【0072】
【0073】
【0074】
このように、環境の状態およびその不確実性に対する制約を表わす確率的性質は以下の考慮事項を含む。第1に、制約は、第1の部分および第2の部分を含み、第1の部分は、周囲環境について取得された知識から決定された状態の許容不可能な値を定義し、第2の部分は、第1の部分に関連する知識における不確実性に基づいて状態の追加の許容不可能な値を定義し、このため、第1の部分および第2の部分をともに含む制約は確率的制約として多変数制約付き最適化に課されることとなる。
【0075】
第2に、2つの部分から構成されるように制約をフレーミングすることにより、追加の許容不可能な状態値をパスすることが状態軌道を最適化するために有益であり得るかどうかをコントローラが評価することが可能となる。例えば、取得された知識によって定義される第1の部分は、変更されない可能性のある許容不可能な値を確実に指定する。例えば、この制約に違反すると、結果として、付近の車両との衝突、歩行者との衝突、または車両が走行する道路の側面への衝突が起こる可能性がある。しかしながら、状態の追加の許容不可能な値は、潜在的に入手可能であり得るとともに、より多くの情報または知識が取得される場合には再計算され得る。そのために、コントローラは、追加の許容不可能な状態値に関する知識によって追加の許容不可能な状態値を潜在的に小さくして状態軌道を改善させ得る場合、当該知識をより多く取得することを決定し得る。
【0076】
第3に、制御入力の状態の許容可能な値に対する制約を、環境の状態の現在の知識およびそのような知識に対する不確実性という2つの部分として区分することができる場合、そのような表現は、環境の現在の知識を表わす平均および環境の知識の不確実性を表わす分散を伴う確率的制約によって有利に捕捉することができる。そのような確率的表現は、反復的な多変数制約付き最適化における様々な確率的技術の使用を可能にする。
【0077】
例えば、環境の状態が第1のモーメントであり、環境の不確実性が環境の状態の推定値の確率分布の第2のモーメントである場合、第2のモーメントの単調増加関数が相互作用制約を満たすための信頼度を定義するようにする。この文脈においては、環境の状態の推定値の確率分布の第2のモーメントの単調増加関数は、環境の状態に対する相互作用制約の感度と、環境の状態の確率分布および相互作用制約を満たすための所望の信頼度から計算される係数とに基づく。
【0078】
【0079】
図9Bは、制約(9)が満たされる領域を補完するものである許容不可能な領域を構築するステップ951と、第1の追加の許容不可能な領域911を構築するステップ952と、第2の追加の許容不可能な領域921を構築するステップ952と、最後に、すべての許容不可能な領域901、911、921を補完するものである不確実性依存の緊密な相互作用制約(12)を構築するステップ953とによって、不確実性依存の緊密な相互作用制約を構築するステップを示す。
【0080】
従って、いくつかの実施形態は、環境の知識に基づいて、マシン状態の状態と環境の状態との値の組合わせによって記述される空間内の許容可能な領域を決定し、環境の状態の不確実性および環境の状態に対する制約の感度に基づいて低減係数を決定する。次に、実施形態は、環境の状態の不確実性の分布の形状と、制約を満たすための所望の信頼度とに基づいて低減係数を修正し、修正された低減係数に基づいて、マシン状態の状態と環境の状態との値の組合わせによって記述される空間内の許容可能な領域を小さくし、許容可能な領域を、制御されているマシンの状態および制御入力に関する制約に変換する。
【0081】
このように、環境の状態に対応する状態および制御入力の許容可能な値は、環境の状態に対する相互作用制約の感度に基づいて低減される。付加的または代替的には、環境の状態に対応する状態および制御入力の許容可能な値の範囲は、環境の状態の不確実性の単調増加関数に基づいて低減される。
【0082】
例示的な最適化技術
いくつかの実施形態は、取得された知識が2つのシナリオのうちの1つまたは2つのシナリオの組合わせにおいて改善され得るという認識に基づく。第1のシナリオでは、コントローラは、制御目的を達成する性能に直接的な利益をもたらさない限り、環境の知識を改善するための如何なる努力も行わない。第2のシナリオでは、コントローラは、制御目的の達成を妨げない限り、依然として環境の知識を改善し得る。
【0083】
いくつかの実施形態は、制御目的に対するマシンの状態の性能に比例する項と、環境の知識の量に比例する項とを各々が含むステージコストおよび終端コストを含めることによって、上記2つのシナリオを均衡化させることができ、この均衡化は各項を乗算する非負の重みによって得られるという認識に基づく。いくつかの実施形態は、以前の制御目的に関連していなかったために情報が取得されていなかった以前に回避されたエリアでマシンを動作させることが必要となる可能性があるので、環境の知識の量に比例する項をコスト関数におけるステージコストおよび終端コストに含めることは将来において制御目的が変更される場合に役立ち得るという認識に基づく。
【0084】
【0085】
このように、コスト関数は、予測ホライズンに沿って得られる制御決定のシーケンスによって予測ホライズンに沿って被るコストを計算するステージコストと、予測ホライズンの終わりにおける終端条件に関連付けられたコストを計算する終端コストとを含む。この場合、ステージコストおよび終端コストの各々は、制御目的に対するマシンの状態の性能に関連する1つの項と、環境の知識の量に比例する項とを含み、これらの項間の均衡化は各項を乗算する非負の重みによって得られる。
【0086】
【0087】
【0088】
【0089】
【0090】
【0091】
従って、いくつかの実施形態では、コスト関数は、予測ホライズンに沿って行われる制御決定のシーケンスによって予測ホライズンに沿って被るコストを計算するステージコストと、予測ホライズンの終わりにおける終端条件に関連付けられたコストを計算する終端コストとを含む。ここで、ステージコストおよび終端コストの各々は、制御目的に対するマシンの状態の性能に関連する1つの項と、環境の知識の量に比例する項とを含み、これらの項間の均衡化は、各項を乗算する非負の重みによって得られる。
【0092】
一実施形態は、可能な限り信頼性が高い場合に第2のシナリオを選択する。そのために、当該実施形態は、第2のシナリオに従って制御目的に向かって進行することを保証することが不可能であるかまたは少なくとも保証する可能性が低い場合にのみ第1のシナリオを選択する。従って、この実施形態では、コントローラは、制御目標に向かう予想される進行の条件の成就についてチェックし、条件が満たされることが保証できない場合には状態および終端コストの環境項の重みをゼロになるように選択し、そうでない場合、条件を満たすように状態および終端コストの不確実性の重みを選択する。予想される進行の条件は、過去の終端コストの環境における不確実性に関連する項よりも小さく1に等しいホライズンの場合には、環境内の不確実性に関連する終端コストの次の項と環境内の不確実性に関連するステージコストの項との比較に基づいている。
【0093】
従って、いくつかの実施形態の
図6に従うと、制御ユニットは、
図8のステップに従ってコスト関数を構築する(614)。制御ユニットは、マシン目標から、当該マシン目標に対応する制御目的状態、制御目的コマンド、および環境不確実性目的を構築する(801)。例えば、環境不確実性目的は、マシン状態およびコマンドがマシン目標を達成するものに固定される場合、環境状態の分布の第2のモーメントのための均衡を決定するリアプノフ(Lyapunov)方程式を解くことによって計算することができる。
【0094】
【0095】
【0096】
【0097】
【0098】
次いで、制御ユニットは次のサイクルまで待機する(618)。
【0099】
【0100】
本発明の上述の実施形態は、多数の方法のうちのいずれかで実装することができる。たとえば、実施形態は、ハードウェア、ソフトウェア、またはそれらの組合せを用いて実装され得る。ソフトウェアで実装される場合、ソフトウェアコードは、単一のコンピュータで提供されるかまたは複数のコンピュータ間で分散されるかにかかわらず、任意の好適なプロセッサまたはプロセッサの集合上で実行することができる。このようなプロセッサは、集積回路構成要素中の1つ以上のプロセッサとともに集積回路として実装され得る。しかし、プロセッサは、任意の好適なフォーマットの回路を用いて実装されてもよい。
【0101】
また、本明細書で概説される様々な方法またはプロセスは、様々なオペレーティングシステムまたはプラットフォームのいずれか1つを採用する1つ以上のプロセッサ上で実行可能なソフトウェアとしてコード化され得る。加えて、このようなソフトウェアは、いくつかの好適なプログラミング言語および/またはプログラミングもしくはスクリプトツールのうちのいずれかを用いて書かれてもよく、フレームワークまたは仮想マシン上で実行される実行可能なマシン言語コードまたは中間コードとしてコンパイルされてもよい。典型的には、プログラムモジュールの機能は、様々な実施形態において所望されるとおりに組合わされてもよく、または分散させてもよい。
【0102】
また、当該実施形態は方法として具現化されてもよく、その例が上記にて提供されてきた。方法の一部として実行される動作は、任意の好適な方法で順序付けられてもよい。従って、例示した順序とは異なる順序で動作が実行される実施形態が構成されてもよく、これは、例示的な実施形態では連続的な動作として示されているが、いくつかの動作を同時に実行することを含み得る。
【0103】
本発明を好ましい実施形態の例として説明してきたが、本発明の精神および範囲内で様々な他の適応および修正を行うことができることを理解されたい。従って、添付の特許請求の範囲の目的は、本発明の真の精神および範囲内に収まるすべてのそのような変形および修正を網羅することである。