(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-15
(45)【発行日】2024-08-23
(54)【発明の名称】車線考慮型多様な軌道予測のための分割統治
(51)【国際特許分類】
G08G 1/16 20060101AFI20240816BHJP
B60W 30/08 20120101ALI20240816BHJP
B60W 50/00 20060101ALI20240816BHJP
G06N 3/08 20230101ALI20240816BHJP
G06T 7/00 20170101ALI20240816BHJP
【FI】
G08G1/16 A
B60W30/08
B60W50/00
G06N3/08
G06T7/00 350C
(21)【出願番号】P 2023524925
(86)(22)【出願日】2021-11-09
(86)【国際出願番号】 US2021058592
(87)【国際公開番号】W WO2022103737
(87)【国際公開日】2022-05-19
【審査請求日】2023-04-24
(32)【優先日】2020-11-13
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-11-10
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-11-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504080663
【氏名又は名称】エヌイーシー ラボラトリーズ アメリカ インク
【氏名又は名称原語表記】NEC Laboratories America, Inc.
(74)【代理人】
【識別番号】100123788
【氏名又は名称】宮崎 昭夫
(74)【代理人】
【識別番号】100127454
【氏名又は名称】緒方 雅昭
(72)【発明者】
【氏名】ナラヤナン、 スリラム、 ノーシャー
(72)【発明者】
【氏名】モスレミ、 ラミン
(72)【発明者】
【氏名】ピッタルガ、 フランチェスコ
(72)【発明者】
【氏名】リウ、 ブユ
(72)【発明者】
【氏名】チャンドラカー、 マンモハン
【審査官】宮本 礼子
(56)【参考文献】
【文献】米国特許出願公開第2018/0124423(US,A1)
【文献】特開2019-028650(JP,A)
【文献】特開2019-008796(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00-99/00
G01C 21/00-25/00
B60W 50/00
B60W 30/08
G06N 3/08
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
車両軌道予測のためのコンピュータに実装された方法であって、
訓練シーンのトップビューマップにおけるエージェントのそれぞれの位置で、チャネル次元において過去の軌道の特徴と車線センターラインの特徴とを連結し(425)、連結された特徴を得ることと、
単一のフォワードパスでの畳み込みエンコーダによって、前記トップビューマップ、前記連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む前記訓練シーンの単一の表現から得られた畳み込み特徴を得ること(430)と、
ハイパーカラム軌道エンコーダによって、前記畳み込み特徴から、前記トップビューマップにおけるエージェントのそれぞれの位置と、後続の下位の畳み込み層における補間された位置とからの前記畳み込み特徴を含むハイパーカラム記述子ベクトルを抽出すること(435)と、
ハイパーカラム軌道デコーダによって、前記ハイパーカラム記述子ベクトルから主軌道予測および補助軌道予測を得ること(440)と、
逆最適制御(IOC)ベースのランキングモジュールによって、前記主軌道予測および前記補助軌道予測それぞれに対するそれぞれのスコアを生成すること(445)と、
前記主軌道予測および前記補助軌道予測のそれぞれの前記スコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を
入力として用いて、
前記車両軌道予測を出力とする車両軌道予測ニューラルネットワークを訓練すること(450)と
、
車線に沿った軌道距離スコアとセンターラインヨースコアとを含む経験則(heuristics)に基づいて、前記車線センターラインをランク付けすることとを含む、コンピュータに実装された方法。
【請求項2】
請求項1に記載のコンピュータに実装された方法において、
初期訓練入力として、前記訓練シーンにおける前記車両の前記トップビューマップ、前記過去の軌道、および前記車線センターラインを取得することをさらに含む、コンピュータに実装された方法。
【請求項3】
請求項2に記載のコンピュータに実装された方法において、
過去軌道エンコーダによって、前記過去の軌道を符号化して、前記過去の軌道の特徴を得ることをさらに含む、コンピュータに実装された方法。
【請求項4】
請求項2に記載のコンピュータに実装された方法において、
センターラインエンコーダによって、前記車線センターラインを符号化して、前記車線センターラインの特徴を得ることをさらに含む、コンピュータに実装された方法。
【請求項5】
請求項1に記載のコンピュータに実装された方法において、さらに、
前記訓練された車両軌道予測ニューラルネットワークによって、現在のシーンに基づく前記車両の軌道予測を生成することと、
前記軌道予測に基づいて、衝突回避のための現在の車両軌道を制御する車両システムを制御することとを含む、コンピュータに実装された方法。
【請求項6】
請求項1に記載のコンピュータに実装された方法において、
前記ハイパーカラム軌道デコーダは、前記エージェントそれぞれについて複数の出力を生成する複数の1×1畳み込みからなる、コンピュータに実装された方法。
【請求項7】
請求項1に記載のコンピュータに実装された方法において、
前記主
軌道予測は法線接線座標であり、前記補助
軌道予測は前記主
軌道予測を正則化するために前記トップビューマップのグローバルデカルト座標である、コンピュータに実装された方法。
【請求項8】
請求項1に記載のコンピュータに実装された方法において、
前記IOC損失目標は、前記主軌道予測の各々に対する累積報酬を最大化する、コンピュータに実装された方法。
【請求項9】
請求項1に記載のコンピュータに実装された方法において、
前記ハイパーカラム記述子ベクトルが、前記シーンに存在する前記エージェントそれぞれに関して異なるスケールで、前記訓練シーンの対話およびグローバルコンテキストを捕捉する、コンピュータに実装された方法。
【請求項10】
車両軌道予測のためのコンピュータプログラム製品であって、該コンピュータプログラム製品は、プログラム命令を具現化した非一時的のコンピュータ可読記憶媒体を含み、該プログラム命令は、コンピュータに方法を実行させるために前記コンピュータによって実行可能であり、前記方法は、
訓練シーンのトップビューマップにおけるエージェントのそれぞれの位置で、チャネル次元において過去の軌道の特徴と車線センターラインの特徴とを連結し(425)、連結された特徴を得ることと、
単一のフォワードパスでの畳み込みエンコーダによって、前記トップビューマップ、前記連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む前記訓練シーンの単一の表現から得られた畳み込み特徴を得ること(430)と、
ハイパーカラム軌道エンコーダによって、前記畳み込み特徴から、前記トップビューマップにおけるエージェントのそれぞれの位置と、後続の下位の畳み込み層における補間された位置とからの前記畳み込み特徴を含むハイパーカラム記述子ベクトルを抽出すること(435)と、
ハイパーカラム軌道デコーダによって、前記ハイパーカラム記述子ベクトルから主軌道予測および補助軌道予測を得ること(440)と、
逆最適制御(IOC)ベースのランキングモジュールによって、前記主軌道予測および前記補助軌道予測それぞれに対するそれぞれのスコアを生成すること(445)と、
前記主軌道予測および前記補助軌道予測のそれぞれの前記スコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を
入力として用いて、
前記車両軌道予測を出力とする車両軌道予測ニューラルネットワークを訓練すること(450)と
、
車線に沿った軌道距離スコアとセンターラインヨースコアとを含む経験則(heuristics)に基づいて、前記車線センターラインをランク付けすることとを含む、コンピュータプログラム製品。
【請求項11】
請求項
10に記載のココンピュータプログラム製品において、
初期訓練入力として、前記訓練シーンにおける前記車両の前記トップビューマップ、前記過去の軌道、および前記車線センターラインを取得することをさらに含む、コンピュータプログラム製品。
【請求項12】
請求項
11に記載のコンピュータプログラム製品において、
過去軌道エンコーダによって、前記過去の軌道を符号化して、前記過去の軌道の特徴を得ることをさらに含む、コンピュータプログラム製品。
【請求項13】
請求項
11に記載のコンピュータプログラム製品において、
センターラインエンコーダによって、前記車線センターラインを符号化して、前記車線センターラインの特徴を得ることをさらに含む、コンピュータプログラム製品。
【請求項14】
請求項
10に記載のコンピュータプログラム製品において、さらに、
前記訓練された車両軌道予測ニューラルネットワークによって、現在のシーンに基づく前記車両の軌道予測を生成することと、
前記軌道予測に基づいて、衝突回避のための現在の車両軌道を制御する車両システムを制御することとを含む、コンピュータプログラム製品。
【請求項15】
請求項
10に記載のコンピュータプログラム製品において、
前記ハイパーカラム軌道デコーダは、前記エージェントそれぞれについて複数の出力を生成する複数の1×1畳み込みからなる、コンピュータプログラム製品。
【請求項16】
請求項
10に記載のコンピュータプログラム製品において、
前記主
軌道予測は法線接線座標であり、前記補助
軌道予測は前記主
軌道予測を正則化するために前記トップビューマップのグローバルデカルト座標である、コンピュータプログラム製品。
【請求項17】
請求項
10に記載のコンピュータプログラム製品において、
前記IOC損失目標は、前記主軌道予測の各々に対する累積報酬を最大化する、コンピュータプログラム製品。
【請求項18】
車両軌道予測のためのコンピュータ処理システムであって、
プログラムコードを記憶するためのメモリ装置(140)と、
前記プログラムコードを実行するために、前記メモリ装置に動作可能に結合されたプロセッサ装置(110)とを有し、前記プログラムコードは、
訓練シーンのトップビューマップにおけるエージェントのそれぞれの位置で、チャネル次元において過去の軌道の特徴と車線センターラインの特徴とを連結し、連結された特徴を得ることと、
単一のフォワードパスでの畳み込みエンコーダを用いて、前記トップビューマップ、前記連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む前記訓練シーンの単一の表現から得られた畳み込み特徴を得て、
ハイパーカラム軌道エンコーダを用いて、前記畳み込み特徴から、前記トップビューマップにおけるエージェントのそれぞれの位置と、後続の下位の畳み込み層における補間された位置とからの前記畳み込み特徴を含むハイパーカラム記述子ベクトルを抽出し、
ハイパーカラム軌道デコーダを用いて、前記ハイパーカラム記述子ベクトルから主軌道予測および補助軌道予測を得て、
逆最適制御(IOC)ベースのランキングモジュールを用いて、前記主軌道予測および前記補助軌道予測それぞれに対するそれぞれのスコアを生成し、
前記主軌道予測および前記補助軌道予測のそれぞれの前記スコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を
入力として用いて、
前記車両軌道予測を出力とする車両軌道予測ニューラルネットワークを訓練することと
、
車線に沿った軌道距離スコアとセンターラインヨースコアとを含む経験則(heuristics)に基づいて、前記車線センターラインをランク付けすることとを含む、コンピュータ処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願情報
本出願は、2021年11月8日に出願された米国特許出願第17/521,139号、2020年11月10日に出願された米国仮特許出願第63/111,674号、および2020年11月13日に出願された米国仮特許出願第63/113,434号に優先権を主張し、それぞれ参照によりその全体が本明細書に組み込まれる。
【背景技術】
【0002】
本発明は、車両に関し、より詳細には、車線を考慮した多様な軌道予測のための分割統治に関する。
関連技術の説明
【0003】
軌道予測は、自律走行車が行動を計画し実行するための安全上重要なツールである。最近の手法は、地図データを利用することで最先端の性能を達成しているが、地図データはソフトな制約としてのみ提供されるため、この情報を完全に利用することはできない。
【発明の概要】
【0004】
本発明の側面によれば、走行経路予測のためのコンピュータに実装された方法が提供される。この方法は、訓練シーンのトップビューマップにおけるエージェントのそれぞれの位置で、チャネル次元において過去の軌道の特徴と車線センターラインの特徴とを連結し、連結された特徴を得ることを含む。さらに、この方法は、単一のフォワードパスでの畳み込みエンコーダによって、前記トップビューマップ、前記連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む前記訓練シーンの単一の表現から得られた畳み込み特徴を得ることを含む。また、この方法は、ハイパーカラム軌道エンコーダによって、前記畳み込み特徴から、ハイパーカラム記述子ベクトルを抽出する。ハイパーカラム記述子ベクトルは、前記トップビューマップにおけるエージェントのそれぞれの位置と、後続の下位の畳み込み層における補間された位置とからの前記畳み込み特徴を含む。さらに、この方法は、ハイパーカラム軌道デコーダによって、前記ハイパーカラム記述子ベクトルから主軌道予測および補助軌道予測を得る。さらに、この方法は、逆最適制御(IOC)ベースのランキングモジュールによって、前記主軌道予測および前記補助軌道予測それぞれに対するそれぞれのスコアを生成することを含む。さらに、この方法は、前記主軌道予測および前記補助軌道予測のそれぞれの前記スコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を用いて、車両軌道予測ニューラルネットワークを訓練することを含む。
【0005】
本発明の他の態様によれば、走行路予測のためのコンピュータプログラム製品が提供される。コンピュータプログラム製品は、プログラム命令を具現化した非一時的のコンピュータ可読記憶媒体を含む。プログラム命令は、コンピュータに方法を実行させるために前記コンピュータによって実行可能である。この方法は、訓練シーンのトップビューマップにおけるエージェントのそれぞれの位置で、チャネル次元において過去の軌道の特徴と車線センターラインの特徴とを連結し、連結された特徴を得ることを含む。さらに、この方法は、単一のフォワードパスでの畳み込みエンコーダによって、前記トップビューマップ、前記連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む前記訓練シーンの単一の表現から得られた畳み込み特徴を得ることを含む。また、この方法は、ハイパーカラム軌道エンコーダによって、前記畳み込み特徴から、ハイパーカラム記述子ベクトルを抽出することを含む。ハイパーカラム記述子ベクトルは、前記トップビューマップにおけるエージェントのそれぞれの位置と、後続の下位の畳み込み層における補間された位置とからの前記畳み込み特徴を含む。さらに、この方法は、ハイパーカラム軌道デコーダによって、前記ハイパーカラム記述子ベクトルから主軌道予測および補助軌道予測を得ることを含む。さらに、この方法は、逆最適制御(IOC)ベースのランキングモジュールによって、前記主軌道予測および前記補助軌道予測それぞれに対するそれぞれのスコアを生成することを含む。さらに、この方法は、前記主軌道予測および前記補助軌道予測のそれぞれの前記スコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を用いて、車両軌道予測ニューラルネットワークを訓練することを含む。
【0006】
本発明のさらに他の態様によれば、走行路予測のためのコンピュータ処理システムが提供される。コンピュータ処理システムは、プログラムコードを記憶するためのメモリ装置を含む。さらに、コンピュータ処理システムは、訓練シーンのトップビューマップにおけるエージェントのそれぞれの位置で、チャネル次元において過去の軌道の特徴と車線センターラインの特徴とを連結し、連結された特徴を得るためにプログラムコードを実行するために、前記メモリ装置に動作可能に結合されたプロセッサ装置を有する。さらに、このプロセッサ装置は、単一のフォワードパスでの畳み込みエンコーダを用いて、前記トップビューマップ、前記連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む前記訓練シーンの単一の表現から得られた畳み込み特徴を得るためにプログラムコードを実行する。また、このプロセッサ装置は、ハイパーカラム軌道エンコーダを用いて、前記畳み込み特徴からハイパーカラム記述子ベクトルを抽出するためにプログラムコードを実行する。ハイパーカラム記述子ベクトルは、前記トップビューマップにおけるエージェントのそれぞれの位置と、後続の下位の畳み込み層における補間された位置とからの前記畳み込み特徴を含む。さらに、このプロセッサ装置は、ハイパーカラム軌道デコーダを用いて、前記ハイパーカラム記述子ベクトルから主軌道予測および補助軌道予測を得るためにプログラムコードを実行する。さらに、このプロセッサ装置は、逆最適制御(IOC)ベースのランキングモジュールを用いて、前記主軌道予測および前記補助軌道予測それぞれに対するそれぞれのスコアを生成するためにプログラムコードを実行する。また、このプロセッサ装置は、前記主軌道予測および前記補助軌道予測のそれぞれの前記スコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を用いて、車両軌道予測ニューラルネットワークを訓練するためにプログラムコードを実行する。
【0007】
これらおよび他の特徴および利点は、添付の図面と関連して読まれる、その例示的な実施形態の以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【0008】
本開示は、以下の図を参照して、好ましい実施形態の以下の説明において詳細を提供する。
【0009】
【
図1】本発明の実施形態による、例示的な演算装置を示すブロック図である。
【0010】
【
図2】本発明の実施形態による、例示的なシステムを示す図である。
【0011】
【
図3】本発明の実施形態による、本発明を適用できる例示的な環境を示すブロック図である。
【0012】
【
図4】本発明の実施形態による、車両軌道予測のための例示的な方法を示すフロー図である。
【
図5】本発明の実施形態による、車両軌道予測のための例示的な方法を示すフロー図である。
【0013】
【
図6】本発明の実施形態による、分割統治技法のための例示的な疑似コードを示す図である。
【発明を実施するための形態】
【0014】
本発明の実施形態は、車線を考慮した多様な軌道予測のための分割統治に向けられる。
【0015】
発明の実施形態は、軌道が車線に沿った法線-接線(NT)座標で予測される、車線アンカーを使用するハイブリッド予測フレームワークを提案する。NT予測は、車線アンカーの助けを借りて、強力な意味的結合を提供する。性能を高めるために、車両ダイナミクスのモデル化に役立つ補助的な予測を直交フレーム(XY)で行う。その後、NTの予測値をXYに基づいて正則化し、その逆もまた然りである。
【0016】
さらに、本発明の実施形態は、本明細書において分割統治(DAC)と呼ばれるアプローチを提案し、これは、勝者総取りの目標により良い初期化を提供し、スプリアスモードなしで多様な仮説を生み出すことを保証する。
【0017】
本発明の実施形態に従って、HDマップデータ構造とトップビューラスタライズドマップとの両方を入力として利用する、新規な軌道予測問題が提案される。具体的には、本発明では、入力空間と解答空間との両方を車線方向に沿った接線座標に変換し、学習プロセスを容易にする。車両は通常、車線に沿って走行するため、予測モデルが車線の構造に大きく依存し、他の有用な情報を無視してしまう可能性がある。そのため、HD地図情報を使用すると、HD地図の確率的な誤情報が入りやすくなり、ドライバが道路のセマンティクスに従わない場合、大きな誤差が生じる可能性がある。この問題を解決するために、本発明では、ラスタライズされたトップビューマップとエージェントの直交座標の軌道履歴とを補助入力として利用する。さらに、本発明では、直交空間での補助予測を行い、直交出力に基づくNT予測を正則化することで、ネットワークにエージェントのダイナミクスを認識させ、NT予測をアンカーに矛盾が生じにくくすることができる。
【0018】
また、我々の軌道予測フレームワークにおけるマルチモーダリティに対処するために、本発明の実施形態は、スプリアス出力モードの問題を克服するためにより良い初期化を提供する、分割統治(DAC-WTA)という新しいWinner-takes-all(WTA)損失関数を提案する。最後に、提案したDAC-WTA損失関数を用いて、軌道予測問題の異なるモードを捉えることができる多重選択学習(MCL)ネットワークを訓練する。
【0019】
提案されたMCLネットワークを実装するために、本発明は、チャネル次元にマルチエージェント入力を埋め込むシーン表現を利用する。車線アンカーとは別に、本発明による方法は、シーンのラスタライズされた鳥瞰図表現を取り込んで、グローバルなシーンコンテキストを提供する。畳み込みはマルチエージェントの対話(やり取り)をモデル化するために用いられ、グローバルなコンテキストベクトルを利用する従来の方法とは異なり、本発明の実施形態ではハイパーカラム記述子を用いて複数の特徴スケールで対話を捕らえる。本発明の実施形態は、逆最適制御(IOC)に類似したランキングも利用する。
【0020】
図1は、本発明の実施形態による、例示的な演算装置100を示すブロック図である。演算装置100は、車線考慮型多様な軌道予測のための分割統治を行うように構成される。
【0021】
演算装置100は、限定されないが、コンピュータ、サーバ、ラックベースのサーバ、ブレードサーバ、ワークステーション、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、モバイル演算装置、ウェアラブル演算装置、ネットワーク機器、ウェブ機器、分散演算システム、プロセッサベースのシステム、および/または利用者電子装置など、本書に記載される機能を実行できる任意のタイプの計算またはコンピュータ装置として具現化することができる。さらにまたは代替的に、演算装置100は、1つまたは複数のコンピュートスレッド、メモリスレッド、または他のラック、スレッド、演算シャーシ、または物理的に分解された演算装置の他の構成要素として具現化されてもよい。
図1に示すように、演算装置100は、例示的に、プロセッサ110、入力/出力サブシステム120、メモリ130、データ記憶装置140、および通信サブシステム150、および/またはサーバまたは同様の演算装置に一般的に見られる他の構成要素およびデバイスを含んでいる。もちろん演算装置100は、他の実施形態において、サーバコンピュータに一般的に見られるような他のまたは追加の構成要素(例えば、様々な入力/出力デバイス)を含んでもよい。さらに、いくつかの実施形態では、例示的な構成要素の1つ以上が、別の構成要素に組み込まれるか、さもなければ、別の構成要素の一部を形成することができる。例えば、メモリ130、またはその一部は、いくつかの実施形態において、プロセッサ110に組み込まれてもよい。
【0022】
プロセッサ110は、本明細書に記載された機能を実行することができる任意のタイプのプロセッサとして具現化することができる。プロセッサ110は、シングルプロセッサ、マルチプロセッサ、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、シングルまたはマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、またはその他のプロセッサやプロセスシング/制御回路として具現化されてもよい。
【0023】
メモリ130は、本明細書に記載された機能を実行することができる任意のタイプの揮発性または不揮発性メモリまたははデータストレージとして具現化され得る。動作中、メモリ130は、オペレーティングシステム、アプリケーション、プログラム、ライブラリ、およびドライバなど、演算装置100の動作中に使用される様々なデータおよびソフトウェアを格納することができる。メモリ130は、I/Oサブシステム120を介してプロセッサ610と通信可能に結合され、プロセッサ110メモリ130、および演算装置100の他の構成要素との入出力動作を容易にするための回路および/または構成要素として具現化され得る。例えば、I/Oサブシステム120は、メモリコントローラハブ、入力/出力制御ハブ、プラットフォームコントローラハブ、集積制御回路、ファームウェアデバイス、通信リンク(例えば、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレースなど)および/または、入力/出力操作を容易にするための他の構成要素およびサブシステムとして具現化されてもよく、さもなければ、これらを含んでいても良い。いくつかの実施形態では、I/Oサブシステム120は、システムオンチップ(SOC)の一部を形成し、プロセッサ110、メモリ130、および演算装置100の他の構成要素と共に、単一の集積回路チップに組み込まれてもよい。
【0024】
データ記憶装置140は、例えば、メモリ装置および回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、または他のデータ記憶装置など、データの短期または長期記憶用に構成された任意のタイプの装置またはデバイスとして具現化することができる。データ記憶装置140は、車線考慮型多様な軌道予測のための分割統治のプログラムコードを格納することができる。演算装置100の通信サブシステム150は、ネットワークを介して演算装置100と他のリモート装置との間の通信を可能にすることができる、任意のネットワークインタフェースコントローラまたは他の通信回路、装置、またはその集合体として具現されることができる。通信サブシステム150は、任意の1つ以上の通信技術(例えば、有線または無線通信)および関連するプロトコル(例えば、イーサネット、InfiniBand(登録商標)、Bluetooth(登録商標)、Wi-Fi(登録商標)、WiMAX(登録商標)など)を使用してそのような通信を実現するように構成され得る。
【0025】
図示のように、演算装置100は、1つ以上の周辺装置160も含むことができる。周辺装置160は、任意の数の追加の入出力装置、インタフェース装置、および/または他の周辺装置を含んでもよい。例えば、いくつかの実施形態では、周辺装置160は、ディスプレイ、タッチスクリーン、グラフィック回路、キーボード、マウス、スピーカシステム、マイク、ネットワークインタフェース、および/または他の入力/出力装置、インタフェース装置、および/または周辺装置を含むことができる。
【0026】
もちろん、演算装置100は、当業者が容易に思いつくように、他の要素(図示せず)を含むこともでき、また、特定の要素を省略することもできる。例えば、様々な他の入力装置および/または出力装置は、当業者によって容易に理解されるように、同じものの特定の実装に依存して、演算装置100に含まれることが可能である。例えば、様々なタイプの無線および/または有線の入力および/または出力装置を使用することができる。さらに、プロセッサ、コントローラ、メモリなどを追加して、様々な構成で利用することも可能である。処理システム100のこれらおよび他の変形例は、本明細書に提供される本発明の教示を考慮すれば、当業者によって容易に企図されるものである。
【0027】
本明細書で採用されるように、「ハードウェアプロセッササブシステム」または「ハードウェアプロセッサ」という用語は、1つまたは複数の特定のタスクを実行するために協働するプロセッサ、メモリ(RAM、キャッシュなど)、ソフトウェア(メモリ管理ソフトウェアなど)またはそれらの組合せを指すことができる。有用な実施形態では、ハードウェアプロセッササブシステムは、1つまたは複数のデータ処理要素(例えば、論理回路、処理回路、命令実行装置など)を含み得る。1つまたは複数のデータ処理要素は、中央処理装置、画像処理装置、および/または別個のプロセッサ、または演算要素ベースのコントローラ(例えば、論理ゲートなど)に含めることができる。ハードウェアプロセッササブシステムは、1つまたは複数のオンボードメモリ(例えば、キャッシュ、専用メモリアレイ、読み出し専用メモリなど)を含むことができる。いくつかの実施形態では、ハードウェアプロセッササブシステムは、オンボードまたはオフボードであり得る、またはハードウェアプロセッササブシステムによる使用のために専用であり得る1つまたは複数のメモリ(例えば、ROM、RAM、基本入出力システム(BIOS)、など)を含むことができる。
【0028】
いくつかの実施形態では、ハードウェアプロセッササブシステムは、1つまたは複数のソフトウェア要素を含み、実行することができる。1つ以上のソフトウェア要素は、特定の結果を達成するために、オペレーティングシステムおよび/または1つ以上のアプリケーションおよび/または特定のコードを含むことができる。
【0029】
他の実施形態では、ハードウェアプロセッササブシステムは、指定された結果を達成するために1つまたは複数の電子処理機能を実行する、専用の専用回路を含むことができる。このような回路は、1つ以上のアプリケーション専用集積回路(ASIC)、FPGA、および/またはPLAを含むことができる。
【0030】
ハードウェアプロセッササブシステムのこれらおよび他のバリエーションも、本発明の実施形態に従って企図されるものである。
【0031】
図2は、本発明の実施形態に従った、例示的なシステム200を示す。
【0032】
システム200は、シーン情報201を受信する。システム200は、過去軌道エンコーダ210、センターラインエンコーダ220、連結器225、マルチエージェント畳み込みエンコーダ230、ハイパーカラム軌道デコーダ240、逆最適制御(IOC)に基づくランキングモジュール250を含む。
【0033】
マルチエージェント畳み込みエンコーダ230は、ハイパーカラムベクトル231を出力する。
【0034】
ハイパーカラム軌道デコーダ240は、主(アンカー)予測241と補助予測242とを出力する。
【0035】
システム200は、分割統治-Winner-takes-all(DAC-WTA)目標261、スコア損失目標262、および正則化目標263を含む目標260を使用する。
【0036】
システム200は、アンカー予測241から出力軌道291を提供する。
【0037】
図3は、本発明の実施形態による、本発明を適用することができる例示的な環境300を示すブロック図である。
【0038】
環境300において、ユーザ388は、それぞれが独自の位置および軌道を有する複数の物体399があるシーンに位置している。ユーザ388は、ADAS377を有する車両372(例えば、自動車、トラック、オートバイ等)を運転している。
【0039】
ADAS377は、車線を考慮した軌道予測を算出する。
【0040】
車線考慮型軌道予測に応答して、車両制御決定がなされる。そのために、ADAS377は、決定に対応する動作として、例えば、ステアリング、ブレーキ、および加速システムを制御することができるが、これらに限定されない。
【0041】
このように、ADASの状況において、ステアリング、加速/ブレーキ、摩擦(または摩擦の欠如)、ヨーレート、照明(ハザード、ハイビーム点滅など)、タイヤ圧、ウインカーなどはすべて、本発明に従って最適化した決定で効率的に利用することができる。
【0042】
本発明のシステム(例えば、システム300)は、ユーザが操作している車両372の1つまたは複数のシステムを通じて、ユーザとインタフェースすることができる。例えば、本発明のシステムは、車両372のシステム372A(例えば、ディスプレイシステム、スピーカシステム、および/または何らかの他のシステム)を介してユーザ情報を提供することができる。さらに、本発明のシステム(例えば、システム300)は、車両を制御し、車両372に1つ以上の動作を実行させるために、車両372自身と(例えば、ステアリングシステム、ブレーキシステム、加速システム、ステアリングシステム、照明(ウインカー、ヘッドライト)システムなどを含むがこれらに限定されない車両372の1つまたは複数のシステムを通じて)インタフェースしても良い。このようにして、ユーザまたは車両372自体は、これらの物体399の周りをナビゲートして、その間の潜在的な衝突を回避することができる。情報の提供および/または車両の制御は、本発明の実施形態に従って決定される動作と考えることができる。
【0043】
図4および
図5は、本発明の実施形態による、車両軌道予測のための例示的な方法400を示すフロー図である。
【0044】
ブロック405において、訓練シーンにおける車両のトップビューマップ、過去の軌道、および車線センターラインを取得する。
【0045】
ブロック410において、車線に沿った軌道距離スコアとセンターラインヨースコアとを含む経験則(heuristics)に基づいて、車線センターラインをランク付けする。
【0046】
ブロック415において、過去軌道エンコーダによって、過去の軌道を符号化して、過去の軌道の特徴を取得する。
【0047】
ブロック420において、センターラインエンコーダによって、車線センターラインの最高ランクのものを符号化して車線センターライン特徴を得る。
【0048】
ブロック425において、トップビューマップにおけるエージェントのそれぞれの位置でチャネル次元において、過去の軌道特徴と車線センターライン特徴の最高ランクのものとを連結して、そこで連結された特徴を得る。
【0049】
ブロック430において、単一のフォワードパスでの畳み込みエンコーダによって、トップビューマップ、連結された特徴、および訓練シーン内の車両とエージェントとの対話を含む訓練シーンの単一の表現から得られた畳み込み特徴を取得する。
【0050】
ブロック435において、ハイパーカラム軌道エンコーダによって、畳み込み特徴からハイパーカラム記述子ベクトルを抽出する。ハイパーカラム記述子ベクトルは、トップビューマップにおけるエージェントのそれぞれの位置と、それに続く下位の畳み込み層における補間された位置とからの畳み込み特徴を含む。ハイパーカラム記述子ベクトルは、シーンに存在するエージェントそれぞれに関して、異なるスケールで訓練シーンの対話とグローバルコンテキストとを捕捉する。
【0051】
ブロック440において、ハイパーカラム軌道デコーダによって、ハイパーカラム記述子ベクトルから、主軌道予測および補助軌道予測を得る。
【0052】
ブロック445において、逆最適制御(IOC)ベースのランキングモジュールによって、主軌道予測および補助軌道予測それぞれに対するそれぞれのスコアを生成する。
【0053】
ブロック450において、主軌道予測および補助軌道予測それぞれのスコアに応答する再構成損失、正則化損失目標、およびIOC損失目標を用いて、車両軌道予測ニューラルネットワークを訓練する。
【0054】
ブロック455において、訓練された車両軌道予測ニューラルネットワークによって、現在のシーンに基づく車両の軌道予測を生成する。
【0055】
ブロック460において、衝突回避のための軌道予測に基づき、現在の車両軌道を制御する。ブロック460は、衝突回避のための軌道予測に基づいて現在の車両軌道を制御するために車両システムを制御することを含み得る。
【0056】
図6は、本発明の実施形態による、分割統治技法のための例示的な疑似コード600を示す図である。
【0057】
次に、本発明の実施形態に係る分割統治について説明する。
【0058】
ここで、多仮説予測ネットワークの学習においてWinner-takes-allのための初期化技術として機能する手法の詳細な説明を行う。Xが入力のベクトル空間を表し、yが出力変数のベクトル空間を表すとする。D={(x
i,y
i),・・・,(x
N,y
N)}を空間N個の訓練タプルの集合とし、p(x,y)=p(y|x)p(x)を共同確率密度とする。Xのすべての入力をM個の仮説の集合に対応付ける関数f
θ:X→y
Mを学習することが目的である。数学的には次のように定義する。
【数1】
【0059】
Winner-takes-allの目標は、M個の仮説のうち最も近い仮説で損失を最小化するものである。
【数2】
ここで、y
jは、
【数3】
を用いたラベル空間のボロノイ分割である。この目標は、各仮説がそれを囲むボロノイラベル空間y
iの確率的質量重心に最小化する、出力のセントロイドボロノイ分割を導く。実際には、多様な仮説を得るためにWTAの目標は、以下のようにメタ損失として記述することができる。
【数4】
ここで、δ(.)は、条件が真のときは値1であり、そうでなければ0であるクロネッカーデルタ関数である。
【0060】
次に、本発明の実施形態による、WTAの初期化困難に関して説明する。
【0061】
式(3)は、最適な収束のために主に初期化に依存するEMアルゴリズムおよびK-meansクラスタリングと比較することができる。このため、少数の仮説のボロノイ領域がデータ分布を囲み、勝者総取りの目標からほとんどの仮説が未訓練となり、訓練処理が非常にもろくなる。非当選者にeウェイトを付与することで収束問題を解決する代替案は、すべてのグランドトゥルースが少なくとも1つの仮説に関連付けられ、他の非当選者が均衡に達するため、うまくいかない。また、上位k人の勝者を更新する進化型勝者総取り(winner-takes-all)(EWTA)目標が提案されている。kはk=Mからk=1まで変化し、訓練処理における勝者総取りの目標をもたらす。この方法は、RWTAやWTAと比べてデータ分布をよく捉えているが、それでも誤ったモードの仮説が作成される。
【0062】
次に、本発明の実施形態に係る多様な非スプリアスモード用のDACについて説明する。
【0063】
本明細書では、スプリアスモードの問題を緩和し、すべての出力仮説のボロノイ領域を残してデータの一部を捕捉する、分割統治と呼ばれる新規の初期化技術が提案される。M個の仮説をk個の集合に分け、最小点集合出力で集合を更新し、グランドトゥルースに一致させる。kの値は1から始まり、訓練を進めるにつれて、すべての集合が半分の2つに分解されるため指数関数的に増加する。これにより、出力仮説の数Mに依存するツリーの深さを持つバイナリツリーが作成される。
図6のアルゴリズム1に、提案する分割統治技法の疑似コードを示す。ここで、深度は現在の訓練段階で到達可能な最大深度を指定し、リストは訓練の任意の段階における仮説の集合を含む変数と定義する。さらに、k番目の集合から新たに形成される集合を、set
k1およびset
k2と定義する。最小点集合出力を生成するリストからの集合をmSetと表記する。最後に、mSETの全仮説の平均損失をとり、L
DACを求める。
【0064】
k=1で、リストが単一の集合を含む場合、すべてのM個の仮説は、平衡に向かって到達する。リストの集合数に応じて、仮説はボロノイ領域に基づいて分布空間を分割し、データの異なる部分をとらえる。前段のk番目の集合が捉えたデータを、次の段で新たに形成される2つの集合に分割することで、有効な出力数は段ごとに増加する。最後に葉ノードに到達すると、すべての集合に1つの仮説が含まれるようになり、式(3)のような勝者総取りの目標になる。
【0065】
DACは、データ全体に適合するすべての仮説から開始し、すべての段階でDACは、ボロノイ空間に囲まれるようにいくつかのデータを確保する。分割の際、仮説はそのボロノイ空間に囲まれたデータを分割し、新たな平衡に達する。DACは、データの異なるモードを捕らえる仮説の数が同じであることを保証するものではないが、収束を保証するものである。さらに、DACは集合への分割と分の計算のみであるため、大きな計算量を必要としないことにも注目したい。
【0066】
次に、本発明の実施形態に係る車線アンカーを用いた軌道予測に関して説明する。
【0067】
ここで、フォワードパスにおける複数のエージェントの車線考慮型軌道を生成するALANという単一の表現モデルが紹介される。問題は、時間ステップをまたぐ多様な仮説のワンショット回帰として定式化される。
【0068】
次に、本発明の一実施形態に係る問題文について説明する。
【0069】
本発明の方法は、2つの形態、すなわち、a)サイズH×W×3のIとして示されるシーンのラスタライズされた鳥瞰図(BEV)表現と、b)アンカーとしてのエージェントごとの車線センターライン情報とでシーンコンテキスト入力とをとる。本発明では、車線アンカーL={L
1,・・・L
p}をBEV座標系における座標Lp=(x,y)を有する一連のp個の点として定義する。本発明では、デカルト型式におけるエージェントiの過去と未来との観測値を含む軌道座標として、
【数5】
と表記する。ここで、
【数6】
である。各エージェントiについて、候補車線の集合が、最短距離やヨーアライメント、他のパラメータなどの軌道情報に基づいて、車両が走行する可能性のある車線を特定される。この集合をもっともらしい車線センターラインA={L
1,・・・,L
k}と呼び、kは車両が走行する可能性のある場所に沿った車線センターラインの総数を表す。そして、このセンターラインに沿った車両の軌道X
iを、二次元曲線状の法線-接線(nt)座標フレームにおいて定義する。
【数7】
は、センターラインL
kに沿ったエージェントiのためのnt座標を表す。ここで、
【数8】
は、車線に最も近い位置までの法線と長手方向の距離を表す。複雑な道路トポロジーと関連するダイナミクスとを把握し、意味的に整合性のある予測を提供するためには、nt座標を使用することが重要である。
【0070】
軌道予測問題は、ネットワークへの入力として提供される所与の車線のアンカーL
kのための
【数9】
を予測するタスクとして定義される。本発明は、エージェント固有の情報を空間グリッド上のそれぞれの
【数10】
の位置に符号化する入力表現に従う。最後に、BEVフレームでの軌道を得るために、本発明は、ネットワークへの入力として与えられたアンカーL
j,kに基づいて、出力予測をデカルト座標に変換する。
【0071】
次に、本発明の実施形態による、軌道予測のためのALANフレームワークに関して説明する。
【0072】
我々のフレームワークの概要を
図2に示す。本発明の実施形態は、以下の5つの主要コンポーネント:a)センターラインエンコーダ、b)過去軌道エンコーダ、c)マルチエージェント畳み込み対話エンコーダ、d)ハイパーカラム軌道デコーダ、およびe)ランキングモジュールに基づく逆最適制御(IOC)を含み得る。
【0073】
センターラインエンコーダについて、本発明は、シーン内のすべてのエージェントの埋め込みベクトルCi,k=Cenc(Li,k)を生成するために、一連の一次元畳み込みを通してすべてのエージェントのための、入力された車線情報Lj,kをエンコードする。
【0074】
過去の軌道エンコーダについては、車線アンカーのためのnt座標N
j,kとは別に、本発明は、過去のエンコーダへの入力として追加X
iを提供する。本発明は、まずMLPに時間的入力を埋め込み、次にLSTMネットワークに通して過去の状態ベクトル
【数11】
を提供する。形式的に、
【数12】
【数13】
となる。
【0075】
次に、本発明の実施形態に係るマルチエージェント畳み込みエンコーダについて説明する。
【0076】
本発明は、畳み込みエンコーダモジュールを介して、フォワードパスにおけるマルチエージェントによる軌道の予測を実現する。まず、本発明では、エージェント固有の情報
【数14】
をBEVの空間グリッドにおけるそれぞれの位置
【数15】
で符号化する。これにより、シーン内のすべてのエージェントの情報を含む、サイズH×W×128のシーン状態マップSが生成される。そして、本発明では、これをラスタライズしたBEVマップIとともに畳み込みエンコーダに通し、様々な特徴スケールでの活性化を実現する。ハイパーカラム記述子D
iをそれらの位置から抽出するために、ハイパーカラム記述子は、異なる特徴次元に対してバイリニア補間
【数16】
することにより、様々なスケールで抽出された特徴を含んでいる。このように、
【数17】
となる。ここで、c
kは入力位置を所定の次元にバイリニア補間することによりk番目の層で抽出された特徴量である。直感的には、高次の畳み込み層がグローバルな文脈を捉え、低次の特徴量が近傍の対話を保持することで、異なるスケールで対話を捉えることができる。
【0077】
次に、本発明の実施形態によるハイパーカラム軌道デコーダについて説明する。
【0078】
次に、すべてのエージェントのハイパーカラム記述子D
iは、一連の1×1畳み込みを含むデコーダに供給され、一度にM個の仮説を出力する。ここでは、ALAN予測の2つのバリエーションについて検討した。ALAN-ntは、車線方向にntの軌道
【数18】
を予測するものであり、ALAN-ntxyは、補助的なxy予測
【数19】
を供給するものである。ntにおける直線的な値が、入力されたアンカーに基づいて、より高い角度の軌道に対応することができる。また、同じnt値を持つ2つの軌道が全く異なるダイナミクスを持つこともある。このように、補助予測値を利用してアンカーベースの出力を正則化することで、ネットワークがエージェントのダイナミクスを認識し、悪いアンカーの影響を受けにくくすることができる。我々のネットワークから予測されたM個の仮説は以下の通りである。
【数20】
【数21】
【数22】
【0079】
次に、本発明の実施形態に係るランキングモジュールに関して説明する。
【0080】
本発明は、M個の出力される仮説のためのスコア
【数23】
を生成する。目標に向かって最大化する報酬を割り当てることにより、予測された仮説の良し悪し
【数24】
を測定する。このモジュールでは、予測
【数25】
を用いて目標分布qを求める。ここで、
【数26】
であり、dはグランドトゥルースと予測出力との間のL2距離である。スコア損失は、
【数27】
として与えられる。
【0081】
次に、本発明の実施形態に係る学習に関して説明する。
【0082】
本発明は、ネットワーク出力
【数28】
を入力車線アンカーL
kおよび
xyYに対するそれぞれのグランドトゥルースラベル
ntYを有するL2距離として監督する。提案する分割統治技法は、多仮説予測ネットワークの訓練に使用される。したがって、主予測と補助予測との両方に対する再構成損失は、次のように与えられる。
【数29】
【数30】
【0083】
さらに、本発明は、入力車線に沿ったnt座標
【数31】
に予測値を変換することによって、
【数32】
に基づくアンカーベースの予測値にペナルティを与える。本発明はまた、アンカー出力
【数33】
に基づいて
【数34】
予測をxy座標
【数35】
に変換することによってペナルティを課すために、正則化を別の方法で追加する。本発明は、次のように、すべての仮説について、変換された主予測と補助予測との間のL2距離として正則化を追加する。
【数36】
【数37】
【0084】
最小化するためのネットワークの総学習目標は、以下によって与えられることができる。
【数38】
【0085】
本発明は、統合の任意の可能な技術的詳細レベルにおけるシステム、方法、および/またはコンピュータプログラム製品であり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体(または媒体)を含み得る。
【0086】
コンピュータ可読記憶媒体は、命令実行装置によって使用するための命令を保持し格納することができる有形装置であり得る。コンピュータ可読記憶媒体は、例えば、電子記憶装置、磁気記憶装置、光学記憶装置、電磁気記憶装置、半導体記憶装置、またはこれらの任意の適切な組み合わせであってもよいが、これらに限定されるものではない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、以下のものが含まれる。携帯用コンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、携帯用コンパクトディスクリードオンリーメモリ(CD-ROM)、デジタル多機能ディスク(DVD)、メモリスティック、フロッピーディスク、パンチカードやその上に記録した命令を持つ溝内の隆起構造などの機械的に符号化した装置および前述の任意の適切な組合せ。本明細書で使用するコンピュータ可読記憶媒体は、電波または他の自由に伝搬する電磁波、導波管または他の伝送媒体を伝搬する電磁波(例えば、光ファイバーケーブルを通過する光パルス)、またはワイヤを介して伝送される電気信号などの一過性の信号そのものであると解釈してはならない。
【0087】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれの演算/処理装置にダウンロードすることができ、またはネットワーク、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワークおよび/または無線ネットワークを介して外部コンピュータまたは外部記憶装置にダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバー、無線伝送、ルーター、ファイアウォール、スイッチ、ゲートウェイコンピュータおよび/またはエッジサーバーで構成されることがある。各演算/処理装置内のネットワークアダプタカードまたはネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれの演算/処理装置内のコンピュータ可読記憶媒体に格納するためにコンピュータ可読プログラム命令を転送する。
【0088】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSMALLTALK(登録商標)、C++などのオブジェクト指向プログラミング言語、「C」プログラミング言語などの従来の手続き型プログラミング言語または同様のプログラミング言語などを含む1以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたはオブジェクトコードのどちらかであり得る。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で完全に、ユーザのコンピュータ上で部分的に、スタンドアロンソフトウェアパッケージとして、ユーザのコンピュータ上で部分的に、リモートコンピュータ上で部分的に、またはリモートコンピュータ若しくはサーバ上で完全に実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、接続は外部のコンピュータに(例えば、インターネットサービスプロバイダを使用してインターネットを介して)行われることがある。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む電子回路は、本発明の側面を実行するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個人化し、コンピュータ可読プログラム命令を実行できる。
【0089】
本発明の態様は、本発明の実施形態による方法、装置(システム)およびコンピュータプログラム製品のフローチャート図および/またはブロック図を参照して、本明細書で説明される。フローチャート図および/またはブロック図の各ブロック、並びにフローチャート図および/またはブロック図のブロックの組み合わせは、コンピュータプログラム命令によって実施できることが理解されるであろう。
【0090】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、特殊用途コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供され、コンピュータまたは他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートおよび/またはブロック図のブロックまたはブロックで指定された機能/動作を実施する手段を作り出すように、機械を製造することができる。これらのコンピュータ可読プログラム命令は、コンピュータ、プログラム可能なデータ処理装置、および/または他の装置が特定の方法で機能するように指示することができるコンピュータ可読記憶媒体に格納することもでき、コンピュータ可読記憶媒体に格納された命令が、フローチャートおよび/またはブロック図のブロックまたはブロックで指定される機能/動作の態様を実施する命令を含む製造物品を構成する、記憶された命令を持つようにすることができる。
【0091】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラム可能なデータ処理装置、または他の装置にロードして、コンピュータに実装された処理を生成するためにコンピュータ、他のプログラム可能な装置、または他の装置上で実行する一連の動作ステップを実行させることもでき、コンピュータ、他のプログラム可能な装置、または他の装置上で実行する命令が、フローチャートやブロック図のブロックまたはブロックに指定されている機能/動作を実施するようにする。
【0092】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の可能な実装のアーキテクチャ、機能性、および動作を示すものである。この点で、フローチャートまたはブロック図の各ブロックは、命令のモジュール、セグメント、または部分を表すことがあり、これは、指定された論理機能(複数可)を実装するための1つまたは複数の実行可能命令を含んでいる。いくつかの代替的な実装では、ブロックに記された機能は、図に記された順序から外れて発生する可能性がある。例えば、連続して表示されている2つのブロックは、実際には実質的に同時に実行されることもあれば、関係する機能に応じて、ブロックが逆の順序で実行されることもある。また、ブロック図および/またはフローチャート図の各ブロック、並びにブロック図および/またはフローチャート図のブロックの組み合わせは、指定された機能または動作を実行する、または特別な目的のハードウェアとコンピュータ命令との組み合わせを実行する特別な目的のハードウェアベースのシステムによって実施できることに注目される。
【0093】
明細書において、本発明の「一実施形態」または「一実施形態」、およびその他の変形例への言及は、実施形態に関連して説明した特定の特徴、構造、特性などが、本発明の少なくとも一実施形態に含まれることを意味する。したがって、本明細書中の各所に現れる「一実施形態において」または「一実施形態において」という表現、および他の任意の変形は、必ずしもすべてが同じ実施形態を指すとは限らない。
【0094】
例えば「A/B」の場合、「Aおよび/またはB」、「AとBとの少なくとも1つ」のような、以下の「/」、「および/または」、「少なくとも1つ」のいずれかの使用は、第1のリストされた選択肢(A)のみの選択、または第2のリストされた選択肢(B)のみの選択、または両方の選択肢(AおよびB)の選択を包含すると意図していると理解されよう。さらなる例として、「A、B、および/またはC」および「A、B、およびCの少なくとも1つ」の場合、かかる表現は、第1のリストされた選択肢(A)のみの選択、または第2のリストされた選択肢(B)のみの選択、または第3のリストされた選択肢(C)のみの選択、または第1および第2のリストされた選択肢(AおよびB)のみの選択、第1および第3のリストされた選択肢(AおよびC)のみの選択、第2および第3のリストされた選択肢(BおよびC)のみの選択、または3つすべての選択肢(AおよびBおよびC)の選択を包含すると意図されている。このことは、本技術および関連技術における通常の技術者が容易に理解できるように、記載された項目の数だけ拡張することができる。
【0095】
上記は、あらゆる点で例示的かつ例示的であるが、制限的なものではないと理解され、ここに開示された発明の範囲は、詳細な説明からではなく、特許法によって許される全幅に従って解釈された請求項から決定されるものである。本明細書に示され説明された実施形態は、本発明の例示に過ぎず、当業者は、本発明の範囲及び精神から逸脱することなく、様々な修正を実施することができることを理解されたい。当業者であれば、本発明の範囲と精神から逸脱することなく、様々な他の特徴の組み合わせを実施することができる。このように、特許法が要求する詳細さと特殊性をもって本発明の側面を説明したが、特許状によって請求され、保護されることを望むものは、添付の特許請求の範囲に記載されているとおりである。