(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-11
(45)【発行日】2024-04-19
(54)【発明の名称】道路シーンにおける多様な長期将来軌道のシミュレーション
(51)【国際特許分類】
B60W 30/095 20120101AFI20240412BHJP
G06T 7/00 20170101ALI20240412BHJP
G06V 20/58 20220101ALI20240412BHJP
G06V 10/82 20220101ALI20240412BHJP
B60W 40/06 20120101ALI20240412BHJP
【FI】
B60W30/095
G06T7/00 650B
G06V20/58
G06T7/00 350C
G06V10/82
B60W40/06
(21)【出願番号】P 2022516390
(86)(22)【出願日】2020-11-06
(86)【国際出願番号】 US2020059384
(87)【国際公開番号】W WO2021096776
(87)【国際公開日】2021-05-20
【審査請求日】2022-03-14
(32)【優先日】2020-11-05
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-11-14
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504080663
【氏名又は名称】エヌイーシー ラボラトリーズ アメリカ インク
【氏名又は名称原語表記】NEC Laboratories America, Inc.
(74)【代理人】
【識別番号】100123788
【氏名又は名称】宮崎 昭夫
(74)【代理人】
【識別番号】100127454
【氏名又は名称】緒方 雅昭
(72)【発明者】
【氏名】ナラヤナン、 スリラム、 ノーシャー
(72)【発明者】
【氏名】チャンドラカー、 マンモハン
【審査官】竹村 秀康
(56)【参考文献】
【文献】特開2019-073271(JP,A)
【文献】米国特許出願公開第2019/0129436(US,A1)
【文献】特開2018-197758(JP,A)
【文献】特開2017-181392(JP,A)
【文献】米国特許出願公開第2018/0124423(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00-10/30
B60W 30/00-60/00
G08G 1/00-99/00
G06T 7/00
G06V 20/58
G06V 10/82
(57)【特許請求の範囲】
【請求項1】
同時マルチエージェント回帰軌道予測のためのプロセッサ上で実行されるコンピュータ実装方法であって、
シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成する(801)ことと、
相互接続された車線の階層構造を捕捉する前記シーンの道路グラフを生成する(803)ことと、
前記データセットで利用可能なトラックレット情報を利用することによって、前記生成された道路グラフ上で前記シーンから車両を組み込む(805)ことと、
前記車両をそれらの最も近い車線識別に割り当てる(807)ことと、
前記シーン内の全ての車両について多様な妥当な行動を識別する(809)ことと、
多様な行動生成器によって、前記多様な妥当な行動から1つの行動をサンプリングし、前記サンプリングされた1つの行動に類似する前記データセットの前記実世界データからサンプリングされた関連する速度プロファイルを選択する(811)ことと、
前記道路グラフおよび前記サンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに供給し、ユーザが所望の運転シナリオを再現するため
に複数のシミュレーションされた多様な軌道のうちの1つまたは複数を選択することが可能なように、可視化装置上に出力される
前記複数のシミュレーションされた多様な軌道を生成する(813)ことと、を含み、
交差点までの距離および平均速度
を含む発見的手法に基づいて、前記サンプリングされた1つの行動に従って、速度プロファイルがサンプリングされる、コンピュータ実装方法。
【請求項2】
前記多様な行動生成器は、操縦識別および速度プロファイルサンプリングを含む、請求項1に記載の方法。
【請求項3】
前記操縦識別は、前記シーン内の全ての車両に対して異なる妥当な操縦を識別して、車両毎に1つの操縦をサンプリングし、前記速度プロファイルサンプリングは、前記実世界データから適切な速度をサンプリングする、請求項2に記載の方法。
【請求項4】
前記道路グラフは、前記シーンの鳥瞰図再構成または上面視表現である、請求項1に記載の方法。
【請求項5】
前記ダイナミクスシミュレータは、前記シーン内の全ての車両に対して安全な軌道を生成する、請求項1に記載の方法。
【請求項6】
前記安全な軌道は、
【数1】
によって与えられ、ここで、aは快適な加速度、
【数2】
は所望の基準速度、vは車両、δは速度とともに加速度がどのように減少するかを左右する指数、sは実際のバンパ距離、
【数3】
は所望の最小隙間、
【数4】
は先行車両との速度差である、請求項
5に記載の方法。
【請求項7】
潜在エンコーダおよび条件付き生成器をさらに含み、前記潜在エンコーダは認識モジュールとして動作し、訓練段階中に使用される、請求項1に記載の方法。
【請求項8】
前記条件付き生成器は、畳み込みエンコーダと、畳み込み長短期記憶(ConvLSTM)デコーダとを含む、請求項
7に記載の方法。
【請求項9】
同時マルチエージェント回帰軌道予測のためのコンピュータ可読プログラムを有する非一時的コンピュータ可読記憶媒体であって、前記コンピュータ可読プログラムは、コンピュータ上で実行されると、
シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成するステップ(801)と、
相互接続された車線の階層構造を捕捉する前記シーンの道路グラフを生成するステップ(803)と、
前記データセット内で利用可能なトラックレット情報を利用することによって、前記生成された道路グラフ上で前記シーンから車両を組み込むステップ(805)と、
前記車両をそれらの最も近い車線識別に割り当てるステップ(807)と、
前記シーン内の全ての車両について多様な妥当な行動を識別するステップ(809)と、
多様な行動生成器によって、前記多様な妥当な行動から1つの行動をサンプリングし、前記サンプリングされた1つの行動に類似する前記データセットの前記実世界データからサンプリングされた関連する速度プロファイルを選択するステップ(811)と、
前記道路グラフおよび前記サンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに供給し、ユーザが所望の運転シナリオを再現するため
に複数のシミュレーションされた多様な軌道のうちの1つまたは複数を選択することが可能なように、可視化装置上に出力される
前記複数のシミュレーションされた多様な軌道を生成するステップ(813)と、を前記コンピュータに実行させ、
交差点までの距離および平均速度
を含む発見的手法に基づいて、前記サンプリングされた1つの行動に従って、速度プロファイルがサンプリングされる、非一時的コンピュータ可読記憶媒体。
【請求項10】
前記多様な行動生成器は、操縦識別および速度プロファイルサンプリングを含む、請求項
9に記載の非一時的コンピュータ可読記憶媒体。
【請求項11】
前記操縦識別は、前記シーン内の全ての車両に対して異なる妥当な操縦を識別して、車両毎に1つの操縦をサンプリングし、前記速度プロファイルサンプリングは、前記実世界データから適切な速度をサンプリングする、請求項
10に記載の非一時的なコンピュータ可読記憶媒体。
【請求項12】
前記道路グラフは、前記シーンの鳥瞰図再構成または上面視表現である、請求項
9に記載の非一時的コンピュータ可読記憶媒体。
【請求項13】
前記ダイナミクスシミュレータは、前記シーン内の全ての車両に対して安全な軌道を生成する、請求項
9に記載の非一時的なコンピュータ可読記憶媒体。
【請求項14】
前記安全な軌道は、
【数5】
によって与えられ、ここで、aは快適な加速度、
【数6】
は所望の基準速度、vは車両、δは速度とともに加速度がどのように減少するかを左右する指数、sは実際のバンパ距離、
【数7】
は所望の最小隙間、
【数8】
は先行車両との速度差である、請求項
13に記載の非一時的なコンピュータ可読記憶媒体。
【請求項15】
潜在エンコーダおよび条件付き生成器をさらに含み、前記潜在エンコーダは認識モジュールとして動作し、訓練段階中に使用される、請求項
9に記載の非一時的コンピュータ可読記憶媒体。
【請求項16】
前記条件付き生成器は、畳み込みエンコーダと、畳み込み長短期記憶(ConvLSTM)デコーダとを含む、請求項
15に記載の非一時的コンピュータ可読記憶媒体。
【請求項17】
同時マルチエージェント回帰軌道予測のためのシステムであって、
メモリと、
前記メモリと通信する1つ以上のプロセッサとを含み、該プロセッサは、
シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成し(801)、
相互接続された車線の階層構造を捕捉する前記シーンの道路グラフを生成し(803)、
前記データセット内で利用可能なトラックレット情報を利用することによって、前記生成された道路グラフ上で前記シーンから車両を組み込み(805)、
前記車両をそれらの最も近い車線識別に割り当て(807)、
前記シーン内の全ての車両について多様な妥当な行動を識別し(809)、
多様な行動生成器によって、前記多様な妥当な行動から1つの行動をサンプリングし、前記サンプリングされた1つの行動に類似するデータセットの前記実世界データからサンプリングされた関連する速度プロファイルを選択し(811)、
前記道路グラフおよび前記サンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに供給し、ユーザが所望の運転シナリオを再現するため
に複数のシミュレーションされた多様な軌道のうちの1つまたは複数を選択することが可能なように、可視化装置上に出力される
前記複数のシミュレーションされた多様な軌道を生成する(813)ように構成され、
交差点までの距離および平均速度
を含む発見的手法に基づいて、前記サンプリングされた1つの行動に従って、速度プロファイルがサンプリングされる、システム。
【請求項18】
前記多様な行動生成器は、操縦識別および速度プロファイルサンプリングを含み、前記操縦識別は、前記シーン内の全ての車両に対して異なる妥当な操縦を識別して、車両毎に1つの操縦をサンプリングし、前記速度プロファイルサンプリングは、前記実世界データから適切な速度をサンプリングする、請求項
17に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願情報
本出願は、2019年11月14日に出願された米国仮出願第62/935,326号、および2020年11月5日に出願された米国特許出願第17/090,399号の優先権を主張し、それぞれ、参照により全体が本明細書に組み込まれる。
【背景技術】
【0002】
技術分野
本発明は、軌道予測に関し、より詳細には、道路シーンにおける多様な長期将来軌道をシミュレーションするための方法およびシステムに関する。
【0003】
関連技術の説明
シーンにおけるエージェントの将来の状態および意図について推論する能力は、車両の自律性にとって重要なタスクである。人間は、任意の所与のシナリオにおいて、様々な妥当な行動について予測し、理由をつける固有の能力を有する。それにもかかわらず、人間は、予測不可能な状況のために、依然として多くの予測不可能な日常事象に直面している。例えば、車両が交差点に向かって接近する交差点シナリオが想定される場合、車両が実行することができる複数の可能な操縦がある。車両がそれらの意図および現在の交通状況に基づいて車線変更操縦を実行することができる高速道路シナリオも同様である。単一の運動方向に偏った予測を有することは、そうでない場合において実行可能な解を提供しないかもしれない。しかしながら、様々なドライバの意図を有するデータへのアクセスは、既存のデータセットが焦点を当てているものではない。軌道予測において最先端の結果を得るために、深層学習において目標とされた努力がなされてきたが、このような努力は大規模なデータを必要とする。このような大規模な軌道データを得ることは、特に、散発的に発生するが、予測の観点からは重要であると考えられる「興味深い」場合には稀である。有意義な予測は、データの十分な多様性を必要とするが、現実世界のシナリオでは、同じシーンのデータのそのような多様性を捕捉することはしばしば妥当ではない。
【発明の概要】
【0004】
同時マルチエージェント回帰軌道予測のためのコンピュータ実装方法を提示する。この方法は、シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成することと、相互接続された車線の階層構造を捕捉する前記シーンの道路グラフを生成することと、前記データセットで利用可能なトラックレット情報を利用することによって、前記生成された道路グラフ上で前記シーンから車両を組み込むことと、
前記車両をそれらの最も近い車線識別に割り当てることと、前記シーン内の全ての車両について多様な妥当な行動(behavior)を識別することと、多様な行動生成器によって、前記多様な妥当な行動から1つの行動をサンプリングし、前記サンプリングされた1つの行動に類似する前記データセットの前記実世界データからサンプリングされた関連する速度プロファイルを選択することと、前記道路グラフおよび前記サンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに供給し、ユーザが所望の運転シナリオを再現するために前記複数のシミュレーションされた多様な軌道のうちの1つまたは複数を選択することが可能なように、可視化装置上に出力される複数のシミュレーションされた多様な軌道を生成することと、を含む。
【0005】
同時マルチエージェント回帰軌道予測のためのコンピュータ可読プログラムを含む非一時的コンピュータ可読記憶媒体が提供される。前記コンピュータ可読プログラムは、前記コンピュータ可読プログラムは、コンピュータ上で実行されると、シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成するステップと、相互接続された車線の階層構造を捕捉する前記シーンの道路グラフを生成するステップと、前記データセット内で利用可能なトラックレット情報を利用することによって、前記生成された道路グラフ上で前記シーンから車両を組み込むステップと、前記車両をそれらの最も近い車線識別に割り当てるステップと、前記シーン内の全ての車両について多様な妥当な行動を識別するステップと、多様な行動生成器によって、前記多様な妥当な行動から1つの行動をサンプリングし、前記サンプリングされた1つの行動に類似する前記データセットの前記実世界データからサンプリングされた関連する速度プロファイルを選択するステップと、前記道路グラフおよび前記サンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに供給し、ユーザが所望の運転シナリオを再現するために前記複数のシミュレーションされた多様な軌道のうちの1つまたは複数を選択することが可能なように、可視化装置上に出力される複数のシミュレーションされた多様な軌道を生成するステップとを、前記コンピュータに実行させる。
【0006】
同時マルチエージェント回帰軌道予測のためのシステムを提示する。システムは、メモリと、前記メモリと通信する1つ以上のプロセッサとを含み、該プロセッサは、シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成し、相互接続された車線の階層構造を捕捉する前記シーンの道路グラフを生成し、前記データセット内で利用可能なトラックレット情報を利用することによって、前記生成された道路グラフ上で前記シーンから車両を組み込み、前記車両をそれらの最も近い車線識別に割り当て、前記シーン内の全ての車両について多様な妥当な行動を識別し、多様な行動生成器によって、前記多様な妥当な行動から1つの行動をサンプリングし、前記サンプリングされた1つの行動に類似するデータセットの前記実世界データからサンプリングされた関連する速度プロファイルを選択し、前記道路グラフおよび前記サンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに供給し、ユーザが所望の運転シナリオを再現するために前記複数のシミュレーションされた多様な軌道のうちの1つまたは複数を選択することが可能なように、可視化装置上に出力される複数のシミュレーションされた多様な軌道を生成するように構成されている。
【0007】
これらおよび他の特徴および利点は添付の図面に関連して読まれるべき、その例示的な実施形態の以下の詳細な説明から明らかになるのであろう。
【図面の簡単な説明】
【0008】
本開示は、以下の図面を参照して、好ましい実施形態の以下の説明において詳細を提供する。
【0009】
【
図1】本発明の実施形態による、シーン内の単一車両の行動生成プロセスを示す例示的な全体パイプラインのブロック/フロー図である。
【0010】
【
図2】本発明の実施形態による、同時マルチエージェント回帰軌道予測の例示的な実装のブロック/フロー図である。
【0011】
【
図3】本発明の実施形態による、同時マルチエージェント回帰軌道予測の例示的なアルゴリズムフローのブロック/フロー図である。
【0012】
【
図4】本発明の実施形態による、同時マルチエージェント回帰軌道(SMART)フレームワークの例示的な全体アーキテクチャのブロック/フロー図である。
【0013】
【
図5】本発明の実施形態による、同時マルチエージェント回帰軌道予測のための例示的な処理システムのブロック/フロー図である。
【0014】
【
図6】本発明の実施形態による、同時マルチエージェント回帰軌道予測のための例示的な方法のブロック/フロー図である。
【0015】
【
図7】本発明の実施形態による、同時マルチエージェント回帰軌道予測のための例示的な方法で使用される方程式のブロック/フロー図である。
【0016】
【
図8】本発明の実施形態による、同時マルチエージェント回帰軌道予測のための実用的な適用のブロック/フロー図である。
【発明を実施するための形態】
【0017】
本発明の例示的な実施形態は、シーン内の各車両について複数の行動を有する一般的な予測データ生成方法を導入する。例示的な実施形態は、所与のシナリオにおいて関心のある様々な軌道を得るために、複数の行動をシミュレーションすることに重点を置く。シーンに対するこのようなマルチ行動軌道は、シミュレーション環境でのみ可能である。例示的な実施形態は、画像または点群のようなセンサ空間でシミュレーションする代わりに、鳥瞰図(BEV)における軌道をシミュレーションする。シミュレーションは、状況またはセンサ特性により、低レベルのドメインギャップから離れた上面視抽象(top-view abstracts)で起こる。現在の傾向は、自動運転ロボットのナビゲーションのための高精細度(HD)セマンティックマップにも依存している。例示的な実施形態は、例えば、OpenStreetMaps(OSM)から入手可能な情報を活用して、様々なデータセットのシーンをシミュレーションすることができる。OSMマップは、道路の上面視トポロジー情報を中心線及び車線情報と共に提供する。シミュレーション環境は、生成されたデータの現実性と多様性を同時に得るために、正確な様式でシーン構造とダイナミクスをモデル化する挑戦を含む。例示的な実施形態は、実世界の軌道情報から速度プロファイルをサンプリングし、このようなサンプリングされた速度プロファイルをシーン内のシミュレーションされた車両のための基準プロファイルとして使用することによって、この問題に取り組む。
【0018】
例示的な実施形態は、既存のデータセットについてそのような軌道をシミュレーションする。このように、例示的な実施形態は、M個のシーンについてN個の軌道を取得する。例示的な実施形態は、データについて訓練され、既存の実世界データセットについて試験されたベースライン方法を用いて、予測結果の改善を示す。定性的に、例示的な実施形態は、マルチモーダル軌道予測方法が、既存の実世界データセットと比較して、データを使用することにより、多様性をはるかに良く捕らえることを示す。そのため、次のような貢献を与える。
【0019】
例示的な実施形態は、特定のシナリオに対する多様なドライバの意図を生成するために、既存のデータセットに対するシーンの鳥瞰図(BEV)シミュレーションに基づく一般的なデータセット生成方法を導入する。例示的な実施形態は、既存の実世界データセットにおけるベースライン結果の改善を示し、また、自律運転シナリオに有益であるはるかに良好なシーンで多様性を捕捉することを示す。例示的な実施形態は、さらに、適切な量の現実性を有するシミュレーション技術に基づいて、多様な軌道を生成するための方法を導入する。
【0020】
例示的な解決は、以下を含む。
【0021】
実世界データからシーンのトポロジーレイアウトを再構成するシーン生成モジュール。再構成されたレイアウトはさらに、実世界データから車両をシミュレーションするために使用される。
【0022】
現在のシーンで実行可能な妥当な動作を識別する多様な行動生成モジュール。次に、多様な行動生成モジュールは、識別された行動のプールから各車両について1つの行動をサンプリングする。例示的な実施形態は、交差点(intersection)までの距離および平均速度などの発見的方法に基づいて、実世界データから行動による速度プロファイルをサンプリングするメカニズムを導入する。
【0023】
例示的な実施形態は、車両(例えば、自動車)およびその周囲のサンプリングされた速度プロファイルに基づいて、車両軌道をシミュレーションするダイナミクスシミュレータを導入する。これは、シミュレーションされた軌道のセットを提供する。
【0024】
ここで、例示的な実施形態は、同じシーンを使用して車両に対して複数の行動を生成し、したがって、多様な軌道を得る。
【0025】
シミュレータを使用して完全な合成データセットを生成する伝統的な方法とは異なり、例示的な実施形態は、実世界データからシーンを適応させて、シーンおよび実行速度において適切な現実性を有する多様な行動をシミュレーションする。
【0026】
例示的な実施形態は、道路グラフとして実世界データから上面視表現を再構成し、現実のシーン内の車両をシミュレーションするアルゴリズムを導入する。
【0027】
例示的な実施形態は、シーン内のすべての車両について多様な行動を識別し、1つの行動をサンプリングする。例示的な実施形態は、選択された行動に密接に類似する速度を実世界データから選択する。最近傍サンプリングに使用される発見的方法は、交差点までの距離と平均速度である。これは、現実のシーンから最も近い行動を識別するのに役立つ。
【0028】
多様な軌道を持つ実世界データを増強する際のシミュレーションパイプラインは、軌道予測のためのデータ問題を解決するために採用された方法である。
【0029】
図1は、本発明の一実施形態による、シーン内の単一車両に対する行動生成プロセスのための全体的なパイプラインを示す図である。
【0030】
シーン生成または生成器100に関して、合成シミュレーションに完全に依存する他のシミュレーションメカニズムとは異なり、例示的な実施形態は、実世界データから正確なシーンを再構成し、シミュレーションの目的のために、そのような実世界データを使用する。
【0031】
道路グラフ生成または生成器120に関して、例示的な実施形態は、実世界データ110の高精細度(HD)地図から車線ポリラインを抽出するか、または公開されて利用可能な地図情報を使用し、相互に接続された車線の階層的道路グラフを生成する。ここで、車線の終点は、固有の識別子によって識別され、グラフ内のノードを表す。
【0032】
実物体インスタンス化130に関して、例示的な実施形態は、生成された道路グラフに車両を配置するために、データセットにおいて利用可能なトラックレット情報を利用する。例示的な実施形態は、現実のシーンが再構成され、シミュレーションのために実世界データから交通シーンが利用されるという点で異なる。トラックレットは、画像認識システムによって構築されるような、移動物体が追従する軌跡(track)の断片である。
【0033】
実物体インスタンス化130に関して、例示的な実施形態は、これらのデータセットによって提供されるトラックレット情報の助けを借りて、特定の運転シナリオを再現する。車両姿勢情報は、エゴ座標系(ego frame of reference)で局所的道路グラフ上に再投影される。例示的な実施形態は、車両が占有する最近傍車線IDを計算するために、車両のトラックレット位置およびヨー情報を使用する。各インスタンス化車両は、車線IDが割り当てられ、それぞれの車線位置で車線の方位に合ったヨー角度で車線の中心に配置される。シミュレーション目的のために、例示的な実施形態は、移動している車両のみを考慮する。これらの計算された推測は、シーン生成プロセスを実際的に実行可能にする。
【0034】
多様な行動生成または生成器200に関して、ランダムな目標点を選択する代わりに、例示的な実施形態は、まず、シーン内の全ての車両に対して多様な妥当な行動を識別し、1つの行動をサンプリングする。また、車両が一定速度または所定の速度で移動する他のシミュレーション技術とは異なり、例示的な実施形態は、選択された行動に密接に類似する速度プロファイルを実世界データから選択する。行動生成または生成器200は、操縦識別210および速度プロファイルサンプリング220を含む。
【0035】
操縦識別210に関して、210は、シーン内の車両によって実行され得る異なる操縦を識別し、車両毎に1つの操縦をサンプリングする。
【0036】
速度プロファイルサンプリング220に関して、220は、実世界データから、選択された行動の速度プロファイルをサンプリングする。最近傍サンプリングに使用される発見的方法は、交差点までの距離と平均速度である。これは、現実のシーンから最も近い行動を識別するのに役立つ。
【0037】
速度プロファイルサンプリング220に関して、現実的なシミュレーション軌道を得るために、例示的な実施形態は、まず、実世界軌道サンプルのプールを作成する。最初に、例示的な実施形態は、シーン生成プロセスを実行し、各実世界軌道を、軌道のコース中に使用された、局所的道路グラフからの一組の車線中心線に関連付ける。この中心線情報は、実世界軌道を異なる操縦カテゴリに分類し、旋回操縦のための旋回前に移動する距離のような他のより高レベルの軌道特性を得るのに役立つ。例示的な実施形態は、実世界軌道から基準速度プロファイルをサンプリングするシミュレーションの前に、この情報を記憶する。シミュレーション時に、所望の行動をサンプリングした後、例示的な実施形態は、旋回前の距離、または、旋回および直進操縦についての平均速度のような特徴にそれぞれ基づいて、現在のシーンのための最近傍速度プロファイルを得る。
【0038】
図1に示すシステムは、高度運転者支援システム(ADAS)、ロボット工学、および他の車両/エージェントがシーン内でどのように移動するかについての知識を必要とする他のアプリケーションで使用することができる。
図1のシステムは、人間または車両の多様な行動をシミュレーションし、それに応じて最も安全な行動を計画するために使用することができる。あるいは、このシステムは、ADAS、および社会的な場所でナビゲートするために自律性を必要とする他のアプリケーションで使用されるモデルを訓練する多様な訓練例を生成するために使用することもできる。
【0039】
シミュレーションエンジンは、幾つかの構成要素、すなわち、シーン生成モジュール100、行動生成モジュール200、およびダイナミクスシミュレーションエンジンまたはダイナミクスシミュレータ300を含む。再現およびシミュレーションするためのデータセットが与えられると、シーン生成モジュール100は、公開されて利用可能な地図情報を介して取得され得るか、またはデータセット110によって提供され得る車線中心線情報を取得する。例示的な実施形態は、この情報を利用して、車線および車線中心線の終点をそれぞれ表すノードおよびエッジを含むグラフデータ構造を作成する。これは、レンダリングされると、局所的シーンのBEV再構成を提供する。これを道路グラフと呼ぶ。物体インスタンス化モジュール130は、データセット110からのトラックレット情報を使用して、それらを生成された道路グラフ上に投影する。以上のことを行うために、例示的な実施形態は、エゴ車両に関する座標系を定義し、グラフ内の物体によって占められる最も近いエッジを見つける。
【0040】
ここで、シーン内でインスタンス化されたすべての車両について、例示的な実施形態は、交通状況および道路構造が与えられた場合に実行することができる様々な可能な操縦を見出し、そこから例示的な実施形態は、シミュレーションのために異なる車両行動を一様にサンプリングする。例示的実施形態は、車両が{直進、左折、右折、および車線変更}のような異なる操縦を実行する場合の「行動」を参照する。著しく現実的なそのような多様な行動を実行するために、例示的な実施形態は、車両が実行することを計画している意図された行動に密接に類似する基準として、実世界データセットから適切な速度プロファイルをサンプリングする。ダイナミクスシミュレーションモジュールは、この基準速度を利用してすべての車両に対して正しい行動を実行するが、同時に、シーンレイアウトと現在の交通状況を考慮して、実行できる安全な加速を提供する。
【0041】
例示的な実施形態は、例えば、7秒間、あらゆるシーンをシミュレーションし、最大で、例えば、3つの多様な行動を生成する。シミュレーションは、例えば、10Hzで実行され、シミュレーションの出力は、車両状態
【数1】
を含む。車両状態は、シミュレーションの過程にわたる位置、速度、機首方位、加速度、および操縦を表す。ここで、各構成要素の簡単な説明を提供する。
【0042】
シーン生成100に関して、例示的な実施形態は、道路グラフを作成するために、例えば、OpenStreetMaps(OSM)またはデータセット110からの車線情報を利用する。当該目的のために、例示的な実施形態は、中心線、車線の数、および各道路セグメントの一方向情報などの道路情報を利用する。すべての双方向道路中心線は、指定された車線数および一方向情報に基づいて分割される。データセット110からの車両姿勢情報は、正確な運転シナリオを再現するために使用される。
【0043】
多様な行動生成200に関して、各車両のローカル道路グラフ上の特定の車線ID(ノード)が与えられると、例示的な実施形態は、最初に、閾値距離内に到達することができるK個の可能なリーフノードを探索する。例示的な実施形態は、任意の所与のノードからの妥当な操縦を3つの異なるカテゴリ{左、右、直進}に分類する。シミュレーションに先立って、例示的な実施形態は、実世界データから基準速度プロファイルのプールを作成する。シミュレーション時に、所望の行動をサンプリングした後、例示的な実施形態は、旋回前の距離、または旋回および直進操縦についての平均速度のような特徴にそれぞれ基づいて、現在のシーンのための最近傍速度プロファイルを得る。
【0044】
ダイナミクスシミュレーション310に関して、ダイナミクスモジュール300は、道路グラフ、多様な妥当なもののプールからの行動、および適切な行動のために追跡される必要のある基準速度を利用する。ダイナミクスエンジン300は、インテリジェントドライバモデル(IDM)312およびモバイル314(誘導車線変更による全体の制動を最小限に抑える)によって制御される。このダイナミクスモジュール300から得られた加速および車線変更の決定は、車両行動(横方向コントローラ322および縦方向コントローラ324の両方)の適切な状態変化を追跡し、これを示すように試みる低レベルコントローラ320に送られる。予測された軌道は、出力モジュール400によって出力される。任意の交通状況の安全限界下での加速を制限し、シーン内の異なるエージェント間に交互作用を組み込むために、例示的な実施形態は、シミュレーションされた車両のIDM行動を使用する。IDMへの入力は、先行車両sまでの距離、車両の実際の速度v、先行車両との速度差Δvを含み、与えられた交通状況に対して安全と考えられる出力
【数2】
を提供する。
【0045】
【0046】
ここで、aは快適な加速度であり、
【数4】
は所望の基準速度である。δは、加速度が速度とともにどのように減少するかを左右する指数である。車両の減速は、先行車両との実際のバンパ距離sに対する所望の最小隙間
【数5】
の比率に依存する。
【0047】
【0048】
ここで、
【数8】
は維持すべき所望の安全距離であり、Tは車両の安全な時間的隙間であり、bは車両の快適な所望の減速である。
【数9】
は、様々な車両行動を生成するハイパーパラメータである。例示的な実施形態は、シミュレーション期間中にこれらのパラメータをサンプリングして、異なるレベルの攻撃性を有するシミュレーションを生成する。
【0049】
車線変更決定に関して、例示的な実施形態は、旋回ベースの操縦軌道とは別に、車両軌道に付加的多様性を追加するための車線変更行動も考慮する。車線変更行動は、MOBILアルゴリズムに基づいてモデル化される。
【0050】
車線変更行動を制御するパラメータは、他のエージェントの加速ゲインがあれば車線変更に影響するポリテンシファクタp、車線変更加速閾値
【数10】
、最大安全減速
【数11】
、および特定の車線のバイアス
【数12】
である。
【0051】
以下の式
【数13】
は、車線変更を実行できるかどうかを決定する。
【0052】
ここで、aは現在の加速度であり、
【数14】
は車線変更後の新しい加速度を表す。c、n、oの下付き文字は、それぞれ、現在の車両、新しい車両、旧車両を示す。
【0053】
車線変更操縦は、十分な加速ゲインがあるか、または車線変更後に現在の車両または後続の車両に課せられる制動が上記式によって表される安全閾値よりも大きい場合にのみ実行される。
【0054】
低レベルコントローラ320は、車両とダイナミクスモジュール300によって管理される行動特性をシミュレーションする。低レベルコントローラ320は、操縦識別、IDM(312)、およびMOBIL(314)モジュールから入力を受け取り、シミュレーションした車両に対する状態変化を生成する。低レベルコントローラ320は、それぞれの速度コマンドを出す縦横比例コントローラ322、324を含む。操縦識別処理中に得られた車線中心線は、シミュレーションした車両の基準軌道として用いられる。横方向コントローラ322から得られた速度は、基準軌道の追跡を助ける適切な操舵コマンドに変換される。ここで、車両の現在の速度をvとし、車線からの横方向位置を
【数15】
とし、横方向速度を
【数16】
とすると、操舵角
【数17】
は、以下の式
【数18】
で求められる。
【0055】
ここで、
【数19】
および
【数20】
は、コントローラーパラメータであり、Lは車両の長さを表し、
【数21】
は車線を追跡する際のオフセットノイズとして作用する。
【数22】
は、車線中心との位置合わせのために補償される必要がある機首方位であり、
【数23】
は、将来の時間ステップのために達成される必要がある必要な機首方位である。機首方位コントローラは、所与の目標機首方位
【数24】
に対して機首方位レート
【数25】
を提供する。
【0056】
ここで、単一表現モデルは、予測がコンテンツ認識マルチモーダルであり、エージェントの数に関係なく一定の推論時間を持つような道路シーンにおける複数のエージェントに対する軌道を予測するために導入される。例示的な実施形態は、空間グリッド上のエージェントの位置のフレーム回帰に従って、軌道予測問題を定式化する。
【0057】
シーンのための車線中心線情報
【数26】
が与えられると、例示的な実施形態は、シーンコンテキストマップ
【数27】
がHxWx3であるように、それらを上面視表現でレンダリングする。ここで、チャネル次元は、道路、車線、および未知の道路要素に対応する各ピクセルのワンホット(one-hot)情報を表す。
【0058】
【数28】
は、時間ステップ
【数29】
のうち、第i番目の車両の軌道情報を示し、各
【数30】
は、シーン内のエージェントの空間位置を表すものとする。ネットワークは、エージェントの開始位置に関する相対座標
【数31】
の形式で入力を行う。
【0059】
シーン内の第i番目のエージェントについて、例示的な実施形態は、
【数32】
を対応する
【数33】
位置に投影して、
【数34】
が時間ステップtにおける第i番目のエージェントの相対座標を含むように、状態
【数35】
の空間位置マップを構築する。
【0060】
【数36】
は、グランドトゥルース軌跡を表す。また、例示的な実施形態は、シーン内のエージェントの構成を表す位置マスクとして
【数37】
をさらに示す。時間ステップにわたって車両を追跡するために、例示的な実施形態は、車両IDマップ
【数38】
を構築する。ここで、
【数39】
である。
【0061】
さらに、例示的な実施形態は、各軌道
【数40】
を、{直進、左、右}行動のうちの1つから軌道の行動タイプを表すラベルciに関連付ける。また、車線変更の軌道ラベルは、3つのカテゴリのうちの1つに該当する。
【0062】
【数41】
は、ciのグリッドマップ表現を、
【数42】
となるように符号化する。車両の軌道は、人間の行動と比較してランダムではないことに留意する。その代わりに、それらは道路での他の車両の行動に依存し、それは異なる操縦に基づいて軌道を分類する動機付けとなる。
【0063】
例示的な実施形態は、ネットワークがシーンコンテキストマップI、起動ラベルマップ
【数43】
、位置マスクM、およびノイズマップ
【数44】
と共に前の状態
【数45】
を入力として取り、シーン内の対応するグリッドマップ位置
【数46】
でエージェント毎に将来軌跡
【数47】
を予測する公式化に従う。例示的な実施形態は、各エージェントに対して別個のヘッドを有していないことに留意されたい。その代わりに、ネットワークは、各個々のエージェントがtで
【数48】
にマッチしようとする単一の将来状態マップ
【数49】
を予測する。
【0064】
例示的な実施形態は、
図4にパイプラインを示す。ネットワークアーキテクチャは、潜在エンコーダ610および条件付き生成器640を含む。例示的な実施形態は、畳み込み長短期記憶(ConvLSTM)を使用して、エージェントの以前の位置を有する時間情報をモデル化する。例示的な実施形態は、さらに、状態プーリング操作を導入して、エージェントの状態情報を、連続する時間ステップのそれぞれの位置に供給する。例示的な実施形態は、多様な予測を捕捉するために軌道固有のラベルを提供するが、例示的な実施形態は、条件付き変分生成モデルを活用して、各タイプのラベルについてデータ内の多様性をモデル化する。
【0065】
潜在エンコーダ610に関して、610はフレームワークのための認識モジュール
【数50】
として動作し、訓練段階の間にのみ使用される。具体的には、潜在エンコーダ610が過去および将来の軌道情報
【数51】
(602)の両方を取り込み、それらをRNNエンコーダ614に通す。次いで、614において、埋め込みベクトルをLSTMネットワークに通し、時間テップ毎に符号化を生成する。全ての時間ステップにわたる出力は、612からワンホット軌道ラベルciと共に単一のベクトル616に結合され、
【数52】
を生成する。
【0066】
次に、このベクトルを多層パーセプトロン(MLP)に通してμおよびσを得て、分布
【数53】
を出力する。
【0067】
【0068】
条件付き生成器640に関して、例示的な実施形態は、その生成器のためのU?Netのようなアーキテクチャを適合させる。任意の時間ステップtにおいて、ネットワーク条件付き生成器への入力620は、シーンコンテキストマップ
【数55】
(HxWx3)(622)、すべてのエージェントの現在状態
【数56】
(HxWx2)の単一表現(624)、位置マスク
【数57】
(HxWx1)(628)、
【数58】
(HxWx3)からグリッドにおけるエージェント特定位置に投影された各エージェントについてのワンホット軌道特定ラベル(626)、および訓練段階期間に
【数59】
から取得された、またはテスト時に事前分布
【数60】
からサンプリングされた
【数61】
を含む潜在ベクトルマップ
【数62】
(HxWx16)(630)である。
【0069】
形式的には、ネットワーク入力Etは、次式
【数63】
で与えられる。
【0070】
これは、任意の時間ステップtに対してHxWx25のサイズである。表現はエンティティ中心ではないことに留意されたい。言い換えれば、例示的な実施形態は、起動を予測したい1つのターゲットエンティティを有さず、むしろ、すべてのエージェントに対してグローバルエンティティを有する。
【0071】
【数64】
の各時間ステップにおいて、例示的な実施形態は、上記の入力をエンコーダモジュール642に通す。このモジュール642は、情報を小さな空間次元で符号化し、それらをデコーダ644に通すストライド畳み込みを含む。デコーダ644は、ConvLSTMと、エンコーダモジュール642からのスキップ接続を有する転置畳み込みとを含み、HxWのマップを出力する。次に、それは、状態プーリング操作を用いて別のConvLSTM層646に渡される。観測および予測の段階の間、同じネットワークが共有される。最後の1×1畳み込み層が追加されて、次の時間ステップにおけるエージェントの相対予測座標
【数65】
を含む2チャネルマップ650が出力される。
【0072】
例示的な実施形態は、観測された軌道についてグランドトゥルースエージェント位置を使用し、ネットワークの予測に基づいてConvLSTMを展開する。予測段階
【数66】
の間、出力はネットワークへの入力として直接フィードバックされず、むしろ、エージェントの状態が予測に基づいてシーン内の次の位置に更新される。相対予測位置
【数67】
は、絶対予測位置
【数68】
に更新され、シーン内のすべてのエージェントの更新位置を含む更新シーン状態マップ
【数69】
を取得する。シーンのためのそのような表現を使用することは、エージェントの数には無関係であり、エージェントの次の状態はそのそれぞれのピクセル位置で予測されるので、シーンからのエージェントの動的な出入りを処理することができることに留意されたい。
【0073】
状態プールConvLSTM646に関して、同時マルチエージェント予測は、ConvLSTMにおける状態プールを通して実現される。マルチエージェント軌道予測のために標準的なConvLSTMを使用することは、通常、意味的に整列された軌道を生成するが、軌道は時折、不規則な操縦を含む。例示的な実施形態は、状態プーリングを介してこの問題を解決し、これは、次の位置を予測しようと試みるときに事前状態情報の可用性を保証する。例示的な実施形態は、すべてのエージェント
【数70】
について最終ConvLSTM層から事前状態情報をプールし、エージェント更新位置における(隠れ状態およびセル状態の両方について)
【数71】
で次の状態を初期化し、時間ステップtについて他のすべての位置でゼロベクトルを初期化する。
【0074】
「学習」に関して、例示的な実施形態は、認識ネットワーク
【数72】
と条件生成器
【数73】
の両方を同時に訓練する。例示的な実施形態は、エージェントがすべての時間ステップで訪問したインデックスからの値をプールすることによって、予測軌道
【数74】
を取得する。
【0075】
例示的な実施形態は、ConvLSTMネットワークを訓練する際に2つの損失関数を使用する。
【0076】
再構成損失(reconstruction loss)は、次のように与えられる。
【0077】
【数75】
。これは、予測にペナルティを課し、グランドトゥルースを正確に再構成することを可能にする。
【0078】
KL発散損失(divergence loss)は、以下のように与えられる。
【数76】
。これは、
【数77】
からの出力分布を正則化し、テスト時におけるサンプリング分布
【数78】
に一致させる。
【0079】
テスト段階では、推論時に、例示的な実施形態は、軌道固有ラベルciにアクセスするのではなく、むしろ、これらのラベルをランダムにサンプリングすることによって、特定の行動を問い合わせる。各エージェントについてのciと共に、例示的な実施形態は、また、
【数79】
からziをサンプリングする。しかしながら、
【数80】
は入力から独立するように緩和することができ、したがって、テスト時に事前分布が
【数81】
であることを意味する。
【0080】
図2は、本発明の実施形態による、同時マルチエージェント回帰軌道予測の例示的な実装のブロック/フロー図である。
【0081】
自動運転車501は、コンピュータ510と、操舵及び制御機構516とを含むことができる。コンピュータ510は、パーセプション方法512および計画方法514を実行するようにプログラムすることができる。
【0082】
パーセプション方法512は、センサ入力520、他のパーセプション出力522、将来予測524、およびダウンストリームタスク526を含むことができる。
【0083】
将来予測524は、運転シミュレータ530および予測方法532を含むことができる。
【0084】
運転シミュレータ530は、シーン生成器540(100)、多様な行動生成器542(200)、およびダイナミクスシミュレータ544(300)を含んでもよい。
【0085】
シーン生成器540(100)は、道路グラフ生成550(120)および実物体インスタンス化552(130)に依拠することができる。
【0086】
多様な行動生成器542(200)は、操縦識別560(210)および速度プロファイルサンプリング562(220)に依拠することができる。
【0087】
図3は、本発明の実施形態による、同時マルチエージェント回帰軌道予測の例示的なアルゴリズムフローのブロック/フロー図である。
【0088】
シミュレーションプロセスの第1のステップは、実データセットからシーン(シーン生成100)のトポロジーレイアウトを再構成することである。例示的な実施形態は、公開されて利用可能な地図情報110を使用するか、またはシーンの道路グラフを作成するためにデータセット内の利用可能な高精細度HD地図情報を使用するかのいずれかである。道路グラフは、互いに相互接続された車線の階層構造を捕捉する(道路グラフ生成120)。次いで、例示的な実施形態は、生成された道路グラフ上の現実のシーンから車両を配置または導入し、車両をそれらの最も近い車線IDに割り当てる(実物体インスタンス化130)。
【0089】
次に、例示的な実施形態は、実世界データ(多様な行動生成200)から関連する速度プロファイルと共に行動をサンプリングする、多様な行動生成に移動する。具体的には、多様な行動生成200は、操縦識別210および速度プロファイルサンプリング220を含む。操縦識別210は、シーン内の全ての車両に対して妥当な操縦を識別し、同時に実世界データから速度プロファイルサンプリング220が適切な速度をサンプリングする。道路グラフ100およびサンプリングされた速度プロファイル220は、210からの所望の目的地と共に、ダイナミクスシミュレータ300への入力として与えられ、シーン内の全ての車両に対して安全な軌道400を生成する。
【0090】
図5は、本発明の実施形態による、同時マルチエージェント下記軌道予測のための例示的な処理システムのブロック/フロー図である。
【0091】
処理システムは、少なくとも1つのプロセッサまたはプロセッサ装置(CPU)704と、システムバス702を介して他の構成要素に動作可能に結合されたグラフィックスプロセッシングユニット(GPU)705とを含む。キャッシュ706、読み出し専用メモリ(ROM)708、ランダムアクセスメモリ(RAM)710、入力/出力(I/O)アダプタ720、ネットワークアダプタ730、ユーザインタフェースアダプタ740、およびディスプレイアダプタ750は、システムバス702に動作可能に結合されている。軌道を予測する単一表現モデル760が、バス702を介して採用され得る。軌道を予測する単一表現モデル760は、シーン生成器100、多様な行動生成器200、およびダイナミクスシミュレータ300を採用することができる。
【0092】
記憶装置722は、I/Oアダプタ720によってシステムバス702に動作可能に結合されている。記憶装置722は、ディスク記憶装置(例えば、磁気または光ディスク記憶装置)、固体磁気装置などのうちの任意のものとすることができる。
【0093】
トランシーバ732は、ネットワークアダプタ730によってシステムバス702に動作可能に結合されている。
【0094】
ユーザ入力装置742は、ユーザインタフェースアダプタ740によってシステムバス702に動作可能に結合されている。ユーザ入力装置742は、キーボード、マウス、キーパッド、画像撮像装置、モーションセンシング装置、マイクロフォン、前述の装置のうちの少なくとも2つの機能を組み込んだ装置などのうちの任意のものとすることができる。もちろん、本発明の精神を維持しながら、他のタイプの入力装置を使用することもできる。ユーザ入力装置742は、同じタイプのユーザ入力装置または異なるタイプのユーザ入力装置とすることができる。ユーザ入力装置742は、処理システムとの間で情報を入出力するために使用される。
【0095】
ディスプレイ装置752は、ディスプレイアダプタ650によってシステムバス702に動作可能に結合されている。
【0096】
もちろん、処理システムは当業者によって容易に企図されるように、他の要素(図示せず)を含んでもよく、また、特定の要素を省略してもよい。例えば、当業者によって容易に理解されるように、様々な他の入力デバイスおよび/または出力デバイスを、システムの特定の実装に応じて、システムに含めることができる。例えば、様々なタイプの無線および/または有線の入力および/または出力デバイスを使用することができる。さらに、様々な構成の追加のプロセッサ、プロセッサデバイス、コントローラ、メモリなども、当業者によって容易に理解されるように利用することができる。処理システムのこれらおよび他の変形は、本明細書で提供される本発明の教示を与えられた当業者によって容易に企図される。
【0097】
図6は、本発明の実施形態による、同時マルチエージェント回帰軌道予測のための例示的な方法のブロック/フロー図である。
【0098】
ブロック801において、シーン生成器を介して、実世界データを含むデータセットからシーンのトポロジーレイアウトを再構成する。
【0099】
ブロック803において、シーンの道路グラフを生成し、道路グラフは、相互接続された車線の階層構造を捕捉する。
【0100】
ブロック805で、データセットで利用可能なトラックレット情報を利用することによって、生成された道路グラフ上でシーンから車両を組み込む。
【0101】
ブロック807で、最も近い車線識別に車両を割り当てる。
【0102】
ブロック809で、シーン内のすべての車両について多様な妥当な行動を識別する。
【0103】
ブロック811で、多様な行動生成器によって、多様な妥当な行動から1つの行動をサンプリングし、サンプリングされた1つの行動に類似するデータセットの実世界データからサンプリングされた関連する速度プロファイルを選択する。
【0104】
ブロック813で、道路グラフおよびサンプリングされた速度プロファイルを所望の目的地とともにダイナミクスシミュレータに送り、ユーザが所望の運転シナリオを再作成するための複数のシミュレーションされた多様な軌道のうちの1つ以上を選択することが可能なように、視覚化装置上に出力される複数のシミュレーションされた多様な軌道を生成する。
【0105】
図7は、本発明の実施形態による、同時マルチエージェント回帰軌道予測のための方法で使用される方程式のブロック/フロー図である。
【0106】
式900は、安全な軌道、認識ネットワーク、条件付き生成器、および、再構成損失およびKL発散損失などの損失に対する出力を識別する。
【0107】
図8は、本発明の実施形態による、同時マルチエージェント回帰軌道予測のための実用的な適用のブロック/フロー図である。
【0108】
高度運転者支援システム(ADAS)1001、ロボット1003、およびエージェント1005は、シーン1010で使用することができる。かかる適用1001、1003、1005は、他の車両/ロボット/エージェントがシーン1010でどのように移動するかについての知識を必要とし得る。シミュレーションプロセス1012は、安全計画又は安全行動1020がレンダリングされるように、車両/ロボット/エージェント1001、1003、1005に対する多様な行動をシミュレーションするために行われる。あるいは、ADASまたはロボットまたは他の適用で使用される訓練モデルのために、多様な訓練例1022を生成することができる。シミュレーションプロセス1012は、シーン生成器100、多様な行動生成器200、およびダイナミクスシミュレータ300を使用することができる。
【0109】
結論として、例示的な実施形態は、実世界シナリオに対して複数のドライバの意図を有する行動を生成する問題に対処する。これを達成するために、例示的な実施形態は、センサ空間内で軌道を生成するときに生じるいくつかの低レベルドメイン特異的ギャップを抽象化し、複数のドメインにわたる軌道の一般化可能性を改善する、シーンの上面視表現に関する新しいシミュレーション方法を提案する。具体的には、例示的な実施形態は、例えば、オープンソース地図情報を活用して、実世界データからシーンを再現し、シミュレーションされた車両のためのマルチインテント行動を実行する。シミュレーション方法は、実世界データから類似の速度プロファイルをサンプリングすることにより、現実的な軌道を組み込む。例示的な実施形態は、現在の交通状況に対して安全な加速を提供するインテリジェントドライバーモデル(IDM)に基づくダイナミクスシミュレーションエンジンを有する。また、例示的な実施形態は、そのような操縦を実行しながら安全をチェックする模擬車両のための車線変更決定を組み込む。
【0110】
本明細書で使用されるように、用語「データ」、「コンテンツ」、「情報」および同様の用語は、様々な例示的な実施形態に従って、捕捉され、送信され、受信され、表示され、および/または格納されることが可能なデータを参照するように、互換的に使用されることが可能である。したがって、かかる用語の使用は、開示の精神及び範囲を制限するものと解釈されるべきではない。さらに、別のコンピューティングデバイスからデータを受信するようにコンピューティングデバイスが本明細書に記載される場合、データは別のコンピューティングデバイスから直接受信することも、1つ以上の中間コンピューティングデバイス、例えば、1つ以上のサーバ、リレー、ルータ、ネットワークアクセスポイント、基地局などを介して間接的に受信することもできる。同様に、データを別のコンピューティングデバイスに送るようにコンピューティングデバイスが本明細書に記載されている場合、データは直接、別のコンピューティングデバイスに送ることができ、または、1つ以上の中間コンピューティングデバイス、例えば、1つ以上のサーバ、リレー、ルータ、ネットワークアクセスポイント、基地局などを介して間接的に送ることができる。
【0111】
ユーザとの対話を提供するために、本明細書に記載される主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、キーボードと、ユーザがコンピュータに入力を提供することができるポインティングデバイス、例えば、マウスまたはトラックボールとを有するコンピュータ上に実装することができる。他の種類のデバイスも、ユーザとの対話を提供するために使用することができ、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックとすることができ、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形態で受信することができる。
【0112】
当業者には理解されるように、本発明の態様は、システム、方法、またはコンピュータプログラム製品として実施することができる。したがって、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、または本明細書では一般に「回路」、「モジュール」、「計算機」、「装置(device)」、または「システム」と呼ばれ得るソフトウェアおよびハードウェアの態様を組み合わせた実施形態の形態をとることができる。さらに、本発明の態様は、その上に具現化されたコンピュータ可読プログラムコードを有する1つまたは複数のコンピュータ可読媒体に具現化されたコンピュータプログラム製品の形態をとることができる。
【0113】
1つまたは複数のコンピュータ可読媒体の任意の組合せを利用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってもよい。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁気、赤外線、または半導体のシステム、装置、またはデバイス、あるいは前述のものの任意の適切な組合せとすることができるが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例(非網羅的なリスト)は、1つ以上のワイヤを有する電気的接続、携帯用コンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、消去可能プログラマブル読出し専用メモリ、光ファイバ、携帯用コンパクトディスク読出し専用メモリ、光データ記憶装置、磁気データ記憶装置、または前述の任意の適切な組み合わせを有する。本文書のコンテキストでは、コンピュータ可読記憶媒体は、命令実行システム、装置、またはデバイスによって、またはそれに関連して使用するためのプログラムを含む、またはそれを記憶することができる、任意の有形媒体であってもよい。
【0114】
コンピュータ可読信号媒体は、例えば、ベースバンドで、または搬送波の一部として、コンピュータ可読プログラムコードが組み込まれた伝搬データ信号を含むことができる。そのような伝播信号は、電磁、光学、またはそれらの任意の適切な組み合わせを含むが、それらに限定されない、任意の様々な形態をとることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、命令実行システム、装置、または装置によって、またはそれに関連して使用するために、プログラムを通信、伝播、または転送することができる、任意のコンピュータ可読媒体であってもよい。
【0115】
コンピュータ可読媒体上に具現化されたプログラムコードは、無線、有線、光ファイバケーブル、RFなど、または前述のもの任意の適切な組合せを含むがこれらに限定されない、任意の適切な媒体を使用して送信され得る。
【0116】
本発明の態様に対する操作を実行するためのコンピュータプログラムコードは、Java、Smalltalk、C++等のオブジェクト指向プログラミング言語、および「C」プログラミング言語または類似のプログラミング言語等の従来の手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書くことができる。プログラムコードは、全体的にはユーザのコンピュータ上で、部分的にはユーザのコンピュータ上で、スタンドアロンソフトウェアパッケージとして、部分的にはユーザのコンピュータ上で、部分的には遠隔コンピュータ上で、または全体的には遠隔コンピュータまたはサーバ上で実行されてもよい。後者のシナリオでは、遠隔コンピュータは、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、または(例えば、インターネットサービスプロバイダを使用してインターネットを介して)外部コンピュータに接続されてもよい。
【0117】
本発明の態様を、本発明の実施形態による方法、装置(システム)、およびコンピュータプログラム製品のフローチャート図および/またはブロック図を参照して以下に説明する。フローチャート図および/またはブロック図の各ブロック、ならびにフローチャート図および/またはブロック図のブロックの組合せは、コンピュータプログラム命令によって実施できることを理解されたい。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供されて、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令がフローチャートおよび/またはブロック図の1つまたは複数のブロックまたはモジュールで指定された機能/動作を実施する手段を作成するように、マシンを生成することができる。
【0118】
これらのコンピュータプログラム命令は、コンピュータ、他のプログラマブルデータ処理装置、または他の装置に特定の方法で機能するように指示することができるコンピュータ可読媒体に格納することもでき、その結果、コンピュータ可読媒体に格納された命令は、フローチャートおよび/またはブロック図の1つまたは複数のブロックまたはモジュールで指定された機能/動作を実行する命令を含む製品を生成する。
【0119】
コンピュータプログラム命令は、また、コンピュータ、他のプログラマブルデータ処理装置、または他の装置にロードされて、一連の動作ステップがコンピュータ、他のプログラマブル装置、または他の装置上で実行されて、コンピュータまたは他のプログラマブル装置上で実行される命令がフローチャートおよび/またはブロック図の1つまたは複数のブロックまたはモジュールで指定された機能/動作を実装するためのプロセスを提供するように、コンピュータ実装プロセスを生成することができる。
【0120】
本明細書で使用される「プロセッサ」という用語は、例えば、CPU(中央処理装置)および/または他の処理回路を含むものなど、任意の処理装置を含むことが意図されることを理解されたい。また、「プロセッサ」という用語は、1つ以上の処理装置を指すことができ、処理装置に関連する様々な要素は他の処理装置によって共有することができることも理解されたい。
【0121】
本明細書で使用される「メモリ」という用語は、例えば、RAM、ROM、固定メモリデバイス(例えば、ハードドライブ)、リムーバブルメモリ装置(例えば、ディスケット)、フラッシュメモリなど、プロセッサまたはCPUに関連するメモリを含むことを意図している。このようなメモリは、コンピュータ可読記憶媒体と考えることができる。
【0122】
さらに、本明細書で使用される「入力/出力装置」または「I/O装置」という語句は、例えば、処理ユニットにデータを入力する1つ以上の入力装置(例えば、キーボード、マウス、スキャナなど)、および/または処理ユニットに関連付けられた結果を提示する1つ以上の出力装置(例えば、スピーカ、ディスプレイ、プリンタなど)を含むことが意図される。
【0123】
以上の説明は、あらゆる点において、限定するものではなく、例示的かつ典型的なものとして理解されるべきであり、本明細書に開示される本発明の範囲は、詳細な説明からではなく、むしろ特許法によって許容される全範囲に従って解釈されるような特許請求の範囲から決定されるべきである。本明細書に示され、説明された実施形態は、本発明の原理の例示にすぎず、当業者は本発明の範囲および精神から逸脱することなく、様々な修正を実施することができることを理解されたい。当業者は、本発明の範囲および精神から逸脱することなく、様々な他の特徴の組み合わせを実施することができる。以上、本発明の態様を、特許法によって要求される詳細および特異性と共に説明したが、特許請求され、特許証で保護されることが望まれるものは、添付の特許請求の範囲に記載されている。