IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ メイ モビリティー,インコーポレイテッドの特許一覧

特許7610713自律車両安全プラットフォームシステム及び方法
<>
  • 特許-自律車両安全プラットフォームシステム及び方法 図1
  • 特許-自律車両安全プラットフォームシステム及び方法 図2
  • 特許-自律車両安全プラットフォームシステム及び方法 図3A
  • 特許-自律車両安全プラットフォームシステム及び方法 図3B
  • 特許-自律車両安全プラットフォームシステム及び方法 図4
  • 特許-自律車両安全プラットフォームシステム及び方法 図5
  • 特許-自律車両安全プラットフォームシステム及び方法 図6
  • 特許-自律車両安全プラットフォームシステム及び方法 図7
  • 特許-自律車両安全プラットフォームシステム及び方法 図8
  • 特許-自律車両安全プラットフォームシステム及び方法 図9A
  • 特許-自律車両安全プラットフォームシステム及び方法 図9B
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-24
(45)【発行日】2025-01-08
(54)【発明の名称】自律車両安全プラットフォームシステム及び方法
(51)【国際特許分類】
   B60W 40/02 20060101AFI20241225BHJP
   B60W 60/00 20200101ALI20241225BHJP
   B60W 30/09 20120101ALI20241225BHJP
   G08G 1/16 20060101ALI20241225BHJP
【FI】
B60W40/02
B60W60/00
B60W30/09
G08G1/16 C
【請求項の数】 19
(21)【出願番号】P 2023535660
(86)(22)【出願日】2021-12-14
(65)【公表番号】
(43)【公表日】2023-12-26
(86)【国際出願番号】 US2021063315
(87)【国際公開番号】W WO2022132774
(87)【国際公開日】2022-06-23
【審査請求日】2023-08-07
(31)【優先権主張番号】63/125,304
(32)【優先日】2020-12-14
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521106164
【氏名又は名称】メイ モビリティー,インコーポレイテッド
【氏名又は名称原語表記】MAY MOBILITY,INC.
(74)【代理人】
【識別番号】110001302
【氏名又は名称】弁理士法人北青山インターナショナル
(72)【発明者】
【氏名】イエ,ジェイソン
(72)【発明者】
【氏名】カヴィッキオ,ジョン
(72)【発明者】
【氏名】タメズ,アンドレス
(72)【発明者】
【氏名】ルチェロ,ジェイコブ
(72)【発明者】
【氏名】テスマー,ジャスティン
(72)【発明者】
【氏名】ガンドラ,アヌシュ
(72)【発明者】
【氏名】ルアン,ヤクシン
【審査官】吉村 俊厚
(56)【参考文献】
【文献】特表2020-509963(JP,A)
【文献】特開2018-144720(JP,A)
【文献】国際公開第2018/134901(WO,A1)
【文献】特開2009-078735(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00 - 60/00
G08G 1/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
車両の自律フォールバック方法であって、
・自律車両に搭載されたセンサスイートからのセンサデータと、前記自律車両の自車両状態とを含む入力データを受信するステップと、
・前記入力データに基づいて
-自律コンピューティングシステムで一次計画を決定するステップと、
前記自律コンピューティングシステムで二次計画を決定するステップであって、
・ナビゲーショナルエッジ候補のセットを決定すること、
・ナビゲーショナルエッジ候補を利用可能であると分類すること、並びに、
・ナビゲーショナルエッジを利用可能であると分類することに基づいて、前記自車両状態及びナビゲーショナルエッジ候補に基づいて二次計画を生成することを含む、ステップと、
・前記二次計画を、組込みコントローラに結合されたメモリに記憶するステップと、
・前記一次計画に基づいて車両を自律的に制御するステップと、
・前記一次計画に基づいて車両を自律的に制御している間に、トリガ条件の充足を判定し、それに応じて、前記組込みコントローラで前記二次計画に基づいて車両を自律制御するステップとを備え、
前記組込みコントローラが、前記自律コンピューティングシステム及び車両通信ネットワークに通信可能に接続された低レベル安全プラットフォーム内にあることを特徴とする方法。
【請求項2】
請求項1に記載の方法において、
前記一次計画に基づいて車両を制御している間に、前記二次計画の期限切れ条件の充足に基づいて前記二次計画を更新するステップをさらに含むことを特徴とする方法。
【請求項3】
請求項1に記載の方法において、
前記二次計画に基づいて前記車両を制御している間に、
・オドメトリを使用して自車両の姿勢を推定するステップと、
・前記自車両の姿勢に基づいて、二次センサのセットにより、前記二次計画に対応する車両の経路に沿って障害物を検出するステップと、
・障害物の検出に基づいて、完全停止を実行するステップとをさらに含むことを特徴とする方法。
【請求項4】
請求項3に記載の方法において、
前記二次センサのセットが、車両センサスイートの飛行時間センサを含むことを特徴とする方法。
【請求項5】
請求項1に記載の方法において、
利用可能である状態の分類が、マップに基づくものであることを特徴とする方法。
【請求項6】
請求項1に記載の方法において、
前記入力データが、エージェントのセットを識別する環境表現を含み、前記利用可能である状態の分類が、前記セットの各エージェントに対応する占有予測に基づくものであることを特徴とする方法。
【請求項7】
請求項6に記載の方法において、
各エージェントが、計画範囲内で静止していると仮定されることを特徴とする方法。
【請求項8】
請求項1に記載の方法において、
利用可能である状態の分類が、自車両の寸法及び最小通過クリアランスの充足に基づくものであることを特徴とする方法。
【請求項9】
請求項1に記載の方法において、
前記ナビゲーショナルエッジ候補のセットが、自車両位置に対する距離の予め設定されたセットで決定されることを特徴とする方法。
【請求項10】
請求項1に記載の方法において、
衝突制約、運動学的制約及び最小距離制約のうちの少なくとも1つに基づいて、複数の利用可能なナビゲーショナルエッジのなかからナビゲーショナルエッジを選択するステップをさらに含むことを特徴とする方法。
【請求項11】
請求項1に記載の方法において、
前記トリガ条件が、前記自律コンピューティングシステムと検証エンドポイントとの間の通信を失うことを含むことを特徴とする方法。
【請求項12】
請求項11に記載の方法において、
前記検証エンドポイントが、車両通信ネットワークノードを含むことを特徴とする方法。
【請求項13】
請求項に記載の方法において、
前記一次計画に基づいて車両を自律制御することが、前記低レベル安全プラットフォーム及び前記車両通信ネットワークを介して車両制御システムに軌道を提供することを含むことを特徴とする方法。
【請求項14】
自律車両のためのシステムであって、
・車両センサの第1のセットに通信可能に結合された第1のコンピューティングシステムであって、
-前記車両センサの第1のセットからの測定値に基づいて、自車両状態推定及び環境表現を決定し、
-前記自車両状態推定及び環境表現に基づいて、一次計画を決定し、且つ、
-二次計画を決定するように構成され、この二次計画を決定することが、
・ナビゲーショナルエッジのセットを決定すること、
・ナビゲーショナルエッジを利用可能な状態として分類すること、並びに、
・利用可能な状態としてのナビゲーショナルエッジの分類に応じて、前記自車両状態及びナビゲーショナルエッジに基づいて二次計画を生成することを含む、第1のコンピューティングシステムと、
・組込みコントローラを含む第2のコンピューティングシステムであって、
-前記第1のコンピューティングシステムから前記二次計画を受信し、
-前記組込みコントローラのメモリに前記二次計画を記憶し、且つ、
-トリガ条件の充足の判定に応答して、前記組込みコントローラ及びセンサの第2のセットを使用して、前記二次計画に基づいて車両の制御を支援するように構成された第2のコンピューティングシステムとを備え、
前記組込みコントローラが、前記第1のコンピューティングシステム及び車両通信ネットワークに通信可能に接続された低レベル安全プラットフォーム内にあることを特徴とするシステム。
【請求項15】
請求項14に記載のシステムにおいて、
前記第2のコンピューティングシステムが、車両通信ネットワークを介して車両制御システムに一次軌道を選択的に中継することにより、前記一次計画に基づいて車両の制御を支援することを特徴とするシステム。
【請求項16】
請求項14に記載のシステムにおいて、
前記第1のコンピューティングシステムが、前記一次計画に基づいて車両が制御されている間に、前記二次計画の期限切れ条件の充足に基づいて前記二次計画を更新するようにさらに構成されていることを特徴とするシステム。
【請求項17】
請求項14に記載のシステムにおいて、
前記二次計画に基づいて車両の制御を支援することが、
・オドメトリを使用して自車両の姿勢を推定すること、
・前記センサの第2のセットにより、前記自車両の姿勢に基づいて軌道に沿った障害物を検出すること、並びに、
・障害物の検出に基づいて完全停止の実行を支援することを含むことを特徴とするシステム。
【請求項18】
請求項14に記載のシステムにおいて、
前記入力データが、エージェントのセットを識別する環境表現を含み、前記利用可能である状態の分類が、前記セットの各エージェントに対応する占有予測に基づくものであり、各エージェントが、計画範囲内で静止していると仮定されることを特徴とするシステム。
【請求項19】
請求項14に記載のシステムにおいて、
利用可能である状態の分類が、自車両の寸法及び最小通過クリアランスの充足に基づくものであることを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、自律車両の分野に関し、より具体的には、自律分野における自律車両動作のための新規且つ有用なシステム及び方法に関する。
【0002】
関連出願に対する相互参照
本願は、2020年12月14日に出願された米国仮出願第63/125,304号の利益を主張するものであり、その全体がこの引用により本明細書に援用されるものとする。
【背景技術】
【0003】
自律車両の分野における最近の多くの進歩にも関わらず、自動グレードとみなされる、故障し難い自律車両用のコンピュータを有することは、未だ実現されていない。コンピューティングシステムは自律車両の動作に不可欠であるため、コンピューティングシステムの故障は致命的なものとなり得る。
【0004】
高レベル安全プラットフォーム(例えば、自律車両の計画モジュール内)は、最小リスク状態を保証することができるコンピューティングシステムにより、バックアップ軌道を作成及び実施することができるが、コンピューティングシステムが車両の制御システムとの通信を失った場合、且つ/又は他の緊急シナリオに遭遇した場合に、それらは本質的に役に立たなくなる。
【0005】
このため、自律車両の分野では、改善された有用な低レベル安全プラットフォームシステム及び方法を作成する必要性がある。
【図面の簡単な説明】
【0006】
図1図1は、低レベル安全プラットフォームシステムの一態様の概略図である。
図2図2は、車両の低レベル安全動作を実行するための方法の一態様の概略図である。
図3図3A及び図3Bはそれぞれ、車両の低レベル安全動作を実行するための方法の一態様において、システム間で交換される入力及び出力のセットの第1及び第2の概略的な一態様である。
図4図4は、環境における車両の概略的な一態様である。
図5図5は、低レベル安全プラットフォームシステムの一態様の概略図である。
図6図6は、システムの一態様におけるフォールバックプランナの一態様の概略図である。
図7図7は、低レベル安全プラットフォームシステムの一態様の概略図である。
図8図8は、車両の低レベル安全動作を実行するための方法の一例の概略図である。
図9図9A及び図9Bは、それぞれナビゲーショナルエッジの安全状態識別基準の第1及び第2の概略例である。
【発明を実施するための形態】
【0007】
本発明の好ましい実施形態の以下の説明は、本発明をそれらの好ましい実施形態に限定することを意図するものではなく、当業者が本発明を製造及び使用できるようにすることを意図している。
【0008】
1.概要
図1に示すように、自律車両動作のためのシステム100は、低レベル安全プラットフォーム130を含む。追加又は代替として、システム100は、任意選択的に、自律エージェント102、センサシステム、コンピューティングシステム120、車両通信ネットワーク140、車両制御システム150及び/又は任意の適切なコンポーネントのうちのいずれか又はすべてを含み、且つ/又はそれらと連携することができる。任意のセンサシステムは、センサスイート110、通信インタフェース160、インフラストラクチャデバイス170のセット、及びテレオペレータプラットフォーム180を含むことができる。しかしながら、システム100は、他の任意の追加コンポーネントを含むことができる。
【0009】
さらに追加又は代替として、システム100は、2019年7月17日に出願された米国出願第16/514,624号(米国特許第10,564,641号)、2019年7月8日に出願された米国出願第16/505,372号(米国特許第10,614,709号)、2019年8月14日に出願された米国出願第16/540,836号、並びに、2020年2月17日に出願された米国出願第16/792,780号のいずれか又はすべてに記載のコンポーネントのいずれか又はすべてを含むことができ、それら出願の各々は、この引用によりその全体が本明細書中に援用されるものとする。
【0010】
システム100は、方法S200に従って、自律エージェントにおけるフォールバック計画及び/又は実行を支援するように機能する。追加又は代替として、システムは、一次(自律)動作モードとフォールバック動作モードとの間で自律エージェントを移行させるように機能することができる。より好ましくは、システム100は、車両のコンピューティングシステム(例えば、自律コンピューティングシステム)が故障し、且つ/又は(例えば、車両の制御システムや、車両のドライブバイワイヤアクチュエータのようなアクチュエータなどとの)通信能力を喪失した場合に、車両の動作(例えば、安全動作、最適動作、所定のルートに沿った動作など)を可能にするように機能することができる。しかしながら、システムは、他の方法で適切に機能することもできる。
【0011】
図2に示すように、自律車両動作のための方法S200は、入力のセットを決定するステップS210と、入力のセットのいずれか又はすべてを記憶するステップS220と、入力のセットに基づいて自律エージェントの動作を支援するステップS230とを含む。
【0012】
さらに追加又は代替として、方法200は、2019年7月17日に出願された米国出願第16/514,624号(米国特許第10,564,641号)、2019年7月8日に出願された米国出願第16/505,372号(米国特許第10,614,709号)、2019年8月14日に出願された米国出願第16/540,836号、並びに、2020年2月17日に出願された米国出願第16/792,780号のいずれか又はすべてに記載のプロセスのいずれか又はすべて、あるいは任意の順序で実行される他の任意の適切なプロセスを含むことができ、それら出願の各々は、この引用によりその全体が本明細書中に援用されるものとする。方法200は、上述したシステム100及び/又は他の任意の適切なシステムで実行することができる。
【0013】
1.1 実施例
実施態様では、方法S200は、記憶した入力を取得するステップ、入力を選択及び/又は検証するステップ、コンピューティングシステムとの通信が存在する場合に、第1の軌道(同等に、ここでは一次軌道という)を通信ネットワークに送信するステップ、コンピューティングシステムとの通信が失われた場合に、第2の軌道(同等に、ここでは二次軌道という)を通信ネットワークに送信するステップ、及び/又は任意の適切な順序で実行される他の適切な1又は複数のプロセスのいずれか又はすべてを含むことができる。
【0014】
実施態様の一セットでは、車両のための自律フォールバック方法が、自律車両に搭載されたセンサスイートからのセンサデータ及び自律車両の自車両状態を含む入力データを受信するステップと、入力データに基づいて、自律コンピューティングシステムで一次計画を決定するステップと、二次計画を決定するステップであって、ナビゲーショナルエッジ候補のセットを決定すること、ナビゲーショナルエッジ候補を利用可能であると分類すること、及びナビゲーショナルエッジを利用可能であると分類した場合に、自車両状態及びナビゲーショナルエッジ候補に基づいて二次計画を生成することを含むことができる、二次計画を決定するステップと、組込みコントローラに結合されたメモリに二次計画を記憶するステップと、一次計画に基づいて車両を自律制御するステップと、一次計画に基づいて車両を自律制御している間に、トリガ条件の充足を判定し、それに応答して、組込みコントローラにより二次計画に基づいて車両を自律制御するステップとを含むことができる。
【0015】
いくつかの態様では、自律フォールバック方法が、一次計画に基づいて車両を制御している間に、二次計画の期限切れ条件の充足に基づいて二次計画を更新するステップをさらに含むことができる。
【0016】
いくつかの態様では、自律フォールバック方法が、二次計画に基づいて車両を制御している間に、オドメトリを使用して自車両の姿勢を推定するステップと、二次センサのセットを使用して自車両の姿勢に基づいて、二次計画に対応する車両の経路に沿って障害物を検出するステップと、障害物の検出に基づいて完全停止を実行するステップとをさらに含むことができる。一例では、二次センサのセットが、車両センサスイートの飛行時間センサを含むことができる。
【0017】
自律フォールバック方法のいくつかの態様では、利用可能な状態の分類が、マップに基づくことができる。
【0018】
自律フォールバック方法のいくつかの態様では、入力データが、(例えば、自己エージェントの環境内の)エージェントのセットを識別する環境表現を含み、利用可能な状態の分類が、セットの各エージェントに対応する占有予測に基づくものとなる。一例では、各エージェントが、計画範囲内で静止していると仮定される。別の例では、エージェントのいずれか又はすべてが、計画範囲で動的に移動していると仮定される。
【0019】
自律フォールバック方法のいくつかの態様では、利用可能な状態の分類が、自車両の寸法と最小通過クリアランスの充足とに基づくものとなる。追加又は代替の態様では、利用可能な状態の分類が、自車両と状態(例えば、状態に関連するナビゲーショナルエッジ)との間の近隣車両の存在又は予測される存在に基づくものとなる。
【0020】
自律フォールバック方法のいくつかの態様では、ナビゲーショナルエッジ候補のセットが、自車両の位置に対する距離の所定のセットで決定される。
【0021】
いくつかの態様では、自律フォールバック方法が、衝突制約、運動学的制約及び最小距離制約のうちの少なくとも1つに基づいて、複数の利用可能なナビゲーショナルエッジのなかからナビゲーショナルエッジを選択するステップをさらに含むことができる。
【0022】
自律フォールバック方法のいくつかの態様では、トリガ条件が、自律コンピューティングシステムと検証エンドポイントとの間の通信の喪失である。一例では、検証エンドポイントが、通信ネットワークノードである。
【0023】
自律フォールバック方法のいくつかの態様では、組込みコントローラが、自律コンピューティングシステム及び車両通信ネットワークに通信可能に接続された低レベル安全プラットフォーム内にある。一例では、一次計画に基づいて車両を自律制御することが、低レベル安全プラットフォーム及び車両通信ネットワークを介して(例えば、図6及び図7に示すような車両制御インタフェースを介して)車両制御システムに軌道を提供することを含む。代替的には、一次軌道が、低レベル安全プラットフォームを経由することなく、車両制御システムに提供される。
【0024】
2.利点
自律車両安全プラットフォームシステム及び方法は、現在のシステム及び方法に比べていくつかの利点をもたらすことができる。
【0025】
第一に、本技術の態様は、エージェントの(自律)コンピューティングシステムが故障し、且つ/又は自律エージェントの他のコンポーネントとの通信が失われたとしても、その環境を通ってナビゲートする自律エージェントの安全性を高めることができる。具体的な例では、エージェントの環境に対する安全軌道のセットは、通信/処理の障害の前に生成することができ、これは、(自律コンピューティングシステムの)通信/処理の障害の場合にフォールバックモードにおいて依存することができ、且つ/又は実施することができる。しかしながら、実施態様は、他の方法で安全性を高めることができる。
【0026】
第二に、本技術の態様は、自律エージェントなどの任意の数の車両にモジュール方式で統合することができる低レベル安全プラットフォームを提供することができる。実施態様では、低レベル安全プラットフォームを、後付けプラットフォームとして追加する、且つ/又はある程度のフォールバック及び/又はコンピューティング冗長性を満たすようにスケーリングするなどして、自律コンピューティングシステムとは別個に統合することができる。しかしながら、システムの態様は、他の方法で適切に車両に統合することもでき、且つ/又は低レベル安全プラットフォームは他の方法で実装することもできる。
【0027】
第三に、本技術の態様は、高価な且つ/又は資源集約的なハードウェアに依存し得る(例えば、障害対応のために追加の計算能力を予約/要求し、ハードウェアコストを増加させ、高度処理能力の量を増加させる)冗長な自律処理システムを使用せずに、フォールバック計画を提供することができる。一例として、実施態様は、単一の高度処理システム(例えば、正に一つのコンピューティングシステム及び/又はその中の自律コンピューティングサブシステム)にのみ依存しながら、ハードウェア及び/又は通信の障害に対する車両の回復力を促進することができる。冗長な自律処理に依存する代わりに、実施態様は、低レベル安全システム(例えば、図5)において低レベルの処理で動作することができるフォールバックコントローラ(例えば、組込みコントローラ)を利用することができる。しかしながら、実施態様は、他の方法でフォールバック計画及び/又は通信及び/又は自律処理の障害に対する回復力を提供することもできる。
【0028】
第四に、本技術の態様は、フォールバック計画、冗長性、自律車両計画/制御のコンピューティング障害回復力、及び/又は他のコンピュータ技術の課題など、コンピュータ技術で特に生じる問題を克服するために、コンピュータ技術に必然的に根ざした技術的解決策を提供することができる。自律車両アプリケーションに対する追加又は代替として、システム及び/又は方法は、軍事アプリケーション、航空機制御及び/又は他の任意の適切なアプリケーションに限定されるものではないが、それらのいずれか又はすべてを含む数多くのアプリケーションセットのいずれか又はすべてで使用することができる。
【0029】
追加又は代替として、システム及び方法は、他の任意の1又は複数の利益を与えることができる。
【0030】
3.システム100
システム100は、方法S200に従って、自律エージェントにおけるフォールバック計画及び/又は実行を支援するように機能する。追加又は代替として、システムは、一次(自律)動作モードとフォールバック動作モードとの間で自律エージェントを移行させるように機能することができる。より好ましくは、システム100は、車両のコンピューティングシステム(例えば、自律コンピューティングシステム)が故障し、且つ/又は通信能力を失った場合に、車両の動作(例えば、安全動作、最適動作、所定のルートに沿った動作など)を可能にするように機能することができる。しかしながら、本システムは、他の方法で適切に機能することもできる。追加又は代替として、システムは、これらの故障及び/又は通信喪失の検出、軌道の取得、軌道の保存、軌道の生成、及び/又は他の任意の適切な機能を実行するように機能することができる。
【0031】
システム100は、好ましくは、以下に説明する方法200に従って動作するが、追加又は代替として、他の任意の適切な1又は複数の方法に従って実行することができる。さらに追加又は代替として、システム100は、2019年7月17日に出願された米国出願第16/514,624号(米国特許第10,564,641号)、2019年7月8日に出願された米国出願第16/505,372号(米国特許第10,614,709号)、2019年8月14日に出願された米国出願第16/540,836号、並びに、2020年2月17日に出願された米国出願第16/792,780号のいずれか又はすべてに記載の方法、プロセス、実施形態及び/又は実施例のいずれか又はすべてを実行するように機能することができ、それら出願の各々は、この引用によりその全体が本明細書中に援用されるものとする。
【0032】
3.1 システム:コンポーネント
システム100は、好ましくは、(例えば、図4に示すように)自律車両(同等に、ここでは自律エージェント102及び/又は自車両という)を含み、且つ/又はそれと連携する(例えば、自律車両内に組み込まれる)。自律エージェント102は、好ましくは、完全自律車両であるか、且つ/又は完全自律車両として動作させることができる、自律車両110を含むが、追加又は代替として、任意の半自律車両であってもよい。
【0033】
いくつかの例では、例えば、自律エージェントは、半自律状態(例えば、人間の安全ドライバ、テレオペレータなどと連携する)と完全自律状態(又は完全有人状態)との間で切り替わる車両とすることができ、その結果、自律エージェントは、自律エージェントの状態に応じて半自律車両及び完全自律車両の両方の属性を有することができる。
【0034】
好ましい態様では、自律車両は、自動車(例えば、車、無人走行車、バス、シャトル、タクシ、ライドシェア車両、トラック、半トラックなど)である。追加又は代替として、自律車両は、船舶(例えば、ボート、水上タクシなど)、航空車両(例えば、飛行機、ヘリコプタ、ドローンなど)、地上車両(例えば、2輪車、バイク、モータサイクル、スクータなど)、及び/又は他の任意の適切な車両及び/又は輸送デバイス、自律機械、自律デバイス、自律ロボット、及び/又は他の任意の適切なデバイスのいずれか又はすべてを含むことができる。
【0035】
自律エージェントは、好ましくは、コンピューティングシステム120を含み、且つ/又はコンピューティングシステムと連携し、コンピューティングシステムは、車両のための1又は複数の軌道のセット(例えば、一次軌道、二次軌道など)を決定するために、情報(例えば、センサ入力)を処理するように機能する。追加又は代替として、コンピューティングシステムは、知覚、予測、位置特定、計画のいずれか又はすべてに関与するプロセス、及び/又は自律エージェントの動作に関与する他の任意のプロセスのうち、いずれか又はすべてを実行するように機能することができる。
【0036】
コンピューティングシステムは、好ましくは、自律エージェントに搭載されて配置された(例えば、自律エージェント内に統合された)オンボードコンピューティングシステムを含む。追加又は代替として、コンピューティングシステムは:リモートコンピューティングシステム(例えば、オンボードコンピューティングシステムに代えて、クラウドコンピューティングシステム、オンボードコンピューティングシステムと通信するリモートコンピューティングなど)、補助デバイスに統合されたコンピューティングシステム(例えば、モバイルデバイス、ユーザデバイスなど)、モバイルコンピューティングデバイスを含むエッジデバイス、統合されたコンピューティングユニットを有するセンサ、複数のコンピューティングシステム(例えば、一次軌道を生成するコンピューティングシステムと二次軌道を生成する別のコンピューティングシステム)、及び/又は、他の任意の適切なコンピューティングシステム及びデバイスのいずれか又はすべてを含むことができる。ある態様では、例えば、自律エージェントは、ユーザデバイス(例えば、携帯電話、ラップトップなど)、リモートサーバ、クラウドサーバ、又は、車両から遠隔の他の任意の適切なローカル及び/又は分散コンピューティングシステムを含むことができるリモート又は分散コンピューティングシステムと通信するように動作可能である。リモートコンピューティングシステムは、1以上のデータ接続(例えば、チャネル)を通じて自律エージェントの1以上のシステムに接続され得るが、代替として、任意の適切な方法で車両システムと通信することができる。
【0037】
コンピューティングシステムは、好ましくは、処理システム(例えば、グラフィック処理ユニットすなわちGPU、中央処理ユニットすなわちCPU、又は、任意の適切な処理回路)及びメモリを含むが、追加又は代替として、他の任意の適切なコンポーネントを含むことができる。メモリは、短期記憶(例えば、揮発性、不揮発性、ランダムアクセスメモリ又はRAMなど)及び/又は長期記憶(例えば、フラッシュメモリ、ハードディスクなど)であり得る。ある態様では、例えば、オンボードコンピューティングシステムは、本明細書に記載の識別されたコンポーネント又はモジュールのうちの1以上と相互作用及び/又は動作可能に制御するように動作する。例えば、オンボードコンピューティングシステムは、マルチポリシー意思決定モジュール、同期化モジュールなどを実装するためのコンピュータ命令を実装及び/又は実行するように機能し得る。具体例では、処理システム及びメモリは集合的に機能して、この参照によってその全体が本明細書に組み込まれる2019年7月17日に出願された米国出願第16/514,624号に記載されたもののように、マルチポリシー意思決定フレームワークのフレームワーク内の自律エージェントが利用可能なポリシーのセット(例えば、方法200に基づいて決定される)を動的に管理する。追加又は代替として、処理システム及びメモリ及び/又は他の任意の適切なコンポーネントは他の任意の適切な機能に使用され得る。
【0038】
コンピューティングシステム(例えば、オンボードコンピューティングシステム)は、好ましくは、自律エージェントを制御し、且つ、自律エージェントの動作環境における自律エージェントの状態及び/又は複数のエージェントの状態を決定するため、自律エージェント及び/又は他のセンサ(例えば、インフラストラクチャデバイスから)のセンサスイート110(例えば、コンピュータビジョンシステム、LIDAR、フラッシュLIDAR、車輪速度センサ、GPSなど)から検出されたデータを処理するように機能する。動作環境における自律エージェント及び/又は複数のエージェントの状態及びプログラム命令に基づいて、オンボードコンピューティングシステムは、好ましくは、(例えば、一次軌道を決定するために後で使用される)行動ポリシーの選択などを通じて、自律エージェントの行動を変更又は制御する。追加又は代替として、コンピューティングシステムは、(例えば、一次軌道の決定を通じて)コンピューティングシステムが実行して自律エージェントの行動を制御することができる、行動ポリシーを生成し、且つ、行動ポリシーを選択する(例えば、車線変更する、合流する、現在の車線を維持する、左折する、右折する、停車する、減速する、加速する、信号で停止する、一時停止標識で停止する、道を譲るなど)ように機能するマルチポリシー意思決定モジュールを含むことができる。
【0039】
コンピューティングシステム(及び/又はその中の自律プロセッサ)の出力は、好ましくは、車両ウェイポイント(例えば、ローカル自車フレーム内)、目標車両経路(例えば、時空間制御経路)、多項式経路、軌道(例えば、経路/ウェイポイントを辿ることに関連する未処理のアクチュエータ制御コマンドなどの低レベル制御コマンドの形式)を含むことができる行動ポリシー及び/又は動作命令を含むことができるが、追加又は代替として他の任意の情報を含むことができる。好ましい態様では、コンピューティングシステムは、出力の第1のセット104(例えば、一次計画)及び出力の第2のセット106(例えば、フォールバック計画)を出力するように構成され、それらは同じフォーマットでも異なるフォーマットでもよい。一例として、出力の第1のセット(例えば、一次計画)は、軌道(例えば、経路、位置のセット、低レベルの作動コマンドなど)であり、出力の第2のセットは、高レベルのガイダンス(例えば、ウェイポイント、目標車両経路など)の形式であってもよい。しかしながら、コンピューティングシステムは、任意の適切な出力を任意の適切なエンドポイントに提供することができる。
【0040】
コンピューティングシステムは、好ましくは、高レベル安全プラットフォーム124(別名フォールバックプランナ)を含み、規定し、高レベル安全プラットフォームと連携し、且つ/又は高レベル安全プラットフォームとして機能し、高レベル安全プラットフォームは、計画することができ、ここでフォールバック計画(例えば、ウェイポイント、フォールバック軌道)と同様に呼ばれる、出力106の第2のセットを(例えば、上述したように)生成するように構成され、出力の第2のセットの1つが、フォールバック条件の充足に応答して(例えば、緊急事態、通信障害、コンピューティングシステムの障害などの場合に)、車両動作に利用され得る。追加又は代替として、高レベル安全プラットフォームは、他のコンポーネントによって規定することができ、且つ/又は他の方法で構成することができる。
【0041】
第1のセットの態様では、コンピューティングシステムは、車両制御システム及びセンサシステムとのI/O通信に適合されたオンボード汎用コンピュータを含むが、追加又は代替として、任意の適切なコンピューティングデバイスであってもよい。オンボードコンピューティングシステムは、好ましくは、無線接続を介して(例えば、セルラー方式のリンク又は接続を介して)インターネットに接続される。追加又は代替として、オンボードコンピューティングシステムは、任意の数の無線通信システム又は有線通信システムに結合され得る。
【0042】
しかしながら、システムは、他の任意の適切なコンピューティングシステムを含むことができるか、又はそれとともに使用することができ、あるいは他の方法で適切に実行することができる。
【0043】
システム100は、任意選択的には、コンピューティングシステムと通信する通信インタフェース160を含み、通信インタフェースは、(例えば、インフラストラクチャデバイスから、リモートコンピューティングシステム及び/又はリモートサーバから、テレオペレータプラットフォームから、別の自律エージェント又は他の車両などからの)情報が受信されること、且つ、コンピューティングシステム(例えば、リモートコンピューティングシステム及び/又はリモートサーバへ、テレオペレータプラットフォームへ、インフラストラクチャデバイスへ、別の自律エージェント又は他の車両などへ)情報が送信されることを可能にするように機能する。通信インタフェースは、好ましくは、無線通信システム(例えば、Wi-Fi、Bluetooth、セルラー3G、セルラー4G、セルラー5G、多入力多出力又はMIMO、1以上の無線、又は、他の任意の適切な無線通信システム若しくはプロトコル)を含むが、追加又は代替として、有線通信システム(例えば、変調電力線データ転送、イーサネット、又は、他の任意の適切な有線データ通信システム又はプロトコル)、データ転送バス(例えば、CAN、FlexRay)及び/又は他の任意の適切なコンポーネントのいずれか又はすべてを含むことができる。しかしながら、システムは、他の任意の適切な通信インタフェースを含むか、又はそれとともに使用することができ、あるいは通信インタフェースを除外することもできる。
【0044】
システム100は、任意選択的には、環境の1以上の態様及び/又は特徴を観察し、且つ、環境の1以上の態様及び/又は特徴に関する観察データを収集するように個別に且つ/又は集合的に機能する、本明細書では同等に路側ユニットと呼ばれるインフラストラクチャデバイス170のセット(例えば、図4)を含むことができる。好ましい態様では、インフラストラクチャデバイスは追加として、観察に関連付けられたデータを収集し、且つ、収集されたデータ及び/又は収集されたデータの処理された派生物を自律エージェントに送信するように機能する。追加又は代替として、インフラストラクチャデバイスは、データを収集してテレオペレータプラットフォームに送信するように機能することができ、テレオペレータは、データを使用して、行動ポリシーを含めるかどうか、及び/又は、自律エージェントのコンピューティングシステムによる考慮から行動ポリシーを除外するかどうかなど、テレオペレータの意思決定を通知することができる。具体例では、例えば、インフラストラクチャデバイスは、自律エージェントによって(道路が方向転換のために空いていることを確認することによって)方向転換行動ポリシーが考慮されることを可能にするためにエージェント及び/又はオペレータ及び/又はエージェントのテレオペレータが使用することができる車両のコーナ周りの視野を見ることを可能にすることができる。
【0045】
第1のセットの態様では、例えば、インフラストラクチャデバイスは、自律エージェントとインタラクティブに通信する及び/又は自律エージェントの1以上の機能を制御するように動作する自律車両サービス及び/又はリモートプラットフォーム(例えば、分散コンピューティングシステムのネットワークを介して実装される)に、収集された観察データを転送する。
【0046】
インフラストラクチャデバイスは、好ましくは、自律エージェントの動作位置の直近及び/又は近接又は短距離通信近接内にあるデバイスを含み、且つ、自律エージェントを取り囲む及び自律エージェントの動作ゾーンに近接する領域内の状況に関するデータを収集するように機能することができる。ある実施形態では、路側ユニットは、フラッシュLIDAR、熱画像装置(熱カメラ)、静止画又は動画撮影装置(例えば、画像カメラ及び/又はビデオカメラなど)、全地球測位システム、レーダシステム、マイクロ波システム、慣性測定ユニット(IMU)、及び/又は、他の任意の適切な検出デバイス又は検出デバイスの組合せを含むオフボード検出装置のうちの1以上を含む。
【0047】
インフラストラクチャデバイスは、任意選択的には、処理回路を介したコンピューティング機能と、自律エージェントのコンピューティングシステム、リモートコンピューティングシステム、テレオペレータプラットフォーム及び/又は他の任意の適切なコンポーネント若しくはコンポーネントの組合せのいずれか又はすべてとインフラストラクチャデバイスが通信することを可能にする通信インタフェースと、を含むことができる。
【0048】
自律エージェントの動作のゾーンは、任意選択的に、自律エージェント110が位置決めされる及び/又は動作している(例えば、走行している)構造化経路に沿った任意の地点における自律エージェントの構造化及び/又は非構造化経路に沿って事前に規定された半径(例えば、100フィート、50フィート~100フィート、50フィート未満、100フィート~200フィート、200フィート超など)として規定され得る。構造化及び/又は事前に規定された自律エージェント経路の具体例では、自律エージェントの動作の近接ゾーンは、構造化経路に沿った任意の地点から100フィートである又は地点に沿っている。
【0049】
インフラストラクチャデバイスの実装によって達成される技術的利点には、自律エージェントの観察可能範囲を越えて状況(例えば、角を曲がったところ、下る直角の道路など)を観察する機能が含まれ得、自律エージェントは、続けて、エージェントが利用可能な1以上の行動ポリシーのキュレーションにおいて機能することができる。所定の例において後に、例えば、所定の環境の1以上の側面の観察が自律エージェントによって行われ得、且つ、所定の環境の1以上の異なる及び/又は重複する側面の観察が、所定の環境に配置されて動作する1以上のインフラストラクチャデバイスによって異なる視点から行われ得る。そのような実施形態では、そこからの観察データを含むインフラストラクチャデバイスの視点は、自律エージェントの動作環境の包括的な視点を生成するため、及び/又は、テレオペレータプラットフォームの1以上のテレオペレータに追加の視点を提供するため、自律エージェントの視点からの観察データに増強される。これにより、動作環境の予測を改善し、且つ、動作環境内で(オンボードの人間のオペレータから)独立して安全に動作する自律エージェントによって選択及び/又は実行される行動ポリシー決定(例えば、計画/軌道)を改善することを可能にする。
【0050】
ある態様では、自律エージェントは、インフラストラクチャデバイス(例えば、路側ユニット)からの追加の観察を用いて、(例えば、後述するような)オンボードセンサスイート110によって導出されたデータを増強及び/又は融合して、自律エージェントによるポリシーのキュレーション及び/又は軌道決定を改善することができる。
【0051】
追加又は代替として、インフラストラクチャデバイスは、ビデオカメラ又はレーダなどを用いて、動作環境で任意のタイプ又は種類のオブジェクトを検出及び追跡することができる。ある態様では、例えば、ビデオカメラは、オブジェクトの検出、並びに、オブジェクトタイプのセマンティック分類、並びに、道路を横断しようとしている歩行者又は左折しようとしている車、車のドアを開けて車両から降りようとしている運転手、自転車専用レーンを走行している自転車運転者、及び/又は、他の任意の適切な情報などの、オブジェクトの考えられる意図を提供するように機能することができる。
【0052】
さらに追加又は代替として、インフラストラクチャデバイスのいずれか又はすべては、環境で動作する交通管理デバイス(例えば、交通センサ、交通信号、歩行者信号など)などを含み得、交通管理デバイスは:他のインフラストラクチャデバイス(例えば、路側ユニット)のいずれか又はすべてと通信し:インフラストラクチャデバイスの動作状態(例えば、赤信号又は青信号)及び/又は他の任意の情報に関して、インフラストラクチャデバイスによって収集及び/又は検出されたデータのいずれか又はすべてに関して、自律エージェントと直接;テレオペレータプラットフォームで直接通信するように機能し得る;及び/又は、他の任意の適切な方法で通信し得る。具体例では、信号機は、自律車両又は自律車両と動作可能に通信し得る路側ユニットと直接通信するように機能し得る、自律車両を取り囲む環境内のインフラストラクチャデバイスであり得る。この例では、信号機は、信号機が投影している光の色などの動作状態情報、又は、信号機による光の変化のタイミングなどの他の情報を共有及び/又は通信するように機能することができる。
【0053】
しかしながら、システムは、他の任意の適切なインフラストラクチャデバイスを含むか、又はそれとともに使用することができ、あるいはインフラストラクチャデバイスを除外することもできる。
【0054】
好ましい態様では、通信インタフェース160は、自律エージェントが、自律エージェントの外部のシステム、ネットワーク及び/又はデバイスと通信及び/又はデータ交換することを可能にする。この通信インタフェース及び/又は別個の通信インタフェースは任意選択的には、1以上のインフラストラクチャデバイスが、自律エージェント及び/又はリモートコンピューティングシステム及び/又はテレオペレータプラットフォームと直接通信することを可能にすることができる。さらに追加又は代替として、通信インタフェースは、システム及び/又はエージェントの複数のコンポーネント間で通信が確立されるのを可能にすることができる。通信インタフェースは、好ましくは、セルラーシステム(又は任意の適切な長距離通信システム)、直接短波無線、又は、他の任意の適切な短距離通信システムのうちの1以上を含む。
【0055】
通信インタフェースは、任意選択的に、車両通信ネットワーク140を含み、それと組み合わせて使用され、且つ/又は規定することができ、車両通信ネットワークは、自律エージェントの異なるコンポーネントが互いに情報を受信及び送信することを可能にするように機能する。車両通信ネットワークは、車両とともに製造されたもの(例えば、相手先商標製造会社[OEM]通信ネットワーク)、車両に追加(例えば、後付け)されたもの、任意の組合せ、及び/又は他の方法で追加されたもの、のいずれか又はすべてであり得る。
【0056】
好ましい態様では、車両通信ネットワークは、バス(例えば、コントローラエリアネットワーク(CAN)バス、ローカルインターコネクトネットワーク(LIN)バスなど)、イーサネット、任意の組合せ、及び/又は他の任意の通信ネットワークに限定されるものではないが、それらのいずれか又はすべてなどの車両バスである。
【0057】
具体例では、車両通信ネットワークが、低レベル安全プラットフォームを経由してコンピューティングシステムと通信するCANバスを含む。
【0058】
しかしながら、システムは、他の任意の適切な車両通信ネットワークを含むか、又はそれとともに使用することができ、且つ/又はそうでなければ車両通信ネットワークを除外することもできる。
【0059】
システムは、好ましくは、センサスイート110(例えば、コンピュータビジョンシステム、LIDAR、RADAR、車輪速度センサ、GPS、カメラ、慣性測定ユニット[IMU]など)を含み、且つ/又はセンサスイートと連携し、センサスイート(同等に、ここではセンサシステムという)は、オンボードコンピューティングシステムと通信して、自律エージェントの1又は複数の軌道を決定するための情報を収集するように機能する。センサシステム(及び/又はその一部)は、追加又は代替として、低レベル安全プラットフォーム(例えば、フォールバックコントローラが、二次軌道を実施している間に、オドメトリ及び/又は簡易障害物検出を実行するための情報の単純なサブセットを受信することができるように)及び/又は他の任意のコンポーネントなど、システムの他の任意のコンポーネントと通信することができる。追加又は代替として、センサスイートは、自律エージェントの動作(自律走行など)、自律エージェントを取り巻く状況に関するデータの取得、自律エージェントの動作に関するデータの取得、自律エージェントのメンテナンスの必要性の検出(例えば、エンジン診断センサ、外圧センサストリップ、センサ健全性センサ、センサ信号品質の自己診断及び/又はクロスセンサ診断などを介して)、自律エージェント内部の清浄度基準の検出(例えば、内部カメラ、アンモニアセンサ、メタンセンサ、アルコール蒸気センサ)、及び/又は他の任意の適切な機能を可能にするように機能することができる。
【0060】
センサスイート110は、好ましくは、自律車両に搭載されたセンサ(例えば、エージェントの外面に結合されたRADARセンサ及び/又はLIDARセンサ及び/又はカメラ、エージェントに結合され且つ/又はエージェント内に配置されたIMU及び/又はエンコーダなど)を含むが、追加又は代替として、エージェントから離れたセンサ(例えば、1又は複数のインフラストラクチャデバイスの一部、エージェントと通信するセンサなど)、及び/又は任意の適切な位置の任意の適切なセンサも含むことができる。
【0061】
しかしながら、システムは、他の任意の適切な1又は複数のセンサシステム及び/又はセンサスイートを含むか、又はそれらとともに使用することができ、又は他の方法で適切に実装することもできる。
【0062】
システムは、1又は複数のコンピューティングシステム及び/又はコントローラによって生成された動作命令(例えば、計画及び/又は軌道)に基づいて、車両の動きをもたらすように機能する車両モジュール/コンポーネントを含む車両制御システム150を含むか、且つ/又はそれと連携することができる。追加又は代替として、車両制御システムは、コンポーネントのドライバ、電子制御ユニット[ECU]、テレマティック制御ユニット[TCU]、トランスミッション制御モジュール[TCM]、アンチロックブレーキシステム[ABS]制御モジュール、ボディ制御モジュール[BCM]、及び/又は他の任意の適切な制御サブシステム及び/又はモジュールに限定されるものではないが、それらのいずれか又はすべてなどのエージェントの一連の電子モジュールのいずれか又はすべてを含み、又はそれらと連携又は通信することができる。好ましい態様では、車両制御システムは、車両のドライブバイワイヤシステムを含み、又はそれと連携し、且つ/又はそれを実装する。追加又は代替として、車両は、1又は複数の機械コンポーネントの作動に従って操作され、且つ/又は他の方法で実装され得る。しかしながら、システムは、他の任意の好適な車両制御システムを含むか、又はそれらとともに使用することができ、あるいは他の方法で適切に実装され得る。
【0063】
システム100は、好ましくは、(例えば、後述する)低レベル安全プラットフォーム130を含み、このプラットフォームは、車両の軌道選択及び/又は軌道生成に関わる入力のセットを処理、伝送及び/又は記憶するように機能する。追加又は代替として、低レベル安全プラットフォームは、方法S200のすべて又は一部の実行を容易にするように機能する。
【0064】
低レベル安全プラットフォームは、好ましくは、コンピューティングシステム及び車両通信ネットワーク(例えば、CANバス、イーサネットなど)と通信する。第1のセットの態様では、低レベル安全プラットフォームが、コンピューティングシステムと車両通信ネットワークとの間で(例えば、コンピューティングシステムから車両通信ネットワークへ、車両通信ネットワークからコンピューティングシステムなどへ)情報を中継することができる。第2のセットの態様では、低レベル安全プラットフォームが、情報(例えば、コンピューティングシステムの出力の第2のセット)を変換し、対応する出力のセットを(例えば、車両制御システムへ、車両通信ネットワークを介して、車両制御インタフェースなどを介して)提供することができる。
【0065】
追加又は代替として、低レベル安全プラットフォームは、並列実施形態(例えば、2並列通信バス)で実装することができ、情報の中継及び/又はメッセージのアービトレートに加えて、又は代替として、低レベル安全プラットフォームは、フォールバックコントローラの実行に入るように構成されている(例えば、コンピューティングシステムが通信していない場合、システム及び自律コンピューティングが同じ車両を制御することができ、互いに通信してバックアップ制御に切り替える必要性を検知する)。
【0066】
好ましい態様では、低レベル安全プラットフォームは、1又は複数の軌道(及び/又は他の任意の1又は複数の計画)を車両通信ネットワークに(例えば、公称動作モード及び/又はフォールバック動作モードで)提供することができ、その後、その情報は、実行のために車両制御システムに送信される。それら出力は、任意選択的に、(例えば、図6及び図7に示すように)車両制御インタフェースを介して車両制御システムに提供することができ、このインタフェースは、好ましくは、車両制御システム(例えば、ドライブバイワイヤECU)と車両のコンピューティングシステムの自律スタック(例えば、低レベル安全プラットフォームを含む、高レベル安全プラットフォームを含むなど)とのインタフェースとして機能するソフトウェアモジュールを含む。追加又は代替として、低レベル安全プラットフォームは、直接的及び/又は間接的に、制御システム及び/又はシステムの他の任意のコンポーネント(例えば、センサシステムなど)と通信することができる。いくつかの態様では、例えば、低レベル安全プラットフォームが、車両制御システムと直接通信する。追加又は代替の態様では、低レベル安全プラットフォームは、センサシステムのセンサの少なくともサブセット(例えば、IMU及びエンコーダ、IMU及びエンコーダのみ、サブセットのみなど)と通信し、低レベル安全プラットフォームは、1又は複数の受信軌道の検証、緊急時(例えば、コンピューティングシステムが接続を失った場合)の独自の軌道の生成、軌道の修正(例えば、車両の経路上で検出されたオブジェクトに基づく;障害物検出時の完全停止/強制停止の実行)、任意の適切な最小リスク条件(MRC)の実施、及び/又は他の任意の適切な機能の実行のうち、いずれか又はすべてのためにセンサ入力を使用することができる。追加又は代替として、低レベル安全プラットフォームは、(例えば、センサ情報に基づいて入力のセットを修正すること、独自の軌道を生成すること、完全停止軌道を決定することなどによって)入力のセットに基づいて独自の出力を生成し、送信する1又は複数の入力を選択し、1又は複数の入力を(例えば、一時記憶装置、永久記憶装置などに)記憶し、1又は複数の入力を評価し(例えば、生成されてから時間及び/又は距離の閾値などの所定の閾値内にあるか確認するため)、且つ/又は他の任意のプロセスを実行することができる。
【0067】
低レベル安全プラットフォームは、好ましくは、フォールバックコントローラ(例えば、図7)を含むか、且つ/又はそれとともに使用され、フォールバックコントローラは、1又は複数の動作計画(例えば、フォールバック計画、出力の第2のセット106、公称動作モードにおいてコンピューティングシステムから受信したもの)を記憶し、且つ/又は(例えば、公称動作モード中に過去の記憶から、又はフォールバックモードで動作するときに)1又は複数の動作計画を取得し、任意選択的に、記憶したフォールバック計画に基づいて命令(例えば、軌道、ウェイポイントのセットなど)を生成し、フォールバック計画に関連する命令を送信するように機能する。命令は、ここでは、軌道、経路(例えば、多項式経路)、位置のセット(例えば、ウェイポイントのセット)、車両のアクチュエータのための制御コマンドのセット(例えば、目的地に到達するため、経路に従うため、ポイントのセットに従うため、停止するため、MRCを実行するためなど)、及び/又は車両の走行に関連する他の任意の適切な情報のいずれか又はすべてを指す場合がある。フォールバックコントローラは、好ましくは、(例えば、低レベル安全プラットフォーム内に組み込まれた)組込みコントローラであるが、同様に、コンピューティングシステムの一次コントローラとは別個の補助コントローラ(例えば、別のモジュール内にパッケージされ、通信的に切り離され、別の処理システムに依存するコントローラなど)、二次コントローラ(例えば、一次自律コントローラと二重化されたコントローラ)、及び/又は他の任意の適切なフォールバックコントローラであってもよい。
【0068】
特定の例では、(埋込み)フォールバックコントローラは、車両経路計画又は軌道生成を実行するように構成されていないが、フォールバックコントローラは、追加又は代替として、高レベルガイダンス計画(例えば、ウェイポイント、車両経路計画など)に基づいて命令(例えば、制御コマンド、経路、軌道など)を生成し、操縦/経路計画を修正する(例えば、障害物の検出に応答して完全停止を実行する)ように構成することができ、且つ/又は他の任意の適切な動作を実行するように構成することができる。
【0069】
追加又は代替として、低レベル安全プラットフォーム及び/又はその中の1以上のコントローラは、特徴検出/分類、障害物軽減、経路トラバーサル、マッピング、センサ統合、グラウンドトゥルース判定などのコントローラの機能を支援する、及び/又は、他の任意の適切な機能を有効化する、ソフトウェアアルゴリズム及び/又は機械学習技術を実装するように機能することができる。コントローラは、自律エージェントのルーティング目標及び自律エージェントの選択された行動ポリシー及び/又は選択された軌道に従って、自律エージェントを制御するための制御信号を生成するために利用される任意の適切なソフトウェア及び/又はハードウェアコンポーネント(例えば、プロセッサ及びコンピュータ可読記憶装置)を含むことができる。
【0070】
追加又は代替として、低レベル安全プラットフォームは、(例えば、冗長性のため、互いに通信する)複数の(埋込み)フォールバックコントローラを含むことができる。一例として、低レベル安全システムは、並列に配置された冗長フォールバックコントローラのアレイを含むことができ、その各々は、任意の適切な車両制御エンドポイントに冗長的に接続することができる。追加又は代替として、低レベル安全プラットフォームは、任意の適切なコントローラ(例えば、マイクロコントローラ)、プロセッサ(例えば、マイクロプロセッサ)、及び/又は任意の適切な機能を有する任意の適切なコンポーネントを含むことができる。
【0071】
システム(及び/又はその低レベル安全プラットフォーム)は、任意選択的に、フォールバック事象(例えば、フォールバック条件の充足)を検出し、それに応答して、自律エージェント及び/又は低レベル安全プラットフォームをフォールバックモードに(例えば、公称動作モードから)移行するように機能する、ウォッチドッグ(別名、照合又は検証モジュール)を含むか、又はそれとともに(例えば、通信して)使用することができる。追加又は代替として、ウォッチドッグは、自律オペレーティングシステムの機能、一次軌道/制御コマンドが通信システムを介して通信していること、及び/又はガイダンス計画(例えば、一次及び/又はフォールバック)が規則/条件のセットを満たしていること、を検証するように機能することができる。しかしながら、システム及び/又は低レベル安全プラットフォームは、ウォッチドッグを除外することもでき、ウォッチドッグは、(例えば、コンピューティングシステム及び低レベル安全プラットフォームの両方から分離された)システムの別のノードで実装することができ、且つ/又は低レベル安全プラットフォームは、他の方法でフォールバックモードに移行することができる。
【0072】
しかしながら、システムは、他の任意の適切な低レベル安全プラットフォームを含むことができる。
【0073】
追加又は代替として、システムは、センサ融合システム、測位システム(例えば、センサシステムの位置センサを含む)、誘導システム及び/又は任意の適切なコンポーネントのいずれか又はすべてを含むことができる。ある態様では、例えば、センサ融合システムは、センサデータを合成及び処理し、且つ、マルチポリシー決定モジュールとともに、オブジェクトの存在、位置、分類及び/又は経路並びに自律エージェントの環境の特徴を予測する。さまざまな実施形態では、センサ融合システムは、これらに限定されないが、カメラ、LIDAR、レーダ、インフラストラクチャデバイス、リモートデータフィード(インターネットベースのデータフィード)及び/又は任意の数の他のタイプのセンサを含む、複数のセンサ及び/又はデータソースからのデータを組み込むように機能し得る。
【0074】
測位システムは、センサデータを他のデータとともに処理して、環境に対する自律エージェントの位置(例えば、マップに対するローカル位置、道路の車線に対する正確な位置、車両の進行方向、速度など)を決定し、これによって、(例えば、後述するように)どのような行動ポリシーが自律エージェントによって利用可能であるかを決定するために機能することができる。誘導システムは、センサデータを他のデータとともに処理して、車両が辿るべき経路を決定することができる。
【0075】
システムは、任意選択的に、1以上の遠隔テレオペレータ及び関連のコンポーネントを参照するテレオペレータプラットフォーム180(例えば、自律エージェント、コンピューティングシステム、自律エージェント及び/又はインフラストラクチャデバイスからテレオペレータに情報を表示するための出力デバイス、テレオペレータからの命令/コマンドを受信するための入力デバイスとの通信インタフェースなど)と連動することができる。テレオペレータプラットフォームは、テレオペレータからの入力を受信するように機能することができ、これは、車両のキュレーションされた行動ポリシーの決定において少なくとも部分的に使用され得る。
【0076】
システム100の第1の態様では、システムが、車両のコンピューティングシステム及び車両通信ネットワークと通信する低レベル安全プラットフォームを含み、低レベル安全プラットフォームは、コンピューティングシステムから車両通信ネットワークに出力の第1のセット104(例えば、一次計画/軌道)を送信し、出力の第1のセット(及び/又は出力の第1のセットに関連するアクチュエータ制御コマンド)は、その後、車両のドライブバイワイヤ制御システムに送信され、トリガ条件が発生した場合(例えば、低レベルプラットフォームがコンピューティングシステムとの通信を喪失した場合、低レベル安全プラットフォームが、コンピューティングシステムによって送信された軌道及び/又は制御コマンド(又は他の任意の命令)の不整合及び/又はエラーを検出した場合など)に、取得した軌道を出力の第2のセット106から車両通信ネットワークに送信する。
【0077】
システム100の第2の態様では、システムが、車両のコンピューティングシステム及び車両通信ネットワークと通信する低レベル安全プラットフォームを含み、コンピューティングシステムは、出力の第1のセット104(例えば、一次計画/軌道)を(例えば、公称動作モードで)車両通信ネットワークに送信し、その後、出力の第1のセット(及び/又は出力の第1のセットに関連するアクチュエータ制御コマンド)は、車両のドライブバイワイヤ制御システムに送信され(例えば、一次動作モードで生じ)、トリガ条件が発生した場合(例えば、低レベルプラットフォームがコンピューティングシステムとの通信を喪失した場合、低レベル安全プラットフォームがコンピューティングシステムによって送信された軌道及び/又は制御コマンドの不整合及び/又はエラーを検出した場合など)に、取得した軌道(又は他の任意の命令)を出力の第2のセット106から車両通信ネットワークに送信する(例えば、ここでは同等にフォールバック動作モードともいう二次動作モードで生じる)。
【0078】
特定の例では、低レベル安全プラットフォームが、1又は複数の組込みコントローラを含む。
【0079】
追加又は代替として、システム100は任意の他の適切なコンポーネントを含むことができる。
【0080】
4.方法
図2に示すように、自律車両動作のための方法S200は、入力のセットを決定するステップS210と、入力のセットのいずれか又はすべてを記憶するステップS220と、入力のセットに基づいて自律エージェントの動作を支援するステップS230とを含む。この方法は、自律エージェントの制御及び/又は自律エージェントモードのフォールバック動作を容易にするように機能する。より好ましくは、システム100は、車両のコンピューティングシステム(例えば、自律コンピューティングシステム)が故障し、且つ/又は通信能力を失った場合に、車両の動作を可能にするように機能することができる。しかしながら、本方法は、他の方法で適切に機能することもできる。
【0081】
実施態様では、方法S200は、追加又は代替として、記憶した入力を取得するステップ、入力を選択及び/又は検証するステップ、コンピューティングシステムとの通信が存在する場合に、第1の出力(例えば、第1の軌道)を通信ネットワークに送信するステップ、コンピューティングシステムとの通信が失われた場合に、第2の出力(例えば、アクチュエータ制御コマンドのセット、第2の軌道、ウェイポイントのセット、他の任意の命令など)を通信ネットワークに送信するステップ、及び/又は任意の適切な順序で実行される他の任意の適切な1又は複数のプロセスのうち、いずれか又はすべてを含むことができる。さらに追加又は代替として、方法200は、2019年7月17日に出願された米国出願第16/514,624号(米国特許第10,564,641号)、2019年7月8日に出願された米国出願第16/505,372号(米国特許第10,614,709号)、2019年8月14日に出願された米国出願第16/540,836号、並びに、2020年2月17日に出願された米国出願第16/792,780号のいずれか又はすべてに記載のプロセスのいずれか又はすべて、あるいは任意の順序で実行される他の任意の適切なプロセスを含むことができ、それら出願の各々は、この引用によりその全体が本明細書中に援用されるものとする。方法200は、上述したシステム100及び/又は他の任意の適切なシステムで実行することができる。
【0082】
方法S200は、好ましくは、例えば、自律エージェントの選択ステップごとに(例えば、意思決定ステップごと、1秒あたり1回~100回、1秒あたり20回~30回、1秒あたり1回未満、100回超などの予め設定された頻度で)、且つ/又は制御ステップごとに(例えば、アクチュエータ制御出力生成ステップごとに)、自律エージェントの動作全体を通して連続的且つ/又は繰り返し実行される。追加又は代替として、方法S200及び/又はその中の任意のサブ要素は、予め設定された頻度で、トリガ(例えば、自律エージェント環境の変化の検出、自律エージェントの動作条件の変化の検出、テレオペレータの入力)に応答して、ランダムな時間間隔で、且つ/又は他の任意の適切な時点に実行することができる。
【0083】
4.1 方法-入力のセットの決定S210
方法200は、入力のセットを決定するステップS210を含み、これは、車両制御のための入力を決定するように機能し、且つ/又はエージェントのための命令(例えば、軌道、経路、ウェイポイントのセット、制御コマンドなど)を生成及び/又は選択するための情報を決定するように機能する。
【0084】
S210は、好ましくは、方法200全体を通して連続的に(例えば、エージェントがルートを通過する全体を通して連続的に)実行されるが、追加又は代替として、(例えば、上述したように)任意の適切な1又は複数の時点で実行することができる。入力のセットの各々は、好ましくは、低レベル安全プラットフォームで受信され、コンピューティングシステムで生成されるが、追加又は代替として、任意の適切な1又は複数のコンポーネント(例えば、コンピューティングシステム)で受信され、且つ/又は任意の適切な1又は複数のコンポーネント(例えば、低レベル安全プラットフォーム)によって生成されることができる。
【0085】
実施態様では、入力のセットを決定するステップS210が、一次計画を決定すること、フォールバック計画を決定すること、及びセンサ入力のセットを決定することを含むことができる。
【0086】
S210は、一次計画を決定することを含むことができ、これは、任意選択的に、コンピューティングシステムで一次計画を生成すること、及び/又は低レベル安全プラットフォームで(例えば、コンピューティングシステムの出力の第1のセット104として)一次計画を受信することを含むことができる。
【0087】
一次計画は、本明細書では、出力の第1のセット104を含むことができ、且つ/又は出力の第1のセットと同等に呼ばれることがあり、この一次計画は、エージェントのために選択されたルート(例えば、動作軌道、動作ウェイポイント)をエージェントが辿るように決定された軌道(又は他の任意の命令)、車両制御コマンド(例えば、軌道の第1のセットの軌道と関連)、及び/又は他の任意の適切な命令若しくは出力のうち、いずれか又はすべてを含むことができ、且つ/又は示すことができる。選択された一次計画は、好ましくは、自車両が1又は複数の固定ルートに沿って走行する(例えば、シャトルルートに沿って乗客を運ぶ)ように構成された使用事例などでは、予め設定されたルート(例えば、固定ルート)に沿ったものとなるが、追加又は代替として、動的に決定されるルート及び/又は任意の組合せとすることができる。
【0088】
一次計画は、好ましくは、(例えば、それらが生成されたときに、予め設定された頻度で、選択サイクルごとに)、コンピューティングシステム及び/又は車両通信ネットワークからの一連の出力(例えば、軌道に従って決定される制御コマンド)として車両を動作させるために車両制御システムで受信され、出力の各々は、エージェントの最適及び/又はルーチンの軌道を(例えば、エージェントのルートに基づいて、自律コンピューティングシステムにより決定されるように)示し、且つ/又はそれに関連付けられる。追加又は代替として、一次計画は、任意選択的に、(例えば、車両制御システムに送信される前に)低レベル安全プラットフォームで受信することができる。
【0089】
一次計画は、好ましくは、公称動作モードにおいて(例えば、コンピューティングシステムで、低レベル安全プラットフォームで、低レベル安全プラットフォームがコンピューティングシステムと通信している間に、コンピューティングシステムが動作している間に)、連続的に(例えば、予め設定された頻度で、選択サイクルごとに、それが生成されるときなどに)決定されるが、追加又は代替として、任意の適切な1又は複数の時点で、且つ/又は任意の適切なトリガに応答して決定及び/又は受信されることができる。
【0090】
一次計画は、好ましくは、システムからの入力と、センサのセット(例えば、センサスイート)からのセンサ入力、エージェントのための選択されたルート、マップ(例えば、選択されたルートを示すマップ、他の利用可能なルートを示すマップ、すべての可能なルートを示すマップなど)、行動ポリシー(例えば、マルチポリシー意思決定モジュールに従って決定された行動ポリシー)、及び/又は他の任意の適切な入力のうちのいずれか又はすべてとに基づいて、コンピューティングシステムの出力の第1のセット(及び/又は出力の第1のセットに関連付けられたアクチュエータ制御コマンド)として決定される。追加又は代替として、一次計画は、自車状態推定と、コンピューティングシステム及び/又はその中の自律コンピューティングサブモジュールの(例えば、自律エージェントの環境におけるエージェント及び/又はオブジェクトのセットを特定する)(現在の)環境表現とに基づいて決定され得る。追加又は代替として、出力の第1のセットは、任意の適切な入力に基づいて他の方法で決定され得る。一例として、一次計画は、2019年7月17日に出願された米国出願第16/514,624号及び2020年2月17日に出願された米国出願第16/792,780号に記載のシステム及び/又は方法に従って決定され得るものであり、それら出願の各々は、この引用によりその全体が本明細書中に援用されるものとする。
【0091】
好ましい実施例では、一次計画が低レベル安全プラットフォームに送信されない。
【0092】
代替例では、S210が、低レベル安全プラットフォームで一次計画を受信することを含むことができる。
【0093】
しかしながら、一次計画は、S210の一部として他の適切な方法で決定することができる。
【0094】
S210は、フォールバック計画(同等にここでは二次計画という)を決定することを含むことができ、これは、一次計画が利用できない場合に、且つ/又はフォールバックイベントの検出に応答して、利用することができる。フォールバック計画は、好ましくは、コンピューティングシステムの高レベル安全プラットフォーム(例えば、コンピューティングシステムのフォールバックプランナ)で生成され、低レベル安全プラットフォームに(例えば、出力の第1のセットが提供されないコンピューティングシステムの出力の第2のセットとして、出力の第1のセットも提供されるコンピューティングシステムの出力の第2のセットなどとして)提供される。フォールバック計画は、好ましくは、一次計画と同時期に(例えば、並行して、連続して、重複する期間に、生成の所定の時間閾値内に、コンピューティングシステムで受信した入力の同じセットなどに基づいて)決定され、その結果、一次計画(及び/又は対応する動作軌道)とフォールバック計画(及び/又は対応するフォールバック軌道)のいずれかを、関連付けられた時点及び/又は時間の範囲でエージェントに対して実施することができる。追加又は代替として、定期的に(例えば、一次計画と同じ頻度で、一次計画に対して異なる頻度で)、一次計画と同期して、一次計画と非同期に、且つ/又は他の任意の適切なタイミングで、フォールバック計画を決定することができる。フォールバック計画は、任意選択的には、低レベル安全プラットフォームにおいて、出力の第1のセットの関連する軌道と(例えば、同じデータパケットにおいて)同時期に(例えば、並行して;連続して;30秒、20秒、10秒、5秒、1秒、0,5秒、100ミリ秒、50ミリ秒、10ミリ秒又は1ミリ秒などよりも短い予め設定された時間閾値内で)受信され得るが、追加又は代替として、任意の適切な時点で低レベル安全プラットフォームで受信され得る。代替的には、フォールバック計画は、低レベル安全プラットフォームで、一次計画のない場合に受信され得る。
【0095】
実施態様では、フォールバック計画を決定することが、ナビゲーショナルエッジのセットを決定すること、ナビゲーショナルエッジを分類すること、及びナビゲーショナルエッジの分類に応じて、自車両の状態及びナビゲーショナルエッジに基づいてフォールバック計画を生成することを含むことができる。
【0096】
ナビゲーショナルエッジ(同等にここでは、状態及び/又は安全状態という)は、好ましくは、自車両が停止する(例えば、安全に停止する、少なくとも所定の時間停止する、停止後に道路に再進入する、安全に乗客を解放する)ことができる位置及び/又は他の占有することができる位置(例えば、マップで規定される位置)を指す。ナビゲーショナルエッジは、(例えば、マップ上の既知の静的位置に)予め設定され、動的に決定され(例えば、車両からの固定距離で、コンピューティングシステムの現在の環境表現に基づいて、動的に決定され、ニューラルネットワークを使用して動的に生成され)、遠隔エンドポイントから受信され(例えば、テレオペレータプラットフォームなどから受信され)、予め定められた規則/発見的手法のセットに従って決定され、且つ/又は他の方法で適切に決定されることができる。ナビゲーショナルエッジは、好ましくは、環境のインフラストラクチャ境界(例えば、車両の現在の車線の両側、高速道路の路肩、交差点コーナの頂点、現在の道路と交差する車道又は側道、駐車場、駐車スポットなど)に沿ったナビゲーショナルターゲット(例えば、点、領域、線分など)であるが、他の任意の適切なエッジ又はターゲットであってもよい。特定の例では、ナビゲーショナルエッジは、車両から予め設定された距離のセットにある現在の車線及び/又は道路のエッジで評価することができ、探索空間を最小限に抑えることによって必要な演算を減らすことができる。
【0097】
ナビゲーショナルエッジは、現在の環境表現及び/又は現在の車両状態に基づいて、スコア付け及び/又は分類(例えば、利用可能としてタグ付け)され得る。一例として、車両が、過度に交通を妨げる(例えば、車が片側及び/又は両側を通り過ぎるように車線を完全に塞ぐ、所定の閾値を超えたブレーキなどをかける)ことなく、ナビゲーショナルエッジで減速、停止、及び/又は保持パターンに入ることができる場合、ナビゲーショナルエッジを「利用可能」であると考えることができる。一例として、ナビゲーショナルエッジは、それが交差点内(及び/又は交差点から予め設定された最小距離内、図9Aに示す「dintersection」内など)にある場合、別のエージェントがそれを占有する場合(例えば、道路の対応領域に対する意図を有する場合)、横断歩道内に及び/又は横断歩道の最小距離内(例えば、平均的な車両の停止距離内、監視された車両の停止距離内、車両の長さ内、10~30フィート内、50フィート内、道路の制限速度及び最も極端な制動加速度に基づいて計算された停止距離内、図9Aに示すように「daftercrosswalk」又は「dbeforecrosswalk」内など)にある場合(例えば、それにより、横断歩道に接近する別の車両が、例えば図9Bに示すように、横断歩道の視界が限られている場合)、踏切又は他のランドマーク(例えば、バス停)内及び/又はその閾値距離内(例えば、10~30フィート、50フィート内など)にある場合、自車両又は他の車両が環境を安全に操縦するために制動閾値及び/又は停止距離を超える必要がある場合、他の車両(例えば、他の自律車両)がエッジ及び/又は領域を占有しているか又は占有を計画している場合、及び/又はそれが最小通過クリアランスを満たさない場合に、「利用不可能」であるとして却下及び/又は分類することができる。
【0098】
ナビゲーショナルエッジは、分類モデル(例えば、ヒューリスティック分類器、決定木など)に基づいて、且つ/又はマルチポリシー評価のセット、静的制約、動的制約、衝突制約(例えば、環境表現における1又は複数のエージェントが、ナビゲーショナルエッジに意図を持ち、且つ/又は衝突をもたらす可能性が高い状態推定に関連付けられ、1又は複数のオブジェクトが交差する)、車両の運動学的制約(例えば、アクチュエータの限界)、最小距離制約(例えば、車両への近接性、現在の車両速度の関数として)、及び/又は他の任意の適切な評価/基準を使用して、さらに分類及び/又は選択することができる。
【0099】
実施態様では、その例が図6に示されているが、高レベル安全プラットフォームのフォールバックプランナは、(例えば、環境内の他のエージェントが計画期間内(例えば、フォールバック計画の生成と対応する操縦の実行との間)で静止していると仮定する)初期利用可能状態の分類に基づいて、状態を利用可能として分類し、各ナビゲーショナルエッジ(例えば、ナビゲーショナルエッジで終了する現在の車両姿勢間の多項式経路)に対するフォールバック計画を(例えば、多項式経路、ウェイポイントのセットなどとして)生成し、得られた操縦/軌道の動的比較に基づいてフォールバック計画を選択することができる。一例として、フォールバックプランナは、最大制動制約及び/又は最大ステアリング制約を超えないフォールバック計画を選択することができる。
【0100】
フォールバック計画(例えば、コンピューティングシステムによって生成される)は、ウェイポイント、運動学的軌道、位置目標、経路(例えば、滑らかな経路、多項式経路など)などの高レベルのガイダンス、低レベルの制御コマンド(例えば、軌道、アクチュエータ制御命令など)、及び/又は他の任意の適切な情報を含むことができる。好ましい態様のセットでは、フォールバック計画が、車両の現在位置を識別されたナビゲーショナルエッジに接続するように設計された多項式フォールバック軌道に基づいて(例えば、図6のフォールバック計画評価ブロックにおいて)決定されるウェイポイントのセットを含む。この好ましい態様のセットの特定の例のセットでは、一次計画が、フォールバック計画とは異なるデータタイプ(例えば、ウェイポイントのセットではなく、軌道及び/又は経路など)である。追加又は代替として、一次計画及びフォールバック計画は、同じ1又は複数のデータタイプであってもよい。
【0101】
特定の例では、フォールバック計画(フォールバック操作)は、利用可能な状態の近傍側エッジに寄せるための多項式(例えば、7次多項式、7次未満の多項式、7次より大きい多項式、1次~10次の多項式、5次~10次の多項式など)のシーケンスとして生成することができ、近傍側は自車両と同じ交通方向を有する側(左又は右)である。
【0102】
実施態様では、フォールバック計画が、任意選択的に、フォールバック計画(例えば、安全軌道、安全軌道に関連する制御コマンドなど)を実施するための限定的な使用を規定する有効期限パラメータ及び/又は条件を含むか、又はそれに関連付けることができる。これは、好ましくは、ユーザの現在の環境を正確に表していない出力(例えば、コンピューティングシステムがあまりにも昔に故障した場合)の使用を防止するように機能する。追加又は代替として、有効期限パラメータは、他の任意の適切な機能を実行することができる。有効期限パラメータは、好ましくは、出力の第2のセットの出力(同等にここでは第2の出力と呼ぶ)を(例えば、生成時から、受信時などから)使用することができる閾値時間及び/又は距離を含み、且つ/又は規定するが、追加又は代替として、複数のパラメータ及び/又は他の任意の適切なパラメータを規定することができる。代替的には、フォールバック計画は、有効期限パラメータを除外することもできる(例えば、フォールバック計画が、後のタイムステップにおけるフォールバック計画のその後の決定を介して置き換えられる場合及び/又は更新される場合など)。
【0103】
しかしながら、フォールバック計画は、他の方法で適切に決定することもできる。
【0104】
S210は、任意選択的には、動作計画(例えば、一次計画及び/又はフォールバック計画)を検証するために使用することができ、且つ/又はフォールバック計画に従って自律エージェントの誘導を容易にすることができるセンサ入力のセットを決定することを含むことができる。センサ入力は、好ましくは、センサスイートによって生成され、(例えば、直接、車両通信ネットワークによって、コンピューティングシステムを経由せずに)低レベル安全プラットフォームで受信される。
【0105】
センサ入力のセットは、軌道の実施及び/又は検証(例えば、安全軌道がいかなるオブジェクトとも衝突しないことの確認)、軌道の選択、新しい軌道の決定(例えば、利用可能な軌道が空のセットである場合)のいずれか又はすべてに使用することができ、且つ/又は他の任意の適切な処理を実行するように機能することができる。低レベル安全プラットフォームで受信されるセンサ入力のセットは、好ましくは、センサの全セットのサブセット(例えば、エンコーダ及びIMUのみ、LIDARセンサの特定のサブセットなどのセンサの特定のビューのみなど)から受信されるが、追加又は代替として、センサシステム全体(例えば、コンピューティングシステムから低レベル安全プラットフォームへのセンサ入力のセットのリダイレクト時など、すべてのセンサ、すべてのタイプのセンサ)、及び/又は他の任意のセンサから受信することができる。特定の例では、低レベル安全プラットフォームによって受信されるセンサ入力のセットは、オドメトリセンサ入力(例えば、GPS速度及び/又は慣性センサ測定値)、飛行時間センサ入力(例えば、Lidar、レーダ、「バンパ」センサなど)、及び/又は他の任意の適切な入力を含むことができる。さらに追加又は代替として、低レベル安全プラットフォームは、センサ情報がない場合(例えば、フィードバック制御が下流の制御エンドポイント及び/又は計算ノードなどに委ねられる場合)に動作することができる。センサ入力のセットは、フォールバック計画とは無関係に(例えば、連続的に)、フォールバック計画とともに、トリガ(例えば、フォールバック動作モードに入ること)に応答して、連続的に、且つ/又は他の任意の適切なタイミングで(例えば、上述したように)受信することができる。
【0106】
好ましい態様では、低レベル安全プラットフォームが、エージェントの位置(例えば、位置、姿勢など)を特定するように構成されたセンサからの入力、例えば、1又は複数のエンコーダ及び/又は慣性測定ユニット(IMU)からの入力を受信する。
【0107】
第1の態様では、S210が、低レベル安全プラットフォームにおいて、フォールバック計画(例えば、ウェイポイント及び/又は対応するフォールバック軌道)と、任意選択的に1又は複数のセンサ入力とを受信することを含む。
【0108】
第2の態様では、S210が、低レベル安全プラットフォームにおいて、一次計画(例えば、動作軌道)及びフォールバック計画(例えば、ウェイポイント及び/又は対応するフォールバック軌道)と、任意選択的に1又は複数のセンサ入力とを受信することを含む。
【0109】
実施態様では、入力が、コンピューティングシステムによって決定されるように、自車両姿勢推定(例えば、位置特定された自車両基準フレーム)及び/又は環境表現(例えば、エージェント/オブジェクトのセット;自車両基準フレームにおいて)を追加的に含むことができる。
【0110】
しかしながら、入力は、他の方法で適切に決定及び/又は受信することができる。
【0111】
4.2 方法-入力のセットのいずれか又はすべてを記憶S220
方法S200は、入力のセットのいずれか又はすべてを記憶するステップS220を含むことができ、これにより、コンピューティングシステムが故障した場合に実施することができる持続的に利用可能なフォールバック計画(及び/又はそれに関連するフォールバック軌道)を維持するように機能する。
【0112】
S220は、好ましくは、フォールバック計画を記憶することを含むが、追加又は代替として、他の入力のいずれか又はすべてを記憶することを含むことができる。フォールバック計画は、好ましくは、低レベル安全システムのメモリ及び/又はシステムのローカルメモリ(例えば、一次コンピューティングシステムに依存せずにアクセス可能なメモリ)内に記憶されるが、フォールバック計画は、追加又は代替として、リモートで記憶及び/又は検証されることができ、且つ/又は他の方法で適切に記憶されることができる。
【0113】
第1の態様のセットでは、有効期限パラメータが、さらに好ましくは、その関連するフォールバック計画(例えば、アクチュエータ制御コマンド、安全軌道など)とともに記憶されるが、追加又は代替として、記憶されない、別々に記憶される、且つ/又は他の方法で記憶されることができる。
【0114】
第2の態様のセットでは、フォールバック計画は、(例えば、コンピューティングシステム及び/又は通信インタフェースからの)後続のフォールバック計画の受信時及び/又は検証時に更新及び/又は置換され得る。
【0115】
フォールバック計画(及び/又は他の任意の入力)は、好ましくは一時的に記憶(例えば、短期記憶領域にキャッシュ)されるが、追加又は代替として、永続的に記憶され、記憶サイト(例えば、リモートサーバ)に送信され、且つ/又は他の方法で記憶及び/又は使用されることができる。S220は、任意選択的に、予め設定された数(例えば、2、3、4、5、5超など)の出力、予め設定された記憶量、それぞれ過去の第2の出力を新規の第2の出力に置き換えること、有効期限パラメータの満了、及び/又は他の任意の適切な情報のいずれか又はすべてに基づいて、出力の第2のセットの過去の計画/軌道を削除及び/又は置換することを含むことができる。いくつかの態様では、S220が、1又は複数の閾値条件(例えば、上限時間閾値、上限距離閾値、オドメトリ不確実性閾値など)のセットを満たすために、記憶した有効期限パラメータのいずれか又はすべてをチェックすること(例えば、定期的にチェックすること、安全軌道を受信するごとにチェックすることなど)を含み、閾値条件が満たされる場合に、関連する第2の出力を方法の後続プロセスでの検討から削除及び/又は除外することができる。
【0116】
第1の態様では、S220が、低レベル安全プラットフォームに関連するストレージ(例えば、組込みコントローラのストレージ)に出力の第2のセットの各々を記憶することを含み、任意選択的には、出力の第2のセットの過去のバージョンを、1又は複数のトリガに応答してストレージから削除することができる。
【0117】
しかしながら、入力は、他の方法で適切に記憶することができる。
【0118】
4.3 方法-入力のセットに基づく自律エージェントの動作の容易化S230
方法S200は、入力のセットに基づいて自律エージェントの動作を容易にするステップS230を含むことができ、これは、自律エージェントのコンピューティングシステムの故障及び/又は通信の喪失などの、すべての又はほぼすべてのタイプのエージェント故障において回復することができる自律エージェントの動作を可能にするように機能する。追加又は代替として、S230は、自律エージェントがルートを辿ることを可能にし、自律エージェントが、現在の(及び/又はごく最近の)環境及び/又はエージェントの行動/動作(例えば、交差点での左折に近づくこと、高速道路の右車線で運転すること、停止信号に近づくことなど)について構成される特別なフォールバック計画及び/又は制御コマンドのセットを実施することを可能にするように機能することができ、且つ/又は他の任意の適切な機能を実行することができる。S230は、好ましくは、エージェントのドライブバイワイヤ制御システムを介して実行されるが、追加又は代替として、任意の適切な1又は複数の制御システムを使用して実行することもできる。
【0119】
S230は、一次モード(例えば、一次計画が実施される)とフォールバックモード(例えば、フォールバック計画が実施される)との間でシステム(及び/又はその低レベル安全プラットフォーム)を選択的に動作させること(動作モードに基づいて通信ネットワークに出力のセットを送信すること)を含むことができ、一次モードでは、S230が、(例えば、S210で決定した)一次計画に基づいて車両の動作を容易にし、フォールバックモードでは、S230が、記憶したフォールバック計画に基づいて車両の動作を支援する。
【0120】
S230は、低レベル安全プラットフォームのウォッチドッグ(別名、検証モジュール)などによる、1又は複数のフォールバック条件の決定に基づいて、一次モードとフォールバックモードとの間を移行することを含むことができる。フォールバック条件は、コンピューティングシステムからの入力の欠如を検出することに応答して(例えば、到着予定時刻が経過した後に、予め設定された期間が経過した後などに)決定され、これは、コンピューティングシステムが故障したことを示すことができる。追加又は代替として、(例えば、警告及び/又はメッセージなどに応答して、センサシステム及び/又は健全性モニタのセットから;出力104及び/又は106の健全性を監視するウォッチドッグなどを介して)コンピューティングシステムが故障したという能動的な判定及び/又はその出力が信頼できないという能動的な判定に基づいて、別のシステムコンポーネント(例えば、センサシステム)が故障したことに応答して、1又は複数のデータの不整合を(例えば、上流のデータ源において)検出したことに応答して、特定の状況及び/又は環境(例えば、近くで検出された救急車及び/又は消防車などの緊急車両、故障及び/又はエッジケースなどの異常な状況など)に応答して、且つ/又は、他の任意の適切な時点において、且つ/又は、エージェントが最小リスク条件に達するための他の任意の動機付けを与える条件下において、フォールバック条件を決定することができる。
【0121】
実施態様では、(例えば、コンピューティングシステム、低レベル安全プラットフォームなどによって生成された)一次計画又はフォールバック計画に対応する命令(例えば、軌道、ウェイポイントのセットなど)を、エージェントの制御システム(例えば、ドライブバイワイヤシステム)、及び/又はシステムの他の任意の適切なコンポーネントに送信することができる。命令は、好ましくは、出力の第1のセット104(例えば、一次計画、軌道など)又は出力の第2のセット106(例えば、フォールバック計画、ウェイポイントのセットなど)に関連する計画のいずれかであるが、追加又は代替として、異なる計画(例えば、出力の第2のセットの軌道に基づいて決定される修正軌道)、他の制御コマンド、他の情報、及び/又は自車両をナビゲーションする他の任意の適当な命令を含むことができる。
【0122】
ある態様のセットでは、その一例が図8に示されているが、S230が、コンピューティングシステムとの通信が存在することを(例えば、ウォッチドッグで)検出し、それに応答して、出力の第1のセットの命令(例えば、最新の軌道)を通信ネットワークに送信することにより、システムを第1の動作モードで制御することを含むことができ、これは、コンピューティングシステムが動作しているときにエージェントのルートに沿った通常の動作軌道を(通信ネットワークを介して)制御システムに提供するように機能する。S230は、さらに、コンピューティングシステムとの通信が失われたことを検出し、それに応答して、出力の第2のセット(例えば、フォールバック計画)に関連する命令(例えば、ウェイポイントのセットなど)を通信ネットワークに送信することによってフォールバック動作モードでシステムを制御することとを含むことができ、これは、緊急事態(例えば、コンピューティングシステム障害)が発生した場合に、軌道及び/又は位置(例えば、ウェイポイント)及び/又は車両を安全に動作させる(例えば、車両を路肩に停車させる、車両を路肩に寄せられない場合に運転を継続する、動作を終了させてから路肩に寄せる又は停車させる、コンピューティングシステムが動作可能になるまで安全に動作させる、安全状態/ナビゲーショナルエッジなどに到達する)ように構成された制御コマンドを制御システムに提供するように機能する。追加又は代替として、S230は、(例えば、その関連する有効期限パラメータに基づいて、障害物検出ルーチンなどに基づいて)出力の第2のセットの選択された出力が安全に実施できることを保証するように機能することができ、且つ/又は他の任意の適切な機能を実行することができる。
【0123】
いくつかの態様では、フォールバックモードでの動作を支援することは、任意選択的には、直近の第2の出力(例えば、ウェイポイントのセット、制御コマンドのセット、安全軌道など)の有効期限パラメータをチェックすることを含むことができ、直近の第2の出力が有効期限切れでない場合、対応する軌道が通信ネットワークに渡される。
【0124】
追加又は代替として、S230は、任意選択的には、(例えば、エージェントが障害物に遭遇しないことを保証するためのセンサ入力に基づいて)第2の出力を検証すること、(例えば、センサ入力に基づいて)第2の出力を修正すること、(例えば、センサ入力に基づいて、すべての安全軌道が期限切れになった場合など)新しいウェイポイントのセット及び/又は軌道及び/又は制御コマンドのセットを生成すること、及び/又は他の任意のプロセスを含むことができる。
【0125】
追加又は代替として、フォールバックモードでの動作を支援することは、複数の実行可能な第2の出力オプション(例えば、複数の軌道が期限切れでない場合に複数の安全軌道)のなかから選択すること、及び/又は他の任意の適切なプロセスを含むことができる。
【0126】
さらに追加又は代替として、フォールバックモードでの動作を支援することは、(例えば、上述したように)センサ入力のセットの受信をトリガすることなど、他の任意のプロセスをトリガすることを含むことができる。いくつかの態様では、例えば、コンピューティングシステムの故障を検出することに応答して、低レベル安全プラットフォームは、コンピューティングシステムで通常受信されるセンサ入力及び/又はこれらのセンサ入力のサブセット(例えば、LIDARセンサの一部のサブセット、エージェントの関連ビューのみからのセンサなど)が、低レベル安全プラットフォームに追加的に受信及び/又は転送されるのをトリガすることができる。追加又は代替として、S230は、センサ入力がないとき、センサ入力をすでに受信している場合(例えば、センサ入力を継続的に受信している場合)に、実行することができ、且つ/又はS230は、他の任意の適切なプロセスを含むことができる。
【0127】
S230は、追加又は代替として、他の任意の適切なプロセスを含むことができ、且つ/又は他の方法で適切に実行することができる。
【0128】
しかしながら、この方法は、他の任意の適切な要素を含むことができ、且つ/又は他の方法でフォールバック計画及び制御を支援することができる。
【0129】
4.5 方法-バリエーション
方法200の第1の態様では、(例えば、図2に示すように、図3A及び図3Bなどに示すように)、当該方法が、低レベル安全プラットフォームにおいて、コンピューティングシステムから入力のセットを受信するステップであって、入力のセットが、第2の出力(例えば、安全軌道、最も近いナビゲーショナルエッジに到達するように構成されたウェイポイントのセット、ウェイポイントのセットに基づいて決定された未処理のアクチュエータ制御コマンドのセットなど)、及び任意選択的に第2の出力に関連する有効期限パラメータを含む、ステップと、第2の出力及びその有効期限パラメータを記憶するステップと、コンピューティングシステムとの通信が失われた場合及び/又は別のトリガが起動された場合に、第2の出力を通信ネットワークに送信するステップと、通信ネットワークを介して制御システム(例えば、ドライブバイワイヤ制御システム)に送信された出力に基づいて自律エージェントを動作させるステップとを含む。
【0130】
方法200の第2の態様では、(例えば、図2に示すように、図3A及び図3Bなどに示すように)、当該方法が、低レベル安全プラットフォームにおいて、コンピューティングシステムから入力のセットを受信するステップであって、入力のセットが、第1の出力(例えば、動作軌道)、第2の出力(例えば、安全軌道、未処理のアクチュエータ制御コマンドのセットなど)、及び第2の出力に関連する有効期限パラメータを含む、ステップと、第2の出力及びその有効期限パラメータを記憶するステップと、コンピューティングシステムとの通信が存在する場合に、第1の出力を通信プラットフォームに送信するステップと、コンピューティングシステムとの通信が失われた場合及び/又は別のトリガが起動された場合に、第2の出力を通信ネットワークに送信するステップと、通信ネットワークを介して制御システム(例えば、ドライブバイワイヤ制御システム)に送信された出力に基づいて自律エージェントを動作させるステップとを含む。
【0131】
代替的な実施形態は、コンピュータ可読命令を記憶する非一時的なコンピュータ可読媒体において、上記方法及び/又は処理モジュールを実装する。命令は、コンピュータ可読媒体及び/又は処理システムと統合されたコンピュータ実行可能コンポーネントによって実行され得る。コンピュータ可読媒体は、RAM、ROM、フラッシュメモリ、EEPROM、光学デバイス(CD又はDVD)、ハードドライブ、フロッピードライブ、非一時的なコンピュータ可読媒体、又は任意の適切なデバイスなど、任意の適切なコンピュータ可読媒体を含むことができる。コンピュータ実行可能コンポーネントは、CPU、GPU、TPUS、マイクロプロセッサ又はASICなどの、非一時的なコンピュータ可読媒体に接続されたコンピューティングシステム及び/又は処理システム(例えば、1又は複数のコロケーション又は分散、リモート又はローカルプロセッサを含む)を含むことができるが、命令は、代替又は追加として任意の適切な専用ハードウェアデバイスによって実行することができる。
【0132】
システム及び/又は方法の実施形態は、様々なシステムコンポーネント及び様々な方法プロセスのあらゆる組合せ及び順列を含むことができ、本明細書に記載の方法及び/又はプロセスの1又は複数のインスタンスは、非同期的に(例えば、順次)、同時期に(例えば、同時に、並行してなど)、又は他の任意の適切な順序で、且つ/又は本明細書に記載のシステム、要素及び/又はエンティティの1又は複数のインスタンスによって且つ/又はそれらを使用して、実行することができる。以下のシステム及び/又は方法のコンポーネント及び/又はプロセスは、上述した出願に開示のシステム及び/又は方法のすべて又は一部とともに、それらに加えて、それらに代えて、又は他の方法で統合して、使用することができ、それら出願の各々は、この引用によってその全体が援用されるものとする。
【0133】
当業者は、前述した詳細な説明並びに図面及び特許請求の範囲から認識されるように、以下の特許請求の範囲で定義される本発明の範囲から逸脱することなく、本発明の好ましい実施形態に修正及び変更を加えることができる。
図1
図2
図3A
図3B
図4
図5
図6
図7
図8
図9A
図9B