以下の詳細な説明は、添付図面を参照する。可能な場合には常に、図面及び以下の説明において、同じ又は同様の部分を指すのに同じ参照番号が使用される。幾つかの例示的な実施形態は、本明細書で説明されるが、変更形態、適応形態及び他の実装形態が可能である。例えば、図面に示される構成要素に対する置換形態、追加形態又は変更形態がなされ得、本明細書に記載される例示的な方法は、開示される方法のステップの置換、順序替え、削除又は追加により変更することができる。従って、以下の詳細な説明は、開示される実施形態及び例に限定されない。その代わり、適切な範囲は、添付の特許請求の範囲により規定される。
自律車両の概要
本開示の全体を通して使用するとき、「自律車両」という用語は、ドライバーの入力なしで少なくとも1つのナビゲーション変更を実施することができる車両を指す。「ナビゲーション変更」は、車両の操舵、ブレーキ又は加速/減速の1つ又は複数の変更を指す。自律的であるために、車両は、完全に自動である(例えば、ドライバー又はドライバー入力なしに完全に動作可能である)必要はない。むしろ、自律車両は、特定の時間期間中にドライバーの制御下で動作し、他の時間期間中にドライバーの制御なしで動作することができる車両を含む。自律車両は、(例えば、車両レーン制約間に車両コースを維持するために)操舵等の車両ナビゲーションの幾つかの側面のみを制御するか、又は(あらゆる状況下ではなく)一定の状況下で幾つかの操舵動作を制御するが、他の側面(例えば、ブレーキ又は一定の状況下でのブレーキ)をドライバーに任せ得る車両を含むこともできる。幾つかの場合、自律車両は、車両のブレーキ、速度制御及び/又は操舵の幾つかの又は全ての側面を扱い得る。
人間のドライバーは、通常、車両を制御するために視覚的手掛かり及び観測に依存することから、交通基盤は、それに従って構築されており、レーンマーク、交通標識及び信号機は、視覚的情報をドライバーに提供するように設計されている。交通基盤のこれらの設計特徴に鑑みて、自律車両は、カメラと、車両の環境から捕捉される視覚的情報を分析する処理ユニットとを含み得る。視覚的情報は、例えば、ドライバーにより観測可能な交通基盤の構成要素(例えば、レーンマーク、交通標識、信号機等)及び他の障害物(例えば、他の車両、歩行者、瓦礫等)を表す画像を含み得る。更に、自律車両は、ナビゲート時、車両の環境のモデルを提供する情報等の記憶された情報を使用することもできる。例えば、車両は、GPSデータ、センサデータ(例えば、加速度計、速度センサ、サスペンションセンサ等からの)及び/又は他の地図データを使用して、車両が走行している間、車両の環境に関連する情報を提供し得、車両(及び他の車両)は情報を使用して、モデルでのそれ自体の位置を特定し得る。一部の車両は、車両間の通信、情報の共有、車両の周囲の危険又は変化のピア車両の変更等も可能であり得る。
システム概要
図1は、開示される例示的な実施形態によるシステム100のブロック図表現である。システム100は、特定の実施要件に応じて様々な構成要素を含み得る。幾つかの実施形態では、システム100は、処理ユニット110、画像取得ユニット120、位置センサ130、1つ又は複数のメモリユニット140、150、地図データベース160、ユーザインタフェース170及び無線送受信機172を含み得る。処理ユニット110は、1つ又は複数の処理デバイスを含み得る。幾つかの実施形態では、処理ユニット110は、アプリケーションプロセッサ180、画像プロセッサ190又は他の任意の適切な処理デバイスを含み得る。同様に、画像取得ユニット120は、特定の用途の要件に応じて任意の数の画像取得デバイス及び構成要素を含み得る。幾つかの実施形態では、画像取得ユニット120は、画像捕捉デバイス122、画像捕捉デバイス124、画像捕捉デバイス126等の1つ又は複数の画像捕捉デバイス(例えば、カメラ、CCD、他の任意の種類の画像センサ)を含み得る。システム100は、処理ユニット110を画像取得ユニット120に通信可能に接続するデータインタフェース128を含むこともできる。例えば、データインタフェース128は、画像取得ユニット120によって取得された画像データを処理ユニット110に伝送するための1つ又は複数の任意の有線リンク及び/又は無線リンクを含み得る。
無線送受信機172は、無線周波数、赤外線周波数、磁場又は電場の使用により無線インタフェースを介して伝送を1つ又は複数のネットワーク(例えば、セルラやインターネット等)と交換するように構成される1つ又は複数のデバイスを含み得る。無線送受信機172は、任意の既知の標準を使用してデータを送信及び/又は受信し得る(例えば、Wi−Fi(登録商標)、Bluetooth(登録商標)、Bluetooth Smart、802.15.4、ZigBee(登録商標)等)。かかる伝送は、ホスト車両から1つ又は複数の遠隔設置されたサーバへの通信を含み得る。かかる伝送は、(例えば、ホスト車両の環境内の目標車両を考慮して又はかかる目標車両と共にホスト車両のナビゲーションの調整を促進するための)ホスト車両とホスト車両の環境内の1つ又は複数の目標車両との間の(単方向又は双方向)通信、更に伝送側の車両の付近にある未指定の受け手へのブロードキャスト伝送も含み得る。
アプリケーションプロセッサ180及び画像プロセッサ190の両方は、様々なタイプのハードウェアベースの処理デバイスを含み得る。例えば、アプリケーションプロセッサ180及び画像プロセッサ190のいずれか一方又は両方は、マイクロプロセッサ、プリプロセッサ(画像プリプロセッサ等)、グラフィックスプロセッサ、中央演算処理装置(CPU)、サポート回路、デジタル信号プロセッサ、集積回路、メモリ又はアプリケーションを実行し、画像を処理して分析するのに適する任意の他のタイプのデバイスを含み得る。幾つかの実施形態では、アプリケーションプロセッサ180及び/又は画像プロセッサ190は、任意のタイプのシングルコア又はマルチコアプロセッサ、モバイルデバイスマイクロコントローラ、中央演算処理装置等を含み得る。例えば、Intel(登録商標)、AMD(登録商標)等の製造業者から入手可能なプロセッサを含め、様々な処理デバイスが使用可能であり、様々なアーキテクチャ(例えば、x86プロセッサ、ARM(登録商標)等)を含み得る。
幾つかの実施形態では、アプリケーションプロセッサ180及び/又は画像プロセッサ190は、Mobileye(登録商標)から入手可能な任意のEyeQシリーズのプロセッサを含み得る。これらのプロセッサ設計は、それぞれローカルメモリ及び命令セットを有する複数の処理ユニットを含む。そのようなプロセッサは、複数の画像センサから画像データを受信するビデオ入力を含み得ると共に、ビデオ出力機能を含むこともできる。一例では、EyeQ2(登録商標)は、332MHzで動作する90nm−ミクロン技術を使用する。EyeQ2(登録商標)アーキテクチャは、2つの浮動小数点ハイパースレッド32ビットRISC CPU(MIPS32(登録商標)34K(登録商標)コア)、5つのビジョン計算エンジン(VCE)、3つのベクトルマイクロコードプロセッサ(VMP(登録商標))、Denali64ビットモバイルDDRコントローラ、128ビット内部音響相互接続、デュアル16ビットビデオ入力及び18ビットビデオ出力コントローラ、16チャネルDMA及び幾つかの周辺機器からなる。MIPS34K CPUは、5つのVCE、3つのVMP(商標)及びDMA、第2のMIPS34K CPU及びマルチチャネルDMA並びに他の周辺機器を管理する。5つのVCE、3つのVMP(登録商標)及びMIPS34K CPUは、多機能バンドルアプリケーションにより要求される集中的なビジョン計算を実行することができる。別の例では、開示される実施形態において、第三世代プロセッサであり、EyeQ2(登録商標)よりも6倍強力なEyeQ3(登録商標)を使用し得る。他の例では、EyeQ4(登録商標)及び/又はEyeQ5(登録商標)を開示する実施形態で使用することができる。当然ながら、それよりも新しい又は将来のEyeQ処理デバイスは、開示する実施形態と共に使用され得る。
本明細書で開示する処理デバイスのいずれも特定の機能を実行するように構成することができる。記載のEyeQプロセッサ又は他のコントローラ若しくはマイクロプロセッサのいずれか等の処理デバイスを、特定の機能を実行するように構成することは、コンピュータ実行可能命令をプログラムし、処理デバイスの動作中に実行するためにそれらの命令を処理デバイスに提供することを含み得る。幾つかの実施形態では、処理デバイスを構成することは、処理デバイスにアーキテクチャ的命令を直接プログラムすることを含み得る。他の実施形態では、処理デバイスを構成することは、動作中に処理デバイスがアクセス可能なメモリ上に実行可能命令を記憶することを含み得る。例えば、処理デバイスは、動作中にメモリにアクセスして、記憶された命令を取得及び実行し得る。いずれにせよ、本明細書で開示する検知、画像分析及び/又はナビゲーション機能を実行するように構成される処理デバイスは、ホスト車両の複数のハードウェアベースの構成要素を制御する専用のハードウェアベースのシステムを表す。
図1は、処理ユニット110に含まれる2つの別個の処理デバイスを示すが、より多数又はより少数の処理デバイスを使用することもできる。例えば、幾つかの実施形態では、単一の処理デバイスを使用して、アプリケーションプロセッサ180及び画像プロセッサ190のタスクを達成し得る。他の実施形態では、これらのタスクは、3つ以上の処理デバイスにより実行し得る。更に、幾つかの実施形態では、システム100は、画像取得ユニット120等の他の構成要素を含まず、処理ユニット110の1つ又は複数を含み得る。
処理ユニット110は、様々なタイプのデバイスを含み得る。例えば、処理ユニット110は、コントローラ、画像プリプロセッサ、中央演算処理装置(CPU)、サポート回路、デジタル信号プロセッサ、集積回路、メモリ又は画像を処理し分析する任意の他のタイプのデバイス等の様々なデバイスを含み得る。画像プリプロセッサは、画像センサから画像を捕捉し、デジタル化し、処理するビデオプロセッサを含み得る。CPUは、任意の数のマイクロコントローラ又はマイクロプロセッサを含み得る。サポート回路は、キャッシュ、電源、クロック及び入出力回路を含め、当技術分野で一般に周知の任意の数の回路であり得る。メモリは、プロセッサにより実行されると、システムの動作を制御するソフトウェアを記憶し得る。メモリは、データベース及び画像処理ソフトウェアを含み得る。メモリは、任意の数のランダムアクセスメモリ、読み取り専用メモリ、フラッシュメモリ、ディスクドライブ、光学記憶装置、テープ記憶装置、リムーバブル記憶装置及び他のタイプの記憶装置を含み得る。一例では、メモリは、処理ユニット110とは別個であり得る。別の例では、メモリは、処理ユニット110に統合し得る。
各メモリ140、150は、プロセッサ(例えば、アプリケーションプロセッサ180及び/又は画像プロセッサ190)によって実行されるとき、システム100の様々な態様の動作を制御し得るソフトウェア命令を含み得る。これらのメモリユニットは、様々なデータベース及び画像処理ソフトウェア並びに例えばニューラルネットワーク又はディープニューラルネットワーク等のトレーニング済みシステムを含み得る。メモリユニットは、ランダムアクセスメモリ、読み取り専用メモリ、フラッシュメモリ、ディスクドライブ、光学記憶装置、テープ記憶装置、リムーバブル記憶装置及び/又は他の任意の種類の記憶装置を含み得る。幾つかの実施形態では、メモリユニット140、150は、アプリケーションプロセッサ180及び/又は画像プロセッサ190とは別個であり得る。他の実施形態では、これらのメモリユニットは、アプリケーションプロセッサ180及び/又は画像プロセッサ190に統合され得る。
位置センサ130は、システム100の少なくとも1つの構成要素に関連付けられた位置を特定するのに適する任意のタイプのデバイスを含み得る。幾つかの実施形態では、位置センサ130はGPS受信機を含み得る。そのような受信機は、全地球測位システム衛星によりブロードキャストされる信号を処理することにより、ユーザの位置及び速度を特定することができる。位置センサ130からの位置情報は、アプリケーションプロセッサ180及び/又は画像プロセッサ190に提供し得る。
幾つかの実施形態では、システム100は、車両200の速度を測定するための速度センサ(例えば、速度計)等の構成要素を含み得る。システム100は、1つ又は複数の軸に沿って車両200の加速度を測定するための1つ又は複数の(単軸又は多軸の)加速度計も含み得る。
メモリユニット140、150は、既知の陸標の位置を示すデータベース又は他の任意の形式で編成されるデータを含み得る。環境の感覚情報(画像、レーダ信号、2つ以上の画像をライダ又は立体処理することによる深度情報等)をGPS座標や車両の自己運動等の位置情報と一緒に処理して、既知の陸標に対する車両の現在位置を求め、車両の位置を洗練させることができる。この技術の特定の側面は、本願の譲受人によって販売されているREM(商標)として知られる位置特定技術に含まれる。
ユーザインタフェース170は、情報を提供するか、又はシステム100の1人若しくは複数のユーザから入力を受信するのに適する任意のデバイスを含み得る。幾つかの実施形態では、ユーザインタフェース170は、例えば、タッチスクリーン、マイクロフォン、キーボード、ポインタデバイス、トラックホィール、カメラ、つまみ、ボタン等を含め、ユーザ入力デバイスを含み得る。そのような入力デバイスを用いて、ユーザは、命令若しくは情報をタイプし、音声コマンドを提供し、ボタン、ポインタ若しくは目追跡機能を使用して、又は情報をシステム100に通信する任意の他の適する技法を通して画面上のメニュー選択肢を選択することにより、システム100に情報入力又はコマンドを提供可能であり得る。
ユーザインタフェース170は、ユーザに情報を提供するか、又はユーザから情報を受信し、例えばアプリケーションプロセッサ180による使用のためにその情報を処理するように構成される1つ又は複数の処理デバイスを備え得る。幾つかの実施形態では、そのような処理デバイスは、目の動きを認識して追跡する命令、音声コマンドを受信して解釈する命令、タッチスクリーンで行われたタッチ及び/又はジェスチャを認識して解釈する命令、キーボード入力又はメニュー選択に応答する命令等を実行し得る。幾つかの実施形態では、ユーザインタフェース170は、ディスプレイ、スピーカ、触覚デバイス及び/又は出力情報をユーザに提供する任意の他のデバイスを含み得る。
地図データベース160は、システム100にとって有用な地図データを記憶する任意のタイプのデータベースを含み得る。幾つかの実施形態では、地図データベース160は、道路、水特徴、地理的特徴、ビジネス、関心点、レストラン、ガソリンスタンド等を含め、様々な項目の、基準座標系での位置に関連するデータを含み得る。地図データベース160は、そのような項目の位置のみならず、例えば記憶された特徴のいずれかに関連付けられた名称を含め、それらの項目に関連する記述子も記憶し得る。幾つかの実施形態では、地図データベース160は、システム100の他の構成要素と共に物理的に配置し得る。代替又は追加として、地図データベース160又はその一部は、システム100の他の構成要素(例えば、処理ユニット110)に関してリモートに配置し得る。そのような実施形態では、地図データベース160からの情報は、有線又は無線データ接続を介してネットワークにダウンロードし得る(例えば、セルラネットワーク及び/又はインターネット等を介して)。幾つかの場合、地図データベース160は、特定の道路の特徴(例えば、レーンマーク)又はホスト車両の目標軌道の多項式表現を含む疎なデータモデルを記憶し得る。地図データベース160は、目標軌道に対するホスト車両の既知の位置を決定又は更新するために使用され得る様々な認識された陸標の記憶された表現も含み得る。陸標表現は、潜在的な識別子の中でも、陸標の種類や陸標の位置等のデータフィールドを特に含み得る。
画像捕捉デバイス122、124及び126は、それぞれ環境から少なくとも1つの画像を捕捉するのに適する任意のタイプのデバイスを含み得る。更に、任意の数の画像捕捉デバイスを使用して、画像プロセッサに入力する画像を取得し得る。幾つかの実施形態は、単一の画像捕捉デバイスのみを含み得、一方、他の実施形態は、2つ、3つ、更に4つ以上の画像捕捉デバイスを含み得る。画像捕捉デバイス122、124及び126については、図2B〜図2Eを参照して更に以下に説明する。
1つ又は複数のカメラ(例えば、画像捕捉デバイス122、124及び126)は、車両上に含まれる検知ブロックの一部であり得る。他の様々なセンサが検知ブロックに含まれ得、車両の検知されたナビゲーション状態を開発するためにセンサのいずれか又は全てを利用することができる。カメラ(前向き、横向き、後向き等)に加えて、レーダ、ライダ、音響センサ等の他のセンサが検知ブロックに含まれ得る。加えて、検知ブロックは、車両の環境に関係する情報を伝達し、送受信するように構成される1つ又は複数の構成要素を含み得る。例えば、かかる構成要素は、ホスト車両に対して遠隔設置されたソースからホスト車両の環境に関係するセンサベースの情報又は他の任意の種類の情報を受信し得る無線送受信機(RF等)を含み得る。かかる情報は、ホスト車両以外の車両システムから受信されるセンサ出力情報又は関連情報を含み得る。幾つかの実施形態では、かかる情報は、遠隔計算装置や集中サーバ等から受信される情報を含み得る。更に、カメラは、単一のカメラユニット、複数のカメラ、カメラクラスタ、長いFOV、短いFOV、広角、魚眼等の多くの異なる構成を取ることができる。
システム100又はシステム100の様々な構成要素は、様々な異なるプラットフォームに組み込み得る。幾つかの実施形態では、システム100は、図2Aに示されるように、車両200に含め得る。例えば、車両200は、図1に関して上述したように、処理ユニット110及びシステム100の任意の他の構成要素を備え得る。幾つかの実施形態では、車両200は単一の画像捕捉デバイス(例えば、カメラ)のみを備え得、一方、図2B〜図2Eに関連して考察した実施形態等の他の実施形態では、複数の画像捕捉デバイスが使用可能である。例えば、図2Aに示されるように、車両200の画像捕捉デバイス122及び124のいずれかは、ADAS(最新運転者支援システム)撮像セットの一部であり得る。
画像取得ユニット120の一部として車両200に含まれる画像捕捉デバイスは、任意の適する位置に位置し得る。幾つかの実施形態では、図2A〜図2E及び図3A〜図3Cに示されるように、画像捕捉デバイス122は、バックミラーの近傍に配置し得る。この位置は、車両200のドライバーと同様の視線を提供し得、ドライバーにとって何が見え、何が見えないかの判断を支援し得る。画像捕捉デバイス122は、バックミラーの近傍の任意の位置に位置し得るが、画像捕捉デバイス122をミラーのドライバー側に配置することは、ドライバーの視野及び/又は視線を表す画像の取得を更に支援し得る。
画像取得ユニット120の画像捕捉デバイスに他の位置を使用することもできる。例えば、画像捕捉デバイス124は、車両200のバンパー上又はバンパー内に配置し得る。そのような位置は、広視野を有する画像捕捉デバイスに特に適し得る。バンパーに配置される画像捕捉デバイスの視線は、ドライバーの視線と異なることができ、従って、バンパー画像捕捉デバイス及びドライバーは、同じ物体を常に見ているわけではない。画像捕捉デバイス(例えば、画像捕捉デバイス122、124及び126)は、他の位置に配置することもできる。例えば、画像捕捉デバイスは、車両200のサイドミラーの一方又は両方、車両200のルーフ、車両200のフード、車両200のトランク、車両200の側部に配置し得、車両200の任意のウィンドウに搭載、背後に位置決め又は前に位置決めし得、車両200の前部及び/又は後部のライト又はその近傍等に搭載し得る。
画像捕捉デバイスに加えて、車両200は、システム100の様々な他の構成要素を含み得る。例えば、処理ユニット110は、車両のエンジン制御ユニット(ECU)に統合されるか、又はECUとは別個に車両200に含まれ得る。車両200には、GPS受信機等の位置センサ130を備えることもでき、車両200は、地図データベース160並びにメモリユニット140及び150を含むこともできる。
上述したように、無線送受信機172は、1つ又は複数のネットワーク(例えば、セルラネットワーク、インターネット等)を介してデータを及び/又は受信し得る。例えば、無線送受信機172は、システム100により収集されたデータを1つ又は複数のサーバにアップロードし、データを1つ又は複数のサーバからダウンロードし得る。無線送受信機172を介して、システム100は、例えば、定期的に又は需要時に地図データベース160、メモリ140及び/又はメモリ150に記憶されたデータへの更新を受信し得る。同様に、無線送受信機172は、システム100からの任意のデータ(例えば、画像取得ユニット120により捕捉された画像、位置センサ130、他のセンサ又は車両制御システムにより受信されたデータ等)及び/又は処理ユニット110により処理された任意のデータを1つ又は複数のサーバにアップロードし得る。
システム100は、プライバシーレベル設定に基づいてデータをサーバ(例えば、クラウド)にアップロードし得る。例えば、システム100は、サーバに送信される、車両及び/又は車両のドライバー/所有者を一意に識別し得るタイプのデータ(メタデータを含む)を規制又は制限するプライバシーレベル設定を実施し得る。そのような設定は、例えば、無線送受信機172を介してユーザにより設定され得るか、工場デフォルト設定により初期化され得るか、又は無線送受信機172により受信されるデータにより設定され得る。
幾つかの実施形態では、システム100は、「高」プライバシーレベルに従ってデータをアップロードし得、設定の設定下において、システム100は、特定の車両及び/又はドライバー/所有者についてのいかなる詳細もないデータ(例えば、ルートに関連する位置情報、捕捉画像等)を送信し得る。例えば、「高」プライバシーレベルに従ってデータをアップロードする場合、システム100は、車両識別番号(VIN)又は車両のドライバー若しくは所有者の氏名を含まず、代わりに、捕捉画像及び/又はルートに関連する限られた位置情報等のデータを送信し得る。
他のプライバシーレベルも意図される。例えば、システム100は、「中」プライバシーレベルに従ってデータをサーバに送信し得、車両及び/又は車両タイプのメーカー及び/又はモデル(例えば、乗用車、スポーツユーティリティ車、トラック等)等の「高」プライバシーレベル下では含まれない追加情報を含み得る。幾つかの実施形態では、システム100は、「低」プライバシーレベルに従ってデータをアップロードし得る。「低」プライバシーレベル設定下では、システム100は、特定の車両、所有者/ドライバー及び/又は車両が走行したルートの一部又は全体を一意に識別するのに十分なデータをアップロードし、そのような情報を含み得る。そのような「低」プライバシーレベルデータは、例えば、VIN、ドライバー/所有者氏名、出発前の車両の出発点、車両の意図される目的地、車両のメーカー及び/又はモデル、車両のタイプ等の1つ又は複数を含み得る。
図2Aは、開示される実施形態による例示的な車両撮像システムの側面図表現である。図2Bは、図2Aに示される実施形態の上面図表現である。図2Bに示されるように、開示される実施形態は、バックミラーの近傍及び/又は車両200のドライバー近傍に位置決めされた第1の画像捕捉デバイス122と、車両200のバンパー領域(例えば、バンパー領域210の1つ)上又はバンパー領域内に位置決めされる第2の画像捕捉デバイス124と、処理ユニット110とを有するシステム100を本体内に含む車両200を示し得る。
図2Cに示されるように、画像捕捉デバイス122及び124の両方は、車両200のバックミラーの近傍及び/又はドライバーの近傍に位置決めし得る。更に、2つの画像捕捉デバイス122及び124が図2B及び図2Cに示されているが、他の実施形態が3つ以上の画像捕捉デバイスを含み得ることを理解されたい。例えば、図2D及び図2Eに示される実施形態では、第1の画像捕捉デバイス122、第2の画像捕捉デバイス124及び第3の画像捕捉デバイス126が車両200のシステム100に含まれる。
図2Dに示されるように、画像捕捉デバイス122は、車両200のバックミラーの近傍及び/又はドライバーの近傍に位置決めし得、画像捕捉デバイス124及び126は、車両200のバンパー領域(例えば、バンパー領域210の1つ)上に位置決めし得る。また、図2Eに示されるように、画像捕捉デバイス122、124及び126は、車両200のバックミラーの近傍及び/又はドライバーシートの近傍に位置決めし得る。開示される実施形態は、いかなる特定の数及び構成の画像捕捉デバイスにも限定されず、画像捕捉デバイスは、車両200内及び/又は車両200上の任意の適する位置に位置決めし得る。
開示される実施形態が車両に限定されず、他の状況でも適用可能なことを理解されたい。開示される実施形態が特定のタイプの車両200に限定されず、自動車、トラック、トレーラ及び他のタイプの車両を含む全てのタイプの車両に適用可能であり得ることも理解されたい。
第1の画像捕捉デバイス122は、任意の適するタイプの画像捕捉デバイスを含み得る。画像捕捉デバイス122は光軸を含み得る。一例では、画像捕捉デバイス122は、グローバルシャッタを有するAptina M9V024 WVGAセンサを含み得る。他の実施形態では、画像捕捉デバイス122は、1280×960ピクセルの解像度を提供し得、ローリングシャッタを含み得る。画像捕捉デバイス122は、様々な光学要素を含み得る。幾つかの実施形態では、1枚又は複数枚のレンズが含まれて、例えば画像捕捉デバイスの所望の焦点距離及び視野を提供し得る。幾つかの実施形態では、画像捕捉デバイス122に6mmレンズ又は12mmレンズを関連付け得る。幾つかの実施形態では、画像捕捉デバイス122は、図2Dに示されるように、所望の視野(FOV)202を有する画像を捕捉するように構成し得る。例えば、画像捕捉デバイス122は、46度FOV、50度FOV、52度FOV又は52度FOVを超える度数を含め、40度〜56度の範囲内等の通常のFOVを有するように構成し得る。代替的には、画像捕捉デバイス122は、28度FOV又は36度FOV等の23〜40度の範囲の狭いFOVを有するように構成し得る。加えて、画像捕捉デバイス122は、100〜180度の範囲の広いFOVを有するように構成し得る。幾つかの実施形態では、画像捕捉デバイス122は、広角バンパーカメラ又は最高で180度FOVを有するバンパーカメラを含み得る。幾つかの実施形態では、画像捕捉デバイス122は、約100度の水平FOVを有するアスペクト比約2:1(例えば、H×V=3800×1900ピクセル)の7.2Mピクセル画像捕捉デバイスであり得る。そのような画像捕捉デバイスは、三次元画像捕捉デバイス構成の代わりに使用し得る。大きいレンズ歪みに起因して、そのような画像捕捉デバイスの垂直FOVは、画像捕捉デバイスが半径方向に対称なレンズを使用する実装形態では、50度よりはるかに低くなり得る。例えば、そのようなレンズは、半径方向で対称ではなく、それにより、水平FOV100度で、50度よりも大きい垂直FOVが可能である。
第1の画像捕捉デバイス122は、車両200に関連付けられたシーンに対して複数の第1の画像を取得し得る。複数の第1の画像は、それぞれ一連の画像走査線として取得し得、これらはローリングシャッタを使用して捕捉し得る。各走査線は複数のピクセルを含み得る。
第1の画像捕捉デバイス122は、第1の一連の画像走査線のそれぞれの取得に関連付けられた走査率を有し得る。走査率は、画像センサが、特定の走査線に含まれる各ピクセルに関連付けられた画像データを取得することができる率を指し得る。
画像捕捉デバイス122、124及び126は、例えば、CCDセンサ又はCMOSセンサを含め、任意の適するタイプ及び数の画像センサを含み得る。一実施形態では、CMOS画像センサはローリングシャッタと共に利用し得、それにより、行内の各ピクセルは一度に1つずつ読み取られ、行の走査は、画像フレーム全体が捕捉されるまで行毎に進められる。幾つかの実施形態では、行は、フレームに対して上から下に順次捕捉し得る。
幾つかの実施形態では、本明細書に開示される画像捕捉デバイス(例えば、画像捕捉デバイス122、124及び126)の1つ又は複数は、高解像度イメージャを構成し得、5Mピクセル超、7Mピクセル超、10Mピクセル超又はそれを超える解像度を有し得る。
ローリングシャッタの使用により、異なる行内のピクセルは異なるときに露出され捕捉されることになり得、それにより、スキュー及び他の画像アーチファクトが捕捉画像フレームで生じ得る。他方、画像捕捉デバイス122がグローバル又は同期シャッタを用いて動作するように構成される場合、全ピクセルは、同量の時間にわたり、共通の露出期間中に露出し得る。その結果、グローバルシャッタを利用するシステムから収集されるフレーム内の画像データは、特定のときのFOV全体(FOV202等)のスナップショットを表す。それとは逆に、ローリングシャッタを適用する場合、フレーム内の各行が露出され、データは異なる時間に捕捉される。従って、移動中の物体は、ローリングシャッタを有する画像捕捉デバイスでは歪んで見えることがある。この現象について以下により詳細に説明する。
第2の画像捕捉デバイス124及び第3の画像捕捉デバイス126は、任意のタイプの画像捕捉デバイスであり得る。第1の画像捕捉デバイス122のように、画像捕捉デバイス124及び126のそれぞれは、光軸を含み得る。一実施形態では、画像捕捉デバイス124及び126のそれぞれは、グローバルシャッタを有するAptina M9V024 WVGAセンサを含み得る。代替的には、画像捕捉デバイス124及び126のそれぞれは、ローリングシャッタを含み得る。画像捕捉デバイス122のように、画像捕捉デバイス124及び126は、様々なレンズ及び光学要素を含むように構成し得る。幾つかの実施形態では、画像捕捉デバイス124及び126に関連付けられたレンズは、画像捕捉デバイス122に関連付けられたFOV(FOV202等)と同じであるか、又は狭いFOV(FOV204及び206等)を提供し得る。例えば、画像捕捉デバイス124及び126は、40度、30度、26度、23度、20度又は20度未満のFOVを有し得る。
画像捕捉デバイス124及び126は、車両200に関連付けられたシーンに対して複数の第2及び第3の画像を取得し得る。複数の第2及び第3の画像のそれぞれは、第2及び第3の一連の画像走査線として取得し得、これらはローリングシャッタを使用して捕捉し得る。各走査線又は各行は、複数のピクセルを有し得る。画像捕捉デバイス124及び126は、第2及び第3の一連内に含まれる各画像走査線の取得に関連付けられた第2及び第3の走査率を有し得る。
各画像捕捉デバイス122、124及び126は、任意の適する位置に、車両200に対して任意の適する向きで位置決めし得る。画像捕捉デバイス122、124及び126の相対位置は、画像捕捉デバイスから取得される情報を一緒に融合させることを支援するように選択し得る。例えば、幾つかの実施形態では、画像捕捉デバイス124に関連付けられたFOV(FOV204)は、画像捕捉デバイス122に関連付けられたFOV(FOV202等)及び画像捕捉デバイス126に関連付けられたFOV(FOV206等)と部分的又は完全に重複し得る。
画像捕捉デバイス122、124及び126は、任意の適する相対高さで車両200に配置し得る。一例では、画像捕捉デバイス122、124及び126間に高さ差があり得、高さ差は、立体分析を可能にするのに十分な視差情報を提供し得る。例えば、図2Aに示されるように、2つの画像捕捉デバイス122及び124は異なる高さにある。画像捕捉デバイス122、124及び126間には横方向変位差もあり得、例えば処理ユニット110による立体分析に追加の視差情報を与える。横方向変位差は、図2C及び図2Dに示されるように、dxで示し得る。幾つかの実施形態では、前部変位又は後部変位(例えば、範囲変位)が、画像捕捉デバイス122、124、126間に存在し得る。例えば、画像捕捉デバイス122は、画像捕捉デバイス124及び/又は画像捕捉デバイス126の0.5〜2メートル以上背後に配置し得る。このタイプの変位では、画像捕捉デバイスの1つが、他の画像捕捉デバイスの潜在的なブラインドスポットをカバー可能であり得る。
画像捕捉デバイス122は、任意の適する解像度能力(例えば、画像センサに関連付けられたピクセル数)を有し得、画像捕捉デバイス122に関連付けられた画像センサの解像度は、画像捕捉デバイス124及び126に関連付けられた画像センサの解像度よりも高いか、低いか、又は同じであり得る。幾つかの実施形態では、画像捕捉デバイス122及び/又は画像捕捉デバイス124及び126に関連付けられた画像センサは、解像度640×480、1024×768、1280×960又は任意の他の適する解像度を有し得る。
フレームレート(例えば、画像捕捉デバイスが、次の画像フレームに関連付けられたピクセルデータの捕捉に移る前、1つの画像フレームのピクセルデータの組を取得する速度)は、制御可能であり得る。画像捕捉デバイス122に関連付けられたフレームレートは、画像捕捉デバイス124及び126に関連付けられたフレームレートよりも高いか、低いか、又は同じであり得る。画像捕捉デバイス122、124及び126に関連付けられたフレームレートは、フレームレートのタイミングに影響を及ぼし得る様々なファクタに依存し得る。例えば、画像捕捉デバイス122、124及び126の1つ又は複数は、画像捕捉デバイス122、124及び/又は126内の画像センサの1つ又は複数のピクセルに関連付けられた画像データの取得前又は取得後に課される選択可能なピクセル遅延期間を含み得る。一般に、各ピクセルに対応する画像データは、デバイスのクロックレート(例えば、1クロックサイクル当たり1ピクセル)に従って取得し得る。更に、ローリングシャッタを含む実施形態では、画像捕捉デバイス122、124及び126の1つ又は複数は、画像捕捉デバイス122、124及び/又は126内の画像センサのピクセル行に関連付けられた画像データの取得前又は取得後に課される選択可能な水平ブランク期間を含み得る。更に、画像捕捉デバイス122、124及び/又は126の1つ又は複数は、画像捕捉デバイス122、124及び126の画像フレームに関連付けられた画像データの取得前又は取得後に課される選択可能な垂直ブランク期間を含み得る。
これらのタイミング制御により、各画像捕捉デバイスの線走査率が異なる場合でも、画像捕捉デバイス122、124及び126に関連付けられたフレームレートを同期させることができ得る。更に、以下に更に詳細に考察するように、ファクタ(例えば、画像センサ解像度、最高線走査率等)の中でも特に、これらの選択可能なタイミング制御により、画像捕捉デバイス122の視野が画像捕捉デバイス124及び126のFOVと異なる場合でも、画像捕捉デバイス122のFOVが画像捕捉デバイス124及び126の1つ又は複数のFOVと重複するエリアからの画像捕捉を同期させることが可能になり得る。
画像捕捉デバイス122、124及び126でのフレームレートタイミングは、関連付けられた画像センサの解像度に依存し得る。例えば、両デバイスの線走査率が同様であると仮定し、一方のデバイスが解像度640×480を有する画像センサを含み、他方のデバイスが解像度1280×960を有する画像センサを含む場合、高い解像度を有するセンサからの画像データのフレーム取得ほど、長い時間が必要になる。
画像捕捉デバイス122、124及び126での画像データ取得のタイミングに影響を及ぼし得る他のファクタは、最高線走査率である。例えば、画像捕捉デバイス122、124及び126に含まれる画像センサからの画像データ行の取得は、何らかの最小時間量を必要とする。ピクセル遅延期間が追加されないと仮定すると、画像データ行を取得するこの最小時間量は、特定のデバイスの最高線走査率に関連することになる。高い最高線走査率を提供するデバイスほど、より低い最高線走査率を有するデバイスよりも高いフレームレートを提供する潜在性を有する。幾つかの実施形態では、画像捕捉デバイス124及び126の一方又は両方は、画像捕捉デバイス122に関連付けられた最高線走査率よりも高い最高線走査率を有し得る。幾つかの実施形態では、画像捕捉デバイス124及び/又は126の最高線走査率は、画像捕捉デバイス122の最高線走査率の1.25倍、1.5倍、1.75倍又は2倍以上であり得る。
別の実施形態では、画像捕捉デバイス122、124及び126は、同じ最高線走査率を有し得るが、画像捕捉デバイス122は、その最高走査率以下の走査率で動作し得る。システムは、画像捕捉デバイス124及び126の一方又は両方が画像捕捉デバイス122の線走査率と等しい線走査率で動作するように構成し得る。他の例では、システムは、画像捕捉デバイス124及び/又は126の線走査率が、画像捕捉デバイス122の線走査率の1.25倍、1.5倍、1.75倍又は2倍以上であり得るように構成し得る。
幾つかの実施形態では、画像捕捉デバイス122、124及び126は非対称であり得る。すなわち、これら画像捕捉デバイスは、異なる視野(FOV)及び焦点距離を有するカメラを含み得る。画像捕捉デバイス122、124及び126の視野は、例えば、車両200の環境に対する任意の所望のエリアを含み得る。幾つかの実施形態では、画像捕捉デバイス122、124及び126の1つ又は複数は、車両200の前の環境、車両200の背後の環境、車両200の両側の環境又はそれらの組み合わせから画像データを取得するように構成し得る。
更に、各画像捕捉デバイス122、124及び/又は126に関連付けられた焦点距離は、各デバイスが車両200から所望の距離範囲にある物体の画像を取得するように選択可能であり得る(例えば、適切なレンズの包含等により)。例えば、幾つかの実施形態では、画像捕捉デバイス122、124及び126は、車両から数メートル以内の近接物体の画像を取得し得る。画像捕捉デバイス122、124、126は、車両からより離れた範囲(例えば、25m、50m、100m、150m又はそれを超える)における物体の画像を取得するように構成することもできる。更に、画像捕捉デバイス122、124及び126の焦点距離は、ある画像捕捉デバイス(例えば、画像捕捉デバイス122)が車両に比較的近い(例えば、10m以内又は20m以内)物体の画像を取得することができ、一方、その他の画像捕捉デバイス(例えば、画像捕捉デバイス124及び126)が、車両200からより離れた物体(例えば、20m超、50m超、100m超、150m超等)の画像を取得することができるように選択し得る。
幾つかの実施形態によれば、1つ又は複数の画像捕捉デバイス122、124及び126のFOVは、広角を有し得る。例えば、特に車両200の近傍エリアの画像取得に使用し得る画像捕捉デバイス122、124及び126には140度のFOVを有することが有利であり得る。例えば、画像捕捉デバイス122は、車両200の右又は左のエリアの画像の捕捉に使用し得、そのような実施形態では、画像捕捉デバイス122が広いFOV(例えば、少なくとも140度)を有することが望ましいことがある。
画像捕捉デバイス122、124及び126のそれぞれに関連付けられた視野は、各焦点距離に依存し得る。例えば、焦点距離が増大するにつれて、対応する視野は低減する。
画像捕捉デバイス122、124及び126は、任意の適する視野を有するように構成し得る。特定の一例では、画像捕捉デバイス122は、水平FOV46度を有し得、画像捕捉デバイス124は水平FOV23度を有し得、画像捕捉デバイス126は水平FOV23〜46度を有し得る。別の例では、画像捕捉デバイス122は水平FOV52度を有し得、画像捕捉デバイス124は水平FOV26度を有し得、画像捕捉デバイス126は、水平FOV26〜52度を有し得る。幾つかの実施形態では、画像捕捉デバイス122のFOVと画像捕捉デバイス124及び/又は画像捕捉デバイス126のFOVとの比率は、1.5〜2.0で変化し得る。他の実施形態では、この比率は1.25〜2.25で変化し得る。
システム100は、画像捕捉デバイス122の視野が、画像捕捉デバイス124及び/又は画像捕捉デバイス126の視野と少なくとも部分的に又は完全に重複するように構成し得る。幾つかの実施形態では、システム100は、画像捕捉デバイス124及び126の視野が例えば画像捕捉デバイス122の視野内に入り(例えば、画像捕捉デバイス122の視野よりも小さく)、画像捕捉デバイス122の視野と共通の中心を共有するように構成し得る。他の実施形態では、画像捕捉デバイス122、124及び126は、隣接するFOVを捕捉し得、又は部分的に重複するFOVを有し得る。幾つかの実施形態では、画像捕捉デバイス122、124及び126の視野は、FOVのより狭い画像捕捉デバイス124及び/又は126の中心が、FOVがより広いデバイス122の視野の下半分に配置され得るように位置合わせし得る。
図2Fは、開示される実施形態による例示的な車両制御システムの図表現である。図2Fに示されるように、車両200は、スロットルシステム220、ブレーキシステム230及び操舵システム240を含み得る。システム100は、1つ又は複数のデータリンク(例えば、任意の有線及び/又は無線リンク又はデータを伝送するリンク)を介して、スロットルシステム220、ブレーキシステム230及び操舵システム240の1つ又は複数に入力(例えば、制御信号)を提供し得る。例えば、画像捕捉デバイス122、124及び/又は126により取得された画像の分析に基づいて、システム100は、車両200をナビゲートする制御信号をスロットルシステム220、ブレーキシステム230及び操舵システム240の1つ又は複数に提供し得る(例えば、加速、ターン、レーンシフト等を行わせることにより)。更に、システム100は、車両200の動作状況を示す入力(例えば、速度、車両200がブレーキ中及び/又はターン中であるか否か等)をスロットルシステム220、ブレーキシステム230及び操舵システム24の1つ又は複数から受信し得る。以下では、更に詳細を図4〜図7に関連して提供する。
図3Aに示されるように、車両200は、車両200のドライバー又は乗員と対話するユーザインタフェース170を含むこともできる。例えば、車両アプリケーション内のユーザインタフェース170は、タッチスクリーン320、つまみ330、ボタン340及びマイクロフォン350を含み得る。車両200のドライバー又は乗員は、ハンドル(例えば、例えばウィンカーハンドルを含め、車両200のステアリングコラム上又はその近傍に配置される)及びボタン(例えば、車両200のハンドルに配置される)等を使用して、システム100と対話することもできる。幾つかの実施形態では、マイクロフォン350はバックミラー310に隣接して位置決めし得る。同様に、幾つかの実施形態では、画像捕捉デバイス122は、バックミラー310の近傍に配置し得る。幾つかの実施形態では、ユーザインタフェース170は、1つ又は複数のスピーカ360(例えば、車両オーディオシステムのスピーカ)を含むこともできる。例えば、システム100は、スピーカ360を介して様々な通知(例えば、アラート)を提供し得る。
図3B〜図3Dは、開示される実施形態による、バックミラー(例えば、バックミラー310)の背後に、車両フロントガラスと対向して位置決めされるように構成される例示的なカメラマウント370の図である。図3Bに示されるように、カメラマウント370は、画像捕捉デバイス122、124及び126を含み得る。画像捕捉デバイス124及び126は、グレアシールド380の背後に位置決めし得、グレアシールド380は、フロントガラスに直接接触し得、フィルム及び/又は反射防止材料の組成物を含み得る。例えば、グレアシールド380は、一致する傾斜を有するフロントガラスと対向して位置合わせされるように位置決めし得る。幾つかの実施形態では、画像捕捉デバイス122、124及び126のそれぞれは、例えば、図3Dに示されるように、グレアシールド380の背後に位置決めし得る。開示される実施形態は、画像捕捉デバイス122、124及び126、カメラマウント370並びにグレアシールド380のいかなる特定の構成にも限定されない。図3Cは、前から見た図3Bに示されるカメラマウント370の図である。
本開示の恩恵を受ける当業者により理解されるように、上記開示された実施形態に対する多くの変形形態及び/又は変更形態がなされ得る。例えば、全ての構成要素がシステム100の動作にとって必須であるわけではない。更に、任意の構成要素がシステム100の任意の適切な部分に配置し得、構成要素は、開示される実施形態の機能を提供しながら、様々な構成に再配置し得る。従って、上記で論じた構成は例であり、上述した構成に関係なく、システム100は、車両200の周囲を分析し、分析に応答して車両200をナビゲートする広範囲の機能を提供することができる。
以下に更に詳細に考察するように、様々な開示される実施形態により、システム100は、自律運転及び/又はドライバー支援技術に関連する様々な特徴を提供し得る。例えば、システム100は、画像データ、位置データ(例えば、GPS位置情報)、地図データ、速度データ及び/又は車両200に含まれるセンサからのデータを分析し得る。システム100は、例えば、画像取得ユニット120、位置センサ130及び他のセンサから、分析のためにデータを収集し得る。更に、システム100は、収集されたデータを分析して、車両200が特定の行動をとるべきか否かを特定し、次に、人間の介入なしで、判断された動作を自動的にとり得る。例えば、車両200が人間の加入なしでナビゲートする場合、システム100は、車両200のブレーキ、加速度及び/又は操舵を自動的に制御し得る(例えば、制御信号をスロットルシステム220、ブレーキシステム230及び操舵システム240の1つ又は複数に送信することにより)。更に、システム100は、収集されたデータを分析し、収集されたデータの分析に基づいて警告及び/又はアラートを車両の搭乗者に発行し得る。システム100により提供される様々な実施形態に関する更に詳細を以下に提供する。
前向きマルチ撮像システム
上記で論じたように、システム100は、マルチカメラシステムを使用する運転支援機能を提供し得る。マルチカメラシステムは、車両の前方方向を向いた1つ又は複数のカメラを使用し得る。他の実施形態では、マルチカメラシステムは、車両の側部又は車両の後方を向いた1つ又は複数のカメラを含み得る。一実施形態では、例えば、システム100は、2カメラ撮像システムを使用し得、その場合、第1のカメラ及び第2のカメラ(例えば、画像捕捉デバイス122及び124)は、車両(例えば、車両200)の前部及び/又は側部に位置決めし得る。他のカメラの構成も開示する実施形態と合致し、本明細書で開示する構成は、例である。例えば、システム100は、任意の数(例えば、1つ、2つ、3つ、4つ、5つ、6つ、7つ、8つ等)のカメラの構成を含み得る。更に、システム100は、カメラの「クラスタ」を含み得る。例えば、(任意の適切な数、例えば1つ、4つ、8つ等のカメラを含む)カメラのクラスタは、車両に対して前向きとすることができ、又は他の任意の方向を向いていることができる(例えば、後向き、横向き、斜め等)。従って、各クラスタが車両の環境の特定の領域から画像を捕捉するように特定の方向に向けられた状態で、システム100は、カメラの複数のクラスタを含み得る。
第1のカメラは、第2のカメラの視野よりも大きい、小さい又は部分的に重複する視野を有し得る。更に、第1のカメラは、第1の画像プロセッサに接続されて、第1のカメラにより提供される画像の単眼画像分析を実行し得、第2のカメラは、第2の画像プロセッサに接続されて、第2のカメラにより提供される画像の単眼画像分析を実行し得る。第1及び第2の画像プロセッサの出力(例えば、処理された情報)は結合し得る。幾つかの実施形態では、第2の画像プロセッサは、第1のカメラ及び第2のカメラの両方からの画像を受信して、立体分析を実行し得る。別の実施形態では、システム100は3カメラ撮像システムを使用し得、この場合、各カメラは異なる視野を有する。従って、そのようなシステムは、車両の前方及び側部の両方の様々な距離にある物体から導出される情報に基づいて判断を下し得る。単眼画像分析との言及は、画像分析が単一視点から(例えば、単一のカメラ)から捕捉される画像に基づいて画像分析が実行される場合を指し得る。立体画像分析は、画像捕捉パラメータの1つ又は複数を変更した状態で捕捉された2つ以上の画像に基づいて画像分析が実行される場合を指し得る。例えば、立体画像分析の実行に適した捕捉画像は、2つ以上の異なる位置から捕捉される画像、異なる視野から捕捉される画像、異なる焦点距離を使用して捕捉される画像、視差情報付きで捕捉される画像等を含み得る。
例えば、一実施形態では、システム100は、画像捕捉デバイス122〜126を使用する3カメラ構成を実施し得る。そのような構成では、画像捕捉デバイス122は、狭視野(例えば、34度又は約20〜45度の範囲から選択される他の値等)を提供し得、画像捕捉デバイス124は、広視野(例えば、150度又は約100〜約180度の範囲から選択される他の値)を提供し得、画像捕捉デバイス126は、中視野(例えば、46度又は約35〜約60度の範囲から選択される他の値)を提供し得る。幾つかの実施形態では、画像捕捉デバイス126は、主又は一次カメラとして動作し得る。画像捕捉デバイス122〜126は、バックミラー310の背後に、実質的に並んで(例えば、6cm離間)位置決めし得る。更に、幾つかの実施形態では、上記で論じたように、画像捕捉デバイス122〜126の1つ又は複数は、車両200のフロントガラスと同一平面のグレアシールド380の背後に搭載し得る。そのようなシールドは、車内部からのいかなる反射の画像捕捉デバイス122〜126への影響も最小にするように動作し得る。
別の実施形態では、図3B及び図3Cに関連して上記で論じたように、広視野カメラ(例えば、上記例では画像捕捉デバイス124)は、狭い主視野カメラ(例えば、上記例では画像捕捉デバイス122及び126)よりも低く搭載し得る。この構成は、広視野カメラからの自由な視線を提供し得る。反射を低減するために、カメラは、車両200のフロントガラス近くに搭載し得、反射光を弱める偏光器をカメラに含み得る。
3カメラシステムは、特定の性能特徴を提供し得る。例えば、幾つかの実施形態は、あるカメラによる物体の検出を別のカメラからの検出結果に基づいて検証する機能を含み得る。上記で論じた3カメラ構成では、処理ユニット110は、例えば、3つの処理デバイス(例えば、上記で論じたように3つのEyeQシリーズのプロセッサチップ)を含み得、各処理デバイスは、画像捕捉デバイス122〜126の1つ又は複数により捕捉される画像の処理に向けられる。
3カメラシステムでは、第1の処理デバイスは、主カメラ及び狭視野カメラの両方から画像を受信し得、狭FOVカメラのビジョン処理を実行して、例えば他の車両、歩行者、レーンマーク、交通標識、信号機及び他の道路物体を検出し得る。更に、第1の処理デバイスは、主カメラからの画像と狭カメラからの画像との間でのピクセルの不一致を計算し、車両200の環境の3D再構築を作成し得る。次に、第1の処理デバイスは、3D再構築を3Dマップデータ又は別のカメラからの情報に基づいて計算される3D情報と結合し得る。
第2の処理デバイスは、主カメラから画像を受信し得、ビジョン処理を実行して、他の車両、歩行者、レーンマーク、交通標識、信号機及び他の道路物体を検出し得る。更に、第2の処理デバイスは、カメラ変位を計算し、変位に基づいて、連続画像間のピクセルの不一致を計算し、シーンの3D再構築(例えば、ストラクチャーフロムモーション)を作成し得る。第2の処理デバイスは、3D再構築に基づくストラクチャーフロムモーションを第1の処理デバイスに送信し、ストラクチャーフロムモーションを立体3D画像と結合し得る。
第3の処理デバイスは、画像を広FOVカメラから受信し、画像を処理して、車両、歩行者、レーンマーク、交通標識、信号機及び他の道路物体を検出し得る。第3の処理デバイスは、追加の処理命令を更に実行して、画像を分析し、レーン変更中の車両、歩行者等の画像内の移動中の物体を識別し得る。
幾つかの実施形態では、画像に基づく情報ストリームを独立して捕捉させ、処理させることは、システムで冗長性を提供する機会を提供し得る。そのような冗長性は、例えば、第1の画像捕捉デバイス及びそのデバイスから処理された画像を使用して、少なくとも第2の画像捕捉デバイスから画像情報を捕捉し処理することにより得られる情報を検証及び/又は補足し得る。
幾つかの実施形態では、システム100は、車両200にナビゲーション支援を提供するに当たり2つの画像捕捉デバイス(例えば、画像捕捉デバイス122及び124)を使用し得、第3の画像捕捉デバイス(例えば、画像捕捉デバイス126)を使用して、冗長性を提供し、他の2つの画像捕捉デバイスから受信されるデータの分析を検証し得る。例えば、そのような構成では、画像捕捉デバイス122及び124は、車両200をナビゲートするためのシステム100による立体分析の画像を提供し得、一方、画像捕捉デバイス126は、システム100による単眼分析に画像を提供して、画像捕捉デバイス123及び/又は画像捕捉デバイス124から捕捉された画像に基づいて得られる情報の冗長性及び検証を提供し得る。すなわち、画像捕捉デバイス126(及び対応する処理デバイス)は、画像捕捉デバイス122及び124から導出された分析へのチェックを提供する冗長サブシステムを提供する(例えば、自動緊急ブレーキ(AEB)システムを提供するため)と見なし得る。更に幾つかの実施形態では、1つ又は複数のセンサ(例えば、レーダ、ライダ、音響センサ、車外の1つ又は複数の送受信機から受信される情報等)から受信される情報に基づいて受信データの冗長性及び検証を補うことができる。
上記カメラ構成、カメラ配置、カメラ数、カメラ位置等が単なる例示であることを当業者は認識するであろう。全体システムに対して説明されるこれらの構成要素等は、開示される実施形態の範囲から逸脱せずに、様々な異なる構成で組み立て且つ使用し得る。ドライバー支援及び/又は自律車両機能を提供するためのマルチカメラシステムの使用に関する更に詳細が以下に続く。
図4は、開示される実施形態による1つ又は複数の動作を実行する命令を記憶/プログラムされ得るメモリ140及び/又は150の例示的な機能ブロック図である。以下ではメモリ140を参照するが、当業者は、命令がメモリ140及び/又は150に記憶可能なことを認識するであろう。
図4に示されるように、メモリ140は、単眼画像分析モジュール402、立体画像分析モジュール404、速度及び加速度モジュール406並びにナビゲーション応答モジュール408を記憶し得る。開示される実施形態は、いかなる特定の構成のメモリ140にも限定されない。更に、アプリケーションプロセッサ180及び/又は画像プロセッサ190は、メモリ140に含まれる任意のモジュール402〜408に記憶された命令を実行し得る。以下の考察での処理ユニット110の参照が、アプリケーションプロセッサ180及び画像プロセッサ190を個々に又はまとめて指し得ることを当業者は理解するであろう。従って、以下のプロセスのいずれかのステップは、1つ又は複数の処理デバイスにより実行し得る。
一実施形態では、単眼画像分析モジュール402は、処理ユニット110によって実行されるとき、画像捕捉デバイス122、124及び126の1つによって取得される画像の組の単眼画像分析を実行する命令(コンピュータビジョンソフトウェア等)を記憶し得る。幾つかの実施形態では、処理ユニット110は、画像の組からの情報を追加の感覚情報(例えば、レーダからの情報)と結合して、単眼画像分析を実行し得る。図5A〜図5Dに関連して以下で説明するように、単眼画像分析モジュール402は、レーンマーク、車両、歩行者、道路標識、高速道路出口ランプ、信号機、危険物及び車両の環境に関連する他の任意の特徴等、画像の組内の特徴の組を検出するための命令を含み得る。分析に基づいて、システム100は、ナビゲーション応答モジュール408に関連して以下で考察するように、ターン、レーンシフト及び加速度変更等の1つ又は複数のナビゲーション応答を車両200において生じさせ得る(例えば、処理ユニット110を介して)。
一実施形態では、単眼画像分析モジュール402は、処理ユニット110によって実行されるとき、画像捕捉デバイス122、124及び126の1つによって取得される画像の組の単眼画像分析を実行する命令(コンピュータビジョンソフトウェア等)を記憶し得る。幾つかの実施形態では、処理ユニット110は、画像の組からの情報を追加の感覚情報(例えば、レーダやライダ等からの情報)と結合して単眼画像分析を実行し得る。図5A〜図5Dに関連して以下で説明するように、単眼画像分析モジュール402は、レーンマーク、車両、歩行者、道路標識、高速道路出口ランプ、信号機、危険物及び車両の環境に関連する他の任意の特徴等、画像の組内の特徴の組を検出するための命令を含み得る。分析に基づいて、システム100は、(例えば、処理ユニット110によって)ナビゲーション応答を決定することに関連して以下で考察するように、ターン、レーンシフト、加速度変更等の1つ又は複数のナビゲーション応答を車両200において生じさせ得る。
一実施形態では、立体画像分析モジュール404は命令(コンピュータビジョンソフトウェア等)を記憶し得、命令は、処理ユニット110により実行されると、画像捕捉デバイス122、124及び126から選択された画像捕捉デバイスの組み合わせにより取得される第1及び第2の組の画像の立体画像分析を実行する。幾つかの実施形態では、処理ユニット110は、第1及び第2の組の画像からの情報を追加の感覚情報(例えば、レーダからの情報)と結合して、立体画像分析を実行し得る。例えば、立体画像分析モジュール404は、画像捕捉デバイス124により取得される第1の組の画像及び画像捕捉デバイス126により取得される第2の組の画像に基づいて、立体画像分析を実行する命令を含み得る。以下で図6に関連して説明するように、立体画像分析モジュール404は、レーンマーク、車両、歩行者、道路標識、高速道路出口ランプ、信号機及び危険物等の第1及び第2の組の画像内の特徴の組を検出する命令を含み得る。分析に基づいて、処理ユニット110は、ナビゲーション応答モジュール408に関連して後述するように、ターン、レーンシフト及び加速度変更等の1つ又は複数のナビゲーション応答を車両200において生じさせ得る。更に、幾つかの実施形態では、立体画像分析モジュール404は、トレーニング済みシステム(ニューラルネットワーク又はディープニューラルネットワーク等)又はトレーニングされていないシステムに関連する技法を実装することができる。
一実施形態では、速度及び加速度モジュール406は、車両200の速度及び/又は加速度を変更させるように構成される車両200内の1つ又は複数の計算及び電気機械デバイスから受信されるデータを分析するように構成されるソフトウェアを記憶し得る。例えば、処理ユニット110は、速度及び加速度モジュール406に関連付けられた命令を実行して、単眼画像分析モジュール402及び/又は立体画像分析モジュール404の実行から導出されるデータに基づいて、車両200の目標速度を計算し得る。そのようなデータとしては、例えば、目標位置、速度及び/又は加速度、付近の車両、歩行者又は道路物体に対する車両200の位置及び/又は速度及び道路のレーンマークに対する車両200の位置情報等を挙げ得る。加えて、処理ユニット110は、感覚入力(例えば、レーダからの情報)と、車両200のスロットルシステム220、ブレーキシステム230及び/又は操舵システム240等の車両200の他のシステムからの入力とに基づいて、車両200の目標速度を計算し得る。計算された目標速度に基づいて、処理ユニット110は、電子信号を車両200のスロットルシステム220、ブレーキシステム230及び/又は操舵システム240に送信して、例えば車両200のブレーキを物理的に弱めるか、又はアクセルを弱めることにより速度及び/又は加速度の変更をトリガし得る。
一実施形態では、ナビゲーション応答モジュール408は、処理ユニット110により実行可能であり、単眼画像分析モジュール402及び/又は立体画像分析モジュール404の実行から導出されるデータに基づいて、所望のナビゲーション応答を決定するソフトウェアを記憶し得る。そのようなデータは、付近の車両、歩行者及び道路物体に関連付けられた位置及び速度情報並びに車両200の目標位置情報等を含み得る。更に、幾つかの実施形態では、ナビゲーション応答は、地図データ、車両200の所定の位置及び/又は車両200と、単眼画像分析モジュール402及び/又は立体画像分析モジュール404の実行から検出される1つ又は複数の物体との間の相対速度又は相対加速度に基づき得る(部分的又は完全に)。ナビゲーション応答モジュール408は、感覚入力(例えば、レーダからの情報)と、車両200のスロットルシステム220、ブレーキシステム230及び操舵システム240等の車両200の他のシステムからの入力とに基づいて、所望のナビゲーション応答を決定することもできる。所望のナビゲーション応答に基づいて、処理ユニット110は、電子信号を車両200のスロットルシステム220、ブレーキシステム230及び操舵システム240に送信して、例えば車両200のハンドルをターンさせ、所定の角度の回転を達成することにより、所望のナビゲーション応答をトリガし得る。幾つかの実施形態では、処理ユニット110は、車両200の速度変更を計算するための速度及び加速度モジュール406の実行への入力として、ナビゲーション応答モジュール408の出力(例えば、所望のナビゲーション応答)を使用し得る。
更に、本明細書で開示するモジュール(例えば、モジュール402、404及び406)のいずれも、トレーニング済みシステム(ニューラルネットワーク又はディープニューラルネットワーク等)又はトレーニングされていないシステムに関連する技法を実装することができる。
図5Aは、開示される実施形態による、単眼画像分析に基づいて1つ又は複数のナビゲーション応答を生じさせる例示的なプロセス500Aを示すフローチャートである。ステップ510において、処理ユニット110は、処理ユニット110と画像取得ユニット120との間のデータインタフェース128を介して、複数の画像を受信し得る。例えば、画像取得ユニット120に含まれるカメラ(視野202を有する画像捕捉デバイス122等)は、車両200の前方(又は例えば車両の側部若しくは後方)のエリアの複数の画像を捕捉し、データ接続(例えば、デジタル、有線、USB、無線、Bluetooth等)を介して処理ユニット110に送信し得る。処理ユニット110は、単眼画像分析モジュール402を実行して、ステップ520において、以下で図5B〜図5Dに関連して更に詳細に説明するように、複数の画像を分析し得る。分析を実行することにより、処理ユニット110は、レーンマーク、車両、歩行者、道路標識、高速道路出口ランプ及び信号機等の画像の組内の特徴の組を検出し得る。
処理ユニット110は、ステップ520において、単眼画像分析モジュール402を実行して、例えばトラックタイヤの部品、落ちた道路標識、緩んだ貨物及び小動物等の様々な道路危険物を検出することもできる。道路危険物の構造、形状、サイズ及び色は様々であり得、そのような危険物の検出をより難しくする。幾つかの実施形態では、処理ユニット110は、単眼画像分析モジュール402を実行して、マルチフレーム分析を複数の画像に対して実行して、道路危険物を検出し得る。例えば、処理ユニット110は、連続画像フレーム間でのカメラ移動を推定し、フレーム間のピクセルの不一致を計算して、道路の3Dマップを構築し得る。次に、処理ユニット110は、3Dマップを使用して、路面及び路面の上に存在する危険物を検出し得る。
ステップ530において、処理ユニット110は、ナビゲーション応答モジュール408を実行して、ステップ520において実行された分析及び図4に関連して上述した技法に基づいて、車両200に1つ又は複数のナビゲーション応答を生じさせ得る。ナビゲーション応答は、例えば、ターン、レーンシフト及び加速度変更を含み得る。幾つかの実施形態では、処理ユニット110は、速度及び加速度モジュール406の実行から導出されるデータを使用して、1つ又は複数のナビゲーション応答を生じさせ得る。更に、複数のナビゲーション応答は、同時に行われ得るか、順次行われ得るか、又はそれらの任意の組み合わせで行われ得る。例えば、処理ユニット110は、例えば、制御信号を車両200の操舵システム240及びスロットルシステム220に順次送信することにより、車両200に1レーン超えさせ、それから例えば加速させ得る。代替的には、処理ユニット110は、例えば、制御信号を車両200のブレーキシステム230及び操舵システム240に同時に送信することにより、車両200に、ブレーキを掛けさせ、それと同時にレーンをシフトさせ得る。
図5Bは、開示される実施形態による、画像の組内の1つ又は複数の車両及び/又は歩行者を検出する例示的なプロセス500Bを示すフローチャートである。処理ユニット110は、単眼画像分析モジュール402を実行して、プロセス500Bを実施し得る。ステップ540において、処理ユニット110は、存在する可能性がある車両及び/又は歩行者を表す候補物体の組を特定し得る。例えば、処理ユニット110は、1つ又は複数の画像を走査し、画像を1つ又は複数の所定のパターンと比較し、各画像内で、対象物体(例えば、車両、歩行者又はそれらの部分)を含み得る可能性がある位置を識別し得る。所定のパターンは、低率の「偽性ヒット」及び低率の「見逃し」を達成するように指定し得る。例えば、処理ユニット110は、所定のパターンへの低い類似性閾値を使用して、可能性のある車両又は歩行者として候補物体を識別し得る。そうすることにより、処理ユニット110は、車両又は歩行者を表す候補物体を見逃す(例えば、識別しない)確率を低減することができ得る。
ステップ542において、処理ユニット110は、候補物体の組をフィルタリングして、分類基準に基づいて特定の候補(例えば、無関係又は関係性の低い物体)を除外し得る。そのような基準は、データベース(例えば、メモリ140に記憶されるデータベース)に記憶された物体タイプに関連付けられた様々な特性から導出し得る。特性は、物体の形状、寸法、テクスチャ及び位置(例えば、車両200に対する)等を含み得る。従って、処理ユニット110は、1つ又は複数の組の基準を使用して、候補物体の組から偽性候補を拒絶し得る。
ステップ544において、処理ユニット110は、複数の画像フレームを分析して、候補画像の組内の物体が車両及び/又は歩行者を表しているか否かを特定し得る。例えば、処理ユニット110は、連続フレームにわたり検出された候補物体を追跡し、検出された物体に関連付けられたフレーム毎データ(例えば、サイズ、車両200に対する位置等)を蓄積し得る。更に、処理ユニット110は、検出された物体のパラメータを推定し、物体のフレーム毎位置データを予測位置と比較し得る。
ステップ546において、処理ユニット110は、検出された物体の測定の組を構築し得る。そのような測定は、例えば、検出された物体に関連付けられた位置、速度及び加速度値(車両200に対する)を含み得る。幾つかの実施形態では、処理ユニット110は、カルマンフィルタ又は線形二次推定(LQE)等の一連の時間ベースの観測を使用する推定技法及び/又は異なる物体タイプ(例えば、車、トラック、歩行者、自転車、道路標識等)で利用可能なモデリングデータに基づいて、測定を構築し得る。カルマンフィルタは、物体の尺度の測定に基づき得、ここで、尺度測定は衝突までの時間(例えば、車両200が物体に達するまでの時間量)に比例する。従って、ステップ540〜546を実行することにより、処理ユニット110は、捕捉画像の組内に現れる車両及び歩行者を識別し、車両及び歩行者に関連付けられた情報(例えば、位置、速度、サイズ)を導出し得る。識別及び導出される情報に基づいて、処理ユニット110は、図5Aに関連して上述したように、車両200で1つ又は複数のナビゲーション応答を生じさせ得る。
ステップ548において、処理ユニット110は、1つ又は複数の画像の光学フロー分析を実行して、「偽性ヒット」を検出する確率及び車両又は歩行者を表す候補物体を見逃す確率を低減し得る。光学フロー分析は、例えば、他の車両及び歩行者に関連付けられた1つ又は複数の画像内の車両200に対する、路面の動きとは別個の移動パターンを分析することを指し得る。処理ユニット110は、異なる時刻に捕捉された複数の画像フレームにわたる物体の異なる位置を観測することにより、候補物体の移動を計算し得る。処理ユニット110は、位置及び時間値を数学モデルへの入力として使用して、候補物体の移動を計算し得る。従って、光学フロー分析は、車両200の付近にある車両及び歩行者を検出する別の方法を提供し得る。処理ユニット110は、ステップ540〜546と組み合わせて光学フロー分析を実行して、車両及び歩行者を検出する冗長性を提供すると共に、システム100の信頼度を上げ得る。
図5Cは、開示される実施形態による、画像の組内の道路マーク及び/又はレーンジオメトリ情報を検出する例示的なプロセス500Cを示すフローチャートである。処理ユニット110は、単眼画像分析モジュール402を実行して、プロセス500Cを実施し得る。ステップ550において、処理ユニット110は、1つ又は複数の画像を走査することにより物体の組を検出し得る。レーンマークの区分、レーンジオメトリ情報及び他の関連道路マークを検出するために、処理ユニット110は、物体の組をフィルタリングして、無関連(例えば、小さい穴、小さい岩等)であると判断されるものを除外し得る。ステップ552において、処理ユニット110は、同じ道路マーク又はレーンマークに属する、ステップ550において検出された区分を一緒にグループ化し得る。グループ化に基づいて、処理ユニット110は、数学モデル等のモデルを開発して、検出された区分を表し得る。
ステップ554において、処理ユニット110は、検出された区分に関連付けられた測定の組を構築し得る。幾つかの実施形態では、処理ユニット110は、画像平面から実世界平面への検出区分の射影を作成し得る。射影は、検出された道路の位置、傾斜、曲率及び曲率微分等の物理特性に対応する係数を有する三次多項式を使用して特徴付け得る。射影を生成するに当たり、処理ユニット110は、路面変化並びに車両200に関連付けられたピッチ及びロール率を考慮に入れ得る。加えて、処理ユニット110は、位置及び路面に存在するモーションキューを分析することにより道路高をモデリングし得る。更に、処理ユニット110は、1つ又は複数の画像での特徴点の組を追跡することにより、車両200に関連付けられたピッチ率及びロール率を推定し得る。
ステップ556において、処理ユニット110は、例えば、連続した画像フレームにわたり検出区分を追跡し、検出区分に関連付けられたフレーム毎データを蓄積することにより、マルチフレーム分析を実行し得る。処理ユニット110はマルチフレーム分析を実行する場合、ステップ554において構築された測定の組はより信頼性の高いものになり得、ますます高い信頼度を関連付け得る。従って、ステップ550〜556を実行することにより、処理ユニット110は、捕捉画像の組内に現れる道路マークを識別し、レーンジオメトリ情報を導出し得る。識別及び導出される情報に基づいて、処理ユニット110は、図5Aに関連して上述したように、車両200で1つ又は複数のナビゲーション応答を生じさせ得る。
ステップ558において、処理ユニット110は、追加の情報ソースを考慮して、車両の周囲の状況での車両200の安全モデルを更に開発し得る。処理ユニット110は、安全モデルを使用して、システム100が車両200の自律制御を安全に実行し得る状況を定義し得る。安全モデルを開発するために、幾つかの実施形態では、処理ユニット110は、他の車両の位置及び動き、検出された道路縁部及び障壁及び/又は地図データ(地図データベース160からのデータ等)から抽出された一般道路形状記述を考慮し得る。追加の情報ソースを考慮することにより、処理ユニット110は、道路マーク及びレーンジオメトリを検出する冗長性を提供し、システム100の信頼性を上げ得る。
図5Dは、開示される実施形態による、画像の組内の信号機を検出する例示的なプロセス500Dを示すフローチャートである。処理ユニット110は、単眼画像分析モジュール402を実行して、プロセス500Dを実施し得る。ステップ560において、処理ユニット110は、画像の組を走査し、信号機を含む可能性が高い画像内の位置に現れる物体を識別し得る。例えば、処理ユニット110は、識別された物体をフィルタリングして、信号機に対応する可能性が低い物体を除外した候補物体の組を構築し得る。フィルタリングは、形状、寸法、テクスチャ及び位置(例えば、車両200に対する)等の信号機に関連付けられた様々な特性に基づいて行い得る。そのような特性は、信号機及び交通制御信号の多くの例に基づき得、データベースに記憶し得る。幾つかの実施形態では、処理ユニット110は、可能性のある信号機を反映した候補物体の組に対してマルチフレーム分析を実行し得る。例えば、処理ユニット110は、連続した画像フレームにわたり候補物体を追跡し、候補物体の現実世界位置を推定し、移動している(信号機である可能性が低い)物体をフィルタリングして除去し得る。幾つかの実施形態では、処理ユニット110は、カラー分析を候補物体に対して実行し、可能性のある信号機内部に表される検出色の相対位置を識別し得る。
ステップ562において、処理ユニット110は、交差点のジオメトリを分析し得る。分析は、(i)車両200の両側で検出されるレーン数、(ii)道路で検出されたマーク(矢印マーク等)、及び(iii)地図データ(地図データベース160からのデータ等)から抽出された交差点の記述の任意の組み合わせに基づき得る。処理ユニット110は、単眼分析モジュール402の実行から導出される情報を使用して、分析を行い得る。加えて、処理ユニット110は、ステップ560において検出された信号機と、車両200近傍に現れるレーンとの対応性を特定し得る。
車両200が交差点に近づくにつれて、ステップ564において、処理ユニット110は、分析された交差点ジオメトリ及び検出された信号機に関連付けられた信頼度を更新し得る。例えば、交差点に実際に現れる数と比較した交差点に現れると推定された信号機の数は、信頼度に影響を及ぼし得る。従って、信頼度に基づいて、処理ユニット110は、車両200のドライバーに制御を委任して、安全状況を改善し得る。ステップ560〜564を実行することにより、処理ユニット110は、捕捉画像の組内に現れる信号機を識別し、交差点ジオメトリ情報を分析し得る。識別及び分析に基づいて、処理ユニット110は、図5Aに関連して上述したように、車両200で1つ又は複数のナビゲーション応答を生じさせ得る。
図5Eは、開示される実施形態による、車両経路に基づいて車両200で1つ又は複数のナビゲーション応答を生じさせる例示的なプロセス500Eのフローチャートである。ステップ570において、処理ユニット110は、車両200に関連付けられた初期車両経路を構築し得る。車両経路は、座標(x,y)で表される点の組を使用して表し得、点の組内の2点間距離diは、1〜5メートルの範囲内にあり得る。一実施形態では、処理ユニット110は、左右の道路多項式等の2つの多項式を使用して初期車両経路を構築し得る。処理ユニット110は、2つの多項式間の幾何学的中間点を計算し、所定のオフセットがある場合(オフセット0は、レーンの中央での走行に対応し得る)、所定のオフセット(例えば、スマートレーンオフセット)だけ、結果として生成される車両経路に含まれる各点をオフセットさせ得る。オフセットは、車両経路内の任意の2点間の区分に垂直の方向であり得る。別の実施形態では、処理ユニット110は、1つの多項式及び推定レーン幅を使用して、推定レーン幅の半分に所定のオフセット(例えば、スマートレーンオフセット)を加えたものだけ車両経路の各点をオフセットさせ得る。
ステップ572において、処理ユニット110は、ステップ570において構築された車両経路を更新し得る。処理ユニット110は、車両経路を表す点の組内の2点間距離dkが、上述した距離diよりも短くなるように、より高い解像度を使用して、570において構築された車両経路を再構築し得る。例えば、距離dkは0.1〜0.3メートルの範囲であり得る。処理ユニット110は、放物線スプラインアルゴリズムを使用して車両経路を再構築し得、これは、車両経路の全長(すなわち、車両経路を表す点の組に基づく)に対応する累積距離ベクトルSをもたらし得る。
ステップ574において、処理ユニット110は、ステップ572において行われた更新車両経路に基づいて、先読み点((xl,zl)として座標で表される)を特定し得る。処理ユニット110は、累積距離ベクトルSから先読み点を抽出し得、先読み点には、先読み距離及び先読み時間を関連付け得る。先読み距離は、下限範囲10〜20メートルを有し得、車両200の速度と先読み時間との積として計算し得る。例えば、車両200の速度が下がるにつれて、先読み距離も短くなり得る(例えば、下限に達するまで)。0.5〜1.5秒の範囲であり得る先読み時間は、進行エラー追跡制御ループ等の車両200でナビゲーション応答を生じさせることに関連付けられた1つ又は複数の制御ループの利得に反比例し得る。例えば、進行エラー追跡制御ループの利得は、ヨー率ループ、操舵アクチュエータループ及び車横方向動力学等の帯域幅に依存し得る。従って、進行エラー追跡制御ループの利得が高いほど、先読み時間は短くなる。
ステップ576において、処理ユニット110は、ステップ574において特定される先読み点に基づいて、進行エラー及びヨー率コマンドを決定し得る。処理ユニット110は、先読み点の逆正接、例えばarctan(xl/zl)を計算することにより、進行エラーを特定し得る。処理ユニット110は、進行エラーと高レベル制御利得との積としてヨー率コマンドを決定し得る。高レベル制御利得は、先読み距離が下限にない場合、(2/先読み時間)に等しい値であり得る。先読み距離が下限である場合、高レベル制御利得は、(2*車両200の速度/先読み距離)に等しい値であり得る。
図5Fは、開示される実施形態による、先行車両がレーンを変更中であるか否かを特定する例示的なプロセス500Fを示すフローチャートである。ステップ580において、処理ユニット110は、先行車両(例えば、車両200の前を移動中の車両)に関連付けられたナビゲーション情報を特定し得る。例えば、処理ユニット110は、図5A及び図5Bに関連して上述した技法を使用して、先行車両の位置、速度(例えば、方向及び速度)及び/又は加速度を特定し得る。処理ユニット110は、図5Eに関連して上述した技法を使用して、1つ又は複数の道路多項式、先読み点(車両200に関連付けられる)及び/又はスネイルトレイル(例えば、先行車両がとった経路を記述する点の組)を特定することもできる。
ステップ582において、処理ユニット110は、ステップ580において特定されたナビゲーション情報を分析し得る。一実施形態では、処理ユニット110は、スネイルトレイルと道路多項式との間の距離(例えば、トレイルに沿った)を計算し得る。トレイルに沿ったこの距離の相違が所定の閾値(例えば、直線道路では0.1〜0.2メートル、緩くカーブした道路では0.3〜0.4メートル、急カーブの道路では0.5〜0.6メートル)を超える場合、処理ユニット110は、先行車両がレーン変更中である可能性が高いと判断し得る。複数の車両が、車両200の前を走行中であることが検出される場合、処理ユニット110は、各車両に関連付けられたスネイルトレイルを比較し得る。比較に基づいて、処理ユニット110は、スネイルトレイルが他の車両のスネイルトレイルに一致しない車両が、レーン変更中である可能性が高いと判断し得る。処理ユニット110は更に、スネイルトレイル(先行車両に関連付けられた)の曲率を、先行車両が移動中の道路区分の予期される曲率と比較し得る。予期される曲率は、地図データ(例えば、地図データベース160からのデータ)、道路多項式、他の車両のスネイルトレイル及び道路についての事前知識等から抽出し得る。スネイルトレイルの曲率と道路区分の予期される曲率との差が、所定の閾値を超える場合、処理ユニット110は、先行車両がレーン変更中である可能性が高いと判断し得る。
別の実施形態では、処理ユニット110は、特定の時間期間(例えば、0.5〜1.5秒)にわたり、先行車両の瞬間位置を先読み点(車両200に関連付けられた)と比較し得る。特定の時間期間中の先行車両の瞬間位置と先読み点との間の距離の差及び相違の累積和が、所定の閾値(例えば、直線道路では0.3〜0.4メートル、緩くカーブした道路では0.7〜0.8メートル、急カーブの道路では1.3〜1.7メートル)を超える場合、処理ユニット110は、先行車両がレーン変更中である可能性が高いと判断し得る。別の実施形態では、処理ユニット110は、トレイルに沿って移動した横方向距離をスネイルトレイルの予期される曲率と比較することにより、スネイルトレイルの幾何学的形状を分析し得る。予期される曲率半径は、計算:(δz 2+δx 2)/2/(δx)に従って特定し得、式中、δxは横方向移動距離を表し、δzは縦方向移動距離を表す。横方向移動距離と予期される曲率との差が所定の閾値(例えば、500〜700メートル)を超える場合、処理ユニット110は、先行車両がレーン変更中である可能性が高いと判断し得る。別の実施形態では、処理ユニット110は、先行車両の位置を分析し得る。先行車両の位置が道路多項式を曖昧にする(例えば、先行車両が道路多項式の上に重なる)場合、処理ユニット110は、先行車両がレーン変更中である可能性が高いと判断し得る。先行車両の位置が、別の車両が先行車両の前方で検出され、2つの車両のスネイルトレイルが平行ではないようなものである場合、処理ユニット110は、(より近い)先行車両がレーン変更中である可能性が高いと判断し得る。
ステップ584において、処理ユニット110は、ステップ582において実行された分析に基づいて、先行車両200がレーン変更中であるか否かを特定し得る。例えば、処理ユニット110は、ステップ582において実行された個々の分析の加重平均に基づいてその判断を下し得る。そのような方式下では、例えば、特定のタイプの分析に基づいた、先行車両がレーン変更中である可能性が高いという処理ユニット110による判断には、値「1」を割り当て得る(「0」は、先行車両がレーン変更中である可能性が低いとの判断を表す)。ステップ582において実行される異なる分析には異なる重みを割り当て得、開示される実施形態は、分析及び重みのいかなる特定の組み合わせにも限定されない。更に、幾つかの実施形態では、分析は、トレーニング済みシステム(例えば、機械学習又はディープラーニングシステム)を利用でき、かかるシステムは、例えば、現在位置において捕捉した画像に基づいて車両の現在位置よりも先の将来の経路を推定することができる。
図6は、開示される実施形態による、立体画像分析に基づいて1つ又は複数のナビゲーション応答を生じさせる例示的なプロセス600を示すフローチャートである。ステップ610において、処理ユニット110は、データインタフェース128を介して第1及び第2の複数の画像を受信し得る。例えば、画像取得ユニット120に含まれるカメラ(視野202及び204を有する画像捕捉デバイス122及び124等)は、車両200の前方のエリアの第1及び第2の複数の画像を捕捉し、デジタル接続(例えば、USB、無線、Bluetooth等)を介して処理ユニット110に送信し得る。幾つかの実施形態では、処理ユニット110は、2つ以上のデータインタフェースを介して第1及び第2の複数の画像を受信し得る。開示される実施形態は、いかなる特定のデータインタフェース構成又はプロトコルにも限定されない。
ステップ620において、処理ユニット110は、立体画像分析モジュール404を実行して、第1及び第2の複数の画像の立体画像分析を実行して、車両の前の道路の3Dマップを作成し、レーンマーク、車両、歩行者、道路標識、高速道路出口ランプ、信号機及び道路危険物等の画像内の特徴を検出し得る。立体画像分析は、図5A〜図5Dに関連して上述したステップと同様に実行し得る。例えば、処理ユニット110は、立体画像分析モジュール404を実行して、第1及び第2の複数の画像内の候補物体(例えば、車両、歩行者、道路マーク、信号機、道路危険物等)を検出し、様々な基準に基づいて候補物体のサブセットをフィルタリングして除外し、マルチフレーム分析を実行し、測定を構築し、残りの候補物体の信頼度を特定し得る。上記ステップを実行するに当たり、処理ユニット110は、画像の1つの組のみからの情報ではなく、第1及び第2の複数の画像の両方からの情報を考慮し得る。例えば、処理ユニット110は、第1及び第2の複数の画像の両方に現れる候補物体のピクセルレベルデータ(又は捕捉画像の2つのストリームの中からの他のデータサブセット)の差を分析し得る。別の例として、処理ユニット110は、物体が複数の画像の1枚に現れるが、他の画像では現れないことを観測することにより、又は2つの画像ストリームに現れる物体に対して存在し得る他の差に対して、候補物体の位置及び/又は速度(例えば、車両200に対する)を推定し得る。例えば、車両200に対する位置、速度及び/又は加速度は、画像ストリームの一方又は両方に現れる物体に関連付けられた特徴の軌道、位置、移動特性等に基づいて特定し得る。
ステップ630において、処理ユニット110は、ナビゲーション応答モジュール408を実行して、ステップ620において実行された分析及び図4に関連して上述した技法に基づいて、車両200で1つ又は複数のナビゲーション応答を生じさせ得る。ナビゲーション応答は、例えば、ターン、レーンシフト、加速度変更、速度変更及びブレーキ等を含み得る。幾つかの実施形態では、処理ユニット110は、速度及び加速度モジュール406の実行から導出されるデータを使用して、1つ又は複数のナビゲーション応答を生じさせ得る。更に、複数のナビゲーション応答は、同時に行われ得るか、順次行われ得るか、又はそれらの任意の組み合わせで行われ得る。
図7は、開示される実施形態による、3組の画像の分析に基づいて1つ又は複数のナビゲーション応答を生じさせる例示的なプロセス700を示すフローチャートである。ステップ710において、処理ユニット110は、データインタフェース128を介して第1、第2及び第3の複数の画像を受信し得る。例えば、画像取得ユニット120に含まれるカメラ(視野202、204及び206を有する画像捕捉デバイス122、124及び126等)は、車両200の前方及び/又は側部のエリアの第1、第2及び第3の複数の画像を捕捉し、デジタル接続(例えば、USB、無線、Bluetooth等)を介して処理ユニット110に送信し得る。幾つかの実施形態では、処理ユニット110は、3つ以上のデータインタフェースを介して第1、第2及び第3の複数の画像を受信し得る。例えば、画像捕捉デバイス122、124及び126のそれぞれは、処理ユニット110にデータを通信する関連付けられたデータインタフェースを有し得る。開示される実施形態は、いかなる特定のデータインタフェース構成又はプロトコルにも限定されない。
ステップ720において、処理ユニット110は、第1、第2及び第3の複数の画像を分析して、レーンマーク、車両、歩行者、道路標識、高速道路出口ランプ、信号機及び道路危険物等の画像内の特徴を検出し得る。分析は、図5A〜図5D及び図6に関連して上述したステップと同様に実行し得る。例えば、処理ユニット110は、単眼画像分析を第1、第2及び第3の複数のそれぞれの画像に対して実行し得る(例えば、単眼画像分析モジュール402の実行及び図5A〜図5Dに関連して上述したステップに基づいて)。代替的には、処理ユニット110は、立体画像分析を第1及び第2の複数の画像、第2及び第3の複数の画像及び/又は第1及び第3の複数の画像に対して実行し得る(例えば、立体画像分析モジュール404の実行を介して及び図6に関連して上述したステップに基づいて)。第1、第2及び/又は第3の複数の画像の分析に対応する処理済み情報は、結合し得る。幾つかの実施形態では、処理ユニット110は、単眼画像分析と立体画像分析との組み合わせを実行し得る。例えば、処理ユニット110は、単眼画像分析を第1の複数の画像に対して実行し(例えば、単眼画像分析モジュール402の実行を介して)、立体画像分析を第2及び第3の複数の画像に対して実行し得る(例えば、立体画像分析モジュール404の実行を介して)。画像捕捉デバイス122、124及び126の構成−各位置及び視野202、204及び206を含め−は、第1、第2及び第3の複数の画像に対して行われる分析のタイプに影響を及ぼし得る。開示される実施形態は、画像捕捉デバイス122、124及び126の特定の構成又は第1、第2及び第3の複数の画像に対して行われる分析のタイプに限定されない。
幾つかの実施形態では、処理ユニット110は、ステップ710及び720において取得され分析された画像に基づいて、システム100にテストを実行し得る。そのようなテストは、画像捕捉デバイス122、124及び126の特定の構成でのシステム100の全体性能のインジケータを提供し得る。例えば、処理ユニット110は、「偽性ヒット」(例えば、システム100が車両又は歩行者の存在を誤って判断する場合)及び「見落とし」の割合を特定し得る。
ステップ730において、処理ユニット110は、第1、第2及び第3の複数の画像の2つから導出される情報に基づいて、車両200での1つ又は複数のナビゲーション応答を生じさせ得る。第1、第2及び第3の複数の画像の2つの選択は、例えば、複数の画像のそれぞれで検出される物体の数、タイプ及びサイズ等の様々なファクタに依存し得る。処理ユニット110は、画像の品質及び解像度、画像に反映される有効視野、捕捉フレーム数及び対象となる1つ又は複数の物体が実際にフレームに現れる程度(例えば、物体が現れるフレームのパーセンテージ、物体がそのような各フレームで現れる割合等)等に基づいて選択を行うことができる。
幾つかの実施形態では、処理ユニット110は、ある画像ソースから導出された情報が、他の画像ソースから導出される情報と一貫する程度を特定することにより、第1、第2及び第3の複数の画像の2つから導出される情報を選択し得る。例えば、処理ユニット110は、画像捕捉デバイス122、124及び126のそれぞれから導出される処理済み情報(単眼分析であれ、立体分析であれ、又はそれら2つの任意の組み合わせであれ関係なく)を結合して、画像捕捉デバイス122、124及び126のそれぞれから捕捉される画像にわたり一貫する視覚的インジケータ(例えば、レーンマーク、検出された車両及び/又はその位置及び/又は経路、検出された信号機等)を特定し得る。処理ユニット110は、捕捉画像にわたり一貫しない情報(例えば、レーンを変更中の車両、車両200に近過ぎる車両を示すレーンモデル等)を除外することもできる。従って、処理ユニット110は、一貫情報及び非一貫情報の特定に基づいて、第1、第2及び第3の複数の画像の2つからの導出される情報を選択し得る。
ナビゲーション応答は、例えば、ターン、レーンシフト及び加速度変更を含み得る。処理ユニット110は、ステップ720において実行される分析及び図4に関連して上述した技法に基づいて、1つ又は複数のナビゲーション応答を生じさせ得る。処理ユニット110は、速度及び加速度モジュール406の実行から導出されるデータを使用して、1つ又は複数のナビゲーション応答を生じさせることもできる。幾つかの実施形態では、処理ユニット110は、車両200と第1、第2及び第3の複数の画像のいずれかで検出される物体との間の相対位置、相対速度及び/又は相対加速度に基づいて、1つ又は複数のナビゲーション応答を生じさせ得る。複数のナビゲーション応答は、同時に行われ得るか、順次行われ得るか、又はそれらの任意の組み合わせで行われ得る。
強化学習及びトレーニング済みナビゲーションシステム
以下の節は、車両の自律制御が完全に自律的(自動運転車両)であろうと、部分的に自律的(例えば、1人又は複数のドライバーがシステム又は機能を支援する)であろうと、車両の自律制御を実現するためのシステム及び方法と共に自律運転について論じる。図8に示すように、自律運転タスクは、検知モジュール801、運転ポリシモジュール803及び制御モジュール805を含む3つの主なモジュールに分けることができる。幾つかの実施形態では、モジュール801、803及び805をシステム100のメモリユニット140及び/又はメモリユニット150内に記憶することができ、及び/又はモジュール801、803及び805(又はその一部)をシステム100から離して記憶する(例えば、無線送受信機172によって例えばシステム100がアクセス可能なサーバ内に記憶する)ことができる。更に、本明細書で開示するモジュール(例えば、モジュール801、803及び805)のいずれも、トレーニング済みシステム(ニューラルネットワーク又はディープニューラルネットワーク等)又はトレーニングされていないシステムに関連する技法を実装することができる。
処理ユニット110を使用して実装することができる検知モジュール801は、ホスト車両の環境内のナビゲーション状態の検知に関連する様々なタスクを処理することができる。かかるタスクは、ホスト車両に関連する様々なセンサ及び検知システムからの入力に依存し得る。それらの入力は、1つ又は複数のオンボードカメラからの画像又は画像ストリーム、GPS位置情報、加速度計の出力、ユーザフィードバック、1つ又は複数のユーザインタフェース装置へのユーザ入力、レーダ、ライダ等を含み得る。地図情報と共にカメラ及び/又は他の任意の利用可能なセンサからのデータを含み得る検知を収集し、分析し、ホスト車両の環境内のシーンから抽出される情報を記述する「検知状態」へと系統立てて表すことができる。検知状態は、任意の潜在的な検知情報の中でも、目標車両、レーンマーク、歩行者、信号機、道路の幾何学的形状、レーン形状、障害物、他の物体/車両までの距離、相対速度、相対加速度に関係する検知情報を特に含み得る。検知モジュール801に提供される検知データに基づいて検知状態出力を作り出すために、教師あり機械学習を実施することができる。検知モジュールの出力は、ホスト車両の検知ナビゲーション「状態」を表すことができ、それは、運転ポリシモジュール803に送られ得る。
ホスト車両に関連する1つ又は複数のカメラ又は画像センサから受信される画像データに基づいて検知状態を開発することができるが、ナビゲーションに使用される検知状態は、任意の適切なセンサ又はセンサの組み合わせを使用して開発することができる。幾つかの実施形態では、捕捉画像データを使用することなしに検知状態を開発することができる。実際、本明細書に記載のナビゲーション原理のいずれも、捕捉画像データに基づいて開発される検知状態並びに他の非画像ベースのセンサを使用して開発される検知状態に適用可能であり得る。検知状態は、ホスト車両の外部のソースによって決定することもできる。例えば、検知状態は、ホスト車両から離れたソースから受信される情報に基づいて(例えば、他の車両から共有されるか、中央サーバから共有されるか、又はホスト車両のナビゲーション状態に関連する情報の他の任意のソースから共有されるセンサ情報や処理された状態情報等に基づいて)完全に又は部分的に開発され得る。
以下でより詳細に解説し、処理ユニット110を使用して実装することができる運転ポリシモジュール803は、検知されるナビゲーション状態に応じてホスト車両が行う1つ又は複数のナビゲーション動作を決定するための所望の運転ポリシを実装することができる。ホスト車両の環境内に他のエージェント(例えば、目標車両又は歩行者)がない場合、運転ポリシモジュール803に入力される検知状態は、比較的簡単な方法で処理することができる。検知状態が1つ又は複数の他のエージェントとの折衝を必要とする場合、このタスクは、より複雑になる。運転ポリシモジュール803の出力を生成するために使用される技術は、強化学習(以下でより詳細に解説する)を含み得る。運転ポリシモジュール803の出力は、ホスト車両のための少なくとも1つのナビゲーション動作を含むことができ、潜在的な所望のナビゲーション動作の中でも、(ホスト車両の更新された速度につながり得る)所望の加速度、ホスト車両の所望のヨー率、所望の軌道を特に含み得る。
運転ポリシモジュール803からの出力に基づき、同じく処理ユニット110を使用して実装することができる制御モジュール805は、ホスト車両に関連する1つ又は複数のアクチュエータ又は被制御装置のための制御命令を開発することができる。かかるアクチュエータ及び装置は、アクセル、1つ又は複数の操舵制御、ブレーキ、信号送信機、ディスプレイ又はホスト車両に関連するナビゲーション動作の一環として制御され得る他の任意のアクチュエータ若しくは装置を含み得る。制御モジュール805の出力を生成するために制御理論の側面を使用することができる。運転ポリシモジュール803の所望のナビゲーション目標又は要件を実施するために、制御モジュール805は、ホスト車両の制御可能な構成要素への命令を開発し出力することを担い得る。
運転ポリシモジュール803に戻り、幾つかの実施形態では、強化学習によってトレーニングされるトレーニング済みシステムを使用して運転ポリシモジュール803を実装することができる。他の実施形態では、指定のアルゴリズムを使用して自律ナビゲーション中に生じ得る様々なシナリオに「手動で」対処することにより、運転ポリシモジュール803を機械学習法なしに実装することができる。しかし、かかる手法は、実行可能であるが、あまりにも単純過ぎる運転ポリシをもたらす可能性があり、機械学習に基づくトレーニング済みシステムの柔軟性を欠く場合がある。トレーニング済みシステムは、複雑なナビゲーション状態を処理する態勢がより整っている場合があり、タクシーが駐車しているか、乗客を乗せるか又は降ろすために停車しているかをより良好に決定することができ、ホスト車両の前方の道路を歩行者が横断しようとしているかどうかをより良好に決定し、自衛性に対する他のドライバーの予期せぬ挙動のバランスをより良好に取り、目標車両及び/又は歩行者を含む混雑した道路をより良好に通り抜け、特定のナビゲーション規則を中断するか又は他の規則を増補するときをより良好に決定し、未検知であるが予期される条件(例えば、歩行者が車又は障害物の裏から現れるかどうか)等をより良好に予期することができる。強化学習に基づくトレーニング済みシステムは、連続的な動作空間と共に連続的且つ高次元の状態空間に対処する態勢がより整っている場合もある。
強化学習を使用してシステムをトレーニングすることは、検知状態からナビゲーション動作にマッピングするために運転ポリシを学習することを含み得る。運転ポリシは、関数π:S→Aであり、Sは、状態の組であり、
は、動作空間(例えば、所望の速度、加速度、ヨーコマンド等)である。状態空間は、S=S
SxS
pであり、S
Sは、検知状態であり、S
pは、ポリシによって保存された状態に対する追加情報である。離散的な時間間隔で機能し、時点tにおいて現在の状態s
t∈Sを観測することができ、ポリシを適用して所望の動作a
t=π(s
t)を得ることができる。
システムは、様々なナビゲーション状態にさらし、システムにポリシを適用させ、(所望のナビゲーション挙動に報酬を与えるように設計される報酬関数に基づいて)報酬を与えることによってトレーニングすることができる。報酬のフィードバックに基づき、システムは、ポリシを「学習」することができ、所望のナビゲーション動作を作り出すことにおいてトレーニングされた状態になる。例えば、学習システムは、現在の状態s
t∈Sを観測し、ポリシ
に基づいて動作a
t∈Aを決定することができる。決定された動作(及びその動作の実施)に基づき、環境は、学習システムによって観測するための次の状態s
t+1∈Sに移る。観測された状態に応じて開発される各動作について、学習システムに対するフィードバックは、報酬信号r
1、r
2、...である。
強化学習(RL)の目標は、ポリシπを見つけることである。時点tにおいて、状態s
tにあり、動作a
tを行う即時の品質を測定する報酬関数r
tがあると通常想定される。しかし、時点tにおいて動作a
tを行うことは、環境に影響を与え、従って将来の状態の値に影響を及ぼす。その結果、いずれの動作を行うかを決定するとき、現在の報酬を考慮するだけでなく将来の報酬も検討すべきである。幾つかの場合、ここで報酬が低い選択肢を行った場合により多くの報酬を将来実現できるとシステムが決定する場合、たとえ利用可能な別の選択肢よりも特定の動作が低い報酬に関連していても、システムは、その動作を行うべきである。ここれを形式化するために、ポリシπ及び初期状態sが、
にわたる分布を引き起こすことを観測し、エージェントが状態s
0=sから開始し、そこからポリシπに従う場合、ベクトル(r
1,...,r
T)の確率は、報酬r
1,...,r
Tを観測する確率である。初期状態sの値は、次式で定めることができる。
対象期間をTに限定するのではなく、将来の報酬を割り引いて一部の固定されたγ∈(0,1)について次式を定めることができる。
いずれにせよ、最適なポリシは、
の解であり、期待値は、初期状態sにわたる。
運転ポリシシステムをトレーニングするための幾つかの可能な方法体系がある。例えば、システムは、状態/動作の対から学習する模倣手法(例えば、挙動クローニング)を使用することができ、動作は、特定の観測状態に応じて優良なエージェント(例えば、人間)によって選択されるものである。人間のドライバーが観測されると仮定する。この観測により、運転ポリシシステムをトレーニングするための基礎として、(st,at)という形式(stは、状態であり、atは、人間のドライバーの動作である)の多くの例を取得し、観測し、使用することができる。例えば、π(st)≒atが成立するように教師あり学習を使用してポリシπを学習することができる。この手法には多くの潜在的な利点がある。第1に、報酬関数を定める必要がない。第2に、学習は、教師ありであり、オフラインで行われる(学習プロセス内でエージェントを適用する必要はない)。この方法の不利点は、様々な人間のドライバー及び更に同じ人間のドライバーでさえ自らのポリシ選択の点で決定論的でないことである。従って、||π(st)−at||が非常に小さい関数を学習するのは不可能であることが多い。更に、小さい誤差でさえ徐々に蓄積して大きい誤差を発生させる場合がある。
使用され得る別の技法は、ポリシベースの学習である。ここで、ポリシは、パラメトリック形式で表し、適切な最適化技法(例えば、確率勾配降下)を使用して直接最適化することができる。ここの手法は、
で与えられる問題を直接解くことである。当然ながら、この問題を解く多くの方法がある。この手法の1つの利点は、この手法が問題に直接取り組み、その結果、多くの場合に優れた実用的結果をもたらすことである。1つの潜在的な不利点は、この手法が多くの場合に「オンポリシ」トレーニングを必要とすることであり、すなわち、πの学習は、反復的プロセスであり、完全ではないポリシπ
jが反復jで得られ、次のポリシπ
jを構築するには、π
jに基づいて動作しながら環境と相互作用しなければならない。
システムは、値ベースの学習(Q関数又はV関数の学習)によってトレーニングすることもできる。最適値関数V*について優れた近似を学習できると仮定する。(例えば、ベルマン方程式を使用することにより)最適なポリシを構築することができる。値ベースの学習の一部のバージョンは、オフラインで実施することができる(「オフポリシ」トレーニングと呼ぶ)。値ベースの手法の一部の不利点は、この手法がマルコフ仮定及び複雑な関数の所要の近似に強く依存することに起因し得る(ポリシを直接近似するよりも価値関数を近似する方が困難であり得る)。
別の技法は、モデルベースの学習及び計画(状態遷移の確率を学習し、最適なVを見出す最適化問題を解くこと)を含み得る。学習システムをトレーニングするためにこれらの技法の組み合わせを使用することもできる。この手法では、プロセスの動力学、すなわち(st,at)を取り、次の状態st+1にわたる分布をもたらす関数を学習することができる。この関数が学習されると、最適化問題を解いてその値が最適であるポリシπを見出すことができる。これを「計画」と呼ぶ。この手法の1つの利点は、学習部分が教師ありであり、三つ組(st,at,st+1)を観測することによってオフラインで適用できることであり得る。「模倣」手法と同様に、この手法の1つの不利点は、学習プロセスにおける小さい誤差が蓄積し、機能が不十分なポリシをもたらす場合があることであり得る。
運転ポリシモジュール803をトレーニングするための別の手法は、運転ポリシ関数を意味的に重要な構成要素へと分解することを含み得る。そのようにすることは、ポリシの安全性を保証し得るポリシの一部を手動で実装すること、並びに多くのシナリオへの適応性、自衛的挙動/攻撃的挙動間の人間並みのバランス及び他のドライバーとの人間並みの折衝を可能にし得る強化学習法を使用してポリシの他の部分を実装することを可能にする。技術的な観点から、強化学習法は、幾つかの方法体系を組み合わせ、トレーニングの殆どが記録されたデータ又は自己構築シミュレータを使用して実行され得る扱い易いトレーニング手続きを提供することができる。
幾つかの実施形態では、運転ポリシモジュール803のトレーニングは、「選択肢」メカニズムを利用することができる。それを例証するために、2レーンの高速道路のための運転ポリシの単純なシナリオを検討する。ダイレクトRL手法では、状態を
にマップするポリシπ、π(s)の第1の成分は、所望の加速コマンドであり、π(s)の第2の成分は、ヨー率である。修正された手法では、以下のポリシを構築することができる。
自動走行制御(ACC)ポリシ、oACC:S→A:このポリシは、0のヨー率を常に出力し、スムーズ且つ事故のない運転を実施するために速度のみを変更する。
ACC+Leftポリシ、oL:S→A:このポリシの縦方向のコマンドは、ACCコマンドと同じである。ヨー率は、安全な横方向の移動を確実にしながら(例えば、左側に車がある場合には左に移動しない)、車両を左レーンの中央に向けてセンタリングすることの簡単な実施である。
ACC+Rightポリシ、oR:S→A:oLと同じであるが、車両は、右レーンの中央に向けてセンタリングされ得る。
これらのポリシは、「選択肢」と呼ぶことができる。これらの「選択肢」に依存し、選択肢を選択するポリシπ
o:S→Oを学習することができ、但し、Oは、利用可能な選択肢の組である。ある事例では、O={o
ACC,o
L,o
R}が成立する全てのsについて、
を設定することにより、選択肢セレクタポリシπ
oは、実際のポリシ、π:S→Aを定める。
実際には、ポリシ関数は、図9に示すように選択肢のグラフ901へと分解することができる。図10に選択肢のグラフ1000の別の例を示す。選択肢のグラフは、有向非巡回グラフ(DAG)として編成される階層型の組の決定を表し得る。グラフの根ノード903と呼ばれる特別なノードがある。このノードには入力ノードがない。決定プロセスは、根ノードから始まり、出力決定線を有さないノードを指す「葉」ノードに到達するまでこのグラフを横断する。図9に示すように、葉ノードは、例えば、ノード905、907及び909を含み得る。葉ノードに遭遇すると、運転ポリシモジュール803は、葉ノードに関連する所望のナビゲーション動作に関連する加速コマンド及び操舵コマンドを出力し得る。
例えば、ノード911、913、915等の内部ノードは、その利用可能な選択肢の中から子を選択するポリシの実装をもたらし得る。内部ノードの利用可能な子の組は、決定線によって特定の内部ノードに関連するノードの全てを含む。例えば、図9で「合流」として示す内部ノード913は、決定線によってノード913にそれぞれつながれる3つの子ノード909、915及び917(「留まる」、「右側追い越し」及び「左側追い越し」のそれぞれ)を含む。
選択肢のグラフの階層内でノードが自らの位置を調節できるようにすることにより、意思決定システムの柔軟性を得ることができる。例えば、ノードのいずれも自らを「重大」であると宣言することを認められ得る。各ノードは、ノードがそのポリシ実装の重大なセクション内にある場合、「真」を出力する関数「is critical」を実装することができる。例えば、テイクオーバを担うノードは、操作中に自らを重大であると宣言することができる。これは、ノードuの利用可能な子の組に対して制約を課す可能性があり、かかる子は、ノードuの子であり、且つvから葉ノードへの重大であると指定される全てのノードを通過する経路が存在する全てのノードvを含み得る。かかる手法は、一方では、各時間ステップにおけるグラフ上の所望の経路の宣言を可能にし得るのに対し、他方では、とりわけポリシの重大な部分が実施されている間にポリシの安定性を保つことができる。
選択肢のグラフを定めることにより、運転ポリシπ:S→Aを学習する問題を、グラフの各ノードのポリシを定義する問題へと分解することができ、内部ノードにおけるポリシは、利用可能な子ノードの中から選択すべきである。ノードの一部について、個々のポリシを(例えば、観測される状態に応じた動作の組を指定するif−then形式のアルゴリズムによって)手動で実装することができる一方、他のものについて、強化学習によって構築されるトレーニング済みシステムを使用してポリシを実装することができる。手動の手法又はトレーニングされた/学習された手法の選択は、タスクに関連する安全性の側面及びその相対的な単純さに依存し得る。選択肢のグラフは、ノードの一部が簡単に実装される一方、他のノードがトレーニング済みモデルに依存し得る方法で構築され得る。かかる手法は、システムの安全な動作を保証することができる。
以下の解説は、運転ポリシモジュール803内の図9の選択肢のグラフの役割に関する更に詳細を与える。上記で論じたように、運転ポリシモジュールへの入力は、例えば、利用可能なセンサから得られる環境地図の概要を示す「検知状態」である。運転ポリシモジュール803の出力は、最適化問題の解として軌道を定める願望の組(任意選択的に厳密制約の組を伴う)である。
上記のように、選択肢のグラフは、DAGとして編成される階層型の組の決定を表す。グラフの「根」と呼ばれる特別なノードがある。根ノードは、入力辺(例えば、決定線)を有さない唯一のノードである。決定プロセスは、根ノードから始まり、「葉」ノード、すなわち出力辺を有さないノードに到達するまでグラフを横断する。各内部ノードは、自らの利用可能な子の中から1つの子を選ぶポリシを実装すべきである。全ての葉ノードは、根から葉までの全経路に基づいて願望の組(例えば、ホスト車両のためのナビゲーション目標の組)を定めるポリシを実装すべきである。検知状態に基づいて直接定められる厳密制約の組と共に、願望の組は、その解が車両の軌道である最適化問題を確立する。システムの安全性を更に高めるために厳密制約を使用することができ、運転の快適さ及びシステムの人間並みの運転挙動をもたらすために願望を使用することができる。最適化問題への解として提供される軌道は、従って、軌道を実現するためにステアリング、ブレーキ及び/又はエンジンアクチュエータに与えられるべきコマンドを定める。
図9に戻ると、選択肢のグラフ901は、合流レーンを含む2レーンの高速道路(ある時点において第3のレーンが高速道路の右レーン又は左レーンに合流することを意味する)に関する選択肢のグラフを表す。根ノード903は、ホスト車両が単純な道路のシナリオにあるか、合流シナリオに近づいているかをまず判断する。これは、検知状態に基づいて実施可能な判断の一例である。単純な道路のノード911は、留まるノード909、左側追い越しノード917及び右側追い越しノード915という3つの子ノードを含む。留まるとは、ホスト車両が同じレーン内を走行し続けたい状況を指す。留まるノードは、葉ノードである(出力辺/線がない)。従って、留まるノードは、願望の組を定める。このノードが定める第1の願望は、例えば、現在の移動レーンの中央に可能な限り近い所望の横方向位置を含み得る。スムーズに(例えば、既定の又は許容可能な加速最大値の範囲内で)ナビゲートする願望もあり得る。留まるノードは、ホスト車両が他の車両に対してどのように反応するかも定めることができる。例えば、留まるノードは、検知される目標車両を調査し、軌道の成分に変換され得る意味論的意味をそれぞれに割り当てることができる。
ホスト車両の環境内の目標車両に様々な意味論的意味を割り当てることができる。例えば、幾つかの実施形態では、意味論的意味は、以下の指示のいずれかを含むことができる:1)無関係:シーン内の検知車両が現在関係しないことを示す、2)隣レーン:検知車両が隣接レーン内にあり、その車両に対して適切なオフセットを保つべきであることを示す(正確なオフセットは、願望及び厳密制約を所与として軌道を構築する最適化問題で計算することができ、場合により車両に依存することができ、選択肢のグラフの留まる葉は、目標車両に対する願望を定める目標車両の意味論の種類を設定する)、3)道を譲る:ホスト車両は、(とりわけホスト車両のレーン内に目標車両が割り込む可能性が高いとホスト車両が決定する場合に)検知した目標車両に例えば減速することによって道を譲ろうと試みる、4)道を進む:ホスト車両が例えば加速することによって優先通行権を受けて応じようと試みる、5)追走:ホスト車両がこの目標車両を追走してスムーズな運転を維持することを望む、6)左側/右側追い越し:これは、ホスト車両が左レーン又は右レーンへのレーン変更を開始したいことを意味する。左側追い越しノード917及び右側追い越しノード915は、依然として願望を定めていない内部ノードである。
選択肢のグラフ901内の次のノードは、間隙選択ノード919である。このノードは、ホスト車両が入りたい特定の目標レーン内の2つの目標車両間の間隙を選択することを担い得る。IDj形式のノードを選択することにより、jの何らかの値について、ホスト車両は、軌道最適化問題に関する願望、例えば選択された間隙に到達するためにホスト車両が操作を行いたいことを指定する葉に到達する。かかる操作は、現在のレーン内でまず加速し/ブレーキをかけ、選択された間隙に入るのに適した時点において目標レーンに進むことを含み得る。間隙選択ノード919が適切な間隙を見つけることができない場合、現在のレーンの中央に戻り、追い越しを取り消す願望を定める中止ノード921に進む。
合流ノード913に戻り、ホスト車両が合流に近づくと、ホスト車両には、特定の状況に依存し得る幾つかの選択肢がある。例えば、図11Aに示すように、ホスト車両1105は、2レーン道路の主要レーン又は合流レーン1111内で他の目標車両を検出していない状態で2レーン道路に沿って移動している。この状況では、運転ポリシモジュール803は、合流ノード913に到達すると、留まるノード909を選択することができる。すなわち、道路に合流するものとして目標車両を検知しない場合、自らの現在のレーン内に留まることが望ましい場合がある。
図11Bでは、この状況が僅かに異なる。ここで、ホスト車両1105は、合流レーン1111から主たる道路1112に入ってくる1つ又は複数の目標車両1107を検知する。この状況では、運転ポリシモジュール803が合流ノード913に直面すると、運転ポリシモジュール803は、合流の状況を回避するために左側追い越し操作を開始することに決めることができる。
図11Cでは、ホスト車両1105は、合流レーン1111から主たる道路1112に入る1つ又は複数の目標車両1107に遭遇する。ホスト車両1105は、ホスト車両のレーンに隣接するレーン内を移動する目標車両1109も検出する。ホスト車両は、ホスト車両1105と同じレーン内を移動する1つ又は複数の目標車両1110も検出する。この状況では、運転ポリシモジュール803は、ホスト車両1105の速度を調節して目標車両1107に道を譲り、目標車両1115の前に進むことに決めることができる。これは、例えば、適切な合流の間隙としてID0(車両1107)とID1(車両1115)との間の間隙を選択する間隙選択ノード919に進むことによって実現され得る。その場合、合流の状況の適切な間隙が軌道プランナ最適化問題の目的を定める。
上記で論じたように、選択肢のグラフのノードは、自らを「重大」であると宣言することができ、かかる宣言は、選択される選択肢が重大なノードを通過することを確実にし得る。形式上、各ノードは関数IsCriticalを実装することができる。選択肢のグラフ上で根から葉への順方向パスを行い、軌道プランナの最適化問題を解いた後、葉から根に逆方向パスを行うことができる。この逆方向パスに沿ってパス内の全てのノードのIsCritical関数を呼び出すことができ、全ての重大なノードのリストを保存することができる。次の時間枠に対応する順方向経路内において、全ての重大なノードを通過する根ノードから葉ノードへの経路を選択することを運転ポリシモジュール803が要求され得る。
図11A〜図11Cは、この手法の潜在的な利益を示すために使用することができる。例えば、追い越し動作が開始され、運転ポリシモジュール803がIDkに対応する葉に到達する状況では、ホスト車両が追い越し操作の途中にある場合、例えば留まるノード909を選択することは望ましくない。このジャンプ性を回避するために、IDjノードは、自らを重大であると指定することができる。操作中、軌道プランナの成功を監視することができ、関数IsCriticalは、追い越し操作が意図した通りに進む場合に「真」値を返す。この手法は、(最初に選択した操作を完了する前に潜在的に一貫性のない別の操作にジャンプするのではなく)次の時間枠内で追い越し操作が続行されることを確実にし得る。他方では、選択された操作が意図した通りに進んでいないことを操作の監視が示す場合又は操作が不要若しくは不可能になった場合、関数IsCriticalは、「偽」値を返すことができる。これは、間隙選択ノードが次の時間枠内で異なる間隙を選択すること、又は追い越し操作を完全に中止することを可能にし得る。この手法は、一方では、各時間ステップにおける選択肢のグラフ上の所望の経路の宣言を可能にし得るのに対し、他方では、実行の重大な部分にある間のポリシの安定性を促進することを支援し得る。
以下でより詳細に解説する厳密制約は、ナビゲーションの願望と区別することができる。例えば、厳密制約は、計画されたナビゲーション動作の追加のフィルタリング層を適用することによって安全運転を保証することができる。強化学習に基づいて構築されるトレーニング済みシステムを使用することによってではなく、手動でプログラムされ定義され得る関与する厳密制約は、検知状態から決定することができる。但し、幾つかの実施形態では、トレーニングされたシステムは、適用され従われる適用可能な厳密制約を学習することができる。かかる手法は、適用可能な厳密制約に既に準拠している被選択動作に運転ポリシモジュール803が到達することを促進することができ、そうすることで適用可能な厳密制約に準拠するために後に修正を必要とし得る被選択動作を減らすか又は除去することができる。それでもなお、冗長な安全対策として、所定の厳密制約を考慮するように運転ポリシモジュール803が訓練されている場合でも、運転ポリシモジュール803の出力に厳密制約を適用することができる。
潜在的な厳密制約の多くの例がある。例えば、厳密制約は、道路縁のガードレールに関連して定めることができる。いかなる状況でも、ホスト車両がガードレールを越えることは認められない。そのような規則は、ホスト車両の軌道に対する横方向の厳密制約を引き起こす。厳密制約の別の例は、道路のバンプ(例えば、速度制御バンプ)を含むことができ、かかるバンプは、バンプ前の又はバンプを横断する間の運転速度に対する厳密制約を引き起こし得る。厳密制約は、安全を最重視すべきであると考えることができ、従ってトレーニング中に制約を学習するトレーニング済みシステムに専ら依存するのではなく、手動で定めることができる。
厳密制約とは対照的に、願望の目標は、快適な運転を可能にするか又は実現することであり得る。上記で論じたように、願望の一例は、ホスト車両のレーンの中央に対応するレーン内の横方向位置にホスト車両を位置決めする目標を含み得る。別の願望は、入り込むための間隙のIDを含み得る。ホスト車両は、厳密にレーンの中央にある必要はなく、代わりにレーンの中央に可能な限り近くありたいという願望は、ホスト車両がレーンの中央から外れた場合にもレーンの中央に移動し易いことを保証できることに留意されたい。願望は、安全を最重視しなくてもよい。幾つかの実施形態では、願望は、他のドライバー及び歩行者との折衝を必要とし得る。願望を構築するためのある手法は、選択肢のグラフを利用することができ、グラフの少なくとも一部のノード内で実装されるポリシは、強化学習に基づき得る。
学習に基づいてトレーニングされるノードとして実装される選択肢のグラフ901又は1000のノードについて、トレーニングプロセスは、問題を教師あり学習フェーズ及び強化学習フェーズへと分解することを含み得る。教師あり学習フェーズでは、
が成立するように、(s
t,a
t)から
への可微分マッピングが学習され得る。これは、「モデルベースの」強化学習と同様であり得る。しかし、ネットワークの順方向ループでは、
をs
t+1の実際の値で置換し、それにより誤差が蓄積する問題をなくすことができる。
の予測の役割は、将来から過去の動作にメッセージを伝えることである。この意味において、アルゴリズムは、「モデルベースの」強化学習と「ポリシベースの学習」との組み合わせであり得る。
一部のシナリオにおいて提供され得る重要な要素は、将来の損失/報酬から動作に関する決定に戻る可微分経路である。選択肢のグラフの構造では、安全制約を含む選択肢の実装は、通常、微分できない。この問題を克服するために、学習されるポリシのノードにおける子の選択は、確率論的であり得る。すなわち、ノードは、確率ベクトルpを出力することができ、確率ベクトルpは、特定のノードの子のそれぞれを選択する際に使用される確率を割り当てる。あるノードがk個の子を有すると仮定し、a
(1),...,a
(k)がそれぞれの子から葉への経路の動作とする。従って、結果として生じる予測動作は、
であり、これは、動作からpへの可微分経路をもたらし得る。実際には、動作aは、i〜pに関してa
(i)であるように選択することができ、aと
との差を付加雑音と呼ぶことができる。
s
t、a
tを所与として、
をトレーニングするために、実際のデータと共に教師あり学習を使用することができる。ノードのポリシをトレーニングするためにシミュレータを使用することができる。後に実際のデータを使用してポリシの微調整を実現することができる。2つの概念がシミュレーションをより現実的にし得る。第1に、模倣を使用し、大規模な現実−世界のデータセットを使用する「挙動クローニング」パラダイムを使用して初期ポリシを構築することができる。幾つかの場合、結果として生じるエージェントが適している場合がある。他の事例では、結果として生じるエージェントは、道路上の他のエージェントのための非常に優れた初期ポリシを少なくとも形成する。第2に、セルフプレイを使用し、本発明者らの独自のポリシを使用してトレーニングを増補することができる。例えば、遭遇し得る他のエージェント(車/歩行者)の初期実装を所与として、シミュレータに基づいてポリシをトレーニングすることができる。他のエージェントの一部は、新たなポリシで置換することができ、このプロセスを繰り返すことができる。その結果、異なる洗練レベルを有する一層多岐にわたる他のエージェントに応答すべきであるため、ポリシが改善し続けることができる。
更に幾つかの実施形態では、システムは、マルチエージェント手法を実装することができる。例えば、システムは、様々なソースからのデータ及び/又は複数の角度から捕捉する画像を考慮することができる。更に、ホスト車両を直接含まないが、ホスト車両に影響を有し得る事象の予測を考慮することができ、更に他の車両を含む予測不能な状況をもたらし得る事象の予測が検討事項であり得る(例えば、レーダは、先行車両及びホスト車両に影響を及ぼす不可避の事象、更にかかる事象の高い可能性の予想を「見通す」ことができる)ため、開示する一部の実施形態は、エネルギの節約をもたらし得る。
課せられたナビゲーション制約を伴うトレーニング済みシステム
自律運転に関連して、重大な関心事は、トレーニング済みナビゲーションネットワークの学習されたポリシが安全であることをどのように保証するかである。幾つかの実施形態では、制約を使用して運転ポリシシステムをトレーニングすることができ、そのため、トレーニング済みシステムによって選択される動作は、適用可能な安全制約を既に考慮している可能性がある。加えて、幾つかの実施形態では、ホスト車両の環境内の特定の検知シーンによって関与される1つ又は複数の厳密制約にトレーニング済みシステムの被選択動作を通すことにより、追加の安全層を提供することができる。かかる手法は、ホスト車両によって行われる動作が、適用可能な安全制約を満たすものであると確認されるものに限定されていることを確実にし得る。
その核心において、ナビゲーションシステムは、観測した状態を1つ又は複数の所望の動作にマップするポリシ関数に基づく学習アルゴリズムを含み得る。一部の実装形態では、学習アルゴリズムは、ディープラーニングアルゴリズムである。所望の動作は、車両について予期される報酬を最大化することが期待される少なくとも1つの動作を含み得る。幾つかの場合、車両が行う実際の動作は、所望の動作の1つに対応し得るが、他の事例では、行われる実際の動作は、観測される状態、1つ又は複数の所望の動作及び学習するナビゲーションエンジンに課せられる非学習厳密制約(例えば、安全制約)に基づいて決定され得る。これらの制約は、様々な種類の検出物体(例えば、目標車両、歩行者、路肩の又は道路内の静的物体、路肩の又は道路内の移動物体、ガードレール等)を取り囲む非運転区域を含み得る。幾つかの場合、区域のサイズは、検出物体の検出される動き(例えば、速度及び/又は方向)に基づいて変わり得る。他の制約は、歩行者の影響区域内を通過するときの最大移動速度、(ホスト車両の後ろの目標車両の間隔に対処するための)最大減速度、検知した横断歩道又は踏切における強制的な停止等を含み得る。
機械学習によってトレーニングされるシステムと共に使用される厳密制約は、トレーニング済みシステムのみの出力に基づいて得ることができる安全度を上回り得るある程度の安全性を自律運転において提供することができる。例えば、機械学習システムは、トレーニングのガイドラインとして所望の制約の組を使用してトレーニングすることができ、従って、トレーニング済みシステムは、適用可能なナビゲーション制約の制限で構成されかかる制限を守る動作を検知されたナビゲーション状態に応じて選択することができる。しかし、それでもなお、ナビゲーション動作を選択する際、トレーニング済みシステムは、幾らかの柔軟性を有し、従ってトレーニング済みシステムによって選択される動作が関連するナビゲーション制約に厳密に従わない可能性がある少なくとも幾つかの状況があり得る。従って、選択される動作が関連するナビゲーション制約に厳密に従うことを求めるために、学習/トレーニングフレームワークの外側にある関連するナビゲーション制約の厳密な適用を保証する非機械学習構成要素を使用し、トレーニング済みシステムの出力を組み合わせ、比較し、フィルタリングし、調節し、修正等することができる。
以下の解説は、トレーニング済みシステム及びトレーニング済みシステムを、トレーニング/学習フレームワークの外側にあるアルゴリズム構成要素と組み合わせることから得ることができる(とりわけ安全性の観点からの)潜在的な利益に関する更に詳細を示す。先に論じたように、ポリシによる強化学習目的は、確率勾配上昇によって最適化することができる。目的(例えば、期待報酬)は、
として定めることができる。
機械学習シナリオでは、期待値を含む目的を使用することができる。但し、かかる目的は、ナビゲーション制約に拘束されることなしに、それらの制約によって厳密に拘束される動作を返さない場合がある。例えば、回避すべき稀な「曲がり角」の事象(例えば、事故等)を表す軌道について、
が成立し、残りの軌道について、
が成立する報酬関数を検討し、学習システムの1つの目標は、追い越し操作の実行を学習することであり得る。通常、事故のない軌道では、
は、問題ないスムーズな追い越しに報酬を与え、追い越しを完了せずにレーン内に、従って範囲[−1,1]内に留まることにペナルティを科す。シーケンス
が事故を表す場合、報酬−は、かかる発生を妨げるために十分高いペナルティを与えるべきである。問題は、事故のない運転を保証するためにrの値を何にすべきかである。
に対する事故の効果は、加法項−prであり、pは、事故の事象を伴う軌道の確率質量であることに注意されたい。この項が無視できる、すなわちp<<である場合、学習システムは、一部の追い越し操作の完了が成功しないことを犠牲にして、より自衛的であるポリシよりも頻繁に追い越し操作の成功を果たすために、事故を行うポリシを優先させる(又は全般的に無頓着な運転ポリシを採用する)ことができる。換言すれば、事故の確率がp以下である場合、r>>1/pであるようにrを設定しなければならない。pを極めて小さくする(例えば、p=10
−9程度)ことが望ましい場合がある。従って、rは、大きいべきである。ポリシの勾配では、
の勾配を推定することができる。以下の補助定理は、確率変数
の分散が、r>>1/pでrを上回る
と共に大きくなることを示す。従って、目的を推定することが困難な場合があり、その勾配を推定することは一層困難であり得る。
補助定理:π
oをポリシとし、p及びrをスカラとし、それにより、確率pにおいて、
が得られ、確率1−pにおいて、
が得られる。従って、次式
が成立し、最後の近似は、r≧1/pの場合に該当する。
この解説は、形式
のオブジェクションが分散問題を引き起こすことなしに機能的安全性を保証できない可能性があることを示す。分散を減らすためのベースラインサブトラクション法は、問題に対する十分な処置を提供しない可能性があり、なぜなら、問題は、
の高い分散から、その推定が数値的不安定を等しく被るベースライン定数の等しく高い分散にシフトするからである。更に、事故の確率がpである場合、事故の事象を得る前に平均して少なくとも1/pシーケンスがサンプリングされるべきである。これは、
を最小化しようとする学習アルゴリズムのためのシーケンスの1/pサンプルの下端を含意する。この問題に対する解決策は、数値的調整技法によってではなく、本明細書に記載のアーキテクチャ設計において見出すことができる。ここでの手法は、厳密制約が学習フレームワークの外側に投入されるべきであるという考えに基づく。換言すれば、ポリシ関数は、学習可能部分及び学習不能部分に分解することができる。形式的に、ポリシ関数は、
として構成することができ、
は、(不可知論的な)状態空間を願望の組(例えば、所望のナビゲーション目標等)にマップする一方、π
(T)は、願望を(短期のうちに車がどのように動くべきかを決定し得る)軌道にマップする。関数
は、運転の快適さ並びに他のいずれの車を追い越すべきか、他のいずれの車に道を譲るべきか、及びホスト車両のレーン内でのホスト車両の所望の位置はいずれであるか等の戦略的決定を行うことを担う。検知されるナビゲーション状態から願望へのマッピングは、期待報酬を最大化することによって経験から学習され得るポリシ
である。
によって作り出される願望は、運転軌道にわたるコスト関数に変換され得る。機能的安全性に関する厳密制約の影響下にあるコストを最小化する軌道を見つけることにより、学習される関数ではない関数π
(T)を実施することができる。この分解は、快適な運転を提供するのと同時に機能的安全性を保証することができる。
図11Dに示す二重合流ナビゲーション状況は、これらの概念を更に示す一例を与える。二重合流では、左側と右側との両方から車両が合流領域1130に到達する。それぞれの側から、車両1133又は車両1135等の車両が合流領域1130の反対側のレーン内に合流するかどうかを決定することができる。混雑した交通において、二重合流を問題なく実行することは、著しい折衝スキル及び経験を必要とする場合があり、シーン内の全てのエージェントが行い得る可能な全ての軌道を列挙することによる発見的手法又は総当たり的手法において実行するのは困難であり得る。この二重合流の例では、二重合流操作に適した願望の組Dを定めることができる。Dは、以下の組のデカルト積D=[0,vmax]xLx{g,t,o}nとすることができ、但し、[0,vmax]は、ホスト車両の所望の目標速度であり、L={1,1.5,2,2.5,3,3.5,4}は、レーン単位での所望の横方向位置であり、整数は、レーンの中央を示し、分数は、レーンの境界を示し、{g,t,o}は、他のn台の車両のそれぞれに割り当てられる分類ラベルである。ホスト車両が他の車両に道を譲るべき場合、他の車両に「g」を割り当てることができ、ホスト車両が他の車両に対して道を得るべき場合、他の車両に「t」を割り当てることができ、又はホスト車両が他の車両に対してオフセット距離を保つべき場合、他の車両に「o」を割り当てることができる。
以下は、願望の組(v,l,c1,...,cn)∈Dを運転軌道にわたるコスト関数にどのように変換できるかについての説明である。運転軌道は、(x1,y1),...,(xk,yk)によって表すことができ、(xi,yi)は、時点τ・iにおける(自己中心的な単位での)ホスト車両の(横方向、縦方向の)位置である。一部の実験では、τ=0.1秒であり、k=10である。当然ながら、他の値を選択することもできる。軌道に割り当てられるコストは、所望の速度、横方向位置及び他のn台の車両のそれぞれに割り当てられるラベルに割り当てられる個々のコストの加重和を含み得る。
所望の速度v∈[0,v
max]を所与として、速度に関連する軌道のコスト
である。
所望の横方向位置を所与として、所望の横方向位置に関連するコスト
であり、但し、dist(x,y,l)は、点(x,y)からレーンの位置lまでの距離である。他の車両に起因するコストに関して、他の任意の車両について、(x' 1,y' 1),...,(x' k,y' k)は、ホスト車両の自己中心的な単位での他の車両を表すことができ、iは、(xi,yi)と(x' j,y' j)との間の距離が小さいようにjが存在する最も早い点であり得る。そのような点がない場合、iは、i=∞として設定することができる。別の車が「道を譲る」と分類される場合、τi>τj+0.5であることが望ましい場合があり、これは、他の車両が軌道の交点に到達する少なくとも0.5秒後にホスト車両がその同一点に到達することを意味する。上記の制約をコストに変換するための可能な式は、[τ(j−i)+0.5]+である。
同様に、別の車が「道を取る」と分類される場合、τj>τi+0.5であることが望ましい場合があり、これは、コスト[τ(i−j)+0.5]+に変換され得る。別の車が「オフセット」として分類される場合、i=∞であることが望ましい場合があり、これは、ホスト車両の軌道とオフセット車の軌道とが交差しないことを意味する。この条件は、軌道間の距離に関してペナルティを科すことによってコストに変換することができる。
これらのコストのそれぞれに重みを割り当てることは、軌道プランナのための単一の目的関数π(T)を与え得る。スムーズな運転を促進するコストを目的に追加することができる。軌道の機能的安全性を保証するために厳密制約を目的に追加することができる。例えば、(xi、yi)は、道路から外れることを禁じられ得、(xi、yi)は、|i−j|が小さい場合に他の任意の車両の任意の軌道点(x' j、y' j)について(x' j、y' j)に近づくことを禁じられ得る。
要約すると、ポリシπθは、不可知論的な状態から願望の組へのマッピング及び願望から実際の軌道へのマッピングへと分解することができる。後者のマッピングは、学習に基づかず、そのコストが願望に依存し且つその厳密制約がポリシの機能的安全性を保証し得る最適化問題を解くことによって実施することができる。
以下の解説は、不可知論的な状態から願望の組へのマッピングについて説明する。上記で説明したように、機能的安全性に準拠するために、強化学習のみに依存するシステムは、報酬
に関する大きく扱いにくい分散に直面する可能性がある。この結果は、ポリシ勾配反復を使用することにより、(不可知論的な)状態空間から願望の組へのマッピングと、その後に続く機械学習に基づいてトレーニングされるシステムを含まない実際の軌道へのマッピングとに問題を分解することによって回避することができる。
様々な理由から、意味論的に有意な構成要素へと意思決定を更に分解することができる。例えば、Dのサイズが大きく、更に連続的である場合がある。図11Dに関して上記で説明した二重合流シナリオでは、D=[0,v
max]xLx{g,t,o}
n)が成立する。加えて、勾配推定子は、項
を含み得る。この式では、分散が対象期間Tと共に増加し得る。幾つかの場合、
'Tの値は、およそ250とすることができ、この値は、有意の分散を作り出すのに十分高いものであり得る。サンプリングレートが10Hzの範囲内にあり、合流領域1130が100メートルであると仮定し、合流の準備は、合流領域の約300メートル手前で始まり得る。ホスト車両が16メートル/秒(時速約60キロ)で移動する場合、エピソードのTの値は、およそ250であり得る。
選択肢のグラフの概念に戻り、図11Dに示す二重合流シナリオを表し得る選択肢のグラフを図11Eに示す。先に論じたように、選択肢のグラフは、有向非巡回グラフ(DAG)として編成される階層型の組の決定を表し得る。「根」ノード1140と呼ばれる特別なノードがグラフ内にあり得、根ノードは、入力辺(例えば、決定線)を有さない唯一のノードである。決定プロセスは、根ノードから始まり、「葉」ノード、すなわち出力辺を有さないノードに到達するまでグラフを横断し得る。各内部ノードは、自らの利用可能な子の中から1つの子を選ぶポリシ関数を実装することができる。選択肢のグラフ上の横断の組から願望の組Dへの既定のマッピングがあり得る。換言すれば、選択肢のグラフ上での横断がD内の願望に自動で変換され得る。グラフ内のノードvを所与として、パラメータベクトルθ
vは、vの子を選択するポリシを規定し得る。θが全てのθ
vの連結である場合、各ノードvにおいてθ
vによって定められるポリシを使用して、子ノードを選択しながらグラフの根から葉に横断することにより、
を定めることができる。
図11Eの二重合流の選択肢のグラフ1139では、ホスト車両が合流領域(例えば、図11Dの領域1130)内にあるかどうか、又は代わりにホスト車両が合流領域に近づいており、あり得る合流に備える必要があるかどうかを根ノード1140がまず判断することができる。いずれの場合にも、ホスト車両は、レーンを(例えば、左側に又は右側に)変更するかどうか、又は現在のレーン内に留まるかどうかを決定する必要があり得る。ホスト車両がレーンを変更することに決めた場合、ホスト車両は、そのまま続行して、(例えば、「行く」ノード1142において)レーン変更操作を行うのに条件が適しているかどうかを判断する必要があり得る。レーンを変更することが可能ではない場合、ホスト車両は、レーンマーク上にあることを狙うことにより、(例えば、所望のレーン内の車両との折衝の一環としてノード1144において)所望のレーンに向かって「押し進む」ことを試みることができる。或いは、ホスト車両は、(例えば、ノード1146において)同じレーン内に「留まる」ことを選び得る。このプロセスは、ホスト車両の横方向位置を自然な方法で決定することができる。例えば。
これは、所望の横方向位置を自然な方法で決定することを可能にし得る。例えば、ホスト車両がレーン2からレーン3にレーンを変更する場合、「行く」ノードは、所望の横方向位置を3に設定することができ、「留まる」ノードは、所望の横方向位置を2に設定することができ、「押し進む」ノードは、所望の横方向位置を2.5に設定することができる。次に、ホスト車両は、「同じ」速度を保つか(ノード1148)、「加速」するか(ノード1150)、又は「減速」するか(ノード1152)を決めることができる。次に、ホスト車両は、他の車両を調べる「鎖状」構造1154に入ることができ、それらの意味論的意味を組{g,t,o}内の値に設定する。このプロセスは、他の車両に対する願望を設定し得る。この鎖内の全てのノードのパラメータは、(回帰ニューラルネットワークと同様に)共有され得る。
選択肢の潜在的な利益は、結果の解釈可能性である。別の潜在的な利益は、組Dの分解可能な構造を利用することができ、従って各ノードにおけるポリシを少数の可能性の中から選べることである。加えて、構造は、ポリシ勾配推定子の分散を減らすことを可能にし得る。
上記で論じたように、二重合流シナリオにおけるエピソードの長さは、およそT=250ステップであり得る。この値(又は特定のナビゲーションシナリオに応じた他の任意の適切な値)は、ホスト車両の動作の結果を認めるのに十分な時間を与え得る(例えば、ホスト車両が合流の準備としてレーンを変更することに決めた場合、ホスト車両は、合流を問題なく完了した後にのみ利益を認める)。他方では、運転の動力学により、ホスト車両は、十分速い頻度(例えば、上記の事例では10Hz)で意思決定を行わなければならない。
選択肢のグラフは、Tの有効値を少なくとも2つの方法で減らすことを可能にし得る。第1に、高レベルの決定を所与として、より短いエピソードを考慮に入れながら低レベルの決定について報酬を定めることができる。例えば、ホスト車両が「レーン変更」及び「行く」ノードを既に選択している場合、2〜3秒のエピソードを見ることにより、意味論的意味を車両に割り当てるためのポリシが学習され得る(Tが250ではなく20〜30になることを意味する)。第2に、高レベルの決定(レーンを変更するか又は同じレーン内に留まるか等)について、ホスト車両は、0.1秒ごとに意思決定を行う必要がない可能性がある。代わりに、ホスト車両は、より低い頻度で(例えば、毎秒)意思決定を行うことができ得、又は「選択肢終了」関数を実装でき得、選択肢の毎終了後にのみ勾配が計算され得る。いずれの場合にも、Tの有効値は、その元の値よりも一桁小さいものであり得る。全体的に見て、全てのノードにおける推定子は、元の250ステップよりも一桁小さいTの値に依存することができ、それは、より小さい分散に直ちに変わり得る。
上記で論じたように、厳密制約は、より安全な運転を促進することができ、幾つかの異なる種類の制約があり得る。例えば、静的な厳密制約は、検知状態から直接定められ得る。これらは、車両の速度、進行方位、加速、ブレーキ(減速)等に対する1つ又は複数の制約に関与し得るホスト車両の環境内の減速バンプ、制限速度、道路の曲率、交差点等を含み得る。静的な厳密制約は、意味論的自由空間も含むことができ、そこでは、ホスト車両は、例えば、自由空間の外側に行くこと、及び物理的障壁にあまりにも近くナビゲートすることを禁止される。静的な厳密制約は、車両の運動学的な動きの様々な側面に従わない操作を制限する(例えば、禁止する)こともでき、例えば、静的な厳密制約は、ホスト車両が横転すること、滑ること、又は他の方法で制御を失うことにつながり得る操作を禁止するために使用することができる。
厳密制約は、車両に関連することもできる。例えば、車両が他の車両への少なくとも1メートルの縦方向距離及び他の車両からの少なくとも0.5メートルの横方向距離を保つことを要求する制約を使用することができる。ホスト車両が1つ又は複数の他の車両との衝突コースを保つことを避けるように制約を適用することもできる。例えば、時間τは、特定のシーンに基づく時間の測度であり得る。現在の時間から時間τまでのホスト車両及び1つ又は複数の他の車両の予測軌道を検討することができる。2つの軌道が交差する場合、
は、交点に車両iが到達する時間及びそこから去る時間を表し得る。すなわち、それぞれの車は、車の第1の部分が交点を通過するときに点に到達し、車の最後の部分が交点を通過するまで一定の時間が必要である。この時間は、到達時間を去る時間と分ける。
である(すなわち車両1の到達時間が車両2の到達時間未満である)と仮定し、車両2が到達するよりも前に車両1が交点を離れていることを確実することが望まれる。さもなければ衝突が発生することになる。従って、
であるように厳密制約を実装することができる。更に、車両1と車両2とが最小量で互いに当たらないことを確実にするために、制約に緩衝時間(例えば、0.5秒又は別の適切な値)を含めることによって追加の安全余裕を得ることができる。2つの車両の予測される交差軌道に関係する厳密制約は、
として表すことができる。
ホスト車両及び1つ又は複数の他の車両の軌道を追跡する時間τは、異なり得る。但し、速度が遅い可能性がある交差点のシナリオでは、τがより長いことができ、ホスト車両がτ秒未満で交差点に入り、そこから出ていくようにτを定めることができる。
当然ながら、車両の軌道に厳密制約を適用することは、それらの車両の軌道が予測されることを必要とする。ホスト車両では、任意の所与の時間における意図された軌道をホスト車両が概して既に理解しており実際に計画しているため、軌道の予測は、比較的簡単であり得る。他の車両に関して、それらの車両の軌道を予測することは、あまり簡単ではない可能性がある。他の車両では、予測軌道を決定するためのベースライン計算は、例えば、ホスト車両に搭載されている1つ若しくは複数のカメラ及び/又は他のセンサ(レーダ、ライダ、音響等)によって捕捉される画像ストリームの分析に基づいて求められる他の車両の現在の速度及び進行方位に依存し得る。
但し、問題を簡単にするか又は別の車両について予測される軌道の更に信頼度を少なくとももたらす幾らかの例外があり得る。例えば、レーンの指示があり、道を譲る規則が存在し得る構造化道路に関して、他の車両の軌道は、レーンに対する他の車両の位置に少なくとも部分的に基づくことができ、適用可能な道を譲る規則に基づくことができる。従って一部の状況では、観測されるレーン構造がある場合、隣のレーンの車両は、レーンの境界を守ることが想定され得る。すなわち、ホスト車両は、隣のレーンの車両がホスト車両のレーン内に割り込むことを示す観測された根拠(例えば、信号灯、強い横方向の動き、レーンの境界を横断する動き)がない限り、隣のレーンの車両が自らのレーン内に留まると想定し得る。
他の状況も、他の車両の予期される軌道に関するヒントを与え得る。例えば、ホスト車両に優先通行権があり得る停止標識、信号機、環状交差路等において、その優先通行権を他の車両が守ると想定することができる。従って、規則が破られたことが観測された根拠がない限り、他の車両は、ホスト車両が有する優先通行権を尊重する軌道に沿って進むと想定することができる。
厳密制約は、ホスト車両の環境内の歩行者に関して適用することもできる。例えば、観測される任意の歩行者に対する規定の緩衝距離よりも少しでも近くホスト車両がナビゲートすることを禁止されるように、歩行者に対する緩衝距離を確立することができる。歩行者の緩衝距離は、任意の適切な距離とすることができる。幾つかの実施形態では、緩衝距離は、観測される歩行者に対して少なくとも1メートルであり得る。
車両の状況と同様に、厳密制約は、歩行者とホスト車両との間の相対運動に対して適用することもできる。例えば、ホスト車両の予測軌道に対して(進行方向及び速度に基づく)歩行者の軌道を監視することができる。特定の歩行者の軌道を所与として、軌道上の全ての点pについて、t(p)は、歩行者が点pに到達するのにかかる時間を表し得る。歩行者から少なくとも1メートルの所要の緩衝距離を保つために、t(p)は、(ホスト車両が少なくとも1メートルの距離の差で歩行者の前を通過するように十分な時間差を伴って)ホスト車両が点pに到達する時間を上回らなければならず、又は(例えば、ホスト車両がブレーキをかけて歩行者に道を譲る場合)t(p)は、ホスト車両が点pに到達する時間を下回らなければならない。更に後者の例では、ホスト車両が歩行者の背後を通過し、少なくとも1メートルの所要の緩衝距離を保つことができるように、ホスト車両が歩行者よりも十分遅い時間に点pに到達することを厳密制約が要求し得る。当然ながら、歩行者の厳密制約には例外があり得る。例えば、ホスト車両に優先通行権があるか又は速度が非常に遅く、歩行者がホスト車両に道を譲るのを拒否すること又はホスト車両に向かってナビゲートすることについて観測される根拠がない場合、歩行者の厳密制約を(例えば、少なくとも0.75メートル又は0.50メートルのより狭い緩衝に)緩和することができる。
一部の例では、全てを満たすことができないと決定される場合に制約を緩和することができる。例えば、両方のカーブから又はカーブと駐車車両から所望の間隔(例えば、0.5メートル)離れるには道路が狭過ぎる状況では、軽減事由がある場合に制約の1つ又は複数を緩和することができる。例えば、歩道上に歩行者(又は他の物体)がない場合、カーブから0.1メートルにおいてゆっくり進むことができる。幾つかの実施形態では、そうすることでユーザエクスペリエンスが改善する場合、制約を緩和することができる。例えば、くぼみを回避するために、制約を緩和して通常許可され得るよりもレーンの縁、カーブ又は歩行者の近くを車両がナビゲートすることを可能にし得る。更に、いずれの制約を緩和するかを決定するとき、幾つかの実施形態では、緩和することに決める1つ又は複数の制約は、安全に対して得られる悪影響が最も少ないと見なされるものである。例えば、車両がカーブ又はコンクリート障壁に対してどの程度近く移動できるかに関する制約は、他の車両への近接性を扱う制約を緩和する前に緩和することができる。幾つかの実施形態では、歩行者の制約は、緩和される最後のものとすることができ、又は状況により決して緩和されない場合がある。
図12は、ホスト車両のナビゲーション中に捕捉され分析され得るシーンの一例を示す。例えば、ホスト車両は、ホスト車両の環境を表す複数の画像をホスト車両に関連するカメラ(例えば、画像捕捉デバイス122、画像捕捉デバイス124及び画像捕捉デバイス126の少なくとも1つ)から受信し得る上記のナビゲーションシステム(例えば、システム100)を含み得る。図12に示すシーンは、予測軌道1212に沿ってレーン1210内を移動しているホスト車両の環境から時点tにおいて捕捉され得る画像の1つの一例である。ナビゲーションシステムは、複数の画像を受信することと、シーンに応じて動作を決定するためにそれらの画像を分析することとを行うように特別にプログラムされる少なくとも1つの処理デバイス(例えば、上記のEyeQプロセッサ又は他の装置のいずれかを含む)を含み得る。とりわけ、少なくとも1つの処理デバイスは、図8に示す検知モジュール801、運転ポリシモジュール803及び制御モジュール805を実装することができる。検知モジュール801は、カメラから収集される画像情報の収集及び出力並びにその情報を識別されたナビゲーション状態の形式で運転ポリシモジュール803に与えることを担うことができ、運転ポリシモジュール803は、教師あり学習や強化学習等の機械学習法によってトレーニングされているトレーニング済みナビゲーションシステムを構成し得る。検知モジュール801によって運転ポリシモジュール803に与えられるナビゲーション状態情報に基づき、運転ポリシモジュール803は、(例えば、上記の選択肢のグラフの手法を実施することにより)識別されたナビゲーション状態に応じてホスト車両によって実行するための所望のナビゲーション動作を生成することができる。
幾つかの実施形態では、少なくとも1つの処理デバイスが例えば制御モジュール805を使用し、所望のナビゲーション動作をナビゲーションコマンドに直接変換することができる。しかし、他の実施形態では、シーン及び所望のナビゲーション動作によって関与され得る様々な所定のナビゲーション制約に対して、運転ポリシモジュール803によって提供される所望のナビゲーション動作をテストするように厳密制約を適用することができる。例えば、ホスト車両に軌道1212をたどらせる所望のナビゲーション動作を運転ポリシモジュール803が出力する場合、そのナビゲーション動作は、ホスト車両の環境の様々な側面に関連する1つ又は複数の厳密制約に対してテストすることができる。例えば、捕捉画像1201は、シーン内に存在するカーブ1213、歩行者1215、目標車両1217及び静的物体(例えば、ひっくり返った箱)を決定し得る。これらのそれぞれが1つ又は複数の厳密制約に関連し得る。例えば、カーブ1213は、ホスト車両がカーブ内に又はカーブを超えて歩道1214上にナビゲートすることを防ぐ静的制約に関連し得る。カーブ1213は、ホスト車両にとっての非ナビゲート区域を画定する、カーブから(例えば、0.1メートル、0.25メートル、0.5メートル、1メートル等)隔てて且つカーブに沿って広がる所定距離(例えば、緩衝区域)を画定する道路障壁エンベロープにも関連し得る。当然ながら、静的制約は、他の種類の路傍境界(例えば、ガードレール、コンクリート柱、コーン、パイロン、他の任意の種類の路傍障壁)に関連し得る。
距離及び測距は、任意の適切な方法によって決定できることに留意すべきである。例えば、幾つかの実施形態では、距離情報がオンボードのレーダ及び/又はライダシステムによって提供され得る。或いは又は加えて、距離情報は、ホスト車両の環境から捕捉される1つ又は複数の画像を分析することによって導出することができる。例えば、画像内で表される認識された物体のピクセル数を求め、画像捕捉デバイスの既知の視野及び焦点距離のジオメトリと比較してスケール及び距離を決定することができる。例えば、既知の時間間隔にわたって画像から画像へと物体間のスケールの変化を観測することにより、速度及び加速度を決定することができる。この分析は、物体がホスト車両からどの程度速く離れているか又はホスト車両にどの程度速く近づいているかと共に、ホスト車両に向かう又はホスト車両から離れる移動方向を示し得る。既知の時間期間にわたるある画像から別の画像への物体のX座標の位置変化を分析することにより、横断速度を決定することができる。
歩行者1215は、緩衝区域1216を画定する歩行者エンベロープに関連し得る。幾つかの場合、課せられた厳密制約は、歩行者1215から(歩行者に対する任意の方向において)1メートルの距離内でホスト車両がナビゲートすることを禁じ得る。歩行者1215は、歩行者影響区域1220の位置を定めることもできる。この影響区域は、影響区域内のホスト車両の速度を制限する制約に関連し得る。影響区域は、歩行者1215から5メートル、10メートル、20メートル等広がり得る。影響区域の各等級に異なる制限速度を関連付けることができる。例えば、歩行者1215から1メートル〜5メートルの区域内では、ホスト車両は、5メートル〜10メートルに広がる歩行者影響区域内の制限速度未満であり得る第1の速度(例えば、10mphや20mph等)に限定され得る。影響区域の様々な段階に関する任意の等級を使用することができる。幾つかの実施形態では、第1の段階が1メートル〜5メートルよりも狭いことができ、1メートル〜2メートルにのみ及び得る。他の実施形態では、影響区域の第1の段階が1メートル(歩行者の周りの非ナビゲート区域の境界)から少なくとも10メートルの距離に広がり得る。次に、第2の段階は、10メートル〜少なくとも約20メートル広がり得る。第2の段階は、歩行者影響区域の第1の段階に関連する最大移動速度を上回るホスト車両の最大移動速度に関連し得る。
ホスト車両の環境内の検出されたシーンによって1つ又は複数の静的物体制約も関与され得る。例えば、画像1201では、少なくとも1つの処理デバイスが道路内にある箱1219等の静的物体を検出し得る。検出される静的物体は、道路内の木、ポール、道路標識、物体の少なくとも1つ等の様々な物体を含み得る。検出される静的物体に1つ又は複数の既定のナビゲーション制約が関連し得る。例えば、かかる制約は、静的物体エンベロープを含むことができ、静的物体エンベロープは、ホスト車両のナビゲーションがその内部で禁じられ得る物体の周りの緩衝区域を画定する。緩衝区域の少なくとも一部は、検出された静的物体の縁から所定の距離が広がり得る。例えば、画像1201によって表すシーンでは、少なくとも0.1メートル、0.25メートル、0.5メートル又はそれを超える緩衝区域が箱1219に関連することができ、そのため、ホスト車両は、検出された静的物体との衝突を回避するために少なくとも幾らかの距離(例えば、緩衝区域の距離)の分だけ箱の右側又は左側を通過する。
既定の厳密制約は、1つ又は複数の目標車両制約も含み得る。例えば、画像1201内で目標車両1217が検出され得る。ホスト車両が目標車両1217と衝突しないことを確実にするために、1つ又は複数の厳密制約を使用することができる。幾つかの場合、単一の緩衝区域の距離に目標車両エンベロープが関連し得る。例えば、緩衝区域は、全方向に目標車両を取り囲む1メートルの距離によって画定され得る。緩衝区域は、ホスト車両がその内部にナビゲートすることが禁じられる、目標車両から少なくとも1メートル広がる領域を画定し得る。
但し、目標車両1217を取り囲むエンベロープは、固定された緩衝距離によって画定される必要はない。幾つかの場合、目標車両(又はホスト車両の環境内で検出される他の任意の移動可能物体)に関連する既定の厳密制約は、検出された目標車両に対するホスト車両の向きに依存し得る。例えば、幾つかの場合、(例えば、ホスト車両が目標車両に向かって走行している場合のように目標車両からホスト車両の前部又は後部に及ぶ)縦方向の緩衝区域の距離が少なくとも1メートルであり得る。(例えば、ホスト車両が目標車両と同じ又は逆の方向に移動しており、そのため、ホスト車両の側部が目標車両の側部の直接横を通過する場合等、目標車両からホスト車両のいずれかの側部に及ぶ)横方向の緩衝区域の距離は、少なくとも0.5メートルであり得る。
上記で説明したように、ホスト車両の環境内の目標車両又は歩行者を検出することにより、他の制約を関与させることもできる。例えば、ホスト車両及び目標車両1217の予測軌道を検討することができ、2つの軌道が(例えば、交点1230において)交差するとき厳密制約は、
を要求することができ、ホスト車両は、車両1であり、目標車両1217は、車両2である。同様に、ホスト車両の予測軌道に対して(進行方向及び速度に基づく)歩行者1215の軌道を監視することができる。特定の歩行者の軌道を所与として、軌道上の全ての点pについて、t(p)は、歩行者が点p(すなわち図12の点1231)に到達するのにかかる時間を表す。歩行者から少なくとも1メートルの所要の緩衝距離を保つために、t(p)は、(ホスト車両が少なくとも1メートルの距離の差で歩行者の前を通過するように十分な時間差を伴って)ホスト車両が点pに到達する時間を上回らなければならず、又は(例えば、ホスト車両がブレーキをかけて歩行者に道を譲る場合)t(p)は、ホスト車両が点pに到達する時間を下回らなければならない。更に後者の例では、ホスト車両が歩行者の背後を通過し、少なくとも1メートルの所要の緩衝距離を保つことができるように、ホスト車両が歩行者よりも十分遅い時間に点pに到達することを厳密制約が要求する。
他の厳密制約も使用することができる。例えば、少なくとも幾つかの場合、ホスト車両の最大減速率を使用することができる。この最大減速率は、(例えば、後向きカメラから収集される画像を使用し)ホスト車両を追走する目標車両までの検出距離に基づいて決定することができる。厳密制約は、検知した横断歩道又は踏切における強制的な停止又は他の適用可能な制約を含み得る。
1つ又は複数の既定のナビゲーション制約が関与され得ることをホスト車両の環境内のシーンの分析が示す場合、ホスト車両の1つ又は複数の計画されたナビゲーション動作に対してそれらの制約を課すことができる。例えば、運転ポリシモジュール803が所望のナビゲーション動作を返すことをシーンの分析がもたらす場合、その所望のナビゲーション動作を1つ又は複数の関与される制約に対してテストすることができる。所望のナビゲーション動作が関与される制約の任意の側面に違反すると決定される場合(例えば、ホスト車両が歩行者1215から少なくとも1.0メートルに留まることを既定の厳密制約が要求するとき、所望のナビゲーション動作が歩行者1215の0.7メートルの距離内にホスト車両を運ぶ場合)、1つ又は複数の既定のナビゲーション制約に基づいて所望のナビゲーション動作に対する少なくとも1つの修正を加えることができる。この方法で所望のナビゲーション動作を調節することは、ホスト車両の環境内で検出される特定のシーンによって関与される制約に準拠してホスト車両の実際のナビゲーション動作をもたらすことができる。
ホスト車両の実際のナビゲーション動作を決定した後、決定されたホスト車両の実際のナビゲーション動作に応じてホスト車両のナビゲーションアクチュエータの少なくとも1つの調節を引き起こすことにより、そのナビゲーション動作を実施することができる。このナビゲーションアクチュエータは、ホスト車両の操舵メカニズム、ブレーキ又はアクセルの少なくとも1つを含み得る。
優先順位付けされた制約
上記で説明したように、ホスト車両の安全な動作を確実にするために様々な厳密制約をナビゲーションシステムと共に使用することができる。制約は、とりわけ歩行者、目標車両、道路障壁若しくは検出される物体に対する最小安全運転距離、検出される歩行者の影響区域内を通過するときの最大移動速度又はホスト車両の最大減速率を含み得る。これらの制約は、機械学習(教師あり、強化又はその組み合わせ)に基づいてトレーニングされるトレーニング済みシステムによって課すことができるが、(例えば、ホスト車両の環境のシーン内で生じる予期される状況に直接対処するアルゴリズムを使用する)トレーニングされていないシステムでも有用であり得る。
いずれにせよ、制約の階層があり得る。換言すれば、一部のナビゲーション制約が他のナビゲーション制約に優先する場合がある。従って、関与される全ての制約を満たすことになるナビゲーション動作を利用できない状況が発生した場合、ナビゲーションシステムは、最も高い優先順位の制約を最初に実現する利用可能なナビゲーション動作を決定することができる。例えば、システムは、たとえ歩行者を回避するナビゲーションが道路内で検出される別の車両又は物体との衝突を引き起こすことになっても、車両に歩行者をまず回避させることができる。別の例では、システムは、歩行者を回避するために車両にカーブを乗り上げさせることができる。
図13は、ホスト車両の環境内のシーンの分析に基づいて決定される関与される制約の階層を実装するためのアルゴリズムを示すフローチャートを示す。例えば、ステップ1301では、ナビゲーションシステムに関連する少なくとも1つのプロセッサ(例えば、EyeQプロセッサ等)は、ホスト車両の環境を表す複数の画像をホスト車両の搭載カメラから受信することができる。ステップ1303において、ホスト車両の環境のシーンを表す1つ又は複数の画像を分析することにより、ホスト車両に関連するナビゲーション状態を決定することができる。例えば、ナビゲーション状態は、シーンの様々な特性の中でも、図12にあるようにホスト車両が2レーン道路1210に沿って移動していること、目標車両1217がホスト車両の前方の交差点を進んでいること、ホスト車両が移動する道路を渡るために歩行者1215が待っていること、ホスト車両のレーンの前方に物体1219があることを特に示し得る。
ステップ1305では、ホスト車両のナビゲーション状態によって関与される1つ又は複数のナビゲーション制約を決定することができる。例えば、少なくとも1つの処理デバイスは、1つ又は複数の捕捉画像によって表されるホスト車両の環境内のシーンを分析した後、捕捉画像の画像分析によって認識される物体、車両、歩行者等によって関与される1つ又は複数のナビゲーション制約を決定することができる。幾つかの実施形態では、少なくとも1つの処理デバイスは、ナビゲーション状態によって関与される少なくとも第1の既定のナビゲーション制約及び第2の既定のナビゲーション制約を決定することができ、第1の既定のナビゲーション制約は、第2の既定のナビゲーション制約と異なり得る。例えば、第1のナビゲーション制約は、ホスト車両の環境内で検出される1つ又は複数の目標車両に関係することができ、第2のナビゲーション制約は、ホスト車両の環境内で検出される歩行者に関係することができる。
ステップ1307では、少なくとも1つの処理デバイスは、ステップ1305で識別された制約に関連する優先順位を決定することができる。説明する例では、歩行者に関係する第2の既定のナビゲーション制約は、目標車両に関係する第1の既定のナビゲーション制約よりも高い優先順位を有し得る。ナビゲーション制約に関連する優先順位は、様々な要因に基づいて決定されるか又は割り当てられ得るが、幾つかの実施形態では、ナビゲーション制約の優先順位は、安全性の観点から見たその相対的な重要性に関係し得る。例えば、できるだけ多くの状況において、全ての実装されたナビゲーション制約に従うか又はそれを満たすことが重要であり得るが、一部の制約は、他の制約よりも強い安全性リスクに関連する場合があり、従ってより高い優先順位を割り当てることができる。例えば、ホスト車両が歩行者から少なくとも1メートルの間隔を保つことを要求するナビゲーション制約は、ホスト車両が目標車両から少なくとも1メートルの間隔を保つことを要求する制約よりも高い優先順位を有し得る。これは、歩行者との衝突の方が別の車両との衝突よりも深刻な結果を有し得るからであり得る。同様に、ホスト車両と目標車両との間の間隔を保つことは、ホスト車両が道路内の箱を回避すること、減速バンプ上において一定速度未満で走行すること、又はホスト車両の搭乗者を最大加速度レベル以下にさらすことを要求する制約よりも高い優先順位を有し得る。
運転ポリシモジュール803は、特定のシーン又はナビゲーション状態によって関与されるナビゲーション制約を満たすことで安全性を最大化するように設計されるが、状況により関与される全ての制約を満たすことが物理的に不可能であり得る。ステップ1309に示すように、そのような状況では、関与される各制約の優先順位を使用して関与される制約のいずれが最初に満たされるべきかを決定することができる。上記の例を続け、歩行者との間隙の制約及び目標車両との間隙の制約の両方を満たすことができず、制約の一方のみを満たすことができる状況では、歩行者との間隙の制約のより高い優先順位は、目標車両までの間隙を保とうと試みる前に制約が満たされることをもたらし得る。従って、通常の状況では、ステップ1311に示すように、第1の既定のナビゲーション制約及び第2の既定のナビゲーション制約の両方を満たすことができる場合、少なくとも1つの処理デバイスは、ホスト車両の識別されたナビゲーション状態に基づいて、第1の既定のナビゲーション制約及び第2の既定のナビゲーション制約の両方を満たすホスト車両のための第1のナビゲーション動作を決定することができる。しかし、関与される全ての制約を満たすことができない他の状況では、ステップ1313に示すように、第1の既定のナビゲーション制約及び第2の既定のナビゲーション制約の両方を満たすことができない場合、少なくとも1つの処理デバイスは、識別されたナビゲーション状態に基づいて、第2の既定のナビゲーション制約(すなわち優先順位が高い方の制約)を満たすが、第1の既定のナビゲーション制約(第2のナビゲーション制約よりも低い優先順位を有する)を満たさないホスト車両のための第2のナビゲーション動作を決定することができる。
次に、ステップ1315では、決定されたホスト車両のためのナビゲーション動作を実施するために、少なくとも1つの処理デバイスは、ホスト車両のための決定された第1のナビゲーション動作又は決定された第2のナビゲーション動作に応じてホスト車両のナビゲーションアクチュエータの少なくとも1つの調節を引き起こすことができる。先の例と同様に、ナビゲーションアクチュエータは、操舵メカニズム、ブレーキ又はアクセルの少なくとも1つを含み得る。
制約緩和
上記で論じたように、安全のためにナビゲーション制約を課すことができる。制約は、とりわけ歩行者、目標車両、道路障壁若しくは検出される物体に対する最小安全運転距離、検出される歩行者の影響区域内を通過するときの最大移動速度又はホスト車両の最大減速率を含み得る。これらの制約は、学習ナビゲーションシステム又は非学習ナビゲーションシステム内で課すことができる。特定の状況では、これらの制約を緩和することができる。例えば、ホスト車両が歩行者の近くで減速又は停止し、歩行者のそばを通過する意図を伝えるためにゆっくり進む場合、取得画像から歩行者の反応を検出することができる。歩行者の反応がじっとしていること又は動くことをやめることである場合(及び/又は歩行者とのアイコンタクトが検知される場合)、歩行者のそばを通過するナビゲーションシステムの意図を歩行者が認識したと理解することができる。そのような状況では、システムは、1つ又は複数の既定の制約を緩和し、あまり厳しくない制約を実施する(例えば、より厳格な1メートルの境界内ではなく、歩行者の0.5メートルの範囲内を車両がナビゲートすることを可能にする)ことができる。
図14は、1つ又は複数のナビゲーション制約を緩和することに基づいてホスト車両の制御を実施するためのフローチャートを示す。ステップ1401では、少なくとも1つの処理デバイスは、ホスト車両の環境を表す複数の画像をホスト車両に関連するカメラから受信することができる。ステップ1403で画像を分析することは、ホスト車両に関連するナビゲーション状態を識別することを可能にし得る。ステップ1405では、少なくとも1つのプロセッサは、ホスト車両のナビゲーション状態に関連するナビゲーション制約を決定することができる。ナビゲーション制約は、ナビゲーション状態の少なくとも1つの側面によって関与される第1の既定のナビゲーション制約を含み得る。ステップ1407では、複数の画像を分析することは、少なくとも1つのナビゲーション制約緩和要因の存在を決定し得る。
ナビゲーション制約緩和要因は、1つ又は複数のナビゲーション制約が少なくとも1つの側面において中断され、変更され、さもなければ緩和され得る任意の適切なインジケータを含み得る。幾つかの実施形態では、少なくとも1つのナビゲーション制約緩和要因は、歩行者の目がホスト車両の方向を見ているという(画像分析に基づく)決定を含み得る。その場合、歩行者がホスト車両を認識しているとより安全に見なすことができる。その結果、ホスト車両の経路内に歩行者が移動することを引き起こす予期せぬ動作に歩行者が関与しない信頼度が一層高くなり得る。他の制約緩和要因も使用することができる。例えば、少なくとも1つのナビゲーション制約緩和要因は、動いていないと決定される歩行者(例えば、ホスト車両の経路に入る可能性が低いと推定される者)又はその動きが減速していると決定される歩行者を含み得る。ホスト車両が停止したとき動いていないと決定され、その後移動を再開する歩行者等、ナビゲーション制約緩和要因はより複雑な動作も含むことができる。そのような状況では、ホスト車両が優先通行権を有することを歩行者が理解していると見なすことができ、停止する歩行者は、ホスト車両に道を譲る自らの意図を示唆することができる。1つ又は複数の制約を緩和させ得る他の状況は、縁石の種類(例えば、低い縁石又は傾斜が緩やかなスロープは、距離制約の緩和を可能にし得る)、歩道上に歩行者又は他の物体がないこと、自らのエンジンがかかっていない車両は緩和された距離を有することができ、又はホスト車両の進行先の領域から歩行者の向きがそれている状況及び/又は歩行者が離れている状況を含む。
ナビゲーション制約緩和要因の存在を(例えば、ステップ1407で)識別すると、制約緩和要因を検出することに応じて第2のナビゲーション制約を決定又は開発することができる。この第2のナビゲーション制約は、第1のナビゲーション制約と異なることができ、第1のナビゲーション制約と比較して緩和された少なくとも1つの特性を含み得る。第2のナビゲーション制約は、第1の制約に基づく新たに生成される制約を含むことができ、新たに生成される制約は、少なくとも1つの点において第1の制約を緩和する少なくとも1つの修正を含む。或いは、第2の制約は、少なくとも1つの点において第1のナビゲーション制約よりも厳しくない所定の制約を構成し得る。幾つかの実施形態では、ホスト車両の環境内で制約緩和要因が識別される状況でのみ使用するために、この第2の制約を確保しておくことができる。第2の制約が新たに生成されようと、完全に又は部分的に利用可能な所定の制約の組から選択されようと、(関連するナビゲーション制約緩和要因の検出がなければ適用され得る)より厳しい第1のナビゲーション制約の代わりの第2のナビゲーション制約の応用を制約緩和と呼ぶことができ、ステップ1409で実現することができる。
ステップ1407で少なくとも1つの制約緩和要因を検出し、ステップ1409で少なくとも1つの制約を緩和した場合、ステップ1411でホスト車両のためのナビゲーション動作を決定することができる。ホスト車両のためのナビゲーション動作は、識別されたナビゲーション状態に基づくことができ、第2のナビゲーション制約を満たすことができる。ステップ1413では、決定されたナビゲーション動作に応じてホスト車両のナビゲーションアクチュエータの少なくとも1つの調節を引き起こすことにより、そのナビゲーション動作を実施することができる。
上記で論じたように、ナビゲーション制約及び緩和されたナビゲーション制約を使用することは、(例えば、機械学習によって)トレーニングされたナビゲーションシステム又はトレーニングされていないナビゲーションシステム(例えば、特定のナビゲーション状態に応じて所定の動作で応答するようにプログラムされたシステム)と共に用いることができる。トレーニング済みナビゲーションシステムを使用する場合、特定のナビゲーション状況に対する緩和されたナビゲーション制約の可用性は、トレーニング済みシステムの応答からトレーニングされていないシステムの応答へのモードの切り替えを表し得る。例えば、トレーニング済みナビゲーションネットワークは、第1のナビゲーション制約に基づいてホスト車両のための元のナビゲーション動作を決定することができる。しかし、車両が行う動作は、第1のナビゲーション制約を満たすナビゲーション動作と異なるものであり得る。むしろ、行われる動作は、より緩和された第2のナビゲーション制約を満たすことができ、(例えば、ナビゲーション制約緩和要因があること等、ホスト車両の環境内の特定の条件を検出することに応じて)トレーニングされていないシステムによって開発される動作であり得る。
ホスト車両の環境内で制約緩和要因を検出することに応じて緩和され得るナビゲーション制約の多くの例がある。例えば、既定のナビゲーション制約が、検出された歩行者に関連する緩衝区域を含み、緩衝区域の少なくとも一部が、検出された歩行者から所定の距離が広がる場合、(新たに開発される、所定の組からメモリから呼び出される、又は既存の制約の緩和バージョンとして生成される)緩和されたナビゲーション制約は、異なるか又は修正された緩衝区域を含み得る。例えば、異なるか又は修正された緩衝区域は、検出された歩行者に対する元の又は未修正の緩衝区域よりも短い歩行者に対する距離を有し得る。その結果、適切な制約緩和要因がホスト車両の環境内で検出される場合、緩和された制約を考慮し、検出された歩行者のより近くにナビゲートすることをホスト車両が許可され得る。
ナビゲーション制約の緩和される特性は、上記で述べたように少なくとも1人の歩行者に関連する緩衝区域の低減される幅を含み得る。但し、緩和される特性は、目標車両に関連する緩衝区域の低減される幅、検出物体、路傍障壁又はホスト車両の環境内で検出される他の任意の物体も含み得る。
少なくとも1つの緩和される特性は、ナビゲーション制約特性における他の種類の修正も含み得る。例えば、緩和される特性は、少なくとも1つの既定のナビゲーション制約に関連する速度増加を含み得る。緩和される特性は、少なくとも1つの既定のナビゲーション制約に関連する許容可能な最大減速度/加速度の増加も含み得る。
上記のように特定の状況では制約を緩和することができるが、他の状況ではナビゲーション制約を増補することができる。例えば、一部の状況では、ナビゲーションシステムは、通常のナビゲーション制約の組を増補することを諸条件が正当化すると決定し得る。かかる増補は、既定の制約の組に新たな制約を追加すること又は既定の制約の1つ又は複数の側面を調節することを含み得る。この追加又は調節は、通常の運転条件下で適用可能な既定の制約の組に対してより慎重なナビゲーションをもたらし得る。制約の増補を正当化し得る条件は、センサの故障や不利な環境条件(視認性の低下又は車両の静止摩擦の低下に関連する雨、雪、霧又は他の条件)等を含み得る。
図15は、1つ又は複数のナビゲーション制約を増補することに基づいてホスト車両の制御を実施するためのフローチャートを示す。ステップ1501では、少なくとも1つの処理デバイスは、ホスト車両の環境を表す複数の画像をホスト車両に関連するカメラから受信することができる。ステップ1503で画像を分析することは、ホスト車両に関連するナビゲーション状態を識別することを可能にし得る。ステップ1505では、少なくとも1つのプロセッサは、ホスト車両のナビゲーション状態に関連するナビゲーション制約を決定することができる。ナビゲーション制約は、ナビゲーション状態の少なくとも1つの側面によって関与される第1の既定のナビゲーション制約を含み得る。ステップ1507では、複数の画像を分析することは、少なくとも1つのナビゲーション制約増補要因の存在を決定し得る。
関与されるナビゲーション制約は、(例えば、図12に関して)上記で論じたナビゲーション制約のいずれか又は他の任意の適切なナビゲーション制約を含み得る。ナビゲーション制約増補要因は、1つ又は複数のナビゲーション制約が少なくとも1つの側面において補足/増補され得る任意のインジケータを含み得る。ナビゲーション制約の補足又は増補は、(例えば、所定の制約の組に新たなナビゲーション制約を追加することにより)組ごとに行うことができ、又は制約ごとに行うことができる(例えば、修正される制約が元よりも制限的であるように特定の制約を修正すること、又は所定の制約に対応する新たな制約を追加することであり、新たな制約は、少なくとも1つの側面において対応する制約よりも制限的である)。加えて又は或いは、ナビゲーション制約の補足又は増補は、階層に基づく所定の制約の組の中から選択することを指す場合もある。例えば、ホスト車両の環境内で又はホスト車両に対してナビゲーション増補要因が検出されるかどうかに基づき、増補された制約の組が選択のために提供され得る。増補要因が検出されない通常の条件下では、関与されるナビゲーション制約は、通常の条件に適用可能な制約から導くことができる。他方では、1つ又は複数の制約増補要因が検出される場合、関与される制約は、1つ又は複数の増補要因に対して生成されるか又は予め定められる増補された制約から導くことができる。増補された制約は、通常の条件下で適用可能な対応する制約よりも少なくとも1つの側面において制限的であり得る。
幾つかの実施形態では、少なくとも1つのナビゲーション制約増補要因は、ホスト車両の環境内の路面上に氷、雪又は水があることを(例えば、画像分析に基づいて)検出することを含み得る。この決定は、例えば、乾燥した道路で予期されるよりも反射率が高い領域(例えば、道路上の氷又は水を示す)、雪があることを示す路面上の白色領域、道路上に縦方向の溝(例えば、雪中のタイヤ跡)があることと合致する道路上の影、ホスト車両のフロントガラス上の水滴若しくは氷/雪の小さい粒又は路面上に水若しくは氷/雪があることの他の任意の適切なインジケータを検出することに基づき得る。
少なくとも1つのナビゲーション制約増補要因は、ホスト車両のフロントガラスの外面上の小さい粒を検出することも含み得る。かかる小さい粒は、ホスト車両に関連する1つ又は複数の画像捕捉デバイスの画質を損なう可能性がある。ホスト車両のフロントガラスの裏側に搭載されるカメラに関連するホスト車両のフロントガラスに関して説明したが、ホスト車両に関連する他の面上(例えば、カメラのレンズ若しくはレンズカバー、ヘッドライトレンズ、リアウィンドウ、テールライトレンズ又は画像捕捉デバイスにとって可視の(又はセンサによって検出される)ホスト車両の他の任意の面上の小さい粒を検出することもナビゲーション制約増補要因があることを示し得る。
ナビゲーション制約増補要因は、1つ又は複数の画像取得装置の特性として検出することもできる。例えば、ホスト車両に関連する画像捕捉デバイス(例えば、カメラ)によって捕捉される1つ又は複数の画像の画質の検出される低下もナビゲーション制約増補要因を構成し得る。画質の低下は、画像捕捉デバイス又は画像捕捉デバイスに関連するアセンブリに関連するハードウェアの故障若しくは部分的なハードウェアの故障に関連する場合がある。かかる画質の低下は、環境条件によって引き起こされる場合もある。例えば、ホスト車両を取り囲む空気中に煙、霧、雨、雪等があることは、ホスト車両の環境内にあり得る道路、歩行者、目標車両等に関する画質の低下に寄与する場合もある。
ナビゲーション制約増補要因は、ホスト車両の他の側面にも関係し得る。例えば、一部の状況では、ナビゲーション制約増補要因は、ホスト車両に関連するシステム又はセンサの検出された故障又は部分的な故障を含み得る。かかる増補要因は、例えば、ホスト車両のナビゲーション状態に関連するナビゲーション制約に関連してホスト車両がナビゲートする能力に影響を及ぼし得る、ホスト車両に関連する速度センサ、GPS受信機、加速度計、カメラ、レーダ、ライダ、ブレーキ、タイヤ又は他の任意のシステムの故障又は部分的な故障を検出することを含み得る。
ナビゲーション制約増補要因があることが(例えば、ステップ1507で)識別される場合、制約増補要因を検出することに応じて第2のナビゲーション制約を決定又は開発することができる。この第2のナビゲーション制約は、第1のナビゲーション制約と異なることができ、第1のナビゲーション制約に対して増補される少なくとも1つの特性を含み得る。ホスト車両の環境内の又はホスト車両に関連する制約増補要因を検出することは、通常の動作条件と比較してホスト車両の少なくとも1つのナビゲーション能力が低下している可能性があることを示唆し得るため、第2のナビゲーション制約は、第1のナビゲーション制約よりも制限的であり得る。そのような能力の低下は、道路の静止摩擦の低下(例えば、道路上の氷、雪又は水、タイヤ空気圧の低下等)、視界が損なわれること(例えば、捕捉画質を下げる雨、雪、塵、煙、霧等)、検出能力が損なわれること(例えば、センサの故障又は部分的な故障、センサの性能低下等)、又は検出されるナビゲーション状態に応じてホスト車両がナビゲートする能力の他の任意の低下を含み得る。
ステップ1507で少なくとも1つの制約増補要因を検出し、ステップ1509で少なくとも1つの制約を増補している場合、ステップ1511でホスト車両のためのナビゲーション動作を決定することができる。ホスト車両のためのナビゲーション動作は、識別されたナビゲーション状態に基づくことができ、第2のナビゲーション(すなわち増補された)制約を満たすことができる。ステップ1513では、決定されたナビゲーション動作に応じてホスト車両のナビゲーションアクチュエータの少なくとも1つの調節を引き起こすことにより、そのナビゲーション動作を実施することができる。
先に論じたように、ナビゲーション制約及び増補されたナビゲーション制約を使用することは、(例えば、機械学習によって)トレーニング済みナビゲーションシステム又はトレーニングされていないナビゲーションシステム(例えば、特定のナビゲーション状態に応じて所定の動作で応答するようにプログラムされたシステム)と共に用いることができる。トレーニング済みナビゲーションシステムを使用する場合、特定のナビゲーション状況に対する増補されたナビゲーション制約の可用性は、トレーニング済みシステムの応答からトレーニングされていないシステムの応答へのモードの切り替えを表し得る。例えば、トレーニング済みナビゲーションネットワークは、第1のナビゲーション制約に基づいてホスト車両のための元のナビゲーション動作を決定することができる。しかし、車両が行う動作は、第1のナビゲーション制約を満たすナビゲーション動作と異なるものであり得る。むしろ、行われる動作は、増補された第2のナビゲーション制約を満たすことができ、(例えば、ナビゲーション制約増補要因があること等、ホスト車両の環境内の特定の条件を検出することに応じて)トレーニングされていないシステムによって開発される動作であり得る。
ホスト車両の環境内で制約増補要因を検出することに応じて生成されるか、補足されるか、又は増補され得るナビゲーション制約の多くの例がある。例えば、既定のナビゲーション制約が、検出された歩行者、物体、車両等に関連する緩衝区域を含み、緩衝区域の少なくとも一部が、検出された歩行者/物体/車両から所定の距離が広がる場合、(新たに開発される、所定の組からメモリから呼び出される、又は既存の制約の増補バージョンとして生成される)増補されたナビゲーション制約は、異なるか又は修正された緩衝区域を含み得る。例えば、異なるか又は修正された緩衝区域は、検出された歩行者/物体/車両に対する元の又は未修正の緩衝区域よりも長い歩行者/物体/車両に対する距離を有し得る。その結果、適切な制約増補要因がホスト車両の環境内で又はホスト車両に関連して検出される場合、増補された制約を考慮し、検出された歩行者/物体/車両のより遠くをナビゲートすることをホスト車両が強制され得る。
少なくとも1つの増補される特性は、ナビゲーション制約特性における他の種類の修正も含み得る。例えば、増補される特性は、少なくとも1つの既定のナビゲーション制約に関連する速度低下を含み得る。増補される特性は、少なくとも1つの既定のナビゲーション制約に関連する許容可能な最大減速度/加速度の低下も含み得る。
長期計画に基づくナビゲーション
幾つかの実施形態では、開示するナビゲーションシステムは、ホスト車両の環境内の検出されたナビゲーション状態に応答できるだけではなく、長期計画に基づいて1つ又は複数のナビゲーション動作を決定することもできる。例えば、システムは、検出されるナビゲーション状態に関してナビゲートするための選択肢として利用可能な1つ又は複数のナビゲーション動作の将来のナビゲーション状態に対する潜在的影響を検討することができる。将来の状態に対する利用可能な動作の効果を検討することは、ナビゲーションシステムが現在検出しているナビゲーション状態のみに基づいてではなく、長期計画にも基づいてナビゲーション動作を決定することを可能にし得る。長期計画技法を使用するナビゲーションは、利用可能な選択肢の中からナビゲーション動作を選択するための技法としてナビゲーションシステムによって1つ又は複数の報酬関数が使用される場合に特に適用可能であり得る。ホスト車両の検出された現在のナビゲーション状態に応じて行うことができる利用可能なナビゲーション動作に関して潜在的報酬を分析することができる。但し、更に現在のナビゲーション状態に対する利用可能な動作から生じると予測される将来のナビゲーション状態に応じて行うことができる動作に関連して潜在的報酬を分析することもできる。その結果、たとえ選択されるナビゲーション動作が、現在のナビゲーション状態に応じて行うことができる利用可能な動作の中で最も高い報酬をもたらさない可能性があっても、一部の事例では、開示するナビゲーションシステムは、検出されるナビゲーション状態に応じてナビゲーション動作を選択する場合がある。これは、とりわけ、被選択動作又は一部の事例では現在のナビゲーション状態に対して利用可能な動作のいずれかよりも高い報酬を与える1つ又は複数の潜在的なナビゲーション動作のきっかけを作る将来のナビゲーション状態を被選択動作がもたらし得るとシステムが決定する場合に該当し得る。この原理は、報酬が高い選択肢を将来もたらすため、より有利でない動作を現在行うものとしてより単純に表すことができる。従って、長期計画が可能な開示するナビゲーションシステムは、報酬の短期的な損失が長期的な報酬の増加をもたらし得ることを長期予測が示す場合、次善の短期動作を選択することができる。
概して、自律運転の応用は、長期目的を最適化するためにナビゲーションシステムが即時の動作を決定し得る一連の計画問題を含み得る。例えば、車両が環状交差路において合流する状況に直面した場合、ナビゲーションシステムは、環状交差路内へのナビゲーションを開始するために即時の加速コマンド又はブレーキコマンドを決定することができる。環状交差路において検出されるナビゲーション状態に対する即時の動作は、検出される状態に応じた加速コマンド又はブレーキコマンドを含み得るが、長期目的は、合流に成功することであり、選択されるコマンドの長期的効果は、合流の成功/失敗である。問題を2つのフェーズに分解することによって計画問題に対処することができる。第1に、(現在の表現に対して予測因子が可微分であると仮定して)現在に基づいて近い将来を予測するために教師あり学習を適用することができる。第2に、回帰ニューラルネットワークを使用してエージェントの完全な軌道をモデリングすることができ、説明されていない要因は、(付加的)入力ノードとしてモデリングされる。これは、教師あり学習法及び回帰ニューラルネットワーク上の直接の最適化を使用して長期計画問題に対する解を求めることを可能にし得る。かかる手法は、環境に対する敵対要素を組み込むことによってロバストなポリシの学習を可能にすることもできる。
自律運転システムの最も基本的な要素の2つは、検知及び計画である。検知は、環境の現在の状態のコンパクト表現を見つけることに取り組むのに対し、計画は、将来の目的を最適化するためにいずれの動作を行うかを決定することに取り組む。検知の問題を解くのに教師あり機械学習法が有用である。計画の部分について機械学習アルゴリズムフレームワーク、とりわけ上記で記載したような強化学習(RL)フレームワークを使用することもできる。
RLは、一連の連続したラウンドによって実行することができる。ラウンドtでは、プランナ(別名エージェント又は運転ポリシモジュール803)は、エージェント並びに環境を表す状態s
t∈Sを観測し得る。次いで、プランナは、動作a
t∈Aを決定すべきである。動作を実行した後、エージェントは、即時の報酬
を受信し、新たな状態s
t+1に移される一例として、ホスト車両は、適応走行制御(ACC)システムを含むことができ、ACCでは、スムーズな運転を維持しながら先行車両までの十分な距離を保つために、車両が加速/ブレーキを自律的に実施すべきである。状態は、対
としてモデリングすることができ、x
tは、先行車両までの距離であり、v
tは、先行車両の速度に対するホスト車両の速度である。動作
は、加速コマンドである(a
t<0が成立する場合にはホスト車両が減速する)。報酬は、(運転のスムーズさを反映する)|a
t|及び(ホスト車両が先行車両から安全な距離を保つことを反映する)s
tに依存する関数であり得る。プランナの目標は、(場合により対象期間又は将来の報酬の割り引かれた和まで)累積報酬を最大化することである。それを行うために、プランナは、状態を動作にマップするポリシπ:S→Aを利用することができる。
教師あり学習(SL)は、RLの特別な事例と見なすことができ、教師あり学習ではSにわたる幾らかの分布からstがサンプリングされ、報酬関数は、rt=−l(at,yt)の形式を有することができ、lは、損失関数であり、学習側は、状態stを認めるときに行うのに最適な動作の(場合により雑音の多い)値であるytの値を観測する。全般的なRLのモデルとSLの特定の事例との間には幾らかの差がある場合があり、それらの差は、全般的なRLの問題をより困難にし得る。
一部のSLの状況では、学習側が行う動作(又は予測)が環境への影響を有さない場合がある。換言すれば、st+1とatとが独立している。これは、2つの重要な含意を有し得る。まず、SLでは、サンプル(s1,y1),...,(sm,ym)を事前に収集することができ、そうすることにより、初めてサンプルに対して優れた精度を有するポリシ(又は予測因子)の探索を開始することができる。対照的に、RLでは、状態st+1は、通常、行われる動作(更に前の状態)に依存し、行われる動作は、従って、動作を生成するために使用されるポリシに依存する。これは、データ生成プロセスをポリシ学習プロセスに結び付ける。第2に、SLでは動作が環境に影響を及ぼさないため、πの性能に対するatの選択の寄与度は、局所的である。具体的には、atは、即時の報酬の値にのみ影響を及ぼす。対照的にRLでは、ラウンドtで行われる動作は、将来のラウンドにおける報酬値に対して長期的効果を有し得る。
SLでは、報酬の形状rt=−l(at,yt)と共に「正しい」解ytの知識は、atの可能な全ての選択肢に関する報酬の完全な知識を提供することができ、それは、atに関する報酬の微分の計算を可能にし得る。対照的に、RLでは、報酬の「ワンショット」値は、行われる動作の特定の選択について観測することができる全てであり得る。これを「バンディット」フィードバックと呼ぶことができる。RLベースのシステムでは、「バンディット」フィードバックのみを入手できる場合、システムは、行われた動作が行うのに最良の動作であったかどうかを常に知ることができない可能性があるため、これは、長期的なナビゲーション計画の一部として「探索」が必要である最も重要な理由の1つである。
多くのRLアルゴリズムは、マルコフ決定プロセス(MDP)の数学的に明解なモデルに少なくとも部分的に依存する。マルコフ仮定は、st及びatを所与としてst+1の分布が完全に決定されるものである。これは、MDPの状態にわたる定常分布に関して所与のポリシの累積報酬の閉形式をもたらす。ポリシの定常分布は、線形計画問題に対する解として表すことができる。これは、1)ポリシ探索と呼ぶことができる主問題に関する最適化及び2)その変数が価値関数Vπと呼ばれる双対問題に関する最適化という2つのアルゴリズム群をもたらす。価値関数は、MDPが初期状態sから始まり、そこからπに従って動作が選択される場合に期待累積報酬を決定する。関係する量は、状態−動作価値関数Qπ(s,a)であり、この関数は、状態sからの開始、即時に選択される動作a及びそこからπに従って選択される動作を仮定し累積報酬を決定する。このQ関数は、(ベルマン方程式を使用する)最適なポリシの特徴付けを引き起こし得る。具体的には、このQ関数は、最適なポリシがSからAへの決定論的関数であると示すことができる(実際には、最適なポリシは、最適なQ関数に関する「貪欲な」ポリシとして特徴付けることができる)。
MDPモデルの1つの潜在的な利点は、MDPモデルがQ関数を使用して将来を現在に結合することを可能にすることである。例えば、ホスト車両が現在sの状態にあることを所与とし、Qπ(s,a)の値は、将来に対して動作aを実行する効果を示し得る。従って、Q関数は、動作aの品質の局所的測度を提供し、それによりRL問題をSLのシナリオとより同様にすることができる。
多くのRLアルゴリズムがV関数又はQ関数を何らかの方法で近似する。価値反復アルゴリズム、例えばQ学習アルゴリズムは、最適なポリシのV関数及びQ関数がベルマン方程式から得られる何らかの演算子の不動点であり得ることを利用することができる。Actor−criticなポリシ反復アルゴリズムは、反復的な方法でポリシを学習することを目標とし、反復tにおいて、「critic」は、
を推定し、この推定に基づいて、「actor」は、ポリシを改善する。
MDPの数学的な簡素さ及びQ関数表現に切り替える便利さにもかかわらず、この手法は、幾つかの制限を有し得る。例えば、幾つかの場合、マルコフの挙動状態の近似の概念が見つかり得る全てである場合がある。更に、状態の遷移は、エージェントの動作だけではなく、環境内の他のプレーヤの動作にも依存し得る。例えば、上記のACCの例では、自律車両の動力学は、マルコフ式であり得るが、次の状態は、必ずしもマルコフ式ではない他の車のドライバーの挙動に依存する場合がある。この問題に対する1つの可能な解決策は、部分的に観測されるMDPを使用することであり、部分的に観測されるMDPでは、マルコフ状態はあるが、見ることができるのは、隠れ状態に従って分散される観測であると仮定される。
より直接的な手法は、MDPのゲーム理論的汎用化を検討することができる(例えば、確率ゲームの枠組み)。実際、MDPのためのアルゴリズムは、マルチエージェントゲームに汎用化することができる(例えば、ミニマックスQ学習又はナッシュQ学習)。他の手法は、他のプレーヤの明確なモデリング及びvanishing regret学習アルゴリズムを含み得る。マルチエージェント設定内での学習は、単一エージェント設定内での学習よりも複雑であり得る。
Q関数表現の第2の制限は、表形式設定から逸脱することによって生じ得る。表形式設定は、状態及び動作の数が少なく、そのため、Qを|S|行及び|A|列の表として表すことができる場合である。しかし、S及びAの自然表現がユークリッド空間を含み、状態空間及び動作空間が離散化される場合、状態/動作の数は、規模の点で指数関数的であり得る。そのような場合、表形式設定を採用することが実用的でない可能性がある。代わりに、Q関数は、パラメトリック仮説クラスからの一部の関数によって近似され得る(例えば、特定のアーキテクチャのニューラルネットワーク)。例えば、ディープQネットワーク(DQN)学習アルゴリズムを使用することができる。DQNでは、状態空間が連続的であり得るが、動作空間は、小さい離散集合のままであり得る。連続的な動作空間に対応するための手法が可能であるが、それらは、Q関数を近似することに依存する可能性がある。いずれにせよ、Q関数は、複雑且つ雑音に敏感な可能性があり、従って学習が困難であり得る。
異なる手法は、回帰ニューラルネットワーク(RNN)を使用してRLの問題に対処することであり得る。幾つかの場合、RNNは、マルチエージェントゲームの概念及びゲーム理論からの敵対環境へのロバスト性と組み合わせることができる。更に、この手法は、マルコフ仮定に明確に依存しないものであり得る。
以下では、予測に基づく計画によるナビゲーションのための手法をより詳細に説明する。この手法では、状態空間Sは、
のサブセットであり、状態空間Aは、
のサブセットであると仮定することができる。これは、多くの応用において自然な表現であり得る。上記で述べたように、RLとSLとの間には2つの主な違いがある場合があり、その違いは、すなわち、(1)過去の動作が将来の報酬に影響するため、将来からの情報を過去に再び伝える必要があり得ること、及び(2)報酬の「バンディット」な性質は、(状態,動作)と報酬との間の依存関係を曖昧にする可能性があり、それが学習プロセスを複雑にし得ることである。
この手法の最初のステップとして、報酬のバンディットな性質が問題ではない興味深い問題があることが観測され得る。例えば、ACCの応用に関する(以下でより詳細に論じる)報酬値は、現在の状態及び動作に対して可微分であり得る。実際、たとえ報酬が「バンディット」式に与えられても、
であるように可微分関数
を学習する問題は、比較的単純なSL問題(例えば、一次元の回帰問題)であり得る。従って、この手法の最初のステップは、s及びaに対して可微分な関数
として報酬を定めること、又はインスタンスベクトルが、
であり、目標スカラがr
tである状態でサンプルにわたる少なくとも幾らかの回帰損失を最小化する可微分関数
を学習するために回帰学習アルゴリズムを使用することであり得る。一部の状況では、トレーニングセットを作成するために探索の要素を使用することができる。
過去と将来との間のつながりに対処するために、同様の概念を使用することができる。例えば、
が成立するように可微分関数
が学習可能であると仮定する。かかる関数を学習することは、SL問題として特徴付けることができる。
は、近い将来のための予測因子と見なすことができる。次に、SからAにマップするポリシを、パラメトリック関数π
θ:S→Aを使用して記述することができる。ニューラルネットワークとしてπ
θを表現することは、回帰ニューラルネットワーク(RNN)を使用してエージェントをTラウンド走らせるエピソードの表現を可能にすることができ、次の状態は、
として定義される。ここで、
は、環境によって定めることができ、近い将来の予測不能な側面を表すことができる。s
t+1がs
t及びa
tに可微分な方法で依存することは、将来の報酬値と過去の動作との間のつながりを可能にし得る。ポリシ関数π
θのパラメータベクトルは、結果として生じるRNN上の逆伝搬によって学習され得る。明確な確率論的仮定をv
tに課す必要がないことに留意されたい。具体的には、マルコフ関係の要件が必要ない。代わりに、過去と将来との間で「十分な」情報を伝搬するために回帰ネットワークが利用され得る。直観的に、
は、近い将来の予測可能な部分を記述し得る一方、v
tは、環境内の他のプレーヤの挙動によって生じ得る予測不能な側面を表し得る。学習システムは、他のプレーヤの挙動に対してロバストなポリシを学習すべきである。||v
t||が大きい場合、有意味のポリシを学習するには過去の動作と将来の報酬値との間のつながりに雑音が多過ぎる可能性がある。システムの動力学をトランスペアレントな方法で明確に表現することは、過去の知識をより容易に組み込むことを可能にすることができる。例えば、過去の知識は、
を定める問題を単純化し得る。
上記で論じたように学習システムは、予期せぬ方法で動作し得る他の複数のドライバーを含み得るホスト車両の環境等、敵対環境に対するロバスト性の恩恵を受けることができる。vtに対して確率論的仮定を課さないモデルでは、vtが敵対的方法で選択される環境を検討することができる。幾つかの場合、μtに制限を加えることができ、さもなければ敵が計画問題を困難にし、又は不可能にさえし得る。1つの自然な制約は、||μt||が制約によって境界を付けられることを要求することであり得る。
敵対的環境に対するロバスト性は、自律運転の応用において有用であり得る。敵対的方法でμ
tを選択することは、ロバストな最適ポリシに向けて学習システムを集中させることができるため、学習プロセスを加速することさえできる。単純なゲームを使用してこの概念を説明することができる。状態は、
であり、動作は、
であり、即時の損失関数は、0.1|a
t|+[|s
t|−2]
+であり、[x]
+=max{x,0}は、ReLU(正規化線形ユニット)関数である。次の状態は、s
t+1=s
t+a
t+v
tであり、v
t∈[−0.5,0.5]が敵対的方法で環境のために選ばれる。ここで、ReLUを伴う2層のネットワークとして最適なポリシを記述することができる:a
t=−[s
t−1.5]++[−s
t−1.5]
+。|s
t|∈(1.5,2]のとき、最適な動作は、動作a=0よりも大きい即時の損失を有し得ることを認識されたい。従って、システムは、将来の計画を立てることができ、即時の損失のみに依存しなくてもよい。a
tに対する損失の微分は、0.1sign(a
t)であり、stに対する微分は、1[|s
t|>2]sign(s
t)であることを認識されたい。s
t∈(1.5,2]の状況では、v
tの敵対的選択は、v
t=0.5に設定することであり、従ってa
t>1.5−s
tのときには常に、ラウンドt+1上で非ゼロ損失があり得る。そのような場合、損失の微分がa
tに直接逆伝搬し得る。従ってv
tの敵対的選択は、a
tの選択が次善である場合にナビゲーションシステムが非ゼロ逆伝搬メッセージを得ることを促進することができる。かかる関係は、現在の動作が(たとえその動作が次善の報酬又は更に損失を招いても)将来より高い報酬をもたらすより最適な動作の機会を与えるという期待に基づき、ナビゲーションシステムが現在の動作を選択することを促進し得る。
このような手法は、起こり得る事実上全てのナビゲーション状況に適用することができる。以下では、1つの例、すなわち適応走行制御(ACC)に適用される手法について説明する。ACCの問題では、ホスト車両が前方の目標車両までの十分な距離(例えば、目標車両まで1.5秒)を保とうと試みる場合がある。別の目標は、所望の間隙を維持しながらできるだけスムーズに走行することであり得る。この状況を表すモデルを以下のように定めることができる。状態空間は、
であり、動作空間は、
である。状態の第1の座標は、目標車両の速度であり、第2の座標は、ホスト車両の速度であり、最後の座標は、ホスト車両と目標車両との間の距離(例えば、道路の曲線に沿ってホスト車両の位置から目標の位置を引いたもの)である。ホスト車両が行うべき動作は、加速であり、a
tで示すことができる。量τは、連続したラウンド間の時間差を示すことができる。τは、任意の適切な量に設定できるが、一例ではτを0.1秒とすることができる位置s
tは、
で示すことができ、目標車両の(未知の)加速度を
で示すことができる。
システムの完全な動力学は、次式で記述することができる。
これは、2つのベクトルの和として記述することができる。
第1のベクトルは、予測可能な部分であり、第2のベクトルは、予測不能な部分である。ラウンドtに対する報酬は、以下のように定められる。
第1の項は、非ゼロ加速度に対するペナルティをもたらす可能性があり、従ってスムーズな運転を促す。第2の項は、目標の車x
tまでの距離と所望の距離
との間の比率に依存し、これは、1メートルの距離と1.5秒のブレーキ距離との間の最大値として定められる。幾つかの場合、この比率がまさに1であり得るが、この比率が[0.7,1.3]の範囲内にある限り、ポリシは、任意のペナルティなしで済ませることができ、それは、スムーズな運転を実現する際に重要であり得る特性である幾らかのスラックをナビゲーションにおいてホスト車両に認めることができる。
上記で概説した手法を実装し、ホスト車両のナビゲーションシステムは、(例えば、ナビゲーションシステムの処理ユニット110内の運転ポリシモジュール803の動作により)観測された状態に応じて動作を選択することができる。選択される動作は、検知されるナビゲーション状態に関して利用可能な応答動作に関連する報酬のみの分析に基づくのではなく、将来の状態、将来の状態に応じた潜在的動作及び潜在的動作に関連する報酬を検討し分析することにも基づき得る。
図16は、検出及び長期計画に基づくナビゲーションに対するアルゴリズム手法を示す。例えば、ステップ1601では、ホスト車両のためのナビゲーションシステムの少なくとも1つの処理デバイス110は、複数の画像を受信し得る。これらの画像は、ホスト車両の環境を表すシーンを捕捉することができ、上記の画像捕捉デバイス(例えば、カメラやセンサ等)のいずれかによって供給され得る。ステップ1603でこれらの画像の1つ又は複数を分析することは、(上記で説明したように)少なくとも1つの処理デバイス110がホスト車両に関連する現在のナビゲーション状態を識別することを可能にし得る。
ステップ1605、1607及び1609では、検知されるナビゲーション状態に応じて様々な潜在的なナビゲーション動作を決定することができる。(例えば、合流を完了するために、先行車両の後にスムーズに続くために、目標車両を追い抜くために、道路内の物体を回避するために、検出した停止標識のために減速するために、割り込んでくる目標車両を回避するために、又はシステムのナビゲーション目標を助長し得る他の任意のナビゲーション動作を完了するために)これらの潜在的なナビゲーション動作(例えば、第1のナビゲーション動作から利用可能なN番目のナビゲーション動作まで)は、検知状態及びナビゲーションシステムの長期目標に基づいて決定することができる。
決定される潜在的なナビゲーション動作のそれぞれについて、システムは、期待報酬を決定することができる。期待報酬は、上記の技法のいずれかに従って決定することができ、1つ又は複数の報酬関数に対する特定の潜在的動作の分析を含み得る。ステップ1605、1607及び1609でそれぞれ決定された(例えば、第1の、第2の及びN番目の)潜在的なナビゲーション動作のそれぞれについて期待報酬1606、1608及び1610を決定することができる。
幾つかの場合、ホスト車両のナビゲーションシステムは、期待報酬1606、1608及び1610に関連する値(又は期待報酬の他の任意の種類のインジケータ)に基づいて利用可能な潜在的動作の中から選択を行うことができる。例えば、一部の状況では、最も高い期待報酬をもたらす動作が選択され得る。
とりわけ、ナビゲーションシステムがホスト車両のためのナビゲーション動作を決定するために長期計画に携わる他の事例では、最も高い期待報酬をもたらす潜在的動作をシステムが選択しない場合がある。むしろ、システムは、将来に目を向けて、現在のナビゲーション状態に応じて低報酬の動作を選択した場合により高い報酬を後に実現する機会があり得るかどうかを分析することができる。例えば、ステップ1605、1607及び1609で決定される潜在的動作のいずれか又は全てについて将来の状態を決定することができる。ステップ1613、1615及び1617で決定されるそれぞれの将来の状態は、それぞれの潜在的動作(例えば、ステップ1605、1607及び1609で決定される潜在的動作)によって修正される現在のナビゲーション状態に基づいて生じることが予期される将来のナビゲーション状態を表し得る。
ステップ1613、1615及び1617で予測される将来の状態のそれぞれについて、(決定される将来の状態に応じて利用可能なナビゲーションの選択肢としての)1つ又は複数の将来の動作を決定し評価することができる。ステップ1619、1621及び1623では、例えば、将来の動作の1つ又は複数に関連する期待報酬の値又は他の任意の種類のインジケータを(例えば、1つ又は複数の報酬関数に基づいて)開発することができる。1つ又は複数の将来の動作に関連する期待報酬は、それぞれの将来の動作に関連する報酬関数の値を比較することによって又は期待報酬に関連する他の任意のインジケータを比較することによって評価することができる。
ステップ1625では、ホスト車両のためのナビゲーションシステムは、現在のナビゲーション状態に対して(例えば、ステップ1605、1607及び1609で)識別された潜在的動作のみに基づいてではなく、(例えば、ステップ1613、1615及び1617で決定される)予測される将来の状態に応じて利用可能な将来の潜在的動作の結果として決定される期待報酬にも基づき、期待報酬を比較することに基づいてホスト車両のためのナビゲーション動作を選択することができる。ステップ1625での選択は、ステップ1619、1621及び1623で実行される選択肢及び報酬の分析に基づき得る。
ステップ1625でのナビゲーション動作の選択は、将来の動作の選択肢に関連する期待報酬を比較することのみに基づき得る。この場合、ナビゲーションシステムは、潜在的な将来のナビゲーション状態のための動作から生じる期待報酬を比較することのみに基づいて現在の状態に対する動作を選択することができる。例えば、システムは、ステップ1619、1621及び1623での分析によって決定される最も高い将来の報酬値に関連する、ステップ1605、1607又は1609で識別される潜在的な動作を選択することができる。
ステップ1625でのナビゲーション動作の選択は、(上記で述べたように)現在の動作の選択肢を比較することのみに基づき得る。この状況では、ナビゲーションシステムは、最も高い期待報酬1606、1608又は1610に関連する、ステップ1605、1607又は1609で識別される潜在的動作を選択することができる。この選択は、将来のナビゲーション状態又は予期される将来のナビゲーション状態に応じて利用可能なナビゲーション動作に対する将来の期待報酬を殆ど又は全く考慮せずに行うことができる。
他方では、幾つかの場合、ステップ1625でのナビゲーション動作の選択は、将来の動作の選択肢及び現在の動作の選択肢の両方に関連する期待報酬を比較することに基づき得る。これは、実際、長期計画に基づくナビゲーションの原理の1つであり得る。将来のナビゲーション状態に応じて利用可能になることが予期されるその後のナビゲーション動作に応じて潜在的に高い報酬を実現するために、将来の動作に対する期待報酬を分析して、現在のナビゲーション状態に応じて報酬がより低い動作を選択することをいずれかが正当化し得るかどうかを決定することができる。一例として、期待報酬1606の値又は他のインジケータは、報酬1606、1608及び1610の中の最も高い期待報酬を示し得る。他方では、期待報酬1608は、報酬1606、1608及び1610の中の最も低い期待報酬を示し得る。ステップ1605で決定される潜在的動作(すなわち最も高い期待報酬1606を生じさせる動作)を単純に選択するのではなく、ステップ1625でナビゲーション動作の選択を行う際に将来の状態、潜在的な将来の動作及び将来の報酬の分析を使用することができる。一例では、ステップ1621で(ステップ1607で決定される第2の潜在的動作に基づいてステップ1615で決定される将来の状態に対する少なくとも1つの将来の動作に応じて)識別される報酬が期待報酬1606よりも高い可能性があると決定され得る。この比較に基づき、期待報酬1606が期待報酬1608よりも高いにもかかわらず、ステップ1605で決定される第1の潜在的動作ではなく、ステップ1607で決定される第2の潜在的動作を選択することができる。一例では、ステップ1605で決定される潜在的なナビゲーション動作は、検出された目標車両の前に合流することを含み得る一方、ステップ1607で決定される潜在的なナビゲーション動作は、目標車両の後ろに合流することを含み得る。目標車両の前に合流する期待報酬1606は、目標車両の後ろに合流することに関連する期待報酬1608よりも高い可能性があるが、目標車両の後ろに合流することは、期待報酬1606、1608又は現在の検知されたナビゲーション状態に応じて利用可能な動作に基づく他の報酬よりも更に高い潜在的報酬を与える動作の選択肢があり得る将来の状態をもたらす可能性があると決定されることがある。
ステップ1625で潜在的動作の中から選択を行うことは、期待報酬(又は別の潜在的動作を上回るある潜在的動作に関連する利益の他の任意の測定基準又はインジケータ)の任意の適切な比較に基づき得る。幾つかの場合、上記で説明したように、第1の潜在的動作に関連する報酬よりも高い期待報酬に関連する少なくとも1つの将来の動作を第2の潜在的動作がもたらすことが予測される場合、第1の潜在的動作に優先して第2の潜在的動作を選択することができる。他の事例では、より複雑な比較を使用することができる。例えば、予測される将来の状態に応じた動作の選択肢に関連する報酬を、決定される潜在的動作に関連する複数の期待報酬と比較することができる。
一部のシナリオでは、現在の状態に対する潜在的動作の結果として期待される報酬(例えば、期待報酬1606、1608、1610等)のいずれよりも高い報酬を将来の動作の少なくとも1つがもたらすことが予期される場合、予測される将来の状態に基づく動作及び期待報酬が現在の状態に対する潜在的動作の選択に影響を及ぼす場合がある。幾つかの場合、現在のナビゲーション状態に対する潜在的動作を選択するためのガイドとして、(例えば、検知される現在の状態に対する潜在的動作に関連する期待報酬並びに潜在的な将来のナビゲーション状態に対する潜在的な将来の動作の選択肢に関連する期待報酬の中の)最も高い期待報酬をもたらす将来の動作の選択肢を使用することができる。すなわち、最も高い期待報酬(又は所定の閾値等を上回る報酬)をもたらす将来の動作の選択肢を識別した後、最も高い期待報酬をもたらす識別された将来の動作に関連する将来の状態につながる潜在的動作をステップ1625で選択することができる。
他の事例では、期待報酬間の決定される差に基づいて利用可能な動作の選択を行うことができる。例えば、ステップ1621で決定される将来の動作に関連する期待報酬と期待報酬1606との差が期待報酬1608と期待報酬1606との差を上回る場合(+符号の差を想定する)、ステップ1607で決定される第2の潜在的動作を選択することができる。別の例では、ステップ1621で決定される将来の動作に関連する期待報酬とステップ1619で決定される将来の動作に関連する期待報酬との差が期待報酬1608と期待報酬1606との差を上回る場合、ステップ1607で決定される第2の潜在的動作を選択することができる。
現在のナビゲーション状態に対する潜在的動作の中から選択を行うための幾つかの例を説明してきた。但し、予測される将来の状態に及ぶ動作及び報酬の分析に基づく長期計画によって利用可能な動作を選択するために、他の任意の適切な比較技法又は基準を使用することができる。加えて、図16では、長期計画分析において2つの層(例えば、現在の状態に対する潜在的動作から生じる報酬を検討する第1の層及び予測される将来の状態に応じた将来の動作の選択肢から生じる報酬を検討する第2の層)を示すが、更に多い層に基づく分析も可能であり得る。例えば、長期計画分析を1つの層又は2つの層に基づかせるのではなく、現在のナビゲーション状態に応じて利用可能な潜在的動作の中から選択を行う際、分析の3つの層、4つの層又は更に多くの層を使用することができる。
検知したナビゲーション状態に応じて潜在的動作の中から選択を行った後、ステップ1627では、少なくとも1つのプロセッサは、選択された潜在的なナビゲーション動作に応じてホスト車両のナビゲーションアクチュエータの少なくとも1つの調節を引き起こすことができる。ナビゲーションアクチュエータは、ホスト車両の少なくとも1つの側面を制御するための任意の適切な装置を含み得る。例えば、ナビゲーションアクチュエータは、操舵メカニズム、ブレーキ又はアクセルの少なくとも1つを含み得る。
他者の推論される攻撃性に基づくナビゲーション
運転の攻撃性のインジケータを決定するために、取得画像ストリームを分析することによって目標車両を監視することができる。本明細書では、攻撃性は質的又は定量的なパラメータとして記載するが他の特性、すなわち検知される注意レベル(ドライバーの潜在的な欠陥、注意散漫−携帯電話や居眠り等)を使用し得る。一部の事例では、目標車両が自衛的姿勢を有すると見なすことができ、一部の事例では、目標車両がより攻撃的な姿勢を有すると見なすことができる。攻撃性のインジケータに基づいてナビゲーション動作を選択又は開発することができる。例えば、幾つかの場合、ホスト車両に対する相対速度、相対加速度、相対加速度の増加、追走距離等を追跡して目標車両が攻撃的であるか又は自衛的であるかを決定することができる。目標車両が閾値を上回る攻撃度のレベルを有すると決定される場合、例えば、ホスト車両は、目標車両に道を譲ることに傾き得る。経路内の又は目標車両付近の1つ又は複数の障害物(例えば、先行車両、道路内の障害物、信号機等)に対する目標車両の決定された挙動に基づき、目標車両の攻撃度のレベルを決定することもできる。
この概念への導入として、環状交差路内にホスト車両が合流することに関する実験の一例を説明し、ここで、ナビゲーション目標は、環状交差路を通過して出ていくことである。この状況は、ホスト車両が環状交差路の入り口に到達することで始まることができ、環状交差路の出口(例えば、第2の出口)に到達することで終わり得る。成功は、ホスト車両が他の全ての車両と常に安全な距離を保つかどうか、ホスト車両ができるだけ迅速にルートを終了するかどうか、及びホスト車両がスムーズな加速のポリシに従うかどうかに基づいて測定することができる。この解説では、NT台の目標車両が環状交差路上に無作為に配置され得る。敵対的な挙動及び典型的な挙動の混同をモデリングするために、確率pで目標車両を「攻撃的な」運転ポリシによってモデリングすることができ、そのため、ホスト車両が目標車両の前に合流しようと試みるとき、攻撃的な目標車両は、加速する。確率1−pで目標車両を「自衛的な」運転ポリシによってモデリングすることができ、そのため、目標車両は、減速し、ホスト車両を合流させる。この実験ではp=0.5であり、他のドライバーの種類に関する情報がホスト車両のナビゲーションシステムに与えられなくてもよい。他のドライバーの種類は、エピソードの開始時に無作為に選択され得る。
ナビゲーション状態は、ホスト車両(エージェント)の速度及び位置並びに目標車両の位置、速度及び加速度として表すことができる。現在の状態に基づいて攻撃的なドライバーと自衛的なドライバーとを区別するには、目標の加速度を観測し続けることが重要であり得る。全ての目標車両が環状交差路の経路の輪郭を描く1次元曲線上を移動し得る。ホスト車両は、合流点において目標車両の曲線と交差する独自の1次元曲線上を移動することができ、この点が両方の曲線の原点である。妥当な運転をモデリングするために、全ての車両の加速度の絶対値に定数によって上限を設けることができる。逆方向に運転することは許可されていないため、速度もReLUを通過させることができる。逆方向に運転することを許可しないことにより、エージェントは、自らの過去の動作を悔いることができないため、長期計画が必要になり得ることに留意されたい。
上記で説明したように、次の状態s
t+1は、予測可能な部分
と、予測不能な部分v
tとの和に分解することができる。表現
は、(可微分な方法で明確に定めることができる)車両の位置及び速度の動力学を表し得る一方、v
tは、目標車両の加速度を表し得る。
は、アフィン変換上のReLU関数の組み合わせとして表すことができると立証することができ、従ってs
t及びa
tに関して可微分である。ベクトルv
tは、微分できない方法でシミュレータによって定められ得、一部の目標の攻撃的挙動及び他の目標の自衛的挙動を実装し得る。かかるシミュレータからの2つのフレームを図17A及び図17Bに示す。この実験例では、環状交差路の入り口に到達したとき、ホスト車両1701が減速することを学習した。ホスト車両1701は、攻撃的な車両(例えば、車両1703及び車両1705)に道を譲り、自衛的な車両(例えば、車両1706、1708及び1710)の前に合流するとき、安全に進むことも学習した。図17A及び図17Bによって示す例では、ホスト車両1701のナビゲーションシステムに目標車両の種類が与えられていない。むしろ、特定の車両が攻撃的と決定されるか又は自衛的と決定されるかは、例えば、目標車両の観測される位置及び加速度に基づく推論によって決定される。図17Aでは、位置、速度及び/又は相対加速度に基づき、ホスト車両1701は、車両1703が攻撃的な傾向を有すると決定することができ、従って、ホスト車両1701は、目標車両1703の前に合流しようと試みるのではなく、停止して目標車両1703が通過することを待つことができる。しかし、図17Bでは、車両1703の後ろを移動している目標車両1710が自衛的な傾向を示すことを(ここでも車両1710の観測される位置、速度及び/又は相対加速度に基づいて)目標車両1701が認識し、従って目標車両1710の前且つ目標車両1703の後ろへの問題ない合流を完了している。
図18は、他の車両の予測される攻撃性に基づいてホスト車両をナビゲートするためのアルゴリズムの一例を表すフローチャートを示す。図18の例では、目標車両の環境内の物体に対する目標車両の観測される挙動に基づき、少なくとも1つの目標車両に関連する攻撃性のレベルを推論することができる。例えば、ステップ1801では、ホスト車両のナビゲーションシステムの少なくとも1つの処理デバイス(例えば、処理デバイス110)は、ホスト車両の環境を表す複数の画像をホスト車両に関連するカメラから受信することができる。ステップ1803では、受信画像の1つ又は複数を分析することは、ホスト車両1701の環境内の目標車両(例えば、車両1703)を少なくとも1つのプロセッサが識別することを可能にし得る。ステップ1805では、受信画像の1つ又は複数を分析することは、目標車両にとっての少なくとも1つの障害物をホスト車両の環境内で少なくとも1つの処理デバイスが識別することを可能にし得る。物体は、道路内の瓦礫、停止信号/信号機、歩行者、別の車両(例えば、目標車両の前を移動している車両や駐車車両等)、道路内の箱、道路障壁、カーブ又はホスト車両の環境内で遭遇され得る他の任意の種類の物体を含み得る。ステップ1807では、受信画像の1つ又は複数を分析することは、目標車両にとっての少なくとも1つの識別された障害物に対する目標車両の少なくとも1つのナビゲーション特性を少なくとも1つの処理デバイスが決定することを可能にし得る。
目標車両に対する適切なナビゲーション応答を開発するために、様々なナビゲーション特性を使用して検出された目標車両の攻撃性のレベルを推論することができる。例えば、かかるナビゲーション特性は、目標車両と少なくとも1つの識別された障害物との間の相対加速度、目標車両の障害物からの距離(例えば、別の車両の後ろにある目標車両の追走距離)及び/又は目標車両と障害物との間の相対速度等を含み得る。
幾つかの実施形態では、ホスト車両に関連するセンサ(例えば、レーダ、速度センサ、GPS等)からの出力に基づいて目標車両のナビゲーション特性を決定することができる。しかし、幾つかの場合、ホスト車両の環境の画像を分析することに部分的に又は完全に基づいて目標車両のナビゲーション特性が決定され得る。例えば、例として上記の及び参照により本明細書に援用する米国特許第9,168,868号で記載されている画像分析技法を使用してホスト車両の環境内の目標車両を認識することができる。ある期間にわたる捕捉画像内の目標車両の位置を監視すること、及び/又は目標車両に関連する1つ若しくは複数の特徴(例えば、テールライト、ヘッドライト、バンパー、車輪等)の捕捉画像内の位置を監視することは、目標車両とホスト車両との間の又は目標車両とホスト車両の環境内の1つ又は複数の他の物体との間の相対的な距離、速度及び/又は加速度を求めることを可能にし得る。
識別された目標車両の攻撃性のレベルは、目標車両の任意の適切な観測されたナビゲーション特性又は観測されたナビゲーション特性の任意の組み合わせから推論することができる。例えば、攻撃性の決定は、観測される任意の特性及び1つ又は複数の所定の閾値レベル又は他の任意の適切な質的若しくは定量的な分析に基づいて行うことができる。幾つかの実施形態では、目標車両が所定の攻撃的な距離の閾値未満の距離でホスト車両又は別の車両を追走することが観測される場合、その目標車両を攻撃的と見なすことができる。他方では、所定の攻撃的な距離の閾値を超える距離でホスト車両又は別の車両を追走することが観測される目標車両は、自衛的と見なすことができる。所定の攻撃的な距離の閾値は、所定の自衛的な距離の閾値と同じである必要はない。加えて、所定の攻撃的な距離の閾値及び所定の自衛的な距離の閾値のいずれか又は両方は、明白な境界線ではなく値域を含み得る。更に、所定の攻撃的な距離の閾値も所定の自衛的な距離の閾値も固定される必要はない。むしろ、これらの値又は値域は、時間と共にシフトする場合があり、目標車両の観測される特性に基づいて様々な閾値/閾値の値域を適用することができる。例えば、適用される閾値は、目標車両の1つ又は複数の他の特性に依存し得る。観測されるより高い相対速度及び/又は加速度は、より大きい閾値/閾値範囲の適用を正当化し得る。逆に、ゼロの相対速度及び/又は加速度を含むより低い相対速度及び/又は加速度は、攻撃的/自衛的の推論を行う際により小さい距離閾値/閾値範囲の適用を正当化し得る。
攻撃的/自衛的の推論は、相対速度及び/又は相対加速度の閾値にも基づき得る。目標車両は、別の車両に対するその観測される相対速度及び/又はその相対加速度が所定のレベル又は範囲を上回る場合、攻撃的と見なすことができる。目標車両は、別の車両に対するその観測される相対速度及び/又はその相対加速度が所定のレベル又は範囲を下回る場合、自衛的と見なすことができる。
攻撃的/自衛的の決定は観測される任意のナビゲーション特性のみに基づいて行われ得るが、この決定は、観測される特性の任意の組み合わせに依存することもできる。例えば、上記で述べたように、幾つかの場合、一定の閾値又は範囲未満の距離で別の車両を追走することが観測されることのみに基づいて目標車両を攻撃的と見なすことができる。しかし、他の事例では、所定量(決定が距離のみに基づく場合に適用される閾値と同じであるか又は異なり得る)未満で別の車両を追走すると共に、所定の量又は範囲を上回る相対速度及び/又は相対加速度を有する場合、目標車両を攻撃的と見なすことができる。同様に、一定の閾値又は範囲を超える距離で別の車両を追走することが観測されることのみに基づいて目標車両を自衛的と見なすことができる。しかし、他の事例では、所定量(決定が距離のみに基づく場合に適用される閾値と同じであるか又は異なり得る)を超えて別の車両を追走すると共に、所定の量又は範囲未満の相対速度及び/又は相対加速度を有する場合、目標車両を自衛的と見なすことができる。システム100は、例えば、車両が0.5Gの加速度又は減速度を超える場合(例えば、ジャーク5m/s3)、車両がレーン変更又はカーブ上で0.5Gの横加速度を有する場合、車両が上記のいずれかを別の車両に行わせる場合、車両がレーンを変更し、0.3Gの減速度又は3m/s3のジャークを超えて別の車両に道を譲らせる場合、及び/又は車両が停止することなしに2レーン変更する場合、攻撃的/自衛的を行うことができる。
ある範囲を上回る量に言及することは、その量が範囲に関連する全ての値を上回ること又は範囲に含まれることを示し得ることを理解すべきである。同様に、ある範囲を下回る量に言及することは、その量が範囲に関連する全ての値を下回ること又は範囲に含まれることを示し得る。加えて、攻撃的/自衛的の推論を行うことについて記載した例は、距離、相対加速度及び相対速度に関して説明したが、他の任意の適切な量を使用し得る。例えば、計算が使用され得る衝突までの時間又は目標車両の距離、加速度及び/又は速度の任意の間接的なインジケータを使用することができる。上記の例は、他の車両に対する目標車両に焦点を当てるが、攻撃的/自衛的の推論は他の任意の種類の障害物(例えば、歩行者、道路障壁、信号機、瓦礫等)に対する目標車両のナビゲーション特性を観測することで行い得ることにも留意すべきである。
図17A及び図17Bに示す例に戻り、ホスト車両1701が環状交差路に近づくと、自らの少なくとも1つの処理デバイスを含むナビゲーションシステムは、ホスト車両に関連するカメラから画像ストリームを受信することができる。受信画像の1つ又は複数の分析に基づき、目標車両1703、1705、1706、1708及び1710のいずれかを識別することができる。更に、ナビゲーションシステムは、識別された目標車両の1つ又は複数のナビゲーション特性を分析することができる。ナビゲーションシステムは、目標車両1703と1705との間の間隙が環状交差路内への潜在的合流の第1の機会を表すと認識することができる。ナビゲーションシステムは、目標車両1703を分析して、目標車両1703に関連する攻撃性のインジケータを決定することができる。目標車両1703が攻撃的であると見なされる場合、ホスト車両のナビゲーションシステムは、車両1703の前に合流するのではなく車両1703に道を譲ることに決めることができる。他方では、目標車両1703が自衛的であると見なされる場合、ホスト車両のナビゲーションシステムは、車両1703の前で合流動作を完了しようと試みることができる。
ホスト車両1701が環状交差路に到達するとき、ナビゲーションシステムの少なくとも1つの処理デバイスは、捕捉画像を分析して目標車両1703に関連するナビゲーション特性を決定することができる。例えば、画像に基づき、ホスト車両1701が安全に入るのに十分な間隙を与える距離で車両1703が車両1705を追走していると決定され得る。実際、攻撃的な距離の閾値を超える距離で車両1703が車両1705を追走していると決定される場合があり、従って、この情報に基づき、ホスト車両のナビゲーションシステムは、目標車両1703を自衛的であると識別することに傾き得る。しかし、一部の状況では、上記で論じたように攻撃的/自衛的の決定を行う際に目標車両の複数のナビゲーション特性を分析することができる。分析を拡大し、ホスト車両のナビゲーションシステムは、目標車両1703が目標車両1705の後ろに攻撃的ではない距離で続いているが、車両1703が攻撃的挙動に関連する1つ又は複数の閾値を上回る相対速度及び/又は相対加速度を車両1705に対して有すると決定することができる。実際、ホスト車両1701は、目標車両1703が車両1705に対して加速しており、車両1703及び1705間にある間隙を狭めていると決定することができる。相対的な速度、加速度及び距離(更に車両1703と1705との間の間隙が狭まっている速度)の更に分析に基づき、ホスト車両1701は、目標車両1703が攻撃的に振る舞っていると決定することができる。従ってホスト車両が安全にナビゲートできる十分な間隙はあり得るが、ホスト車両1701は、目標車両1703の前に合流することがホスト車両の真後ろで攻撃的にナビゲートする車両をもたらすことになると予期することができる。更に、ホスト車両1701が車両1703の前に合流した場合、画像分析又は他のセンサ出力によって観測される挙動に基づき、目標車両1703がホスト車両1701に向かって加速し続けること、又は非ゼロ相対速度でホスト車両1701に向かって進むことが予期され得る。そのような状況は、安全性の観点から望ましくない場合があり、ホスト車両の乗員の不快感も招き得る。そのような理由から、図17Bに示すようにホスト車両1701は、車両1703に道を譲り、車両1703の後ろ且つそのナビゲーション特性の1つ又は複数の分析に基づいて自衛的と見なされる車両1710の前で環状交差路内に合流することに決めることができる。
図18に戻り、ステップ1809では、ホスト車両のナビゲーションシステムの少なくとも1つの処理デバイスは、識別された障害物に対する目標車両の少なくとも1つの識別されたナビゲーション特性に基づき、ホスト車両のためのナビゲーション動作(例えば、車両1710の前且つ車両1703の後ろに合流すること)を決定することができる。ナビゲーション動作を(ステップ1811)で実施するために、少なくとも1つの処理デバイスは、決定されたナビゲーション動作に応じてホスト車両のナビゲーションアクチュエータの少なくとも1つの調節を引き起こすことができる。例えば、図17Aにおいて車両1703に道を譲るためにブレーキをかけることができ、図17Bに示すように車両1703の後ろでホスト車両を環状交差路に入れさせるためにホスト車両の車輪の操舵と共にアクセルを踏むことができる。
上記の例の中で説明したように、ホスト車両のナビゲーションは、別の車両又は物体に対する目標車両のナビゲーション特性に基づくことができる。加えて、ホスト車両のナビゲーションは、別の車両又は物体を具体的に参照することなしに目標車両のナビゲーション特性のみに基づき得る。例えば、図18のステップ1807では、ホスト車両の環境から捕捉される複数の画像を分析することは、目標車両に関連する攻撃性のレベルを示す識別された目標車両の少なくとも1つのナビゲーション特性を決定することを可能にし得る。ナビゲーション特性は、攻撃的/自衛的の決定を行うために別の物体又は目標車両に対して参照する必要がない速度や加速度等を含み得る。例えば、所定の閾値を超えるか又はある値域に含まれるか若しくは値域を超える目標車両に関連する観測された加速度及び/又は速度が攻撃的な挙動を示し得る。逆に、所定の閾値を下回るか又はある値域に含まれるか若しくは値域を超える目標車両に関連する観測された加速度及び/又は速度が自衛的な挙動を示し得る。
当然ながら、一部の例では、攻撃的/自衛的の決定を行うために、観測されるナビゲーション特性(例えば、位置、距離、加速度等)をホスト車両に対して参照することができる。例えば、目標車両に関連する攻撃性のレベルを示す目標車両の観測されるナビゲーション特性は、目標車両とホスト車両との間の相対加速度の増加、ホスト車両の後ろの目標車両の追走距離、目標車両とホスト車両との間の相対速度等を含み得る。
事故責任の制約に基づくナビゲーション
上記の節で説明したように、特定の規則に対する準拠を確実にするために計画されたナビゲーション動作を所定の制約に対してテストすることができる。幾つかの実施形態では、この概念を潜在的な事故責任の検討に拡張することができる。以下で論じるように、自律ナビゲーションの主な目標は、安全性である。絶対的な安全性は、(例えば、少なくとも自律制御下にある特定のホスト車両は、自らの周囲の他の車両を制御できず、自らの動作のみを制御できることを理由に)不可能であり得るため、自律ナビゲーションにおける検討事項として、また計画された動作に対する制約として潜在的な事故責任を使用することは、特定の自律車両が危険と見なされるいかなる動作も(例えば、潜在的な事故責任がホスト車両に帰す可能性がある動作を)行わないことを確実にすることを促進し得る。安全且つホスト車両側の帰責事由又は責任の事故を引き起こさないと決定される動作のみをホスト車両が行う場合、事故回避の所望のレベル(例えば、運転時間当たり10−9未満)を実現することができる。
自律運転に対して最新の手法が提起する課題は、安全保証の欠如(又は少なくとも所望の安全レベルを提供できないこと)、更にスケーラビリティの欠如である。マルチエージェント安全運転を保証する問題を検討する。機械によって引き起こされる交通事故死を社会が容認する可能性は低いため、許容可能な安全レベルが自律車両の受容に最重要である。目標は、事故を全く起こさないことであり得るが、複数のエージェントが概して事故に関与し、事故が他のエージェントの過失によってのみ起きる状況を想定することができるため、それは、不可能である場合がある。例えば、図19に示すように、ホスト車両1901が複数レーン高速道路を走行しており、ホスト車両1901は、目標車両1903、1905、1907及び1909に対する自らの動作を制御することができるが、自らを取り囲む目標車両の動作を制御することができない。その結果、例えば、車両1905がホスト車両との衝突コース上でホスト車両のレーンに突然割り込んだ場合、ホスト車両1901は、目標車両の少なくとも1つとの事故を回避することができない可能性がある。この困難に対処するために、自律車両の専門家の典型的な応答は、より多くの走行距離にわたるデータが収集されるにつれて安全性の検証がより厳格になるデータ駆動型の手法を用いることである。
しかし、安全性に対するデータ駆動型の手法の問題のある性質を理解するために、1時間の(人間の)運転につき事故によって引き起こされる致死率は、10−6であると知られていることをまず考慮する。運転作業において機械が人間に取って代わることを社会が容認するには、致死率が3桁、すなわち1時間当たり10−9の確率まで減るべきであると想定することが妥当である。この推定は、エアバッグの及び航空規格の想定致死率と同様である。例えば、10−9は、空中で航空機から翼が自然発生的に外れる確率である。しかし、累積する走行距離に比例して更に信頼をもたらすデータ駆動型の手法を使用して安全性を保証する試みは、実用的ではない。1時間の運転当たり10−9の致死率を保証するのに必要なデータ量は、その逆(すなわち109時間のデータ)に比例し、それは、およそ300億マイル程度である。更に、マルチエージェントシステムは、その環境と相互作用し、(現実の人間の運転をその全てのリッチ度及び無謀運転等の複雑さと共にエミュレートする現実的なシミュレータが利用可能でない限り(しかし、シミュレータを検証する問題の方が安全な自律車両エージェントを作ることよりも一層困難である))オフラインで検証できない可能性が高い。計画及び制御のソフトウェアに対するいかなる変更も同じ規模の新たなデータの収集を必要とし、それは、明らかに手に負えず、実用的でない。更に、データによってシステムを開発することは、行われる動作の解釈可能性及び説明可能性の欠如に常に直面し、自律車両(AV)が事故死を招く事故を起こす場合、その理由が分からなければならない。その結果、安全性のためのモデルベースの手法が必要とされるが、自動車業界における既存の「機能的安全性」及びASIL要件は、マルチエージェント環境に対処するように設計されていない。
自律車両のための安全運転モデルを開発する際の第2の主な課題は、スケーラビリティが必要なことである。AVの基礎を成す前提は、「より良い世界を作ること」を超えて、むしろドライバーなしのモビリティをドライバーありよりも低コストで維持できるという前提に基づく。この前提は、(100万台単位の)AVの大量生産をサポートする意味及びより重要なことには新たな都市で運転できるようにする些細な増分コストをサポートする意味でスケーラビリティの概念と常に結び付く。従って、計算及び検知のコストは、重要であり、AVが大量生産される場合、検証のコスト及び選択された幾つかの都市ではなく、「どこでも」運転できる能力もビジネスを維持するのに必要な要件である。
最近の手法に関する問題は、(i)所要の「計算密度」、(ii)高精細マップが定められ作成される方法、及び(iii)センサの所要の仕様という3軸に沿った「総当たり的な」考え方にある。総当たり的手法は、スケーラビリティに反し、無限のオンボード計算が遍在し、HDマップを構築し維持するコストが些細且つスケーラブルになり、斬新で超高度なセンサが開発され自動車のグレードに合わせて些細なコストで製品化される将来に負担を転嫁する。上記のいずれかが実現する将来は、実際、理にかなっているが、上記の影響力の全てを得ることは、低確率の事象である可能性が高い。従って、社会が容認することができ且つ先進国内のいずれかの箇所で運転する何百万台もの車をサポートする意味でスケーラブルであり、AVプログラム内に安全性及びスケーラビリティを統合する形式モデルを提供する必要がある。
開示する実施形態は、目標の安全レベルを提供することができ(更に安全目標を上回ることさえでき)、何百万台もの(又はそれを上回る)自律車両を含むシステムにスケーリングすることもできる解決策を表す。安全面では、「責任敏感型安全性」(RSS)と呼ばれるモデルが導入され、このモデルは、「事故過失」の概念が解釈可能且つ説明可能であることを形式化し、ロボットエージェントの動作に「責任」感を組み込む。RSSの定義は、それが実装される方法によって不可知論的であり、それは、人を納得させるグローバル安全モデルを作成する目標を促進するための重要な特徴である。RSSは、(図19に見られるように)事故においてエージェントが非対称な役割を担うという考えによって動機付けられ、かかる事故では、典型的にはエージェントの1つのみが事故の原因であり、従ってその責任を負う。RSSモデルは、(例えば、遮蔽によって)全てのエージェントが常に見えるわけではない限られた検知条件下での「慎重な運転」の形式的処理も含む。RSSモデルの1つの主な目標は、エージェントが自らに「過失」があるか又は自らに責任がある事故を決して起こさないことを保証することである。モデルは、RSSに準拠する効率的なポリシ(例えば、「検知状態」を動作にマップする関数)を伴う場合にのみ有用であり得る。例えば、現時点では無害であるように思われる動作が遠い将来において大惨事につながる可能性がある(「バタフライ効果」)。RSSは、ホスト車両の動作の結果として将来事故が発生しないことを保証する(又は少なくとも事実上保証する)ことができる短期的将来に対する局所的制約の組を構築するのに役立ち得る。
別の寄与は、単位、測定及び動作空間で構成される「意味論的」言語の導入並びにそれらがAVの計画、検知及び作動にどのように組み込まれるかに関する仕様を軸に展開される。意味論がどのようなものかを知るために、これに関連して運転講習を受けている人間が「運転ポリシ」について考えるようにどのように指示されるかを検討する。これらの指示は、幾何学的ではない(「現在の速度で13.7メートル走行し、次いで0.8m/s2の率で加速する」という形式を取らない)。むしろ、これらの指示は、意味論的な性質のものである(「前の車を追走する」又は「左側の車を追い越す」)。人間の運転ポリシの典型的な言語は、加速度ベクトルの幾何学的単位ではなく縦方向の目標及び横方向の目標に関する。形式的な意味論的言語は、時間及びエージェントの数と共に指数関数的に増大しない計画の計算の複雑さとつながりがある、安全性と快適さとが相互作用する方法とつながりがある、検知の計算が定められる方法とつながりがあり、及びセンサのモダリティ及び融合方法体系内でそれらがどのように相互作用するかの仕様とつながりがある複数の面で有用であり得る。(意味論的言語に基づく)融合方法体系は、105時間程度の運転データのデータセットにわたるオフライン検証のみを行う一方、RSSモデルは、1時間の運転当たり所要の10−9の致死率を実現することを保証し得る。
例えば、強化学習の設定では、計画に使用される対象期間に関係なく、任意の所与の時間において検査すべき軌道の数が104によって制約される意味空間上でQ関数(例えば、エージェントが状態s∈Sにあるとき動作a∈Aを実行する長期の品質を評価する関数。かかるQ関数を所与として、動作の自然な選択は、最も高い品質のもの、π(s)=argmaxaQ(s,a)を選ぶことであり得る)を定めることができる。この空間内の信号対雑音比は、高い可能性があり、効果的な機械学習法がQ関数のモデリングに成功することを可能にする。検知の計算の場合、意味論は、安全性に影響を及ぼす間違いと、運転の快適さに影響を及ぼす間違いとを区別することを可能にし得る。Q関数に結び付けられる検知のためのPACモデル(確率的で近似的に正しい(PAC))、ValiantのPAC学習用語を借りる)を定め、RSSに準拠するが、運転の快適さの最適化を可能にする方法で測定の間違いをどのように計画に組み込むかを示す。大域座標系に対する誤差等の他の標準的な誤差の測度は、PAC検知モデルに準拠しない場合があるため、このモデルの特性の側面の成功には意味論的言語が重要であり得る。加えて、意味論的言語は、低帯域幅の検知データを使用して構築可能であり、従ってクラウドソージングによって構築可能でありスケーラビリティをサポートするHDマップを定めるための重要な実現要因であり得る。
要約すると、開示する実施形態は、AVの重要な要素、すなわち検知、計画及び動作に及ぶ形式モデルを含み得る。このモデルは、計画の観点からAV側の責任の事故がないことを保証することを促進し得る。更にPAC検知モデルにより、検知誤差を伴っても、説明した融合方法体系は記載した安全モデルに準拠するために非常に妥当な規模のオフラインデータ集合のみを必要とする場合がある。更に、このモデルは、意味論的言語によって安全性とスケーラビリティとを結び付けることができ、それにより安全且つスケーラブルなAVのための完全な方法体系を提供する。最後に、業界及び取締機関によって採用される承認された安全モデルを開発することは、AVの成功にとって必要な条件であり得ることに留意しておく必要がある。
RSSモデルは、古典的な検知−計画−動作のロボット制御法に概して従うことができる。検知システムは、ホスト車両の環境の現在の状態を理解することを担い得る。「運転ポリシ」と呼ぶことができ、トレーニング済みシステム(例えば、ニューラルネットワーク)又は組み合わせによってハードコードされた命令の組として実施され得る計画部分は、運転の目標を達成するために利用可能な選択肢の観点から何が次の最良の動きであるか(例えば、高速道路から出るために左レーンから右レーンに移動する方法)を決定することを担い得る。動作部分は計画を実施することを担う(例えば、選択されたナビゲーション動作を実施するために車両を操舵し、加速し、及び/又は車両のブレーキをかける等のためのアクチュエータ及び1つ又は複数のコントローラのシステム)。以下に記載の実施形態は、主に検知部分及び計画部分に焦点を当てる。
事故は、検知誤差又は計画誤差に端を発し得る。AVの動作に反応する他の道路利用者(人間及び機械)があるため、計画は、マルチエージェントの試みである。記載のRSSモデルは、とりわけ計画部分について安全性に対処するように設計される。これをマルチエージェントの安全性と呼ぶことができる。統計的手法では、計画誤差の確率の推定が「オンライン」で行われ得る。すなわち、計画誤差の頻度の許容可能な推定レベルをもたらすために、ソフトウェアが更新される度に、その新たなバージョンで何十億マイルも運転されなければならない。これは、明らかに実行不可能である。代替策として、RSSモデルは、AVに過失がある間違いを計画モジュールが犯さないという100%の保証(又は事実上100%の保証)を与え得る(「過失」の概念は形式的に定義する)。RSSモデルは、オンラインテストに依存しないその検証のための効率的手段も提供し得る。
検知は、車両の動作と独立とすることができ、従って深刻な検知誤差の確率を、「オフライン」データを使用して検証することができるため、検知システムの誤差は、検証がより容易であり得る。しかし、109時間を超える運転のオフラインデータを集めることでさえ困難である。開示する検知システムの説明の一部として、著しく少量のデータを使用して検証することができる融合手法を記載した。
記載するRSSシステムは、何百万台もの車に合わせてスケーリング可能とすることもできる。例えば、記載の意味論的運転ポリシ及び適用される安全制約は、今日の技術でさえ何百万台もの車に合わせてスケーリング可能な検知及びマッピング要件と合致し得る。
かかるシステムの基礎を成す構成要素は、AVシステムが守る必要があり得る最小限の標準である安全性定義である。以下の技術的な補助定理では、「システムが1時間当たりN回の事故を起こす」等の単純な主張を検証することについてさえ、AVシステムの検証のための統計的手法が実行不可能であると示されている。これは、モデルベースの安全性定義のみがAVシステムを検証するための実現可能ツールであることを含意する。補助定理1 Xを確率空間とし、AをPr(A)=p
1<0.1が成立する事象とする。
i.i.d.サンプルをサンプリングし、
とする。従って、Pr(Z=0)≧e
−2が成立する。証明 不等式1−x≧e
−2x(付録A.1内で完全性について証明されている)を使用して次式を得る。
系1 AVシステムAV
1が、小さいが不十分な確率p
1で事故を起こすと仮定する。1/p
1サンプル与えられる任意の決定論的検証手続きは、AV
1と事故を全く起こさない別のAVシステムAV
0とを一定の確率で区別しない。
そのような確率の典型的な値にわたる展望を得るために、1時間当たり10−9の事故確率を望み、特定のAVシステムが10−8の確率のみを提供すると仮定する。たとえシステムが108時間の運転を得ても、システムが危険であることを検証プロセスが示すことができない一定の確率がある。
最後に、この課題は、単一の特定の危険なAVシステムを無効化することに関することに留意されたい。新たなバージョン、バグフィックス及び更新が必要になるため、完全な解決策は、単一のシステムとして見なすことができない。各変更は、単一のコード行の変更でさえ検証側の観点から新たなシステムを生成する。従って、統計的に検証される解決策は、新たなシステムによって観測され到達される状態の分布のシフトに対処するため、あらゆる小さい修正又は変更後に新たなサンプルにわたってそれをオンラインで行わなければならない。そのような膨大な数のサンプルを繰り返し且つ系統的に得ること(その場合にもシステムを検証できない一定の確率を伴う)は、実行不可能である。
更に、いかなる統計的主張も測定のために形式化されなければならない。システムが起こす事故の数にわたる統計的特性を主張することは、「システムが安全な方法で運転する」と主張するよりも著しく弱い。それを言うには、安全とは何かを形式的に定義する必要がある。
絶対的な安全性は、不可能である
車cが行う動作aは、将来のある時点においてその動作後に事故が起こらないことが可能である場合、絶対的に安全であると見なすことができる。例えば、図19に示すような単純な運転シナリオを観測することにより、絶対的な安全性を実現するのは不可能であることが分かる。車両1901の観点から、周囲の車が自らに衝突しないことを保証することができる動作はない。自律車両がそのような状況にあることを禁じることによってその問題を解決するのも不可能である。2レーンを超える全ての高速道路は、いずれかの時点においてこの問題を招くため、このシナリオを禁じると、車庫内に留まる必要があることになる。これらの含意は、一見したところ期待外れであるように思われる。何も絶対的に安全ではない。しかし、人間のドライバーが絶対的な安全性の要件に従わないことから明らかなように、上記で定めた絶対的な安全性を得るためのかかる要件は、厳し過ぎる可能性がある。むしろ、人間は、責任に依存する安全性の概念に従って行動する。
責任敏感型安全性
絶対的な安全性の概念から欠落している重要な側面は、殆どの事故の非対称性、すなわち衝突の責任があり、従って過失を負うべきなのが通常ドライバーの1人であることである。図19の例では、例えば、左側の車1909が突然追突してきた場合、中央の車1901に過失はない。中央の車1901に責任がないことを考慮する事実を形式化するために、自らのレーン内に留まるAV1901の挙動は、安全と見なすことができる。それを行うために、安全運転手法の前提としての役割を果たし得る「事故過失」又は事故責任の形式的概念について説明する。
一例として、直線道路に沿って縦に並んで同じ速度で運転している2つの車cf,crの単純な事例を検討する。前の車であるcfが、道路上に現れた障害物により突然ブレーキをかけ、それを回避できたと仮定する。残念ながら、cfから十分な距離を保っていなかったcrは、遅れずに反応することができずにcfの後部に衝突する。過失がcrにあることは明らかであり、前の車から安全な距離を保ち、予期せぬが妥当なブレーキに備えておくことは、後ろの車の責任である。
次に、より広範なシナリオ群、すなわち車が自由にレーン変更可能な複数レーン道路内での運転、他の車の経路内への割り込み、様々な速度での運転等を検討する。以下の解説を単純化するために、横軸、縦軸がそれぞれx軸、y軸である平面上の直線道路を想定する。これは、実際の曲線道路と直線道路との間の準同形を定めることによって緩やかな条件下で実現することができる。加えて、離散的な時空を検討する。定義は、直観的に異なる2組の事例、すなわち著しい横方向の操作が行われない単純なものと横方向の移動を伴うより複雑なものとを区別することを促進し得る。
定義1(車の地帯) 車cの地帯は、範囲[cx,left,cx,right]×[±∞]であり、但し、cx,left、cx,rightは、cの最も左の角の位置、最も右の角の位置である。
定義2(割り込み) 時点t−1において車c1(図20A及び図20Bの車2003)が車c0(図20A及び図20Bの車2001)の地帯に交差せず、時点tにおいて交差する場合、時点tにおいて車c1が車c0の地帯に割り込む。
地帯の前部/後部間で更に区別を行うことができる。「割り込みの方向」という用語は、関連する地帯の境界の方向に移動することを表し得る。これらの定義は、横方向の移動を伴う事例を定めることができる。ある車が別の車を追走する単純な事例等、かかる発生がない単純な事例では安全な縦方向距離が定められる。
定義3(安全な縦方向距離) 車cr(車2103)とcrの前方地帯内にある別の車cf(車2105)との間の縦方向距離2101(図21)は、応答時間pに関して安全であり、cfによって行われる任意のブレーキコマンドa、|a|<amax,brakeについて、crがその最大ブレーキを時間pから完全停止まで加える場合、crは、cfと衝突しない。
以下の補助定理2は、cr、cfの速度、応答時間p及び最大加速度amax,brakeに応じてdを計算する。pもamax,brakeも定数であり、規則によって何らかの妥当な値に決定されるべきである。
補助定理2 縦軸上でc
fの後ろにある車両をc
rとする。最大ブレーキコマンド及び最大アクセルコマンドをa
max,brake、a
max,accelとし、c
rの応答時間をρとする。車の縦速度をυ
r、υ
fとし、それらの長さをl
f、l
rとする。υ
p,max=υ
r+ρ・a
max,accelと定め、
と定める。L=(l
r+l
f)/2とする。従って、c
rの最小安全縦方向距離は、次式のようになる。
証明 時点tにおける距離をd
tとする。事故を防ぐために、全てのtについてd
t>Lを得なければならない。d
minを構築するために、d
0に対する最もきつい必要とされる下限を見つける必要がある。明らかに、d
0は、少なくともLである必要がある。T≧ρ秒後に2つの車が停止しない限り、前の車の速度は、υ
f−Ta
max,brakeであるのに対し、c
rの速度は、υ
ρ,max−(T−ρ)a
max,accelによって上限を設けられる。そのため、T秒後のこれらの車の間の距離は、
によって下限を設けられる。
T
rは、c
rが完全に停止する時間であり(0の速度)、T
fは、他方の車両が完全に停止する時間であることに留意されたい。a
max,brake(T
r−T
f)=υ
ρ,max−υ
f+ρa
max,brakeが成立し、そのため、T
r≦T
fである場合、d
0>Lであることを要求すれば足りることに留意されたい。T
r>T
fである場合、次式が成立する。
d
Tr>Lを要求し、項を整理すれば証明が完了する。
最後に、「マージン」の一部の概念との比較を可能にする比較演算子を定める。長さ及び速度等を比較する場合、非常に類似した量を「等しい」ものとして認める必要がある。定義4(μ比較) 2つの数a、bのμ比較は、a>b+μの場合にはa>μbであり、a<b−μの場合にはa<μbであり、|a−b|≦μの場合にはa=μbである。
以下の比較(argminやargmax等)は、一部の適切なμに関するμ比較である。車c1、c2間で事故が起きたと想定する。事故の過失が誰にあるかを検討するために、調べる必要がある関連する瞬間を定める。これは、事故前の且つ直観的に「復帰不能点」であったある時点であり、この時点後、事故を防ぐために何もすることができない。
定義5(過失時点) 事故の過失時点は、
・車の1つと他の車の地帯との間の交差があり、
・縦方向距離が安全ではなかった、事故前の最も早い時点である。
事故の瞬間は、両方の条件が当てはまるため、明らかにそのような時点はある。過失時点は、以下の2つの別個のカテゴリに分けることができる:
・割り込みも発生するものであり、すなわち、それは、ある車と他の車の地帯との交差の第1の瞬間であり、その交差は、危険な距離にある。
・割り込みが発生しないものであり、すなわち安全な縦方向距離で地帯との交差が既にあり、過失時点においてその距離が危険に変わっている。
定義6(横方向速度によるμ−Losing) 車c1、c2間で割り込みが発生すると仮定する。割り込みの方向に対するその横方向速度がc2の横方向速度よりもμ速い場合、c1が横方向速度でμ−Loseすると言える。
例えば、−1,1の速度(両方の車が互いに衝突する)は、互角であるが、速度が1,1+μ/2である場合、他方の車に対して正の方向を有する車に過失がある。直観的に、この定義は、別の車に横方向に非常に速く追突する車に過失を負わせることを可能にする。
定義7(横方向位置による(μ1,μ2)−勝利) 車c1、c2間で割り込みが発生すると仮定する。割り込みレーンの中央(割り込みに関連する地帯に最も近い中央)に対するその横方向位置が(絶対値で)μ1よりも小さくc2のものよりもμ2小さい場合、c1が横方向位置で(μ1,μ2)−勝利すると言える。
直観的に、レーンの中央に非常に近く(μ1)他の車よりもはるかに(μ2の分だけ)近い場合、その車に過失を負わせることはない。
定義8(過失) 車c1、c2間の事故の過失又は責任は、過失時点における状態の関数であり、以下のように定められる:
・過失時点が割り込み時ではない場合、過失は後ろの車にある。
・過失時点が割り込み時でもある場合、車の一方について、一般性を失わずにc1について一部の既定のμに関して以下の2つの条件、すなわち、
・横方向速度で負けないこと
・横方向位置で勝利すること
この事例では、c1が容赦される。換言すれば、危険な割り込みが発生した場合、車の一方が(著しく)横方向に速くなく、且つレーンの中央に(著しく)近い場合を除いて両方の車に過失がある。これにより、車を追走する場合に安全な距離を保ち、自らのレーン内を単純に走行する車の地帯に割り込む場合に安全な距離でのみ割り込むという所望の挙動が捕捉される。以下で更に論じるように、上記の安全ガイドラインに従うための自動コントローラベースシステムは、過度に自衛的な走行を引き起こすべきではない。
限られた検知への対処
高速道路の例を検討した後、次に第2の例は限られた検知の問題に対処する。事故について非難されたときの非常に一般的な人間の反応は、「しかし、見えなかった」カテゴリに属する。それは、多くの場合に真実である。時として道路の別の部分に集中する無意識の決定により、時として不注意により、及び時として物理的制約により(駐車車両の後ろに隠れている歩行者を見るのは不可能である)、人間の検知能力は、限られている。それらの人間の制約のうち、高度な自動検知システムは、後者の影響のみを受け、コンピュータは決して不注意にならないことと共に、360°の道路のビューは、コンピュータが人間の検知能力を上回ることを引き起こす。「しかし、見えなかった」の例に戻り、適切な回答は、「より注意すべきであった」である。限られた検知に関してどのようなものが慎重であるかを形式化するために、図22に示すシナリオを検討する。車2201(c0)が駐車場を出て(場合により)混んでいる道路に合流しようとしているが、その視界が建物2203によって遮られているため、道に車があるかどうかを見ることができない。これが30km/hの制限速度を有する都市の狭い道であると想定する。人間のドライバーの行動は、道路上にゆっくりと合流して検知の制限がなくなるまでより多くの視野を得ることである。遮られていた物体が初めて明らかになる最初の時点である有意の瞬間を定めるべきであり、物体が明らかになった後、他の任意の検知可能な物体と同様にそれに対処する。
定義9(露出時点) 物体の露出時点は、それを見ることができる最初の時点である。
定義10(不当な速度による過失) 露出時点において又はその後、車c1(車2205)が速度υ>υlimitで走行しており、c0がその速度で走行していなかったと想定する。この場合、過失は、c1のみにある。c1が不当な速度により過失を負うと言える。
この拡張は、c0が駐車場から安全に出ることを可能にする。本発明者らの先の責任敏感型安全性の定義を(道路状態及び制限速度に加えて妥当なマージンを使用する)動力学的なυlimitの定義と共に使用し、図示の最悪の事例において、必要であるのは、c1がυlimitを上回らないと仮定しながら割り込みが安全な縦方向距離にあるかどうかを確認することのみである。直観的に、これは、より遅く且つ遮蔽体から離れて走行し、それによりゆっくりと自らの視野を広げ、安全に道に合流することを後に可能にするようにc0を促す。
この限られた検知についての基本事例に事故責任の定義を拡張し、拡張群が同様の事例に対処し得る。見えなくされる可能性がある対象がどのようなものか(近接して駐車される2つの車の間に潜在的に速い車が隠れることはあり得ないが、歩行者はあり得る)及びその対象が行い得る最悪の事例の操作がどのようなものか(歩行者のυlimitは、車のυlimitよりもはるかに小さい)に関する単純な想定は、運転に対する制約を含意し、最悪の場合に備える必要があり、露出時点が突然訪れた場合に反応する能力を有する必要がある。都市のシナリオにおけるより複雑な例は、場合により駐車車両によって隠れている歩行者のシナリオから得ることができる。歩行者との事故に関する事故過失を定めることができる。
定義11(歩行者との事故の過失) 歩行者との事故の過失は、以下の3つ、すなわち、
・車の側部に歩行者が衝突し、車の横方向速度が衝突方向に対して
μ未満であること、 ・露出時点又はその後における歩行者の速度がυlimitを上回ったこと、
・車が完全に停止していたこと
の1つが当てはまらない限り、過失は、常に車にある。
変則的に、車がμよりも速く歩行者に追突しない一方で車の側部に歩行者が衝突する場合、又は車が停止している場合、又は歩行者が必ずしも衝突方向ではない何らかの方向に超人的に速く走っていた場合にのみ車に過失がない。
記載したシステムは、絶対的な安全性は保証しない可能性があるが、(たとえあったとしても)非常に少ない事故が自律車両間で起きるシナリオをもたらし得る。例えば、全ての車(及び他の道路利用者)が、行った動作の結果としての事故の過失を問われないことを問題なく検証できる場合、事故をなくすことができる。定義上、あらゆる事故について少なくとも1つの有責の車がある。従って、結果として生じる事故について(上記のRSSモデルに従って)責任を負う可能性がある動作を行う車がない場合、事故は、全く起きないはずであり、手に負えず実用的でない統計的方法が求める一種の絶対的な安全性又はほぼ絶対的な安全性をもたらす。
全ての道路の構造が単純なわけではない。交差点及び環状交差路等の一部は、様々な優先通行権の規則と共により複雑な状況を含む。隠れる物体の全てが車又は歩行者ではなく、自転車及びバイク、あらゆる適法の道路利用者を考慮すべきである。この節で紹介した原理は、これらの追加の事例に拡張することができる。
責任敏感型安全性のための効率的に検証される条件
この節は、RSSの実装の側面について論じる。まず始めに、ここで行われる動作は、例えば、10分間の走行後の事故に対する一連の事象を引き起こすバタフライ効果を有し得ることに留意すべきである。起こり得る全ての将来の結果を調べる「総当たり的」手法は、実際的でないだけでなく、不可能である可能性が高い。この課題を克服するために、次に、上記の責任敏感型安全性の定義についてそれらを検証するのに計算効率の良い方法と共に説明する。
計算的に実現可能な安全性検証。
計算的に実現可能な検証のための主な数学的ツールは、「帰納法」である。帰納法によって主張を証明するために、単純な事例に関する主張を証明することから始め、その後、帰納法の各ステップがより入り組んだ事例に証明を拡張する。この帰納法ツールが安全性検証にどのように有用であり得るかを示すために、別の車cfを追走する車crの単純な例(図21)を再び検討する。以下の制約は、crのポリシに適用することができる。たとえcfが−amaxの減速を加えても、その結果生じる次の時間ステップにおけるcrとcfとの間の距離が少なくとも(定義3及び補助定理2で定めた)安全な縦方向距離になるように、ポリシは、各時間ステップtにおいて任意の加速コマンドを選ぶことができる。そのような動作が存在しない場合、crは、減速−amaxを適用しなければならない。以下の補助定理は、帰納法を使用して、上記の制約に従ういかなるポリシもcfとの事故を決して起こさないことを証明する。
補助定理3 定義3で与えた仮定の下、crのポリシが上記で示した制約に従う場合、crは、cfとの事故を決して起こさない。
証明 証明は、帰納法による。帰納法の基礎に関して、(補助定理2に従い)2つの車間距離が安全である最初の状態から開始する。帰納法のステップは、以下の通りである。ある時点tにおけるcrとcfとの間の距離を検討する。(cfが最大限の減速を行っても)安全な距離をもたらす動作がある場合には問題ない。全ての動作が安全な距離を保証できない場合、最大限の減速ではない動作を行った最大時間をt'<tとする。帰納法の仮定により、時点t'+1では安全な距離にあり、そこから最大限の減速を行った。従って、安全な距離の定義により、時点t'から現在まで衝突はなく、それが証明を結論付ける。
上記の例は、より全般的な概念、すなわち極端な事例においてcrによって行われ、crを「安全な状態」に戻す何らかの緊急操作があることを実証する。上記で説明したポリシに対する制約は、将来の1つの時間ステップのみに依存し、従って計算効率の良い方法で検証できることに留意すべきである。
RSSのための十分な局所特性の概念を汎用化するために、デフォルト緊急ポリシ(DEP)をまず定義し、「慎重」と呼ぶ動作実行の局所特性を定めるための構成要素としてそれを使用する。従って、慎重なコマンドのみを取ることがRSSに十分であると示される。
定義12(デフォルト緊急ポリシ) デフォルト緊急ポリシ(DEP)は、最大ブレーキ力及びレーンに対する0の進行方位に向けた最大限の進行方位の変更を加えることである。最大ブレーキ力及び進行方位の変更は、車の物理的パラメータから(場合により気象条件及び道路条件からも)導出される。定義13(安全な状態) 状態sは、状態sから始まるDEPを行うことが自らに過失がある事故を引き起こさない場合安全である。別の車を追走する車の単純な事例にあるのと同様に、それが安全な状態をもたらす場合、コマンドを慎重であると定める。ここで、定義14(慎重コマンド) 状態s0にあると仮定する。他の車両がここで行う可能性がある可能なコマンドの組Aに対して次の状態s1が安全である場合、コマンドaは、慎重である。上記の定義は、他の車両が行い得る組Aの中の最悪の事例のコマンドに依存する。最大限のブレーキ/加速及び横方向の移動に対する妥当な上限に基づいて組Aを構築する。
以下の理論は、ここでも帰納法により、慎重なコマンドのみを出す場合、自らに過失がある事故がないことを証明する。定理1 時点0においてcが安全な状態にあり、全ての時間ステップについてcが慎重なコマンドのみを出し、何らかの時間ステップにおいて慎重なコマンドが存在しない場合、cがDEPを適用すると仮定する。従って、cは、自らに過失がある事故を決して起こさない。証明 帰納法による。帰納法の基礎は、安全な状態の定義及び慎重なコマンドの定義からのステップから得られる。
安全な状態に迅速に戻り、そこから安全に続行することができるため、この手法の1つの利益は、無限の将来を調べる必要がない可能性があることである。更に、t+1において再び計画すること、従って必要に応じてDEPをそこで実行できることを所与として、頭の中にあり得る可能な長期の計画ではなく(その計画は、t+1において変えることができる)、時点tにおいて与えているコマンドのみを調べるべきである。次に、このトランスペアレントモデルによって実行時に検証されるとき、システムに学習成分を組み込むことが可能にされる。最後に、この局所的検証は、本発明者らの所望の目標である完全な将来のRSSを含意する。実装の妨げは、別のエージェントがtbrakeまで実行可能な全ての軌道を慎重さの定義が含むことであり、それは、中程度のtbrakeでさえ莫大な空間である。この問題に対処するために、次に慎重さ、従ってRSSをスケーラブルな方法で検証するための効率的に計算可能な方法を開発する。
効率的な慎重さの検証
第1の見解は、当方がDEPを実行する一方で当方に過失がある事故を引き起こす組Aからのコマンドを実行し得る特定の車両
があるとき且つそのときに限り、状態は安全ではない。従って、
で示す単一の目標車両があるシーン及び全般的な事例において、シーン内の他の車両のそれぞれについて手続きを逐次的に実行することができる。
単一の目標車両を検討する場合、cに過失がある事故を発生させる、全て組Aの中にある
で示す
のための一連のコマンドがあるとき且つそのときに限り、動作aは慎重でない。既に証明したように、時点0において、
がcの前方地帯内にあることが該当する場合、aの慎重さを調べる簡単な方法があり、すなわち、たとえ
が1つの時間ステップについて最大ブレーキをかけても(当方は、aを実行する)、その結果生じる縦方向距離が安全なままであることを検証するのみでよい。以下の補助定理は、横方向の操作も検討すべきより入り組んだ事例における慎重さに関する十分な条件を与える。
補助定理4 時点T=0において、
がcの前方地帯にないと仮定する。全てのT∈(0,t
brake]において、cに過失がある危険な割り込みがない場合、aは、慎重である。
証明 aが慎重ではない、すなわちcに過失がある事故を引き起こす
が存在すると仮定する。事故前に割り込みの時点Tがなければならない。T>0であるとまず仮定する。この割り込みが安全な縦方向距離にあった場合、DEPが−a
maxの減速によって且つ安全な縦方向距離の定義に基づいて実行されることにより、当方に過失がある事故はあり得ない(ここで、応答時間ρがステップの時間分解能を上回ると仮定する)。割り込みが安全ではなかった場合、補助定理の仮定により、過失は、cになく、従って事故の過失もcにはない。
最後に、T<0の場合、補助定理の仮定により、割り込みの瞬間において、
は、cの後方地帯にあった。帰納法により、cは、過去に安全な割り込みのみを行っており、従って割り込みが安全であったか又はcに過失があった。いずれの場合にも現在の事故の過失はcにない。
補助定理4に照らして、cに過失がある危険な割り込みがあり得るかどうかを調べる問題が残る。時点tにおける危険な割り込みの可能性を調べるための効率的なアルゴリズムを以下に示す。全軌道を検証するために、時間間隔[0,t
brake]を離散化し、(離散化が害されないことを確実にするために安全な距離の定義内のpの僅かに大きい値と共に)全ての時間間隔にアルゴリズムを適用する。
に境界を付ける最小限の矩形の対角線の長さを
とする。時点t∈[0,t
brake]ごとに、時点tにおけるcの縦方向の「スパン」であるようにc
length(t)を定め、
とする。c
width[t]を同様の方法で定め、
が成立する。
以下の定理は、上記のアルゴリズムの正当性を証明する。
定理2 アルゴリズム1が「実現不能」を返す場合、時点tにおける自車に過失がある危険な割り込みはあり得ない。この定理を証明するために、アルゴリズム1の2つの構成要素の正当性を証明する以下の重要な補助定理を利用する。縦方向の実現可能性から始める。
補助定理5 アルゴリズム1の表記の下、「実現不能」を返すことにより縦方向の実現可能性を調べる手続きが結論付けられる場合、時点tにおける自車に過失がある危険な割り込みはあり得ない。
証明 割り込み操作の横方向の側面を無視し、cと
との間の縦方向距離が危険である単なる可能性を調べる。位置
は、時点tにおいて、
によって得ることができる位置に境界を付けることが明らかである。
が成立することにより、得ることができる任意の縦方向の危険な距離が≧Lであることが得られる。
であると仮定し、a
y,min,a
y,maxによって境界を付けられる加速コマンドを使用して、
、
で示す危険な縦方向位置及び速度が得られると矛盾律によって仮定する。
の定義により、
が得られ、従って車間距離がより大きく、すなわち、
が成立する。
は、(y[t],υ
y[t])に対して縦方向に安全であるため、縦方向の危険の定義により、得られる速度
は、
よりも小さくなければならないことになる。しかし、より遅い速度を実現するには、時間窓[0,t]の全体を通して、
がa
y,min未満の平均加速度を使用しなければならず、従って縦方向の危険が、a
y,min,a
y,maxによって境界を付けられるコマンドを使用して得られることと矛盾することが明らかである。
の場合、対称な引数を検討することによって証明が完了する。
次に、横方向の実現可能性である。
補助定理6 アルゴリズム1の表記の下、「実現不能」を返すことにより横方向の実現可能性を調べる手続きが結論付けられる場合、時点tにおける自車に過失がある危険な割り込みはあり得ない。
証明 まず、仮定x[t]=0、
及びv
x[t]に関するものにより、座標の単純な変化及び相対速度の検討によって一般性が失われないことが明らかである。更に、同様の引数により、
が成立する場合の事例に簡単に拡張できる。
本発明者らの事例では、(x[t],x[t]−W)である割り込みに関与する車の位置は、過失に影響を及ぼす何らかの横方向位置による(μ1,μ2)−勝利特性を含意することに留意されたい。横方向速度をμ−「tie」するために(cが横方向位置で(μ1,μ2)−勝利しない場合、cに過失を負わせるにはこれで十分であり得る)、又は横方向速度をμ−勝利する(cが横方向位置で(μ1,μ2)−勝利する場合、cに過失を負わせるにはこれが必要である)ために、cに過失があるという想定下において、v
x[t]に対する本発明者らの仮定により時点tにおいて、
が使用できる最大限の横方向速度は、0であることが得られる。最終位置
と共にa
x,maxによって境界を付けられる横加速度を使用し、
から始まり
で終わる操作が存在するかどうかを確認することが残されている。言葉では、所望の横方向速度0で終わる割り込みである。
アルゴリズムの定義
を想起されたい。t
top<0であると仮定する。これは、最大限の横加速度、すなわち、
を使用するとき、
が横方向速度0に到達するのに必要な時間がt未満であることを含意する。これは、所望の速度に遅れずに到達するためにそれが実行可能な操作がなく、従って問題のある操作が存在しないことを含意する。従って、この手続きがt
top<0により「実現不能」を返す場合、実際cに過失がある危険な割り込みの実現可能性はない。
t
top>0の事例を検討する。ここで、手続きがx
max<−Wにより「実現不能」を返す。
で示し、aによってパラメータ化される、時間範囲[0,t]内の
のための横方向速度プロファイル群を検討する。アルゴリズム内で使用したのと同様の方法において、
をaごとに定める。全ての
について、t
top(a)>0が成立することに留意されたい。次いで、全ての時点t
'0[0,t]に関する速度プロファイルu
aを以下のように定める。
まず、u
aが制約
を満たすことが見て取れる。第2に、u
aを使用している間に移動した距離を計算することができ、それは、この距離が区分線形関数の積分に相当するからである。到達位置を
として定め、アルゴリズム内で定めたx
maxは、正確に、
であることに留意されたい。第3に、移動距離がaと共に単調増加しており境界付けされていないことが見て取れる。従って、所望の任意の最終位置
について、
が成立するaの値が存在する。具体的には、x=x[t]−Wでは、かかる値が存在し、それをa
cutで示す。
アルゴリズム内で定めたxmaxが<x[t]−Wであるため、acut>ax,maxが得られることを認識されたい。いずれの有効な操作も位置≧x[t]−Wをもたらすことができないことを示すために、これは、不十分であり、これは、U群のメンバについてのみ含意される。次に、Uの外側でさえx[t]−Wの最終位置を得る全ての速度プロファイルが少なくともacutの加速度値を路上で使用しなければならないことを証明し、かかる加速度値は、それらの速度プロファイルを無効にし、従って証明を完了する。
一部の速度プロファイルuが境界制約
を満たすと仮定する。更に、その速度プロファイルuが何らかの最終位置
を得ると仮定する。こうして、次式が得られる。
全てのτについて、
が成立すると仮定する。具体的には、
が成立する。平均値の定理から、
となるようなζ0[0,t
top(a
cut)]が存在し、a
x,maxを上回る加速度(すなわちu
'、速度の微分)を使用することを理由にuの実現不能性を暗示する。
次に、
が全てのτに当てはまらないと仮定する。その場合、
が成立することにより、
となる点がなければならない。かかる点τ
largeが[0,t
top(a
cut)]内にある場合、上記と同じ方法で平均値の定理を容易に使用して、大き過ぎる加速度が使用されるζ0[0,τ
large]を得る。この点が[t
top(a
cut),t]内にのみ存在する場合、−a
x,max未満の加速度値が使用される点ζ0[τ
large,t]を同様の引数が与え、証明を結論付ける。上記の補助定理を備え、定理2の証明は即時である。
安全性検証−遮蔽
観測される物体に対処するのと同様の方法において、当方に過失がある事故が決してないことを慎重さが含意することを条件に、隠れた物体に対する慎重さの拡張を定理1と同様の定理を用いて定義することができる。
定義15(隠れた物体に対する慎重さ) 物体の露出時点がt+1であり、t+1においてデフォルト緊急ポリシ(DEP)を命じ、当方に過失がある事故がない場合、時点tにおいて与えられるコマンドは、隠れた物体に対して慎重である。
補助定理7 隠れた物体及び隠れていない物体に対する慎重なコマンドのみを出す場合、自らに過失がある事故は決してない。
証明 露出時点がt'≦tの状態において、自らに過失がある事故が時点tにおいて生じたと仮定する。慎重さの仮定により、t'−1において与えたコマンドは、事故の過失を問われることなしにt'においてDEPを命じることを可能にした。当方に過失がある事故があったため、当方は、時点t'において明らかにDEPを命じていない。しかし、t'以降、当方は、隠れていない物体に対して安全であったため、当方が与えたコマンドは、安全であり、当方に過失がある事故はなかった。
ここでも、実現可能且つスケーラブルなRSSを可能にする、隠れた物体に関する最悪の事例の仮定に対する慎重さを確認するための効率的な方法を提供する。
運転ポリシ
運転ポリシは、検知状態(人間を取り巻く世界の記述)から運転コマンド(例えば、コマンドは、現在から1秒後に車がいずれにあるべきか及びいずれの速度にあるべきかを決定する、次の秒の横加速度及び縦加速度である)へのマッピングである。運転コマンドは、コントローラに伝えられ、コントローラは、所望の位置/速度に車を実際に動かすことを目指す。
前の節では、形式的な安全モデル及び安全を保証する運転ポリシが出すコマンドに対する提案される制約について説明した。安全性に対する制約は、極端な事例について設計される。概して、これらの制約を必要とすることさえ望んでおらず、快適な乗り心地をもたらす運転ポリシを構築したい。この節の焦点は、効率的な運転ポリシ、具体的には何百万台もの車に合わせてスケーリング可能な計算資源を必要とする運転ポリシをどのように構築するかに関する。現在、この解説は検知状態を得る方法の問題に対処せず、人間を取り巻く世界を一切の制限なしに忠実に表す理想的な検知状態を仮定する。検知状態が不正確であることの運転ポリシに対する影響については、後の節で解説する。
上記の節で論じた強化学習(RL)の言語において、運転ポリシを定める問題を明らかにする。RLの各反復時、エージェントは、世界を記述するs
tで示す状態を観測し、状態を動作にマップするポリシ関数πに基づいてa
tで示す動作を選ぶべきである。自らの動作及び自らの制御が及ばない他の要因(他のエージェントの動作等)の結果、世界の状態がs
t+1に変わる。(状態,動作)シーケンスを
で示す。全てのポリシは、(状態,動作)シーケンスにわたる確率関数を引き起こす。この確率関数は、エージェントが行う動作の影響を受ける可能性があるが、環境(具体的には他のエージェントがどのように振る舞うか)にも依存する。πによって引き起こされる(状態,動作)シーケンスにわたる確率をPπで示す。ポリシの質は、
であるように定められ、
は、シーケンス
がどの程度優れているかを測定する報酬関数である。殆どの事例において、
は、
の形式を取り、ρ(s,a)は、状態sにあり動作aを行う即時の質を測定する瞬間報酬関数である。例えば、簡単にするに、より単純なこの事例で進める。
上記のRL言語における運転ポリシの問題を明らかにするために、道路並びに自車両のみならず他の道路利用者の位置、速度及び加速度の何らかの表現をstとする。横及び縦の加速コマンドをatとする。次の状態st+1は、at並びに他のエージェントがどのように振る舞うかに依存する。瞬間報酬ρ(st,at)は、他の車に対する相対位置/速度/加速度、当方の速度と所望の速度との差、所望のルートをたどるかどうか、当方の加速度が快適であるかどうか等に依存し得る。
時点tにおいてポリシがいずれの動作を行うべきかを決定する際の1つの課題は、報酬に対するこの動作の長期的効果を推定しなければならないことに由来する。例えば、運転ポリシに関連して、時点tにおいて行われる動作が現在では良い動作のように思われる(すなわち報酬値ρ(st,at)が良い)ことがあり得るが、5秒後に事故を招く(すなわち5秒後の報酬値が破滅的になる)可能性がある。従って、エージェントが状態sにあるとき、動作aを行う長期的な質を推定する必要がある。これは、多くの場合、Q関数と呼ばれ、すなわち、Q(s,a)は、時点sにおいて動作aを行う長期的な質を反映すべきである。かかるQ関数を所与として、動作の自然な選択は、最も高い品質のもの、π(s)=argmaxaQ(s,a)を選ぶことである。
当面の問題は、Qをどのように定め、Qをどのように効率的に評価するかである。st+1は、(st,at)の何らかの決定論的関数、すなわちst+1=f(st,at)であるという(完全に非現実的な)仮定の単純化をまず行いたい。マルコフ決定プロセス(MDP)に詳しい者であれば、この仮定がMDPのマルコフ仮定よりも一層強いこと(すなわち(st,at)を所与としてst+1が過去と条件付き独立であること)が認識されるであろう。[5]で述べたように、マルコフ仮定でさえ運転等のマルチエージェントシナリオには不十分であり、従って後に仮定を緩和する。
この仮定の単純化の下、s
tを所与として、Tステップの決定のシーケンス(a
t,...,a
t+T)ごとに時点t,...,Tに関する将来の状態(s
t+1,...,s
t+T+1)並びに報酬値を正確に計算することができる。これらの全ての報酬値を、例えば、それらの合計
を取ることによって単一の数字に要約すると、Q(s,a)を以下のように定めることができる。
すなわち、Q(s,a)は、当方が状態sにあり、動作aを直ちに実行する場合に望むことができる最良の将来である。
どのようにQを計算できるかについて解説する。最初の考えは、可能な動作の組Aを有限の組
に離散化し、離散化した組内の全ての動作シーケンスを単純に横断することである。次いで、離散的な動作シーケンス
の数によってランタイムが支配される。
が10の横加速度及び10の縦加速度を表す場合、100
Tの可能性が得られ、これは、小さいT値でさえ実現不能になる。探索を加速するためのヒューリスティックス(例えば、粗密探索)が存在するが、この総当たり的手法は、途方もない計算力を必要とする。
パラメータTは、多くの場合に「計画の対象期間」と呼ばれ、計算時間と評価の質との間の自然なトレードオフを制御し、Tが大きいほど現在の動作についての本発明者らの評価が(その影響を一層先の将来まで明確に調べるため)より優れるが、他方では、Tが大きいことは、計算時間を指数関数的に増加させる。大きいT値が必要であり得る理由を理解するために、高速道路出口の200メートル手前におり、その出口から出るべきシナリオを検討する。対象期間が十分長い場合、tとt+Tとの間の何らかの時点τにおいて出口レーンに到達しているかどうかを累積報酬が示す。他方では、短い対象期間では、正しい即時の動作を実行しても、それがやがて自らを出口レーンに至らせるかどうかは分からない。
別の手法は、
で示すQの近似を構築するためにオフラインの計算を行い、ポリシのオンライン実行中、将来を明確にロールアウトすることなしに、
をQに対する近似として使用しようと試みる。かかる近似を構築する1つの方法は、動作領域及び状態領域の両方を離散化することである。これらの離散化した組を
、
で示す。オフラインの計算はA。全ての
についてQ(s,a)の値を評価することができる。次いで、全ての
に関して、
を
についてQ(s,a)であるように定める。更に、ベルマンの先駆者的研究[2,3]に基づき、動的計画法の手続き(価値反復アルゴリズム等)に基づいて、
ごとにQ(s,a)を計算することができ、本発明者らの仮定下では総ランタイムは、
程度である。この手法の主な問題は、いかなる妥当な近似においても
が(次元数の問題により)極めて大きいことである。実際、検知状態は、シーン内の他の全ての関連車両について6つのパラメータ、すなわち縦方向位置、横方向位置、速度及び加速度を表すべきである。たとえ各次元を僅か10個の値に離散化しても(非常に粗い離散化)、6つの次元があるため、単一の車を記述するのに10
6の状態が必要であり、k台の車を記述するには10
6kの状態が必要である。これは、
内の全ての(s,a)についてQの値を記憶するための非現実的なメモリ要件を招く。
この次元数の問題に対処するための1つの手法は、手動で決定された特徴にわたる線形関数又はディープニューラルネットワーク等の制限された関数族(多くの場合に仮説クラスと呼ばれる)から到来するようにQを制限することである。例えば、Atari社のゲームでの遊びに関連して、Qを近似するディープニューラルネットワークを検討する。Qを近似する関数族を効率的に評価できるという条件において、これは、資源効率の良い解決策をもたらす。しかし、この手法の幾つかの不利点がある。まず、選択される関数族が所望のQ関数への優れた近似を含むかどうかは分からない。第2に、たとえそのような関数が存在しても、既存のアルゴリズムがそれを効率的に学習できるかどうかは分からない。これまでのところ、運転において直面する問題等の複雑なマルチエージェント問題についてQ関数を学習することの成功談は多くない。この作業が困難である幾つかの理論的理由がある。マルコフ仮定に関して述べたように、基礎を成す既存の方法に問題がある。しかし、以下で説明するように、より深刻な問題は、意思決定の時間分解能に起因する非常に小さい信号対雑音比である。
車両が残り200メートルで高速道路出口から出るためにレーンを変更する必要があり、現在道路に何もない単純なシナリオを検討する。最良の決定は、レーンを変更し始めることである。決定は、0.1秒ごとに行うことができ、そのため、現時点tにおいてQ(st,a)の最良の値は、右への僅かな横加速度に対応する動作aに関するものであるべきである。ゼロの横加速度に対応する動作a'を検討する。ここでレーンを変更すること又は0.1秒後に変更することでは非常に小さい差のみがあるため、Q(st,a)及びQ(st,a')の値は、ほぼ同じである。換言すれば、a'に優先してaを選ぶ利点は、非常に小さい。他方では、Qに関する関数近似を使用しており、状態stを測定する際に雑音があるため、Q値に対する本発明者らの近似は、雑音を伴う可能性が高い。これは、非常に小さい信号対雑音比の原因となり、それは、とりわけニューラルネットワークの近似クラスで頻繁に用いられる確率的学習アルゴリズムでの非常に遅い学習につながる。しかし、述べたように、この問題は、特定の関数近似クラスの特性ではなく、むしろQ関数の定義に固有である。
要約すると、利用可能な手法は、2つのグループに大まかに分けることができる。最初のグループは、多くの動作シーケンスにわたって探索すること又は検知状態領域を離散化し、莫大な表をメモリ内に保つことを含む総当たり的手法である。この手法は、Qの非常に正確な近似をもたらし得るが、計算時間に関して又はメモリに関して無限の資源を必要とする。第2のグループは、資源効率の良い手法であり、この手法では短い動作シーケンスを探索するか又はQに関数近似を適用する。いずれの場合にも、低品位の決定の原因になり得る低精度のQの近似を得ることに直面する。
本明細書に記載の手法は、資源効率が良く且つ正確であり、幾何学的動作から離れ、次の小節で説明する意味論的動作空間に適合すべきQ関数を構築することを含む。
意味論的手法
開示する意味論的手法の基礎として、運転免許証を取得したばかりの若者を検討する。若者の父親が隣に座って「運転ポリシ」の指示を若者に与える。これらの指示は、幾何学的ではない(「現在の速度で13.7メートル走行し、次いで0.8m/s2の率で加速する」という形式を取らない)。むしろ、これらの指示は、意味論的な性質のものである(「前の車を追走する」又は「あの左側の車を迅速に追い越す」)。そのような指示のための意味論的言語を形式化し、それを意味論的動作空間として使用する。次いで、意味論的動作空間にわたるQ関数を定める。意味論的動作は、将来の多くの意味論的動作を計画することなしにQ(s,a)を推定することを可能にする、非常に長い対象期間を有し得ることを示す。意味論的動作の総数は、依然として少ない。これは、資源効率の良さを依然として保ちながらQ関数の正確な推定を得ることを可能にする。更に、後に示すように、様々な意味論的動作間の有意差に起因する小さい信号対雑音比に直面することなしに品質関数を更に改善するために学習技法を組み合わせる。
次に、意味論的動作空間を定める。主な考えは、横方向の目標及び縦方向の目標並びにそれらの目標を達成する攻撃度のレベルを定めることである。横方向の目標は、レーンの座標系内の所望の位置である(例えば、「目標は、レーン番号2の中央にいることである」)。縦方向の目標は、3つの種類からなる。第1は、他の車両に対する相対位置及び速度である(例えば、「目標は、車番号3の後ろに車番号3と同じ速度で且つ車番号3から2秒の距離にいることである」)。第2、は速度目標である(例えば、「この道路の許容速度に110%を掛けた速度で走行する」)。第3は、特定の位置における速度制約である(例えば、交差点に到達するときの「停止線における0の速度」又は急なカーブを通過するときの「カーブ上の特定の位置における最大60km/hの速度」)。第3の選択肢では、代わりに「速度プロファイル」(ルート上の幾つかの離散点及びそれらの点のそれぞれにおける所望の速度)を適用することができる。横方向の目標の妥当な数は、16=4×4(関連する最大4レーンにおける4つの位置)によって境界を付けられる。第1の種類の縦方向の目標の妥当な数は、8×2×3=48(前又は後ろにある関連する8つの車及び関連する3つの距離)によって境界を付けられる。絶対速度目標の妥当な数は、10であり、速度制約の数に対する妥当な上限は、2である。所与の横方向の目標又は縦方向の目標を実施するには、加速とその後の減速と(又はその逆)を加える必要がある。目標を達成する積極性は、目標を達成するための(絶対値で)最大限の加速度/減速度である。目標及び積極性を定めた状態で運動学的計算を使用し、目標を実施するための閉じた式が得られる。残った唯一の部分は、横方向の目標と縦方向の目標との間の組み合わせ(例えば、「横方向の目標から開始し、まさにその途中で縦方向の目標も適用し始める」)を決定することである。5つの混合時間及び3つの積極性のレベルの組で十分過ぎるように思われる。全体として、そのサイズが約104である意味論的動作空間を得た。
これらの意味論的動作を満たすのに必要な可変時間は、意思決定プロセスの頻度と同じではないことに触れる価値がある。動的な世界に反応的であるために、高い頻度において、本発明者らの実装形態では100msごとに意思決定を行うべきである。対照的にそのような各決定は、はるかに長い対象期間(例えば、10秒)を有する一部の意味論的動作を満たす軌道を構築することに基づく。軌道の短期プレフィックスをより良く評価することを促進するため、より長い対象期間を使用する。次の小節では意味論的動作の評価について解説するが、その前に意味論的動作が十分な探索空間を引き起こすことを主張する。
上記で論じたように、意味論的動作空間は、あり得る全ての幾何学曲線を列挙するよりも(Tにおいて)そのサイズが指数関数的に小さいあり得る全ての幾何学曲線のサブセットを引き起こす。最初の即時の質問は、このより小さい探索空間の短期プレフィックスの組が、本発明者らが使用したい全ての幾何学的コマンドを含むかどうかである。これは、以下の意味で実際に足りる。道路に他のエージェントがない場合、縦方向の目標、及び/又は絶対加速度のコマンド、及び/又は特定の位置に対する速度制約を設定することを除いて変更を加える理由はない。道路が他のエージェントを含む場合、他のエージェントと優先通行権を折衝したい場合がある。この場合、他のエージェントに対して縦方向の目標を設定すれば十分である。これらの目標の正確な実施は長期的に変わり得るが、短期プレフィックスは、さほど変わらない。従って、関連する短期の幾何学的コマンドの非常に優れた有効範囲が得られる。
意味論的動作のための評価関数の構築
A
Sで示す意味論的動作の組を定めた。現在状態sにあることを所与とし、最良のa
S0A
Sを選ぶ方法が必要である。この問題に対処するために、[6]の選択肢のメカニズムと同様の手法をたどる。基本的な考えは、a
Sをメタ動作(meta−action)(又は選択肢)として考えることである。メタ動作の選択ごとに、メタ動作a
Sの実施を表す幾何学的軌道(s
1,a
1),...,(s
T,a
T)を構築する。それを行うには、当方の動作に他のエージェントがどのように反応するかを当然ながら知る必要があるが、現在、一部の既知の決定論的関数fについてs
t+1=f(s
t,a
t)が成立するという(非現実的な)仮定を引き続き利用する。状態s
1にあるときに意味論的動作a
Sを実行する品質の優れた近似として、
を使用することができる。
この手法は、強力な運転ポリシをもたらすことができる。しかし、一部の状況では、より洗練された品質関数が必要な場合がある。例えば、出口レーンに行かなければならないところ、出口レーンの手前で遅いトラックを追走していると仮定する。1つの意味論的選択肢は、トラックの後ろをゆっくり走行し続けることである。別の意味論的選択肢は、後に出口レーンに戻って遅れずに出ることができることを願ってトラックを追い越すことである。先に記載した品質測定は、トラックを追い越した後に何が起きるかを考慮しないため、たとえ追い越しを行って出口レーンに戻るのに十分な時間があっても第2の意味論的動作を選択することはない。機械学習は、即時の意味論的動作よりも多くを考慮に入れる、意味論的動作のより優れた評価を構築することを促進し得る。先に論じたように、即時の幾何学的動作にわたるQ関数の学習は、信号対雑音比が低いこと(利点の欠如)により問題をはらむ。これは、意味論的動作を検討する場合には問題にならず、それは、様々な意味論的動作を行うことの間に大きい差があるからであり、且つ意味論的な対象期間(何個の意味論的動作を考慮に入れるか)が非常に小さい(場合により多くの場合で3個未満)からである。
機械学習を適用することの別の潜在的利点は、汎用化のためであり、すなわち幾らかの試行錯誤を伴い得る道路の特性の手作業での調査によって全ての道路について十分な評価関数を設定することができる。ここで、未知の道路に対しても汎用化するために、上記で論じたように、機械学習法を多岐にわたる道路の種類に基づいてトレーニングすることができる。開示する実施形態による意味論的動作空間は、潜在的利益を可能にすることができ、すなわち、意味論的動作は、長い対象期間に関する情報を含み、従って資源効率が良いままでそれらの品質の非常に正確な評価を得ることができる。
他のエージェントの動力学
これまでのところ、st+1がst及びatの決定論的関数であるという仮定を利用してきた。前に強調したように、当方の動作が他の道路利用者の振る舞いに影響を及ぼすため、この仮定は、完全には現実的でない。自らの動作に対する他のエージェントの一部の反応を考慮に入れる(例えば、安全な割り込みを行う場合、自らの後ろの車は、背後から当方に追突しないようにその速度を調節すると仮定する)が、他のエージェントの動力学の全てをモデリングすると仮定するのは現実的ではない。この問題に対する解決策は、意思決定を高頻度で再適用し、そうすることにより、本発明者らのモデリングを超えた環境の部分に本発明者らのポリシを絶えず適合させることである。ある意味において、これは、全てのステップにおける世界のマルコフ化と考えることができる。
検知
この節は、検知状態について説明し、検知状態は、シーンの関連情報の記述であり、運転ポリシモジュールへの入力を形成する。概して、検知状態は、静的物体及び動的物体を含む。静的物体は、レーン、道路の物理的な区切り、速度に対する制約、優先通行権に対する制約及び遮蔽体(例えば、合流する道路の関連部分を遮るフェンス)に関する情報である。動的物体は、車両(例えば、バウンディングボックス、速度、加速度)、歩行者(バウンディングボックス、速度、加速度)、信号機、道路の動的な区切り(例えば、工事区域のコーン)、一時的な交通標識及び警察の行動並びに道路上の他の障害物(例えば、動物やトラックから落ちたマットレス等)である。
いかなる妥当なセンサ設定でも正確な検知状態sを得ることは期待できない。代わりに、x0Xで示す生のセンサ及びマッピングデータを考察し、xを取り適切な検知状態を作り出す検知システムがある。
定義16(検知システム) 検知状態の領域をSが示すものとし、生のセンサ及びマッピングデータの領域をXとする。検知システムは、関数
である。
をsへの妥当な近似としていずれの時点で認めるべきかを理解することは重要である。この質問に答える最終的な方法は、概して本発明者らの運転ポリシの性能、具体的には安全性に対するこの近似の含意を調べることによる。本発明者らの安全性−快適さの区別に従い、ここでも危険な挙動につながる検知の間違いと乗車の快適さの側面に影響を及ぼす検知の間違いとを区別する。詳細を述べる前に、検知システムが行い得るエラーの種類は、以下を含み得る。
・偽陰性:検知システムが物体を見逃す
・偽陽性:検知システムが「実際にはない」物体を示す
・不正確な測定:検知システムが物体を正しく検出するが、その位置又は速度を不正確に推定する
・不正確な意味論:検知システムが物体を正しく検出するが、その意味論的意味、例えば信号機の色を間違って解釈する
快適さ
意味論的動作aについて、現在の検知状態がsであることを所与として、aの評価を示すためにQ(s,a)を使用したことを想起されたい。本発明者らのポリシは、動作π(s)=argmax
aQ(s,a)を選ぶ。sの代わりに、
を投入した場合、選択される意味論的動作は、
になる。
が成立する場合、
は、sへの優れた近似として受け入れられるべきである。しかし、真の状態sに対する
の質は、何らかのパラメータεについてほぼ最適である、すなわち、
が成立する限り、
を選んでも問題ない。この場合、
がQに対してεaccurateであると本発明者らは言う。必然的に、検知システムが常にεaccurateであることは予期できない。従って、検知システムが幾らかの小さい確率δで失敗することも認める。この場合、(ValiantのPAC学習用語を借りて)
がProbably(少なくとも1−δのw.p.)、Approximately(εまで)、Correct又は略してPACであると本発明者らは言う。
システムの様々な側面を評価するために幾つかの(ε,δ)の対を使用することができる。例えば、軽度のミス、中程度のミス及び決定的なミスを表すために3つの閾値ε1<ε2<ε3を選び、そのそれぞれに対してδの異なる値を設定することができる。これは、以下の定義をもたらす。
定義17(PAC検知システム) (精度,信頼性)の対の組を((ε
1,δ
1),...,(ε
k,δ
k))とし、検知状態領域をSとし、生のセンサ及びマッピングデータ領域をXとし、X×Sにわたる分布をDとする。動作空間をAとし、品質関数をQ:S×A→|とし、π:S→Aは、π(s)∈argmax
aQ(s,a)が成立するものとする。全てのi∈{1,...,k}について、
が得られる場合、検知システム
は、上記のパラメータに関して確率的で近似的に正しい(PAC)。
ここで、定義がX×Sにわたる分布Dに依存する。この分布は、本発明者らの自律車両の特定のポリシに従うことによってではなく、多くの人間のドライバーのデータを記録することによって構築することを強調しておくことが重要である。前者の方が適切であるように思われるが、後者は、検知システムの開発を実際的でなくするオンライン検証を必要とする。Dに対する任意の妥当なポリシの影響は小さいため、単純なデータ増補技法を適用することによって十分な分布を構築し、その後、検知システムの主要な更新ごとにオフライン検証を行うことができる。この定義は、
を使用して快適な乗車のための十分であるが必要ではない条件を提供する。必要でない理由は、短期の間違った決定が乗車の快適さに殆ど影響を及ぼさないという重要な事実を無視するからである。例えば、100メートル先に車両があり、その車両がホスト車両よりも遅いと仮定する。最良の決定は、ここで、弱く加速し始めることである。検知システムが車両を見逃すが次回(100ミリ秒後に)検出する場合、2つの乗車の違いは、顕著ではない。提示を単純化するために、この問題を無視し、より強い条件を要求した。マルチフレームPAC定義への適合は、概念的に簡単であるが、より技術的である。
次に、上記のPAC定義から得られる設計原理を導出する。幾つかの種類の検知の間違いを記載したことを想起されたい。偽陰性、偽陽性及び不正確な意味論の種類の間違いでは、間違いが関連しない物体(例えば、直進しているときの左折用信号)に対するものであるか、又は定義のδ部分によって捕捉されるかのいずれかである。従って、頻繁に発生する「不正確な測定」の種類の間違いに焦点を当てる。
幾らか意外なことに、自己精度によって(すなわちホスト車両に対する全ての物体の位置の精度を測定することによって)検知システムの精度を測定する一般的な手法がPAC検知システムを保証するのに不十分であることを示す。次いで、PAC検知システムを保証する別の手法を提案し、それを効率的に得る方法を示す。幾つかの追加の定義から始める。
シーン内の物体оごとに、p(о)、
のそれぞれによるホスト車両の座標系内のоの位置をs、
とする。оとホスト車両との間の距離は、||p||であることに留意されたい。
の付加誤差は、
である。оとホスト車両との間の距離に対する
の相対誤差は、付加誤差割る||p(о)||、すなわち、
である。
遠くの物体について付加誤差が小さいことを要求するのは現実的ではない。実際、оがホスト車両から150メートルの距離にある車両であり、εが中程度のサイズ、例えばε=0.1のものであると見なす。追加の正確さを得るために、これは、車両の位置を10cmの精度まで知るべきであることを意味する。これは、手頃な値段のセンサでは非現実的である。他方では、相対精度では位置を15mの精度に相当する10%まで推定する必要がある。これは、(以下で説明するように)実現可能である。
全てのо∈Оについて、p(о)と、
との間の(相対)誤差が最大εである場合、検知システム
は、物体Оの組をε−ego−accurateな方法で位置決めする。以下の例は、全ての合理的なQに関してε−ego−accurateな検知状態がPAC検知システムを保証しないことを実証する。実際、ホスト車両が30m/sの速度で走行し、その150メートル先に停止車両があるシナリオを検討する。その車両が自車レーン内にある場合且つ遅れずにレーンを変更する選択肢がない場合、少なくとも3m/s
2の率で直ちに減速し始めなければならない(さもなければ停止が間に合わないか、又は後に更に強く減速しなければならない)。他方では、その車両が路肩にある場合、強い減速を加える必要はない。p(о)は、これらの事例の1つである一方、
は、他の事例であり、これらの2つの位置の間には5メートルの差があると仮定する。従って、
の相対誤差は、以下のようになる。
すなわち、検知システムは、どちらかと言えば小さいε値(3.5%未満の誤差)についてε−ego−accurateである場合があり、更に任意の合理的なQ関数に関して、ブレーキを強くかける必要がある状況とブレーキを強くかける必要がない状況とを混同しているため、Qの値は、完全に異なる。
上記の例は、本発明者らの検知システムがPACであることをε−ego−accuracyが保証しないことを示す。PAC検知システムに十分な別の特性があるかどうかはQによって決まる。PAC検知システムを保証する単純な位置決めの特性があるQ関数群について説明する。ε−ego−accuracyの問題は、意味論的な間違いを招く可能性があることであり、上記の例では、
がε<3.5%でε−ego−accurateでも、車両を正しいレーンに割り当てることに失敗した。この問題を解決するために、横方向位置に関する意味単位を利用する。
定義18(意味単位) レーン中央は、単純な自然の曲線であり、すなわち可微分単射マッピングl:[a,b]→|
3であり、全てのa≦t
1<t
2≦bについて、長さ
がt
2−t
1に等しい。レーンの幅は、関数w:[a,b]→|
+である。曲線上への点x∈|
3の射影は、xに最も近い曲線上の点、すなわちt
x=argmin
t∈[a,b]||l(t)−x||に関する点l(tx)である。レーンに対するxの意味論的な縦方向位置、はt
xであり、レーンに対するxの意味論的な横方向位置は、l(t
x)/w(t
x)である。上記の一次導関数及び二次導関数として意味論的な速度及び加速度を定める。
幾何学的単位と同様に、意味論的な縦方向距離に関して相対誤差を使用し、真の距離がp(о)でありながら、
が何らかの物体について
の意味論的な縦方向距離を引き起こす場合、相対誤差は、
である(分母の最大は、物体がほぼ同じ縦方向距離を有する事例(例えば、別のレーン上の隣の車に対処する))。意味論的な縦方向距離が小さいため、それらに付加誤差を使用することができる。これは、以下の定義をもたらす。
定義19(意味単位の誤差) レーンをlとし、レーンに対するホスト車両の意味論的な縦方向距離が0であると仮定する。ある点を
とし、レーンに対するその点までの意味論的な横方向距離及び縦方向距離をp
lat(x),p
lon(x)とする。近似測定値を
、
とする。
とpとの間の距離が以下のように定められる
横方向速度及び縦方向速度の距離も同様に定められる。上記の定義を備え、PAC検知システムに関するQの特性及び対応する十分な条件を定める準備ができている。
定義20(Semantically−LipschitzなQ) 全てのa、s、
について、
が成立する場合、Q関数は、L−semantically−Lipschitzであり、
、pは、物体оに関してs、
によって引き起こされる測定である。
直接の系として以下が得られる。
補助定理8 QがL−semantically−Lipschitzであり、検知システム
が、少なくとも1−δの確率において、
が得られるように意味測定を生成する場合、
は、パラメータ0、δを有するPAC検知システムである。
安全性
この節は、不所望の挙動を引き起こし得る誤差を検知する可能性について論じる。先に述べたように、ホストAVに過失がある事故を引き起こさない意味において、ポリシは、立証可能な方法で安全である。かかる事故は、ハードウェアの故障(例えば、全てのセンサの故障又は高速道路上でのパンク)、ソフトウェアの故障(モジュールの一部における重大なバグ)又は検知の間違いによって依然として起きる可能性がある。本発明者らの最終目標は、そのような事象の確率が極めて小さくなること(そのような事故の1時間当たり10−9の確率)である。この値の真価を評価するために、米国内のドライバーが道路上で費やす(2016年の)平均時間数は、300時間未満である。そのため、期待では、これらの種類の事象の1つから生じる事故に遭うには330万年生きなければならない。
安全に関連する検知誤差とは何かをまず定める。本発明者らのポリシは、Q(s,a)を最大化するaの値、すなわちπ(s)=argmax
aQ(s,a)をステップごとに選ぶことを想起されたい。慎重でない全ての動作aについてQ(s,a)=−∞とすることによって安全性を保証する(定義14を参照されたい)。従って、第1の種類の安全上重大な検知の間違いは、本発明者らの検知システムが危険な動作を選ぶことを招く場合である。形式的に、
による決定を
とし、
が成立する場合、
が安全上重大な間違いを招くと言える。第2の種類の安全上重大な検知の間違いは、全ての動作が、
に従って安全ではなく、標準の緊急ポリシ(例えば、ブレーキを強くかけること)を適用しなければならない一方、sによれば安全な動作、すなわちmax
aQ(s,a)>−∞がある場合である。当方の速度が速く後ろに車がある場合、これは、危険である。このような間違いを安全上重大なゴーストと呼ぶ。
通常、安全上重大な間違いは偽陰性によって引き起こされる一方、安全上重大なゴーストは、偽陽性によって引き起こされる。このような間違いは、著しく不正確な測定によって引き起こされることもあるが、殆どの事例において、本発明者らの快適さの目標は、安全性の定義の境界から本発明者らが遠く隔たっていることを保証し、従って適度な測定誤差が安全上重大な間違いを引き起こす可能性は低い。安全上重大な間違いの確率が非常に小さい、例えば1時間当たり10−9未満であることをどのように保証できるであろうか。補助定理1から、更に仮定を行うことなしに109時間よりも長い運転に基づいて本システムを調べる必要がある。これは、非現実的(又は少なくとも極めて困難)であり、この時間数は、1年間にわたり330万台の車の運転を記録することに相当する。更に、そのように高い精度を実現するシステムを構築することは、大きい課題である。システムの設計及び検証の両方の課題に対する解決策は、幾つかのサブシステムを利用することであり、それらのサブシステムのそれぞれは、独立に設計され、異なる技術に依存し、個々の精度を引き上げることを確実にする方法でそれらのシステムが融合される。
s1、s2、s3で示す3つのサブシステム(4つ以上への拡張は、簡単である)を構築すると仮定する。各サブシステムは、aを受信し、安全/危険を出力すべきである。サブシステムの大多数(この事例では2つ)が安全として受け入れる動作は、安全と見なされる。少なくとも2つのサブシステムによって安全と見なされる動作がない場合、デフォルト緊急ポリシが適用される。この融合方式の性能は、以下のように下記の定義に基づいて分析される。
定義21(One side c−approximate independent) 次式
が成立する場合、2つのベルヌーイ確率変数r
1、r
2は、one side c−approximate independentと呼ばれる。
i0{1,2,3}について、
、
により、サブシステムiが安全上重大な間違い/ゴーストを行うかどうかをそれぞれ示すベルヌーイ確率変数を示す。同様に、e
m、e
gは、融合システムの安全上重大な間違い/ゴーストを示す。任意の対i≠jについて、確率変数
、
がone sided c−approximate independentであり、同じことが、
、
にも当てはまるという仮定を利用する。この仮定が合理的である理由を説明する前に、その含意をまず分析したい。
によって境界を付けることができる。
従って、全てのサブシステムが、
を有する場合、
が成立する。安全上重大なゴーストの間違いにも全く同じ微分が当てはまる。従って、結合限界を適用することにより以下のように結論付ける。
系2 任意の対i≠jについて、確率変数
、
がone sided c−approximate independentであり、同じことが、
、
にも当てはまると仮定する。更に、全てのiについて、
及び
が成立すると仮定する。従って、次式が成立する。
この系は、検知システムを検証するために著しく小さいデータセットを使用することを可能にする。例えば、10−9の安全上重大な間違いの確率を実現したい場合、109程度の例を取る代わりに105程度の例を取り、各システムを別々にテストすれば十分である。
無相関な誤差をもたらすセンサの対があり得る。例えば、悪天候の条件に影響されるが、金属体の影響を受ける可能性が低いカメラとは対照的に、レーダは、悪天候の条件内で良好に機能するが、関連性のない金属体が原因で機能しない場合がある。一見すると、カメラとライダとは共通の誤差源を有し、例えばいずれも霧の多い天候、豪雨又は雪の影響を受ける。しかし、カメラとライダとでは、誤差の種類が異なり、カメラは、悪天候によって物体を見逃す可能性があり、ライダは、空気中の粒子からの反射によってゴーストを検出する場合がある。2種類の誤差を区別したため、近似の独立性が引き続き当てはまる可能性が高い。
本発明者らの安全上重要なゴーストの定義は、少なくとも2つのセンサによって全ての動作が危険であることを必要とする。困難な条件(例えば、濃霧)においてもそれが起きる可能性は低い。その理由は、そのような状況では、困難な条件の影響を受けるシステム(例えば、ライダ)が、速い速度及び横方向の操作を危険な動作であると宣言することができるため、非常に自衛的な運転を命令するからである。その結果、ホストAVは、非常にゆっくり走行し、その場合、たとえ緊急停止が必要でも、走行が低速であるために危険ではない。従って、本発明者らの定義は、道路の条件に運転スタイルが適合することをもたらす。
スケーラブルな検知システムの構築
快適さ及び安全性の両方の面での検知システムの要件について説明してきた。次に、スケーラブルでありながらそれらの要件を満たす検知システムを構築するための手法について説明する。検知システムの3つの主な構成要素がある。第1の構成要素は、カメラに基づくシーンの長距離の360度の有効範囲である。カメラの3つの主な利点は、(1)高解像度、(2)テクスチャ、(3)価格である。低い価格は、スケーラブルなシステムを可能にする。テクスチャは、レーンマーク、信号機、歩行者の意思及びその他のものを含むシーンの意味論を理解できるようにする。高解像度は、長距離の検出を可能にする。更に、同じ領域内でレーンマーク及び物体を検出することは、優れた意味論的な横方向の精度を可能にする。カメラの2つの主な不利点は、(1)情報が2Dであり縦方向距離の推定が困難であること、(2)照明条件(低い太陽や悪天候)に対する感度である。本システムの次の2つの構成要素を使用してこれらの困難を克服する。
本システムの第2の構成要素は、(ホスト車両の環境内で識別される認識済み陸標の(例えば、画像内の)位置に基づいて目標軌道に沿って正確な位置を決定する能力と共に、道路区分について予め定められ記憶されている目標軌道に基づくナビゲーションを含む)REM(Road Experience Management)と呼ばれる意味論的な高精細マッピング技術である。マップを作成するための一般的な幾何学的手法は、(ライダによって得られる)3D点群をマップ作成プロセス内で記録することであり、次いで既存のライダ点をマップ内の点にマッチすることによってマップ上の位置特定が得られる。この手法には幾つかの不利点がある。まず、この手法は、多くの点を保存する必要があるため、1キロメートルのマッピングデータ当たり大量のメモリを必要とする。これは、高価な通信インフラを余儀なくさせる。第2に、全ての車がライダセンサを備えるわけではない可能性があるため、マップが非常に低頻度で更新される。道路の変化(工事区域や危険要因)が生じる可能性があり、ライダに基づくマッピングの解決策の「現実を反映するための時間」は長い。対照的に、REMは、意味論に基づく手法をたどる。概念は、カメラを備え且つシーン内の意味論的に有意な物体(レーンマーク、カーブ、ポール、信号機等)を検出するソフトウェアを備える多数の車両を活用することである。今日、クラウドソースによるマップ作成に活用され得るADASシステムを多くの新車が備えている。処理は、車両側で行われるため、少量の意味データのみがクラウドに伝達されるべきである。これは、スケーラブルな方法でマップを非常に頻繁に更新することを可能にする。加えて、自律車両は、既存の通信プラットフォーム(セルラネットワーク)上で小さいサイズのマッピングデータを受信することができる。最後に、高価なライダを必要とすることなしに、マップ上の非常に正確な位置特定をカメラに基づいて得ることができる。
REMは、幾つかの目的で使用することができる。まず、REMは、道路の静的性質に関する先の見通しを与える(高速道路を出る方法についての計画を事前に立てることができる)。第2に、REMは、静的情報の全ての別の正確な情報源を与え、それは、カメラの検出と共に世界の静的部分のロバストなビューをもたらす。第3に、REMは、以下のように画像平面の2D情報を3D世界の中に持ち上げる問題を解決する。マップは、レーンの全てを3D世界の中の曲線として記述する。マップ上での自車の位置特定は、道路上の全ての物体を画像平面からその3D位置に自明に持ち上げることを可能にする。これは、意味単位における精度に従う位置決めシステムをもたらす。システムの第3の構成要素は、補完的なレーダ及びライダシステムであり得る。これらのシステムは、2つの目的に役立ち得る。第1に、これらのシステムは、安全性を増補するための極めて高レベルの精度を提供することができる。第2に、これらのシステムは、速度及び距離に関する直接測定を与えることができ、それは、乗車の快適さを更に改善する。
以下の節は、RSSシステムの技術的な補助定理及び幾つかの実施上の検討事項を含む。
補助定理9 全てのx0[0,0.1]について、1−x>e−2xが当てはまる。証明 f(x)=1−x−e−2xとする。本発明者らの目標は、x0[0,0.1]について≧0であると示すことである。f(0)=0であり、従って上記の範囲内でf(x)≧0を得れば十分であることに留意されたい。明確に、f'(x)=−1+2e−2xが成立する。明らかにf'(0)=1であり、単調減少しており、従ってf'(0.1)>0であることを検証すれば十分であり、これは、数値的に容易に行うことができる(f'(0.1)≒0.637)。
慎重さの効率的検証−隠れた物体
隠れていない物体と同様に、現在のコマンドを提供すること、及びその後DEPを与えることがRSSであるかどうかを確認することができる。そのために、露出時点が1であると仮定したとき、tbrakeまで将来をアンロールし、次いで定義上慎重さに関して十分であるDEPを命令する。隠れた物体に関する最悪の事例を想定したとき、全てのt'0[0,tbrake]について有過失の事故が起こり得るかどうかを調べる。最悪の事例の操作及び安全な距離の規則の一部を使用する。遮蔽体に基づく手法を用いて関心点を見つけ、すなわち遮蔽体ごとに最悪の事例を計算する。これは、決定的な効率駆動型の手法であり、例えば、歩行者は、車の後ろの多くの位置に隠れることができ、多くの操作を行い得るが、単一の最悪の事例の位置及び歩行者が行い得る操作がある。
次に、隠れた歩行者のより複雑な事例を検討する。駐車車両の後ろの遮蔽領域を検討する。遮蔽領域内の最も近い点及び当方の車cの前部/側部は、例えば、それらの幾何学的特性(三角形、矩形)によって見つけることができる。形式的に、遮蔽領域は単純な形状の少数の凸領域の結合と見なし、そのそれぞれを別々に扱うことができる。更に歩行者は、あり得る最短経路を使用して車の前部に衝突することができる場合及びその場合に限り、遮蔽領域から(v
limitの制約下で)車の前部に追突し得ることが分かる。歩行者が移動し得る最大距離がv
limit・t
'であることを使用し、前部にぶつかる可能性に関する単純な確認を得る。側部への追突に関して、当方の横方向速度が追突方向にμを上回る場合及びその場合に限り、経路がv
limit・t
'よりも短い場合、当方に責任があることを指摘しておく。開示するのは隠れた歩行者に対する慎重さを検証するためのアルゴリズムであり、ここで、自由な擬似コードで示している。車両によって隠れている歩行者との有過失の事故の可能性があるかどうかの確認である重大な部分は、上記の単純な方法で行われる。
シミュレータを検証する問題について
先に論じたように、マルチエージェントの安全性は、統計的に検証することが困難な場合があり、それは、かかる検証が「オンライン」式に行われるべきであるためである。運転環境のシミュレータを構築することにより、「研究室」で運転ポリシを検証できると唱える者がいる可能性がある。しかし、シミュレータが現実を忠実に表すことを検証するのは、ポリシ自体を検証するのと同じ程度に難しい。これが該当する理由を理解するために、シミュレータに運転ポリシπを適用することは、
の事故の確率をもたらし、現実世界内でのπの事故の確率がpであり、
が成立するという意味でシミュレータが検証されていると仮定する。(0は、10
−9よりも小さくなければならない)。次に、運転ポリシをπ'であるように置換する。10
−8の確率でπ
'が人間のドライバーを混乱させ、事故につながる奇妙な動作を行うと仮定する。元のポリシπの性能を推定する際のシミュレータの極めて優れた機能と矛盾することなしに、この奇妙な動作は、シミュレータ内でモデリングされていない可能性がある(むしろ、その可能性が高い)。これは、たとえシミュレータが運転ポリシπの現実を反映することを示していても、別の運転ポリシの現実を反映することを保証しないことを証明する。
レーンに基づく座標系
RSSの定義内で行うことができる1つの仮定の単純化は、道路が一定幅の隣接した直線レーンによって構成されることである。横軸と縦軸との区別並びに縦方向位置の順序付けがRSSにおいて重要な役割を果たし得る。更に、それらの方向の定義は、レーンの形状に明確に基づく。平面上の(グローバル)位置からレーンに基づく座標系に変換することは、問題を元の「一定幅の直線レーン」の事例に減じる。
レーンの中央が平面上の平滑な有向曲線rであり、r(1),...,r(k)で示すその断片の全てが直線又は弧であると仮定する。曲線の平滑さは、連続する断片のいかなる対も直線となり得ないことを含意することに留意されたい。形式的に、曲線は、「縦方向」パラメータY0[Ymin,Ymax]⊂|を平面内にマップし、すなわち、曲線は、r:[Ymin,Ymax]→|2形式の関数である。正のレーン幅値に縦方向位置Yをマップする連続的なレーン幅関数w:[Ymin,Ymax]→|+を定義する。それぞれのYについて、rの平滑さから、r┴(Y)で示す位置Yにおける曲線への単位法線ベクトルを定めることができる。レーン内にある平面上の点のサブセットを以下のように自然に定める。R={r(Y)+αw(Y)r┴(Y)|Y0[Ymin,Ymax],α0[±1/2]}
非公式に、本発明者らの目標は、レーン上にある2つの車についてそれらの「論理的順序付け」が保たれるようにRの変換φを構築することであり、すなわちカーブ上でcrがcfの「後ろ」にある場合にはφ(cr)y<φ(cf)yが成立する。clがカーブ上でcrの「左側」にある場合にはφ(cl)x<φ(cr)xが成立する。RSSと同様にy軸を「縦」軸に、x軸を「横」軸に関連付ける。
φを定めるために、全てのiについてr(i)が半径ρの弧である場合、r(i)全体を通したレーンの幅は、≦ρ/2であるという仮定を利用する。この仮定は、任意の現実的な道路に当てはまることに留意されたい。この仮定は、全ての(x',y')0Rについて、(x',y')=r(Y')+α'w(Y')r┴(Y')となるような一意の対Y'0[Ymin,Ymax],α'0[±1/2]が存在することを自明に含意する。次に、φ:R→|2をφ(x',y')=(Y',α')であるように定めることができ、(Y',α')は、(x',y')=r(Y')+α'w(Y')r┴(Y')を満たす一意の値である。
この定義は、レーンの座標系内の「横方向の操作」の概念を捉える。例えば、レーンの境界の1つの真上を車が走行する拡幅レーンを検討する(図23を参照されたい)。レーン2301の広がりは、車2303がレーンの中央から離れて移動し、従ってレーンに対して横方向速度を有することを意味する。但し、これは、車2303が横方向の操作を行うことを意味しない。φ(x',y')x=α'の定義、すなわちw(Y')単位でのレーンの中央までの横方向距離は、レーンの境界が±1/2の固定された横方向位置を有することを含意する。従って、レーンの境界の1つから離れない車は横方向の任意の移動を行うとは見なされない。最後に、φは、準同形であることが分かる。レーンに基づく座標系という用語は、φ(R)=[Ymin,Ymax]x[±1/2]について論じるとき使用される。このようにして、全般的なレーンジオメトリから直線の縦/横座標系への低減が得られた。
全般的な道路構造へのRSSの拡張
この節では、全ての道路構造に当てはまるRSSの完全な定義について説明する。この節は、ポリシがRSSに従うことをどのように効率的に保証するかではなく、RSSの定義を取り扱う。複数のレーンジオメトリが存在する任意の状況、例えば交差点を捕捉するために、次にルートの優先権の概念を紹介する。
第2の汎用化は、反対方向に走行している2つの車があり得る双方向道路を取り扱う。この場合、既に確立されているRSSの定義は、対向交通までの「安全な距離」の軽微な汎用化を伴って引き続き有効である。(信号機を使用して交通の流れを指図する)管理された交差点は、ルートの優先権及び双方向道路の概念によって完全に対処され得る。ルートの明確な定義がない非構造化道路(例えば、駐車場)もRSSで対処され得る。RSSは、この事例でも引き続き有効であり、必要な唯一の修正は、仮想ルートを定めるための及びそれぞれの車を(場合により幾つかの)ルートに割り当てるための方法である。
ルートの優先権
特定の領域内で重なり合う複数の異なる道路の幾何学的形状が1つのシーン内にあるシナリオに対処するために、次にルートの優先権の概念を紹介する。図24A〜図24Dに示す例は環状交差路、交差点及び高速道路への合流を含む。縦軸及び横軸についての一貫した意味と共に、全般的なレーンジオメトリをレーンに基づくものに変換する方法については説明した。次に、異なる道路の幾何学的形状の複数のルートが存在するシナリオに対処する。その結果、重なり合う領域に2つの車両が到達するとき、両方の車両が他方の車両の前方地帯への割り込みを行うことになる。(隣接する2つの高速道路のレーンの場合のように)2つのルートが同じ幾何学的形状を有する場合、この現象は、起こり得ない。大まかに言うと、ルートの優先権の原理は、ルートr1、r2が重なり合い且つr1がr2に優先する場合、r2から来る車両の前方地帯内に入るr1から来る車両は割り込みを行うと見なされない。
この概念を形式的に説明するために、事故の過失がレーンの座標系から導出される幾何学的特性に、及び同じくレーンの座標系に依存する最悪の事例の仮定に依存することを想起されたい。道路の構造を定めるルートをr1,...,rkとする。単純な例として、図24Aに示す合流シナリオを検討する。2つの車2401(c1)及び2402(c2)がルートr1、r2をそれぞれ走行しており、r1が優先ルートであると仮定する。例えば、r1が高速道路のレーンであり、r2が合流レーンであると想定する。ルートに基づく座標系をルートごとに定めているため、第1の考察は、任意のルートの座標系内で任意の操作を検討できることである。例えば、r2の座標系を使用した場合、r1に向かって直線に走行することは、r2の左側への合流のように思われる。RSSの定義に対する1つの手法は、∀i0{1,2}の場合及びその場合に限り、操作がriに対して安全である場合、車のそれぞれが操作を行えることであり得る。しかし、これは、合流を行うルートであるr2に対して優先ルート上を走行するc1が非常に控え目であるべきことを含意し、それは、c2がルート上を正確に走行することができ、従って横方向位置で勝利し得るからである。この事例では高速道路上の車に優先通行権があるため、それは不自然である。この問題を克服するために、ルートの優先権を定める特定の領域を画定し、ルートの一部のみを安全性に関連があるものと見なす。
定義22(ルートの優先権に関する事故責任) r1、r2が、異なる幾何学的形状を有する2つの重なり合うルートであると仮定する。r1の座標系の縦方向の間隔[b,e](図25)内でr1がr2に優先することを表すためにr1>[b,e]r2を使用する。ルートr1、r2上を走行している車c1及びc2間で事故が起きたと仮定する。i0{1,2}では、riの座標系を検討した場合、事故について過失がある車をbi⊂{1,2}が示すものとする。事故の過失は、以下の通りである:
・r1>[b,e]r2且つr1に対する過失時に車の1つがr1の系の縦軸の間隔[b,e]内にあった場合、過失はb1による。
・さもなければ、過失は、b1∪b2による。
この定義を説明するために、高速道路に合流する例を再び検討する。図25の「b」及び「e」で示す線は、r1>[b,e]r2であるb、eの値を示す。従って、合流する車が高速道路を走行する車に対して安全でなければならないことを含意しながら、高速道路上で車が自然に走行することを可能にする。具体的には、車2401 c1が横方向速度なしで優先レーンの中央を走行する場合、車2401 c1は、非優先レーンを走行する車2402 c2との事故について、2402 c2が安全な距離で2401 c1の地帯内に割り込んでいない限り、過失を負わないことに注目されたい。最終結果は、通常のRSSと非常に似ていることに留意されたい(これは、直線道路上の車がレーン変更を行おうと試みる事例と全く同じである)。別のエージェントが使用するルートが未知である事例があり得ることに留意されたい。例えば、図26では、車2601は、車2602が経路「a」を取るか、経路「b」を取るかを決定できない場合がある。この場合、全ての可能性を反復的に調べることによってRSSを得ることができる。
双方向交通
双方向交通に対処するために、過失の定義に対する修正は、後部/前部の関係に依存する部分を鮮明にすることを成し遂げ、その理由は、かかる事例においてそれらが僅かに異なる意味のものであるためである。何らかの直線の2レーン道路を逆向きの縦方向に走行している、すなわちv1,long・v2,long<0が成立する2つの車c1、c2を検討する。駐車中のトラックを追い越すために対向レーンに外れる車又は駐車場内にバックする車等、レーンに対する運転方向は、合理的な都市シナリオでは負の場合がある。従って、負の縦速度を非現実的であると想定した事例で紹介した安全な縦方向距離の定義を拡張する必要がある。cfに衝突する前にcrがブレーキをかけるのに十分な応答時間をcfによる最大ブレーキが与える場合、crとcfとの間の距離は、安全であることを想起されたい。本発明者らの事例では、対向車による「最悪の事例」を僅かに異なる方法で再び検討し、当然ながら、「最悪の事例」は、対向車が自らに向かって加速することであるとは考えず、衝突を回避するためにブレーキを実際にかけるが、幾らかの適度なブレーキ力のみを用いることであると考える。車の責任の差を捉えるために、それらの車の1つが明らかに反対方向に走行する場合、「正しい」運転方向を定義することから始める。
平行レーンに関するRSSの定義では、その中央が割り込み位置に最も近いものとして、関連するレーンが定められている。次に、このレーンを検討することに自らを軽減する(又は対称の場合、定義22にあるように2つのレーンに別々に対処する)ことができる。以下の定義では、「進行方位」という用語は、横方向速度を縦方向速度で割ったものの(ラジアン単位の)逆正接を示す。
定義23(正しい運転方向による(μ1,μ2,μ3)−勝利) c1、c2が反対方向に走行している、すなわちv1,long・v2,long<0が成立すると仮定する。レーンに対するそれらの横位置及び進行方位をxi、hiとする。以下の条件の全てが当てはまる場合、c1が正しい運転方向により(μ1,μ2,μ3)−勝利すると言える:
・|h1|<μ1、
・|h2−π|<μ2、
・|x1|<μ3。
この事象のインジケータをWCDD(i)で示す。
言葉では、c1は、c2が逆方向を取る一方で正しい方向でレーン中央の近くで走行する場合に勝利する。最大でも1つの車が勝利することができ、車のいずれも勝利しない場合もある。直観的に、論じた状況で衝突があると仮定する。正しい運転方向で負ける車c1により多くの責任を課すことが妥当である。正しい運転方向で車が勝利する場合、これは、amax,brakeを再定義することによって行われる。
定義24(妥当なブレーキ力) αmax,brake,wcdd>0をamax,brake未満の定数とする。c1、c2が反対方向に走行していると仮定する。RBPiで示す、それぞれの車ciの妥当なブレーキ力は、ciが正しい運転方向で(μ1,μ2,μ3)−勝利する場合にはamax,brake,wcddであり、さもなければamax,brakeである。
正しい運転方向で勝利する/勝利しない場合のamax,brake,wcdd、amax,brakeの正確な値は、定義すべき定数であり、各車が走行する道路及びレーンの種類に依存し得る。例えば、都市の狭い道では、正しい運転方向で勝利することは、はるかに小さいブレーキ値を含意しない場合があり、混雑した交通では、自らのレーン内に誰かが明確に外れようが外れまいが車が同様の力でブレーキをかけることを期待する。しかし、速い速度が許可されている地方の双方向道路の例を検討する。対向レーンに外れるとき、正しい方向で走行する車がホスト車両との衝突を回避するために非常に強いブレーキ力を加えることは予期できず、それらの車よりもホスト車両の責任の方が重い。一方が駐車場へとバックする状態で2つの車が同じレーンにある事例では、異なる定数を定めることができる。
反対方向に走行している車の間の安全な距離及びその正確な値の即座の導出を次に定義する。
定義25(安全な縦方向距離 − 双方向交通) 反対方向に走行しており、いずれも互いの前方地帯内にある車c1と別の車c2との間の縦方向距離は、応答時間ρまでc1、c2によって行われる任意の加速コマンドa、|a|<amax,accelについて、c1及びc2がその妥当なブレーキ力を時間ρから完全停止まで加える場合、時間ρに対して安全であり車は衝突しない。
補助定理10 c
1、c
2を定義25にあるのと同じとする。(iごとの)妥当なブレーキコマンド及び加速コマンドをRBP
i、a
max,accelとし、車の応答時間をρとする。車の縦速度をv
1、v
2とし、それらの長さをl
1、l
2とする。v
i,ρ,max=|v
i|+ρ・a
max,accelと定める。L=(l
r+l
f)/2とする。従って、最小安全縦方向距離は、次式のようになる。
この和における項は、定義25の操作を実行するとき完全に停止するまで各車が移動する最大距離であることが分かる。従って、完全な停止がLを上回る距離にあるために、最初の距離がこの和及びLの追加の項よりも長くなければならない。
双方向交通シナリオの過失/事故責任を定めるために、定義25で定めた危険な縦方向距離についてRSSの過失時点の同じ定義を使用する。
定義26(双方向交通における過失) 反対方向に走行している車c1及びc2間の事故の双方向交通における過失は、過失時点における状態の関数であり、以下のように定められる:
・過失時点が割り込み時でもある場合、過失は、通常のRSSの定義にあるように定められる。
・さもなければ、全てのiについて、過失時点後に生じる何らかのtにおいてciが少なくともRBPiの力でブレーキをかけていない場合、過失は、ciにある。
例えば、過失時点よりも前に行われる安全な割り込みを仮定する。例えば、c1が対向レーンに外れ、c2の地帯内に安全な距離で割り込みを行っている。c2は、正しい運転方向で勝利し、従って、この距離は、非常に長いものであり得る(c2が強いブレーキ力を働かせることを期待しておらず、妥当なブレーキ力のみを期待する)。従って、互いに衝突しない責任が両方の車にある。しかし、割り込みが安全な距離ではなかった場合、c2が横方向の移動なしに自らのレーンの中央を走行した場合、c2が無過失であることを示す通常の定義を使用する。過失は、c1のみにある。これは、自らの地帯内に危険に外れてくる可能性がある交通を心配することなしに、車が自らのレーンの中央を自然に走行することを可能にする。他方では、都市の混雑した交通で要求される一般的な操作である対向レーンへの安全な逸脱は認められる。バックによる駐車操作を開始する車の例を検討し、その車は、自らの後ろにある車までの距離が安全であることを確認しながらバックを開始すべきである。
信号機
信号機がある交差点を含むシナリオでは、信号機の単純な規則は、「一方の車のルートが青信号であり、他方の車のルートが赤信号である場合、赤信号のルート上にいる方に過失がある」ことであると考える人もいることがあり得る。しかし、これは、とりわけ全ての事例において正しい規則ではない。例えば、図27に示すシナリオを検討する。たとえ車2701が青信号のルート上にあっても、既に交差点内にある車2703を車2701が無視することは予期しない。正しい規則は、青信号のルートが赤信号のルートに対して優先権を有することである。従って、先に記載したルートの優先権の概念に対する、信号機に由来する明確な低減が得られる。
非構造化道路
次に、ルートの明確な幾何学的形状を画定することができない道路を考え、レーン構造が全くないシナリオ(例えば、駐車場)をまず検討する。事故がないことを確実にする方法は、全ての車が直線に走行する一方、進行方位の変更が生じる場合、自らの周囲に近い車がないときにかかる変更を行う必要があることを要求することであり得る。この方法の背後にある理論的根拠は、車が、他の車が何を行うかを予測し、それに応じて振る舞うことができることである。他の車が(進行方位を変えることによって)この予測から逸脱する場合、その操作は、十分に長い距離を伴って行われ、従って予測を訂正するのに十分な時間があり得る。レーン構造がある場合、他の車が何を行うかについてのより賢明な予測が可能になり得る。レーン構造が全くない場合、車は、その現在の進行方位に従って進む。厳密に言えば、これは、全ての車にその進行方位に従って仮想的な直線ルートを割り当てることと均等である。次に、(例えば、パリのArc de Triompheの周りにある)大規模な非構造化環状交差路におけるシナリオを検討する。ここで、分別のある予測は、車がそのオフセットを保ちながら環状交差路の幾何学的形状に従って進むと想定することである。厳密に言えば、これは、全ての車に環状交差路の中心からのその現在のオフセットに従って仮想的な弧の経路を割り当てることと均等である。
実施する特定のナビゲーション命令を決定するときに潜在的な事故責任を考慮するナビゲーションシステムを提供するために、上記の運転ポリシシステム(例えば、RLシステム)を記載した事故責任規則の1つ又は複数と共に実装することができる。規則に既に準拠しているシステムによって提案ナビゲーション動作が開発されるように、かかる規則は、計画段階中、例えばプログラムされた命令の組内又はトレーニング済みモデル内で適用され得る。例えば、運転ポリシモジュールは、例えば、RSSが基づく1つ又は複数のナビゲーション規則の責任を負うか、又はかかるナビゲーション規則を使ってトレーニングされ得る。加えて又は或いは、提案ナビゲーション動作が準拠していることを確実にするために、計画段階によって提案される全ての提案ナビゲーション動作を関連する事故責任規則に対してテストするフィルタ層としてRSS安全制約を適用することができる。特定の動作がRSS安全制約に準拠している場合、その動作を実施することができる。そうではなく、提案ナビゲーション動作がRSS安全制約に準拠していない場合(例えば、提案動作が上記の規則の1つ又は複数に基づいてホスト車両にとっての事故責任を発生させる可能性がある場合)、その動作は行われない。
実際には、特定の実装形態は、ホスト車両のためのナビゲーションシステムを含み得る。ホスト車両は、ホスト車両の環境を表す画像を動作中に捕捉する画像捕捉デバイス(例えば、上記に記載したもののいずれか等の1つ又は複数のカメラ)を備えることができる。画像情報を使用し、運転ポリシは、複数の入力を取り込み、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を出力することができる。運転ポリシは、様々な入力(例えば、目標車両、道路、物体、歩行者等を含むホスト車両の周囲を示す1つ又は複数のカメラからの画像、ライダ又はレーダシステムからの出力、速度センサやサスペンションセンサ等からの出力、ホスト車両の1つ又は複数の目標、例えば乗員を特定の位置に届けるためのナビゲーション計画を表す情報等)を受け付けることができるプログラムされた命令の組やトレーニング済みネットワーク等を含み得る。その入力に基づき、プロセッサは、例えば、カメラ画像、ライダ出力、レーダ出力等を分析することによりホスト車両の環境内の目標車両を識別することができる。幾つかの実施形態では、プロセッサは、1つ又は複数のカメラ画像、ライダ出力及び/又はレーダ出力等の1つ又は複数の入力を分析することによりホスト車両の環境内の目標車両を識別することができる。更に幾つかの実施形態では、プロセッサは、(例えば、1つ又は複数のカメラ画像、ライダ出力及び/又はレーダ出力を分析し、入力の大多数の合致又は組み合わせに基づいて目標車両を識別する検出結果を受信することにより)センサ入力の大多数又は組み合わせの合致に基づいてホスト車両の環境内の目標車両を識別することができる。
運転ポリシモジュールが入手可能な情報に基づき、ホスト車両のナビゲーション目標を達成するための1つ又は複数の計画されたナビゲーション動作の形式で出力を提供することができる。幾つかの実施形態では、計画されたナビゲーション動作のフィルタとしてRSS安全制約を適用することができる。すなわち、計画されたナビゲーション動作は、開発されると、識別された目標車両に対するホスト車両の潜在的な事故責任を決定するために、少なくとも1つの事故責任規則(例えば、上記で論じた事故責任規則のいずれか)に対してテストすることができる。先に述べたように、少なくとも1つの事故責任規則に対する計画されたナビゲーション動作のテストが、計画されたナビゲーション動作が行われる場合にホスト車両について潜在的な事故責任があり得ることを示す場合、プロセッサは、計画されたナビゲーション動作をホスト車両に実施させないことができる。他方では、少なくとも1つの事故責任規則に対する計画されたナビゲーション動作のテストが、計画されたナビゲーション動作が行われる場合にホスト車両について事故責任が生じないことを示す場合、プロセッサは、計画されたナビゲーション動作をホスト車両に実施させることができる。
幾つかの実施形態では、システムは、少なくとも1つの事故責任規則に対して複数の潜在的なナビゲーション動作をテストすることができる。テストの結果に基づき、システムは、それらの潜在的なナビゲーション動作を複数の潜在的なナビゲーション動作のサブセットへとフィルタリングすることができる。例えば、幾つかの実施形態では、そのサブセットは、少なくとも1つの事故責任規則に対するテストが、潜在的なナビゲーション動作が行われる場合にホスト車両について事故責任が生じないことを示す潜在的なナビゲーション動作のみを含み得る。次いで、システムは、事故責任のない潜在的なナビゲーション動作をスコア付け及び/又は優先順位付けし、実施するためのナビゲーション動作の1つを例えば最適化されたスコア又は最も高い優先順位に基づいて選択することができる。このスコア及び/又は優先順位は、例えば、乗員にとって最も安全、最も効率的、最も快適等と見なされる潜在的なナビゲーション動作等、1つ又は複数の要因に基づき得る。
一部の例では、特定の計画されたナビゲーション動作を実施するかどうかの決定は、計画された動作後の次の状態においてデフォルトの緊急手続きを利用できるかどうかにも依存し得る。DEPを利用できる場合、RSSフィルタは、その計画された動作を承認することができる。他方では、DEPを利用できない場合、次の状態が危険なものと見なされる場合があり、計画されたナビゲーション動作が拒否され得る。幾つかの実施形態では、計画されたナビゲーション動作が少なくとも1つのデフォルトの緊急手続きを含み得る。
記載したシステムの1つの利点は、車両による安全な動作を保証するために、特定の目標車両に対するホスト車両の動作のみを検討する必要があることである。従って2つ以上の目標車両がある場合、ホスト車両付近の影響区域内の(例えば、25メートル、50メートル、100メートル、200メートル等の範囲内の)目標車両に対し、ホスト車両の計画された動作を事故責任規則に関して逐次的にテストすることができる。実際には、少なくとも1つのプロセッサは、ホスト車両の環境を表す少なくとも1つの画像の分析に基づいて(又はライダ情報又はレーダ情報等に基づいて)ホスト車両の環境内の複数の他の目標車両を識別し、且つ複数の他の目標車両のそれぞれに対するホスト車両の潜在的な事故責任を決定するために、少なくとも1つの事故責任規則に対する計画されたナビゲーション動作のテストを繰り返すように更にプログラムされ得る。少なくとも1つの事故責任規則に対する計画されたナビゲーション動作の繰り返されたテストが、計画されたナビゲーション動作が行われる場合にホスト車両について潜在的な事故責任があり得ることを示す場合、プロセッサは、計画されたナビゲーション動作をホスト車両に実施させないことができる。少なくとも1つの事故責任規則に対する計画されたナビゲーション動作の繰り返されたテストが、計画されたナビゲーション動作が行われる場合にホスト車両について事故責任が生じないことを示す場合、プロセッサは、計画されたナビゲーション動作をホスト車両に実施させることができる。
先に述べたように、上記の規則のいずれもRSS安全テストの基礎として使用することができる。幾つかの実施形態では、少なくとも1つの事故責任規則は、識別された目標車両の後方の距離であって、その中にホスト車両が事故責任の可能性なしに進むことができない距離を定める追走規則を含む。他の事例では、少なくとも1つの事故責任規則は、識別された目標車両の前方の距離であって、その中にホスト車両が事故責任の可能性なしに進むことができない距離を定める先行規則を含む。
上記のシステムは、結果として生じる事故の責任を負うことになるいかなる動作もホスト車両が行うべきではないという規則に対する準拠をテストするためにRSS安全テストを単一の計画されたナビゲーション動作に適用することができるが、テストは、2つ以上の計画されたナビゲーション動作に適用することもできる。例えば、幾つかの実施形態では、少なくとも1つのプロセッサは、少なくとも1つの運転ポリシを適用することに基づいて、ホスト車両のナビゲーション目標を達成するための2つ以上の計画されたナビゲーション動作を決定する場合がある。これらの状況では、プロセッサは、潜在的な事故責任を決定するために2つ以上の計画されたナビゲーション動作のそれぞれを少なくとも1つの事故責任規則に対してテストすることができる。2つ以上の計画されたナビゲーション動作のそれぞれについて、テストが、2つ以上の計画されたナビゲーション動作の特定の1つが行われる場合にホスト車両について潜在的な事故責任があり得ることを示す場合、プロセッサは、計画されたナビゲーション動作の特定の1つをホスト車両に実施させないことができる。他方では、2つ以上の計画されたナビゲーション動作のそれぞれについて、テストが、2つ以上の計画されたナビゲーション動作の特定の1つが行われる場合にホスト車両について事故責任が生じないことを示す場合、プロセッサは、2つ以上の計画されたナビゲーション動作の特定の1つを実施のための存立可能な候補として識別することができる。次に、プロセッサは、少なくとも1つのコスト関数に基づき、実施のための存立可能な候補の中から行われるナビゲーション動作を選択することと、選択されたナビゲーション動作をホスト車両に実施させることとを行うができる。
RSSの実装は、ホスト車両と1つ又は複数の目標車両との間の事故に関する相対的な潜在的責任の決定に関係するため、安全の準拠について計画されたナビゲーション動作をテストすることと共に、システムは、遭遇する車両の事故責任の潜在性を追跡することができる。例えば、システムは、結果として生じる事故がホスト車両の責任を招くことになる動作を行うことを回避できる可能性があるだけではなく、ホスト車両システムは、1つ又は複数の目標車両を追跡し、それらの目標車両によっていずれの事故責任規則が破られているかを識別し追跡することもでき得る。幾つかの実施形態では、ホスト車両のための事故責任追跡システムは、ホスト車両の環境を表す少なくとも1つの画像を画像捕捉デバイスから受信することと、少なくとも1つの画像を分析してホスト車両の環境内の目標車両を識別することとを行うようにプログラムされる少なくとも1つの処理デバイスを含み得る。少なくとも1つの画像の分析に基づき、プロセッサは、識別された目標車両のナビゲーション状態の1つ又は複数の特性を決定するためのプログラミングを含み得る。車両速度、レーンの中央までの近接性、横方向速度、移動方向、ホスト車両からの距離、進行方位又は上記の規則のいずれかに基づいて潜在的な事故責任を決定するために使用され得る他の任意のパラメータ等、ナビゲーション状態は、目標車両の様々な動作特性を含み得る。プロセッサは、識別された目標車両のナビゲーション状態の決定された1つ又は複数の特性を少なくとも1つの事故責任規則(例えば、横方向速度で勝利すること、方向的な優先権、レーンの中央までの距離で勝利すること、追走の距離又は先行の距離、割り込み等の上記の規則のいずれか)と比較することができる。状態の1つ又は複数の規則との比較に基づき、プロセッサは、識別された目標車両側の潜在的な事故責任を示す少なくとも1つの値を記憶することができる。事故が発生した場合、プロセッサは、記憶された少なくとも1つの値の出力を(例えば、有線又は無線の任意の適切なデータインタフェースを介して)提供することができる。かかる出力は、例えば、ホスト車両と少なくとも1つの目標車両との間の事故後に提供することができ、その出力は、事故責任の指示に使用することができ、或いは事故責任の指示を提供することができる。
潜在的な事故責任を示す少なくとも1つの値は、任意の適切な時点において及び任意の適切な条件下で記憶することができる。幾つかの実施形態では、ホスト車両が、識別された目標車両との衝突を回避できないと決定される場合、少なくとも1つの処理デバイスは、識別された目標車両に関する衝突責任値を割り当て且つ記憶することができる。
事故責任追跡機能は、単一の目標車両に限定されず、むしろ遭遇する複数の目標車両の潜在的な事故責任を追跡するために使用することができる。例えば、少なくとも1つの処理デバイスは、ホスト車両の環境内の複数の目標車両を検出することと、複数の目標車両のそれぞれのナビゲーション状態特性を決定することと、目標車両のそれぞれに関するそれぞれのナビゲーション状態特性の少なくとも1つの事故責任規則との比較に基づき、複数の目標車両のそれぞれの1つの側の潜在的な事故責任を示す値を決定及び記憶することとを行うようにプログラムされ得る。先に述べたように、責任を追跡するための基礎として使用することができる事故責任規則は、上記の規則のいずれか又は他の任意の適切な規則を含み得る。例えば、少なくとも1つの事故責任規則は、横方向速度規則、横方向位置規則、運転方向の優先権の規則、信号機に基づく規則、交通標識に基づく規則、ルートの優先権の規則等を含み得る。事故責任追跡機能は、RSS(例えば、ホスト車両の任意の動作が結果として生じる事故に関する潜在的責任を招くかどうか)を検討することに基づく安全なナビゲーションと結合することもできる。
RSSに従って事故責任を検討することに基づくナビゲーションに加えて、ナビゲーションは、車両のナビゲーション状態及び将来の特定のナビゲーション状態が安全と見なされるかどうか(上記で詳細に説明したように、例えば事故を回避できるように又は結果として生じる任意の事故がホスト車両の責任と見なされないようにDEPが存在するかどうか)を決定することに関して検討することもできる。ホスト車両を制御して安全な状態から安全な状態にナビゲートすることができる。例えば、任意の特定の状態において、運転ポリシを使用して1つ又は複数の計画されたナビゲーション動作を生成し、計画された各動作に対応する将来予測される状態がDEPを提供するかどうかを決定することにより、それらの動作をテストすることができる。DEPを提供する場合、DEPを提供する1つ又は複数の計画されたナビゲーション動作が安全と見なされ得、実施する資格を与えられ得る。
幾つかの実施形態では、ホスト車両のためのナビゲーションシステムは、ホスト車両の環境を表す少なくとも1つの画像を画像捕捉デバイスから受信することと、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を少なくとも1つの運転ポリシに基づいて決定することと、ホスト車両の環境内の目標車両を識別するめに少なくとも1つの画像を分析することと、識別された目標車両に対するホスト車両の潜在的な事故責任を決定するために、計画されたナビゲーション動作を少なくとも1つの事故責任規則に対してテストすることと、少なくとも1つの事故責任規則に対する計画されたナビゲーション動作のテストが、計画されたナビゲーション動作が行われる場合にホスト車両について潜在的な事故責任があり得ることを示す場合、計画されたナビゲーション動作をホスト車両に実施させず、少なくとも1つの事故責任規則に対する計画されたナビゲーション動作のテストが、計画されたナビゲーション動作が行われる場合にホスト車両について事故責任が生じないことを示す場合、計画されたナビゲーション動作をホスト車両に実施させることとを行うようにプログラムされる少なくとも1つの処理デバイスを含み得る。
幾つかの実施形態では、ホスト車両のためのナビゲーションシステムは、ホスト車両の環境を表す少なくとも1つの画像を画像捕捉デバイスから受信し、ホスト車両のための複数の潜在的なナビゲーション動作を少なくとも1つの運転ポリシに基づいて決定し、少なくとも1つの画像を分析してホスト車両の環境内の目標車両を識別し、識別された目標車両に対するホスト車両の潜在的な事故責任を決定するために、複数の潜在的なナビゲーション動作を少なくとも1つの事故責任規則に対してテストし、潜在的なナビゲーション動作の1つを選択することであって、潜在的なナビゲーション動作のその1つについて、テストは、選択される潜在的なナビゲーション動作が行われる場合にホスト車両について事故責任が生じないことを示す、潜在的なナビゲーション動作の1つを選択し、選択された潜在的なナビゲーション動作をホスト車両に実施させるようにプログラムされる少なくとも1つの処理デバイスを含み得る。一部の例では、選択される潜在的なナビゲーション動作は、複数の潜在的なナビゲーション動作のサブセットであって、複数の潜在的なナビゲーション動作のそのサブセットについて、テストは、複数の潜在的なナビゲーション動作のサブセットのいずれかが行われた場合にホスト車両について事故責任が生じないであろうことを示す、複数の潜在的なナビゲーション動作のサブセットから選択され得る。更に一部の例では、選択された潜在的なナビゲーション動作は、スコアリングパラメータに従って選択され得る。
幾つかの実施形態では、ホスト車両をナビゲートするためのシステムは、ホスト車両の環境を表す少なくとも1つの画像を画像捕捉デバイスから受信することと、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を少なくとも1つの運転ポリシに基づいて決定することとを行うようにプログラムされる少なくとも1つの処理デバイスを含み得る。プロセッサは、少なくとも1つの画像を分析してホスト車両の環境内の目標車両を識別することと、計画されたナビゲーション動作が行われた場合に生じることになる、ホスト車両と目標車両との間の次の状態の距離を決定することと、ホスト車両の現在の最大ブレーキ能力及びホスト車両の現在の速度を決定することと、目標車両の現在の速度を決定し、且つ目標車両の少なくとも1つの認識された特性に基づいて目標車両の最大ブレーキ能力を仮定することと、ホスト車両の最大ブレーキ能力及びホスト車両の現在の速度を所与として、目標車両の現在の速度及び目標車両の仮定された最大ブレーキ能力に基づいて決定される目標車両の移動距離に、決定された次の状態の距離を加算したもの未満である停止距離内でホスト車両が停止され得る場合、計画されたナビゲーション動作を実施することとを行うこともできる。停止距離は、ホスト車両がブレーキなしの応答時間中に移動する距離を更に含み得る。
目標車両の最大ブレーキ能力がそれに基づいて決定される目標車両の認識される特性は、任意の適切な特性を含み得る。幾つかの実施形態では、この特性が車両タイプ(例えば、そのそれぞれが異なるブレーキプロファイルに関連し得るオートバイ、車、バス、トラック)、車両のサイズ、予測されるか又は既知の車両の重さ、(例えば、既知のブレーキ能力を調べるために使用され得る)車両のモデル等を含み得る。
幾つかの場合、安全な状態の決定を2つ以上の目標車両に対して行うことができる。例えば、幾つかの場合、(距離及びブレーキ能力に基づく)安全な状態の決定は、ホスト車両に先行する2つ以上の識別された目標車両に基づき得る。かかる決定は、とりわけ先頭の目標車両の前に何があるかに関する情報を入手できない場合に有用であり得る。この場合、安全な状態、安全な距離及び/又は利用可能なDEPを決定するために、検出可能な先頭車両が動かない又はほぼ動かない障害物との差し迫った衝突を経験すると仮定することができ、そのため、追走する目標車両は、自らのブレーキプロファイルが認めるよりも速く停止に到達し得る(例えば、第2の目標車両は、第1の先頭車両と衝突し、その結果、予期される最大ブレーキ条件よりも速く停止に到達し得る)。その場合、安全な状態、安全な追走距離、DEPの決定をホスト車両に対する識別された先頭の目標車両の位置に基づかせることが重要であり得る。
幾つかの実施形態では、このような安全な状態から安全な状態へのナビゲーションシステムは、ホスト車両の環境を表す少なくとも1つの画像を画像捕捉デバイスから受信するようにプログラムされる少なくとも1つの処理デバイスを含み得る。ここでも他の実施形態と同様に、画像捕捉デバイス(例えば、カメラ)によって捕捉される画像情報をライダ又はレーダシステム等の1つ又は複数の他のセンサから得られる情報で補うことができる。幾つかの実施形態では、ナビゲートに使用される画像情報は、光学カメラからではなく、ライダ又はレーダシステムから生じることさえできる。少なくとも1つのプロセッサは、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を少なくとも1つの運転ポリシに基づいて決定することができる。プロセッサは、(例えば、ホスト車両の環境の画像をそれから光学や距離マップ等に基づいて得ることができるカメラ、レーダ、ライダ又は他の任意の装置から得られる)少なくとも1つの画像を分析してホスト車両の前方の第1の目標車両及び第1の目標車両の前方の第2の目標車両を識別することができる。次いで、プロセッサは、計画されたナビゲーション動作が行われた場合に生じることになる、ホスト車両と第2の目標車両との間の次の状態の距離を決定することができる。次に、プロセッサは、ホスト車両の現在の最大ブレーキ能力及びホスト車両の現在の速度を決定することができる。プロセッサは、ホスト車両の最大ブレーキ能力及びホスト車両の現在の速度を所与として、ホスト車両と第2の目標車両との間の決定された次の状態の距離未満である停止距離内でホスト車両が停止され得る場合、計画されたナビゲーション動作を実施することができる。
すなわち、衝突なしに又はホスト車両に責任が帰する衝突なしに、先行する可視の目標車両とホスト車両との間に次の状態の距離において停止するのに十分な距離があるとホスト車両のプロセッサが決定する場合、及び先行する可視の目標車両が任意の瞬間において突然完全に停止すると仮定し、ホスト車両のプロセッサは、計画されたナビゲーション動作を行うことができる。他方では、衝突なしにホスト車両を停止させるのに十分な空間がない場合、計画されたナビゲーション動作が行われない可能性がある。
加えて、幾つかの実施形態では、次の状態の距離がベンチマークとして使用され得るが、他の事例では、計画されたナビゲーション動作を行うべきかどうかを決定するために別の距離値が使用され得る。上記で説明したものと同様に、幾つかの場合、衝突を回避するためにホスト車両を停止しなければならない可能性がある実際の距離は、予測される次の状態の距離を下回る場合がある。例えば、先行する可視の目標車両の後に1つ又は複数の他の車両(上記の例では第1の目標車両)が続く場合、実際の予測される所要停止距離は、予測される次の状態の距離から先行する可視の目標車両を追走する目標車両の長さを引いたものになる。先行する可視の目標車両が突然停止した場合、後続の目標車両が先行する可視の目標車両と衝突し、その結果、それらの車両も衝突を回避するためにホスト車両によって回避されなければならないと想定することができる。従って、ホスト車両のプロセッサは、次の状態の距離からホスト車両と先行する可視の/検出された目標車両との間に介在する任意の目標車両の合計長を引いたものを評価して、衝突なしに最大ブレーキ条件下でホスト車両を停止させるのに十分な空間があるかどうかを決定することができる。
他の実施形態では、ホスト車両と1つ又は複数の先行する目標車両との間の衝突を評価するためのベンチマーク距離は、予測される次の状態の距離を上回る場合がある。例えば、幾つかの場合、先行する可視の/検出された目標車両が直ちにではないが迅速に停止する場合があり、それにより先行する可視の/検出された目標車両が想定される衝突後に短距離移動する。例えば、その車両が駐車中の車に衝突した場合、衝突側の車両は完全に止まるまで幾らかの距離を引き続き移動し得る。想定される衝突後の移動距離は、関連する目標車両に関する想定又は決定された最小停止距離を下回る場合がある。従って、幾つかの場合、ホスト車両のプロセッサは、計画されたナビゲーション動作を行うかどうかを評価する際に次の状態の距離を長くすることができる。例えば、この決定の際、先行する/可視の目標車両が想定される差し迫った衝突後に移動し得る妥当な距離に対処するために、次の状態の距離を5%、10%、20%等長くすることができ、又は所定の固定距離(10m、20m、50m等)で補うことができる。
評価の際に次の状態の距離を想定距離値の分だけ長くすることに加えて、先行する可視の/検出された目標車両による衝突後の移動距離に対処すること、及び先行する可視の/検出された目標車両を追走する(先行する可視の/検出された車両が突然停止した後、その車両と多重衝突すると仮定され得る)任意の目標車両の長さの両方によって次の状態の距離を修正することができる。
計画されたナビゲーション動作を行うかどうかの決定をホスト車両と、先行する可視の/検出された目標車両との間の(先行する可視の/検出された目標車両の衝突後の移動及び/又は先行する可視の/検出された目標車両を追走する車両の長さを考慮することによって修正される)次の状態の距離に基づかせることに加えて、ホスト車両は、自らの決定において1つ又は複数の先行車両のブレーキ能力を考慮し続けることができる。例えば、ホスト車両のプロセッサは、計画されたナビゲーション動作が行われた場合に生じることになる、ホスト車両と第1の目標車両(例えば、先行する可視の/検出された目標車両を追走する目標車両)との間の次の状態の距離を決定することと、第1の目標車両の現在の速度を決定し、且つ第1の目標車両の少なくとも1つの認識された特性に基づいて第1の目標車両の最大ブレーキ能力を仮定することと、ホスト車両の最大ブレーキ能力及びホスト車両の現在の速度を所与として、第1の目標車両の現在の速度及び第1の目標車両の仮定された最大ブレーキ能力に基づいて決定される第1の目標車両の移動距離に、ホスト車両と第1の目標車両との間の決定された次の状態の距離を加算したもの未満である停止距離内でホスト車両が停止され得ない場合、計画されたナビゲーション動作を実施しないこととを続けることができる。ここでも上記の例と同様に、第1の目標車両の認識された特性は、車両のタイプ、車両のサイズ、車両のモデル等を含み得る。
幾つかの場合、(例えば、他の車両の動作により)ホスト車両は、衝突が差し迫っており不可避であると決定する場合がある。その場合、ホスト車両のプロセッサは、結果として生じる衝突がホスト車両の責任を発生させないナビゲーション動作(存在する場合)を選択するように構成され得る。加えて又は或いは、ホスト車両のプロセッサは、現在の軌道よりも又は1つ若しくは複数の他のナビゲーション動作と比較してホスト車両に一層少ない潜在的損害を与え又は目標物に一層少ない潜在的損害を与えるナビゲーション動作を選択するように構成され得る。更に幾つかの場合、ホスト車両のプロセッサは、衝突が予期される1つ又は複数の物体の種類を検討することに基づいてナビゲーション動作を選択することができる。例えば、第1のナビゲーション動作では、駐車中の車との衝突に直面し、又は第2のナビゲーション動作では動かない物体との衝突に直面する場合、ホスト車両により少ない潜在的損害を与える動作(例えば、駐車中の車との衝突をもたらす動作)を選択することができる。第1のナビゲーション動作では、ホスト車両と同様の方向に移動する車との衝突に直面し、又は第2のナビゲーション動作では駐車中の車との衝突に直面する場合、ホスト車両により少ない潜在的損害を与える動作(例えば、移動中の車との衝突をもたらす動作)を選択することができる。第1のナビゲーション動作の結果として歩行者との衝突に直面し、又は第2のナビゲーション動作では他の任意の物体との衝突に直面する場合、歩行者との衝突に対する任意の代替策を提供する動作を選択することができる。
実際には、ホスト車両をナビゲートするためのシステムは、ホスト車両の環境を表す少なくとも1つの画像(例えば、可視画像、ライダ画像、レーダ画像等)を画像捕捉デバイスから受信することと、ホスト車両の現在のナビゲーション状態のインジケータを少なくとも1つのセンサから受信することと、少なくとも1つの画像の分析及びホスト車両の現在のナビゲーション状態のインジケータに基づいて、ホスト車両と1つ又は複数の物体との間の衝突が不可避であると決定することとを行うようにプログラムされる少なくとも1つの処理デバイスを含み得る。プロセッサは、利用可能な代替策を評価することができる。例えば、プロセッサは、少なくとも1つの運転ポリシに基づいて第1の物体との予期される衝突を伴うホスト車両のための第1の計画されたナビゲーション動作と、第2の物体との予期される衝突を伴うホスト車両のための第2の計画されたナビゲーション動作とを決定することができる。潜在的な事故責任を決定するために、第1の計画されたナビゲーション動作及び第2の計画されたナビゲーション動作を少なくとも1つの事故責任規則に対してテストすることができる。少なくとも1つの事故責任規則に対する第1の計画されたナビゲーション動作のテストが、第1の計画されたナビゲーション動作が行われる場合にホスト車両について潜在的な事故責任があり得ることを示す場合、プロセッサは、第1の計画されたナビゲーション動作をホスト車両に実施させないことができる。少なくとも1つの事故責任規則に対する第2の計画されたナビゲーション動作のテストが、第2の計画されたナビゲーション動作が行われる場合にホスト車両について事故責任が生じないことを示す場合、プロセッサは、第2の計画されたナビゲーション動作をホスト車両に実施させることができる。物体は、他の車両又は車両ではない物体(例えば、道路の瓦礫、木、ポール、標識、歩行者等)を含み得る。
以下の図面及び解説は、開示するシステム及び方法をナビゲートし実施するときに生じ得る様々なシナリオの例を与える。これらの例では、ある動作であって、その動作を行った場合に結果として生じる事故についてホスト車両に帰せられる過失が発生する、動作を行うことをホスト車両が回避し得る。
図28A及び図28Bは、以下のシナリオ及び規則の例を示す。図28Aに示すように、車両2804(例えば、目標車両)を取り囲む領域は、車両2804の後ろで距離を置いてレーン内を走行している車両2802(例えば、ホスト車両)にとっての最小安全距離地帯を表す。開示する実施形態と合致する1つの規則によれば、車両2802に過失が帰せられる事故を回避するために、車両2802は、車両2802を取り囲む領域内に留まることによって最小安全距離を保つ必要がある。対照的に、図28Bに示すように車両2804がブレーキをかけた場合、事故が発生した場合には車両2802に帰責事由がある。
図29A及び図29Bは、割り込みシナリオにおける過失の例を示す。これらのシナリオでは、車両2902の周りの安全地帯が割り込み操作の帰責事由を決定する。図29Aに示すように、車両2902が車両2904の前に割り込んでおり、(車両2904を取り囲む領域によって示す)安全な距離を侵害しており、従って帰責事由がある。図29Bに示すように、車両2902が車両2904の前に割り込んでいるが、車両2904の前の安全な距離を保っている。
図30A及び図30Bは、割り込みシナリオにおける過失の例を示す。これらのシナリオでは、車両3002に帰責事由があるかどうかを車両3004の周りの安全地帯が決定する。図30Aでは、車両3002が車両3006の後ろを走行しており、目標車両3004が移動しているレーンに車線変更する。このシナリオでは、車両3002が安全な距離を侵害しており、従って事故が発生した場合には帰責事由がある。図30Bでは、車両3002が車両3004の後ろに割り込み、安全な距離を保つ。
図31A〜図31Dは、ドリフトシナリオにおける過失の例を示す。図31Aにおいて、このシナリオは、車両3102の幅広地帯に割り込む車両3104による僅かな横方向の操作で始まる。図31Bでは、車両3104が車両3102の正規地帯に割り込み続けており、安全距離領域を侵害している。事故が発生した場合、車両3104に過失がある。図31Cでは、車両3104は、その初期位置を保つ一方、車両3102が横方向に移動して正規安全距離地帯の侵害を「強いて」いる。事故が発生した場合、車両3102に過失がある。図31Bでは、車両3102及び車両3104が互いに向かって横方向に移動する。事故が発生した場合、両方の車両によって過失が分担される。
図32A及び図32Bは、双方向交通シナリオにおける過失の例を示す。図32Aでは、車両3202が車両3206を追い越し、車両3202は、車両3204からの安全な距離を保つ割り込み操作を行っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3204に過失がある。図32Bでは、車両3202が車両3204からの安全な縦方向距離を保つことなしに割り込んでいる。事故が発生した場合、車両3202に過失がある。
図33A及び図33Bは、双方向交通シナリオにおける過失の例を示す。図33Aでは、車両3302が対向車両3304の経路内にドリフトし、安全な距離を保っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3304に過失がある。図33Bでは、車両3302が対向車両3304の経路内にドリフトし、安全な縦方向距離を侵害している。事故が発生した場合、車両3304に過失がある。
図34A及び図34Bは、ルート優先権シナリオにおける過失の例を示す。図34Aでは、車両3402が一時停止の標識を無視している。信号機によって車両3404に与えられた優先権を尊重していないことについて、過失は、車両3402に帰する。図34Bでは、車両3402に優先権はないが車両3404の信号が青に変わったとき既に交差点に入っていた。車両3404が車両3402に衝突した場合、車両3404に過失がある。
図35A及び図35Bは、ルート優先権シナリオにおける過失の例を示す。図35Aでは、接近している車両3504の経路内に車両3502がバックしている。車両3502は、安全な距離を保つ割り込み操作を行っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3504に過失がある。図35Bでは、安全な縦方向距離を保つことなしに車両3502の車が割り込んでいる。事故が発生した場合、車両3502に過失がある。
図36A及び図36Bは、ルート優先権シナリオにおける過失の例を示す。図36Aでは、車両3602及び車両3604が同じ方向に走行している一方、車両3602が車両3604の経路を横切って左折している。車両3602は安全な距離を保つ割り込み操作を行っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3604に過失がある。図36Bでは、安全な縦方向距離を保つことなしに車両3602が割り込んでいる。事故が発生した場合、車両3602に過失がある。
図37A及び図37Bは、ルート優先権シナリオにおける過失の例を示す。図37Aでは、車両3702が左折したいが、対向車両3704に道を譲らなければならない。車両3702は、左折して車両3704に対する安全な距離を侵害している。車両3702に過失がある。図37Bでは、車両3702が左折して車両3704に対する安全な距離を保っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3704に過失がある。
図38A及び図38Bは、ルート優先権シナリオにおける過失の例を示す。図38Aでは、車両3802及び車両3804が直進しており、車両3802には一時停止の標識がある。車両3802が交差点に入り、車両3804に対する安全な距離を侵害している。車両3802に過失がある。図38Bでは、車両3802が車両3804に対する安全な距離を保ちながら交差点に入っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3804に過失がある。
図39A及び図39Bは、ルート優先権シナリオにおける過失の例を示す。図39Aでは、車両3902が左折したいが右側から来る車両3904に道を譲らなければならない。車両3902は、交差点に入り優先通行権及び車両3904に対する安全な距離を侵害している。車両3902に過失がある。図39Bでは、車両3902が優先通行権及び車両3904に対する安全な距離を保ちながら交差点に入っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両3904に過失がある。
図40A及び図40Bは、信号機シナリオにおける過失の例を示す。図40Aでは、車両4002が赤信号を無視している。信号機によって車両4004に与えられた優先権を尊重していないことについて、過失は、車両4002に帰する。図40Bでは、車両4002に優先権はないが、車両4004の信号が青に変わったときに車両4002が既に交差点に入っていた。車両4004が車両4002に衝突した場合、車両4004に過失がある。
図41A及び図41Bは、信号機シナリオにおける過失の例を示す。車両4102が対向車両4104の経路を横切って左折している。優先権は、車両4104にある。図41Aでは、車両4102が左折し、車両4104に対する安全な距離を侵害している。過失は、車両4102に帰せられる。図41Bでは、車両4102が左折して車両4104に対する安全な距離を保っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両4104に過失がある。
図42A及び図42Bは、信号機シナリオにおける過失の例を示す。図42Aでは、車両4202が右折し、直進している車両4204の経路に割り込んでいる。赤信号時の右折は、適法な操作であると想定されるが、車両4204に対する安全な距離を車両4202が侵害しているため、車両4204に優先通行権がある。過失は、車両4202に帰せられる。図42Bでは、車両4202が右折して車両4204に対する安全な距離を保っている。事故が発生した場合、妥当な力でブレーキをかけなかったことについて車両4204に過失がある。
図43A〜図43Cは、交通弱者(VRU)シナリオの例を示す。車両が操作を行う場合の動物又はVRUとの事故は、割り込みの異形として処理し、幾つかの例外はあるが、デフォルトの過失は、車にある。図43Aでは、車両4302が安全な距離を保ち事故を回避できることを保証しながら動物(又はVRU)の経路内に割り込んでいる。図43Bでは、車両4302が動物(又はVRU)の経路内に割り込んでおり、安全な距離を侵害している。過失は、車両4302に帰せられる。図43Cでは、車両4302が動物を認識して停止し、止まるのに十分な時間を動物に与えている。動物が車に衝突した場合、動物に過失がある。
図44A〜図44Cは、交通弱者(VRU)シナリオの例を示す。図44Aでは、信号機がある交差点で車両4402が左折し、横断歩道内の歩行者と遭遇する。車両4402は、赤信号であり、VRUは、青信号である。車両4402に帰責事由がある。図44Bでは、車両4402が青信号であり、VRUが赤信号である。VRUが横断歩道に入った場合、VRUに帰責事由がある。図44Cでは、車両4402が青信号であり、VRUが赤信号である。VRUが横断歩道内に既にいた場合、車両4402に帰責事由がある。
図45A〜図45Cは、交通弱者(VRU)シナリオの例を示す。図45Aでは、車両4502が右折し、自転車と遭遇する。自転車は、青信号である。車両4502に帰責事由がある。図45Bでは、自転車が赤信号である。自転車が交差点に入った場合、自転車に帰責事由がある。図45Cでは、自転車が赤信号であるが、交差点に既に入っている。車両4502に帰責事由がある。
図46A〜図46Dは、交通弱者(VRU)シナリオの例を示す。車両が操作を行わない場合のVRUとの事故の過失は、幾つかの例外はあるが、デフォルトで車にある。図46Aでは、車両4602が安全な距離を保つことを常に確認し、VRUとの事故を回避できることを保証しなければならない。図46Bでは、車両4602が安全な距離を保たない場合、車両4602に過失がある。図46Cでは、車両4602が、場合により車両5604によって隠れるVRUとの衝突を回避するのに十分遅い速度を保たない場合又は法定速度を上回って走行する場合、車両4602に過失がある。VRUが場合により車両4604によって隠れる別のシナリオである図46Dでは、車両4602が十分遅い速度を保つがVRUの速度が妥当な閾値を上回る場合、VRUに過失がある。
本明細書で開示したように、RSSは、マルチエージェントシナリオのためのフレームワークを定める。静的物体との事故、道路からの離脱、制御不能又は車両故障の過失は、ホスト側にある。RSSは、ホストの経路内に他の物体が危険を伴って入ってこない限り(その場合、過失は、その物体にある)他の物体との事故が起きないようにする慎重な操作を定める。目標物に過失がある確実な衝突の場合、ホストは、自らのブレーキをかける。システムは、回避操舵をその操作が「慎重」である(別の事故を引き起こさないことが認められる)場合にのみ検討し得る。
非衝突インシデントは、車両火災、道路のくぼみ、落下物等によって引き起こされる事故を含む。これらの事例では、安全な距離で「静的物体」が見えるようになるか又は慎重な回避操作が存在すると仮定する「静的物体」シナリオとして分類され得る道路のくぼみ及び落下物等のホストが回避可能なシナリオを除き、過失は、デフォルトでホストにあり得る。ホスト車両が静止しているマルチエージェントシナリオではホストに過失はない。この場合、本質的に目標物が危険な割り込みを行っている。例えば、静止している車に自転車がぶつかった場合、ホストに過失はない。
RSSは、レーンマークのない駐車場又は広い環状交差路等、道路が明確に構造化されていない場合に過失を割り当てるためのガイドラインも含む。これらの非構造化道路シナリオでは、各車両の自らの経路からの逸脱を調べて、領域内の他の物体が調節を行うことを可能にするのに十分な距離を各車両が与えたかどうかを決定することによって過失が割り当てられる。
安全でスケーラブルな自動運転車両のためのモデル
先に論じたように、「責任敏感型安全性」(RSS)と呼ばれるモデルは、「事故過失」の概念を形式化し得る。RSSは解釈可能且つ説明可能であり得て、ロボットエージェントの動作に「責任」感を組み込み得る。
幾つかの実施形態では、RSSは、以下の4つの規則を形式化することによって構築される。(1)前の車が急ブレーキをかけた場合に時間内に停止できるように、前の車から安全な距離を保つ、(2)両側の車から安全な距離を保ち、横方向の操作を行い別の車の軌道に割り込むときは、他の車に対応するために十分な空間を取る、(3)「優先通行権」が取られず与えられている場合、「優先通行権」規則を尊重する、(4)隠蔽領域、例えば、駐車車両の後ろの領域に注意する。
以下の説明は、上記の規則の形式化を表す。幾つかの側面では、形式モデルは健全性を満たすべきであり、例えば、自動運転車両に事故の責任がないとするモデルの場合、モデルは人間の判断の「常識」及び有用性、例えば、通常の交通の流れを維持しながら、事故を決して起こさないことを保証するポリシと一致するべきである。幾つかの実施形態では、モデルが依然として有用である限り、モデルはファジシナリオにおいて自動運転車両に責任を割り当て、場合により必要以上の慎重さをもたらす。
これらの要件、健全性、独自性のそれぞれを個別に満たすことは取るに足らないことである。すなわち、自動運転車両に常に責任を割り当てるモデルは健全であるが有用ではなく、自動運転車両に決して責任を割り当てないモデルは有用であるが健全ではない。RSSモデルの実施形態は、健全性と有用性の両方を満たす。
安全距離
RSSの議論で形式化された第1の基本概念は、後続車が先行車に衝突した場合、後続車に常に帰責事由があるということである。例えば、2台の車cf、crは、横方向の操作を行わず、直線道路に沿って縦に並んで同じ速度で運転し得る。前の車であるcfが、道路上に現れた障害物により突然ブレーキをかけ、それを回避できたと仮定する。残念ながら、cfから十分な距離を保っていなかったcrは、遅れずに反応することができずにcfの後部に衝突する。この実験例では、過失がcrにあることは明らかであり、前の車から安全な距離を保ち、予期せぬが妥当なブレーキに備えておくことは、後ろの車の責任である。
次の定義は、「安全距離」の概念を形式化したものである。
定義27(安全な縦方向距離−同じ方向):別の車cfの後ろを運転する車crの間の縦方向距離は、両方の車が同じ方向に運転している場合、応答時間ρに関して安全であり、cfによって行われる最大amax,brakeでの任意のブレーキについて、crが応答時間中に最大amax,accelだけ加速し、その後完全に停止するまで少なくともamin,brakeだけブレーキをかけた場合、crは、cfと衝突しない。
幾つかの実施形態では、安全な縦方向距離は、パラメータ、ρ、amax,accel、amax,brake、amin,brakeに依存する。これらのパラメータは、例えば、規制によって決定され得る。幾つかの実施形態では、パラメータは、自動運転車両と人間が運転する車両とで異なって設定される。例えば、自動運転車両の応答時間は人間のドライバーの応答時間よりも短くなり得て、自動運転車両は通常の人間のドライバーよりも効果的にブレーキをかけ得るため、amin,brakeは人間が運転する車両よりも自動運転車両の方が大きな値になり得る。他の実施形態では、パラメータは、例えば、1つ又は複数のオンボードカメラから取得された画像の分析によって、又は他の任意の適切なセンサ(例えば、フロントガラスセンサ、車輪スリップセンサ等)からの出力に基づいて検知され得る、異なる道路条件(濡れた道路、氷、雪)によって異なるように設定され得る。
以下の補助定理11は、cr、cfの速度及び定義27のパラメータに応じて安全距離を計算する。
補助定理11: 縦軸上でc
fの後ろにある車両をc
rとする。ρ、a
max,brake、a
max,accel、a
min,brakeを定義27の通りとする。v
r、v
fを車の縦方向の速度とする。従って、c
rの最前点とc
fの最後尾点との間の最小安全縦方向距離は、次のようになる。
証明:d
0がc
rとc
fの間の初期距離を示すものとする。
で示す。前の車の速度はtと共に速度a
max,brakeで減少し(ゼロに到達するまで、又は衝突が発生するまで)、後ろの車の速度は時間間隔[0、ρ]で増加する(v
ρ,maxに到達するまで)、その後、速度a
min,brake<a
max,brakeでゼロに減少する(例えば、完全停止又は衝突)。その結果、ある時点で2台の車の速度が同じである場合、それ以降、前の車の速度は小さくなり、両方の車が完全に停止するまで、車間の距離は単調に減少することになる(衝突が発生した場合、「距離」が負になる可能性がある)。従って、最悪の事例の距離は、時間がゼロになったときか、又は2台の車が完全に停止したときに発生し得る。前者の場合、d
0>0となる。後者の場合、前の車と後ろの車が完全に停止するまでに通過する距離は、それぞれ
及び
になり得る。その時点(両方の車が完全に停止したとき)で、それらの間の距離はゼロより大きいべきである。
項を並べ替えると、補助定理11、つまり最小安全距離が得られる。
安全距離の前述の定義は、後ろの車と前の車の両方が同じ方向に運転している場合に健全であり得る。実際、この事例では、前の車から安全な距離を保ち、予期せぬが妥当なブレーキに備えておくことは、後ろの車の責任である。但し、2台の車が反対方向に運転しているシナリオの定義も必要である。
例えば、停止している前の車cfから安全な距離に現在ある車crについて検討する。突然、cfが駐車場へとバックし、後ろからcrと衝突し得る。ここで、crが後ろからcfに衝突しても、後ろの車のcrには責任がない。この規則を形式化するために、「後ろと前」の定義は、車両が互いに向かって移動するシナリオ(つまり、縦方向の速度の符号が反対の場合)には適用されないように定められる。その場合、衝突を回避するために、両方の車が速度の絶対値を下げることが予想され得る。
従って、反対方向に運転する車の間の安全距離は、両方の車が(所定の応答時間後に)ブレーキをかけた場合に衝突が発生しないように必要な距離として定められ得る。但し、レーン方向と反対方向に運転する車は、正しい方向に運転する車よりも強くブレーキをかける必要があると想定され得る。これは、以下の定義をもたらす。
定義28(安全な縦方向の距離‐反対方向):縦方向速度v1、v2のレーンを走行する車c1、c2について検討する。ここで、v2<0及びv1≧0(縦方向の速度の符号は、許可されたレーン上の走行方向に応じて異なる)。車間の縦方向距離は、応答時間ρ、ブレーキパラメータamin,brake、amin,brake,correct、及び加速度パラメータamax,accelに関して安全である。c1、c2が、応答時間中に速度amax,accelで速度の絶対値を増加させ、それ以降、速度amin,brake,correct、amin,brakeそれぞれで完全に停止するまで速度の絶対値を減少させた事例の場合、衝突は発生しない。
反対方向の場合の安全距離の計算は、以下の補助定理で示され得る(その証明は簡単であるため、省略されている)。
補助定理12:定義28に示される表記を検討する。
及び
で定義する。従って、c
1とc
2の間の最小の安全な縦方向距離は次式のようになる
2台の車が衝突する前に、まず車を安全でない距離にしなければならない。直感的には、安全距離の定義の考え方は、両方の車が安全距離の違反に対して「適切に」対応すれば、衝突は発生し得ないというものである。そのうちの1台が「適切に」対応しない場合、その車が事故の責任を負うことになる。これを形式化するには、最初に、車が安全でない距離になり始める直前の瞬間を定義することが重要である。
定義29(危険な縦方向の状況及び過失時点):時刻tにおける車c1,c2の間の距離が安全でない場合(定義27又は定義28による)、時間tは車c1、c2にとって危険であるとする。危険時間tが与えられると、tbで示されるその過失時点は、間隔(tb,t]内の全ての時間が危険であるような最も早い非危険時間である。例えば、事故は危険な場合にのみ時間tで発生する可能性があるため、事故の過失時点はtの過失時点である。
定義30(危険な縦方向の状況への適切な対応):上記のように、tを車c1、c2の危険な時間とし、tbを対応する過失時点とする。2台の車が縦方向の速度に関する次の制約に準拠していると仮定する。 1. 最初に、例えば、過失時点で2台の車が同じ方向に運転されており、c1が後ろの車である場合、
・c1加速度は、間隔[tb,tb+ρ)の間は最大でamax,accelであり、時間tb+ρから完全停止に達するまでは最大で−amin,brakeでなければならず、その後、正でない加速度へ変速できる。換言すれば、後ろの車は、応答時間中に最大加速能力(フルスロットルレベル等)まで加速できるが、その後、車の選択された最小制動率と車の最大制動率との間の制動率に関連付けられた率で減速しなければならない。選択された最小制動率は、規制に依存するか、又は任意の他の適切な基準に基づいて選択され得る。
・c2加速度は、完全に停止するまで少なくとも−amax,brakeでなければならず、その後、負でない加速度へ変速できる。すなわち、前の車は、前の車の最大ブレーキ能力に関連する減速率までの率で減速できる。 2. 次に、過失時点で2台の車が反対方向に運転していて、例えば、c2が間違った方向に運転していた場合(例えば、c2の速度が負の場合)、
・c1加速度は、間隔[tb,tb+ρ)の間は最大でamax,accelであり、時間tb+ρから完全停止に達するまでは最大で−amin,brake,correctでなければならず、その後、正でない加速度へ変速できる。車c1は、応答時間中に最大加速能力で車c2に向かって加速し得るが、その後、車の選択された最小制動率と車の最大制動率との間の制動率に関連付けられた率で減速しなければならない。選択された最小制動率は、規制に依存するか、又は任意の他の適切な基準に基づいて選択され得る。
・c2加速度は、間隔[tb,tb+ρ)の間は少なくとも−amax,accelであり、時間tb+ρから完全停止に達するまでは最大でamin,brakeでなければならず、その後、負でない加速度へ変速できる。換言すると、車c2は、車c2の応答時間中に、車c2の最大加速率までの率で車c1に向かって加速し得る。その後、車c2は、車の選択された最小制動率と車の最大制動率との間の制動率に関連付けられた率で減速しなければならない。選択された最小制動率は、規制に依存するか、又は任意の他の適切な基準に基づいて選択され得る。更に、車c2の選択された最小制動率は、車c1の選択された最小制動率とは異なり得る(例えば、誤った方向に運転する車が適用しなければならない最小制動率は、正しい方向に運転している車に必要な最小制動率よりも高くなり得る)。
前述のように、衝突は危険なときにのみ発生する可能性があると想定する。従って、車間の距離が安全でなくなり、両車が対応する過失時点から(車間の距離が再び安全になるまで)「危険な状況への適切な対応」を適用した場合、衝突は発生し得ない。従って、事故の責任は、衝突前の危険な状況に適切に対応しなかったエージェントに割り当てられ得る。幾つかの実施形態では、以下の定義は、横方向の操作が行われない(すなわち、各車がレーン内で横方向の位置を維持する)シナリオに適用され得る。
次の節では、車が横方向の操作を行える場合に定義を拡張し得る。
定義31(事故の責任‐横方向の操作なし):時間tでのc1とc2の間の事故を検討し、tbを対応する過失時点とする。車c1は、間隔(tb,t]のある時点で、「危険な状況への適切な対応」(定義30)によって定義された制約に従わなかった場合に事故の責任を負う。
更に、(例えば、両車が適切な対応の制約に準拠していなかった場合)c1とc2の両方が事故の責任を共有し得る。
横方向の操作における責任
幾つかの実施形態では、RSSモデルにより、車が横方向の操作を行っているときの責任が形式的に定義され得る。第1の実施例では、横軸、縦軸がそれぞれx軸、y軸である平面上の直線道路を想定する。例えば、上記で論じたように、レーンに基づく座標系を参照している。幾つかの実施形態では、縦方向及び横方向の速度は、実際の曲線道路と直線道路との間の全単射によって得られる、直線仮想道路上の縦方向及び横方向の位置の導関数であり得る。同様に、加速度は位置の二次導関数であり得る。
長期間(例えば、車が動いていないとき)、0の値に保たれ得る縦方向の速度とは異なり、車は通常小さな横方向の変動を実行するため、横方向の速度を正確に0に保つことは困難であり得る。従って、モデルは横方向速度のロバストな概念を導入し得る。
定義32(μ−lateral−velocity):時間tで横方向の位置lにある点を検討する。時間tでのそのμ−lateral−velocityは次のように定められる。t
out>tを、l
outで表される点の横方向の位置が
又は
のいずれかになる最も早い将来の時間とする(そのような時間が存在しない場合は、t
out=4とする)。ある時点t
'0(t,t
out)で点の横方向の位置がlである場合、μ−lateral−velocityの速度は0である。さもなければ、μ−lateral−velocityは
である。
幾つかの実施形態では、2台の車両間で衝突を起こすために、2台の車両が縦方向及び横方向の両方で近接していることが必要である。安全な縦方向の距離は上記で定められている。
定義33(安全な横方向の距離):横方向の速度v
1、v
2で運転する車c
1、c
2間の横方向の距離は、時間間隔[0、ρ]の間に2台の車がお互いに向かって
の横方向加速度を適用する場合、パラメータρ、
、
、μに関して安全である。その後、2台の車は、各車がゼロ横方向速度に達するまで、
の横方向ブレーキを適用し、2台の車の間の最終的な横方向距離は少なくともμになる。
横方向の安全距離の計算は、以下の補助定理で示され得る。
補助定理13:定義33に示される表記を検討する。一般性を失うことなく、c
1がc
2の左にいると仮定する。
及び
で定義する。従って、c
1の右側とc
2の左側の間の最小の安全な横方向の距離は次式のようになる。
前述のように、2台の車が衝突するためには、車が安全でない縦方向の距離と安全でない横方向の距離の両方にある必要があると想定する。従って、安全距離の定義の考え方は、両方の車が安全距離の違反に対して「適切に」対応すれば、衝突は発生しないというものである。1台の車が「適切に」対応しなかった場合、その車が事故の責任を負うことになる。この実験例では、モデルは危険な状況及び過失時点の修正された定義を使用し得る。
定義34(危険な状況及び過失時点):車c1、c2の間の縦方向と横方向距離の両方が安全でない場合、時間tを両車にとって危険であるとする(定義27、定義28、及び定義33による)。危険時間tが与えられると、tbで示されるその過失時点は、間隔(tb,t]内の全ての時間が危険であるような最も早い非危険時間である。この実験例では、事故は危険な場合にのみ時間tで発生する可能性があり、その場合、事故の過失時点はtの過失時点である。
定義35(危険な状況への適切な対応):tを車c
1、c
2の危険な時間とし、t
bを対応する過失時点とする。2台の車の適切な動作は、横方向/縦方向速度に関する次の制約に準拠していると想定する。 1. 過失時点の前にc
1とc
2との間に安全な縦方向距離があった場合、縦方向速度は定義30に従って制約される。 2. 過失時点の前に、c
1とc
2との間に安全な横方向距離があった場合、一般性を失うことなく、その時点でc
1がc
2の左にあったと想定する。
・t0[t
b,t
b+ρ)の場合、両方の車は、横方向加速度aが
を満たす限り、任意の横方向動作を行うことができる。
・さもなければ、t>t
b+ρの場合:
〇μ−lateral−velocityが0に達する前に、c
1は最大で
の横方向加速度を適用する必要があり、c
2は少なくとも
の横方向加速度を適用する必要がある。換言すると、c
1は一方向に少なくとも最小の横方向加速度である必要があり、c
2は反対方向に少なくとも最小の横方向加速度である必要がある。
〇μ−lateral−velocityが0に達した後、c
1は正ではないμ−lateral−velocityであり得て、c
2は負ではないμ−lateral−velocityであり得る。 3. 最小限の回避努力:上記の規則に加えて、以下の制約が適用され得る。
・まず、上記の項目(1)の場合:過失時点に2台の車が同じ方向に運転していて、c
2が前の車であるとする。次に、時間t
b+ρの後、μ−lateral−velocityが0に達するまで、少なくとも
だけ横方向にブレーキをかける必要がある。その後、μ−lateral−velocityは0の状態を維持する必要がある。 ・上記の項目(2)の場合:μ−lateral−velocityが0に達するまで、c
1が適切に対応し、その間、c
2は適切に対応せず、現在はc
1の前にいるとする(つまり、c
2の全ての点は縦方向においてc
1の全ての点の前にあり、c
2のある点はc
1のある点と同じ横方向位置にある)。これが発生する第1の瞬間である割り込み時点はt
cで示される。従って、t
b<t
c<t‐ρであり、現在c
1の速度が正の場合、c
1は少なくとも
の率で縦方向にブレーキをかける必要がある。
上記の定義では、「最小限の回避努力」というタイトルの項目を除く全てが、両方の車が適切に対応すれば衝突が発生しないという意味で、安全距離の定義における仮定の本質を捉えている。「最小限の回避努力」は、責任が共有される可能性のある潜在的な状況が発生するのを防ぐために必要以上の慎重さが適用される事例を扱う。例えば、後ろの車c
1が前の車c
2から安全な距離を保つ必要がある場合、c
2は過度に慎重になり、c
1が十分に強くブレーキをかけない場合に衝突を防ぐために横方向操作を避ける。次の場合は、例えば、c
1が適切に動作しているときに、安全でない縦方向距離でc
2が割り込みを行う場合である。この場合では、c
2は正しく動作しなかった。それにもかかわらず、c
1は、例えば、少なくとも
のブレーキをかけることによって、潜在的な衝突を回避するための努力をすることが期待される。これにより、(両方の車がともに縦方向及び横方向速度がゼロでない限り)危険な状況の期間が短縮され得る。
定義36(事故の責任):例えば、時間tでのc1とc2との間の事故を検討し、tbを対応する過失時点とする。図47Aに示すように、(tb,t]のある時点で定義35に従って適切に対応しなかった場合、車cが事故の責任を負う可能性がある。
図47Aでは、各車の周りの垂直線は、応答時間中に横方向に加速し、次に横方向にブレーキをかける場合に、車の可能な横方向位置を示す。同様に、長方形は、車の可能な縦方向位置を示す(例えば、車がamax,brakeでブレーキをかけるか、又は応答時間中に加速してからamin,brakeでブレーキをかける場合)。上の2行(行aと行b)では、過失時点の前に安全な横方向距離があったため、適切な対応は横方向にブレーキをかけることである。黄色の車は既にμ−lateral−velocityがゼロになっているため、赤い車だけが横方向にブレーキをかける。3行目(行c)では、過失時点の前に安全な縦方向距離があったため、適切な対応は後ろの車が縦方向にブレーキをかけることである。最後に、4行目(行d)では、過失時点の前に、対向のシナリオにおいて、安全な縦方向距離があったため、両方の車が縦方向にブレーキをかける必要がある。
パラメータ
、a
max,accel、及びa
max,brakeは、必ずしも物理的な制限を反映しているわけではないが、道路利用者に期待される合理的な動作の上限を表し得る。幾つかの実施形態では、これらの定義に基づいて、危険な時間にドライバーがこれらのパラメータに従わない場合、ドライバーは直ちに事故の責任を負うことになる。
簡単にするために、車が
の「横方向ブレーキ」の適用からすぐにμ−lateral−velocityが0になるように切り替えることができると想定する。車の物理的特性により、これが常に可能であるとは限らない。但し、適切な対応の定義で重要なのは、時間t
b+ρから車がμ−lateral−velocityが0になるまでの時間であり、車が通過する横方向合計距離は、車が完全停止まで
のブレーキをかけた場合に車が通過する距離よりも大きくなることはない。幾つかの実施形態では、実際の車両によってこの目標を達成することは、最初により高い率でブレーキをかけ、最後に横方向速度をより徐々に減少させることによって可能である。幾つかの実施形態では、制動率のこの変化は、RSSモデルに影響を与え得ない。
幾つかの実施形態では、上記の定義は、各車の全ての点に関して最悪の事例を検討することによって、任意の形状の車両に当てはまる。例えば、モデルはセミトレーラやドアが開いている車を考慮し得る。
複数の幾何学的形状及び優先通行権規則
シナリオによっては、1つのシーン内又は環境内に、特定の領域内で重なり合う複数の異なる道路の幾何学的形状があり得る。図47Bは、環状交差点4706、交差点4704及び4708、高速道路への合流4702を含む例示的な道路の幾何学的形状を示す。そのような多くの場合、実線で示されている1つのルートが、破線で示されている他のルートよりも優先され得て、そのルートに乗る車両には優先通行権がある。
複数のルートの幾何学的形状のシナリオに直面する場合、上記の定義を調整する必要があり得る。例えば、図47Bに示されているT字交差点4702について検討し、実線で示されているルートに一時停止の標識があるとする。c1が破線のルートの交差点に近づいており、同時にc2が実線のルートの交差点に近づいていると仮定する。破線のルートの座標系によると、c2は横方向速度は非常に大きいため、c1は、c2が既に安全でない横方向距離にあると推測する可能性があり、これは、優先ルートを運転するc1が、c2までの安全な縦方向距離を保つために速度を落とさなければならないことを意味する。これは、c2は、実線からの交通に関して非常に控え目であるべきことを意味する。この場合、黄色のルート上の車には優先通行権があるため、これは当然ながら不自然な動作である。更に、優先権がないc2でも、c1が時間内に停止できる限り、交差点に合流できるはずである(これは混雑した交通では非常に重要である)。この実験例は、c1がr1上を運転する場合、r2の座標系に関してその位置及び速度を考慮することは意味がないことを示している。その結果、「c1がc2の前にいるとはどういう意味なのか」、安全でない距離にあるとはどういうことなのか等の前述の概念が一般化され得る。
複数の幾何学的形状の場合、安全な横方向距離の定義が一般化され得る。以下の定義を同じ幾何学的形状の2つのルートに適用すると、定義33と同じ定義が得られ得る。本明細書で言及されるように、ルートは、R2のサブセットであり得る。更に、以下の実験例の2台の車c1、c2が異なるルートr1、r2を運転していると想定する。一部の状況(例えば、図47Bに示すT字交差点4704)では、両方の車がルートに割り当てられ、時間が危険ではないようなルートr1が1つだけ存在すると、その時点から、定義は、r1のみを参照して説明される。
定義37(異なる幾何学的形状の2つのルートの横方向安全距離):例えば、交差するルートr
1、r
2を運転する車両c
1、c
2について検討する。全てのi∈{1,2}について、時間間隔[0、ρ)の間に車が横方向加速度(r
iに関して)、|a
lat|≦
を適用し、その後、(r
iに関して)ゼロの横方向速度に達するまで、(再びr
iに関して)少なくとも
の横方向ブレーキをかける場合、[x
i,min,x
i,max]をc
iが入ることができるr
iの最小及び最大の横方向位置とする。横方向間隔[x
1,min,x
1,max]、[x
2,min,x
2,max]に対するr
1、r
2の制約が少なくともμの距離にある場合、c
1とc
2との間の横方向距離は安全である。ここで、r
iの横方向間隔[x
1,min,x
1,max]への制約は、(x、y)の意味論的な横方向位置が間隔[x
1,min,x
1,max]である全ての点(x、y)∈r
iによって得られるR
2のサブセットであり得る。
以下の定義38は、共通の縦軸が存在しない場合(例えば、一方の車が他方の車の前を運転していない場合)の2台の車間の順序の例示的な定量化である。
定義38(異なる幾何学的形状の2つのルートの縦方向順序):例えば、図47Cに示すように交差するルートr1、r2、4714、及び4716をそれぞれ運転する、c1、c2、4710、及び4712それぞれについて検討する。例えば、次のいずれかが当てはまる場合、c1(車両4710)は縦方向にc2(車両4712)の前にあり、全てのiについて、両方の車両がri上にある場合、c1はriに従ってc2の前にあるか、又は、c1がr2の外側にあり、c2がr1の外側にあり、c1からset r1∩r2までのr1に関する縦方向距離が、c2からset r1∩r2までのr2に関する縦方向距離よりも大きい。
例えば、縦方向順序の定義のロバスト性の測度として、c1、c2が交差点からそれぞれ20メートル、20.1メートルの距離にあると仮定する。この定義は、2台の車の間に安全な縦方向距離がある場合にのみ効果的に使用され、それにより、車間の順序が明確になるため、この定義が成り立つ。更に、この状況は、2台の車が複数レーンの高速道路を並んで運転している場合の順序の非ロバスト性に類似している。
定義39(異なる幾何学的形状の2つのルートの縦方向安全距離):例えば、交差するルートr1、r2を運転するc1、c2について検討する。次のいずれかが当てはまる場合、c1とc2との間の縦方向距離は安全である。 1. 全てのi∈{1、2}で、riに優先権がない場合、ρ秒間ciがamax,accelで加速し、次に(全てriに関して)縦方向速度がゼロになるまでamin,brackeでブレーキをかけ、その間、ciは他のルートの外側に留まる。 2. さもなければ、c1がc2の前にある場合(定義38による)、車は安全な縦方向距離にある。例えば、c1が(r1に関して)ゼロ速度に達するまでamax,brackeでブレーキをかけ、c2が最大でamax,accelでρ秒間加速し、その後、(r2に関して)ゼロ速度に達するまで少なくともamin,brackeでブレーキをかけると、c1はc2の前に留まる(定義38による)。 3. さもなければ、i∈{1,2}について、riに対するpの横方向位置が、(定義37で定義されるように)[xi、min、xi、max]になるような点p∈r1∩r2を検討する。第1のρ秒間に[−amax,brake、amax,accel]の範囲の縦加速度を適用し、次に、速度がゼロになるまで[amin,brake、amax,brake]の範囲で縦方向ブレーキをかける場合、ciがriに対してpの縦方向位置に到達できるように常に、[ti,min,ti,max]とする。従って、そのような全てのpについて、[t1,min,t1,max]が[t2,min,t2,max]と交差しない場合、車両は安全な縦方向距離にあり得る。
図47Dは、定義39の例示的な図である。フレーム4720は、車4724が道路に入る前に停止しなければならないため、車4722が優先される例示的な安全な状況である。フレーム4726は、車4722が車4724の前にある別の例示的な安全な状況であり、従って、車4722が停止又は減速した場合に、車4724に停止する時間を与える。フレーム4728では、車4722が完全停止しており、車4724が完全に横方向に停止している場合、状況は、定義39の項目(3)の定義により安全である。
定義40(異なる幾何学的形状のルートの危険な時間及び過失時点、適切な対応、及び責任):例えば、ルートr
1、r
2を運転する車両c
1、c
2について検討する。横方向と縦方向両方の距離が安全でない場合、時間tは危険であり得る(定義11及び定義13による)。対応する過失時点は、(t
b,t]の全ての時間が危険であるような、最も早い非危険時間t
bであり得る。c
1及び/又はc
2の適切な対応は、過失時点の直前の状況に依存し得る。
・横方向距離が安全である場合、両方の車は定義37の横方向安全距離の説明に従って対応する必要がある。
・それ以外の場合、定義39の項目(1)に従って縦方向距離が安全である場合、車両が優先ルート上にある場合は正常に運転でき、さもなければ、t‐t
b≧ρの場合は、少なくともa
max,brakeでブレーキをかけなければならない。
・それ以外の場合、定義39の項目(2)に従って縦方向距離が安全である場合、c
1は正常に運転でき、t‐t
b≧ρの場合は、c
2は少なくともa
max,brakeでブレーキをかけなければならない。
・それ以外の場合、定義39の項目(3)に従って縦方向距離が安全である場合、t−t
b<ρの場合は両方の車が正常に運転でき、さもなければ、両方の車が横方向及び縦方向に少なくとも
、a
min,brakeで(自車のルートに関してそれぞれ一方)ブレーキをかける必要がある。
最後に、衝突が発生した場合、適切な対応に従わなかった車両に責任があり得る。幾つかの実施形態では、例えば、図47Eで、別のエージェントによって使用されるルートが不明である場合がある。図47Eでは、交差点の車4730のルートは、車4732には不明である。この場合、全ての可能性を調べることによってRSSを得ることができる。
信号機
幾つかの実施形態では、車両は、信号機を含む状況に遭遇し得る。「一方の車のルートが青信号であり、他方の車のルートが赤信号である場合、赤信号のルート上にいる方に過失がある」とは言えない場合がある。むしろ、例えば、図47Fに示すシナリオを検討する。車4734のルートが青信号であっても、既に交差点にある車4736を車4734が無視することは予期しない。青信号のルートは、赤信号のルートよりも優先され得る。従って、信号機のある状況の概念は、前述のルート優先状況に単純化される。幾つかの実施形態では、ルートの優先権の規則は、優先通行権が取られず与えられているとように概念的に単純化され得る。
非構造化道路
幾つかの実施形態では、車両は、例えば、図47Gに示されるように、非構造化道路に遭遇し得る。最初にシナリオ4718を検討する。ここで、道路領域のレーンへの分割は明確に定義されていないが、(ルートごとの幾何学的形状が明確である)複数のルートへの道路の分割は明確に定義されている。本発明者らの責任の定義はルートの幾何学的形状にのみ依存するため、そのようなシナリオにはそのまま適用される。
次に、ルートの幾何学的形状が全くないシナリオ(駐車場4738等)について検討する。構造化された場合とは異なり、横方向及び縦方向は分離されているが、このシナリオでは2次元の軌道が必要である。
定義41(軌道):例えば、ある道路を走行している車両cについて検討する。cの将来の軌道は、関数τ:R+→R2として表し得て、ここで、τ(t)は、現在の時刻からt秒以内のcの位置である。τ'(t)で表されるtでの軌道への接ベクトルは、tでのτのヤコビ行列式である。ts(τ)=sup{t:∀t1∈[0,t],||τ'(t1)||>0}で表される。つまり、tsは車両が完全に停止する第1の時間であり、そのようなtが存在しない場合は、ts(τ)=∞に設定する。
危険な状況は、定義42を参照して説明したように、2つの軌道間の衝突の可能性に基づいて識別し得る。
定義42(軌道衝突):τ
1、τ
2をc
1、c
2の2つの将来の軌道とし、対応する停止時間t
1=t
s(τ
1)、t
2=t
s(τ
2)とする。パラメータ
、θが与えられると、τ
1とτ
2は衝突しない。次のいずれかが当てはまる場合、
で表し得る。 1. 全てのt∈[0,max(t
1,t
2)]の場合、||τ
1(t)‐τ
2(t)||>εとなる。 2. 全てのt∈[0,t
1]の場合、||τ
1(t)‐τ
2(t)||>εであり、ベクトル(τ
2(t
1)‐τ
1(t
1))とτ
' 2(t
1)との間の角度の絶対値は最大でθである。
T
1で表されるc
1の軌道のセット、及びT
2で表されるc
2の軌道のセットが与えられると、全ての(τ
1、τ
2)∈T
1×T
2の場合、
、
となる。
第1の項目は、例えば、両方の車両が完全に停止するまで、両方の車両が互いに離れていることを示している。第2の項目は、例えば、第1の車両が完全に停止するまで車両が互いに離れ、その時点で第2の車両の速度ベクトルは第1の車両から離れた位置を示している。
幾つかの実施形態では、衝突演算子は可換ではない場合がある。 例えば、2台の車が現在同じ方向に大きな円を走行していると想定する。ここで、c
1はc
2のすぐ後ろにあり、τ
1はc
1が強くブレーキをかける軌道であり、τ
2はc
2が永久に同じ速度で続く軌道であると見なす。従って、
の間は、
となる。
幾つかの実施形態では、「ブレーキ」及び「前進を続ける」動作の抽象的な概念が想定され得る。構造化された場合では、これらの動作の意味は、横方向及び縦方向加速度の許容間隔に基づいて定義され得る。
定義43(ブレーキ及び通常の運転による可能な軌道):例えば、ある道路を走行している車両cについて検討する。 車の動作に関する制約の組Cを所与として、cがCで与えられた制約に準拠している場合、T(C、c)はcの将来の可能な軌道のセットである。幾つかの実施形態では、セットはスーパーセットであり得る。 幾つかの実施形態では、T(Cb、c)、T(Cf、c)は、ブレーキ動作に対する制約及び継続前進動作に対する制約により、将来の軌道を表し得る。
定義43は、安全な距離、危険な状況、過失時点、適切な対応、及び責任の概念を洗練するために使用され得る。
定義44(安全距離、危険な状況、過失時点、適切な対応、責任):非構造化道路を運転するc
0とc
1との間の距離は、次のいずれかが当てはまる場合に安全である。 1. 一部のi∈{0,1}の場合、
及び
である。 2.
幾つかの実施形態では、時間tは、それらの間の距離が安全でない場合、c0、c1に対して危険である。対応する過失時点は、時間間隔全体(tb,t]の間、状況が危険であるような最も早い非危険時間tbである。対応する過失時点tbを伴う危険時間tでの車cjの適切な対応は次のようになる。 1. 両方の車が既に完全に停止している場合、cjはc1−jから離れて運転できる(つまり、cjの速度ベクトルと、cjとc1−jとの間の差のベクトルとの間の角度の絶対値は最大でθであるべきである。ここで、θは定義42の通りである)。 2. それ以外の場合、上記の項目(1)によりtbが安全であり、j=1‐iの場合、c1−jが完全停止になっていない限り、cjはCfのように「前進を続ける」動作の制約に従ってうべきであり、その後は、両方の車が完全に停止している場合と同じように動作するべきである。 3. さもなければ、適切な対応はブレーキをかけること、つまり、制約Cbに準拠することである。
最後に、衝突の場合、責任は適切に対応しなかった車両にある。
幾つかの実施形態では、モデルは、ブレーキ制約Cb、及び継続前進挙動制約Cfを考慮し得る。上記で説明したように、車両は他の車両が何をするかを予測でき(他の車両はそのルートを運転し、制限された率で横方向/縦方向速度を変更することが想定される)、車両が危険な時間にあるとき、ルートの幾何学的形状(横方向及び縦方向「ブレーキ」)に関して適切な対応が定義され得る。幾つかの実施形態では、適切な対応は、ホスト車両が安全でない距離にある他の車両に関して定義されていない。例えば、車両が他の1つ以上の車両に対して安全でない距離にある場合、衝突が発生し得る。従って、幾つかの実施形態では、非構造化シナリオの定義を設計するとき、2つの特性が依然として保持される。
例えば、制約の定義は、車両の基本的な運動力学モデルに依存し得る。車両の速度は、縦方向速度(許容加速度の範囲を制限する)と同じ定義に従い得る。横方向動きについて、車両がハンドルの角度及び速度を一定に保つと、車両は(ほぼ)円を描くように動く。換言すれば、車の進行角度は一定の率で変化する。これは、車のヨー率と呼ばれる。車の速度をv(t)、進行角度をh(t)、ヨー率を(進行角度の微分係数として)h'(t)で表すとする。h'(t)とv(t)が定数の場合、車は「半径」がv(t)/h'(t)の円上を移動する(ここで、「半径」の符号は時計回り又は反時計回りを決定し、車がライン上を移動する場合、「半径」は∞、すなわち、h'(t)=0となる)。従って、半径はr(t)=v(t)/h'(t)として定義され得る。
幾つかの実施形態では、運転には2つの制約があり得る。1つ目は、半径の逆数が制限された率で変化することである。2つ目は、h
'(t)も制限付きであるということである。予期されるブレーキ動作は、応答時間中にh
'(t)と1/r(t)を制限付きで変更し、それ以降、円上を運転し続け得る(又は、少なくとも円から最大ε/2の距離にあり得る)。この動作は、応答時間中に最大で
で加速し、その後、横方向速度がゼロに達するまで減速するのと類似している。
安全距離を効率的に計算するために、スーパーセットT(C
b、c)は次のように記述し得る。一般性を失うことなく、過失時点をt=0とし、過失時点でcの進行方位がゼロであると想定する。|h
'(t)|≦h
' maxの制約により、|h(ρ)|≦ρh
' maxとなる。更に、時間ρでの半径の逆数は次の式を満たさなければならない。
ここで、r(0)=v(0)/h'(0)である。スーパーセットT(Cb、c)は、(時間0での)最初の方位が[−ρh' max、−ρh' max]の範囲にあり、軌道が上記の関係に関して逆半径が定義されている円上にあり、円上の縦方向速度が構造化された場合と同じであるような全ての軌道として定義し得る。継続前進軌道については、応答時間が[−amax,brake、amax,accel]になった後でも許容される縦方向加速度を除いて、同じ分析が適用され得る。極端な半径の図を図47Hに示す。
図47Hは、非構造化シーンでの横方向動作の例示的な図である。黒い線が現在の軌道である。破線は極端な弧である。
最後に、これらの車両の適切な対応は、構造化シナリオの適切な対応の前述の2つの特性を満たし得て、緊急事態が発生した場合に備えて、他の車両の将来の位置を制限することが可能であり、車両が1つ又は複数の他の車両に対して危険な状況にある場合でも、同じ適切な対応を適用できる。
歩行者
歩行者(又は他の道路利用者)を含む衝突の責任を割り当てるための規則は、前の小節で説明したのと同じ考え方に従い得る。但し、安全距離及び適切な対応の定義のパラメータを調整したり、歩行者のルート(又は場合によっては非構造化ルート)又は車両のルートに対する優先権を指定したりする必要がない場合がある。幾つかの場合、歩行者のルートが明確に定義されている(例えば、横断歩道又は歩道)。他の場合、例えば、住宅街では、RSSモデルは非構造化道路の分析に基づき得る。更に、直線又は円弧区分に制限されている車両とは異なり、歩行者の場合、方向の変更|h'(t)|は、緊急時に応答時間の後、歩行者が直線を進み続けると想定するように制約され得る。歩行者が立っている場合、歩行者には現在の位置からの全ての可能な線が割り当てられ得る。優先権は、道路の種類に応じて、場合によっては、信号機の存在及び/又は位置に応じて設定し得る。例えば、一般的な住宅街では、歩行者が車両よりも優先され得て、従って、車両は歩行者に対して道を譲り注意を払わなければならないことになる。対照的に、歩道のある道路では、歩道上の歩行者が突然道路に飛び出し得ることを想定する必要がない場合がある。このような状況では、例えば、車に優先権がある。別の例は、信号機のある横断歩道であり、ここでは信号機に応じて優先権が動的に設定される。幾つかの実施形態では、前述のように、優先権は取られず与えられ、従って、歩行者に優先権がなくても、歩行者が安全な距離で道路に入った場合、車はブレーキをかけて通過させなければならない。
例えば、生活道路に立っている歩行者がいるシナリオを検討する。歩行者は、現在の位置からの線によって得られる全てのルートに割り当てられる。これらの仮想ルートのそれぞれに関する歩行者の安全な縦方向距離は短い場合がある。例えば、500msの遅延、ならびに最大加速度及びブレーキを2m/s2に設定すると、安全な縦方向距離の歩行者の部分は50cmになる。従って、車両は、適切な対応(ρ秒間の加速及びその後のブレーキ)を適用した場合、歩行者の周囲の50cmの半径の外側に留まるような運動学的状態であり得る。
第2の実験例では、横断歩道の前の歩道に歩行者が立っている場合がある。歩行者は赤信号で、横断歩道に近づく車両は青信号であり得る。この実験例では、車両ルートに優先権があり、車両は歩行者が歩道に留まることを想定できる。車両が、(車両のルートに対して)安全な縦方向距離にあるときに歩行者が道路に入ると、車両はブレーキをかけなければならない。但し、車両が安全な縦方向距離にないときに歩行者が道路に入り、その結果、車両が歩行者に衝突した場合、車両は責任を負わない。従って、この状況では、車両は歩行者を気にすることなく通常の速度で運転できる。
第3の実験例は、歩行者が時速10km(約2.7m/s)で生活道路を進む場合である。歩行者の可能な将来の軌道は二等辺三角形を形成する。第1の実験例と同じパラメータを使用すると、この三角形の高さは約15mである。従って、車は15m未満の距離で歩行者のルートに入らないようにするべきである。しかし、車が15m以上の距離で歩行者のルートに入った場合、歩行者が停止せず、その結果、車に衝突した場合、責任は歩行者にある。
隠蔽に対する注意
時として、例えば、道路の特定の部分に集中する無意識の決定により、時として不注意により、及び時として物理的制約により(例えば、駐車車両の後ろに隠れている子供を見るのは不可能である)、人間の検知能力は、限られている。高度な自動検知システムは、物理的な隠蔽又はセンサ検出の範囲により、検知に制限がかかり得る。例えば、駐車中の車の後ろに隠れている子供が見えなかったり、建物又はフェンスが交差点に近づく交通の視界を遮ったり、高速道路上の他の車両によって死角ができたりし得る。
図47Iは、c0が駐車場を出てルートに合流しようとしているが、道の左側から合流点に近づいている車があるかどうかを確認できない例示的なシナリオである。これが30km/hの制限速度のある都会の狭い道である場合、人間のドライバーの行動は、道路上にゆっくりと合流して検知の制限がなくなるまでより多くの視野を得ることであり得る。仮定を追加しないと、この動作は衝突につながり得る。実際、c1が非常に高速で運転している場合、c0の視野範囲に入った瞬間に、c1が既にρ秒以上の間、危険な状況であり、適切に対応できないことが明らかになる可能性がある。定義45は、隠れた物体がセンサに初めて露出されるときの定義を提供し、その露出後、システムは、センサが検出できる他の物体と同じように状況を処理できる。
定義45(露出時点):物体の露出時点は、センサによって検出される最初の時点であり得る。
従って、定義45を使用すると、道路利用者の合理的な速度に上限を設定することが可能であり得る。前述の実験例では、c1が60km/h(許容速度の2倍)より速い速度で運転しないと想定するのが妥当である。この想定により、c0は、速度が最大60km/hの車に対して危険な状況にならないように、十分にゆっくりと合流点に近づくことができる。 これは、以下の定義をもたらす。
定義46(不当な速度による責任):例えば、c0とc1の間の事故で、過失時点の前に安全な横方向距離があり、c1が不当に速く運転していた場合、つまり、露出時間から過失時点までの平均速度がvlimitより大きい場合を検討する。ここで、vlimitは、マップ上のc1の位置及び1つ又は複数の道路状況に関連付けられたパラメータである。この例示的な状況では、責任はc1のみにある。
幾つかの実施形態では、これらの定義を適用することにより、人間のドライバーが行うのと同じ方法で、c0が安全に駐車場を出ることができる。上記の定義に基づいて、c0は、速度がvlimitである車両が隠蔽領域の縁に存在する状況を確認し得る。従って、これは、より遅く且つ遮蔽から離れて走行し、それによりゆっくりと自らの視野を広げ、安全に道に合流することを可能にするようにc0を促す。
この責任の定義は、隠れる可能性がある対象がどのようなものか(近接して駐車される2つの車の間に潜在的に速い車が隠れることはあり得ないが、子供又は歩行者はあり得る)を指定し得るため、様々な場合に適用し得るこの責任の定義は、隠れた物体又は人にとって不当に速い対象がどのようなものかを指定し得る(子供のvlimitは車のvlimitよりもはるかに小さい)。
住宅地内の隠れた歩行者
一つの例示的な状況では、子供が駐車中の車の後ろから飛び出し得る。道路が住宅地にある場合は、子供のルートが優先されるため、駐車中の車の後ろから子供が出てきても事故が起こらないように速度を調整するべきである。子供の最高速度を制限することにより、車両は、子供がまさに最高速度になるという最悪の状況に応じて速度を調整し得る。
但し、幾つかの実施形態では、上記の手法は、過度な防御的挙動をもたらし得る。実際、車両が駐車場に並んだ車の横を運転しているときの典型的なシナリオを検討する。時速10kmの速度で、(例えば、ボールを追いかけて)道路に入る子供は、駐車中の車に遮られる可能性があり、車両と歩行者との間の縦方向距離が0.3m未満の場合にのみ、車両のカメラが子供を検知する。子供のルートの縦方向安全距離は、概して生活道路の幅よりも長い約15mとする。従って、車両は既に(子供のルートに対して)安全でない縦方向距離にあり、子供のルートに入る前に停止できなければならない。但し、1m/sで走行する車の制動距離(パラメータを適切に設定した場合)は、0.4mを超える場合がある。従って、このシナリオでは、駐車中の車から横方向距離、例えば、5mで運転している場合でも、車両は1m/sよりも遅く運転するべきである。これは過度に防御的であり得て、通常の人間の挙動を反映していない。
幾つかの実施形態では、車両が過剰補償し、過度に防御的に運転しないような仮定を行い得る。例えば、人間のドライバーは法律に依存し得る。自律車両は制限速度に従うが、幾つかの実施形態では、よりロバストな安全性の概念が必要になり得る。以下は、正当な速さの運転を可能にしながら、より安全な運転をもたらす、このシナリオの例示的な責任の定義である。
定義47(隠れた歩行者との衝突の責任):例えば、生活道路での歩行者と車両との衝突について検討する。次の2つの条件が当てはまる場合、車両は事故の責任を負わない。
・teを露出時間とする。車両は時間間隔[te,te+ρ)で加速せず、te+ρから事故まで、又は完全に停止するまで、少なくともamin,brakeの縦方向ブレーキをかけた。
・露出時間から衝突時間までの車両の平均速度は、同じ時間間隔での歩行者の平均速度よりも小さかった(ここで、平均速度は、エージェントが時間間隔を移動した合計距離を時間間隔の長さで割ったものである)。
第1の条件は、車両の速度が露出時間から衝突時間まで単調に増加し得ないことを表し、第2の条件は、車両の平均速度が歩行者の速度よりも小さいことを表す。以下の補助定理の証明が示すように、歩行者の最大加速度に関する幾つかの合理的な仮定の下で、責任の定義は、衝突時に、車の速度が歩行者の速度よりも大幅に小さいこと、又は車両と歩行者の両方が非常に遅い速度であることが予想され得ることを表す。後者の場合、被害は深刻ではなく、前者の場合、歩行者が事故の責任を負うという「常識」に準拠している。
以下の補助定理は、隠れた歩行者との衝突の責任を決して負わないことを保証する許容運転速度を示している。
補助定理14:隠れたスポットから横方向距離がx、縦方向距離がyにある車両を想定する。 従って、横方向速度がゼロで、縦方向速度が
より小さい場合、
車両の責任の事故を起こさないことを保証できる。 具体的には、
の一定の運転速度
が可能である。
証明:露出時に、歩行者が位置(0、0)に配置され、車が位置(x、−y)に配置されていると仮定する。衝突が点(x、y
c)であったと仮定し、(衝突がない場合に)車が完全に停止する点を(x、y
s)とする。衝突時間をt
cで定義し、車両が完全に停止する時間をt
sで定義する。点(x、y
c)で車両の過失の衝突がある場合、
となることに留意されたい。
しかし、ys≧ycであるため、これは、ブレーキ時に車両の過失の衝突があり得ることを含意する。
も含意している。そのため、車両の過失の衝突がないことを確認するには、ブレーキ時にそのような衝突がないこと、つまり、次の条件が成立することを確認する。
y
s=‐y+vρ+0.5v
2/a
min,brakeなので、再配列は
をもたらす。
この条件は、区間v∈[0,v
max(x,y)]に当てはまり、ここで、v
max(x,y)は、二次方程式の右根、つまり
である。
f(y)=(x
2+y
2)/yはy=xで最小化されるため、車両の最大一定速度は、
となる。
高度な運転支援システムのためのRSS
アクティブセーフティシステムは、道路をより安全にするのに役立ち得る。例えば、自動緊急ブレーキ(AEB)システムは、車が前の車に衝突する可能性があることを検出すると、速度を落としたり、車を停止させたりし得る。AEBシステムで発生する問題の1つは、偽陽性がほぼゼロになるように調整されていることである(偽陽性とは、システムが危険な位置にある車を検出したが、実際には危険な位置にある車が存在しない場合である)。極端に低い偽陽性率の代償は、はるかに高い偽陰性率である(偽陰性とは、システムが危険な位置にある車を検出できず、そのため、システムが危険な状況に対応しない場合である)。従って、責任敏感型安全性(RSS)の概念を一般化することによって、より優れたAEBシステムを構築する必要がある。幾つかの実施形態では、RSSは、既存のシステムよりも偽陽性/偽陰性の間のトレードオフをより考慮している。RSSは、より高度な偽陽性を許容できるブレーキプロファイルを使用する場合があり、そのため、危険性は低くなる。
RSSの安全距離(定義27)を想起されたい。RSSの適切な対応は、基本的な運転ポリシに依存しない。この定義は、運転ポリシの最上位に埋め込まれ得る。例えば、RSSは人間の運転ポリシの最上位に埋め込まれ得る。この場合、人間のドライバーが車を安全でない距離に動かすときはいつでも、RSS−ADASシステムは車を安全な距離に戻すためにブレーキをかけ得る。
但し、警告なしに強いブレーキをかけるのは危険な場合がある。その結果、既存のAEBシステムは、偽陽性の可能性が極端に低くなるように調整されている。極端に低い偽陽性率の代償は、はるかに高い偽陰性率である(つまり、システムは、安全でない距離にある車を検出できない)。上記で論じたRSSの一般化を使用して、代替的な方法で偽陽性の危険性を軽減する、このRSSファミリの特定のメンバを指定し得る。
一般化されたRSS
RSSの元の定義では、後ろの車は応答時間中に加速し、その後完全に停止するまでブレーキをかけると想定されている。これはブレーキプロファイルの一例である。
更に一般化:
定義48(ブレーキプロファイル):ブレーキプロファイルBは、車の初期運動学的状態(主に、初速度υ
0、及び加速度a
0)から
が車の将来の速度であり、T
b<0がυ(t)=0である第1の時間であるような対T
b、υへのマッピングであり得る。
例えば、RSSの元の定義で前の車が適用するブレーキプロファイルは、
及びυ(t)=max{υ
0‐t
amax,brake,0}で定義され、次のようになる。
定義49(ブレーキプロファイルに関する一般化されたRSS安全距離:Bf;Br) 両方の車が同じ方向に運転している、別の車cfの後ろを運転する車cr間の縦方向距離は、ブレーキプロファイルBf;Brに関して安全である。前の車がブレーキプロファイルBfを適用し、後の車がブレーキプロファイルBrを適用する事例の場合、車は衝突することなく完全に停止する。
適切な対応は次のように定義し得る。
定義50(適切な対応):cfとcrの間の距離が安全ではない第1の時間はt0であり、一般性を失うことなくt0=0に設定するとする。従って、前の車の適切な対応は、その速度を少なくともvf(t)にすることであり、ここで、vfはBfによって定義される速度であり、後ろの車の適切な対応は、その速度を最大でvr(t)にすることであり、ここで、vrはBrによって定義される速度である。
両方の車が適切な対応を適用すれば、事故は発生しない。
ジャークバウンドブレーキプロファイル
ジャーク及び加速が制限されたブレーキプロファイルは、Bjで表され得る。車両は、最大ブレーキパラメータ(amin,brakeで示される)に達するまで、直線的に(傾斜jmaxで)加速度を減少させ始め、その後、ゼロ速度に達するまで一定の減速でブレーキをかけ続け得る。このブレーキプロファイルの計算には、次の閉形式を使用し得る。
一定のジャークでブレーキをかける:車両がj
maxのジャークでブレーキをかけ始めたとする。また、車両がすぐに加速度0に到達できると仮定するため、以下では、a
0≦0と仮定する。従って、車の動力学は次のようになる。
ブレーキプロファイル:これらの式に基づいて、ブレーキ距離は次のように定義される。a(T)=a
min,brake又はυT)=0のいずれかである第1の時間、すなわち、t=min{T
1,T
2}となり、ここで、
である。
ブレーキ距離:最後に、車は完全に停止するまで次の距離を移動する。
Bf、Bjに対する安全距離
前の車がブレーキプロファイルB
f(a
max,brakeの一定の減速度でブレーキをかける)でブレーキをかけ、後の車がブレーキプロファイルB
jに依存していると仮定する。従って、安全距離の式は
である。
ADAS RSSシステム
距離が安全でなくなるとすぐに(ジャークベースの式に従って)、システムはドライバーに警告し得て、次のいずれかが発生するまでjmaxのジャークでブレーキをかけ始め得る。(1)車が停止する(2)距離が安全でなくなる(3)ドライバーがRSSシステムをオフにする(ボタン又はその他のメカニズムによって)。
RSSの同じ証明を調整して、ドライバーがシステムの電源を切らなかった場合、自車の責任の事故が発生し得ないことを示し得る。一例として、全ての車両がRSSルールに準拠している場合、事故は全く発生しない(運転ポリシのエラー、検知ミス又は誤動作が原因で発生する可能性がある)。従って、規制機関がADAS RSSシステムを採用すれば、車の事故を大幅に減らし得る。
偽陽性の処理の改善
AEBを実装するのと同じハードウェアを調整して、ADAS RSSを実装し得る。ブレーキングプロファイルはジャークバウンドであるため、偽陽性の危険性はそれほど深刻ではない(ドライバーに驚きはなく、ジャークでバウンドさせているので、後ろの車にいる人にも驚きはない)。従って、偽陰性が少なくなるようにシステムを調整できる。
安全な縦方向距離でのナビゲーション
上記で説明したように、RSSは、ホスト車両と別の物体(例えば、1つ又は複数の目標車両又はVRU)との間の安全な距離を決定するのに効果的であり得る。RSSは、RSSを実装している車両が、RSSによって引き起こされる事故に巻き込まれないようにするために使用できる一連の数式を提供する。上記で論じたように、RSSは、同じ方向に移動する2台の車両間の安全な距離を維持するために適用され得る。しかし、他の実施形態では、RSSはまた、反対方向に移動する2台の車両間の安全な距離を維持するために使用され得る。例えば、レーン変更中又は駐車場をナビゲートしているときに、2台の車両が互いに向かって運転し得る。幾つかの場合、車両が道路の間違った側を走行し得る。RSSは、車両が衝突することなく完全に停止する(又は互いに回避する)ように、ホスト車両が車両と必要に応じてブレーキ(及び/又は操舵)の両方を考慮した安全な距離を維持することを保証するために使用され得る。
図48Aは、開示された実施形態による、反対方向に走行する2つの車両のシナリオの一例を示す。このシナリオでは、図48Aに示すように、ホスト車両4802が2レーン道路のレーンに沿って走行し得る。目標車両4804は、ホスト車両4802が占有するレーンにおいて、ホスト車両4802の反対方向に走行し得る。例えば、目標車両4804は、第2の対向車両4806を通過し得て、通過操作を完了するために、ホスト車両4802の走行レーンに入り得る。従って、ホスト車両4802と目標車両4804は、互いに向かって反対方向に走行し得る。2台の車両が反対方向に走行している場合には、他にも様々なシナリオが存在し得る。例えば、ホスト車両4802は、通過操作を実行し得て、目標車両4804の走行レーンに入り得る。2台の車両は、両方が交差点を進行しているとき、駐車場等の他の状況で、又は他の同様のシナリオで、互いに向かって移動し得る。本開示は、目標車両の進行方向がホスト車両に向かう特定のシナリオに限定されない。
ホスト車両4802は、ホスト車両4802が、上記で論じたように、RSS安全距離等、車両4804からの安全な縦方向距離を維持することを可能にする場合、計画されたナビゲーション動作を実行するように構成され得る。例えば、図48Aに示されるシナリオでは、計画されたナビゲーション動作は、ホスト車両4802の進行方向を維持すること、又はスロットル動作を維持することであり得る。他の実施形態では、計画されたナビゲーション動作は、ホスト車両4802及び目標車両4804を互いに反対方向に移動させるものであり得る。例えば、ナビゲーション動作は、ホスト車両4802が別の車両を通過しようとし、目標車両4804が占有するレーン線に入る通過操作を含み得る。ホスト車両4802は、ホスト車両4802と目標車両4804との間に安全な距離が維持される場合、通過操作を実行するように構成され得る。ナビゲーション動作は、レーン変更操作、合流操作、駐車場ナビゲーション操作(例えば、駐車場に入る、駐車場を出る、縦列駐車、駐車列の間の操作等)、交差点操作(例えば、対向車を横切る、黄色信号を進行する等)等の他の操作も含み得る。
図48Aの例示的なシナリオでは、目標車両4804の方向は、完全に「正面」の状況でホスト車両4802に向かっている。本開示は、目標車両4804の方向が、傾斜してホスト車両4802に向かっている状況にも同様に適用され得る。従って、本明細書で使用される「に向かって」という用語は、目標車両の進行方向の実質的な成分がホスト車両の方向にある状況を含むべきである。「に向かって」という用語はまた、2台以上の車両の前方地帯が少なくとも部分的に重なっている状況を指し得る。
図48Bは、開示された実施形態による、ホスト車両4802に向かって走行する目標車両4804の例示的なシナリオを示す。ホスト車両4802は、方向4812に走行し得て、目標車両4804は、方向4812と交差する方向4814に走行し得る。方向4812及び4814は、示されるように、角度Θで交差し得る。ホスト車両4802及び4804が互いに直進している「正面」の状況では、角度Θはゼロに等しいか、又は実質的に等しくなり得る。目標車両4804は、他の角度でもホスト車両4804に向かって走行すると見なされ得る。例えば、幾つかの実施形態では、角度Θが90度未満である限り、目標車両4804の方向4814は、ホスト車両4802に向かっていると見なされ得る。他の実施形態では、角度Θは、別の角度(例えば、60度、45度、30度等)よりも小さいことが要求され得る。方向4814はまた、ホスト車両4802に関連する縦方向及び横方向成分(それぞれ、x及びy)に基づいて定義され得る。目標車両4804の方向4814は、xがホスト車両4802の方向における方向4814の幾つかの非ゼロ成分である限り、ホスト車両4802に向かっていると見なされ得る。幾つかの実施形態では、成分xと成分yとの間の関係も定義され得る。例えば、目標車両4804の方向4814は、成分xが成分yよりも大きい(45度の角度Θを表す)限り、ホスト車両4802に向かっていると見なされ得る。従って、縦方向安全距離は、直接の「正面」の状況に限定されず、他の様々な角度であり得ることを理解されたい。
上記で論じたように、RSS安全距離は、特定の条件を前提として、ホスト車両が目標車両と衝突することなく停止し得る、ホスト車両と目標車両との間の距離に対応し得る。RSS安全距離には、所定の制動率でブレーキをかけた場合、及び車両の対応する応答時間中に想定された動作を行った後、車両が停止するのにかかる最小距離の計算が含まれ得る。例えば、RSS安全距離は、2台の車が、所定のブレーキレベルでブレーキをかけて完全に停止する前の応答時間中に最大加速度で互いに向かって移動する可能性を考慮している。応答時間中の車両の最大加速度を考慮することで、RSS距離に応じたナビゲーションが可能になり、最悪の事例のシナリオでも衝突が発生しなくなる。
図49は、開示された実施形態による、安全な縦方向距離を維持するホスト車両の一例を示す。 目標車両4904は、ホスト車両4902に向かう方向に移動し得る。ホスト車両4902の処理デバイス(例えば、処理ユニット110)は、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を決定し得る。ホスト車両4902は、ホスト車両4902と目標車両4904との間でRSSの安全な縦方向距離を維持できる場合、計画されたナビゲーション動作を実行するように構成され得る。上記で論じたように、計画されたナビゲーション動作は、レーン変更操作、合流操作、通過操作、前進操作の維持、駐車場ナビゲーション操作、又はスロットル動作の維持、又は他の同様のナビゲーション動作等の様々な操作を含み得る。ホスト車両4902の処理デバイスは、計画されたナビゲーション動作が行われた場合に生じる車両間の距離に対応する、ホスト車両4902と目標車両4904との間の次の状態の距離4910を決定し得る。処理デバイスはまた、車両4902を停止できる停止距離4912、及び車両4904を停止できる停止距離4914を決定し得る。ホスト車両4902の処理デバイスは、決定された次の状態の距離4910が停止距離4912及び停止距離4914の合計よりも大きい場合、計画されたナビゲーション動作を実施し得て、それにより、車両が衝突を回避するために両方とも完全に停止できることを示す。
停止距離4912及び4914は、RSSに関して上記で説明した任意の方法で計算され得る。例えば、停止するのに必要な距離は、車両制動率、車両最大加速能力、及び車両の現在の速度を使用して計算され得る。幾つかの実施形態では、ホスト車両の現在の速度は、1つ又は複数のセンサの出力に基づいて決定され得る。例えば、現在の速度は、加速器、ライダシステム、レーダシステム、GPSユニット等の出力から決定され得る。別の例として、ホスト車両の現在の速度は、1つ又は複数の画像を分析することによって(例えば、2つ以上の画像で検出された固定物体のスケーリング率の変化に基づいて)決定され得る。
幾つかの実施形態では、開示された実施形態は、車両が衝突を回避するためにその最大ブレーキ能力でブレーキをかけると想定し得る。例えば、制動率は、車両の少なくとも1つの認識された特性に基づき得る。ホスト車両4902の場合、最大制動率は、車の特性、以前のブレーキ操作等に基づいて、システムによって認識又は推定され得る。目標車両の場合、最大ブレーキ能力は、目標車両の少なくとも1つの特性に基づいて決定され得る。少なくとも1つの特性は、ブレーキ能力と相関することが知られている任意の特性、又はブレーキ能力と相関し得る任意の特性であり得る。幾つかの実施形態では、目標車両の認識された特性は車両タイプを含み得て、車両タイプは、目標車両の表現を含む画像の分析に基づいて決定され得る。車両タイプは、例えば、目標車両が属する一般的なカテゴリ(例えば、フルサイズセダン、コンパクトカー、SUV、クロスオーバSUV、オートバイ等)、又は目標車両に関連付けられている、より特定のカテゴリ又はサブカテゴリであり得る。幾つかの実施形態では、目標車両の認識された特性は、車両モデル、ブランド名、又は目標車両の他の分類子(例えば、トヨタプリウス(登録商標)、BMW X5(登録商標)等)を含み得る。処理デバイスは、目標車両が、その車両タイプ又は車両のクラスの既知のブレーキ能力に対応する最大ブレーキ能力を有すると想定するようにプログラムされ得る。処理デバイスは、車両タイプを使用して、例えば、各車両タイプの既知のブレーキ能力を含むデータベースにアクセスし得る。例えば、検出された車両タイプがBMW X5(商標登録)である場合、処理デバイスはデータベースからBMW X5(商標登録)の報告されたブレーキ能力を検索し得る。車両モデルについて複数の最大ブレーキ能力が報告されている場合(例えば、BMW X5(商標登録)のブレーキ能力は、xDrive40i又はxDrive50iのトリムレベルがあるかどうかによって、又は製造年によって異なり得て、処理デバイスは、目標車両がその車両モデルについて報告された最高の最大ブレーキ能力を有すると想定するようにプログラムされ得る。目標車両の認識された特性はまた、目標車両が自律車両であるか、部分的に自律型車両であるか、又は目標車両が人間が操作するかどうかのインジゲータを含み得る。そのような情報は、捕捉された画像(例えば、ホスト車両に搭載された1つ又は複数のカメラから取得された画像)の分析から得られ得るか、又は無線通信を介して目標車両からブロードキャストされ得る。
幾つかの実施形態では、目標車両の認識された特性は、車両サイズを含み得る。車両サイズは、相対的なサイズ、所定のサイズ等であり得る。車両サイズは、車両の物理的サイズ及び/又は車両の推定重量に対応し得る。例えば、処理デバイスは、目標車両がホスト車両よりも大きいか又は小さいかを決定し得る。別の例では、処理デバイスは、目標車両を1つ又は複数の所定の車両サイズに分類するようにプログラムされ得て、各サイズは、サイズの範囲(例えば、カテゴリ1=1,000kg未満、カテゴリ2=1,000〜1500kg、カテゴリ3=1,500〜1,800kg等)を含み得る。一部の車両は、目標車両の車両サイズを決定するために使用し得るサイズの表示を含み得る。例えば、目標車両はGMC Sierra(商標登録)であり、1500、2500、2500HD等のサイズに関連付けられた車両の外側に表示又はモデル名を含み得る。
最大ブレーキをかけることは、特にそのような適用が突然である場合には、それが避けられない場合のために確保すべき極端な対応と見なされ得る。特定の状況下では、最大ブレーキは乗員に不快感を与える可能性があり、後ろの車両に関与する可能性があり、車両ハードウェア等(タイヤ、ブレーキパッド等)を過度に摩耗させる可能性がある。従って、車両の停止距離は、ホスト車両の最大制動率能力よりも小さい所定の準最大制動率を想定し得る。例えば、準最大制動率は、最大ブレーキ能力の即時の適用ではなく、初期ブレーキ力(車両の最大ブレーキ能力よりも小さい)から車両の最大ブレーキ能力までの段階的なブレーキの適用を想定し得る。幾つかの実施形態では、準最大制動率は、理想的な制動率又は統計的に許容可能な制動率であり得る。例えば、ほとんどの人間が停止する制動率に関連するデータを使用して、準最大制動率を決定し得る。幾つかの実施形態では、準最大制動率は、ユーザの好みに従って設定し得る。例えば、第1の乗員は、自分にとって快適な準最大制動率を設定し得えるし、第2の乗員は自分にとって快適な準最大制動率を設定し得る、等である。幾つかの実施形態では、処理デバイスは、例えば、1つ又は複数の検知された道路状態(例えば、未舗装道路、道路の静止摩擦特性等)、交通状態(混雑レベル、ホスト車両の周りの車両間の平均距離、ホスト車両の前の割り込みの割合等)、1つ又は複数の車両特性、1つ又は複数の検知された天候条件等に基づいて、準最大制動率を決定し得る。例えば、処理デバイスは、雪道での最大限の安全性及び快適性を提供する準最大制動率、乾燥した高速道路での最大限の安全性及び快適性を提供する準最大制動率等を決定し得る。準最大制動率を実施することにより、快適さを向上させ、ホスト車両の挙動にその他の肯定的な影響を与えることができるが、準最大制動率が小さい場合、具体的には、ブレーキが「緩む」か、それほど強くなくなり得るような、あまり望ましくない効果をもたらす可能性があることを理解されたい。例えば、小さな準最大制動率を使用すると、車両が常に前の車両から必要以上に距離を取り続けるようになるため、効率に大きな悪影響を与え得る。これは、他の道路利用者に迷惑をかけ、混雑した地域での合流及び運転等の複雑なシナリオをホスト車両が効果的に切り抜けることを妨げ得る。従って、幾つかの例では、(RSSの安全性を維持しながら)性能又は効率及び快適さのバランスをとる準最大制動率を設定、選択、又は決定し得る。
本開示による、準最大制動率は一定であり得る。例えば、準最大制動率は、2m/s2、10m/s2の減速度、又は任意の他の一定の減速度に対応する制動率であり得る。幾つかの実施形態では、準最大制動率は、ホスト車両の最大ブレーキ速度能力に比例する定数であり得る。例えば、準最大制動率は、20%、33%、50%、70%、又はホスト車両の最大ブレーキ能力の任意の他のパーセンテージであり得る。幾つかの実施形態では、準最大制動率は、ブレーキがホスト車両の最小ブレーキ能力から最大でホスト車両の最大ブレーキ能力まで徐々に適用されるように、ホスト車両の現在の速度の線形関数であり得る。例えば、ホスト車両が車両の最大ブレーキ能力に到達することなく現在の速度から停止することを可能にする準最大制動率を決定し得る。別の例として、準最大制動率は、ホスト車両が第1の部分の停止操作に対して最大ブレーキ能力未満でブレーキをかけ、第2の部分の停止操作に対して最大ブレーキ能力でブレーキをかけるように、最終的にはホスト車両の最大ブレーキ能力に達すると決定され得る。幾つかの実施形態では、準最大制動率は、車両の現在の速度の異なる関数であり得る。例えば、準最大制動率は、車両が停止するまで指数関数的又は対数的に適用されるブレーキ速度であり得る。
幾つか実施形態では、準最大制動率は、ホスト車両4902又は目標車両4904に関連する過失又は責任の決定に基づいて決定され得る。責任の観点から、ホスト車両4902はブレーキをかける義務を負い得るが、目標車両4904よりも低い率でブレーキをかけ得る。例えば、目標車両4904は、図48Aに示すように、特定のレーン又は道路に対して誤った方向に走行し得て、従って、ブレーキをかける義務が大きくなり得る。従って、ホスト車両制動率は、目標車両制動率よりも小さくなり得るか、又はその逆になり得る。
上記で論じたように、RSS距離は、検知された事象と検知された事象に対する車両の応答との間の期間(すなわち、ホスト車両に関連する応答時間)の間に、車両が経験し得る最大の可能な加速能力に依存することを含み得る。従って、停止距離はまた、車両の決定された現在の速度から始まる、車両最大加速能力での車両応答時間中に車両が走行できる距離に対応する車両加速距離を含み得る。例えば、開示された実施形態は、ホスト車両4902又は目標車両4904がブレーキをかけ始めるか、又は別のナビゲーション操作を行い始める期間との間の遅延を考慮し得る。例えば、ホスト車両4902が、目標車両4904がホスト車両4902に向かって走行していることを検出するまでの時間は、数ミリ秒(又はそれ以上もしくはそれ以下)かかり得る。処理デバイスは、車両の応答時間に対応する応答期間ρの間に発生し得る加速度を考慮し得る。応答期間ρは、制動率と同様に、車両の既知の特性に対応し得るか、又は全ての車両について想定される値(例えば、人間が操作する車両の場合は特定の応答時間、自律車両の場合は別の値(場合によっては異なる))であり得る。例えば、v1を車両の現在の速度とする。車両の停止距離は、応答時間中の最大加速度の結果として車両が走行する距離に対応する第1の項を含み得る。停止距離はまた、応答期間の終了時の最終速度から、所定の制動率(例えば、最大制動率又は準最大制動率)で、車両がその速度を0に落とすのに必要な距離を含み得る。
先に述べたように、RSS及び/又は停止距離の決定に使用される車両の速度は、(例えば、最大加速能力で)応答期間ρに加速した後のホスト車両の最大速度に対応し得る。例えば、v
1を車両の現在の速度、ρを応答期間、a
max,accelを車両の最大加速度とすると、応答期間ρ後の車両の最大速度v
max,ρは、
となる。
従って、vmax,ρは、ホスト車両4902及び/又は目標車両4904の停止距離を決定するのに使用され得る。例えば、処理デバイスは、車両の停止距離を決定するのに、vmax,ρの速度で始まり、最大又は準最大の制動率が適用されると想定し得る。
幾つかの実施形態では、ホスト車両4902の処理デバイスは、決定された次の状態の距離が、ホスト車両4902の停止距離4912と目標車両4904の停止距離4914との合計よりも少なくとも所定の最小距離(例えば、0.5m、1m、2m等の0より大きい任意の適切な距離)だけ大きい場合に、計画されたナビゲーション動作を実施するように構成され得る。RSS安全縦方向距離がゼロ以外の最小接近距離構成要素を含む場合、安全距離決定において、ホスト車両4902は、少なくとも目標車両からの最小距離で停止することになる。最小距離は事前に決定し得る(例えば、0.5m、1m、2m等の最小距離)。最小接近距離は、本開示による任意のセットの要因に基づいて決定し得る。幾つかの場合、最小接近距離は車両速度に基づき得る。例えば、最小接近距離は、ホスト車両4902又は目標車両4904のいずれかと比較して、検知された速度のより高い率に対してより高く設定され得る。最小接近距離はまた、検知された天候条件(例えば、道路上で雪又は水が検知された場合、又は検知された静止摩擦インジケータが最適な静止摩擦よりも少ないことを示唆している場合)に依存し得て、最小接近距離は、更に安全緩衝距離を提供するために、増加され得る。最小接近距離はまた、ユーザの好み等に基づいて設定し得る。
図50A及び図50Bは、開示された実施形態による、安全な縦方向距離を維持するための例示的なプロセス5000を示すフローチャートを提供する。プロセス5000は、上記で説明した処理ユニット110等の少なくとも1つの処理デバイスによって実行され得る。プロセス5000は例示的なものであり、本開示の利益を有する当業者であれば、プロセス5000は、追加のステップを含み得るか、特定のステップを除外し得るか、又は、さもなければ、本開示による方法で変更されて得ることを理解し得る。
プロセス5000は、ホスト車両の環境を表す少なくとも1つの画像を受信するためのステップ5002を含み得る。少なくとも1つの画像は、画像捕捉デバイスから受信され得て、画像捕捉デバイスは、画像捕捉デバイス122を含む、本開示による任意の画像捕捉デバイスであり得る。幾つかの実施形態では、少なくとも1つの画像は、光学的であるか否かにかかわらず、カメラ、レーダ、ライダ、又は画像を取得し得る任意の他のデバイスのいずれかから取得される画像であり得る。画像が捕捉されてから処理デバイスが画像を受信するまでに、ある程度の遅延の期間が存在し得る。更に、事象が発生してから撮像デバイスが事象の画像を捕捉するまでの間に遅延の期間が存在し得る。例えば、目標車両がホスト車両の前のレーンに入る場合、目標車両がレーン内に移動してから撮像デバイスが目標車両の画像を捕捉(処理)するまでの間には、短い期間(例えば、1ミリ秒、2ミリ秒、5ミリ秒等)が存在し得る。
プロセス5000は、ホスト車両のために計画されたナビゲーション動作を決定するためのステップ5004を含み得る。本開示による、少なくとも1つの処理デバイスは、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を決定するようにプログラムされ得る。ナビゲーション動作は、少なくとも1つの運転ポリシに基づいて決定され得る。計画されたナビゲーション動作及び/又は少なくとも1つの運転ポリシは、上記で論じたものを含めて、本開示によるものであり得る。例えば、計画されたナビゲーション動作は、レーン変更操作、合流操作、通過操作、前進操作の維持、駐車場ナビゲーション操作、又はスロットル動作の維持のうちの少なくとも1つを含み得る。
プロセス5000は、ホスト車両の環境内の目標車両を識別するために少なくとも1つの画像を分析するためのステップ5006を含み得る。少なくとも1つの画像は、画像捕捉デバイス122等の画像捕捉デバイスから受信された画像であり得る。少なくとも1つの画像は、プロセス5000のステップ5002の一部として受信された1つ又は複数の画像であり得る。
プロセス5000は、計画されたナビゲーション動作に関連する次の状態の距離を決定するためのステップ5008を含み得る。本開示による、処理デバイスは、計画されたナビゲーション動作が行われた場合に生じることになる、ホスト車両と目標車両との間の次の状態の距離を決定するようにプログラムされ得る。次の状態の距離は、上記で説明したRSS安全距離を含む、本明細書に開示された任意の手段によって計算され得る。例えば、計画されたナビゲーション動作がホスト車両の加速度である場合、次の状態の距離は、ナビゲーション動作が行われた後のホスト車両とホスト車両の前の先行する目標車両との間の予期される距離であり得る。
プロセス5000は、ホスト車両制動率、ホスト車両最大加速能力、及びホスト車両の現在の速度を決定するためのステップ5010を含み得る。各要因(すなわち、車両制動率、最大加速能力、及びホスト車両の速度)は、本開示による任意の手段によって決定され得る。車両制動率は、上記で説明したように、車両に関連する最大制動率を表し得るか、又は準最大制動率であり得る。幾つかの実施形態では、車両制動率及び/又はホスト車両最大加速能力は、例えば、車両の現在の速度、道路条件(例えば、道路の傾斜、道路の材質等)、天候条件(例えば、雪、湿気等)、車両条件(例えば、タイヤ空気圧、ブレーキパッドの状態、車両の現在の負荷等)等に基づいて決定され得る。幾つかの実施形態では、要因の1つ又は複数は、1つ又は複数のセンサの出力に基づいて決定され得る。例えば、ホスト車両は、処理デバイスに出力を提供し得る加速度計を含み得て、その出力は、ホスト車両の現在の速度及び/又はホスト車両の加速能力を含み得る。幾つかの実施形態では、処理デバイスは、ホスト車両の現在の速度を決定し、現在の速度を使用して、現在の車両制動率及び/又は現在の加速能力を決定し得る。例えば、第1の速度(例えば、15km/時)で走行する車両の車両制動率は、第2の速度(例えば、30km/時)で走行する同じ車両の車両制動率とは著しく異なり得る。幾つかの実施形態では、車両制動率、最大加速能力、及び/又はホスト車両の速度のうちの1つ又は複数は、所定の値を使用して想定され得る。例えば、処理デバイスは、ホスト車両が、ホスト車両に関連する車両のタイプの平均(又は最悪)最大ブレーキ能力に対応する所定の値に対応する最大ブレーキ能力を有すると想定するように構成され得る。幾つかの実施形態では、各要因は、道路の外部条件又は車両の一時的な特性に基づいて決定され得る。例えば、ホスト車両の車両制動率は、路面の検知された状態に基づいて決定され得る。この例では、検知された道路条件には、道路の粗さ、道路の勾配又は傾斜、道路がアスファルト、セメント、砂利、又はその他の材料であるかどうかにかかわらず、道路上の物質又は物体の有無が含まれ得るか、又は本開示によるその他の条件が含まれ得る。別の例として、ホスト車両の車両制動率は、検知された天候条件に基づいて決定され得る。この例では、天候条件は、任意の降水量(例えば、雨、みぞれ、雪、氷等)の検出、視界に影響を与える天候条件(例えば、霧、スモッグ、煙等)、車両の取り扱いに影響を与え得る条件(例えば、強風、高熱等)、又はホスト車両のナビゲーション応答に影響を与え得るその他の天候条件を含み得る。別の例では、処理デバイスは、ホスト車両が、例えば、1人の乗員又は複数の乗員、かなりの重量の貨物、トレーラ等を含むかどうかに基づいて、車両制動率を決定し得る。このような条件は、オンボードカメラによって取得された画像の分析(例えば、道路上の雪又は水、フロントガラス上の水、路面の滑らかさ等の認識)に基づいて検知され得るか、又は他の適切なセンサに基づき得る。このようなセンサは、車輪スリップセンサ、ブレーキシステムセンサ出力、路傍インフラストラクチャから送信される信号の受信機、WiFi接続を介してストリーミングされる気象データ、GPS及び/又は速度計出力等を含み得る。
幾つかの実施形態では、車両制動率及び/又は最大加速能力は、1つ又は複数の事前定義された要因に基づいて決定され得る。例えば、政府又は業界団体は、車両又は車両のクラスが有し得る車両制動率及び/又は最大加速能力を規定する1つ又は複数の規制を提供し得て、少なくとも1つのプロセッサは、ホスト車両が規制で許可されている車両制動率及び/又は最大加速能力を有すると想定し得る。最大ブレーキ値及び/又は最大加速度値に対する制約は、ユーザ定義(例えば、自律車両の搭乗者が、所定の最大許容ブレーキレベル及び加速レベルに対応する1つ又は複数の車両設定を選択し得る)、シナリオ定義(例えば、特定の場所での状況及び/又は特定のナビゲーションシナリオ中の状況に基づく)でもあり得て、及び/又は観測された性能(例えば、自律ナビゲーション及び/又はユーザによるナビゲーション中に収集された履歴データに基づく)に基づき得る。
プロセス5000は、ホスト車両の停止距離を決定するためのステップ5012を含み得る。本開示による、処理デバイスは、(例えば、上記で詳細に説明したように)ホスト車両制動率、ホスト車両最大加速能力、及び/又はホスト車両の現在の速度に基づいて、ホスト車両の停止距離を決定するように構成され得る。ホスト車両の停止距離は、本開示による任意の手段によって決定され得る。例えば、処理デバイスは、上記のRSSに関連して論じられた1つ又は複数の式を使用し得る。
幾つかの実施形態では、停止距離は、ホスト車両が所定のブレーキ能力でブレーキをかける前に、その最大加速能力で一定期間加速した場合に、その現在の速度を所与として、ホスト車両が停止するのに必要な距離であり得る。例えば、ホスト車両の停止距離は、ホスト車両の決定された現在の速度から始まる、ホスト車両の現在の最大加速能力でホスト車両が所定の期間にわたって走行できる距離に対応する加速距離を含み得る。所定の期間は、処理デバイスによって想定される期間であり得る。例えば、制約により、処理デバイスは、ホスト車両が特定の期間(例えば、0.5ミリ秒、1ミリ秒、2ミリ秒、3ミリ秒、10ミリ秒等)加速すると想定することを要求され得る。所定の期間は、ホスト車両に関連する応答時間であり得る。例えば、所定の期間は、ホスト車両のセンサ(例えば、撮像デバイス)がホスト車両からのブレーキ応答を必要とする条件の画像(例えば、ホスト車両の経路に入る目標車両)を捕捉する時間と、ホスト車両がその車両制動率でブレーキをかけ始める時間との間の遅延であり得る。このような期間は、捕捉された画像の分析に関連する時間を処理することと、1つ又は複数のプロセッサで実施された運転ポリシに基づいてナビゲーション応答を計画することと、車両の(とりわけ)操舵及び/又はブレーキシステムに関連する1つ又は複数のアクチュエータの制御を通じてナビゲーション応答を実施することとを含み得る。この例では、最悪のシナリオにおいて、ホスト車両が遅延期間全体にわたって最大加速能力で加速すると想定され得る。幾つかの実施形態では、応答時間時間に関連する期間は、処理デバイスによって決定又は近似され得る。例えば、処理デバイスは、画像を受信してからブレーキ応答が必要であると決定するまでの時間を監視し得る。別の例として、処理デバイスは、複数のナビゲーション応答に関連する平均値、中央値、又はモード応答時間を決定し、停止距離を計算するときに平均値、中央値、又はモード応答時間を使用し得る。例えば、数十、数百、又は数千のナビゲーション応答の後、処理デバイスは、検知された事象とナビゲーション応答との間の平均時間が特定の値(例えば、任意の実数のミリ秒)であると判定し、その値をホスト車両に関連する応答時間として使用し得る。幾つかの場合、RSS距離の決定に使用される応答時間は、車両固有であり得て、様々な検知条件に対する特定の車両の測定された応答時間の走行平均値を含み得る。
本開示による、決定された停止距離は、完全に停止した後のホスト車両と目標車両との間の最小距離を含み得る。決定された又は所定の最小距離は、ホスト車両と他の車両との間で維持される所定の分離距離に対応し得る。例えば、処理デバイスは、停止距離の計算に決定された又は所定の最小距離を含むようにプログラムされ得る。例えば、所定の分離距離は、少なくとも1メートルであり得る。この例では、決定された又は所定の最小距離は、上記で論じたようにdminであり得る。
プロセス5000は、目標車両の現在の速度、目標車両最大加速能力、及び目標車両制動率を決定するためのステップ5014を含み得る。本開示による、少なくとも1つの処理デバイスは、目標車両の現在の速度を決定するようにプログラムされ得る。幾つかの実施形態では、目標車両の速度は、ホスト車両の速度に基づいて決定され得る。例えば、ホスト車両上の1つ又は複数のセンサは、ホスト車両の速度に関連する情報、及びホスト車両に対する目標車両の加速度又は方向の変化の表示を提供し得る。幾つかの実施形態では、目標車両速度は、少なくとも1つの画像の分析に基づいて決定され得る。少なくとも1つの画像は、例えば、ステップ5002で処理デバイスによって受信され、ステップ5006で目標車両を識別するために使用された画像と同じであり得る。幾つかの実施形態では、目標車両の速度を決定するために、複数の画像が分析され得る。例えば、第1の画像は、目標車両をホスト車両から第1の距離で示し得て、第2の画像は、目標車両をホスト車両から第2の距離で示し得て、処理デバイスは、距離の変化及び第1の画像と第2の画像との間の時間を使用して、目標車両に関連する速度を決定し得る。幾つかの実施形態では、目標車両速度は、ホスト車両に関連するレーダシステム又はライダシステムのうちの少なくとも1つからの出力の分析に基づいて決定され得る。例えば、処理デバイスは、ホスト車両の速度、及びホスト車両と目標車両との間の距離(例えば、ライダシステムによって検知される)を使用して、ホスト車両の速度を決定し得る。
幾つかの実施形態では、最悪のシナリオを考慮するために、処理デバイスは、目標車両の現在の速度が目標車両の検知された速度よりも小さい又は大きいと想定するようにプログラムされ得る。例えば、目標車両がホスト車両の前を走行している場合、処理デバイスは、所定の値、パーセンテージ、式等を使用して、検知された速度を低下させるようにプログラムされ得る。処理デバイスは、1つ又は複数のセンサからの情報に基づいて、目標車両が100km/時で走行していると判定した場合、検知速度を10%調整して、車両が90km/時で走行していると想定し得る。目標車両の速度は、目標車両制動率と相関し得るため、目標車両の速度が低下したと仮定することは、目標車両がそうでない場合よりも速く停止する可能性があると想定することに似ている(例えば、時速100kmで走行する場合よりも時速90kmで走行する場合、目標車両はより短い距離で停止し得る)。
本開示による、少なくとも1つの処理デバイスは、目標車両の少なくとも1つの認識された特性に基づいて、目標車両最大加速能力及び/又は車両制動率を想定するようにプログラムされ得る。少なくとも1つの特性は、加速度又はブレーキ能力と相関することが知られている任意の特性、又は加速度又はブレーキ能力と相関し得る任意の特性であり得る。幾つかの実施形態では、目標車両の認識された特性は、上記で説明したように、車両のタイプ、クラス、メーカー、モデル、サイズ等を含み得る。
処理デバイスは、1つ又は複数のセンサ(例えば、ライダデバイス、レーダデバイス、撮像デバイス等)からの情報から少なくとも1つの特性を認識するようにプログラムされ得る。幾つかの実施形態では、目標車両の認識された特性は、少なくとも1つの画像の分析に基づいて決定され得る。例えば、目標車両の画像は、目標車両の外側にテキストを含み得て、これは、車両タイプ、車両モデル、車両サイズ、又は他の特性を決定するために使用され得る。別の例として、目標車両の画像は、他の物体との比較に基づいて車両サイズ又は他の特性を近似させるために使用され得る他の物体を含み得る。一例として、大型車は制限速度標識よりも高く見え得るが、小型車は制限速度標識よりも小さく見え得る。幾つかの実施形態では、目標車両の少なくとも1つの特性は、ライダ出力又はレーダ出力のうちの少なくとも1つに基づいて決定され得る。例えば、ライダ出力は、目標車両のリアバンパまでの距離に関連する第1の距離と、目標車両のフロントバンパ(又は他の領域)までの距離に関連する第2の距離とを含み得て、それらの間の差は目標車両のサイズを推定するために使用され得る。目標車両のサイズはまた、撮像された特徴(例えば、ブレーキライト、タイヤ、サイドミラー等)の既知のサイズに基づいて推定し得る。ある画像から別の画像へ物体をどの程度スケーリングさせるかの決定はまた、目標車両サイズ又は範囲を予測するために使用され得る。
上記で論じたように、目標車両制動率は、車両の最大又は準最大制動率に対応し得る。目標車両制動率又は目標車両最大加速能力は、ホスト車両についてステップ5010で上記で説明した手段を含む、本開示による任意の手段によって決定され得る。例えば、目標車両制動率は、路面の検知された状態、検知された天候条件等に基づいて決定され得る。幾つかの実施形態では、車両制動率は、ホスト車両又は目標車両に関連する責任又は過失特性に依存し得る。従って、ホスト車両制動率は、目標車両制動率よりも小さくなり得るか、又はその逆になり得る。
プロセス5000は、目標車両制動率、目標車両最大加速能力、及び目標車両の現在の速度に基づいて、目標車両の停止距離を決定するためのステップ5016を含み得る。目標車両の停止距離は、目標車両が所定の制動率でブレーキをかける前に、その最大加速能力で一定期間加速した場合に、その現在の速度を所与として、目標車両が停止するのに必要な距離であり得る。例えば、目標車両の停止距離は、目標車両の決定された現在の速度から始まる、目標車両の現在の最大加速能力で目標車両が所定の期間にわたって走行できる距離に対応する加速距離を含み得る。距離は、ホスト車両に関してステップ5012で上記で説明した手段を含む、本開示による任意の手段によって決定され得る。
プロセス5000は、計画されたナビゲーション動作が安全である場合、計画されたナビゲーション動作を実施するためのステップ5018を含み得る。ステップ5018の目的のために、計画されたナビゲーション動作が安全であると考えられ得るときの一例は、決定された次の状態の距離が、ホスト車両の停止距離と目標車両の停止距離との合計よりも大きい場合のときである。この状況では、両方の車両の停止距離(反動期間中の最大加速度を想定した潜在的な走行距離を含む)により、ナビゲーション動作が行われた場合、衝突する前に車両が完全に停止できるため、ホスト車両と目標車両との間に衝突は発生しない。
ステップ5018の目的のために、計画されたナビゲーション動作が安全であると考えられ得るときの別の例は、決定された次の状態の距離が、ホスト車両の停止距離と目標車両の停止距離との合計よりも少なくとも所定の最小距離だけ大きいときである。この実施形態では、所定の最小距離はdminであり得て、本開示による任意の手段によって所定され得るか又は決定され得て、上記で議論された任意の属性を有し得る。幾つかの実施形態では、所定の最小距離は、ホスト車両と他の車両との間で維持される所定の分離距離に対応し得る。例えば、自律ナビゲーションシステムの制約により、自律車両が他の車両の指定された距離内(距離未満)に入らないように規定され得る。所定の分離距離は、任意の寸法の距離であり得る。幾つかの実施形態では、所定の分離距離は、少なくとも1メートル、2メートル、5メートル等である。幾つかの実施形態では、所定の距離は、例えば、ホスト車両が走行している速度、ホスト車両の位置(例えば、都市の道路、地方の幹線道路等)に応じて変化し得る。
安全な横方向距離でのナビゲーション
上記で説明したように、RSSは、ホスト車両と目標車両との間の縦方向の安全な距離を決定するのに効果的であり得る。しかし、他の実施形態では、RSSはまた、2台の車両間の安全な横方向距離を維持するために使用され得る。例えば、ホスト車両及び目標車両は、それらが横方向に間隔を空けられるように、互いに相対的に走行し得る。開示された実施形態は、ホスト車両と目標車両との間の横方向分離の変化をもたらし得る1つ又は複数のナビゲーション動作を考慮して、ホスト車両が目標車両との安全な横方向距離を維持することを保証するために使用され得る。安全な横方向間隔を維持することは、ホスト車両と目標車両が隣り合って運転している場合に特に重要になり得る。その場合、1つ又は複数の車両による横方向走行が確認されていないと衝突を引き起こす可能性がある。しかし、安全な横方向間隔はまた、ホスト車両及び目標車両の1つ又は複数による連続的な横方向移動が衝突を引き起こさないように、ホスト車両及び目標車両が縦方向に間隔を空けている場合であっても懸念され得る。例えば、1つの車両の横方向移動が、ホスト車両及び目標車両の1つ又は複数による横方向移動に続いて、安全でない縦方向距離が生じるような割り込みの状況を引き起こす可能性がある場合、特定の安全な横方向距離を維持することが興味対象となり得る。次の節では、横方向間隔/分離、横方向加速、横方向速度、及び/又は横方向ブレーキの観点から、横方向ナビゲーションの様々な側面について説明する。このような用語は、車両の移動の横方向成分の変化を指し得る。例えば、ホスト車両と目標車両が隣接するレーンを同じ方向に走行している状況で、ホスト車両が目標車両に接近するように運転する場合、ホスト車両と目標車両の横方向間隔が狭くなっているといえる場合がある。横方向間隔のこの減少は、一定であり得るか、又は横方向加速度値に従って変化し得る、特定の横方向速度で発生し得る。横方向間隔の減少に関連する横方向速度は、1つの符号(例えば、−)で示され得て、横方向間隔の増加に関連する横方向速度は、反対の符号(例えば、+)で示され得る。横方向加速度は、ホスト車両が増加する横方向速度で目標車両に横方向に接近している(又は目標車両から横方向に離れている)状況を指し得る。「横方向ブレーキ」という用語は、ホスト車両が目標車両に横方向に接近するが、横方向速度が減少する状況を指し得る。例えば、横方向ブレーキをかける操作により、2台の車が互いに接近する速度が遅くなる。最終的に、横ブレーキにより、車両間の横方向速度が0になり得る。横方向間隔、速度、加速度等に影響を与える操作は、1つ又は複数の車両を別の車両から遠ざける又は別の車両に向けて操舵することを含み得る。
図51Aは、開示された実施形態による、互いに横方向に間隔を開けて配置された2つの車両のシナリオの一例を示す。このシナリオでは、ホスト車両5102及び目標車両5104は、それぞれがそれぞれのレーンで、道路上で互いに並んで走行し得る。図51Aに示すように、ホスト車両5102は、ホスト車両5102と目標車両5104との間の横方向距離が減少させる、レーン変更操作等の操作を行い得る。図51Aに示すシナリオは単なる例であり、ホスト車両5102が目標車両間の安全な横方向距離を維持する他の様々なシナリオが生じ得る。例えば、ホスト車両5102及び目標車両5104は、図51Aにおいて概して同じ方向に走行するように示されているが、車両はまた、車両間にある程度の横方向空間を空けて反対方向に走行し得る。他の例では、車両は、交差点、駐車場、合流パターン、又は他の可能なシナリオにおいて横方向に間隔を空けて走行し得る。本開示は、ホスト車両及び目標車両が、それらの間にある程度の横方向間隔を空けて走行している任意の特定のシナリオに限定されない。
図51Aに示すように、目標車両5104は、速度ベクトル5124によって表される速度で走行し得る。同様に、ホスト車両5102は、速度ベクトル5123によって表される速度で走行し得る。図51Aに示すように、ホスト車両5102の横方向速度5123は、速度ベクトル5122の横方向成分として定義され得る。横方向成分は、様々な方法で定義し得る。例えば、横方向成分は、ホスト車両5102の以前の進行方向、目標車両5104の現在の進行方向、ホスト車両5102及び/又は目標車両5104の走行レーン等に基づく基準系を使用し得る。幾つかの実施形態では、横方向速度5123は、目標車両5104の方向にあるホスト車両5102の速度の成分であり得る。目標車両5104の横方向速度は、同様に、ホスト車両5102の方向にある目標車両5104の速度の成分として定義され得る。車両の相対的な横方向速度を定義するために、他の任意の適切な手段が使用され得る。横方向間隔、横方向速度、及び/又は横方向加速度は、カルテシアン座標、極座標、又は他の適切な規則に従って表され得る。
ホスト車両5102は、ホスト車両5102が、上記で論じたように、RSS安全距離等、車両5104からの安全な縦方向距離を維持することを可能にする場合、計画されたナビゲーション動作を実行するように構成され得る。計画されたナビゲーション動作は、ホスト車両5102と目標車両5104との間の横方向距離を(例えば、横方向速度5123を増加させることによって)減少させる動作であり得る。図51Aに示すシナリオでは、ホスト車両5102及び目標車両5104は、同じ走行方向で平行レーンを走行し、ホスト車両5012は、目標車両5104が占有するレーンにレーンを変更し得る。従って、計画されたナビゲーション動作は、レーン変更操作又は合流操作を含み得る。他の例では、計画されたナビゲーション動作は、ホスト車両5102が目標車両5104を通過し、従って、(同じ走行方向又は反対の走行方向で)一時的に隣接するレーンに移動し得て、目標車両5104が占有するレーンに戻り得る、通過操作を含み得る。他の例では、計画されたナビゲーション動作は、回転操作を含み得る。例えば、ホスト車両5102は、交差点で回転し得て、これにより、車両間の横方向距離が減少し得る。計画されたナビゲーション動作は、高速道路を出る、物体(例えば、道路内の障害物、くぼみ、人等)の周りの操作、駐車操作(例えば、縦列駐車、駐車場への入場等)、又は他の同様の動作等、ホスト車両5102と目標車両5104との間の横方向距離を減少させ得る他の任意の操作を含み得る。幾つかの場合、目標車両5104とホスト車両5102との間の横方向距離を減少させる操作を行うのは、目標車両5104であり得る。ホスト車両5102の計画されたナビゲーション動作は、前進操作の維持、スロットル動作の維持、惰性動作の維持、進行方向の変更、ブレーキ操作(横方向及び/又は縦方向)等を含み得る。
上記で論じたように、RSS安全距離は、ホスト車両と目標車両との間で、ホスト車両が目標車両と衝突することなく停止し得る距離であり得る。縦方向RSS安全距離の類似型は、2台の車両間のRSS安全横方向距離を含み得る。安全な横方向距離は、車両が横方向に停止(例えば、横方向速度をゼロに下げる)するのにかかる最小距離の計算を含み得る。この場合、車両のブレーキ能力を決定する(例えば、ブレーキをかける)のではなく、安全な横方向距離は、他の車両から離れる方向に操縦する(又は、さもなければ、2台の車両の横方向接近速度をゼロまで遅くする)ホスト車両の能力に基づき得る。従って、横方向制動距離は、少なくとも部分的に、車両の操舵/回転能力に依存し得る。
図51Bは、開示された実施形態による、安全な横方向距離を維持するホスト車両5102の一例を示す。目標車両5104は、車両が互いに横方向に間隔を空けるように、ホスト車両5102と並んで走行し得る。上記で説明した縦方向安全距離と同様に、ホスト車両5102の処理デバイス(例えば、処理ユニット110)は、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を決定し得る。ホスト車両5102は、ホスト車両5102と目標車両5104との間でRSSの安全な縦方向距離を維持できる場合、計画されたナビゲーション動作を実行するように構成され得る。更に、ホスト車両5102は、ホスト車両5102と目標車両5104との間でRSSの安全な横方向距離を維持できる場合、計画されたナビゲーション動作を実行するように構成され得る。上記で論じたように、計画されたナビゲーション動作は、レーン変更操作、合流操作、通過操作、駐車場ナビゲーション操作、回転操作、回避操作、前進操作の維持、スロットル操作の維持等の様々な操作を含み得る。ホスト車両5102の処理デバイスは、計画されたナビゲーション動作が行われた場合に生じる車両間の横方向距離に対応する、ホスト車両5102と目標車両5104との間の次の状態の横方向距離5110を決定し得る。処理デバイスはまた、ホスト車両5102の横方向制動距離5112及び目標車両5104の横方向制動距離5114を決定し得る。上記で述べたように、横方向制動距離5112及び5114は、車両がそれらの横方向速度をゼロに低減するために必要な横方向距離を表し得る。従って、車両は、横方向に停止した場合でも、全体の速度がゼロ以外であり得る。例えば、車両はゼロ以外の縦方向速度で走行し続け得る。ホスト車両5102の処理デバイスは、決定された次の状態の横方向距離5110が横方向制動距離5112及び横方向制動距離5114の合計よりも大きい場合、計画されたナビゲーション動作を実施し得て、それにより、車両が衝突を回避するために(例えば、回転によって)両方とも横方向速度を低減できることを示す。図51Bに示すシナリオでは、次の状態の横方向距離5110が横方向制動距離5112及び横方向制動距離5114の合計よりも大きいので、ホスト車両5102のナビゲーション動作が許可される。
開示された実施形態による、ホスト車両5102の横方向制動距離5112は、ホスト車両横方向速度がゼロに達するのに必要な距離に対応し得る。横方向制動距離5112は、ホスト車両の現在の横方向速度から始まる、ホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化に依存し得る。上記で説明した縦方向安全距離の決定に使用される最大加速率と同様に、横方向制動距離5112は、ホスト車両5102の横方向加速度を想定し得る。従って、横方向制動距離5112の決定は、ホスト車両の最大ヨー率能力及びホスト車両に関連する応答時間中のホスト車両の回転半径能力の最大変化で目標車両に向かって行われた回転操作の結果としてのホスト車両の横方向加速度後のホスト車両5102の横方向速度を想定し得る。最大ヨー率能力及び/又は回転半径能力の最大変化に対する制約は、ユーザ定義(例えば、自律車両の搭乗者が、所定の最大許容ヨー率及び回転半径レベルの変化に対応する1つ又は複数の車両設定を選択し得る)、シナリオ定義(例えば、特定の場所での状況及び/又は特定のナビゲーションシナリオ中の状況に基づく)でもあり得て、及び/又は観測された性能(例えば、自律ナビゲーション及び/又はユーザによるナビゲーション中に収集された履歴データに基づく)に基づき得る。
図52Aは、開示された実施形態による、計画されたナビゲーション動作中の例示的なホスト車両5102を示す。ホスト車両5102のヨー率は、例えば、車輪を回転させることによって引き起こされる角速度として表される、ホスト車両5102の進行角度の変化率を表し得る。ホスト車両5102は、時間t
1で進行方向5205を有し得、時間t
2で進行方向5206を有し得る。進行方向5205は、進行方向5206から角度Θだけ変化し得る。ヨー率は、
として表し得る。幾つかの場合、回転半径が一定であれば、ヨー率は一定になり得る。例えば、ホスト車両5102は、一定の回転半径5207で回転し得て、従って、ホスト車両5102のヨー率は一定のままである。ホスト車両5102の回転半径の変化は、ホスト車両5102が回転半径を変化させる率を表し得る。例えば、ホスト車両5102は、回転半径を減少させて回転半径5208とし得て、それにより、ホスト車両5102のヨー率を増加させ得る。ホスト車両5102はまた、車両の特性(例えば、車輪がずっと片側だけで回転していたときの回転半径等)に対応し得る最大ヨー率能力を有し得る。
先に論じた縦方向安全距離の決定と同様に、事象と事象の検知に対する車両の応答との間の期間(例えば、ホスト車両に関連付けられた応答時間)の間に、RSS距離(例えば、安全RSS横方向距離)は、車両が経験し得る最大の可能な横方向加速能力に依存する。従って、横方向制動距離は、車両を横方向速度がゼロにまで減速するために必要な横方向距離だけでなく、応答時間時間にわたる最大横方向加速度の最悪のシナリオも考慮し得る。横方向制動距離は、車両の最大ヨー率能力及び車両の回転半径能力の最大変化での車両応答時間中に車両が走行できる横方向距離に対応する横方向加速距離を含み得る。例えば、RSS横方向距離は、ホスト車両5102又は目標車両5104が補正操舵操作を行い始める前の遅延を考慮し得る。ホスト車両5102が、目標車両5104がホスト車両5102に向かって横方向に走行していることを検出するまでの時間、又はその逆の時間は、数ミリ秒(又はそれ以上もしくはそれ以下)かかり得る。処理デバイスは、車両の応答時間に対応して、応答期間ρの間に発生し得る回転半径及びヨー率の変化を考慮し得る。応答期間ρは、制動率と同様に、車両の既知の特性に対応し得るか、又は全ての車両の想定値であり得る。ホスト車両5102の横方向制動距離を決定する際に使用される横方向速度は、ホスト車両5102の最大ヨー率能力を想定し得て、そのホスト車両5102は、応答期間ρの間の車両の回転半径能力の最大変化に基づいてヨー率を増加させ、それにより、最悪の事例の横方向制動距離5112を表す。
再び図51Bを参照すると、目標車両5104の横方向制動距離5114は、目標車両5102の横方向制動距離5112と同様の方法で計算され得る。目標車両5104の横方向制動距離5114は、目標車両の横方向速度がゼロに達するのに必要な距離に対応し得る。横方向制動距離5114は、目標車両の現在の横方向速度から始まる、目標車両の最大ヨー率能力及び目標車両の回転半径能力の最大変化に依存し得る。横方向制動距離5114は、目標車両5104の横方向加速度を想定し得て、従って、横方向制動距離5114の決定は、目標車両の最大ヨー率能力及び目標車両に関連する応答時間中の目標車両の回転半径能力の最大変化で行われたホスト車両への目標車両による回転操作の結果としてのホスト車両の横方向加速後のホスト車両5104の横方向速度を想定し得る。
幾つかの実施形態では、ホスト車両及び/又は目標車両の横方向速度は、1つ又は複数のセンサの出力に基づいて決定され得る。例えば、横方向速度は、加速器、ライダシステム、レーダシステム、GPSユニット等の出力から決定され得る。別の例として、ホスト車両の横方向速度は、1つ又は複数の画像を分析することによって(例えば、2つ以上の画像で検出された固定物体のスケーリング率の変化に基づいて)決定され得る。同様に、目標車両の横方向速度は、1つ又は複数の画像を分析することによって(例えば、目標車両のスケーリング率の変化に基づいて)決定され得る。
目標車両の場合、目標車両の最大ヨー率能力及び目標車両の回転半径能力の最大変化は、縦方向安全運転距離に関する上記で説明したブレーキ能力と同様に、目標車両の少なくとも1つの特性に基づいて決定され得る。少なくとも1つの特性は、車両のヨー率又は回転半径能力と相関し得る任意の特性であり得る。幾つかの実施形態では、目標車両の認識された特性は、車両タイプ(例えば、フルサイズセダン、コンパクトカー、SUV、クロスオーバSUV、オートバイ等)、車両のメーカー又はモデル、ブランド名、又は目標車両の他の分類子(例えば、トヨタプリウス(登録商標)、BMW X5(登録商標)等)、車両サイズ(縦方向の安全運転距離の決定に関しては上記で説明した通り)等を含み得る。処理デバイスは、その車両タイプ又は車両のクラスの既知の値に基づいて、目標車両の最大ヨー率能力及び目標車両の回転半径能力の最大変化を想定するようにプログラムされ得る。処理デバイスは、車両特性を使用して、例えば、各車両タイプ、モデル等に関連する既知の最大ヨー率能力及び/又は回転半径能力の最大変化を含むデータベースにアクセスし得る。車両の特性は、画像の分析を通じて決定又は識別され得る。
ホスト車両5102の場合、ホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化は、車両の特性、以前の回転操作からのデータ等に基づいて、システムによって認識又は推定され得る。幾つかの実施形態では、ホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化は、ホスト車両の所定の制約に基づき得る。例えば、最大横方向加速度は車両の真の最大能力よりも小さくなり得るが、設定によって制限され得る。最大横方向制動率又は最大横方向加速度は、乗員に不快感を与える可能性があり、車両ハードウェア等(タイヤ、ブレーキパッド等)を過度に摩耗させる可能性がある。従って、所定の制約(システム100、ホスト車両5102のドライバー等によって設定され得る)は、ホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化を制限し得る。これらの制限された値は、横方向制動距離の決定に使用され得る。
幾つかの実施形態では、ホスト車両の最大ヨー率能力、ホスト車両の回転半径能力の最大変化、目標車両の最大ヨー率能力、又は目標車両の回転半径能力の最大変化のうちの少なくとも1つは、1つ又は複数の検知された道路条件(例えば、道路材料のタイプ、道路の静止摩擦特性等)、1つ又は複数の検知された天候条件(例えば、雨、雪、霧、氷)等に基づいて決定され得る。例えば、処理デバイスは、雪道で最大限の安全性及び快適性を提供する最大ヨー率能力及び/又は回転半径能力の最大変化を決定し得て、これは、乾燥した高速道路等で決定されるものとは異なり得る。
幾つかの実施形態では、横方向制動率は、ホスト車両5102又は目標車両5104に関連する過失又は責任の決定に基づき得る。責任の観点から、ホスト車両5102は、目標車両5104から離れるように操舵する義務を負い得るが、目標車両5104よりも低い率で操舵し得る。例えば、目標車両5104は、ホスト車両5102のレーンに方向転換し得て、従って、ホスト車両5012から離れる方向に操舵するより大きな義務を負い得る。従って、ホスト車両の最大ヨー率能力及び/又は回転半径能力の最大変化は、同じ車両タイプ又はモデルであっても、目標車両のものよりも小さくなり得るか、又はその逆であり得る。
幾つかの実施形態では、ホスト車両5102の処理デバイスは、決定された次の状態の距離が、ホスト車両の横方向制動距離と目標車両の横方向制動距離との合計よりも少なくとも所定の最小距離だけ大きい場合に、計画されたナビゲーション動作を実施するように構成され得る。RSS安全縦方向距離がこの最小接近距離成分を含む場合、ホスト車両5102がゼロ横方向速度に達したとき、ホスト車両は、少なくとも最小接近距離だけ目標車両から分離されたままであるべきである。最小距離は、ホスト車両と他の車両との間で維持されるべき所定の横方向分離距離(例えば、0.5m、1m、2m等の最小距離)に対応し得る。所定の横方向分離は、本開示による任意のセットの要因(例えば、ホスト車両5102及び/又は目標車両5104に関連する速度、検知された天候条件、ユーザの好み等)に基づいて決定され得る。
幾つかの実施形態では、ホスト車両はまた、ホスト車両と目標車両との間の縦方向距離を考慮し得る。図52Bは、ホスト車両5202が、横方向及び縦方向の両方の安全運転距離に基づいてナビゲーション動作を行い得る一例を示す。ホスト車両5202は、ホスト車両5202と目標車両5204との間の横方向距離に基づいて、計画されたナビゲーション動作を行うかどうかを決定し得る。計画されたナビゲーション動作は、レーン変更操作、合流操作等、上記で説明した操作のいずれかであり得る。ホスト車両5202の処理デバイスは、次の状態の横方向距離5210、ならびにホスト車両の横方向制動距離5212及び目標車両の横方向制動距離5214を決定し得る。図52Bに示すシナリオでは、ホスト車両の横方向制動距離5212と目標車両の横方向制動距離5214の合計は、ナビゲーション動作が目標車両5204からの安全横方向距離をもたらさないことを示す、次の状態の横方向距離5210よりも大きくなり得る。その結果、車両は、安全でない横方向距離をもたらす計画されたナビゲーション動作を見送り得る。
しかし、幾つかの実施形態では、処理デバイスは、次の状態の横方向距離に関係なく、(例えば、計画されたナビゲーション動作が、ホスト車両と目標車両との間の安全縦方向距離5220をもたらす場合)計画されたナビゲーション動作を実施するようにプログラムされ得る。換言すると、ナビゲーション動作を行うことができ、次の状態距離が安全RSS縦方向距離以上である場合、ホスト車両と目標車両との間の横方向距離が安全RSS横方向距離以上であるかどうかは、関係性が低い場合がある(例えば、ホスト車両が目標車両の大幅に前か後ろにあり、その結果、横方向の衝突の危険性がほとんどないか、又は全くない場合がある)。安全縦方向距離は、上記で詳細に説明したシステム及び方法を含む、本開示による任意の方法で決定され得る。例えば、安全縦方向距離5220(これは、上記で説明した次の状態の縦方向距離に対応し得る)は、ホスト車両の縦方向停止距離5222と目標車両の縦方向停止距離5224との合計以上であり得る。従って、図52Bに示すシナリオでは、ホスト車両5202の処理デバイスは、計画されたナビゲーション動作を行い得る。上記で論じたように、ホスト車両の停止距離は、ホスト車両の最大縦方向ブレーキ能力及びホスト車両の現在の縦方向速度に基づき得る。ホスト車両の停止距離は、ホスト車両の現在の縦方向速度から始まるホスト車両に関連する応答時間中に、ホスト車両がホスト車両最大加速能力で走行できる距離に対応するホスト車両加速距離を更に含み得る。同様に、目標車両の停止距離は、目標車両の最大縦方向ブレーキ能力及び目標車両の現在の縦方向速度に基づき得る。目標車両の停止距離は、目標車両の現在の縦方向速度から始まる目標車両に関連する応答時間中に、目標車両が目標車両最大加速能力で走行できる距離に対応する目標車両加速距離を含み得る。
図53A及び図53Bは、開示された実施形態による、安全な横方向距離を維持するための例示的なプロセス5300を示すフローチャートを含む。プロセス5300は、上記で説明した処理ユニット110等の少なくとも1つの処理デバイスによって実行され得る。プロセス5300は単なる例示である。本開示の利益を有する当業者であれば、プロセス5300は、追加のステップを含み得るか、特定のステップを除外し得るか、又は、さもなければ、本開示による方法で変更されて得ることを理解し得る。
プロセス5300は、ホスト車両の環境を表す少なくとも1つの画像を受信するためのステップ5302を含み得る。少なくとも1つの画像は、画像捕捉デバイスから受信され得て、画像捕捉デバイスは、画像捕捉デバイス122を含む、本開示による任意の画像捕捉デバイスであり得る。幾つかの実施形態では、少なくとも1つの画像は、光学的であるか否かに関わらず、カメラ、レーダ、ライダ、又は画像を取得し得る任意の他のデバイスのいずれかから取得される画像であり得る。画像が捕捉されてから処理デバイスが画像を受信するまでに、ある程度の期間が存在し得る。更に、事象が発生してから撮像デバイスが事象の画像を捕捉するまでの間に遅延の期間が存在し得る。例えば、目標車両がホスト車両の前のレーンに入る場合、目標車両がレーン内に移動してから撮像デバイスが目標車両の画像を捕捉するまでの間には、短い期間(例えば、1ミリ秒、2ミリ秒、5ミリ秒等)が存在し得る。捕捉画像の分析、分析に基づく計画された応答の展開、作動システムへの1つ又は複数の制御信号の送信、及び制御信号に対する作動システムの実際の応答に関連する時間も存在し得る。
プロセス5300は、ホスト車両のために計画されたナビゲーション動作を決定するためのステップ5304を含み得る。本開示による、少なくとも1つの処理デバイスは、ホスト車両のナビゲーション目標を達成するための計画されたナビゲーション動作を決定するようにプログラムされ得る。ナビゲーション動作は、少なくとも1つの運転ポリシに基づいて決定され得る。計画されたナビゲーション動作及び/又は少なくとも1つの運転ポリシは、上記で論じたものを含めて、本開示によるものであり得る。例えば、計画されたナビゲーション動作は、レーン変更操作、合流操作、通過操作、駐車場ナビゲーション操作、又は回転操作のうちの少なくとも1つを含み得る。
プロセス5300は、ホスト車両の環境内の目標車両を識別するために少なくとも1つの画像を分析するためのステップ5306を含み得る。少なくとも1つの画像は、画像捕捉デバイス122等の画像捕捉デバイスから受信された画像であり得る。少なくとも1つの画像は、プロセス5300のステップ5302の一部として受信された1つ又は複数の画像であり得る。
プロセス5300は、計画されたナビゲーション動作が行われた場合に生じることになる、ホスト車両と目標車両との間の次の状態の横方向距離を決定するためのステップ5308を含み得る。本開示による、処理デバイスは、ホスト車両と目標車両との間の次の状態の距離を決定するようにプログラムされ得る。次の状態の横方向距離は、本明細書に開示されている任意の手段によって計算され得る。例えば、計画されたナビゲーション動作がホスト車両のレーン変更操作である場合、次の状態の距離は、ナビゲーション動作の結果としてのホスト車両とホスト車両の隣のレーン内の目標車両との間の距離であり得る。
プロセス5300は、ホスト車両の最大ヨー率能力、ホスト車両の回転半径能力の最大変化、及びホスト車両の現在の横方向速度を決定するためのステップ5310を含み得る。これらの要因のそれぞれ(すなわち、最大ヨー率能力、回転半径能力の最大変化、及びホスト車両の現在の横方向速度)は、本開示による任意の手段によって決定され得る。ホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化は、ホスト車両の特性(例えば、ホスト車両の回転半径、タイヤ空気圧、タイヤ摩耗等)に依存し得る。幾つかの実施形態では、ホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化は、所定の制約に基づく。例えば、ホスト車両の最大ヨー率能力及び/又はホスト車両の回転半径能力の最大変化は、ユーザ又はシステム設定に基づいて制約され得る(例えば、不快な横方向の加速を防ぐため、車両への不要な摩耗又は損傷を防ぐため等)。従って、ホスト車両の最大ヨー率能力及び/又はホスト車両の回転半径能力の最大変化は、ホスト車両の現在の速度に依存し得る。例えば、第1の速度(例えば、15km/時)で走行する車両の最大ヨー率能力は、第2の速度(例えば、30km/時)で走行する同じ車両の最大ヨー率能力とは著しく異なり得る。幾つかの実施形態では、ホスト車両の最大ヨー率能力又はホスト車両の回転半径能力の最大変化のうちの少なくとも1つは、路面の条件(例えば、道路の傾斜、道路の材料、道路上の物質の存在等)、天候条件(例えば、雪、湿気等)、車両条件(例えば、タイヤ空気圧、ブレーキパッドの状態、車両の現在の負荷等)等に基づいて決定され得る。幾つかの実施形態では、要因の1つ又は複数は、1つ又は複数のセンサの出力に基づいて決定され得る。別の例では、処理デバイスは、ホスト車両が、例えば、1人の乗員又は複数の乗員、かなりの重量の貨物、トレーラ等を含むかどうかに基づいて、最大ヨー率能力及び/又は回転半径能力の最大変化を決定し得る。
幾つかの実施形態では、最大ヨー率能力及び/又は回転半径能力の最大変化は、1つ又は複数の事前定義された要因に基づいて決定され得る。例えば、政府又は業界団体は、車両又は車両のクラスが有し得る車両の制最大ヨー率能力及び/又は回転半径能力の最大変化を規定する1つ又は複数の規制を提供し得て、少なくとも1つのプロセッサは、ホスト車両が車両制動率及び/又は規制で許可されている最大加速能力を有すると想定し得る。
プロセス5300は、ホスト車両の横方向制動距離を決定するためのステップ5312を含み得る。本開示による処理デバイスは、ホスト車両の最大ヨー率能力、ホスト車両の回転半径能力の最大変化、及びホスト車両の現在の横方向速度に基づいて、ホスト車両の横方向制動距離を決定するように構成され得る。ホスト車両の横方向制動距離は、本開示による任意の手段によって決定され得る。
幾つかの実施形態では、ホスト車両の横方向制動距離は、ホスト車両の横方向速度がゼロに達するのに必要な距離に対応し得る。横方向制動距離は、ホスト車両の現在の横方向速度から始まり、ホスト車両の最大ヨー率能力及びホスト車両に関連する応答時間中のホスト車両の回転半径能力の最大変化で目標車両に向かって行われた回転操作の結果としてのホスト車両の横方向加速度後のホスト車両の最大ヨー率能力及びホスト車両の回転半径能力の最大変化で横方向速度がゼロに達するのに必要な距離であり得る。例えば、ホスト車両の横方向制動距離は、ホスト車両が目標車両に向かって最大速度で回転すると想定した所定の期間にわたってホスト車両が走行できる距離に対応する横方向加速距離を含み得る。所定の期間は、処理デバイスによって想定される期間であり得る。例えば、制約により、処理デバイスは、ホスト車両が特定の期間(例えば、0.5ミリ秒、1ミリ秒、2ミリ秒、3ミリ秒、10ミリ秒等)加速すると想定することを要求され得る。所定の期間は、ホスト車両に関連する応答時間であり得る。例えば、所定の期間は、ホスト車両のセンサ(例えば、撮像デバイス)がホスト車両からのブレーキ応答を必要とする条件(例えば、ホスト車両の経路に入る目標車両)を検知する時間と、ホスト車両がその車両制動率でブレーキをかけ始める時間との間の遅延であり得る。この例では、最悪のシナリオにおいて、ホスト車両が遅延期間全体にわたって最大能力で横方向に加速すると想定され得る。幾つかの実施形態では、応答時間時間に関連する期間は、処理デバイスによって決定又は近似され得る。例えば、処理デバイスは、画像を受信してから横方向の移動の対応が必要であると決定するまでの時間を監視し得る。別の例として、処理デバイスは、複数のナビゲーション応答に関連する平均値、中央値、又はモード応答時間を決定し、横方向制動距離を計算するときに平均値、中央値、又はモード応答時間を使用し得る。例えば、数十、数百、又は数千のナビゲーション応答の後、処理デバイスは、検知された事象とナビゲーション応答との間の平均時間が特定の値(例えば、任意の実数のミリ秒)であると決定し、その値をホスト車両に関連する応答時間として使用し得る。
プロセス5300は、目標車両の現在の横方向速度、目標車両の最大ヨー率能力、及び目標車両の回転半径能力の最大変化を決定するためのステップ5314を含み得る。本開示による、少なくとも1つの処理デバイスは、目標車両の現在の横方向速度を決定するようにプログラムされ得る。幾つかの実施形態では、目標車両の横方向速度は、ホスト車両の横方向速度に基づいて決定され得る。例えば、ホスト車両上の1つ又は複数のセンサは、ホスト車両の速度に関連する情報、及びホスト車両に対する目標車両の加速度又は方向の変化の表示を提供し得る。幾つかの実施形態では、目標車両の横方向速度は、少なくとも1つの画像の分析に基づいて決定され得る。少なくとも1つの画像は、例えば、ステップ5302で処理デバイスによって受信され、ステップ5306で目標車両を識別するために使用された画像と同じであり得る。幾つかの実施形態では、目標車両の横方向速度を決定するために、複数の画像が分析され得る。例えば、第1の画像は、目標車両をホスト車両から第1の距離で示し得て、第2の画像は、目標車両をホスト車両から第2の距離で示し得て、処理デバイスは、距離の変化及び第1の画像と第2の画像との間の時間を使用して、目標車両に関連する横方向速度を決定し得る。幾つかの実施形態では、目標車両の横方向速度は、ホスト車両に関連するレーダシステム又はライダシステムのうちの少なくとも1つからの出力の分析に基づいて決定され得る。例えば、処理デバイスは、ホスト車両の横方向速度、及びホスト車両と目標車両との間の距離(例えば、ライダシステムによって検知される)を使用して、ホスト車両の横方向速度を決定し得る。
幾つかの実施形態では、最悪のシナリオを考慮するために、処理デバイスは、目標車両の現在の横方向速度が目標車両の検知された横方向速度よりも小さい又は大きいと想定するようにプログラムされ得る。例えば、目標車両がホスト車両の隣を走行している場合、処理デバイスは、所定の値、パーセンテージ、式等を使用して、検知された速度を低下させるようにプログラムされ得る。
本開示による、少なくとも1つの処理デバイスは、目標車両の少なくとも1つの認識された特性に基づいて、目標車両の最大ヨー率能力及び/又は回転半径能力の最大変化を想定するようにプログラムされ得る。少なくとも1つの特性は、最大ヨー率又は回転半径能力と相関し得る任意の特性であり得る。幾つかの実施形態では、目標車両の認識された特性は、上記で説明したように、車両のタイプ、クラス、メーカー、モデル、サイズ等を含み得る。
処理デバイスは、1つ又は複数のセンサ(例えば、ライダデバイス、レーダデバイス、撮像デバイス等)からの情報から少なくとも1つの特性を認識するようにプログラムされ得る。幾つかの実施形態では、目標車両の認識された特性は、少なくとも1つの画像の分析に基づいて決定され得る。例えば、目標車両の画像は、目標車両の外側にテキストを含み得て、これは、車両タイプ、車両モデル、車両サイズ、又は他の特性を決定するために使用され得る。別の例として、目標車両の画像は、他の物体との比較に基づいて車両サイズ又は他の特性を近似させるために使用され得る他の物体を含み得る。特定の一例として、大型車は制限速度標識よりも高く見え得るが、小型車は制限速度標識よりも小さく見え得る。幾つかの実施形態では、目標車両の少なくとも1つの特性は、ライダ出力又はレーダ出力のうちの少なくとも1つに基づいて決定され得る。例えば、ライダ出力は、目標車両のリアバンパまでの距離に関連する第1の距離と、目標車両のフロントバンパ(又は他の領域)までの距離に関連する第2の距離とを含み得て、それらの間の差は目標車両のサイズを推定するために使用され得る。
上記で論じたように、目標車両制動率は、車両の最大又は準最大制動率に対応し得る。目標車両制動率又は目標車両最大加速能力は、ホスト車両についてステップ5310で上記で説明した手段を含む、本開示による任意の手段によって決定され得る。例えば、目標車両制動率は、路面の検知された状態、検知された天候条件等に基づいて決定され得る。幾つかの実施形態では、車両制動率は、ホスト車両又は目標車両に関連する責任又は過失特性に依存し得る。従って、ホスト車両制動率は、目標車両制動率よりも小さくなり得るか、又はその逆になり得る。
プロセス5300は、目標車両の現在の横方向速度、目標車両の最大ヨー率能力、及び目標車両の回転半径能力の最大変化に基づいて、目標車両の横方向制動距離を決定するためのステップ5316を含み得る。目標車両の横方向制動距離は、目標車両の横方向速度がゼロに達するのに必要な距離に対応し得る。横方向制動距離は、目標車両の現在の横方向速度から始まり、目標車両に関連する応答時間中の目標車両の最大ヨー率能力及び目標車両の回転半径能力の最大変化で行われた目標車両によるホスト車両への回転操作の結果としての目標車両の横方向加速度後の目標車両の最大ヨー率能力及び目標車両の回転半径能力の最大変化で横方向速度がゼロに達するのに必要な距離であり得る。例えば、目標車両の横方向制動距離は、目標車両がホスト車両に向かって最大速度で回転すると想定した所定の期間にわたって目標車両が走行できる距離に対応する横方向加速距離を含み得る。所定の期間は、処理デバイスによって、目標車両に関連する応答時間であると想定される期間であり得る。目標車両の応答時間は、ホスト車両の応答時間時間と同じであり得るか、異なり得る。例えば、処理デバイスは、自動化車両に関連する応答時間とは著しく異なり得る、人間のドライバーに基づく応答時間を想定し得る。
プロセス5300は、計画されたナビゲーション動作が安全である場合、計画されたナビゲーション動作を実施するためのステップ5318を含み得る。ステップ5318の目的のために、計画されたナビゲーション動作が安全であると考えられ得るときの一例は、計画されたナビゲーション動作が、決定された次の状態の横方向距離が、ホスト車両の横方向制動距離と目標車両の横方向制動距離の合計よりも大きい場合のときである。この状況では、両方の車両の横方向制動距離(反動期間中の最大横方向加速度を想定した潜在的な走行距離を含む)により、ナビゲーション動作が行われた場合、衝突する前に車両が互いに離れるように操舵できるため、ホスト車両と目標車両との間に衝突は発生しない。
幾つかの実施形態では、処理デバイスは、決定された次の状態の横方向距離が、ホスト車両の横方向制動距離と目標車両の横方向制動距離との合計よりも少なくとも所定の最小距離だけ大きい場合に、計画されたナビゲーション動作を実施するように構成され得る。所定の最小距離は、ホスト車両と他の車両との間で維持される所定の横方向分離距離に対応し得る。例えば、自律ナビゲーションシステムの制約により、自律車両が他の車両の指定された距離内(距離未満)に入らないように規定され得る。所定の分離距離は、任意の寸法の距離であり得る。幾つかの実施形態では、所定の分離距離は、少なくとも1メートル、2メートル、5メートル等である。幾つかの実施形態では、所定の距離は、例えば、ホスト車両が走行している速度、ホスト車両の位置(例えば、都市の道路、地方の幹線道路等)に応じて変化し得る。
他の実施形態では、図52Bに関して上記で説明したように、処理デバイスは、次の状態の横方向距離に関係なく、計画されたナビゲーション動作が、ホスト車両と目標車両との間の安全縦方向距離をもたらす場合、計画されたナビゲーション動作を実施するようにプログラムされ得る。例えば、安全縦方向距離は、ホスト車両の縦方向停止距離と目標車両の縦方向停止距離の合計以上であり得る。ホスト車両の停止距離は、ホスト車両の最大縦方向ブレーキ能力及びホスト車両の現在の縦方向速度に基づき得て、ホスト車両の停止距離は、ホスト車両の現在の縦方向速度から始まるホスト車両に関連する応答時間中に、ホスト車両がホスト車両最大加速能力で走行できる距離に対応するホスト車両加速距離を更に含み得る。目標車両の停止距離は、目標車両の最大縦方向ブレーキ能力及び目標車両の現在の縦方向速度に基づき得て、目標車両の停止距離は、目標車両の現在の縦方向速度から始まる目標車両に関連する応答時間中に、目標車両が目標車両最大加速能力で走行できる距離に対応する目標車両加速距離を含み得る。
横断歩道での歩行者に対するナビゲーション
本開示は、横断歩道の近くでホスト車両をナビゲートするためのシステム(ナビゲーションシステムとも呼ばれる)を説明する。ナビゲーションシステムは、自律ホスト車両又は半自律ホスト車両が走行する道路に沿った信号機を識別するように構成され得る。ナビゲーションシステムは、道路に沿った様々な信号機の位置に関する情報を様々な車両から受信し、システム及び車両が利用可能な疎なマップ上に信号機の位置をマッピングし、車両から信号機に関連する情報、ならびに歩行者、及び横断歩道に関連する情報を受信するように構成され得る。例えば、自律車両が横断歩道に近づくと、システムは、関連する信号機の状態(例えば、信号機が青信号を含む)、横断歩道に歩行者がいるかどうか、歩行者の位置、歩行者の動き、歩行者の予測される将来の動き等に関連する情報を受信するように構成され得る。
ナビゲーションシステムは、効率的な情報処理のために、複数のコンピューティングデバイス、プロセッサ、データストレージデバイス、データベース等を含み得る。ナビゲーションシステムは、非一時的ストレージデバイス又はコンピュータ可読媒体を含み得る。幾つかの実施形態では、ストレージデバイスは、ハードドライブ、コンパクトディスク、フラッシュメモリ、磁気ベースのメモリデバイス、光学ベースのメモリデバイス等を含み得る。ナビゲーションシステムは、ナビゲーションシステムに関連する1つ又は複数の非一時的ストレージデバイスに記憶され得る命令を実行するように構成される1つ又は複数のプロセッサを含み得る。ナビゲーションシステムは、分散型ナビゲーションシステム及び車両ナビゲーションシステムを含み得る。分散型ナビゲーションシステムは、特定の車両に接続し得ない複数の構成要素を含み得る。構成要素は、ネットワークを介して通信し得て、ネットワークは、幾つかの場合、5Gネットワークであり得る。分散型ナビゲーションシステムは、分散型ナビゲーションシステムと車両ナビゲーションシステムとの間の情報送信に関連するネットワーク遅延時間を短縮するために、様々な道路の近くに配置された複数の処理コンピューティングシステムを含み得る。車両ナビゲーションシステムは、車両に関連する車両制御システムの一部であり得る。様々な実施形態では、車両ナビゲーションシステム及び分散型ナビゲーションシステムは、任意の適切な無線通信(例えば、WiFi、4G、5Gや、可視光、赤外線、マイクロ波、電波等に基づく通信)を介して、自律型、半自律型、及び/又は人間が操作する車両のナビゲーションの任意の側面に関連する情報を交換し得る。車両ナビゲーションシステム及び分散型ナビゲーションシステムにより、全体的なナビゲーションシステムが形成される。
ナビゲーションシステム(例えば、車両ナビゲーションシステム及び分散型ナビゲーションシステム)は、ホスト車両の操舵、ブレーキ、又は加速を含み得る、ホスト車両のナビゲーション動作を決定し得る。ナビゲーション動作は、操舵率、制動率、又は加速率等のパラメータを含み得る。ナビゲーション動作は、車両の動きに直接関係し得ない動作を含み得る。例えば、そのようなナビゲーション動作は、ヘッドライトのオン/オフ、アンチロックブレーキのオン/オフ、トランスミッションギアの切り替え、車両サスペンションのパラメータの調整、車両警告灯のオン/オフ、車両ターンライト又はブレーキライトのオン/オフ、可聴信号の生成等を含み得る。様々な実施形態では、ナビゲーション動作は、ナビゲーションシステムに利用可能なナビゲーションデータに基づく。
ナビゲーションシステムが利用できるナビゲーション情報は、ホスト車両の近くにいる様々な車両、信号機、交通信号、及び歩行者に関する適切な情報を含み得る。ナビゲーション情報の例は、ホスト車両の近くの様々な自律車両及び人間が操作する車両の位置、車両の速度、車両の加速度、車両の長さ、高さ、幅、及び質量、車両の加速能力及び制動能力、車両の予測軌道、車両によって実行されるナビゲーション動作、信号機の位置、信号機の状態、横断歩道の位置、交通標識(道路表面標識を含む)の位置、歩行者の位置、歩行者の動き等を含み得る。
様々な実施形態では、ナビゲーションシステムは、ホスト車両の環境を表す少なくとも1つの画像を画像捕捉デバイスから受信し得る。画像捕捉デバイスは、可視光を捕捉するためのカメラであり得る。しかし、幾つかの場合、画像捕捉デバイスは、赤外線カメラ、紫外線カメラ、マイクロ波検出デバイス、ライダ、レーダ等であり得る。様々な実施形態では、画像捕捉デバイスは、1つ又は複数のカメラを含み得る。例えば、画像捕捉デバイスは、異なる方向を指している複数のカメラを含み得る。画像捕捉デバイスによって捕捉された画像は、ホスト車両の前の環境、ホスト車両の後ろの環境、ホスト車両の左側の環境、ホスト車両の右側の環境、ホスト車両の前の道路の環境等を表し得る。更に、画像捕捉デバイスは、道路に沿った信号機の画像、道路の近くの歩行者の画像、横断歩道の画像等を捕捉し得る。幾つかの場合、画像捕捉デバイスは、選択された方位角及び極角からホスト車両の環境の画像を捕捉するために移動可能(例えば、回転可能)であり得る。様々な実施形態では、異なる車両からの画像捕捉デバイスから収集された画像は、更なる分析のために分散型ナビゲーションシステムに送信され得る。収集された画像はまた、様々な車両ナビゲーションシステムに配信され得る。
ナビゲーションシステムは、画像捕捉デバイスによって捕捉された少なくとも1つの画像の分析に基づいて、少なくとも1つの画像内の横断歩道の表現を検出し得る。例示的な実施形態では、横断歩道は、任意の適切な認識技術(例えば、ニューラルネットワークに基づく機械画像認識技術)を使用して画像内で認識され得る。例えば、横断歩道は、道路の特徴的なマーク(例えば、車道を横切る車道の表面に描かれた白い長方形の領域)によって認識され得る。幾つかの場合、横断歩道は、ホスト車両の位置に関する追加情報に基づいて画像内で識別され得る。例えば、ナビゲーションシステムは、ホスト車両の位置を決定し、ホスト車両の位置に近接する横断歩道を識別し得る。例えば、ナビゲーションシステムは横断歩道の位置に関する情報を維持し得る。例示的な実施形態では、ナビゲーションシステムは、ホスト車両の位置、横断歩道の位置を決定し、横断歩道の画像を正しく捕捉するために、画像捕捉デバイスを方向付けし得る。幾つかの場合、ホスト車両の位置、及び横断歩道の近くに示された他の様々な車両の位置に基づいて、ナビゲーションシステムは、異なる車両の画像捕捉デバイスを使用して異なる角度から横断歩道の画像を捕捉するように構成され得る。次いで、捕捉された画像は、横断歩道の近くの車両に配信され得る。
幾つかの実施形態では、画像捕捉デバイスを横断歩道に設置し得る。例えば、画像捕捉デバイスは、信号機、交通信号機等の一部であり得る。これらのデバイスはまた、横断歩道の画像を捕捉し、横断歩道の近くに位置するホスト車両ナビゲーションシステムに画像を送信するために、ナビゲーションシステムによって使用され得る。
様々な実施形態では、ナビゲーションシステムは、横断歩道の1つ又は複数の画像を分析し、画像の分析に基づいて、歩行者が横断歩道の(又はその近くに)存在するかどうかを決定し得る。歩行者は、任意の適切な画像認識技術(例えば、機械学習技術)を使用して識別され得る。例示的な実施形態では、歩行者は、異なる時間に撮影された横断歩道の画像を比較することによって、横断歩道に設置された画像捕捉デバイスによって識別され得る。例えば、第1の時点では画像に歩行者の表現が含まれていないが、第2の時点では画像が歩行者の表現が含まれている場合、ナビゲーションシステムは、歩行者が横断歩道の近くにいると決定し得る。更に、横断歩道の複数の画像により、横断歩道での歩行者の識別が向上し得る。例えば、横断歩道に近づいている歩行者の複数の画像は、横断歩道での歩行者を識別するのに役立ち得る。様々な実施形態では、ナビゲーションシステムは、歩行者の表現が、1つ又は複数の画像捕捉デバイスによって捕捉される少なくとも1つの画像に出現しているかどうかを決定し得る。
横断歩道の画像を分析して歩行者を識別することに加えて、ナビゲーションシステムは、少なくとも1つの画像の分析に基づいて、ホスト車両の環境内の信号機の存在を検出し得る。信号機は、ホスト車両の環境(例えば、横断歩道の近く、ホスト車両の左又は右等)で検出され得る。ナビゲーションシステムは、必ずしもホスト車両の環境の画像の分析に基づき得ない任意の適切な手法を使用して、ホスト車両の環境内の信号機の存在を検出し得る。例えば、ホスト車両の環境内の信号機の存在の検出は、検出された信号機によって送信される1つ又は複数の信号に基づき得る。しかし、幾つかの場合、検出された信号機の状態は、捕捉された画像の分析に基づいて決定され得る。例えば、照明しているランプに関連する色を検出して、信号機が停止状態であるか(例えば、赤色光を検出した)、進行状態であるか(例えば、青色光を検出した)等を決定し得る。信号機ハウジング内のランプの位置を使用して、信号機の状態を決定又は示すこともでき、幾つかの管轄区域では、進行状態が最も低い垂直位置のランプの照明に関連付けられ得て、停止状態が最も高い垂直位置のランプに関連付けられ得る。
例示的な実施形態では、信号機は、無線通信を使用して自律車両と通信して、信号機の状態(又は特定のホスト車両もしくはホスト車両の走行レーンに対する信号機の関連性)の決定を可能にし得る。無線通信は、無線周波数、赤外線周波数、又は紫外線周波数の電磁界を使用して、無線インタフェースを介して伝送を1つ又は複数のネットワーク(例えば、セルラ、インターネット等)と交換するように構成される1つ又は複数のデバイスを含み得る。加えて又は或いは、無線通信は、磁場、電場、又は音を使用し得る。そのような送信は、信号機と信号機の近くの自律車両との間の通信を含み得るか、及び/又は、幾つかの場合、そのような通信は、信号機と分散型ナビゲーションシステムとの間、及び分散型ナビゲーションシステムと自律車両の車両ナビゲーションシステムとの間の通信を含み得る。音声通信(例えば、超音波等の音波を使用する通信、レーザベースの通信等)を含み得る、信号機と車両との間の様々な他の形態の通信が使用され得ることに留意されたい。幾つかの場合、通信は時間依存の可視通信(例えば、LED光源によって生成される時間依存の信号)を含み得る。
様々な実施形態では、信号機は、自律車両への信号を生成するための信号機通信システムを含み得る。例えば、信号機通信システムは、「停止」信号、「進行」信号、「減速」信号、「加速」信号等を生成するための信号生成モジュールを含み得る。例えば、「停止」信号は、自律車両が急停止する必要があることを示し得る。そのような信号は、例えば、赤信号に対応し得る。「進行」信号は、車両が移動を開始又は継続する必要があることを示し得る。そのような信号は、例えば、青信号に対応し得る。「減速」信号は、自律車両が減速する必要があることを示し得る。幾つかの実施形態では、「減速」信号は、車両に必要な速度又は車両の減速度を含み得る信号に関連する情報に組み込まれた追加のパラメータを含み得る。例示的な実施形態では、「減速」信号は、黄信号に対応し得る。「加速」信号は、自律車両が速度を上げる必要があることを示し得る。例示的な実施形態では、信号機通信システムは、信号機が特定の状態を維持する期間、及び/又は信号機が特定の状態を維持する残りの時間を自律車両車に送信し得る。例えば、信号機が青色の状態の場合、30秒以内に状態が黄色の状態に切り替わることが自律車両に送信され得る。
幾つかの場合、1つ又は複数の自律車両が信号機と相互作用し、信号機の状態のタイミング変更を要求し得る。例えば、道路の横断歩道に歩行者が存在しない場合、自律車両は、無線通信を介して信号機に要求を送信することにより、信号機にその状態を維持するように要求し得る。ナビゲーションシステムは、自律車両からの様々な要求を処理し、信号機の状態のタイミングを調整し得る。上記で説明した様々な信号は例示であり、様々な他の信号も同様に組み込まれ得ることに留意されたい。例えば、信号機で生成された信号は、車両が右に曲がる、左に曲がる、レーンを変更する、又はUターンする必要があることを示し得る。
様々な実施形態では、信号を生成することに加えて、信号機通信システムは、様々な車両からナビゲーション情報を受信し、受信した情報に基づいて信号を生成し得る。例えば、信号機通信システムは、ホスト車両の速度及び信号機からのホスト車両の距離を受信し得て、ホスト車両の速度及び信号機からの距離に基づいて、ホスト車両に対する減速要求を生成し得る。
様々な実施形態では、信号機無線通信は、信号機との間の通信を認証するため、ならびに信号機と自律車両との間の安全な通信を提供するための様々な方法を含み得る。加えて又は或いは、安全な通信は、自律車両と分散型ナビゲーションシステムとの間で確立され得る。例示的な実施形態では、安全な通信は、秘密鍵及び公開鍵を使用することによって確立され得る。例えば、自律車両及び分散型ナビゲーションシステムは、安全な情報を暗号化するために公開鍵を交換し得て、情報の復号化に秘密鍵を使用し得る。同様に、自律車両は、信号機通信システムと公開鍵を交換し得る。幾つかの実施形態では、信号機通信システムは、分散型ナビゲーションシステムを介して証認し得る。例えば、信号機通信システムは、分散型ナビゲーションシステムのサーバに識別情報及び/又はパスワード情報を提供し得て、サーバは、信号機通信システムに安全なトークンを発行し得る。幾つかの実施形態では、サーバは、信号機通信システムの公開鍵を使用して安全なトークンを暗号化し、暗号化されたトークンを信号機通信システムに送信し得る。更に、サーバは、自律車両に関連付けられた公開鍵を使用して安全なトークンを暗号化し、暗号化されたトークンを自律車両に送信するように構成され得る。様々な実施形態では、交通通信システムは、自律車両に送信される通信データパケットに安全なトークンを含め、車両に認証を提供し得る。加えて又は或いは、交通通信システムは、サーバに送信される通信データパケットに安全なトークンを含め得る。同様の方法で、自律車両は、信号機通信システムに送信される通信データパケットに安全なトークンを含め得る。加えて又は或いは、自律車両は、サーバに送信される通信データパケットに安全なトークンを含め得る。上記で説明した安全な通信プロセスは例示的なものであり、他の様々な手法を使用し得ることに留意されたい。様々な自律車両、信号機、及び分散型ナビゲーションシステム間の認証された安全な通信(及び様々な自律車両間の安全な通信)により、様々な自律車両のナビゲーションシステムがサードパーティ(例えば、自律車両の動向を変えようとしているパーティ)によって侵害され得ないことを保証し得る。
様々な実施形態では、ナビゲーションシステムは、検出された信号機がホスト車両及び横断歩道に関連するかどうかを決定し得る。信号機の関連性の決定は、ナビゲーションシステムによって収集された画像の分析に基づき得る。例えば、捕捉された画像から、捕捉された画像内に表される道路の特定の走行レーンの上にある特定の信号機を識別し得る。そのような情報により、ホスト車両のプロセッサは、検出された信号機がホスト車両に関連しているか、又は関連し得るかどうかを決定することができる。
加えて又は或いは、信号機の関連性は、ナビゲーションシステムに利用可能なナビゲーション情報(例えば、信号機の位置、横断歩道の位置、ホスト車両の位置、ホスト車両から隣接する信号機へのベクトル等)を使用して決定され得る。例示的な実施形態では、横断歩道及びホスト車両に対する信号機の関連性は、ナビゲーションシステムによってアクセス可能なマップの1つに含まれる信号機の関連性情報に基づいて決定され得る。例えば、クラウドソーシングを通じて、検出された信号機に関連付けられた識別子とそれに対応する位置を1つ又は複数のマップ(例えば、REMマップ)に格納し得る。この情報に加えて、道路の特定のレーンに対する信号機の関連性もマップに保存され得る。この情報は、例えば、検出された信号機X及びYが青信号の状態であると決定されたときに、車がレーン1、2、3を使用して交差点を通過した以前の走行から収集されたクラウドソーシング情報に基づき得る。当然ながら、道路の特定のレーンに対する信号機の関連性を示すために、車両の挙動を追跡して信号機の状態に関連付ける方法には、他にも多くの例がある。
信号機の関連性(特に、信号機の近くで検出された横断歩道に関して)は、信号機の検出された状態及び横断歩道の近くの他の様々な車両の動きに基づいて同様の方法で決定され得る。例えば、信号機の状態が赤信号の状態に対応し、車両が横断歩道に入る前に信号機の前で停止した場合、ナビゲーションシステムは、信号機が横断歩道及びホスト車両が横断するレーンに関連していると決定し得る。幾つかの実施形態では、ナビゲーションシステムは、様々な信号機の関連性を決定するために、信号機に対応する様々な状態、ならびに様々な自律車両からのナビゲーション情報を受信するように構成され得る。例えば、第1の車両は、信号機の第1の状態及び第1の車両の動きに関連する第1のナビゲーション情報をナビゲーションシステムに伝達し得て、第2の車両は、信号機の第2の状態及び第2の車両の動きに関連する第2のナビゲーション情報をナビゲーションシステムに伝達し得る。この情報は、特定の道路のREMマップを構築するために使用される情報のプールに組み込み得て、このプールは、信号機の位置を、レーン、横断歩道等の関連性と共に保存できる。
様々な実施形態では、信号機は、特定の横断歩道に関連するものとして決定され得る。例えば、画像分析に基づいて、特定の信号機は、車両の走行レーンにほぼ垂直な方向に横断歩道に面していると決定され得る。幾つかの場合、検出された信号機は、特別な記号(例えば、歩いている人の記号、立っている人の記号、停止要求を示す手のひらの記号等)を表示し得る。これらの機能を分析して、横断歩道に対する信号機の関連性を識別し得る。この決定は、ホスト車両が検出された横断歩道に対してナビゲートするのを支援するために、ホスト車両がナビゲートして、交差点を通過するときにリアルタイムで行われ得るか、又は、信号機の関連性を示すマップを生成するために、以前の複数の走行からのドライブ情報が収集され、分析され、使用される捕捉後のプロセスで分析され得る。そのようなマップは、例えば、画像で検出された信号機が現在の走行レーンに関連しているかどうか、及び/又は検出された信号機が捕捉された画像で検出された横断歩道をナビゲートしている歩行者に関連する歩行者用信号であるかどうかを決定するために、特定のホスト車両によって使用され得る。上記で論じた信号機の様々な関連性基準は例示的なものであり、ナビゲーションシステムを利用する信号機の他の関連性基準を使用し得ることに留意されたい。例えば、幾つかの場合、道路のレーンは、ナビゲーションシステムによって数値、英数字値、又はその他の適切な識別子によって識別され得る。ナビゲーションシステムは、レーンごとに関連する信号機を識別し得る。そのような場合、信号機とホスト車両との関連性を決定することは、ホスト車両のレーンを決定することになる。様々な実施形態では、ナビゲーションシステムは、例えば、ホスト車両の位置、道路の左又は右の縁石までの距離等を使用して、ホスト車両が横断するレーンのためのレーン識別子を決定し得る。加えて又は或いは、レーンは、ホスト車両ナビゲーションシステムによって検出及び識別され得るレーンに沿って配置されたその識別子に関連する印を有し得る。
特定の横断歩道への信号機の関連性はまた、特定の近くの信号機が赤色の状態で、特定の横断歩道を歩いている歩行者が、捕捉画像で検出された以前の走行情報に基づいて決定され得る。そのような情報により、信号機が赤色の状態の場合、歩行者は横断歩道に自由に入ることができると決定でき得る。そのような情報はまた、同じ信号が青色の状態にある場合(及び車が信号を自由に通過できる場合)、歩行者が横断歩道に入るべきではないことを示唆し得る。この情報は、REMマップに保存して(例えば、近くの横断歩道との信号機の関連性の指標として)、マッピングされた横断歩道及び信号機に対してナビゲートするために車両が使用することもできる。
上記で論じたように、横断歩道の近くの信号機は、無線通信を使用して様々な車両と通信するように構成され得る。例えば、信号機は、信号機が関連するレーンのレーン識別子をホスト車両ナビゲーションシステムに伝達し得る。ホスト車両ナビゲーションシステムは、信号機から受信したレーン識別子を、ナビゲーション情報及び/又は信号機の表現を含む横断歩道の画像の分析を介してホスト車両によって取得されたレーン識別子と比較し得る。信号機から受信したレーン識別子が、横断歩道の画像の分析又はナビゲーション情報の分析等を介してホスト車両が取得したレーン識別子と一致する場合、信号機はホスト車両及び横断歩道に関連していると決定され得る。
様々な実施形態では、1人又は複数の歩行者が横断歩道の近くの少なくとも1つの画像に現れると決定されるとき、ナビゲーションシステムは、検出された横断歩道に対する歩行者の近接を決定し得る。例えば、横断歩道又は横断歩道の近くの画像を分析することによって、歩行者の近接を決定し得る。幾つか場合、横断歩道に近づく歩行者と道路の縁石(横断歩道が始まる)との間の距離の推定値は、複数の画像を分析し、複数の画像から得られた異なる距離推定値を平均することによって得られる平均距離を求めることによって改善され得る。代替の実施形態では、横断歩道は、歩行者の存在及び検出された横断歩道に対する歩行者の近接を検出するための様々なセンサを含み得る。そのようなセンサは、位置センサ、レーダ、ライダ等を含み得る。センサによって取得されたデータは、更なる分析及び処理のためにナビゲーションシステムに送信され得る。
ナビゲーションシステムは、少なくとも1つの運転ポリシ、検出された横断歩道に対してホスト車両をナビゲートさせるための計画されたナビゲーション動作に基づいて決定するように構成され得る。運転ポリシは、例えば、横断歩道の近く(及び他の場所)で自律車両を運転するための一連の規則/制約であり得る。例えば、運転ポリシは、横断歩道に関連付けられた交差点をナビゲートするためのガイドライン(例えば、交差点をどのくらいの速度で走行するのか、歩行者及び他の車両からどれだけ離れるのか、停車が必要な場合、横断歩道に対してどこで停車すべきなのか等)を含み得る。運転ポリシはまた、検出された関連する信号機の状態を考慮して、検出された横断歩道に対してナビゲートするための規則又はガイドラインを具体化し得る。例えば、上記で述べたように、横断歩道及び信号機は、(多くの場合、単一の捕捉された画像内の)捕捉された画像の分析に基づいて検出され得る。検出された信号機と検出された横断歩道との関連性は、例えば、信号機の位置(例えば、マッピングされた信号機が画像で検出された信号機に対応していることを確認するため)及び信号機とレーン/横断歩道との関連性を保存するREMマップにアクセスすることによって決定し得る。代替又は追加として、信号機の関連性情報は、検出された信号機から送信された関連性情報に基づいて(又は他の任意の適切な技術によって)決定され得る。
信号機が特定の横断歩道に関連しているという決定を考慮して、運転ポリシは、信号機の検出された状態及び横断歩道の検出された状態に基づいて、ホスト車両のための適切なナビゲーション動作を決定し得る。例えば、そのようなナビゲーション動作は、赤信号で横断歩道の前に所定の距離で停止すること、信号が青色で横断歩道の近くに歩行者が検出されていないときに横断歩道を走行する場合、第1の速度に減速すること(又は、ホスト車両の速度を第1の速度に維持すること)、及び信号が青色で横断歩道の近くに少なくとも1人の歩行者が検出された場合、第2の速度(例えば、第1の速度より遅い)に減速することを含み得る。運転ポリシは、横断歩道のタイプ、道路の幅、道路の車レーン数、ホスト車両の前後左右の車両数、他の車両が横断歩道の近くで移動しているか静止しているか、車両の推定軌道、他の車両の速度、車両のタイプ(例えば、横断歩道の近くの車両が大きいか、小さいか、遅いか、速いか)、交差点の存在、交差点の道路の数、交差点の横断歩道の数等の1つ又は複数に依存し得ることを留意されたい。更に、運転ポリシは、横断歩道での複数の歩行者のうちの1人又は複数、横断歩道での歩行者の位置、様々な歩行者の推定される動き、歩行者の推定される軌道等に依存し得る。
横断歩道の近くでのナビゲーション動作の決定は、運転ポリシに関係なく、様々な要因に基づき得る。幾つかの実施形態では、ナビゲーション動作は、ソフトウェアコードとして実装された一連の命令を含み得るルールベースのコンピュータモデルを使用して決定され得る。加えて又は或いは、ナビゲーション動作は、ニューラルネットワーク、敵対的生成ニューラルネットワーク(GAN)、情報最大化GAN(InfoGaN)等の機械学習モデルを使用して決定され得る。機械学習モデルは、様々なセンサ(例えば、例示的な車両の環境の画像を収集するための画像センサ、車両の環境に関連する音声データを収集するためのセンサ等)から収集されたトレーニングデータを使用してトレーニングされ得る。更に、トレーニングデータは、人間のドライバーによって実行されるナビゲーション動作、又は例示的な車両の環境の画像に対応するトレーニングされた機械学習モードによって実行されるナビゲーション動作を含み得る。例示的な実施形態では、例示的な車両のナビゲーション動作は、加速度センサ、車両のハンドルの位置に関する情報を収集するためのセンサ、ブレーキに関する情報を収集するためのセンサ、車両のトランスミッションギアに関する情報を収集するためのセンサ等の例示的な車両の様々なセンサのデータを分析することによって推定され得る。次いで、機械学習モデルは、例示的な車両の環境の画像及び/又は音声の入力に基づいて、人間のドライバーによって実行されるナビゲーション動作を複製するようにトレーニングされ得る。例示的な実施形態では、センサによって収集された視覚データ及び音声データは、ニューラルネットワーク等の機械学習モデルに入力され得て、ニューラルネットワークは、車両の加速度データ及び車両の車輪の向きを出力として返し得て、次いで、この出力は、車両の1つ又は複数の運転指示を生成するために使用され得る。
様々な実施形態では、計画されたナビゲーション動作の決定は、検出された信号機の決定された状態及び検出された横断歩道に対する歩行者の決定された近接性に基づき得る。例示的な実施形態では、検出された信号機が青色であり、検出された横断歩道の近くに歩行者が検出されない場合、ナビゲーションシステムは、横断歩道を減速して走行することを含むナビゲーション動作を決定し得て、車両速度は、車両の環境(例えば、車両周辺の天候条件、時刻、車両周辺の視界、横断歩道が混雑した交差点にあるかどうか、横断歩道の近くに車両が存在するかどうか等)に関連する条件に依存し得る。換言すると、信号状態が青色で横断歩道の近くに歩行者が検出されない場合、ホスト車両が横断歩道を通過する前又は通過中に、ホスト車両が横断歩道に入る歩行者に遭遇する可能性は低いと推定され得る。検出された信号が青色で、横断歩道を横断する歩行者が検出された場合、車両は、車両の減速及び停止を含むナビゲーション動作を決定し得る。すなわち、信号が青色で、ホスト車両が優先通行権を有していることを示唆している場合でも、横断歩道で検出された歩行者又は横断歩道に進入した歩行者との衝突の危険性がないようにホスト車両をナビゲートするべきである。他の場合、青色の信号が検出されたが、横断歩道の近くで(例えば、ホスト車両が横断歩道に到達する及び/又は横断するのにかかる時間内に歩行者が横断歩道に向かって移動する可能性がある距離に関連し得る、所定距離内で)歩行者も検出された場合、ナビゲーションシステムは、横断歩道に入る歩行者が検出された場合に車両が急停止することを可能にするように選択され得る安全な速度まで車両を減速させることを決定し得る。幾つかの場合、ナビゲーション動作は、車両と、横断歩道に接近している、又は横断歩道の近くに立っていることが検出された歩行者との間に空間を作成するため、車両を道路の別のレーンに移動することを含み得る。例示的な実施形態では、検出された信号が赤色である場合、ナビゲーションシステムは、横断歩道に到達する前に車両を減速及び停止することを含むナビゲーション動作を決定し得る。従って、ホスト車両を検出された横断歩道に対してナビゲートさせるためのナビゲーション動作を決定する際に、ホスト車両のプロセッサは、検出された信号機の状態(及び検出された信号機が、ホスト車両の走行レーン及び/又は検出された横断歩道に関連すると決定されたかどうか)、及び検出された横断歩道の近くで歩行者が検出されたかどうかの両方に依存し得る。
様々な実施形態では、ナビゲーション動作を決定した後、ナビゲーションシステムは、車両制御システムと相互作用して、ホスト車両の1つ又は複数のアクチュエータシステムに計画されたナビゲーション動作を実施させ得る。例示的な実施形態では、ホスト車両のアクチュエータは、車両操舵アクチュエータ(例えば、ホスト車両の操舵を担当するシステム)、車両の加速及びブレーキアクチュエータ(例えば、ホスト車両のブレーキ又は加速を担当するシステム)、音響アクチュエータ(例えば、音を出すことを担当するシステム)、光アクチュエータ(例えば、光を点滅させることを担当するシステム)等を含み得る。
幾つかの横断歩道を含む道路の例を図54に示す。図54は、横断歩道5451、5452、及び5453を含む交差点5401を示す。交差点5401は、車両5441が走行するレーン5403及び車両5442が走行するレーン5404等の複数のレーンを含む。車両5441は、左の縁石(縁石5407)及び右の縁石(縁石5402)を含み得る道路5413に沿って走行する。図54に示すように、交差点5401には、信号機5430、5432、5433等の複数の信号機がある。例示的な実施形態では、信号機5430は、交差点5401の画像を捕捉するための画像捕捉デバイス5460を含み得る。幾つかの実施形態では、捕捉デバイス5460は、交差点の様々な要素を捕捉するための複数のカメラを有し得る。例えば、捕捉デバイス5460の1つのカメラは、横断歩道5451及び横断歩道5451の近くの道路の領域を捕捉し得て、捕捉デバイス5460の第2のカメラは、横断歩道5452及び横断歩道5452の近くの道路の領域を捕捉し得て、第3のカメラは横断歩道5453及び横断歩道5453の近くの道路の領域を捕捉し得る。更に、捕捉デバイス5460は、歩行者5420、5442、5421、5423、及び5424等の歩行者に焦点を合わせるためにズームし、交差点5401を横断する自転車(例えば、自転車5425)ならびに交差点5401に接近する車両(例えば、図54に示す車両5441及び5442)の画像を撮像し得るカメラを含み得る。幾つかの実施形態では、捕捉デバイス5460は、歩行者の顔の表情に焦点を合わせるためにズームし得る、及び/又は歩行者の動き等を決定するための情報をナビゲーションシステムに提供するために、歩行者の複数の画像を捕捉し得る。様々な実施形態では、前述のように、5401の交差点の様々な画像を捕捉するために、車両5441は、画像捕捉デバイス5461を有し得て、車両5442は、画像捕捉デバイス5462をそれぞれ有し得る。画像捕捉デバイス5461及び5642は、複数の可動カメラを有し得て、画像捕捉デバイス5460と同様に、交差点の異なる部分の画像を捕捉し得る。
図54は、様々な歩行者が異なる能力、速度、予期される軌道等を有し得ることを示す。例えば、歩行者5422は、信号5432が赤信号(すなわち、歩行者が横断歩道5451を横断することを禁止する信号)になる前に、横断歩道5451に入り、横断歩道5451を横断すると決心し得る。他方では、歩行者5420は静止しているように見え、横断歩道5451に入る可能性は低くなり得る。歩行者5424はスケートボードに乗っている若者であり得て、その動きは予測し得ない。歩行者5421は、横断歩道5453をゆっくりと予測どおりに横断する老紳士であり得る。同様に、歩行者5423は、移動が制限されている車椅子の人である(例えば、横断歩道5453を横断するときに急速に方向を変える可能性は低い)。これらの検出された特性のいずれか又は全ては、例えば、ホスト車両が横断歩道に接近又は横断することを許可される速度を含む、ホスト車両のナビゲーション動作を決定する際に利用され得る。
様々な実施形態では、ナビゲーションシステムは、横断歩道で識別された歩行者の年齢、性別、予期される動き、動きの予測可能性を評価するための機械学習モデルを含み得る。例えば、ナビゲーションシステムは、1つ又は複数の画像捕捉デバイス(例えば、デバイス5460、5461、及び5462)によって取得された画像を入力として受け取り、歩行者の年齢、歩行者の動きベクトル、歩行者の位置、歩行者の予期される軌道、不確実な軌道エンベロープ(例えば、歩行者5424の軌道エンベロープ5471、又は歩行者5422の軌道エンベロープ5472)等を返すことができる機械学習モデルを含み得る。軌道エンベロープは、歩行者の可能な軌道を示し得る。図54に示すように、軌道エンベロープ5471は、歩行者5424に対しては広く、横断歩道5452及び5453をカバーし得て、一方、エンベロープ5472は、歩行者5422に対しては狭く、横断歩道5451をカバーし得る。そのような識別された特性はまた、検出された横断歩道に対するホスト車両のナビゲーション動作(例えば、横断歩道に対してナビゲートする際に、横断歩道の前にホスト車両を停止するかどうか、ホスト車両を減速するかどうか、ホスト車両に適切な速度はどの程度なのか等)を決定する際に使用され得る。
例示的な実施形態では、機械学習モデルは、所与の歩行者の最も可能性の高い軌道を確立するために、異なる年齢、異なるサイズ、異なる性別、異なる身体能力等の様々な歩行者の動きを観察することによってトレーニングされ得る。最も可能性の高い動きを決定することに加えて、機械学習方法はまた、可能な動きの範囲、最も可能性の高い動きの尤度、最も可能性の高い動きからの可能性のある逸脱の尤度等を出力し得る。例示的な実施形態では、ナビゲーションシステムが歩行者の不規則な動きを観察する場合、歩行者の更なる動きが不規則になり得ると結論付け得る。或いは、ナビゲーションシステムは、歩行者の一部(例えば、歩行者5421)が一貫した動きをし得ると結論付け得る。
上記で説明した機械学習モデルは単なる例示であり、歩行者の動きを予測するための他の適切な手法を使用し得る。例えば、ルールベースの手法を使用し得るか、又は機械学習手法と組み合わせたルールベースの手法を使用し得る。
ナビゲーションシステムは、ホスト車両が横断歩道と交差する前に、歩行者が横断歩道に入る可能性の評価を行い得る。例えば、1つ又は複数の画像捕捉デバイス(例えば、ホスト車両、横断歩道の近くの他の車両に関連付けられた画像捕捉デバイス、横断歩道の近くに設置された画像捕捉デバイス等)によって捕捉された画像に基づき、ナビゲーションシステムは、歩行者が横断歩道に近づいているのか、横断歩道から遠ざかっているのかを判断し得る。幾つかの場合、ナビゲーションシステムは、歩行者の可能な軌道を決定し、統計的に安全であり、ホスト車両が道路5413に沿って走行することを可能にするホスト車両のナビゲーション動作を決定し得る。統計的に安全なナビゲーション動作は、交差点5401での歩行者のいずれかの軌道が予測できない場合、99%の確率で安全であると推定される動作を含み得る。但し、歩行者の軌道が予測可能である場合、ナビゲーション動作は大幅に安全であると判断され得る(例えば、99.99999%の確率で安全)。歩行者の安全性は歩行者の動作に依存しており、歩行者の動作に関わらず、道路の安全性が完全に保証され得ないことに留意されたい。歩行者の観察又は予測された動作/軌道は、ホスト車両のナビゲーション動作を決定する際に、信号機の検出された状態と組み合わせられ得る。
様々な実施形態では、ホスト車両の計画されたナビゲーション動作は、検出された信号機が青色の状態であり、検出された横断歩道に対する歩行者の決定された近接性が、ホスト車両と横断歩道が交差する前に歩行者が横断歩道に入る可能性はないことを示している場合、歩行者によって誘発される調整(すなわち、検出された信号機の状態に対する歩行者の予期しない動作(例えば、車両関連の信号が青色の状態、すなわち、歩行者側は停止信号になっていることが示唆されているときに横断歩道に入る歩行者)を考慮しても、歩行者との衝突を回避するか、又は歩行者との衝突の危険性を低減するように決定されるナビゲーション動作)なしに横断歩道を横断することを含み得る。例示的な実施形態では、ホスト車両(例えば、図54に示すような車両5441)は、横断歩道5451に近づくときの信号機5430の状態を識別し得る。信号機5430の状態が青色であり、横断歩道5451に接近している歩行者がいない場合、車両5441は、歩行者によって誘発される調整を実行し得ない。様々な場合では、ナビゲーションシステムは、横断歩道5451を横断するかどうか、及び横断歩道5451をどのように横断するか(例えば、どの程度の速度で、どの程度の加速度で、道路5413のどのレーンで、どの軌道に沿って、警笛の音の有無又はヘッドランプの点滅の有無等)を決定し得る。両方の決定(すなわち、横断歩道5451を横断するかどうか、及び横断歩道5451をどのように横断するか)は、信号機の観察状態、信号機が観察状態にある時間、ならびに横断歩道5451への歩行者の近接性に依存し得る。例えば、歩行者が横断歩道5451から遠く離れていることが検出された場合、車両5441は、信号機5430の状態(例えば、車両5441が横断歩道5451を横断することを可能にする青色の状態及び車両5441が横断歩道5451に到達する前に停止することを要求する赤色の状態)のみに従って進み得る。例示的な実施形態では、検出された歩行者が横断歩道5451の近くにおり、歩行者が横断歩道5441の中に入る可能性を示唆しており(例えば、横断歩道5441に入ろうとする歩行者5422)、信号機5430が青色の状態にある場合、車両5441は横断歩道を進み得るが、歩行者5422に対して少なくとも幾つかの慎重な行動を取ることによって進み得る。例えば、車両5441は、歩行者5422が歩行者用歩行インジケータに従わずに横断歩道に入ったとしても、歩行者5422との衝突の危険性を最小限に抑えるために、減速したり、歩行者5422から離れたり等し得る。様々な実施形態では、信号機5430が青色の状態であり、歩行者5422が横断歩道のいずれかの部分に入る場合、信号機5430の状態に関係なく、車両5441は停止する必要があり得る。
ナビゲーションシステムは、検出された信号機(例えば、信号機5430)が青色の状態であり、検出された横断歩道に対する歩行者の決定された近接性が、歩行者に関連付けられた検出された進行方位及び速度と組み合わされて、ホスト車両と横断歩道が交差する前に歩行者が横断歩道5430に入ることができないことを示している場合、歩行者によって誘発される調整なしに、ホスト車両が横断歩道(例えば、横断歩道5451)を横断することを可能にする計画されたナビゲーション動作を実行するように構成され得る。例えば、歩行者の予測軌道が横断歩道と交差しない場合、ホスト車両は横断歩道を横断するように進み得る(例えば、横断歩道の近くで歩行者が検出されたが、横断歩道と垂直に交わる歩道に沿って歩いている場合)。ナビゲーションシステムは、車両5441の軌道と交差し得る可能性のある軌道を有する歩行者がいないことを決定するために、横断歩道5451の近くにいる歩行者のいずれか又は全ての位置及び軌道を評価し得ることに留意されたい。
ナビゲーションシステムが、車両5441と横断歩道5451が交差する前に、少なくとも1人の歩行者(例えば、図54に示すように、歩行者5422)が横断歩道5451に入り得ると判断した場合、ナビゲーションシステムは、信号機5430が青色の状態であれば、歩行者によって誘発される調整で横断歩道5451を横断するための計画されたナビゲーション動作を含み得る。
図55Aに示す例では、歩行者5521が横断歩道5451に入り得ると判断された場合、車両5441は、歩行者によって誘発される調整で横断歩道5451を横断するための計画されたナビゲーション動作(例えば、軌道5502をもたらすナビゲーション動作)を決定し得る。例示的な実施形態では、歩行者によって誘発される調整は、軌道5502及び5503によって示されるように、車両5441の偏向軌道を含み得る。例えば、軌道5503をもたらすナビゲーション動作の歩行者調整は、高速で移動する歩行者5521に起因し得て、軌道5502をもたらす調整は、低速で移動する歩行者5521に起因し得る。様々な実施形態では、横断歩道5451の近くの歩行者を監視することに加えて、ナビゲーションシステムは、横断歩道5451の近くを走行する様々な車両(例えば、車両5511)の位置及び速度を監視し得る。例示的な実施形態では、車両5511が高速で移動する場合、ナビゲーションシステムは、車両5503との衝突を回避するために、軌道5503ではなく、軌道5502を選択し得る。幾つかの実施形態では、歩行者調整は、車両5441を加速すること、車両5441を減速又は停止することを含み得る。例えば、歩行者5521が既に横断歩道5451に入っている場合、車両5441は、信号機(例えば、図54に示すような、信号機5430)の状態に関係なく、車両5441の減速及び停止を含む軌道5504をとり得る。幾つかの場合、別の可能な歩行者調整は、車両5441の速度を上げ、軌道5502又は5503を選択して歩行者5521を通過することを含み得る。歩行者によって誘発される調整は、ホスト車両の速度の低下も含み得る。速度の低下の大きさは、歩行者の検出された速度(例えば、歩行者の動きが速いほど、ホスト車両の速度が低下し得る)、歩行者が横断歩道に入り得る、又は入る可能性がある予測時間(時間が短いほど、ホスト車両の速度が低下し得る)に依存し得るか、又は横断歩道に対する歩行者の動きのその他の検出された特性に基づき得る。
幾つかの場合、ナビゲーションシステムは、道路に沿って走行する複数の車両に対して複数の歩行者調整を実行し得る。例えば、図55Bは、矢印5531によって示されるように、車両5512が反対方向に走行し得る一方で、道路5413に沿って横断歩道5451に向かって走行する車両5441及び5511を示す。場合によっては、歩行者5521が横断歩道5451に入り得ると判断された場合、車両5441のナビゲーション動作の第1の歩行者調整は軌道5524をもたらし得て、車両5511のナビゲーション動作の第2の歩行者調整は軌道5525をもたらし得て、車両5512のナビゲーション動作の第3の歩行者調整は、軌道5526をもたらし得る(例えば、車両5512が縁石5532に向かって操舵して停止する)。様々な実施形態では、歩行者によって誘発される調整は、歩行者の検出された進行方位及び速度に基づいて決定され得る。例えば、歩行者の進行方位及び速度は、1つ又は複数の画像捕捉デバイス(例えば、図54に示すような、デバイス5460〜5462)に基づいて歩行者の複数の画像を撮像することによって決定され得る。例示的な実施形態では、例えば、図55Aに示すように、歩行者によって誘発される調整は、歩行者から離れる車両5441の横方向の動きを含み得る(例えば、軌道5502及び5503によって示すように、歩行者5521から離れる道路5413を横切る動き)。加えて又は或いは、歩行者によって誘発される調整は、車両5441が横断歩道5451と交差する前に車両5441が減速することを含み得る。加えて又は或いは、ナビゲーションシステムは、歩行者5521が横断歩道に入るのが検出された場合、信号機(例えば、図54に示すような信号機5430)が青色の状態にあるときでさえ、横断歩道の前に車両5441を停止することを要求し得る。
様々な実施形態では、横断歩道までの歩行者の距離は、幾何学的計算を使用して決定され得る。例えば、図55C及び図55Dは、動き検出が可能な画像捕捉デバイスを使用して横断歩道までの歩行者の距離を計算する例を示す。図55Cに示す例示的な実施形態では、歩行者5421は横断歩道5541の開始位置5567に接近する。画像捕捉デバイス5460は、歩行者5421の近くの点(例えば、図55Cに示すように、歩行者5421の靴の隣の点5571)でカメラ5565の正確な方向付けのためのスコープ5570を含み得る可動カメラ5565を含み得る。幾つかの場合、可動カメラ5565は、例えば、表面からのレーザビームの反射スポット(反射スポットはレーザマーカと呼ばれる)を検出するための不可視波長(例えば、深青色波長、赤外線波長、マイクロ波波長等)及び検出器を使用して動作できるレーザ5564を含み得る。次いで、可動カメラは、歩行者5421の近く(例えば、点5571)にレーザマーカを配置することによって方向付けられ得る。カメラが横断歩道5541の開始位置5567に対して方向付けられると、図55Cに示すように、角度A及びBが決定され得る。図55Cに示すように、画像捕捉デバイス5460は、ポール5563に取り付けられ、高さHで横断歩道の表面の上に配置される。パラメータA、B、及びHの場合、横断歩道5451の開始位置5567までの歩行者5421の距離5561は、
となる。
図55Dは、車両5441に関連付けられた画像捕捉デバイス5461を使用して同様の計算を行い得ることを示す。道路の表面から高さH
cに位置するデバイス5461で、角度A
c及びB
cがデバイス5461の方向を決定する場合、横断歩道5451の開始位置5567までの歩行者5421の距離5561は
となる。様々な実施形態では、ナビゲーションシステムは、異なる画像捕捉デバイスを使用して距離5561の推定値を取得し、距離の平均化、外れ値の推定値の除去等を使用して計算の誤差を低減し得る。
上記で説明したように、ナビゲーションシステムは、ホスト車両ナビゲーションのための様々な操作を実行するための複数のコンピューティングデバイスを含み得る。横断歩道の近くでホスト車両をナビゲートするプロセス5600の例が図56に示される。プロセス5600のステップ5601で、ナビゲーションシステムの処理デバイスは、ホスト車両の環境を表す画像の組を受信し得る。画像は、上記で説明したように、1つ又は複数の画像捕捉デバイスによって撮像され得る。画像は、横断歩道の近くの歩行者の表現、信号機の画像、交通標識、横断歩道の近くの様々な車両の画像等を含み得る。
プロセス5600のステップ5603で、処理デバイスは横断歩道の開始位置及び終了位置を検出し得る。例示的な実施形態では、横断歩道、ならびに横断歩道の開始位置及び終了位置は、1つ又は複数の画像捕捉デバイスによって撮像された画像を分析することによって検出され得る。或いは、横断歩道の位置は、ナビゲーションシステムに関連付けられたマップに基づいて識別され得る。例えば、マップは、横断歩道に関する全ての関連情報を含み得て、ナビゲーションシステムは、ホスト車両から横断歩道の中心までの位置決めベクトル、ホスト車両から横断歩道の開始位置までの位置決めベクトル、及びホスト車両から横断歩道の終了位置までの位置決めベクトルを決定するように構成され得る。ホスト車両が複数の横断歩道を含む交差点に接近する場合、ナビゲーションシステムが利用可能なマップ上で複数の横断歩道が識別され、識別された横断歩道のそれぞれの開始位置及び終了位置が示され得る。
プロセス5600のステップ5605で、処理デバイスは、1つ又は複数の画像捕捉デバイス(例えば、図54に示すような画像捕捉デバイス5460〜5462)によって取得された少なくとも1つの画像の分析に基づいて、歩行者が横断歩道の近くに存在するかどうかを決定し得る。例示的な実施形態では、例えば、図55C及び図55Dに示すように、画像捕捉デバイス(例えば、デバイス5460)の向きは、横断歩道5567の開始位置までの歩行者5421の距離5561の正確な決定を可能にし得る。
プロセス5600のステップ5607で、処理デバイスは、ホスト車両の環境での信号機の存在を検出し得る。例示的な実施形態では、処理デバイスは、車両の環境の少なくとも1つの画像を使用して信号機の存在を検出し得る。例えば、処理デバイスは、横断歩道(例えば、図54に示すような横断歩道5451)の画像を受信し、適切な画像認識アルゴリズムに基づいて、信号機(例えば、図54に示すような信号機5430)を検出し得る。
プロセス5600のステップ5609で、処理デバイスは、車両(例えば、図54に示すような車両5441)の信号機の関連性(例えば、図54に示すような信号機5430の関連性)を決定し得る。例示的な実施形態では、信号機5430の関連性は、信号機5430を含む道路区分に沿って走行する様々な車両の時間依存ナビゲーション情報と、上記で説明したような信号機5430の時間依存状態識別子との間の相関を分析することによって決定され得る。例えば、ナビゲーション情報(又はナビゲーション情報の1つ又は複数の変更)と信号機5430の状態識別子(又は状態識別子の変更)との間に直接的な相関関係がある場合、処理デバイスは、信号機5430が、車両5441、車両が走行するレーン(例えば、図54に示すようなレーン5403)、及び図54に示すような横断歩道5451に関連していると判断し得る。様々な実施形態では、信号機5430を含む道路区分に沿って走行する様々な車両の時間依存ナビゲーション情報と信号機5430の時間依存状態識別子との間の相関関係は、異なる時間で道路区分に沿って走行する複数の車両の情報を収集することによって取得され得る。
加えて又は或いは、歩行者の動きと信号機5430の状態識別子(又は状態識別子の変化)との間に直接的な相関関係がある場合、処理デバイスは、信号機5430が横断歩道5451に関連していると判断し得る。例えば、信号機5430が(車両5441によって観察されるように)赤色の状態にあり、歩行者が横断歩道を横断しているとき、及び信号機5430が(車両5441によって観察されるように)青色の状態であり、歩行者が(図55Cに示されるように)信号機5430の状態が変化するのを開始位置5567で待っているとき、ナビゲーションシステムは、信号機5430が横断歩道5451に関連していると結論付け得る。様々な実施形態では、交通信号機5430を含む横断歩道5451を横断する様々な歩行者の時間に依存した動きと、交通信号機5430の時間に依存した状態識別子との間の相関関係は、異なる時間に横断歩道5451を横断する複数の歩行者の情報を収集することによって取得され得る。
幾つかの実施形態では、横断歩道5451及びレーン5403に対する信号機5430の関連性は、信号機5430の関連性が、知られ得る/記憶され得る/表現され得る、ナビゲーションシステムに関連するマップを参照することによって決定され得る。例えば、ナビゲーションシステムの1人又は複数の管理者は、道路の区分の様々な信号機に識別番号(ID番号)を割り当て、それらのID番号及びそれらの位置を道路区分の様々な横断歩道及びレーンに関連付け得る。
プロセス5600のステップ5611で、処理デバイスは、画像捕捉デバイス(例えば、図54に示すようなデバイス5460〜5462)によって取得された1つ又は複数の画像に基づいて信号機5430の状態を決定し得る。処理デバイスは、様々な信号機について得られた画像を様々な信号機の画像(例えば、ナビゲーションシステムのメモリに格納された青信号、赤信号、黄信号等を有する信号機の画像)と比較して、様々な信号の状態を決定し得る。
加えて又は或いは、上記で説明したような、信号機5430の状態は、無線通信システムを使用する信号機5430によってナビゲーションシステムに伝達され得る。様々な実施形態では、処理デバイスは、信号機5430の状態の変化までにどれだけの時間が残っているかを判断し得る。例示的な実施形態では、信号機5430の状態の変化までの残り時間に関する情報は、信号機5430によって無線で送信され得て、他の実施形態では、情報は、横断歩道5430の近くを走行する様々な車両の画像を分析することによって、時間の関数として信号機の状態の情報を収集することによって、ナビゲーションシステムによって取得され得る。
プロセス5600のステップ5613で、処理デバイスは、信号機5430の関連性、信号機の決定された状態、横断歩道の近くの歩行者の存在、検出された横断歩道の近くの歩行者の存在、歩行者と横断歩道の開始位置又は終了位置のいずれかとの間で選択された最短距離、及び歩行者の動きベクトルに基づいて検出された横断歩道の近くでのホスト車両のナビゲーション動作を決定し得る。上記で説明したように、ナビゲーション動作は、車両5441を減速及び停止すること、又は横断歩道5451に入る歩行者、又は横断歩道5451の近くの歩行者から車両を横方向に離すことを含み得る。
ステップ5615で、ナビゲーション動作が実施される場合、処理デバイスは、車両5441に関連する1つ又は複数のアクチュエータシステムに、決定された1つ又は複数のナビゲーション動作を実施させ得る。様々な実施形態では、1つ又は複数のアクチュエータシステムは、アクセルペダル、ブレーキペダル、トランスミッションシフタ、ハンドル、手動ブレーキ等の車両5441の通常の制御を含み得る。幾つかの実施形態では、アクチュエータシステムは、人間の運転者がアクセスできる通常の制御と同様の機能を実行する、人間の運転者がアクセスできない内部システムであり得る。例示的な実施形態では、処理デバイスは、例えば、車両のアクセルペダルを含み得るアクチュエータシステムを介して車両5441の加速を引き起こすように構成され得る。
プロセス5600の様々なステップが変更され得ることに留意されたい。加えて又は或いは、プロセス5600のステップの順序を変更し得る。例えば、ステップ5607、5609、及び5611は、ステップ5603、及び5605に先行させ得る。
更に、上記で論じた例は、路面上に見える横断歩道に言及しているが、実施形態は、横断歩道が路面上で画定されていない道路に適用され得る。例えば、開示された実施形態は、交差点を識別し、それにより、交差点の近くの1つ又は複数の領域を、歩行者がそこから移動する可能性が高い領域(例えば、潜在的な交差区域)と見なし得る。同様に、開示された実施形態は、特定の位置(例えば、履歴情報に基づく)が、歩行者が道路を横断する可能性が高い領域(例えば、潜在的な横断区域)であると決定し得る。これは、例えば、過去に観察された事象(例えば、歩行者が特定の位置で道路を横断する傾向がある)に基づき得るか、及び/又は(例えば、歩行者がそこから出る又は入る可能性がある建物の入口に基づく)特定の位置に関連する考慮事項に基づき得る。
前述の説明は、例示の目的のために提示されたものである。これは網羅的ではなく、開示された正確な形態又は実施形態に限定されない。修正及び適合は、考察及び開示された実施形態の実施から当業者には明らかになるであろう。更に、開示された実施形態の態様は、メモリに格納されていると説明されているが、これらの態様は、二次ストレージデバイス、例えば、ハードディスク又はCD ROM、又は他の形態のRAMもしくはROM、USBメディア、DVD、Blu−ray(登録商標)、4K Ultra HD Blu−ray、又はその他の光学ドライブメディア等他のタイプのコンピュータ可読媒体にも格納できることを当業者なら理解するであろう。
記載された説明及び開示された方法に基づくコンピュータプログラムは、経験豊富な開発者のスキル内である。様々なプログラム又はプログラムモジュールは、当業者に既知の技術のいずれかを使用して作成できるか、又は既存のソフトウェアに関連付けて設計できる。例えば、プログラムセクション又はプログラムモジュールは、.Net Framework、.Net Compact Framework(及び、Visual Basic、C等の関連言語)、Java(登録商標)、C++、Objective−C、HTML、HTML/AJAXの組み合わせ、XML、又はJavaアプレットを含むHTMLにおいて、又はこれらを使用して設計できる。
更に、例示的な実施形態が本明細書に記載されているが、範囲には、本開示に基づいて当業者によって理解されるように、同等の要素、修正、省略、(例えば、様々な実施形態にわたる態様の)組み合わせ、適合、及び/又は変更を有する任意の及び全ての実施形態が含まれる。請求項における限定は、請求項で使用されている文言に基づいて広く解釈されるべきであり、本明細書に記載されている実施例又は本出願の審査中の実施例に限定されるものではない。実施例は非排他的であると解釈されるべきである。更に、開示された方法のステップは、ステップの並べ替え及び/又はステップの挿入又は削除を含む、任意の方法で変更され得る。従って、本明細書及び実施例は例示としてのみ考慮されることを意図しており、真の範囲及び精神は、以下の特許請求の範囲及びそれらの同等物の全範囲によって示される。