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

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

▶ ウーブン プラネット ノース アメリカ,インコーポレイティドの特許一覧

特表2023-529959離脱予測とトリアージ支援のためのシステムと方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-07-12
(54)【発明の名称】離脱予測とトリアージ支援のためのシステムと方法
(51)【国際特許分類】
   G08G 1/16 20060101AFI20230705BHJP
   B60W 60/00 20200101ALI20230705BHJP
   B60W 30/08 20120101ALI20230705BHJP
   B60W 50/08 20200101ALI20230705BHJP
   B60W 50/035 20120101ALI20230705BHJP
【FI】
G08G1/16 C
B60W60/00
B60W30/08
B60W50/08
B60W50/035
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022576556
(86)(22)【出願日】2021-04-23
(85)【翻訳文提出日】2023-02-10
(86)【国際出願番号】 US2021028951
(87)【国際公開番号】W WO2021252084
(87)【国際公開日】2021-12-16
(31)【優先権主張番号】16/899,252
(32)【優先日】2020-06-11
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521411231
【氏名又は名称】ウーブン プラネット ノース アメリカ,インコーポレイティド
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【弁理士】
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100147555
【弁理士】
【氏名又は名称】伊藤 公一
(74)【代理人】
【識別番号】100123593
【弁理士】
【氏名又は名称】関根 宣夫
(74)【代理人】
【識別番号】100133835
【弁理士】
【氏名又は名称】河野 努
(72)【発明者】
【氏名】シアオチエ リー
(72)【発明者】
【氏名】セン シュイ
【テーマコード(参考)】
3D241
5H181
【Fターム(参考)】
3D241BA30
3D241BA31
3D241BA50
3D241BA51
3D241BC01
3D241BC02
3D241CD12
3D241CE02
3D241CE04
3D241DB20Z
3D241DC01Z
3D241DC18Z
3D241DC25Z
3D241DC31Z
3D241DC33Z
3D241DC35Z
3D241DC37Z
5H181AA01
5H181BB04
5H181BB05
5H181BB13
5H181BB20
5H181CC03
5H181CC04
5H181CC12
5H181CC14
5H181CC27
5H181FF04
5H181LL01
5H181LL02
5H181LL04
5H181LL06
5H181LL09
(57)【要約】
1つの実施形態においては、車両の演算システムは、自律運転モードにおいて動作している間に車両が遭遇するシナリオと関連付けられている知覚データを受信しうる。システムは、少なくとも知覚データに基づいてシナリオを識別しうる。システムは、識別されたシナリオに従って車両をナビゲートするための車両ナビゲーションプランと関連付けられている性能測定基準を生成しうる。車両ナビゲーションプランと関連付けられている性能測定基準は、識別されたシナリオに従って車両をナビゲートするための1つ以上の基準を満たさないという決定に応答して、システムは、自律運転モードから車両を離脱させることに関連している離脱動作を誘発しうる。システムは、誘発された離脱動作と関連付けられている離脱レコードを生成しうる。離脱レコードは、離脱動作に関連する、車両が遭遇した識別されたシナリオと関連付けられている情報を含みうる。
【選択図】図5
【特許請求の範囲】
【請求項1】
演算システムにより、
自律運転モードにおいて動作している間に車両が遭遇するシナリオと関連付けられている知覚データを受信することと、
少なくとも前記知覚データに基づいて前記シナリオを識別することと、
前記識別されたシナリオに従って前記車両をナビゲートするための車両ナビゲーションプランと関連付けられている性能測定基準を生成することと、
前記車両ナビゲーションプランと関連付けられている前記性能測定基準は、前記識別されたシナリオに従って前記車両をナビゲートするための1つ以上の基準を満たさないという決定に応答して、前記自律運転モードから前記車両を離脱させることに関連している離脱動作を誘発することと、
前記誘発された離脱動作と関連付けられている、前記離脱動作に関連する、前記車両が遭遇した前記識別されたシナリオと関連付けられている情報を備えている離脱レコードを生成することと、
を有している、方法。
【請求項2】
前記離脱動作は、
前記車両は前記自律運転モードから離脱されるという警告メッセージをオペレータに送ることと、
前記車両の速度を落とすことと、または、
前記自律運転モードから前記車両を自動的に離脱させることと、
を有している、請求項1に記載の方法。
【請求項3】
前記性能測定基準は前記1つ以上の基準を満たさないという前記決定の前に、前記方法は、
前記車両が遭遇する追加的シナリオと関連付けられている追加的知覚データを受信することと、
前記追加的知覚データに基づいて、前記追加的シナリオは識別できないと決定することと、
前記シナリオは識別できないと決定することに応答して、前記車両を前記自律運転モードから離脱するように誘発することと、
を更に有している、請求項1に記載の方法。
【請求項4】
識別不可シナリオを含めるために前記車両の運行設計領域に対応するデータベースを更新することと、
前記識別不可シナリオと関連付けられているフィードバックを受信することと、
前記識別不可シナリオを識別するために前記フィードバックを使用することと、
を更に有している、請求項3に記載の方法。
【請求項5】
前記シナリオは、前記シナリオと関連付けられている前記知覚データが、前記車両の運行設計領域により定義されている1つ以上の以前に識別されたシナリオと関連付けられているデータに対応するかどうかを決定することに少なくとも基づいて識別される、請求項1に記載の方法。
【請求項6】
少なくとも前記知覚データに基づいて前記シナリオを識別する前に、前記方法は、
前記車両により受信された更なる知覚データに基づいて既知のシナリオを識別することであって、前記識別された既知のシナリオは、前記運行設計領域に対応する複数の予め決定されているシナリオから除外され、
前記識別された既知のシナリオが前記複数の予め決定されているシナリオから除外されることに従って、前記自律運転モードから前記車両を自動的に離脱させることと、
前記車両の前記識別された既知のシナリオに基づいて、新しい離脱レコードを自動的に生成することと、
を更に有している、請求項5に記載の方法。
【請求項7】
前記離脱レコードは、予め記入されているテンプレートを含むために自動的に生成され、前記予め記入されているテンプレートは前記識別されたシナリオを含んでいる、請求項1に記載の方法。
【請求項8】
前記予め記入されているテンプレートと関連付けられているフィードバック情報を受信することと、
前記フィードバック情報に基づいて、前記予め記入されているテンプレートに含まれている前記識別されたシナリオは正しくないと決定することと、
前記予め記入されているテンプレートにおいて、前記識別されたシナリオを他のシナリオと置き換えることと、
を更に有している、請求項7に記載の方法。
【請求項9】
前記性能測定基準を評価するための前記1つ以上の基準は、
前記車両と他のエージェントまたは物体との間の距離が予め決定されている閾値距離以上であることと、
移動速度が予め決定されている速度範囲内であることと、
加速度または減速度が予め決定されている加速度範囲内であることと、
方向転換半径が予め決定されている半径範囲にあることと、または
近くの物体に関する相対速度が予め決定されている相対速度範囲内であることと、
の1つ以上を有している、請求項1に記載の方法。
【請求項10】
複数のシナリオのカテゴリのそれぞれに関する複数の予め決定されているシナリオのそれぞれに対する確率スコアを決定することを更に有し、
前記確率スコアは、そのシナリオが関連付けられているシナリオカテゴリに属している確率レベルを示し、
前記複数のシナリオは、前記関連付けられている確率スコアに基づいて前記複数のシナリオのカテゴリに分類される、請求項1に記載の方法。
【請求項11】
前記車両が前記自律運転モードから離脱された後に、車両動作データを取り込むことと、
前記取り込んだ車両動作データを、前記識別されたシナリオと関連付けられている離脱レコードに含めることと、
を更に有し、
前記取り込んだ車両動作データは、車両の加速度、車両の速度、または車両の軌道の少なくとも1つを含んでいる、請求項1に記載の方法。
【請求項12】
前記車両が同時に遭遇している複数のシナリオの各シナリオに対する、各シナリオと関連付けられている過酷さのレベルに基づく重要度スコアを決定することと、
前記識別されたシナリオは、前記車両が同時に遭遇している前記複数のシナリオの中で最も高い重要度スコアと関連付けられているという決定に応答して、前記車両が同時に遭遇している前記複数のシナリオから前記識別されたシナリオを選択することと、
を更に有している、請求項1に記載の方法。
【請求項13】
前記識別されたシナリオと関連付けられている画像に対する画像ラスタを生成することと、
前記画像ラスタの画素の解析に基づいて、前記離脱動作と関連付けられている離脱イベントを分類することを更に有し、
前記離脱レコードは、前記分類された離脱イベントに基づいて生成される、請求項1に記載の方法。
【請求項14】
前記離脱レコードは、前記識別されたシナリオを記述しているテキストコンテンツを備え、
テキスト認識アルゴリズムを使用して前記離脱レコードの前記テキストコンテンツを解析することと、
前記テキスト認識アルゴリズムの解析結果に基づいて、前記離脱レコードに含まれている前記離脱動作に関する前記識別されたシナリオを選別するための特別なチームに前記離脱レコードを割り当てることと、
を更に有している、請求項1に記載の方法。
【請求項15】
前記離脱レコードは、前記識別されたシナリオと関連付けられている画像を備え、
画像分類アルゴリズムを使用して前記離脱レコードの前記画像を解析することと、
前記画像分類アルゴリズムの前記解析結果に基づいて、前記離脱レコードを選別するための前記特別なチームに前記離脱レコードを割り当てることと、
を更に有している、請求項14に記載の方法。
【請求項16】
第1の新しいシナリオは識別不可シナリオであるということに応答して、前記自律運転モードから前記車両を自動的に離脱させることと、
前記識別不可シナリオと関連付けられている知覚データを含んでいる新しい離脱レコードを生成することと、
前記新しい離脱レコードに含まれている前記知覚データを、オペレータのフィードバックに基づいて識別可能シナリオと関連付けることと、
を更に有している、請求項1に記載の方法。
【請求項17】
第2の新しいシナリオは識別可能シナリオであるということに応答して、前記車両により生成されたナビゲーションプランに従って前記車両を前記自律運転モードにおいてナビゲートすることを更に有している、請求項16に記載の方法。
【請求項18】
シナリオ情報と車両性能情報を、複数のシナリオと関連付けられている複数の離脱レコードから抽出することと、
前記抽出されたシナリオ情報と車両性能情報に基づいてナビゲーションプラニングシステムを訓練することを更に有し、
前記ナビゲーションプラニングシステムは訓練されると、前記車両が前記複数のシナリオにおいて1つ以上の予め決定されている基準を満たす性能測定基準を有することを可能にする車両ナビゲーションプランを生成する、請求項1に記載の方法。
【請求項19】
ソフトウェアを含んでいる1つ以上の非一時的コンピュータ読み取り可能格納媒体であって、前記ソフトウェアは、演算システムの1つ以上のプロセッサにより実行されると、
自律運転モードにおいて動作している間に車両が遭遇するシナリオと関連付けられている知覚データを受信し、
少なくとも前記知覚データに基づいて前記シナリオを識別し、
前記識別されたシナリオに従って前記車両をナビゲートするための車両ナビゲーションプランと関連付けられている性能測定基準を生成し、
前記車両ナビゲーションプランと関連付けられている前記性能測定基準は、前記識別されたシナリオに従って前記車両をナビゲートするための1つ以上の基準を満たさないという決定に応答して、前記自律運転モードから前記車両を離脱させることに関連している離脱動作を誘発し、
前記誘発された離脱動作と関連付けられている、前記離脱動作に関連する、前記車両が遭遇した前記識別されたシナリオと関連付けられている情報を備えている離脱レコードを生成するように動作可能である、
1つ以上の非一時的コンピュータ読み取り可能格納媒体。
【請求項20】
システムであって、
命令を含んでいる1つ以上の非一時的コンピュータ読み取り可能格納媒体と、
前記非一時的コンピュータ読み取り可能格納媒体に結合されている1つ以上のプロセッサを備え、前記1つ以上のプロセッサは、
自律運転モードにおいて動作している間に車両が遭遇するシナリオと関連付けられている知覚データを受信し、
少なくとも前記知覚データに基づいて前記シナリオを識別し、
前記識別されたシナリオに従って前記車両をナビゲートするための車両ナビゲーションプランと関連付けられている性能測定基準を生成し、
前記車両ナビゲーションプランと関連付けられている前記性能測定基準は、前記識別されたシナリオに従って前記車両をナビゲートするための1つ以上の基準を満たさないという決定に応答して、前記自律運転モードから前記車両を離脱させることに関連している離脱動作を誘発し、
前記誘発された離脱動作と関連付けられている、前記離脱動作に関連する、前記車両が遭遇した前記識別されたシナリオと関連付けられている情報を備えている離脱レコードを生成するために前記命令を実行するように動作可能である、
システム。
【発明の詳細な説明】
【背景技術】
【0001】
自律車両または運転手支援機能を有する手動運転車両は、関連付けられている環境の知覚データに基づいてそれらの周囲の環境をナビゲートできる。車両は典型的には、カメラ、レーダー、およびライダーなどのようなセンサを使用してその環境を知覚する。そして演算システム(computing system)(例えば、車上コンピュータおよび/またはリモートサーバコンピュータ)は、周囲の環境において検出された状況に応答して、動作に関する決定をするためにセンサデータを処理および解析できる。
【0002】
既存の自律車両は、自律運転から離脱(disengage)させるために人間のオペレータに頼ることができる。例えば、安全な運転をする運転手(以降、安全運転手と表記)は、安全性に不安を感じたときは自律運転モードから車両を離脱させ、車両の制御を引き継ぐことができる。しかし、自律車両を離脱させるプロセスは安全運転手により主観的になってしまう可能性がある。
【図面の簡単な説明】
【0003】
図1A】自律運転から離脱させ、離脱レコードを選別する(triaging)ために既存の自律車両(AV)により使用される例としてのプロセスを示している図である。
図1B】自律運転から車両を自動的に離脱させ、離脱レコードを自動的に選別するための例としてフレームワークを示している図である。
図2A】車両システムにより識別できない例としてのシナリオを示している図である。
図2B】自律車両のプラニングシステムによりサポートされていない例としての識別可能シナリオを示している図である。
図2C】自律車両のプラニングシステムによりサポートされていない他の例としてのシナリオを示している図である。
図2D】車両のプラニングシステムによりサポートされている例としてのシナリオ、およびこのシナリオに従って車両をナビゲートするための例としての計画された軌道を示している図である。
図2E】車両のプラニングシステムによりサポートされている他の例としてのシナリオ、およびこのシナリオに従って車両をナビゲートするための例としての計画された軌道を示している図である。
図3A】車両が遭遇する特別なシナリオに対する離脱レコードを生成するために使用される例としてのテンプレートを示している図である。
図3B図3Aにおけるレコードテンプレートに基づいて生成される例としての離脱レコードを示している図である。
図4A】シナリオ特有データに基づいてシナリオ分類アルゴリズムを更新するための例としてのフレームワークを示している図である。
図4B】シナリオ特有データに基づいてプラニングシステムを再訓練するための例としてのフレームワークを示している図である。
図5】車両が遭遇するシナリオに基づいて離脱動作を自動的に誘発するための例としての方法を示している図である。
図6】例としての演算システムを示している図である。
【発明を実施するための形態】
【0004】
下記の記述においては種々の実施形態が記述される。説明の目的のために、特定の構成と詳細が実施形態の完全な理解を提供するために記述されている。しかし、この技術における技量を有する者には、実施形態は特定の詳細なしで実践できるということは明白であろう。更に、記述されている実施形態を不明瞭にしないために、周知の特徴は省略または簡略化されることもある。加えて、ここにおいて開示されている実施形態は単なる例にすぎず、この開示の範囲はそれらに制限されない。特別な実施形態は、上記に開示されている実施形態の構成要素、要素、特徴、機能、動作、またはステップのすべて、または、その中の幾つかを含むことができ、またはそれらを含まないこともできる。発明に係わる実施形態は、方法、格納媒体、システム、およびコンピュータプログラム製品に向けられている付随する請求項において特に開示されており、1つの請求項のカテゴリ、例えば、方法において言及される任意の特徴は、他の請求項のカテゴリ、例えば、システムにおいても請求できる。付随する請求項における従属項または再参照は形式的な理由のみのために選択されている。しかし、任意の前述の請求項(特には、複数の従属項)に対する意図的な再参照に起因する任意の主題もまた、その請求項と特徴の任意の組み合わせが開示され、付随する請求項において選択された従属項に関係なく請求できるように請求できる。請求できる主題は、付随する請求項において提示されているような特徴の組み合わせだけでなく、請求項における特徴の任意の他の組み合わせも含んでおり、請求項において言及される各特徴は、請求項における任意の他の特徴、または、他の特徴の任意の組み合わせと組み合わせることができる。更に、ここにおいて記述または叙述されている実施形態および特徴の何れも別個の請求項において請求でき、および/または、ここにおいて記述または叙述されている任意の実施形態または特徴との任意の組み合わせにおいて、または付随する請求項の特徴の何れとの任意の組み合わせにおいて請求できる。
【0005】
既存の自律車両(AV)は、車両のプラニングシステムが離脱シナリオを自動的に取り扱うように訓練されていないので、自律運転から車両を離脱させるかどうか、およびいつ離脱させるかを決定するために、車両のプラニングシステムではなく人間の運転手に頼る。人間の運転手が車両を離脱させた後は、この離脱を誘発した、車両が遭遇したシナリオを正確に画定する効果的な方法はこの時点では存在しない。人間の運転手からの主観的な記述は信頼できず一貫性がないことがあり得る。AVは現在、より定量化可能なMPI(miles-per-intervention)(手動モードに切り替える操作の比率)測定基準に基づいて評価されているが、MPI測定基準は、離脱がなぜ誘発されたか、および離脱はいつ誘発されるべきであるかについての特定のシナリオに対して細かいレベルの洞察を提供しない。更に、MPI測定基準は、関連付けられているシナリオにおける精度のよい車両性能情報がないので、シナリオ検出/分類または自動プラニングを向上するためにAVの自律スタックにフィードバックを提供することに使用できない。加えて、現在のトリアージプロセスは、離脱例を分類するために各離脱レポートを調べることを人間の専門家に頼っており、それは遅く効率的でない。
【0006】
これらの問題を解決するために、システムの特別な実施形態は、観測されたシナリオは、車両が自律または半自律運転モードから離脱させること、従って、少なくとも1つ以上の自動化された実行を誘発することを正当化するかどうかを自動的に予測できる。ここにおいて、自動化された実行には、(1)オペレータに車両の制御をするように警告すること、(2)速度を落とし、車両を自動的に離脱させること、または、(3)離脱レコードおよびトリアージレコードを生成することが含まれる。システムは、車両知覚データに基づいてシナリオを分類および識別するために機械学習(ML)モデルを使用できる。システムは、現在のシナリオに対して、そのシナリオが既知であり、車両により取り扱うことができるときは性能評価を実行できる。このシナリオに対する車両性能は、計画された車両の軌道と1つ以上の評価ルールに基づいて評価できる。性能が予め決定されている閾値よりも低いときは、システムは、自動的車両離脱動作(車両の速度を落とし、運転手に運転を引き継ぐように警告し、車両を離脱させることができる)を誘発するために離脱予測モジュールを使用できる。そしてシステムは、現在のシナリオに基づいて、予め記入されている(pre-filled)離脱レコードを生成でき、離脱レコードと車両の現在の性能測定基準に基づいてトリアージレコードを生成できる。現在のシナリオは識別できるが、車両により取り扱うことができないときは、システムは自動離脱を誘発し、予め記入されている離脱レコードを生成するために離脱予測モジュールを直接使用できる。現在のシナリオがシステムにより識別できないときは、システムは、安全運転手が離脱を誘発するかどうかを決定することを可能にできる。予め記入されている離脱レコードは運転手により編集可能である。離脱レコードとトリアージレコードにおけるシナリオ特有データは、将来のシナリオを識別および分類するためのシステムの能力を向上するためにシステムを訓練することに使用できる。
【0007】
AVが遭遇するシナリオを自動的に識別および分類することにより、システムは、AVが特定のシナリオおよび車両性能測定基準に基づいて離脱を自動的に誘発し、離脱レコードとトリアージレコードを生成することを可能にできる。離脱レコードとトリアージレコードを自動的に生成することにより、システムの特別な実施形態は、離脱がなぜ誘発されたか、および離脱はいつ誘発されるべきかに対する洞察を含む細かいシナリオ特有データを提供できる。この細かいシナリオ特有データを取り込むことにより、システムの特別な実施形態は、離脱データと、離脱データに対する人間のオペレータのフィードバック(例えば、人間のオペレータは、予め記入されているシナリオ分類、我々の予め記入されているレコードからの肯定的および否定的サンプルを変更または調整したかどうか)を通して特別なシナリオにAVがどのように応答するかについての洞察を提供できる。システムの特別な実施形態は、AVにより知覚されたときのシナリオをより精度よく分類し、AVが自律運転からいつ離脱させるかを自動的に決定する能力を学習することを可能にするためにシステムを訓練することにシナリオ特有データを使用できる。システムの特別な実施形態は、これらのシナリオにおいて車両をナビゲートするためのより良好なナビゲーションプランをどのようにして生成するか、そして結果的に、これらのシナリオにおいて車両を自律的にナビゲートすることを学習するためシステムを訓練することにシナリオ特有データを使用できる。フレームワーク内で、車両が遭遇する異なるシナリオを取り扱うことにより、システムの特別な実施形態は、自律運転から車両を離脱させるかどうか、およびいつ離脱させるかに対する一様なベンチマークを提供できる。
【0008】
図1Aは、自律運転から離脱させ、離脱レコードを選別するために既存の自律車両(AV)により使用される例としてのプロセス100Aを示している。既存のAVは、自律運転モードから車両を離脱させるかどうか、およびいつ離脱させるかを決定するために人間の運転手に頼ることができる。例えばAVは、車両の周囲の環境に関する知覚データを取り込み、知覚データを車両のプラニングシステム102に供給するためにデータ収集モジュール101を使用できる。プラニングシステム102は知覚データに基づいてナビゲーションプランを生成でき、車両を制御システム103を通して制御することにより車両をナビゲートできる。プラニングシステム103は離脱シナリオを自動的に取り扱う(例えば、自律運転から自動的に離脱させる)ように訓練されていなくてもよい。その代わり、人間のオペレータ104(例えば、安全運転手)は、自律運転から車両を離脱させ、そして車両の制御を引き継ぐかどうかを決定するために周囲の環境と車両性能を観測できる。人間の運転手が車両を離脱(例えば、離脱システム105を通して)させた後は、この離脱に繋がる、車両が遭遇したシナリオを正確に画定する効果的な方法はこの時点では存在しない。人間の運転手は、自律運転から車両を離脱させるたびに離脱レポート106を生成できる。しかし、人間の運転手からの主観的な記述は信頼できず一貫性がないことがあり得、将来における類似のシナリオを取り扱う車両の能力を向上するためには効果的に使用できない。更に、AVは、離脱がなぜ誘発されたか、および離脱はいつ誘発されるべきかについて特定のシナリオについての細かいレベルの洞察を提供しない「miles-per-intervention(MPI)」測定基準に基づいて現在は評価される可能性がある。これらのシナリオに関する精度のよい車両性能情報がないので、MPI測定基準は、シナリオ検出/分類、または自動プラニングを向上するためにAVの自律スタックにフィードバックを提供することに使用できない。加えて、現在のトリアージプロセス107は、離脱例を分類するために各離脱レポートを調べることを人間の専門家に頼る可能性があり、プロセスは遅く効率的でない可能性がある。
【0009】
図1Bは、自律運転から車両を自動的に離脱させ、離脱レコードを自動的に選別するための例としてのフレームワーク100Bを示している。特別な実施形態においては、自律車両は、車両が遭遇している現在のシナリオは、自律または半自律運転モードから車両を離脱させること、従って、1つ以上の自動化された実行(例えば、運転手に車両の制御を行うように警告すること、速度を落とし、車両を自動的に離脱させること、および離脱レコードとトリアージレコードを生成すること)を誘発することを正当化するかどうかを自動的に予測するためにフレームワーク100Bを使用できる。特別な実施形態においては、システムは、周囲の環境の知覚データ131を取り込むためにデータ収集モジュール111を使用できる。知覚データ131は、自律運転モードにおいてナビゲートしているときに車両が遭遇する特別なシナリオと関連付けることができる。システムは、知覚データ131をプラニングシステム112に供給でき、プラニングシステム112は、現在のシナリオにおいて車両をナビゲートするために知覚データに基づいてナビゲーションプラン132を生成できる。システムは、制御システム113を通して車両を制御でき、プラニングシステム112により生成されたナビゲーションプラン132に基づいて車両をナビゲートできる。自律運転から車両を離脱させるかどうか、およびいつ離脱させるかを決定するためにオペレータ114(例えば、安全運転手、またはテレオペレータ)に完全に頼よる代わりに、システムは、知覚データ131をシナリオ分類モジュール121に供給でき、シナリオ分類モジュール121は知覚データ131に基づいて車両が遭遇している現在のシナリオを分類する。車両が遭遇している現在のシナリオは車両のプラニングシステム112によりサポートされている既知のシナリオであるという決定に応答して、システムは、車両を現在のシナリオに従ってナビゲートするためにプラニングシステム112により生成された現在のナビゲーションプラン132に基づいて車両性能を評価することに性能評価モジュール123を使用できる。現在のナビゲーションプラン132における車両性能は、計画された車両の軌道と1つ以上の評価ルールに基づいて評価できる。例えば、システムは、現在のナビゲーションプラン132に基づいて車両性能スコア(例えば、[0,1]の正規化された範囲内)を計算でき、性能スコアを予め決定されている閾値と比較できる。
【0010】
特別な実施形態においては、性能スコアが予め決定されている閾値よりも低い(良好でない車両性能を示している)ときは、システムは、離脱予測モジュール125を通して自動的車両離脱動作を誘発できる。自動的車両離脱動作は、車両の速度を落とすことができ、運転手に車両制御を引き継ぐように警告でき、離脱モジュール115を通して自律運転から車両を自動的に離脱させることができる。そしてシステムは、車両の現在のシナリオに係わる予め記入されている離脱レコードに基づいて離脱レコード116を自動的に生成できる。自動的に生成された離脱レコード116はオペレータ114により編集できる。システムは、新しく生成された離脱レコード116を自動的に発送することができ(例えば、発送モジュール126を通して)、離脱レコードおよび車両の評価された性能測定基準に基づいてトリアージレコード117を生成できる。離脱レコード116とトリアージレコード117におけるシナリオ特有データは、将来のシナリオを識別および分類するためのシステムの能力を向上するためにシステムを訓練することに使用できる。
【0011】
現在のシナリオはプラニングシステム112によりサポートされていない既知のシナリオであるという決定に応答してシステムは、自動離脱動作115を誘発し、予め記入されているテンプレートに基づいて離脱レコード116を生成するために離脱予測モジュール125を直接使用できる。現在のシナリオはシステムにより識別できないという決定に応答して、システムは、オペレータ114(例えば、安全運転手またはテレオペレータ)が自律運転から車両を離脱させるかどうか、およびいつ離脱させるかを決定することを可能にできる。この開示において記述されている自律車両は例としての目的のためのみであり、この開示において記述されている方法、プロセス、および原理は自律車両に制限されないということは注目に値する。例えば、この開示において記述されている方法、プロセス、および原理は、自律車両、人間の運転手またはリモートオペレータにより運転される車両、運転手支援システムを有する車両、人間と機械によりハイブリッドで運転される車両、または任意の適切な車両に適用可能であることができる。
【0012】
特別な実施形態においては、車両のデータ収集モジュール111は、例えば、下記に制限されないが、光学カメラ、サーマルカメラ、ライダー、レーダー、速度センサ、操舵角センサ、制動圧センサ、GPS、慣性測定ユニット(IMU)、加速度センサなどを含む多数のセンサまたは感知システムを含むことができる。車両システムは、周囲の環境において車両が遭遇するシナリオに関する知覚データ131を取り込むために、センサとカメラを制御および調整することに1つ以上の演算システム(例えば、データ収集装置、モバイルフォン、タブレット、モバイルコンピュータ、車上コンピュータ、高性能コンピュータ)を含むことができる。特別な実施形態においては、車両システムは、例えば、下記に制限されないが、車両の速度、移動方向、車輪の方向、操舵角、操舵輪に掛かる操舵力、ブレーキペダルの圧力、アクセルペダルの圧力、加速度(例えば、IMU出力に基づく)、回転率(例えば、IMU/ジャイロスコープ出力に基づく)、車両移動経路、車両の軌道、位置(例えば、GPS座標)、信号のステータス(例えば、方向転換信号、制動信号、緊急信号のオン/オフステータス)などを含む車両自身に関するデータを収集できる。
【0013】
特別な実施形態においては、車両システムは、周囲の環境における他の近くの車両に関するデータを収集するために1つ以上のセンサまたは感知システムを使用できる。車両システムは、例えば、下記に制限されないが、車両の画像、車両の速度、加速度、車両移動経路、車両走行軌道、位置、方向転換信号ステータス(例えば、方向転換信号のオン/オフ状態)、制動信号ステータス、他の車両までの距離、他の車両に対する相対速度、歩行者までの距離、歩行者に対する相対速度、交通信号機までの距離、交差点までの距離、道路標識までの距離、縁石までの距離、道路上の線に対する相対位置、車両の視野における物体、他の交通エージェントの位置、他の車両の強引さを示す測定基準などを含む他の車両に関する車両データおよび運転行動データを収集できる。
【0014】
特別な実施形態においては、車両システムは、1つ以上のセンサまたは感知システムを使用して周囲の環境の状況に関するデータを収集できる。特別な実施形態においては、車両システムは、例えば、下記に制限されないが、道路レイアウト、歩行者、他の車両、交通ステータス(例えば、近くの車両の数、歩行者の数、交通信号機)、1日のうちの時間(例えば、朝のラッシュアワー、夕方のラッシュアワー、混んでいない時間)、交通状況のタイプ(例えば、高速で移動している交通状況、事故事象、低速で移動している交通状況)、位置(例えば、GPS座標)、道路状況(例えば、工事区域、学校区域、濡れている道路表面、氷結している道路表面)、交差点、道路標識(例えば、停止標識、道路上の線、横断歩道)、近くの物体(例えば、道路の縁石、電柱、看板)、建物、天候条件(例えば、雨、霧、快晴、暑い天候、寒い天候)、または、周囲の環境における任意の他の適切な物体またはエージェントなどの道路状況または周囲の環境の1つ以上の物体に関するデータを収集することができる。特別な実施形態においては、車両の状況に関するデータは、例えば、下記に制限されないが、点群、被写界深度、環境の二次元プロファイル、環境の三次元プロファイル、シーンの立体画像、環境における物体に対する相対位置(例えば、距離、角度)、道路上の線に対する相対位置(例えば、距離、角度)、現在の環境における相対位置、交通状況ステータス(例えば、交通量が多い、交通量が少ない)、他の車両の運転の軌道、他の交通エージェントの動き、他の交通エージェントの速度、他の交通エージェントの移動方向、他の車両の信号ステータスなどを含む、カメラに基づく位置特定データを含むことができる。特別な実施形態においては、車両システムは、1つ以上のセンサを通してリアルタイムで収集された状況に関するデータに基づいて、および/または、データベースに格納されている以前に収集された状況に関するデータに基づいて周囲の環境の知覚による認識結果を決定できる。特別な実施形態においては、車両の状況に関するデータは、車両のナビゲーションデータ、例えば、ナビゲーションマップ、ナビゲーションの目標とする場所、ルート、到着の推定時間、迂回路などを含むことができる。
【0015】
特別な実施形態においては、システムは、車両が遭遇するシナリオを多数のカテゴリに識別および分類するためにルールに基づく分類アルゴリズムを使用できる。特別な実施形態においては、システムは、1台以上のカメラ(例えば、光学カメラ、サーマルカメラ、立体カメラ、ライダー)を使用して周囲の環境の1つ以上の画像を取り込むことができる。システムは、知覚されたシナリオの画像ラスタ(画素で表現される画像)を生成でき、関連付けられているシナリオを自動的に分類するために画像ラスタ内の画素を解析できる。システムは、コンピュータビジョンアルゴリズムを使用して、および一連の画像に基づいて特別なタイプのシナリオと関連付けられている予め決定されているパターンと一致するパターンを決定できる。システムは現在のシナリオを、その特別なタイプのシナリオに対応するシナリオカテゴリに識別および分類できる。例えばシステムは、赤い閃光信号と緊急警告標識を出して道路脇に駐車している1台以上の車両を認識するためにコンピュータビジョンアルゴリズムを使用できる。システムは、車両は道路脇上の車両シナリオに遭遇していると決定できる。他の例として、システムは、1台以上の自転車が車両の前方で移動しており、同じ車線であるということを認識するためにコンピュータビジョンアルゴリズムを使用できる。システムは、車両は自転車を追い越すシナリオに遭遇していると決定できる。システムは、これは自転車を追い越すシナリオの開始の時点であると識別できる。他の例として、システムは、1台以上の損傷した車両、または道路の1つ以上の車線を塞いでいる他の障害物を認識するためにコンピュータビジョンアルゴリズムを使用できる。システムは、車両は周囲の環境において他の車両により引き起こされた車両事故シナリオに遭遇していると決定できる。
【0016】
特別な実施形態においては、システムは、GPS座標、ナビゲーションマップ、画像から識別されたパターンまたは特徴、ナビゲーションルートなどを使用して現在の地理的位置を決定できる。システムは、その特別な地理的位置と関連付けられている予め決定されている知識に基づいて、車両は特別なタイプのシナリオに遭遇していると決定できる。システムは、現在のシナリオをその特別なタイプのシナリオに対応しているシナリオカテゴリに識別および分類できる。例えば、システムは、車両は現在は交差点の近くであり交差点に接近していると決定できる。システムは、車両は車両のナビゲーションルートに基づいてこの交差点で右折する必要があると決定できる。システムは、この交差点のマップに基づいて、右折は安全性が確保されていない右折であると決定できる。システムは、車両は安全性が確保されていない右折シナリオに遭遇していると決定できる。
【0017】
特別な実施形態においては、システムは、多数の予め決定されているシナリオカテゴリに対して多数のシナリオモデルを生成でき、これらのシナリオモデルをデータベースに格納できる。実行時には、システムは、知覚データに基づいて現在のシナリオを識別でき、識別された現在のシナリオをデータベースからアクセスされたシナリオモデルと比較できる。システムは、現在のシナリオが各シナリオカテゴリに属している確率スコアを、現在のシナリオとそのカテゴリの対応するシナリオモデルとの間の比較に基づいて決定できる。そしてシステムは、シナリオカテゴリは最も高い確率スコアと関連付けられているという決定に基づいて、現在のシナリオに対するそのシナリオカテゴリを選択できる。特別な実施形態においては、予め決定されているシナリオカテゴリのシナリオモデルは、同類の全自律車両により収集された経験的運転データに基づいて生成できる。特別な実施形態においては、予め決定されているシナリオカテゴリのシナリオモデルは、人間の専門家による入力としての経験的知識に基づいて生成または調整できる。
【0018】
特別な実施形態においては、システムは、新しいシナリオカテゴリと新しいシナリオモデルを、システムがデータベースに格納されている何れのシナリオモデルとも一致しない未知のシナリオを識別するたびに生成でき、その新しいシナリオモデルをデータベースに格納できる。システムは、このシナリオカテゴリに対する人間のオペレータ(例えば、安全運転手、テレオペレータ、トリアージ専門家)からのフィードバック情報に基づいて、データベースにおける対応するシナリオモデルを更新できる。フィードバック情報は、その特別なシナリオに関する追加的時報、シナリオカテゴリを確認する情報、または、シナリオカテゴリを無効にする情報を含むことができる。フィードバック情報は、人間のオペレータが自動的に生成された離脱レコードとトリアージレコードを調べて編集することを可能にする相互作用プロセスを通して人間のオペレータから受信できる。特別な実施形態においては、データベースにおけるより多くの確認された、または無効とされたシナリオカテゴリとシナリオモデルにより、システムは、データベースにおけるこれらの予め決定されているシナリオカテゴリおよび対応するシナリオモデルに基づいて将来のシナリオをより精度よく且つより正確に識別および分類できる。
【0019】
特別な実施形態においては、シナリオを識別および分類するために車両システムにより使用されるルールに基づくアルゴリズムは、例えば、下記に制限されないが、パターンマッチングアルゴリズム、時系列マッチングアルゴリズムなどを含むことができる。ルールに基づくアルゴリズムにより使用されるルールは、人間の専門家により入力または設定されるような1つ以上のファジールールを含むことができる。例えば、ルールに基づくアルゴリズムは、離脱動作を誘発することを正当化する特別なシナリオと関連付けられている予め決定されている一連の特徴と一致する、時間経過における周囲の環境の一連の特徴を識別できる。他の例として、ルールに基づくアルゴリズムは、離脱動作を誘発することを正当化する特別なシナリオと関連付けられている予め決定されているパターンと一致する予め決定されている時間フレームを有するパターンを識別できる。特別な実施形態においては、これらの予め決定されている特徴またはパターンは、機械学習モデルおよび/または人間の専門家による収集された知覚データに対する特徴/パターンマイニングプロセスを通して決定できる。例として、そして制限的でなく、人間の専門家は、離脱動作が誘発されることを正当化する一連の重要なイベントを特別な時間シーケンス順序で識別でき、この一連の重要なイベントに基づいて、ルールに基づくシナリオ分類アルゴリズムに対して1つ以上のルールを生成できる。実行時において、その特別な時間シーケンス順のこの一連の重要なイベントが認識されると、システムは現在のシナリオを、自動離脱動作を誘発する対応するシナリオカテゴリに分類できる。
【0020】
特別な実施形態においては、システムは、自律運転モードで走行しているときに車両が遭遇するシナリオを分類するために機械学習(ML)モデルを使用できる。特別な実施形態においては、MLモデルは、多数の予めラベルが付けられているシナリオサンプルを使用して教師あり学習プロセスの間に訓練できる。予めラベルが付けられているシナリオサンプルは、人間の専門家、他のMLモデル、またはコンピュータビジョンアルゴリズムにより決定されるような特別なシナリオカテゴリと関連付けられるようにラベルが付けられている知覚データを含むことができる。MLモデルを訓練するために使用される各シナリオサンプルは、特別なシナリオカテゴリと、その特別なシナリオカテゴリに対する予め決定されているカテゴリのラベルに関するシナリオ特有知覚データを含むことができる。MLモデルは訓練されると、車両が自律運転モードで走行する間に、周囲の環境の新しい知覚データをMLモデルに供給できる。MLモデルは知覚データに基づいて、車両が遭遇している現在のシナリオを対応するカテゴリに識別および分類できる。MLモデルは、現在のシナリオが多数のシナリオカテゴリに属する可能性を示す多数の確率スコアを出力できる。MLモデルは、最も高い確率スコアのシナリオカテゴリを現在のシナリオのシナリオカテゴリとして選択できる。特別な実施形態においては、訓練または推測プロセスの間にMLモデルには、例えば、下記に制限されないが、知覚データ(例えば、鳥瞰画像、ラスタ処理された画像、ライダー点群、レーダー信号)、マップデータ、GPSデータ、車両コンピュータCPUおよびメモリ使用データ、車内温度、慣性ナビゲーションシステム(INS)データ、ナビゲーションプランデータ、車両動作および性能データ(例えば、速度、加速度、軌道)、車両制御信号、他のタイプのデータに基づく演算されたデータなどを含む多様なタイプのデータを供給できる。
【0021】
特別な実施形態においては、MLモデルは、多数のシナリオと関連付けられている以前に収集された知覚データを使用して教師なし学習プロセスの間に訓練できる。MLモデルは知覚データから特徴またはパターンを抽出でき、シナリオをこれらの特徴またはパターンに基づいて異なるグループにまとめることができる。実行時において、MLモデルには、車両が自律運転モードで走行している間の車両の周囲の環境の新しい知覚データを供給できる。MLモデルは車両が遭遇するシナリオを、MLモデルに供給された知覚データに基づいて対応するシナリオカテゴリに分類できる。MLモデルは、現在のシナリオが各可能なシナリオカテゴリに属する可能性を示している確率スコアを決定でき、最も高い確率スコアと関連付けられているシナリオカテゴリを現在のシナリオが属しているカテゴリとして識別できる。特別な実施形態においては、システムは、教師あり学習のための訓練サンプルを生成するために、収集された知覚データに対してクラスタ解析を実行することに第1MLモデルを使用できる。例えば、第1MLモデルは収集された知覚データを解析でき、関連するシナリオを、クラスタ解析を使用して多数の初期カテゴリにグループ化する。そして初期カテゴリは、対応するカテゴリラベルをシナリオにラベル付けするために人間の専門家により調整(確認、無効化、修正)できる。特別な実施形態においては、システムは、教師あり学習プロセスの間に第2MLモデルを訓練するために、対応する知覚データを有するこれらのラベルを付けられたシナリオサンプルを使用できる。特別な実施形態においては、システムは、教師あり学習プロセスの間に第1MLモデルを再訓練するために、対応する知覚データを有するこれらのラベルを付けられたシナリオサンプル(人間の専門家により調整されたような)を使用できる。
【0022】
特別な実施形態においては、MLモデルには、画像またはセンサデータに基づいて関連付けられているシナリオを分類するためにこれらの画像または他のセンサデータを直接供給できる。例として、そして制限的でなく、システムは、車両の周囲の環境の1つ以上の鳥瞰画像を生成でき、これらの鳥瞰画像をMLモデルに供給できる。MLモデルはこれらの鳥瞰画像に基づいて、車両が遭遇している現在のシナリオを識別および分類できる。特別な実施形態においては、システムは、周囲の環境の1つ以上の画像またはセンサデータに基づいて、車両の周囲の環境における1つ以上の物体または特徴(例えば、歩行者、他の車両、道路標識、交通信号機)を識別でき、これらの識別された物体または特徴を、これらの識別された物体に基づいて、関連付けられているシナリオを対応するカテゴリに分類するMLモデルに供給できる。特別な実施形態においては、これらの物体は、1つ以上のコンピュータビジョンアルゴリズム(例えば、物体認識アルゴリズム)または、物体認識のための他のMLモデルを使用して識別できる。
【0023】
図2Aは、車両システムにより識別できない例としてのシナリオ200Aを示している。例として、そして制限的でなく、自律車両201は、周囲の環境(例えば、道路上の線204、道路の縁石203)監視し、自律運転モードを使用して環境においてナビゲートするために1つ以上のセンサまたは感知システム202を使用できる。システムは、感知信号205(例えば、ライダーデータ、画像、レーダーデータ)に基づいて車両の周囲の環境における識別不可パターン206を識別できる。特別な実施形態においては、識別不可パターン206は、例えば、下記に制限されないが、スモッグまたは蒸気、他の車両が落とした未知の物体、他の車両の後部の塗料、道路表面のひび割れ模様などにより引き起こされる可能性があり、またはそれらに関連している可能性がある。システムは、識別不可パターン206と関連付けられている画像と他のセンサデータを解析するためにコンピュータビジョンアルゴリズムまたはMLモデルを使用できるが、識別不可パターン206が何であるかは認識できない。システムは、識別不可パターン206をデータベースに格納されている多数の物体モデルと比較でき、識別不可パターン206はデータベースに格納されている何れの予め決定されているモデルとも一致しないと決定できる。特別な実施形態においては、システムは、ルールに基づくアルゴリズムまたはMLモデルを使用して現在のシナリオを分類することを試みることができる。システムは、現在のシナリオが多数のシナリオカテゴリに属する可能性を示す確率スコアを決定でき、分類結果に対する信頼度スコアを決定できる。識別不可パターン206を伴う現在のシナリオに対しては、現在のシナリオがすべての可能なシナリオカテゴリに属する確率スコアは予め決定されている確率閾値よりも低い可能性があり、分類結果の信頼度スコアは予め決定されている信頼度閾値よりも低い可能性がある。結果として、システムは、現在のシナリオのシナリオカテゴリを決定できず、現在のシナリオを識別不可シナリオまたは未知のシナリオとして分類できる。
【0024】
現在のシナリオが識別不可シナリオであるという決定に応答して、システムは、車両が自律運転モードにおいて走行を継続することを可能にでき、人間のオペレータ(例えば、安全運転手、テレオペレータ)が自律運転から車両を離脱させるかどうか、またはいつ離脱させるかを決定することを可能にできる。特別な実施形態においては、システムは、人間のオペレータ(例えば、安全運転手、テレオペレータ)に車両が遭遇しているのは識別不可シナリオであるということを知らせるために人間のオペレータに警告メッセージを自動的に送ることができる。人間のオペレータへの警告メッセージは、周囲の環境における1つ以上の識別不可物体、特徴、またはパターンに関する情報を含むことができる。例えば、警告メッセージは、1台以上のカメラにより検出されるような、車両の前方における識別不可物体の位置とサイズ(例えば、バウンディングボックス)を含むことができる。警告メッセージに含まれている情報は、人間のオペレータに、識別不可物体を迅速に位置特定/認識させ、それ相応に対応させるためにそのような状況を知らせることを可能にできる。
【0025】
特別な実施形態においては、車両が識別不可シナリオに遭遇するたびに、システムは、識別不可シナリオと関連付けられている知覚データに基づいて新しいシナリオカテゴリと新しいシナリオモデルを生成できる。システムは、新しいシナリオに対応している新しいシナリオモデルをシナリオデータベースに格納できる。新しいシナリオモデルはこの時点では精度のよいカテゴリ情報がないために不完全である可能性がある。しかし、システムは、人間のオペレータからのフィードバック情報に基づいてこの新しいシナリオモデルを更新できる。特別な実施形態においては、システムは、自律運転モードにおいて車両が遭遇する識別不可シナリオに対するシナリオレコードを自動的に生成できる。レコードは、周囲の環境の知覚データ、人間のオペレータに送られたメッセージ(例えば、識別不可物体の位置とサイズ)、識別不可シナリオに対する人間のオペレータの対応(例えば、人間のオペレータは自律運転から車両を離脱させるかどうか、いつ離脱させるか)などを含むことができる。
【0026】
特別な実施形態においては、システムは、人間のオペレータがこの識別不可シナリオに対して生成されたシナリオレコードについてのフィードバック情報を提供することを可能にするために人間のオペレータとの相互作用を可能にでき、または開始できる。人間のオペレータにより提供されるフィードバック情報は、物体の正体または識別不可物体のタイプを明確にする情報、この識別不可シナリオのカテゴリ情報、この特別なシナリオにおいて人間のオペレータがなぜ自律運転から車両を離脱させるか、またはさせないかの理由を含むことができる。システムが人間のオペレータからフィードバック情報を受信した後、システムは、このフィードバック情報に基づいてデータベースに格納されている対応する新しいシナリオモデルを更新できる。フィードバック情報に基づいて更新されるような新しいシナリオモデルのデータは、ルールに基づく分類アルゴリズムに対して新しいルールを生成するために使用でき、または、このシナリオと同じまたは類似している将来のシナリオを分類するためにMLモデルを訓練することに使用できる。ルールに基づく分類アルゴリズムまたはMLモデルは新しいシナリオデータに基づいて更新されると、この特別なシナリオと同じまたは類似しているシナリオを識別および分類できるようになる。特別な実施形態においては、システムは、対応しているシナリオモデルとシナリオレコードを有する新しいシナリオカテゴリを、自律運転モードで走行している間に車両が識別不可シナリオに遭遇するたびに生成できる。特別な実施形態においては、システムは、識別不可シナリオに対する新しいシナリオカテゴリ、対応するシナリオモデル、およびシナリオレコードを、人間のオペレータが識別不可シナリオに応答して自律運転から車両を実際に離脱させたときのみ生成できる。
【0027】
特別な実施形態においては、システムは、車両が遭遇した識別不可シナリオから学習したシナリオを加えることにより、車両の運行設計領域(operational design domain)に対応するデータベースを更新できる。特別な実施形態においては、車両の運行設計領域に対応しているデータベースは、車両が遭遇する可能性のある可能なシナリオのほとんどを含む多数のシナリオを含むことができ、システムが、車両が遭遇する未知または識別不可シナリオを自動的に取り扱うことができることを可能にできる。特別な実施形態においては、現在のシナリオが識別不可シナリオであるという決定に応答して、システムは、自律運転から車両を離脱させることに関する離脱動作を自動的に誘発できる。例えば、現在のシナリオは識別できないという決定に応答して、システムは、人間のオペレータ(例えば、安全運転手またはテレオペレータ)に警告メッセージを自動的に送ることができ、人間のオペレータに短時間(例えば、3~5秒)以内に自律運転から車両が離脱されると警告することができ、人間のオペレータが車両の制御を引き継ぐ必要があると警告することができる。特別な実施形態においては、人間のオペレータが制御を引き継ぐ前に、システムは車両の速度を落とす(例えば、安全速度にする)ことができ、または車両を完全に停止させることができる。そしてシステムは、自律運転から車両を自動的に離脱させることができ、識別不可シナリオと関連付けられている知覚データに基づいて離脱レコードとトリアージレコードを生成できる。
【0028】
特別な実施形態においては、車両が自律運転モードから離脱された後に(車両が人間のオペレータにより手動で離脱されるか、システムにより自動的に離脱されるかに拘わらず)、システムは車両動作を監視でき、人間のオペレータにより制御されるときの車両動作データを収集できる。収集された車両動作データは、例えば、車両移動軌道(例えば、時間経過における一連の速度を有している各軌道)、加速動作、制動動作、信号ステータスなどを含むことができる。システムは、この特別なシナリオと関連付けられている知覚データと共に、車両離脱レコードとトリアージレコードにおける車両動作データを含むことができる。システムは、離脱レコードとトリアージレコードに含まれている車両動作データと知覚データを、プラニングシステムが車両をこのシナリオにおいて車両をナビゲートするためのナビゲーションプランをどのように生成するかを学習することを可能にするためにプラニングシステムに供給できる。プラニングシステムは再訓練されると、この特別なシナリオと同じまたは類似している将来のシナリオにおいて車両をナビゲートできるナビゲーションプランを生成できるようになれる。
【0029】
特別な実施形態においては、システムは、システムとっては識別不可シナリオである新しいシナリオに車両が遭遇したと決定できる。新しいシナリオが識別不可シナリオであるということに応答して、システムは、自律運転モードから車両を自動的に離脱させることができる。システムは、識別不可シナリオと関連付けられている知覚データを含んでいる新しい離脱レコードを生成できる。そしてシステムは、識別不可シナリオに関するフィードバック情報をオペレータから受信できる。システムは、オペレータのフィードバックに基づいて、以前の識別不可シナリオを特別なシナリオとして識別できる。システムは、離脱レコードに含まれている以前の識別不可シナリオと関連付けられている知覚データを、オペレータのフィードバックに基づいてその特別なシナリオに関連付けることができる。システムは、その特別なシナリオカテゴリと関連付けられているより多くの知覚データと人間の運転データを収集でき、収集されたデータを、その特別なシナリオを自動的に取り扱うように(例えば、このタイプのシナリオにおいて車両をナビゲートするための適切なナビゲーションプランを生成することにより)システムを訓練するために使用できる。特別な実施形態においては、新しいシナリオがその特別なシナリオであると決定することに応答してシステムは、この特別なシナリオに従って車両をナビゲートするために車両により生成されたナビゲーションプランに従って自律運転モードにおいて車両をナビゲートできる。
【0030】
図2Bは、自律車両のプラニングシステムによりサポートされていない例としての識別不可シナリオ200Bを示している。例として、そして制限的でなく、車両201は、自律運転モードを使用して車両をナビゲートするために周囲の環境(例えば、道路上の線204、道路の縁石203)を監視することに感知システム202を使用できる。システムは、交通規則を守らない歩行者(jaywalker)211(例えば、ペットを連れている歩行者)を、感知システム202の1つ以上の感知信号212に基づいて検知できる。システムは、交通規則を守らない歩行者シナリオに車両が遭遇していることを識別できる。システムは、識別された交通規則を守らない歩行者シナリオを、車両システムの運行設計領域に対応しているデータベースに格納されている多数のシナリオと比較できる。車両システムの運行設計領域に対応しているデータベースは、車両のプラニングシステムによりサポートされているすべてのシナリオを含むことができる。言い換えると、車両のプラニングシステムは、車両の運行設計領域に対応しているデータベースに格納されている各シナリオに対するナビゲーションプランを生成できる(しかし、運行設計領域に対応しているデータベースに含まれていないシナリオに対するナビゲーションプランを生成することはできない)。特別な実施形態においては、車両の運行設計領域は、例えば、下記に制限されないが、安全性が確保されていない左折、対面交通に道を譲ること、安全性が確保されていない右折、自転車を追い越すこと、車線に合流すること、車両事故などを含む多数のシナリオを含むことができる。交通規則を守らない歩行者シナリオをデータベースに格納されているシナリオと比較することにより、システムは、交通規則を守らない歩行者シナリオは車両システムの運行設計領域に対応しているデータベースに含まれておらず、従って、車両のプラニングシステムによりサポートされていないと決定できる。
【0031】
図2Cは、自律車両のプラニングシステムによりサポートされていない他の例としてのシナリオ200Cを示している。例として、そして制限的でなく、車両201は、自律運転モードを使用して車両をナビゲートするために周囲の環境(例えば、道路上の線204、道路の縁石203)を監視することに感知システム202を使用できる。システムは、感知システム202の1つ以上の感知信号222に基づいて、道路上の水没した領域(flooded area)223を検知できる。システムは、車両は水没した道路シナリオに遭遇していると識別できる。システムは水没した道路シナリオを、車両システムの運行設計領域に対応しているデータベースに格納されている多数のシナリオと比較できる。車両のプラニングシステムは、車両の運行設計領域に対応しているデータベースに格納されている各シナリオに対するナビゲーションプランを生成することができるが、運行設計領域に対応しているデータベースに含まれていないシナリオに対するナビゲーションプランは生成することはできない。水没した道路シナリオをデータベースに格納されているシナリオと比較することにより、システムは、水没した道路シナリオは車両システムの運行設計領域に対応しているデータベースに含まれておらず、従って、車両のプラニングシステムによりサポートされていないと決定できる。
【0032】
特別な実施形態においては、現在のシナリオは車両のプラニングシステムによりサポートされていない既知のシナリオであるという決定に応答して、システムは、自律運転から車両を離脱させることに関する離脱動作を自動的に誘発できる。例えば、現在のシナリオは車両の運行設計領域に対応するデータベースから除外されているという決定に応答して、システムは、人間のオペレータ(例えば、安全運転手またはテレオペレータ)に警告メッセージを自動的に送ることができ、人間のオペレータに短時間(例えば、3~5秒)以内に自律運転から車両が離脱させられると警告することができ、人間のオペレータが車両の制御を引き継ぐ必要があると警告することができる。特別な実施形態においては、人間のオペレータが制御を引き継ぐ前に、システムは、車両の速度を落とす(例えば、安全速度にする)ことができ、または車両を完全に停止させることができる。そしてシステムは、自律運転から車両を自動的に離脱させることができ、車両が遭遇している現在のシナリオに基づいて離脱レコードとトリアージレコードを生成できる。
【0033】
特別な実施形態においては、車両はサポートされていないシナリオに遭遇しているという決定に応答してシステムが自律運転から車両を自動的に離脱させると、システムは、車両が遭遇しているシナリオに基づいて離脱レコードを自動的に生成できる。離脱レコードは、その特別なシナリオと関連付けられている知覚データを含むことができる。特別な実施形態においては、システムは、人間のオペレータが生成された離脱レコードについてのフィードバック情報を提供することを可能にするために人間のオペレータとの相互作用を可能にでき、または相互作用を開始することができる。人間のオペレータにより提供されるフィードバック情報は、識別されたシナリオのシナリオカテゴリを確認または否認する情報を含むことができる。人間のオペレータからのフィードバックに基づいてシナリオカテゴリが確認または否認された後に、システムは、将来のシナリオをより精度よく且つより正確に分類するためにシステムの分類アルゴリズムを向上することにおいてこの特別なシナリオと関連付けられているシナリオ特有データ(例えば、知覚データ、確認されたシナリオカテゴリ)を使用できる。例えば、システムは、ルールに基づく分類アルゴリズムに対して1つ以上の新しいルールを生成でき、または、識別されたシナリオと関連付けられているシナリオ特有データに基づいてMLモデルを再訓練できる。ルールに基づく分類アルゴリズムまたはMLモデルは識別されたシナリオに基づいて更新されると、この特別なシナリオと同じまたは類似しているシナリオをより精度よく且つより正確に分類できるようになる。
【0034】
特別な実施形態においては、自律運転モードから車両が離脱された後に、システムは車両動作を監視でき、人間のオペレータにより制御されるときの車両動作データを収集できる。収集された車両動作データは、例えば、車両移動軌道(例えば、時間経過における一連の速度を有している各軌道)、加速動作、制動動作、信号ステータスなどを含むことができる。システムは、このシナリオと関連付けられている他のシナリオ特有データ(例えば、知覚データ)と共に、車両離脱レコードとトリアージレコードにおける車両動作データを含むことができる。システムは、プラニングシステムがこのシナリオにおいて車両をどのようにナビゲートするかを学習することを可能にするために車両のプラニングシステムに、離脱レコードとトリアージレコードに含まれている車両動作データおよび他のシナリオ特有データを供給できる。プラニングシステムは再訓練されると、識別されたシナリオと同じまたは類似する将来のシナリオに従って車両をナビゲートできるナビゲーションプランを生成できるようになれる。
【0035】
図2Dは、車両のプラニングシステムによりサポートされている例としてのシナリオ200Dと、このシナリオに従って車両をナビゲートするための例としての計画された軌道237を示している。例として、そして制限的でなく、車両231Aは自律運転モードにおいて道路車線230を走行していることができる。車両231Aは知覚データに基づいて、同じ車両230で同じ方向に移動している2台の自転車232Aと233Aを識別できる。システムは、車両231Aは自転車を追い越すシナリオに遭遇していると決定できる。システムは、識別された自転車を追い越すシナリオを、車両の運行設計領域に対応しているデータベースに格納されているシナリオと比較できる。システムは、自転車を追い越すシナリオはデータベースに含まれており、従って、ナビゲーションプランを生成するためのプラニングシステムによりサポートされていると決定できる。システムは、この自転車を追い越すシナリオに従って車両をナビゲートするためのナビゲーションプランを生成するために知覚データをプラニングシステムに供給できる。プラニングシステムにより生成されるナビゲーションプランは、計画された軌道237に沿う時間経過における一連の速度と関連付けられている計画された軌道237を含むことができる。計画された軌道237は、自転車232Aと233Aの位置および予測される移動軌道、車両が車線230から反対車線236に横切ることを可能にしないセンターライン235、近くの車両239、反対車線236における他の交通などを考慮することにより生成できる。
【0036】
特別な実施形態においては、現在のシナリオは車両の運行設計領域に含まれているという決定に応答して、システムは、現在のシナリオに従って車両をナビゲートするためにプラニングシステムにより生成されるナビゲーションプランを評価できる。システムは現在のシナリオに基づいて、生成されたナビゲーションプランに対する1つ以上の車両性能測定基準を決定できる。システムは、これらの車両性能測定基準は安全に車両をナビゲートするために要求される1つ以上の予め決定されている基準を満たすかどうかを決定できる。車両性能測定基準が予め決定されている基準を満たさないときは、システムは自律運転モードから車両を離脱させるための離脱動作を自動的に誘発できる。車両性能測定基準が予め決定されている基準を満たすときは、システムは自律運転モードで走行を継続するように車両を維持することができる。特別な実施形態においては、異なる車両ナビゲーションプランでの車両性能を評価するための予め決定されている基準は、例えば、下記に制限されないが、車両から他のエージェントまたは物体(例えば、車両、歩行者、自転車、ペット、道路上の車線、道路の縁石)までの距離が予め決定されている閾値距離(例えば、3メートル)以上であるということ、特別な箇所における移動速度が予め決定されている閾値速度よりも遅い、または、速度に対して予め決定されている範囲内であるということ、加速度または減速度が、加速度に対して予め決定されている範囲内であるということ、方向転換半径が、方向転換半径に対して予め決定されている範囲内であること、近くの物体に関する相対速度が相対速度に対して予め決定されている範囲内であるということなどを含むことができる。
【0037】
図2Dにおいて例示されているようなシナリオの例に対して、システムは、追い越す時点において232Bと233Bの位置であると予測される2台の自転車232Aと233Aを車両231Aが追い越すときの予測される位置231Bを決定できる。システムは、計画された軌道237に基づいて車両がナビゲートされる場合の車両231Aと2台の自転車232Aと233Aとの間の最小距離を決定できる。システムは、予測される車両位置231Bと、車両により近い自転車に対応する予測される自転車位置233Bとの間の距離234に基づいて最小距離を決定できる。予測される車両位置231Bは計画された軌道237に基づいて決定でき、予測される自転車位置232Bと233Bは、2台の自転車232Aと233Aの予測される軌道に基づいて決定できる。システムは距離234を、車両を安全にナビゲートするために必要な予め決定されている閾値と比較できる。この例においてはシステムは、距離234は車両を安全にナビゲートするための予め決定されている閾値よりも短いと決定でき、従って、車両を安全にナビゲートするための予め決定されている基準を満たさないと決定できる。
【0038】
特別な実施形態においては、1つ以上の車両性能測定基準が車両を安全にナビゲートするための予め決定されている基準を満たさないという決定に応答して、システムは自律運転モードから車両を離脱させることに関する離脱動作を自動的に誘発できる。図2Dにおいて例示されているような例に対して、システムが距離234は車両を安全にナビゲートするための予め決定されている閾値よりも短いと決定すると、システムは自立運転から車両を離脱させるために離脱動作を自動的に誘発できる。例えば、システムは人間のオペレータ(例えば、安全運転手またはテレオペレータ)に警告メッセージを自動的に送ることができ、人間のオペレータに短時間(例えば、3~5秒)以内に自律運転から車両が離脱させられるということを警告することができ、人間のオペレータが車両の制御を引き継ぐ必要があると警告することができる。特別な実施形態においては、人間のオペレータが制御を引き継ぐ前に、システムは車両の速度を落とす(例えば、安全速度にする)ことができ、または車両を完全に停止させることができる。そしてシステムは、自律運転から車両を自動的に離脱させることができ、車両が遭遇している現在のシナリオに基づいて離脱レコードとトリアージレコードを生成できる。
【0039】
特別な実施形態においては、1つ以上の車両性能測定基準が車両を安全にナビゲートするための予め決定されている基準を満たさないときは、システムは車両評価結果の信頼度レベルを示す車両性能評価結果に対する信頼度スコアを決定できる。システムは、車両性能評価結果の信頼度スコアを予め決定されている閾値と比較できる。信頼度レベルが予め決定されている閾値以上のときは、システムは自律運転モードから車両を自動的に離脱させることができる。信頼度スコアが予め決定されている閾値未満のときは、システムは人間のオペレータに車両性能評価結果を知らせるために人間のオペレータに警告メッセージを送ることができ、人間のオペレータが自律運転モードから車両を離脱させるかどうか、およびいつ離脱させるかを決定することを可能にできる。特別な実施形態においては、システムは離脱レコードに含まれている識別されたシナリオを確認または否認するフィードバック情報を人間のオペレータから受信できる。そしてシステムは、将来のシナリオをより精度よく且つより正確に分類するためにシナリオ分類アルゴリズムを調整または修正することに離脱レコードとトリアージレコードからの情報を使用できる。システムは、自律運転モードから車両が離脱された後に、人間のオペレータにより制御されるときの車両動作データを収集でき、プラニングシステムが車両を安全にナビゲートするための予め決定されている基準を満たすことができるナビゲーションプランをどのように生成するかを学習することを可能にするためにプラニングシステムを再訓練することに収集されたデータを使用できる。
【0040】
図2Eは、車両のプラニングシステムによりサポートされている他の例としてのシナリオ200Eと、このシナリオに従って車両をナビゲートするための例としての計画された軌道247を示している。例として、そして制限的でなく、車両241Aは同じ車線で同じ方向に移動している2台の自転車242Aと243Aを識別できる。システムは自転車を追い越すシナリオに車両241Aが遭遇していると決定できる。システムは識別された自転車を追い越すシナリオを、車両の運行設計領域に対応するデータベースに格納されているシナリオと比較でき、自転車を追い越すシナリオはデータベースに含まれており、従って、プラニングシステムによりサポートされていると決定できる。システムは、この自転車を追い越すシナリオにおいて車両をナビゲートするためのナビゲーションプランを生成するためにプラニングシステムに知覚データを供給できる。プラニングシステムにより生成されるナビゲーションプランは、計画された軌道247および計画された軌道247に沿う時間経過における一連の速度を含むことができる。システムは、車両が計画された軌道247に基づいてナビゲートされた場合の車両241Aと2台の自転車242Aと243Aとの間の最小距離を決定できる。
【0041】
この例としてのシナリオにおいては、システムは、追い越す時点において位置242Bと243Bにあると予測される2台の自転車242Aと243Aを車両241Aが追い越すときの予測される車両位置241Bを決定できる。システムは、予測される車両位置241Bと、車両により近い自転車に対応する予測される自転車位置243Bとの間の距離244に基づいて最小距離を決定できる。予測される車両位置241Bは計画された軌道247に基づいて決定でき、予測される自転車位置242Bと243Bは2台の自転車242Aと243Aの予測される軌道に基づいて決定できる。システムは距離244を、車両を安全にナビゲートするために必要な予め決定されている閾値と比較できる。この例においては、システムは、距離243は車両を安全にナビゲートするための予め決定されている閾値以上であると決定できる。従ってシステムは、現在のシナリオに従って車両をナビゲートするためにプラニングシステムにより生成されたナビゲーションプランは、このシナリオにおいて車両を安全にナビゲートするための予め決定されている基準を満たすと決定できる。システムは、車両が自律運転モードでの走行を継続することを可能にできる。
【0042】
特別な実施形態においては、システムは、自律運転モードにおいて走行している間に車両が遭遇するシナリオを識別できる。システムは識別されたシナリオに基づいて、このシナリオに対して自律運転モードから車両を離脱させる必要はないと決定できる。例えばシステムは、プラニングシステムにより生成された現在のナビゲーションプランでの車両性能は、このシナリオに従って車両を安全にナビゲートするための予め決定されている基準を満たすと決定できる。しかし、システムにとっては何等かの未知の理由により、人間のオペレータは離脱動作を誘発でき、自律運転モードから車両を離脱させることができる。人間のオペレータにより誘発された予期せぬ離脱に応答してシステムは、人間のオペレータにより制御されるときの車両動作を監視および記録でき、関連する知覚データを取集できる。システムは、オペレータにより誘発された離脱として印を付けることができる離脱およびトリアージレコードを生成でき、シナリオと関連付けられている車両動作データと知覚データを含むことができる。システムは、離脱およびトリアージレコードに含まれている知覚データと車両動作データを、システムがこの特別なシナリオと同じまたは類似している将来のシナリオをどのように取り扱うかを学習することを可能にするために分類アルゴリズムとプラニングシステムに供給できる。
【0043】
特別な実施形態においては、車両が自律運転モードで走行している間に、車両は周囲の環境において同時に複数のシナリオに遭遇する可能性がある。例として、そして制限的でなく、車両は自転車を追い越すシナリオと、安全性が確保されていない右折シナリオに同時に遭遇する可能性がある。システムは知覚データに基づいて車両が遭遇したシナリオを識別でき、識別されたシナリオを、車両の運行設計領域に対応するデータベースに格納されているシナリオと比較できる。システムは、識別されたシナリオと潜在的に一致する可能性のある複数のシナリオモデルをデータベースにおいて識別できる。システムは、そのシナリオモデルと、対応する識別されたシナリオとの間の一致の程度に基づいて、データベースにおける一致するシナリオモデルのそれぞれに対する信頼度スコアを決定できる。より高い信頼度スコアは、シナリオモデルと、対応するシナリオとの間の一致のより高い程度を示すことができる。システムは、自律運転モードから車両を離脱させるかどうかを決定するために、より高い信頼度スコアと関連付けられているシナリオを選択できる。
【0044】
特別な実施形態においては、システムは識別されたシナリオのそれぞれに対する重要度スコアを決定できる。重要度スコアは各シナリオの過酷さの程度に基づいて決定できる。より高い重要度スコアは、関連付けられているシナリオに対する過酷さのより高い程度と相関させることができる。システムは、より高い重要度スコアと関連付けられているシナリオを、自律運転モードから車両を離脱させるかどうかを決定するために使用されるシナリオとして選択できる。例えば、車両は2つの同時のシナリオであって、その1つは安全性の問題を引き起こす確率がより高い2つのシナリオに遭遇する可能性がある。システムはそのシナリオにより高い重要度スコアを割り当てることができ、より高い重要度スコアのそのシナリオに基づいて自律運転から車両を離脱させるかどうかを決定できる。特別な実施形態においては、システムは、識別された同時のシナリオのそれぞれに対する発生頻度を決定でき、発生頻度およびこれらのシナリオの他の状況情報に基づいてこれらのシナリオに重みを付けることができる。特別な実施形態においては、システムは例えば、下記に制限されないが、信頼度スコア、重要度スコア、過酷さスコア、発生頻度などを含む、これらのシナリオと関連付けられている要因の組み合わせに基づいて、対応する動作(例えば、自律運転から車両を離脱させるかどうか)を決定するために複数の同時のシナリオから1つのシナリオを選択できる。
【0045】
特別な実施形態においては、システムは、エッジシナリオ(例えば、未知のシナリオおよび/または車両の運行設計領域に含まれていないシナリオ)を取り扱うように訓練されている自動副操縦システム(運転手が車両の制御ができなくなったときのための予防安全機能)を含むことができる。特別な実施形態においては、システムが未知のシナリオまたは車両の運行設計領域に含まれていないシナリオを識別すると、システムは自律運転モードから車両を離脱させることに関連する離脱動作を自動的に誘発できる。人間のオペレータに警告メッセージを送り、人間のオペレータが車両の制御を引き継ぐことを可能にする代わりに、システムは誘発信号を自動副操縦システムに送ることができ、副操縦システムが車両の制御を引き継ぐことを可能にできる。自動副操縦システムは、未知のシナリオ、または車両の運行設計領域に含まれていないシナリオを取り扱うように訓練されているナビゲーションアルゴリズム(例えば、MLモデル)を含むことができる。自動副操縦システムは、以前の未知のシナリオおよび運行設計領域に含まれていないシナリオに対して生成された離脱レコードとトリアージレコードに含まれているシナリオデータと車両動作データを使用して訓練できる。
【0046】
特別な実施形態においては、システムは、運行設計領域に含まれているシナリオに対する車両性能データを含んでいるシナリオ特有データを、プラニングシステムがより精度よく且つより正確にこれらのシナリオをどのように取り扱うかを学習することを可能にするためにプラニングシステムに供給できる。特別な実施形態においては、システムは、未知のシナリオおよびサポートされていないシナリオに対する車両性能データを含んでいるシナリオ特有データを、自動副操縦システムがより精度よく且つより正確に同じまたは類似しているシナリオをどのように取り扱うかを学習することを可能にするために自動副操縦システムに供給できる。システムは運行設計領域と自動副操縦システムを継続的に、または定期的に更新できる。これらの2つのシステムを別個に訓練することにより、システムは、両者のシステム(プラニングシステムと副操縦システム)が互いに影響を与えることなくそれぞれのシナリオを取り扱うそれらの能力(例えば、精度と正確さ)を向上することを可能にできる。
【0047】
図3Aは、車両が遭遇する特別なシナリオに対する離脱レコードを生成するために使用される例としてのテンプレート301Aを示している。特別な実施形態においては、システムが自動離脱動作を誘発する必要があると決定した後に、システムは離脱動作を誘発するために関連する情報(例えば、シナリオデータ、知覚データ、車両性能評価結果、車両性能測定基準など)を離脱予測モジュール(例えば、図1Bにおける離脱予測モジュール125)に送ることができる。離脱予測モジュールは、(1)ルールに基づくロジックおよびモジュールへの入力情報に基づいて離脱動作を誘発でき、(2)現在のシナリオに対する離脱レコードを生成するために離脱レコードテンプレートに自動的に記入できるルールに基づくロジックモジュールであってよい。
【0048】
例として、そして制限的でなく、自律運転モードで走行している間に車両は図2Dにおいて例示されているような自転車を追い越すシナリオに遭遇する可能性がある。システムはデータベースから、自転車を追い越すシナリオに対する離脱レコードテンプレート301Aを取り出すことができる。この例においては、離脱レコードテンプレート301Aは、例えば、下記に制限されないが、タイムスタンプ302、離脱ステータス303、オペレータフィードバック用相互作用要素304、シナリオデータセクション305、実行された動作リスト306などを含んでいる多数のセクションと多数の要素を含むことができる。特別な実施形態においては、シナリオデータセクション305は、例えば、下記に制限されないが、シナリオタイプ(例えば、自転車を追い越すシナリオ)、位置(例えば、GPS座標)、ビデオレコード(例えば、FPS、解像度)、センサデータ(例えば、ライダー点群)、シナリオ記述(例えば、識別された自転車の数を含んでいる)、車両をナビゲートするために生成されるナビゲーションプラン、車両性能測定基準(例えば、車両がナビゲーションプランを使用して自律運転モードで走行した場合に最も近い自転車までの距離)、車両性能評価結果などを含んでいる多数のデータ要素を含むことができる。特別な実施形態においては、シナリオ記述は1つ以上のプレースホルダ(例えば、自転車の数に対する#)を有する、関連付けられているシナリオ(例えば、自転車を追い越すシナリオ)に対するテキスト記述を含むことができる。特別な実施形態においては、車両性能測定基準は、1つ以上のプレースホルダ(例えば、車両から最も近い自転車までの距離に対するメートル数に対する#)を有する、車両性能評価結果に対するテキスト記述を含むことができる。特別な実施形態においては、離脱動作は、離脱動作が誘発されると実行される可能性のある潜在的動作のリストを含むことができる。特別な実施形態においては、潜在的動作は、例えば、下記に制限されないが、オペレータに制御を引き継ぐように警告すること、車両の速度を落とすこと、自律運転から車両を離脱させること、離脱レコードを生成すること、オペレータからフィードバックを受信すること、トリアージレコードを生成することなどを含むことができる。
【0049】
図3Bは、図3Aにおけるレコードテンプレートに基づいて生成される例としての離脱レコード301Bを示している。特別な実施形態においては、離脱レコードを生成するために、システムは、例えば、下記に制限されないが、時間、日付、離脱ステータス、GPS座標、カメラフレームレート、カメラ解像度、自転車の数、車両と自転車との間の最小距離、実行された離脱動作、車両制御動作、計画された軌道、対応する移動方向を伴う一連の車両速度などを含んでいる、現在のシナリオと関連付けられている多様なタイプのデータを取得できる。システムは、レコードテンプレート301Aにおける空白部分に自動的に記入し、レコードテンプレート301Aにおけるプレースホルダを取得したデータに基づく実際の数字に置き換えることにより離脱レコード301Bを生成できる。例えば、離脱レコード301Bを生成するために、システムはタイムスタンプ302におけるプレースホルダを実際の時間(例えば、2020年5月21日午後2時23分)と置き換えることができ、離脱ステータス303に記入でき(例えば、「離脱された」)、GPS座標におけるプレースホルダを実際の座標の数字(例えば、37.418145、-122.144863)で置き換えることができ、カメラフレームレート(例えば、30FPS)と解像度(例えば、1920×1080)に対するプレースホルダを置き換えることができ、自転車の数(例えば、2台の自転車)に対するプレースホルダを置き換えることができ、車両から自転車までの距離に対するプレースホルダを実際の数字(例えば、0.5メートル)で置き換えることなどができる。
【0050】
特別な実施形態においては、システムは車両により実際に実行された動作を離脱レコード(例えば、「実行された動作」のセクション)において含むことができる。システムは、車両により実際に実行された動作に基づいて1つ以上の離脱動作を含むことができ、または除外することができる。例えば、システムは、自動的に誘発された離脱動作により車両が完全に停止させられた場合、「車両を完全に停止すること」を含むことができ、車両が完全には停止させられなかった場合、この特別な動作を除外できる。特別な実施形態においては、システムは、現在のシナリオと関連付けられている取得したデータおよび情報を自然言語におけるテキストに変換できる。そしてシステムは、離脱レコードにおいて関連付けられているシナリオを記述するための追加的コンテンツを生成するために自然言語によるテキストを処理することに1つ以上の自然言語処理(NLP)アルゴリズムを使用できる。例えば、システムはビデオレコード(例えば、ステレオビデオ)に対する追加的記述を追加できる。他の例として、システムは、NLPアルゴリズムの処理結果に基づいて、シナリオ記述、または車両性能測定基準における1つ以上の情報要素を更に明確にすることができる。
【0051】
特別な実施形態においては、システムは、人間のオペレータがフィードバック情報を自動的に生成された離脱レコードに提供することを可能にできる。例えば、システムは相互作用要素304を使用して人間のオペレータのフィードバックを受信できる。人間のオペレータは、シナリオ分類モジュールにより決定されたようなシナリオタイプまたはカテゴリを確認または否認できる。オペレータがシナリオタイプまたはカテゴリを否認すると、システムは、オペレータが正しいシナリオカテゴリを入力または選択することを可能にできる。システムはデータベースから、オペレータにより選択された正しいシナリオカテゴリに対する新しいテンプレートにアクセスでき、新しいテンプレートに基づいて離脱レコードを再生成できる。他の例として、システムは、オペレータが自動的に生成されたレコード301Bにおける任意のセクションまたは任意のコンテンツを編集(例えば、追加、削除、または修正)することを可能にできる。特別な実施形態においては、オペレータからフィードバックを受信した後に、システムは離脱レコードを完結させることができ、レコードをローカルコンピュータストレージまたはリモートサーバコンピュータにおけるデータベースに格納する(例えば、サーバに送出する、またはアップロードする)ことができる。特別な実施形態においては、システムは、シナリオと関連付けられている知覚データ、車両性能評価データ、ナビゲーションプラン、および、(人間のオペレータまたは自動副操縦システムにより制御されるときの)分離された後の実際の車両動作データなどを取得でき、およびそれらを離脱レコードに含むことができる。システムは、将来のシナリオをより精度よく且つより正確に分類するための分類アルゴリズムを更新(例えば、再訓練)するためにシナリオ特有データを使用できる。システムは、関連付けられているシナリオに対するナビゲーションプランを生成するためにプラニングシステムを訓練することに(人間のオペレータまたは自動副操縦システムにより制御されるときの)車両動作データを使用できる。
【0052】
特別な実施形態においては、システムは、人間のオペレータのフィードバック情報に基づいて完結された離脱レコードを自動的に選別できる。各離脱レコードに対して、システムはそのレコードを対応するチームに自動的に発送でき、レコードに含まれている情報の解析に基づいてトリアージレコードを生成できる。例えば、離脱レコードは、テキストラベル、数字、および自然言語形式におけるテキスト記述、スタータスインディケータ(例えば、人間のオペレータにより確認されたような正しいか正しくないか)などを含むことができる。特別な実施形態においては、システムは、離脱レコードを自動的に選別するためにそのそれぞれの離脱レコードのテキストコンテンツを解析することに自然言語処理(NLP)アルゴリズム(例えば、テキスト分類アルゴリズム、テキスト認識アルゴリズム)を使用できる。特別な実施形態においては、システムは、離脱レコードを自動的に選別するためにそのそれぞれの離脱レコードの画像コンテンツ(例えば、ビデオレコードの画像)を解析することにコンピュータビジョンアルゴリズム(例えば、画像分類アルゴリズム)を使用できる。
【0053】
例として、そして制限的でなく、システムは、誘発された離脱動作(例えば、未知のシナリオにより誘発された離脱、運行設計領域に含まれていないシナリオにより誘発された離脱、または予め決定されている閾値未満の車両性能により誘発された離脱)の根本原因に基づいて離脱レコードを選別できる。システムは、同じ根本原因の離脱レコードを同じチームに割り当てることができる。他の例として、そして制限的でなく、システムは、関連付けられているシナリオカテゴリに基づいて離脱レコードを選別できる。システムは、1つ以上の特別なシナリオカテゴリと関連付けられている離脱レコードを対応するチームに割り当てる(例えば、安全性が確保されていない右折の離脱レコードを第1チームに割り当て、自転車を追い越すシナリオの離脱レコードを第2チームに割り当てる)ことができる。特別な実施形態においては、システムは、自動選別プロセスおよび人間のオペレータとの相互作用の間に受信した情報に基づいて離脱レコードを選別できる。例えば、システムは、1つ以上の予め決定されている基準に基づいて離脱レコードを自動的に選別できる。そしてシステムは、人間のオペレータとの相互作用プロセスの間に人間のオペレータからフィードバック情報を受信できる。人間のオペレータから受信したフィードバック情報は、自動選別プロセスによる選別結果を確認、否認、または変更する情報を含むことができる。離脱レコードは、人間のオペレータからのフィードバック情報ありの、またはなしの自動選別プロセスにより選別された後に、「選別された」としてシステムにより印を付けることができる。
【0054】
図4Aは、シナリオ特有データに基づいてシナリオ分類アルゴリズムを更新するための例としてのフレームワーク400Aを示している。特別な実施形態においては、システムは、自律運転モードで走行している間に車両が遭遇するシナリオを、離脱レコードとトリアージレコードから抽出されたシナリオ特有データに基づいて識別および分類するために使用されるシナリオ分類アルゴリズムを修正できる。例として、そして制限的でなく、システムは、周囲の環境と関連付けられている知覚データ401に基づいて、車両が遭遇するシナリオを識別するために分類アルゴリズム402(例えば、ルールに基づく分類アルゴリズムまたはMLモデル)を使用できる。システムは、識別されたシナリオを対応するシナリオカテゴリ403に分類するために分類アルゴリズム402を使用できる。例えば、システムは、識別されたシナリオをデータに格納されている多数のシナリオモデルと比較でき、識別されたシナリオがこれらのシナリオモデルの各シナリオカテゴリに属する確率スコアを決定できる。システムは、識別されたシナリオを最も高い確率スコアと関連付けられているシナリオカテゴリに分類できる。
【0055】
システムは、識別されたシナリオカテゴリのシナリオカテゴリラベルを、他のシナリオ特有データと関連付けられている識別されたシナリオと共に離脱レコードとトリアージレコードに含むことができる。特別な実施形態においては、システムは、離脱レコード404とトリアージレコード405を調べて編集することにより人間のオペレータがフィードバック情報(例えば、408と409)を提供することを可能にできる。人間のオペレータから受信したフィードバック情報は、識別されたシナリオのシナリオカテゴリは正しいと確認する情報を含むことができる。人間のオペレータにより正しいと確認されたシナリオ分類結果は、分類アルゴリズムを更新するための肯定的サンプルとして使用できる。人間のオペレータから受信したフィードバック情報は、識別されたシナリオのシナリオカテゴリは正しくないことを示す情報を含むことができる。この場合、システムは、人間のオペレータが正しいシナリオカテゴリを入力または選択することを可能にできる。人間のオペレータにより正しくないと示されたシナリオ分類結果は、分類アルゴリズムを更新するための否定的サンプルとして使用できる。システムは、システムにフィードバックされたシナリオ特有データ406に基づいて分類アルゴリズム402を更新できる。シナリオ特有データ406は、肯定的および否定的分類サンプル、シナリオ特有知覚データ、および、以前の未知のシナリオに対するオペレータのフィードバックに基づいて識別された新しいシナリオに関するデータを含むことができる。
【0056】
特別な実施形態においては、分類アルゴリズム402は、車両が遭遇するシナリオを分類するために使用される、ルールに基づく分類アルゴリズムであってよい。システムは、システムにフィードバックされたシナリオ特有データ406に基づいて、ルールに基づく分類アルゴリズムを更新できる。例として、そして制限的でなく、システムは、以前の分類結果の肯定的および否定的サンプルに基づいて、ルールに基づく分類アルゴリズムの1つ以上のルールを更新できる。更新されたルールを有するルールに基づく分類アルゴリズムは、これらの否定的/肯定的サンプルのシナリオと同じまたは類似している将来のシナリオを正しいシナリオカテゴリに正しく分類できる。例として、そして制限的でなく、システムは、以前の分類結果の肯定的および否定的サンプルに基づいて、1つ以上のルールをルールに基づく分類アルゴリズムに追加できる。新しいルールを有するルールに基づく分類アルゴリズムは、これらの否定的/肯定的サンプルのシナリオと同じまたは類似している将来のシナリオを正しいシナリオカテゴリに正しく分類できる。例として、そして制限的でなく、システムは、システムにとっては以前は未知であった1つ以上の新しいシナリオに基づいて、1つ以上のルールをルールに基づく分類アルゴリズムに追加できる。システムは、車両が未知のシナリオに遭遇するたびに新しいシナリオカテゴリを作成できる。システムは、この以前は未知であったシナリオに対するシナリオカテゴリを識別または定義するために人間のオペレータから受信した情報を使用でき、新しいシナリオに基づいて分類アルゴリズムに対して1つ以上の新しいルールを生成できる。新しいルールを有するルールに基づく分類アルゴリズムは、新しいシナリオと同じまたは類似している将来のシナリオを正しく分類できる。
【0057】
特別な実施形態においては、分類アルゴリズム402は、車両が遭遇するシナリオを分類するために使用される機械学習(ML)モデルであってよい。システムは、システムにフィードバックされるシナリオ特有データ406に基づいてMLモデルを更新できる。例として、そして制限的でなく、システムは、以前の分類結果の肯定的および否定的サンプルを使用してシナリオを分類するために使用されるMLモデルを再訓練できる。MLモデルはこれらの肯定的および否定的サンプルで再訓練されると、これらの否定的/肯定的サンプルのシナリオと同じまたは類似している将来のシナリオを、正しいシナリオカテゴリに正しく分類できる。他の例として、そして制限的でなく、システムは、以前は未知のシナリオであって、人間のオペレータからのフィードバック情報に基づいて分類された1つ以上の新しいシナリオと関連付けられているシナリオ特有データを使用してMLモデルを再訓練できる。MLモデルはこれらの新しいシナリオと関連付けられているシナリオ特有データで再訓練されると、これらの新しいシナリオと同じまたは類似している将来のシナリオを、正しいシナリオカテゴリに正しく分類できる。システムは、システムがより多くのシナリオをどのように取り扱うかを学習することを可能にし、結果的に分類アルゴリズムが、車両が遭遇する可能性のある可能なシナリオのほとんど、またはすべてを分類することを可能にするために分類アルゴリズムを再訓練するためのシナリオ特有データを継続的に、または定期的に供給できる。
【0058】
図4Bは、シナリオ特有データに基づいてプラニングシステムを再訓練するための例としてのフレームワーク400Bを示している。特別な実施形態においては、プラニングシステムは、現在のシナリオに対する知覚データ411に基づいてナビゲーションプラン413を生成できる。ナビゲーションプラン413において車両性能が1つ以上の予め決定されている基準を満たさない場合、システムは離脱動作(例えば、人間のオペレータに制御を引き継ぐように警告すること、車両の速度を落とすこと)を誘発でき、離脱レコード414とトリアージレコード415を生成できる。システムは、人間のオペレータが離脱レコード414とトリアージレコード415を調べて編集することによりフィードバック(例えば、418と419)を提供することを可能にできる。特別な実施形態においては、離脱レコード414とトリアージレコード415は、例えば、下記に制限されないが、知覚データ、車両性能データ(例えば、計画された軌道、最小距離、車両性能評価データなど)、人間のオペレータまたは自動副操縦システムにより制御されるときの実際の車両動作データなどを含んでいるシナリオ特有データを含むことができる。システムは、プラニングシステムが、対応するシナリオにおいて車両を安全にナビゲートできるナビゲーションプランをどのようにして生成するかを学習することを可能にするためにプラニングシステム412にシナリオ特有データを供給できる。システムは、予め決定されている性能基準を満たす車両性能を提供できるナビゲーションプランを生成するためにプラニングシステムを再訓練できる。
【0059】
例として、そして制限的でなく、システムは、車両の運行設計領域から以前は除外されていたシナリオと関連付けられているシナリオ特有データ(人間のオペレータまたは自動副操縦システムにより制御されるときの実際の車両動作データを含んでいる)を供給できる。プラニングシステムは再訓練されると、この以前はサポートされていないシナリオと同じまたは類似している将来のシナリオに対するナビゲーションプランを生成できるようになれる。システムはこのシナリオを運行設計領域に追加できる。例として、そして制限的でなく、システムは、以前はシステムにとっては未知であり、オペレータからのフィードバック情報に基づいて分類された新しいシナリオと関連付けられているシナリオ特有データ(人間のオペレータまたは自動副操縦システムにより制御されるときの実際の車両動作データを含んでいる)を供給できる。プラニングシステムは再訓練されると、この以前は未知であったシナリオと同じまたは類似している将来のシナリオに対するナビゲーションプランを生成できるようになれる。システムはこのシナリオを車両の運行設計領域に追加できる。システムは、プラニングシステムがより多くのシナリオを取り扱うことを学習することを可能にし、結果的に、車両が遭遇する可能性のある可能なシナリオのほとんどまたはすべてを車両が取り扱うことを可能にするためにプラニングシステムにシナリオ特有データを継続的に、または定期的に供給できる。
【0060】
図5は、車両が遭遇するシナリオに基づいて離脱動作を自動的に誘発するための例としての方法500を示している。特別な実施形態においては、方法はステップ510において開始でき、そこにおいて、自律車両と関連付けられている演算システムは、自律運転モードで走行している間に車両が遭遇するシナリオと関連付けられている知覚データを受信できる。ステップ520において、システムは少なくとも知覚データに基づいてシナリオを識別できる。ステップ530においてシステムは、識別されたシナリオに従って車両をナビゲートするための車両ナビゲーションプランと関連付けられている性能測定基準を生成できる。ステップ540において、車両ナビゲーションプランと関連付けられている性能測定基準が、識別されたシナリオに従って車両をナビゲートするための1つ以上の基準を満たさないという決定に応答して、システムは、自律運転モードから車両を離脱させることに関連する離脱動作を誘発できる。ステップ550においてシステムは、誘発された離脱動作と関連付けられている離脱レコードを生成できる。離脱レコードは、離脱動作に関連する、車両が遭遇した識別されたシナリオと関連付けられている情報を含むことができる。
【0061】
特別な実施形態においては、離脱動作は、自律運転モードから車両が離脱されるという警告メッセージをオペレータに送ること、車両の速度を落とすこと、または、自律運転モードから車両を自動的に離脱させることを含むことができる。特別な実施形態においては、性能測定基準は1つ以上の基準を満たさないという決定の前に、システムは、車両が遭遇する追加的シナリオと関連付けられている追加的知覚データを受信できる。システムは追加的知覚データに基づいて、追加的シナリオは識別できないと決定できる。システムは、シナリオは識別できないと決定することに応答して、自律運転モードから車両を離脱させるように誘発できる。特別な実施形態においては、システムは、識別不可シナリオを含むために車両の運行設計領域に対応するデータベースを更新できる。システムは、識別不可シナリオと関連付けられているフィードバックを受信でき、識別不可シナリオを識別するためにフィードバックを使用できる。特別な実施形態においては、シナリオは少なくとも、シナリオと関連付けられている知覚データが、車両の運行設計領域により定義されている1つ以上の以前に識別されたシナリオと関連付けられているデータに対応しているかどうかを決定することに基づいて識別できる。
【0062】
特別な実施形態においては、少なくとも知覚データに基づいてシナリオを識別する前に、システムは、更に車両の新しい知覚データに基づく、車両により受信された知覚データに基づいて既知のシナリオを識別できる。識別された既知のシナリオは運行設計領域に対応する予め決定されているシナリオから除外できる。システムは、識別された既知のシナリオが予め決定されている複数のシナリオから除外されたことに従って自律運転モードから車両を自動的に離脱させることができ、車両の識別された既知のシナリオに基づいて新しい離脱レコードを自動的に生成できる。特別な実施形態においては、離脱レコードは、識別されたシナリオを含んでいる予め記入されているテンプレートを含むために自動的に生成できる。特別な実施形態においては、システムは、予め記入されているテンプレートと関連付けられているフィードバック情報を受信できる。システムはフィードバック情報に基づいて、予め記入されているテンプレートに含まれている識別されたシナリオは正しくないと決定できる。システムは、予め記入されているテンプレートにおいて、識別されたシナリオを他のシナリオを置き換えることができる。特別な実施形態においては、システムは、機械学習モデルの分類精度を向上するために、離脱レコードのシナリオ情報とフィードバック情報に基づいて、更新されたモデルを提供できる。特別な実施形態においては、性能測定基準を評価するための1つ以上の基準は、例えば、下記に制限されないが、車両と他のエージェントまたは物体との間の距離が予め決定されている閾値距離以上であるということ、移動速度が予め決定されている速度範囲内であるということ、加速度または減速度が予め決定されている加速度範囲内であるということ、方向転換半径が予め決定されている半径範囲内であるということ、または、近くの物体に関する相対速度が予め決定されている相対速度範囲内であるということの1つ以上を含むことができる。特別な実施形態においては、システムは、シナリオカテゴリのそれぞれに関する多数の予め決定されているシナリオのそれぞれに対する確率スコアを決定できる。確率スコアは、関連付けられているシナリオが関連付けられているシナリオカテゴリに属する確率レベルを示すことができる。車両が遭遇する多数のシナリオは、関連付けられている確率スコアに基づいてそれぞれのシナリオカテゴリに分類できる。
【0063】
特別な実施形態においては、システムは、車両が自律運転モードから離脱された後に車両動作データを取り込むことができる。システムは取り込んだ車両動作データを、識別されたシナリオと関連付けられている離脱レコードに含むことができる。取り込んだ車両動作データは、車両の加速度、車両の速度、または車両の軌道の少なくとも1つを含むことができる。特別な実施形態においては、システムは、車両が同時に遭遇している多数のシナリオの各シナリオに対する重要度スコアを決定できる。重要度スコアは、各シナリオと関連付けられている過酷さレベルに基づくことができる。識別されたシナリオは、シナリオの中で最も高い重要度スコアと関連付けることができる。システムは、識別されたシナリオは車両が同時に遭遇しているシナリオの中で最も高い重要度スコアと関連付けられているという決定に応答して、車両が同時に遭遇している多数のシナリオから識別されたシナリオを選択できる。
【0064】
特別な実施形態においては、システムは、識別されたシナリオと関連付けられている画像に対する画像ラスタ(画像を画素で表現したもの)を生成できる。システムは、画像ラスタの画素の解析に基づいて、離脱動作と関連付けられている離脱イベントを分類できる。離脱レコードは分類された離脱イベントに基づいて生成できる。特別な実施形態においては、離脱レコードは識別されたシナリオを記述しているテキストコンテンツを含むことができる。システムは、テキスト認識アルゴリズムを使用して離脱レコードのテキストコンテンツを解析できる。システムは、テキスト認識アルゴリズムの解析結果に基づいて、離脱レコードに含まれている離脱動作に関連する識別されたシナリオを選別するための特別チームに離脱レコードを割り当てることができる。特別な実施形態においては、離脱レコードは識別されたシナリオと関連付けられている画像を含むことができる。システムは、画像分類アルゴリズムを使用して離脱レコードの画像を解析できる。システムは、画像分類アルゴリズムの解析結果に基づいて、離脱レコードを選別するための特別チームに離脱レコードを割り当てることができる。
【0065】
特別な実施形態においては、システムは、第1の新しいシナリオが識別不可シナリオであるということに応答して、自律運転モードから車両を自動的に離脱させることができる。システムは、識別不可シナリオと関連付けられている知覚データを含んでいる新しい離脱レコードを生成できる。システムは、オペレータのフィードバックに基づいて、新しい離脱レコードに含まれている知覚データを識別可能シナリオと関連付けることができる。特別な実施形態においては、第2の新しいシナリオが識別可能シナリオであるということに応答して、システムは、車両により生成されたナビゲーションプランに従って自律運転モードにおいて車両をナビゲートできる。特別な実施形態においては、車両ナビゲーションプランは、現在のシナリオにおいて車両をナビゲートするための計画された軌道を含むことができる。計画された軌道は、時間経過における一連の車両位置を含むことができる。一連の車両位置のそれぞれは、車両の速度と移動の方向と関連付けることができる。特別な実施形態においては、システムは、現在のシナリオと予め決定されているシナリオとの間の一致する測定基準に基づいて、現在のシナリオと関連付けられている信頼度レベル、予め決定されているシナリオの過酷さレベル、または、予め決定されているシナリオの発生頻度を決定できる。離脱動作は、現在のシナリオと関連付けられている信頼度レベルに基づいて誘発できる。特別な実施形態においては、システムは、多数のシナリオと関連付けられている多数の離脱レコードからシナリオ情報と車両性能情報を抽出できる。システムは、抽出されたシナリオ情報と車両性能情報に基づいてナビゲーションプラニングシステムを訓練できる。ナビゲーションプラニングシステムは訓練されると、車両がこれらのシナリオにおいて1つ以上の予め決定されている基準(例えば、性能閾値を超えていること)を満たす性能測定基準を有することを可能にする車両ナビゲーションプランを生成できる。
【0066】
特別な実施形態は適切であれば、図5の方法の1つ以上のステップを反復できる。この開示は、図5の方法の特別なステップが特別な順序で起こるものとして記述および例示しているが、この開示は、図5の方法の任意の適切なステップが任意の適切な順序で起こることも考慮している。更にこの開示は、図5の方法の特別なステップを含んでいる、車両が遭遇しているシナリオに基づいて離脱動作を自動的に誘発するための例としての方法を記述および例示しているが、この開示は、適切であれば、図5のステップのすべてまたは幾つかを含むことができる、またはそれらのステップを含まなくてもよい任意の適切なステップを含んでいる、車両が遭遇しているシナリオに基づいて離脱動作を自動的に誘発するための任意の適切な方法も考慮している。更に、この開示は、図5の方法の特別なステップを実行する特別な構成要素、装置、またはシステムを記述および例示しているが、この開示は、図5の方法の任意の適切なステップを実行する任意の適切な構成要素、装置、またはシステムの任意の適切な組み合わせも考慮している。
【0067】
図6は、例としてのコンピュータシステム600を示している。特別な実施形態においては、1つ以上のコンピュータシステム600は、ここにおいて記述または例示されている1つ以上の方法の1つ以上のステップを実行する。特別な実施形態においては、1つ以上のコンピュータシステム600は、ここにおいて記述または例示されている機能を提供する。特別な実施形態においては、1つ以上のコンピュータシステム600上で実行されているソフトウェアは、ここにおいて記述または例示されている1つ以上の方法の1つ以上のステップを実行し、または、ここにおいて記述または例示されている機能を提供する。特別な実施形態は、1つ以上のコンピュータシステム600の1つ以上の部分を含んでいる。ここにおいて、コンピュータシステムへの言及は、適切であれば演算装置を含むことができ、逆もまた可能である。更に、コンピュータシステムへの言及は、適切であれば1つ以上のコンピュータを含むことができる。
【0068】
この開示は、任意の適切な数のコンピュータシステム600も考慮している。この開示は、任意の適切な物理形状を有するコンピュータシステム600も考慮している。例として、そして制限的でなく、コンピュータシステム600は、埋め込まれているコンピュータシステム、システムオンチップ(SOC)、シングルボードコンピュータシステム(SBC)(例えば、コンピュータオンモジュール(COM)またはシステムオンモジュール(SOM)などのような)、デスクトップコンピュータシステム、ラップトップまたはノートブックコンピュータシステム、インタラクティブキオスク、メインフレーム、コンピュータシステムのメッシュ、モバイルテレフォン、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、拡張/仮想現実装置、または、これらの2つ以上の組み合わせであってよい。適切であれば、コンピュータシステム600は1つ以上のコンピュータシステム600を含むことができ、単一型または分散型であってよく、複数の場所にわたってもよく、複数のマシンにわたってもよく、複数のデータセンタにわたってもよく、または、1つ以上のネットワークにおいて1つ以上のリモートサーバ演算構成要素を含むことができるリモートサーバコンピュータに常駐できる。適切であれば、1つ以上のコンピュータシステム600は、実質的な空間または時間的制限なしに、ここにおいて記述または例示されている1つ以上の方法の1つ以上のステップを実行できる。例として、そして制限的でなく、1つ以上のコンピュータシステム600は、ここにおいて記述または例示されている1つ以上の方法の1つ以上のステップをリアルタイムで、またはバッチモードで実行できる。1つ以上のコンピュータシステム600は、適切であれば、ここにおいて記述または例示されている1つ以上の方法の1つ以上のステップを異なる時間、または異なる場所で実行できる。
【0069】
特別な実施形態においては、コンピュータシステム600は、プロセッサ602、メモリ604、ストレージ606、入/出力(I/O)インタフェース608、通信インタフェース610、およびバス612を含んでいる。この開示は、特別な配置において特別な数の特別な構成要素を有している特別なコンピュータシステムを記述および例示しているが、この開示は、任意の適切な配置において任意の適切な数の任意の適切な構成要素を有している任意の適切のコンピュータシステムも考慮している。
【0070】
特別な実施形態においては、プロセッサ602は、コンピュータプログラムを構成する命令などのような命令を実行するためのハードウェアを含んでいる。例として、そして制限的でなく、命令を実行するために、プロセッサ602は、内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606から命令を取り出す(または取得する)ことができ、その命令を復号および実行でき、そして1つ以上の結果を内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606に書き込むことができる。特別な実施形態においては、プロセッサ602は、データ、命令、またはアドレスのための1つ以上の内部キャッシュを含むことができる。この開示は、適切であれば、任意の適切な数の任意の適切な内部キャッシュを含んでいるプロセッサ602も考慮している。例として、そして制限的でなく、プロセッサ602は、1つ以上の命令キャッシュ、1つ以上のデータキャッシュ、および1つ以上のトランスレーションルックアサイドバッファ(TLB)を含むことができる。命令キャッシュにおける命令は、メモリ604またはストレージ606における命令の複製であってよく、命令キャッシュは、プロセッサ602によるそれらの命令の取り出しの速度を上げることができる。データキャッシュにおけるデータは、コンピュータ命令により操作されるメモリ604またはストレージ606におけるデータの複製、後続の命令にアクセス可能な、またはメモリ604またはストレージ606への書き込みのための、プロセッサ602により実行される以前の命令の結果、または任意の他の適切なデータであってよい。データキャッシュは、プロセッサ602による読み込みまたは書き込み動作の速度を上げることができる。TLBはプロセッサ602に対する仮想-アドレス変換の速度を上げることができる。特別な実施形態においては、プロセッサ602は、データ、命令、またはアドレスのための1つ以上の内部レジスタを含むことができる。この開示は、適切であれば、任意の適切な数の任意の適切な内部レジスタを含んでいるプロセッサ602も考慮している。適切であれば、プロセッサ602は1つ以上の論理演算装置(ALU)を含むことができ、マルチコアプロセッサであってよく、または1つ以上のプロセッサ602を含むことができる。この開示は特別なプロセッサを記述および例示しているが、この開示は任意の適切なプロセッサも考慮している。
【0071】
特別な実施形態においては、メモリ604は、プロセッサ02が実行する命令、またはプロセッサ602が操作するデータを格納するためのメインメモリを含んでいる。例として、そして制限的でなく、コンピュータシステム600は、ストレージ606または他のソース(他のコンピュータシステム600などのような)からの命令をメモリ604にロードできる。そしてプロセッサ602は、メモリ604からの命令を内部レジスタまたは内部キャッシュにロードできる。命令を実行するためにプロセッサ602は、内部レジスタまたは内部キャッシュから命令を取り出すことができ、その命令を復号化できる。命令の実行の間または実行の後、プロセッサ602は1つ以上の結果(中間または最終結果であってよい)を内部レジスタまたは内部キャッシュに書き込むことができる。そしてプロセッサ602は、これらの結果の1つ以上をメモリ604に書き込むことができる。特別な実施形態においては、プロセッサ602は、1つ以上の内部レジスタまたは内部キャッシュまたはメモリ604における命令のみを実行し(ストレージ606などとは反対に)、1つ以上の内部レジスタまたは内部キャッシュまたはメモリ604におけるデータのみを操作する(ストレージ606などとは反対に)。1つ以上のメモリバス(それぞれはアドレスバスとデータバスを含むことができる)はプロセッサ602をメモリ604に結合できる。バス612は、下記に更に詳細に記述されるように1つ以上のメモリバスを含むことができる。特別な実施形態においては、1つ以上のメモリ管理ユニット(MMU)はプロセッサ602とメモリ604との間に常駐し、プロセッサ602により要求されるメモリ604へのアクセスを容易にする。特別な実施形態においては、メモリ604はランダムアクセスメモリ(RAM)を含んでいる。このRAMは適切であれば揮発性メモリであってよい。適切であれば、このRAMは動的RAM(DRAM)または静的RAM(SRAM)であってよい。更に、適切であれば、このRAMはシングルポートまたはマルチポートRAMであってよい。この開示は任意の適切なRAMも考慮している。メモリ604は適切であれば1つ以上のメモリ604を含むことができる。この開示は特別なメモリを記述および例示しているが、この開示は任意の適切なメモリも考慮している。
【0072】
特別な実施形態においては、ストレージ606は、データまたは命令のための大容量ストレージを含んでいる。例として、そして制限的でなく、ストレージ606は、ハードディスクドライブ(HDD)、フロッピーディスクドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサルシリアルバス(USB)ドライブまたはこれらの2つ以上の組み合わせを含むことができる。ストレージ606は適切であればリムーバブルまたは非リムーバブル(または固定)媒体を含むことができる。ストレージ606は適切であればコンピュータシステム600に対して内部または外部であってよい。特別な実施形態においては、ストレージ606は不揮発性ソリッドステートメモリであってよい。特別な実施形態においては、ストレージ606はリードオンリメモリ(ROM)を含んでいる。適切であれば、このROMはマスクプログラムROM、プログラマブルROM(PROM)、消去可能型PROM(EPROM)、電気的消去可能型PROM(EEPROM)、電気的書き換え可能型ROM(EAROM)、またはフラッシュメモリまたはこれらの2つ以上の組み合わせであってよい。この開示は任意の適切な物理形状を有する大容量ストレージ606も考慮している。適切であればストレージ606は、プロセッサ602とストレージ606との間の通信を容易にする1つ以上のストレージ制御ユニットを含むことができる。適切であれば、ストレージ606は1つ以上のストレージ606を含むことができる。この開示は特別なストレージを記述および例示しているが、この開示は任意の適切なストレージも考慮している。
【0073】
特別な実施形態においては、I/Oインタフェース608は、ハードウェア、ソフトウェア、またはその両者を含んでおり、コンピュータシステム600と1つ以上のI/O装置との間の通信のための1つ以上のインタフェースを提供する。適切であれば、コンピュータシステム600はこれらのI/O装置の1つ以上を含むことができる。これらのI/O装置の1つ以上は、人間とコンピュータシステム600との間の通信を可能にできる。例として、そして制限的でなく、I/O装置はキーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチールカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、他の適切なI/O装置またはこれらの2つ以上の組み合わせを含むことができる。I/O装置は1つ以上のセンサを含むことができる。この開示は、それらに対する任意の適切なI/O装置と任意の適切なI/Oインタフェース608も考慮している。適切であれば、I/Oインタフェース608は、プロセッサ602がこれらのI/O装置の1つ以上を駆動することを可能にする1つ以上の装置またはソフトウェアドライバを含むことができる。適切であれば、I/Oインタフェース608は1つ以上のI/Oインタフェース608を含むことができる。この開示は特別なI/Oインタフェースを記述および例示しているが、この開示は任意の適切なI/Oインタフェースも考慮している。
【0074】
特別な実施形態においては、通信インタフェース610は、ハードウェア、ソフトウェア、またはその両者を含んでおり、コンピュータシステム600と1つ以上の他のコンピュータシステム600または1つ以上のネットワークとの間の通信(例えば、パケットに基づく通信などのような)のための1つ以上のインタフェースを提供する。例として、そして制限的でなく、通信インタフェース610は、イーサネットまたは任意の他のワイヤに基づくネットワークとの通信のためのネットワークインタフェースコントローラ(NIC)またはネットワークアダプタ、またはWI-FIネットワークなどのような無線ネットワークとの通信のための無線NIC(WNIC)または無線アダプタを含むことができる。この開示は、それらに対する任意の適切なネットワークと任意の適切な通信インタフェース610も考慮している。例として、そして制限的でなく、コンピュータシステム600は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、またはインターネットの1つ以上の部分、またはこれらの2つ以上の組み合わせと通信できる。これらのネットワークの1つ以上の1つ以上の部分は有線であっても無線であってもよい。例として、コンピュータシステム600は、無線PAN(WPAN)(例えば、ブルートゥース(登録商標)WPANなどのような)、WI-FIネットワーク、WI-MAXネットワーク、セルラーテレフォンネットワーク(例えば、グローバル移動通信システム(GSM)ネットワークなどのような)、または任意の他の適切な無線ネットワーク、またはこれらの2つ以上の組み合わせと通信できる。適切であれば、コンピュータシステム600は、これらのネットワークの何れにも対する任意の適切な通信インタフェース610を含むことができる。適切であれば、通信インタフェース610は1つ以上の通信インタフェース610を含むことができる。この開示は特別な通信インタフェースを記述および例示しているが、この開示は任意の適切な通信インタフェースも考慮している。
【0075】
特別な実施形態においては、バス612は、ハードウェア、ソフトウェア、またはその両者を含んでおり、コンピュータシステム600の構成要素を互いに結合する。例として、そして制限的でなく、バス612は、アクセラレーテッドグラフィックスポート(AGP)または任意の他のグラフィックスバス、EISA(Enhanced Industry Standard Architecture)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)相互接続、ISA(Industry Standard Architecture)バス、INFINIBAND相互接続、LPC(Low-Pin Count)バス、メモリバス、MCA(Micro Channel Architecture)バス、PCI(Peripheral Component Interconnect)バス、PCIe(PCI-Express)バス、SATA(Serial Advanced Technology Attachment)バス、VLB(Video Electronics Standards Association local)バス、または他の適切なバスまたはこれらの2つ以上の組み合わせを含むことができる。適切であれば、バス612は1つ以上のバス612を含むことができる。この開示は特別なバスを記述および例示しているが、この開示は任意の適切なバスまたは相互接続も考慮している。
【0076】
ここにおいて、コンピュータ読み取り可能非一時的格納媒体は、適切であれば、1つ以上の半導体に基づく、または他のタイプの集積回路(IC)(例えば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向けIC(ASIC)など)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピーディスケット、フロッピーディスクドライブ(FDD)、磁気テープ、ソリッドステートドライブ(SSD)、RAMドライブ、SECURE DIGITALカードまたはドライブ、任意の他の適切なコンピュータ読み取り可能非一時的格納媒体、またはこれらの2つ以上の任意の適切な組み合わせを含むことができる。適切であれば、コンピュータ読み取り可能非一時的格納媒体は、揮発性、不揮発性、または揮発性と不揮発性の組み合わせであってよい。
【0077】
ここにおいて「または」は、そうでないと明示的に示されない限り、または文脈からそうでないと示されない限り包括的であり、排他的ではない。従って、ここにおいては、「AまたはB」とは、そうでないと明示的に示されない限り、または文脈からそうでないと示されない限り「A、B、またはその両者」を意味している。更に、「~と~」は、そうでないと明示的に示されない限り、または文脈からそうでないと示されない限り両者および別々の両方のことである。従って、ここにおいては、「AとB」は、そうでないと明示的に示されない限り、または文脈からそうでないと示されない限り「AとBの両者またはAとB別々」を意味している。
【0078】
この開示の範囲は、ここにおいて記述または例示されている例としての実施形態に対する、この技術における通常の技量を有する者が理解するであろうすべての変更、置換、変形、改造、および修正を含んでいる。この開示の範囲は、ここにおいて記述または例示されている例としての実施形態に制限されない。更に、この開示は、ここにおけるそれぞれの実施形態を、特別な構成要素、要素、特徴、機能、動作、またはステップを含んでいるとして記述および例示しているが、これらの実施形態の何れも、ここにおいて何れかの箇所で記述または例示されている、この技術における通常の技量を有する者が理解するであろう構成要素、要素、特徴、機能、動作、またはステップの何れの任意の組み合わせまたは置換を含むことができる。更に、付随する請求項における、特別な機能を実行するように適合されている、配置されている、実行できる、実行するように構成されている、実行を可能とされている、実行可能な、または実行されている装置またはシステム、または装置またはシステムの構成要素に対する言及は、それが、またはその特別な機能が起動されていようがいまいが、立ち上げられていようがいまいが、またはロックを解除されていようがいまいが、その装置、システム、または構成要素がそのように適合され、配置され、実行でき、実行するように構成され、実行を可能とされ、実行可能な、または実行されている限り、その装置、システム、構成要素を含んでいる。追加的に、この開示は、特別な実施形態が特別な利点を提供するように記述または例示しているが、特別な実施形態は、これらの利点をまったく提供しなくてもよく、またはその幾つかまたはすべてを提供できる。
図1A
図1B
図2A
図2B
図2C
図2D
図2E
図3A
図3B
図4A
図4B
図5
図6
【国際調査報告】