(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-27
(45)【発行日】2024-03-06
(54)【発明の名称】方法、非一時的コンピュータ可読媒体、および、車両
(51)【国際特許分類】
B60W 30/165 20200101AFI20240228BHJP
B60W 30/12 20200101ALI20240228BHJP
B60W 40/02 20060101ALI20240228BHJP
G05D 1/43 20240101ALI20240228BHJP
G08G 1/16 20060101ALI20240228BHJP
【FI】
B60W30/165
B60W30/12
B60W40/02
G05D1/43
G08G1/16 D
(21)【出願番号】P 2021523946
(86)(22)【出願日】2019-11-05
(86)【国際出願番号】 US2019059769
(87)【国際公開番号】W WO2020097011
(87)【国際公開日】2020-05-14
【審査請求日】2022-11-04
(32)【優先日】2018-11-05
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】アンドリュー イー.ベラー
(72)【発明者】
【氏名】ジャネク フデチェク
(72)【発明者】
【氏名】ウィリアム アンソニー シルヴァ
【審査官】平井 功
(56)【参考文献】
【文献】特開2017-187844(JP,A)
【文献】米国特許出願公開第2018/0120843(US,A1)
【文献】特開2018-154200(JP,A)
【文献】特開2001-199260(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00-10/30
B60W 30/00-60/00
G08G 1/00-99/00
G05D 1/00- 1/12
G01C 21/00-21/36
G01C 23/00-25/00
(57)【特許請求の範囲】
【請求項1】
車両のコンピューティングデバイスによって実行される方法であって、
前記車両のための環境を通る運転可能エリアを決定するステップと、
前記車両が辿るための前記運転可能エリア内の軌道を決定するステップと、
前記車両上のセンサからセンサデータを受信するステップと、
前記センサデータに少なくとも部分的に基づいて、前記環境内の物体を検出するステップと、
前記センサデータに少なくとも部分的に基づいて、前記物体に関連付けられた物体パラメータを決定するステップと、
前記物体パラメータに少なくとも部分的に基づいて、前記物体の予測軌道を決定するステップと、
前記
予測軌道に少なくとも部分的に基づいて、修正された運転可能エリアを決定するステップ
であって、前記修正された運転可能エリアは前記物体の前記予測軌道を含むステップと、
前記修正された運転可能エリアに少なくとも部分的に基づいて、前記
車両の軌道が無効であることを決定するステップと、
前記
車両の軌道が無効であると決定するステップに少なくとも部分的に基づいて、修正された軌道を決定するステップと、
前記修正された軌道に従って前記車両を制御するステップと、
を含む方法。
【請求項2】
前記
車両の軌道が無効であると決定するステップは、前記修正された運転可能エリアおよび前記
車両の軌道に少なくとも部分的に基づいて、コストを決定するステップを含み、
前記コストは前記車両と前記物体との間を維持する最小距離に少なくとも部分的に基づく、
請求項1に記載の方法。
【請求項3】
前記コストは前記予測軌道に少なくとも部分的に基づく、請求項2に記載の方法。
【請求項4】
前記物体パラメータは、前記車両に占有されている車線内への前記物体による車線変更または合流を示す、請求項1から請求項3のいずれか1項に記載の方法。
【請求項5】
前記修正された軌道に従って前記車両を制御するステップは、
前記物体の相対速度または前記物体までの相対距離の1つまたは複数に少なくとも部分的に基づいて、前記物体に追従するように前記車両を制御するステップを、
さらに含む、請求項1から請求項4のいずれか1項に記載の方法。
【請求項6】
前記物体パラメータは、速度、位置、分類、または範囲の1つまたは複数を含む、請求項1から請求項5のいずれか1項に記載の方法。
【請求項7】
前記分類は、車、自転車、オートバイ、または歩行者を含む、請求項
6に記載の方法。
【請求項8】
前記
車両の軌道が無効であると決定するステップは、
前記物体の前記予測軌道が前記車両の軌道
の所定の閾値距離と交差する、または範囲内にあると決定するステップを
含む、請求項1から請求項7のいずれか1項に記載の方法。
【請求項9】
実行されると、1つまたは複数のプロセッサに請求項1ないし請求項8のいずれか1項に記載の前記方法を実行させる命令を格納する非一時的コンピュータ可読媒体。
【請求項10】
車両上に設置されたセンサと、
プロセッサと、
前記プロセッサによって実行可能な命令を格納するコンピュータ可読媒体と、
を備え、
前記命令が実行されると、前記プロセッサに、
前記車両
のための
環境を通る運転可能エリアを決定するステップと、
前記運転可能エリアに少なくとも部分的に基づいて、前記車両が辿るための基準軌道を決定するステップと、
前記センサからセンサデータを受信するステップと、
前記センサデータに少なくとも部分的に基づいて、前記車両が走行する環境内の物体の物体パラメータを決定するステップと、
前記物体パラメータに少なくとも部分的に基づいて、前記物体の予測軌道を決定するステップと、
前記
予測軌道に少なくとも部分的に基づいて、前記運転可能エリアを修正し
て修正された運転可能エリアを生成するステップ
であって、前記修正された運転可能エリアは前記予測軌道を含むステップと、
前記修正された運転可能エリアおよび前記基準軌道に少なくとも部分的に基づいて、前記基準軌道を修正するかどうかを決定するステップと、
を含む操作を実行させる、車両。
【請求項11】
前記物体パラメータは、
速度、位置、分類、または範囲の1つまたは複数を含む、
車線変更または合流を示す、または
交差点の方向転換を示す、
の少なくとも1つである、請求項10に記載の車両。
【請求項12】
前記基準軌道を修正するステップは、前記車両と前記物体との間の相対距離および相対速度を維持するステップを含む、請求項10または請求項11のいずれか1項に記載の車両。
【請求項13】
前記操作は
前記基準軌道を修正するかどうかに少なくとも部分的に基づいて、修正された軌道を決定するステップと、
前記修正された軌道に関連付けられたコストを決定するステップと、
前記コストがコスト閾値を満たすまたは超えるかどうかに少なくとも部分的に基づいて、前記車両を制御するステップと、
をさらに含む、請求項10から請求項12のいずれか1項に記載の車両。
【請求項14】
前記操作は、
前記予測軌道に関連付けられた確率を決定するステップと、
前記予測軌道に関連付けられた前記確率に少なくとも部分的に基づいて、前記車両を制御するステップと、
をさらに含む、請求項10から請求項13のいずれか1項に記載の車両。
【請求項15】
前記修正された運転可能エリアは第1の修正された運転可能エリアであり、
前記操作は、
第2の物体に基づく追加のセンサデータを受信するステップと、
前記追加のセンサデータに少なくとも部分的に基づいて、前記運転可能エリアを修正し、第2の修正された運転可能エリアを生成するステップと、
前記第2の修正された運転可能エリアおよび前記基準軌道に少なくとも部分的に基づいて、コストを決定するステップと、
前記コストおよび前記第1の修正された運転可能エリアに少なくとも部分的に基づいて、前記車両を制御するステップと、
をさらに含む、請求項10から請求項14のいずれか1項に記載の車両。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、追従のための車両軌道の修正に関する。
【背景技術】
【0002】
[関連出願の相互参照]
この特許出願は、2018年11月5日に出願された米国特許出願第16/181,164号の優先権を主張し、その全体が参照により本明細書に組み込まれる。
【0003】
プランナシステムは、環境内の物体に関連付けられた情報を利用して、環境を走行する方法を決定する。例えば、一部の既存のプランナシステムは、そのような物体に対する相対的な位置を考慮して、環境を走行する方法を決定する。プランナシステムはまた単純な物理ベースのモデリングを組み込み、環境を走行する方法を決定するときに、そのような物体の将来の状態を予測し得る。
【図面の簡単な説明】
【0004】
詳細な説明は添付の図面を参照して説明される。図面において、参照番号の左端の数字は参照番号が最初に現れる図を特定している。異なる図面における同じ参照番号の使用は類似または同一の項目または特徴を示す。
【0005】
【
図1】
図1は、本明細書で説明されるように、物体に追従するかどうかを決定する実施例を示す概略図である。
【
図2】
図2は、本明細書で説明されるように、物体に追従するかどうかを決定する別の実施例を示す概略図である。
【
図3】
図3は、本明細書で説明されるように、物体に追従するかどうかを決定する実施例を示す概略図である。
【
図4】
図4は、本明細書で説明されるように、物体に追従するかどうかを決定する実施例を示す概略図である。
【
図5】
図5は、本明細書で説明されるように、運転可能エリアを生成するための例示的なコンピューティングシステムを示すブロック図である。
【発明を実施するための形態】
【0006】
本明細書に記載の技術は、自律車両(以下「車両」)について、物体に追従するかどうかの決定を対象としている。そのような決定は、物体が、車両によって生成された軌道に沿ったポイントにて車両の閾値距離内にある、または入るかどうかを決定することを含み得る。例えば、車両は、車両が走行できる環境の領域を表す運転可能エリアを生成できる。車両は環境のセンサデータをキャプチャでき、これは、隣接する車線にある、またはそうでなければ、車両に近接する他の車両のような物体を表し得る。運転可能エリアは物体の現在または予測位置を反映するように更新でき、操作は、車両によって生成された軌道に沿った様々なポイントについて、物体の現在または予測位置が軌道の閾値距離内にあるかどうかを決定することを含むことができる。物体が軌道(例えば、距離閾値および/またはコストに基づく)に侵入した場合、車両は物体に追従することを決定できる。追従することは、車両の長手方向制御(例えば、速度および/または加速度)を変化させ、車両と物体との間の最小距離を維持することを含み得、最小距離は、車両と物体の間の相対距離および/または速度に少なくとも部分的に基づき得る。
【0007】
物体は、例えば、自律車両が環境内を走行できる運転可能エリア内に、または比較的近くに位置し得る。一例では、物体は隣接する車線から運転可能エリアの車線に合流し始めたばかりでもよい。
【0008】
様々な実施形態において、車両は、一度に1つの物体の「スポットチェック」を実行して、物体の1つに追従するか否かを決定し得る。このようなスポットチェックは、一般に、1つまたは複数の物体の動きの予測、予測された動きに基づく可能な軌道の決定などを含むような、より詳細な計算のためのプロセッサの追加使用を回避することにより、比較的高速なプロセスとなり得る。代わりに、スポットチェックは、運転可能エリアに関して一度に1つの物体を個別に考慮(例えば、「融合」)することを含み得る。そのような物体ごとに、基準軌道(例えば、現在または最新の軌道の横方向の計画)が、計算された候補運転可能エリアに対してチェック(例えば、考慮または比較)され得る。上記のように、基準軌道が候補運転可能エリアと交差する、または候補運転可能エリアの境界の閾値距離内にある(または、他の実施形態では、新しく計算された候補運転可能エリアに関連付けられたコストが比較的高い)場合、車両は物体に追従することを選択し得る。この追従の場合、新しく計算された候補運転可能エリアを使用して、その後軌道を修正できる。一方、交差点がない、従って追従しない場合、新しく計算された候補運転可能エリアは単に「スポットチェック」測定値として使用され、その後破棄される。その後、環境内の個々の物体のこのようなスポットチェックを使用して、コントローラに通知し得る。
【0009】
物体に追従するかどうかの決定に基づいて、自律車両のコンピューティングデバイスは、複数の様々な動的および/もしくは静的物体、ならびに/またはそのような物体がどのように環境内を動作するかの予測を考慮することによって、運転可能エリアを構築し、その後修正することを決定し得る。物体の非限定的なリストは、限定されないが、歩行者、動物、自転車、トラック、オートバイ、他の車両などを含む、環境内の障害物を含み得る。少なくとも1つの例では、運転可能エリアは、意図した目的地に効果的に到達するために車両が物体および障害物に対して安全に移動できる制約および/または境界を一般に定義する、環境内の仮想表現である。いくつかの例では、運転可能エリアは自律車両上のコンピューティングデバイスによって決定され、それらのコンピューティングデバイスによって利用されて、環境内の自律車両を走行させることができる。つまり、自律車両に搭載されたコンピューティングデバイスは、運転可能エリアの範囲に基づいて軌道を決定できる。
【0010】
一般に、運転可能エリアは、車両が走行できる環境内の仮想空間として決定され得る。運転可能エリアは、物体からのオフセットを提供する境界を含み得、これは、物体の意味論的特性、確率モデル(物体の動きのモデル、センサ測定などを含む)、道路の規則(例えば、車線の境界、歩道などを組み込む)、または他の情報に基づいて決定され得る。少なくともいくつかの例では、運転可能エリアの境界に沿った離散部分(例えば、10cm、50cm、1mごとなど)は、限定されないが、最も近い物体までの距離、最も近い物体の意味分類、不確実性(例えば、センサノイズに基づく)、信頼度などのような追加情報で符号化され得る。さらに、いくつかの実施形態では、複数の運転可能エリアが決定され得る。例えば、現実のドライバーが、物体を回避する、例えば、3車線の道路上で右側を通過するまたは左側を通過する、複数のオプションを有し得るように、複数の運転可能エリアを複数の潜在的な計画経路に対して決定し得る。これらの例では、1つの運転可能エリアが実施用に選択される。例えば、運転可能エリアは、エリアが広いため、交通法規に準拠しているため(例えば、右側ではなく左側から車両を追い越す)、ほとんどの物体を回避するため、または1つまたは複数の追加の理由のために適し得る。
【0011】
非限定的な例として、自律車両のコンピューティングデバイスは、センサデータを受信し、環境内の1つまたは複数の物体を検出し、および/または環境内の1つまたは複数の物体の属性または物体パラメータを決定し得る。物体パラメータは、1つまたは複数の物体のそれぞれの速度、加速度、位置、分類、および/または範囲、加えて、それに関連付けられた不確実性情報を含み得る。自律車両によってキャプチャされたセンサデータには、光検出および測距(LIDAR)センサデータ、無線検出および測距(RADAR)センサデータ、音声ナビゲーションおよび測距(SONAR)センサデータ、画像データ、飛行時間データ(time of flight data)などが含まれ得る。場合によっては、センサデータは、環境内の物体のタイプ(例えば、車両、歩行者、自転車、動物、駐車中の車、木、建物など)を決定するように構成された知覚システムに提供され得る。さらに、知覚システムは、センサデータに基づいて、環境内の物体に関する動き情報を決定できる。
【0012】
いくつかの例では、自律車両のコンピューティングデバイスは、物体および/または物体の属性を利用して、運転可能エリアを決定する際にどの物体を考慮すべきかを決定し、運転可能エリアの範囲を決定し、および/または軌道を決定または既存の軌道を修正し、運転可能エリア内で自律車両を走行させることができる。いくつかの例では、運転可能エリアおよび/または軌道を修正するかどうかは、予測軌道の車両運動性に関連付けられた1つまたは複数のコストおよび/または制約を考慮することによって、少なくとも部分的に決定できる。
【0013】
いくつかの実施形態では、自律車両のコンピューティングデバイスは、環境内の多数の物体に関するデータを融合または含むことによって、運転可能エリアを決定または修正し得る。例えば、コンピューティングデバイスは、1つまたは複数の物体に対して環境を走行する軌道を決定し得る。軌道に沿った離散ポイント(または離散ポイントの線分)にて、コンピューティングデバイスは、次に、軌道から物体までの横方向距離(例えば)を決定し得る。例えば、コンピューティングデバイスは、レイキャスティング技術を使用して、軌道に沿った車両の姿勢における横方向距離を決定し得る。次に、これらの距離および物体に関する情報に基づいて、修正された軌道を決定し得る。例えば、コンピューティングデバイスは、物体に関する意味情報を使用して、物体を分類し、それに関連付けられた安全係数または安全レベルを決定し得る。いくつかの例では、物体からの車両の最小オフセット距離、または安全マージンが、各安全レベルに関連付けられ得る。コンピューティングデバイスはまた、物体に関する確率情報を使用して、物体に対する車両の安全レベルおよび/またはオフセット距離を決定し得る。例えば、コンピューティングデバイスは、例えば、横方向距離に関連付けられた不確実性を考慮して、距離の決定に確率フィルタリングを適用し得る。例えば、不確実性は、測定値に、例えば、センサおよび/またはセンサコンポーネントの較正および/または公差に、感知された物体の動き、例えば、物体の潜在的な将来の動きまたは動きを特徴づける予測モデルに関連付けられた不確実性などに、関連付けられ得る。
【0014】
いくつかの実施形態では、コストまたは制約は、例えば、安全な運転条件および/または物理的正確さを発揮するために(例えば、軌道が物理的に妥当な軌道を辿ることを確実にするために)、使用され得る。場合によっては、後述するプロセスで決定されるポイント間の補間、またはポイントへの曲線のフィッティング(例えば、多項式曲線、ベジェ曲線、クロソイド曲線などの1つまたは複数のフィッティング)によって、軌道を決定できる。場合によっては、軌道の生成または修正および/またはポイントの選択は、軌道が危険または安全でない運転状態に導かれる、または不合理な軌道(例えば、後続のポイントが物理的に不可能な車両の動きを含む車両の「テレポーテーション」を伴う)を示すことのある場合の発生を防止または低減するために、車両運動性に関連付けられた1つまたは複数のコストおよび/または制約に少なくとも部分的に基づくことができる。そのようなコストの例は、限定されないが、速度コスト(例えば、一定速度コスト)、加速度コスト、物体が道路の規則に従い得るという期待などを含み得る。
【0015】
例えば、一般に運転可能エリア(例えば、ドライブコリドー/エンベロープ)は、環境内の物体に基づいて決定される。いくつかの例では、そのような物体は、静的物体(例えば、駐車中の車、建物、鉄塔など)を表し得る。他の例では、そのような物体は、追加的に、または代替的に、車線内の運転に影響を与えない動的物体(例えば、自律車両の後方の車両、対向する車両など)を含み得る。続いて、運転可能エリアに制約された軌道が生成される。車両の運転可能エリアに進入する物体(例えば、隣接する車線の第2の車両)(および/またはそのようなイベントの予測)に応答して、運転可能エリアは、「スポットチェック」操作で修正され得る。修正された(例えば、最新の更新)運転可能エリアと最新の軌道との間の比較(例えば、スポットチェックを介した)は、物体に追従するか否かを決定し得る。追従する決定の場合、軌道は比較に基づいて修正され得る。そうでなければ、軌道を修正する必要は無く、少なくともこれまでの物体のアクションに応答しない。言い換えれば、物体に追従しない場合、運転可能エリアおよび/または軌道は維持され得て、車両は現在の軌道を継続する。
【0016】
いくつかの例では、修正された運転可能エリアが確立されると、自律車両のコンピューティングデバイスは、運転可能エリア内を進むための1つまたは複数の新しい軌道を生成するかどうかを決定し得る。従って、例えば、運転可能エリアは車両が走行し得る領域の境界を定義し得て、軌道は車両が走行する運転可能エリア内の離散セグメントであり得る。従って、例えば、運転可能エリアは環境を通る計画経路を使用して計算され得るが、軌道は、運転可能エリア内において、環境を走行する車両によって実行されることを意図した離散的でより短いセグメントであり得る。
【0017】
本明細書で説明する技術は、センサおよび知覚データを活用して、自律車両などの車両が、環境内の物体に追従または物体を回避しながら環境内を走行することを可能にすることを目的としている。例えば、1つまたは複数の軌道を予測確率に基づいて生成でき、そのような軌道をプランナシステムに提供して、自律車両の操作を制御し得る。
【0018】
いくつかの例では、自律車両のコンピューティングデバイスの予測システムは、自律車両に近接する物体の1つまたは複数の予測軌道を生成するために使用できるデータを出力するように訓練された機械学習モデルを含むことができる。例えば、機械学習モデルは、将来の1つまたは複数の時間(例えば、1秒、2秒、3秒など)にて、物体(例えば、第三者の車両)に関連付けられた座標(例えば、x座標およびy座標)を出力できる。いくつかの例では、機械学習モデルは、物体に関連付けられた座標および各座標に関連付けられた確率情報を出力できる。いくつかの例では、そのような確率情報は、確率レベル閾値に関連付けられた楕円または他の多角形として表すことができる(例えば、特定の時間における物体の位置が楕円によって表されるエリア内にある65%の確率)。予測軌道は、機械学習モデルによって出力された座標間を補間することによって生成できる。いくつかの例では、機械学習モデルは、畳み込みニューラルネットワーク(CNN)を含むことができ、これは、限定されないが、長短期記憶(LSTM)層などの1つまたは複数のリカレントニューラルネットワーク(RNN)層を含み得る。いくつかの例では、機械学習モデルは予測確率に関連付けられたヒートマップを出力できる。いくつかの例では、少なくとも1つの予測軌道を、ヒートマップに少なくとも部分的に基づいて決定できる。
【0019】
本明細書で説明する手法は、環境内の物体に追従するかどうかを決定するための堅牢なフレームワークを提供できる。本明細書に記載の技術は、車両の運転可能エリアに物体範囲を組み込むことに基づいて、幾何学的またはコストベースのチェックを実行することにより、従来の技術よりも高速化し得る。場合によっては、車両に追従することを迅速に決定することは、プランニングシステムに車両の軌道の変更を可能とし(例えば、減速)得、これは、安全性の結果を向上し(例えば、車両と物体の間の最小距離を維持することによって)および/または乗客の快適性の向上(例えば、車両の速度を調整するためにブレーキをかけるのではなく、ゆっくりと減速することによって)し得る。
【0020】
本明細書で説明される技法は、いくつかのやり方で実施することができる。以下、図を参照しながら実施例を提示する。自律車両のコンテキストで論じているが、本明細書に記載の方法、装置、およびシステムは、様々なシステム(例えば、センサシステム、またはロボットプラットフォーム)に適用することができ、自律車両に限定されない。別の例では、技術は、航空または航海のコンテキストで利用できる。さらに、本明細書で説明される技術は、実データ(例えば、センサを用いてキャプチャされた)、模擬データ(例えば、シミュレーターによって生成された)、またはその2つの任意の組合せで用いることができる。
【0021】
図1から
図5は、本明細書に記載の技術に関連付けられた追加の詳細を提示する。
【0022】
図1は、本明細書で説明されるように、車両が物体に追従するか否かを決定する間に伴う例示的なプロセスを示す絵入りのフロー図である。具体的には、
図1は、車両102によって実行されるプロセス100を示しており、環境内の物体104は車両の修正された制御を作成するかどうかの決定において考慮される。特定の例では、車両などの物体104は、隣接する車線にあり、車両102の経路または車線に合流し得る。この状況は、とりわけ、物体104に追従するか否かに関する決定につながり得る。その後、修正された運転可能エリアを使用して、環境を通る軌道を決定および/または修正し得て、例えば、車両102は軌道に沿って環境を走行できる。修正軌道は物体104に追従する車両102に関連付けられており、一方、未修正軌道は物体104に追従しないことに関連付けられている。物体104が車両102の真正面にある例では、運転可能エリアは、運転可能エリアが物体104を含まないように修正され、結果として生じる修正された軌道は、車両102が物体104に追従することを導く。
【0023】
図1に示されるプロセスは、車両102を使用して実行されることに限定されず、本出願に記載された他の車両のいずれかを使用して実行でき、本明細書に記載されたもの以外の車両も同様である。さらに、本明細書で説明する車両102は、
図1に示された処理を実行することに限定されない。
【0024】
プロセス100は、論理フローグラフのブロックの集合として示されており、これは、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施できる一連の操作を表す。ソフトウェアのコンテキストにおいて、ブロックは、プロセッサで実行したときに、列挙した操作を実行する1つまたは複数のコンピュータ可読記憶媒体に格納されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は、特定の機能を実行するまたは特定の抽象的データタイプを実装するルーチン、プログラム、物体、コンポーネント、データ構造などを含む。操作が記載される順序は限定して解釈されることを意図するものではなく、任意の数の記載されるブロックを任意の順序でおよび/または並行し結合して、プロセスを実施できる。いくつかの実施形態では、プロセスの1つまたは複数のブロックを完全に省略できる。さらに、プロセス100は、全体的または部分的に他のプロセスと組み合わせることができる。
【0025】
ブロック106にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施される操作を介して、環境内の運転可能エリアおよび軌道を決定する。運転可能エリアは、環境内の1つまたは複数の静的障害物(例えば、車線境界、縁石、歩道、駐車中の車など)および/または動的障害物(例えば、対向車など)の位置/場所に基づいて、事前に決定され得る。図示のように、車両102は、運転可能エリア110内の軌道108を辿っている。車両102は車線112を走行しており、物体104(例えば、別の車両)は隣接する車線114を走行している。2つの車線はパーティション116によって境界が定められており、これは、ペイントストライプまたはボットのドット(例えば、隆起した舗装マーカー)であり得るが、パーティション116は、いくつかの実装において、いずれかのマーカーを含む必要はない。運転可能エリア110は、環境内の静的および/または動的物体に基づいて生成され得る。いくつかの実施形態では、運転可能エリア110のサイズおよびジオメトリ(geometry)は、緊急対応車両、対向車、交差する交通など、環境内の特別な物体を考慮することに基づいて、決定され得る(その結果、運転可能エリア110から削除されたエリアである「カットアウト」(
図1内に不図示)を含み得る)。言い換えれば、そのような特別な物体は、他の物体に基づいて決定された運転可能エリアの様々な部分がそうでなければ受け入れられず、運転可能エリアの「最終」バージョンのために削除されるべきであること、を必要とし得る。
【0026】
ブロック118にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施される操作を介して、物体104のアクションおよび/または位置に基づいて、修正された運転可能エリアを決定する。そのような決定は、物体104に関連付けられ、車両102によって受信されたセンサデータに基づき得る。
図1に示される例示的な状況において、物体104は、車線
114から車線
112に変更、ドリフト、および/または合流するアクションを実行し、その結果、車線への侵入が生じる。このアクションは、車両102に、修正された運転可能エリア110*を決定するように促し得て、これは運転可能エリア110の部分120の「カットアウト」または削除を含み得る。他の実施形態では、車両102は、物体104のアクションに関係なく、単に物体104の車両102への近接に応答して、修正された運転可能エリア110*を決定し得る。以下に説明するさらに他の実施形態では、車両102は、物体104に関連付けられたコストに少なくとも部分的に基づいて、修正された運転可能エリア110*を決定し得る。以下に説明するさらに他の実施形態では、車両102は、物体104の予測行動に少なくとも部分的に基づいて、修正された運転可能エリア110*を決定し得る。ブロック118のプロセスは、追加の近くの物体(
図1内に不図示)に対して一度に1つずつ実行され得る。
【0027】
以下に説明するように、車両102は、LIDARセンサ、RADARセンサ、超音波変換器、SONARセンサ、飛行時間センサ(time of flight sensors)、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性測定ユニット、加速度計、磁気計、ジャイロスコープなど)、カメラ(RGB、IR、強度、深度など)、マイク、ホイールエンコーダ、環境センサ(温度センサ、湿度センサ、光センサ、圧力センサなど)などのようなセンサシステムを含むことができる。センサシステムは車両コンピューティングデバイスに入力を提供でき、車両コンピューティングデバイスの1つまたは複数のシステムは入力を利用できる。例えば、少なくとも1つの例では、車両コンピューティングデバイスは、位置測定システム、知覚システム、予測システム、プランナシステム、および/または運転可能エリア決定システムによる処理のための入力を受信できる。
【0028】
少なくとも1つの例では、車両102は、ネットワークを介してセンサデータをコンピューティングデバイスに送信できる。いくつかの例では、車両102は未処理のセンサデータをコンピューティングデバイスに送信できる。他の例では、車両102は、処理済みセンサデータおよび/またはセンサデータの表現(例えば、位置測定システム、知覚システム、予測システム、および/またはプランナシステムから出力されたデータ)をコンピューティングデバイスに送信できる。いくつかの例では、車両102は、所定の期間の経過後、ほぼ実時間などで、特定の周波数にて、センサデータをコンピューティングデバイスに送信できる。時間の経過とともに収集されたセンサデータはログデータに対応できる。
【0029】
ブロック122にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施される操作を介して、修正された運転可能エリアに基づいて車両102の軌道を評価する。場合によっては、操作は、「ロールアウト」と呼ばれ得る、環境の状態を軌道108に沿った離散的なタイムステップまたはポイントにて評価することを含み得る。そのような評価は、時間の経過とともに予想されるにつれて、車両102および/または物体104の位置を更新することを含み得る。そのような評価は、物体104に基づいて修正された運転可能エリアが新しい軌道を必要とするかどうかを決定することによって、物体104が軌道に影響を与えるかどうかを決定する技術の一部である。例えば、物体104が車線112に実質的に移動した場合、運転可能エリア110を修正する必要がある。このような状況であっても、例えば、軌道108と物体104との間に安全かつ有意な横方向のクリアランス124(例えば、車両102および/または物体104の速度、物体104の分類、マップ内の車両102の位置など、に基づく閾値に関する)が残っている場合には、軌道108を修正しなくてもよい。この場合、車両102は、物体104を通過し得(または、そうでなければ、軌道108を辿り続け)、従って、物体104を追従しないことを選択する。
【0030】
ブロック126にて、車両102は、軌道108に関連付けられた制御を修正するかどうかを決定する。例えば、上記のように、そのような決定は、物体104が軌道108に影響を与えるかどうかに基づき得る。いくつかの例では、そのような決定は、幾何学的に行い得る(例えば、軌道108は、運転可能エリア110の境界と交差する、および/またはその所定の距離内にあるか)。追加の、または代替の例では、そのような決定は、更新または修正された運転可能エリア110*が与えられた軌道に従うことに関連付けられた様々なコストを決定することを含み得る。例えば、そのようなコストは、軌道に関連付けられたトリップパラメータに少なくとも部分的に基づき得る。いくつかの実施形態では、トリップパラメータは、1つまたは複数の事故リスク要因および車両運動性を含み得る(例えば、安全かつ快適に減速(または停止)する安全停止軌道を決定するために使用され得る)。コストまたはトリップパラメータはまた、車両と物体の間を維持する最小距離に関連付けられたデータを含み得る。他のトリップパラメータは、ほんの数例を挙げると、車両運動性、乗客の快適さ、到着予定時刻、エネルギー使用量などを含み得る。
【0031】
ブロック128にて、物体104に加えて、物体は、プロセス100のブロック118、122、および126に一度に1つずつ(ならびに/または実質的に同時におよび独立して)含まれ、考慮され得る。このようにして、各物体に関する情報は、個別に運転可能エリア110と融合または組み合わされ、基準線(例えば、軌道108)に対してチェックされて、追従するか否か(例えば、長手方向速度による制御)を決定し得る。上記のように、いくつかの物体が、自律車両が走行している環境内に存在し得る。このような物体は車両および歩行者を含み得る。センサデータに基づいて、車両コンピューティングデバイスは、例えば、画像処理、視覚検出、分類および/もしくは区分、LIDAR検出、区分、ならびに/または分類、ならびに/または他のプロセスを介して、物体を認識し得る。
【0032】
ブロック130において、車両102は、車両102が物体104に追従するように、修正された軌道に関連付けられた修正された制御に基づいて制御される。あるいは、車両102は、車両102が物体104に追従しないように、(修正されていない)軌道108に関連付けられた修正されていない制御に基づいて制御される。
【0033】
図2は、本明細書で説明されるように、車両が物体の予測行動に基づいて物体に追従するか否かを決定する間に伴う例示的なプロセスを示す絵入りのフロー図である。具体的には、
図2は
図1と同様の環境を示しているが、別のプロセス200が車両102によって実行されている。プロセス200は、物体104によって実行されるアクションの予測に基づいて、車両102の修正された運転可能エリアを作成するかどうかを決定することを含む。特定の例では、物体104は隣接する車線にあり、車両102の経路または車線に合流し始めたばかり(または何らかの意思表示をしている)でもよい。この状況は、とりわけ、物体104に追従するか否かに関する決定につながり得る。その後、修正された運転可能エリアを使用して、環境を通る軌道を決定および/または修正し得、例えば、車両102は軌道に沿って環境を走行できる。修正軌道は物体104に追従する車両102に関連付けられており、一方、未修正軌道は物体104に追従しない車両102に関連付けられている。
【0034】
上記のプロセス100と同様に、プロセス200は、論理フローグラフのブロックの集合として示されており、これはハードウェア、ソフトウェア、またはそれらの組み合わせで実施することができる一連の操作を表す。ソフトウェアのコンテキストにおいて、ブロックは、プロセッサで実行したときに、列挙した操作を実行する1つまたは複数のコンピュータ可読記憶媒体に格納されたコンピュータ実行可能命令を表す。一般に、コンピュータ実行可能命令は、特定の機能を実行するまたは特定の抽象的データタイプを実装するルーチン、プログラム、物体、コンポーネント、データ構造などを含む。操作が記載される順序は限定して解釈されることを意図するものではなく、任意の数の記載されるブロックを任意の順序でおよび/または並行し結合して、プロセスを実施することができる。いくつかの実施形態では、プロセスの1つまたは複数のブロックを完全に省略できる。さらに、プロセス200は、全体的または部分的に他のプロセスと組み合わせることができる。
【0035】
ブロック202にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施される操作を介して、環境内の運転可能エリアおよび軌道を決定する。運転可能エリアは環境内の1つまたは複数の静的または動的障害物の位置/場所に基づいて事前に決定され得る。図示のように、車両102は、運転可能エリア206内の軌道204を辿っている。車両102は車線112を走行しており、物体104(例えば、別の車両)は隣接する車線114を走行している。2つの車線はパーティション116によって境界が定められており、これは、ペイントストライプまたはボットのドット(例えば、隆起した舗装マーカー)であり得るが、パーティション116は、いくつかの実施形態において、いずれかのマーカーを含む必要はない。運転可能エリア206は、環境内の静的および/または動的物体に基づいて生成され得る。
【0036】
ブロック208にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施される操作を介して、物体104に関連付けられた予測軌道を決定する。物体の予測される動きを使用して、物体104が車両102の前に割り込む尤度を決定し得、これは、車両102の動作に影響を与える、および/または潜在的に干渉する可能性がある。例えば、物体104による車線変更は、減速し物体に追従する物体104用のスペースを作ることを車両102に要求し得る。この状況は車両102の運転可能エリア206を修正することを伴うこととなる。特に、ブロック210にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施された操作を介して、物体104の予測軌道に基づいて修正された運転可能エリアを決定する。
図2に描かれている例示的な状況では、車両102は、物体104が車線
114から車線
112にドリフトおよび/または合流し、その結果、車線侵入が発生するという予測される尤度(例えば、所定の閾値を超え得る)から、軌道212を予測する。物体104のこの予測軌道は、車両102に、修正された運転可能エリア206*を決定するように促し得、これは、運転可能エリア206の部分214の「カットアウト」または削除を含み得る。いくつかの実施形態では、車両102は物体104の複数の予測軌道を決定し得、これらの予測軌道のそれぞれは尤度値に関連付けられ得る。車両102は、例えば、最も高い尤度値を有する予測軌道に基づいて修正された運転可能エリア206*を決定し得るが(例えば、そのような物体の複数の予測軌道が決定される例において)、任意の予測軌道が、使用され得る、および/またはそのような軌道の不確実性または確率であり得る。ブロック208および210のプロセスは、追加の近くの物体(
図2内に不図示)に対して一度に1つずつ、および/または実質的に同時に独立して実行され得る。
【0037】
車両102は、上記のようなセンサシステムによって収集されたデータに基づいて、物体104(および他の物体)の行動を予測し得る。そのようなセンサシステムは車両コンピューティングデバイスに入力を提供でき、車両コンピューティングデバイスの1つまたは複数のシステムは入力を利用できる。例えば、少なくとも1つの例では、車両コンピューティングデバイスは、位置測定システム、知覚システム、予測システム、プランナシステム、および/または運転可能エリア決定システムによる処理のための入力を受信できる。
【0038】
ブロック216にて、車両102は、ハードウェア、ソフトウェア、またはそれらの組み合わせで実施される操作を介して、修正された運転可能エリア206*(これは、順に、物体104の予測軌道212に基づいて修正されている可能性がある)に基づいて車両102の軌道204を評価する。場合によっては、操作は、「ロールアウト」と呼ばれ得る環境の状態を、軌道204に沿った離散的なタイムステップまたはポイントにて、評価することを含み得る。そのような評価は、時間の経過とともに予想されるにつれて(例えば、車両102に関連付けられた制御に基づいて、および/または、予測軌道204に関連付けられた予想される位置、加速度、速度などに基づいて)、車両102および/または物体104の位置を更新することを含み得る。そのような評価は、物体104に基づいて修正された運転可能エリア206*が新しい軌道(例えば、軌道204を置き換える)を必要とするかどうかを決定することによって、物体104が軌道204に影響を与えるかどうかを決定する技術の一部である。例えば、物体104の予測軌道212が、車両102の軌道204の所定の閾値距離と交差する、または範囲内に入る場合、軌道204および/または運転可能エリア206を修正する必要がある。追加または代替の例において、修正された運転可能エリア206*に関する軌道204に関連付けられたコストを決定し得る。
【0039】
ブロック218にて、車両102は、軌道204に関連付けられた車両102の制御を修正するかどうかを決定する。例えば、上記のように、そのような決定は、物体104が軌道204に影響を与えるかどうかに基づき得る。
図2に示される例において、物体104の予測軌道212は、物体104が車両102の真正面にあり、いくつかのタイムステップにおいて、軌道204に関連付けられた環境の一部を占めることにつながる。この状況は、車両102が修正された軌道220(例えば、軌道204を置き換える)を生成し、物体104に追従する結果をもたらし得る。
【0040】
図1のように、そのような決定は、ジオメトリ(geometry)(軌道204が修正された運転可能エリア206*の閾値距離と交差するおよび/または内に入るかどうか)に関して、および/または修正された運転可能エリア206*に関連付けられた様々なコストを再評価することによって、行われ得る。例えば、そのようなコストは、軌道に関連付けられたトリップパラメータに少なくとも部分的に基づき得る。いくつかの実施形態では、トリップパラメータは、境界までの距離の関数(例えば、放物線、多項式、指数など)、車両の速さ、車両加速度の変化、追従距離、事故リスク要因、および車両運動性(例えば、安全かつ快適に減速(または停止)する安全停止軌道を決定するために使用され得る)などの1つまたは複数を含み得る。コストまたはトリップパラメータはまた、車両と物体の間を維持する最小距離に関連付けられたデータを含み得る。他のトリップパラメータは、ほんの数例を挙げると、車両運動性、乗客の快適さ、到着予定時刻、エネルギー使用量などを含み得る。
【0041】
ブロック222において、車両102は、車両102が物体104に追従するように、修正された軌道に関連付けられた修正された制御に基づいて制御される。あるいは、物体104の予測軌道212が車両102の軌道204と交差または干渉しない場合、車両102は、車両102が物体104に追従しないように(修正されていない)軌道108に関連付けられた修正されていない制御に基づいて制御される。
【0042】
理解されるように、車両102が環境内を移動するにつれて、環境内の物体は常に変化している。従って、プロセス100および200は、反復的に実行され得る。例えば、新しい運転可能エリアは、ほぼ実時間で、例えば、約5秒から約3秒程度の間隔で決定され得る。さらに、物体が車両に対する位置、速度、姿勢などを変化させると、物体に関する新しい情報を含むように運転可能エリアを更新できる。さらに、各運転可能エリアは、例えば、車両および/または物体の予測された動きのプロパゲーションに基づき得る。従って、例えば、横方向距離が決定される経路に沿った位置は、車両が軌道に関連付けられた位置にあるときに物体がどこにあるかの近似値を含み得る。
【0043】
図3は、物体304に追従するかどうかを決定する交差点での車両302の実施例300を示す概略図である。具体的には、
図3は、車両302が物体304の後方にいて(例えば、追従しており)、ともに車線306を走行し、交差点に近づいている様子を示している。図に示されているように、物体304は、交差する通りの車線308に左折している。図示の状況の前に、車両302は、しばらくの間、物体304の後方にいていたとしてもよく、または代わりに、物体304は左折をする準備をして右の車線
310から車線306に入り、従って、車両302の前に出てきた(例えば、遮った)ばかりであったとしてもよい。そのような方向転換は、とりわけ、2つの状況につながり得る。第1の状況では、例えば、物体304は、車線306から車線308への方向転換を行う間またはその前に、実質的に減速または停止し得る。第2の状況では、物体304は、方向転換の全てのプロセスの間、その速度を実質的に維持し得る。いずれの状況においても、車両302は、物体304が方向転換するまで物体304に追従するか否かを決定するプロセスを実行し得る。例えば、第1の状況では、物体304に追従するというアクションは、物体304の減速に付随して、車両302が減速することを意味し、その結果、車両と物体との間の安全な距離が維持される。あるいは、第1の状況では、物体304に追従しないというアクションは、車両302が右の車線310を介して物体304を通過することを意味する。第2の状況では、物体304に追従するアクションは、物体304が車線306から車線308に方向転換し得ることを期待して、車両302が速度を維持することを意味する。あるいは、第2の状況では、物体304に追従しないというアクションは、車両302が右の車線310を介して物体304を通過することを意味する。
【0044】
様々な実施形態において、車両302は、物体304の「スポットチェック」を実行して、物体に追従するか否かを決定し得る。上記のように、このようなスポットチェックは、一般に、詳細なコストの決定または物体の動きの予測、予測された動きに基づく可能な軌道の決定などを含むような、より詳細な計算のためにプロセッサを追加使用することを回避することによって、比較的高速なプロセスであり得る。代わりに、スポットチェックは、車両302の運転可能エリア314の現在または最新の軌道312の横方向計画を、車両302の新たに計算され修正された運転可能エリアの軌道に対して評価および比較することを含み得る。運転可能エリア314は、物体304が車両302の前に急に出てきた上記後者の状況を示していることに留意されたい。基準軌道312が交差する(または、他の実施形態では、新しく計算され修正された運転可能エリアを参照するそのような軌道に関連付けられたコストが比較的高い)場合、車両302は、物体304に追従することを選択し得る。この追従の場合、新しく計算され修正された運転可能エリア314を使用して、車両302の軌道を修正する。一方、交差点がなく、従って追従しない場合、新しく計算された候補運転可能エリアは単に「スポットチェック」測定値として使用され、その後破棄される。いくつかの実施形態では、車両302は、上記のように、物体304の予測軌道316に基づいて運転可能エリア314を修正し得る。あるいは、車両302が、物体304が車線306から車線308に方向転換すると決定した場合、車両302は、そうでなければ、車両302を減速させる「ブレーキタップ」に関連付けられる可能性のある、車両302と物体304との間の距離を減らし得る速度を維持し得る。すなわち、場合によっては、物体304が予測軌道316に基づいて運転可能エリア314から方向転換し得ると決定することは、減速を減らし、それにより乗り心地を改善し、および/または車両のエネルギー資源を節約し得る。
【0045】
図4は、物体404に追従するかどうかを決定する交差点での車両402の実施例400を示す概略図である。具体的には、
図4は、車線406を走行し、交差点に接近する車両402を示している。図に示されているように、物体404は、対向する車線408にあり、交差する通りの車線410に右折している。車両402はまた、車線410に(車線406から)方向転換することを意図している。車両402および物体404によるそのような方向転換は、とりわけ、2つの状況につながり得る。第1の状況では、例えば、物体404は、車線408から車線410への方向転換を行う間またはその前に、実質的に減速または停止し得る。第2の状況では、物体404は、方向転換の全てのプロセスの間、その速度を実質的に維持し得る。いずれの状況においても、車両402は、物体404に追従するか否かを決定するプロセスを実行し、その後、方向転換し得る。例えば、第1の状況では、物体404に追従するというアクションは、車両402が方向転換する前に、車両402は十分に減速して、物体404の方向転換を可能にすることを意味している。そして、両方の方向転換(物体404および車両402の)に続いて、追従することは、車両と物体との間の安全な距離が車線410内に維持されることを意味する。あるいは、第1の状況では、物体404に追従しないというアクションは、車両402が、物体404に道を譲らず、物体404が車線410に方向転換する前に、車線410に方向転換ことを意味する。第2の状況では、物体404に追従するというアクションは、車両402が方向転換を進め、車線410内の物体404の後方の安全な距離を維持することを意味する。
【0046】
様々な実施形態において、車両402は、物体404の「スポットチェック」を実行して、物体に追従するか否かを決定し得る。スポットチェックは、車両402の現在または最新の軌道412の横方向計画を、車両402の新たに計算され修正された運転可能エリアに対して評価および比較することを含み得る。基準軌道が交差する(または、他の実施形態では、新しく計算され修正された運転可能エリアに関連付けられたコストが比較的高い)場合、車両402は、物体404に追従することを選択し得る。この追従の場合、新しく計算され修正された運転可能エリアを使用して、車両402の軌道を修正する。一方、交差点がなく、従って、追従しない場合、新しく計算された候補運転可能エリアは単に「スポットチェック」測定値として使用され、その後破棄される。いくつかの実施形態では、車両402は、上記のように、物体404の予測軌道416に基づいて運転可能エリア414を修正し得る。
【0047】
図5は、本明細書で説明されるように、運転可能エリアを生成および利用するための例示的なシステム500を示すブロック図である。少なくとも1つの例では、システム500は、車両502を含むことができ、これは、
図1から
図4を参照して上記の車両102、302、および402と同じ車両とすることができる。車両502は、1つまたは複数の車両コンピューティングデバイス504、1つまたは複数のセンサシステム506、1つまたは複数のエミッタ508、1つまたは複数の通信接続部510、少なくとも1つの直接接続部512、および1つまたは複数の駆動システム514を含むことができる。少なくとも1つの例では、センサシステム506は、上記のセンサシステムに対応できる。
【0048】
車両コンピューティングデバイス504は、プロセッサ516およびプロセッサ516と通信可能に結合されたメモリ518を含むことができる。図示の例では、車両502は自律車両である。ただし、車両502は任意の他のタイプの車両であることがある。図示の例では、車両コンピューティングデバイス504のメモリ518は、位置測定システム520、知覚システム522、予測システム524、プランナシステム526、運転可能エリア決定システム528、および1つまたは複数のシステムコントローラ530を格納する。これらのシステムとコンポーネントを以下では理解しやすいように別々のコンポーネントとして図示し説明しているが、様々なシステムおよびコントローラの機能が説明とは異なるように属していてもよい。非限定的な例として、知覚システム522に属する機能は、位置測定システム520および/または予測システム524によって実行され得る。さらに、より少ないまたはより多くのシステムおよびコンポーネントを利用し、本明細書に記載の様々な機能を実行し得る。さらに、例示目的でメモリ518に常駐するものとして
図5では示されているが、位置測定システム520、知覚システム522、予測システム524、プランナシステム526、運転可能エリア決定システム528、および/または1つまたは複数のシステムコントローラ530は、追加的に、または代替的に、車両502にアクセス可能である(例えば、車両502から離れたメモリに格納されている、または、そうでなければ、車両502からアクセス可能である)ことができることが企図されている。
【0049】
図5にも示されるように、メモリ518は、1つまたは複数のマップを格納し得るマップストレージ532、および/または物体情報を格納し得る物体情報ストレージ534を含むことができる。マップは、限定されないが、トポロジ(交差点など)、道路、山脈、道路、地形、環境全般など、環境に関する情報を提供できる、2次元または3次元でモデル化された任意の数のデータ構造とすることができる。
【0050】
少なくとも1つの例では、位置測定システム520は、センサシステム506からデータを受信して、車両502の位置および/または向き(例えば、1つまたは複数のx、y、z位置、ロール、ピッチ、またはヨー)を決定する機能を含むことができる。例えば、位置測定システム520は、環境のマップを含み、および/または要求/受信することができ(例えば、マップストレージ532から)、マップ内の自律車両の位置および/または向きを継続的に決定できる。いくつかの例では、位置測定システム520は、SLAM(同時位置測定およびマッピング)、CLAMS(較正、位置測定およびマッピングを同時に)、相対SLAM、バンドル調整、非線形最小二乗最適化、微分動的計画法などを利用して、画像データ、LIDARデータ、RADARデータ、IMUデータ、GPSデータ、ホイールエンコーダデータなどを受信し、自律車両の位置を正確に決定することができる。いくつかの例では、位置測定システム520は車両502の様々なコンポーネントにデータを提供して、環境内を走行する軌道を生成するための自律車両の初期位置を決定できる。
【0051】
いくつかの例では、知覚システム522は、物体の検出、区分、および/または分類を実行する機能を含むことができる。いくつかの例では、知覚システム522は、物体104、304、および404などの、車両502に近接する物体の存在を示す処理済みセンサデータを提供できる。知覚システムはまた、エンティティタイプ(例えば、車、歩行者、自転車、動物、建物、樹木、路面、縁石、歩道、不明など)としてのエンティティの分類を含み得る。例えば、知覚システム522は、センサデータを物体情報データベース534内の物体情報と比較して、分類を決定し得る。追加および/または代替の例では、知覚システム522は、検出された物体および/または物体が位置する環境に関連付けられた1つまたは複数の特性を示す処理済みセンサデータを提供できる。いくつかの例では、物体に関連付けられた特性は、限定しないが、x位置(グローバルおよび/またはローカルポジション)、y位置(グローバルおよび/またはローカルポジション)、z位置(グローバルおよび/またはローカルポジション)、方向(例えば、ロール、ピッチ、ヨー)、物体タイプ(例えば、分類)、物体の速度、物体の加速度、物体の範囲(サイズ)、物体に関連付けられたバウンディングボックスなど、を含むことができる。環境に関連付けられた特性は、限定しないが、環境内の別の物体の存在、環境内の別の物体の状態、時刻、曜日、季節、気象条件、暗闇/光の表示などを含むことができる。
【0052】
予測システム524は、センサシステム506からのセンサデータ、マップストレージ532からのマップデータ、およびいくつかの例では、知覚システム522から出力された知覚データ(例えば、処理済みセンサデータ)にアクセスできる。少なくとも1つの例では、予測システム524は、センサデータ、マップデータ、および/または知覚データに少なくとも部分的に基づいて、物体に関連付けられた特徴を決定できる。上記のように、特徴は、物体の範囲(例えば、高さ、重量、長さなど)、物体の姿勢(例えば、x座標、y座標、z座標、ピッチ、ロール、ヨー)、物体の速度、物体の加速度、および物体の移動方向(例えば、方位)を含むことができる。さらに、予測システム524は、物体と近接する走行車線との間の距離、現在の走行車線の幅、横断歩道への近さ、意味的特徴、相互作用的特徴などを決定するように構成され得る。
【0053】
予測システム524は、物体の特徴を分析して、物体の将来のアクションを予測できる。例えば、予測システム524は、車線変更、減速、加速、方向転換、方向の変更などを予測できる。予測システム524は、運転可能エリア決定システム528が予測データを利用して運転可能エリアの境界を決定できるように、運転可能エリア決定システム528に予測データを送信できる(例えば、物体の意味分類に加えて、または代わりに、位置、速度、加速度の不確実性のうちの1つまたは複数に基づいて)。例えば、予測データが、路肩に沿って歩く歩行者が不規則に行動していることを示す場合、運転可能エリア決定システム528は、歩行者に近接する運転可能エリアの増加したオフセットを決定できる。車両502が自律的でないいくつかの例では、予測システム524は、走行に影響を及ぼし得る予測されたイベントの表示(例えば、音声および/または視覚的警告)をドライバーに提供し得る。
【0054】
いくつかの例では、予測システム524は、環境内の物体の予測された位置を表す予測ポイントを決定する機能を含むことができる。予測システム524は、いくつかの実施形態では、最高の確率に関連付けられたセルに少なくとも部分的に基づいて、および/または、予測ポイントに関連付けられた予測軌道の生成に関連付けられたコストに少なくとも部分的に基づいて、ヒートマップに関連付けられた予測ポイントを決定できる。
【0055】
例えば、予測システム524は、数例を挙げると、リスク要因、安全性、および車両運動性に関連付けられた1つまたは複数のコスト関数を評価することに少なくとも部分的に基づいて、予測ポイントとしてヒートマップのポイント、セル、または領域を選択できる。このようなコストは、限定されないが、位置ベースのコスト(例えば、予測ポイントの間で許容される距離を制限する)、速度コスト(例えば、予測軌道で一定の速度を強制する定速度コスト)、加速度コスト(例えば、予測軌道で加速度の境界を強制する)、物体が道路のルールに従い得る期待などが含まれ得る。少なくともいくつかの例では、コスト時間確率の最大値に関連付けられたポイント(例えば、候補ポイント)が、特定の時間に物体に関連付けられた予測ポイントとして選択されるように、セルに関連付けられた確率はコスト(少なくともいくつかの例では、正規化され得る)と掛け合わされ得る。
【0056】
一般に、プランナシステム526は、車両502が環境を走行するために辿る経路を決定できる。例えば、プランナシステム526は、様々なルートおよび軌道、ならびに様々なレベルの詳細を決定できる。例えば、プランナシステム526は、第1の場所(例えば、現在の場所)から第2の場所(例えば、目標の場所)へ走行するルートを決定できる。本説明の目的のために、ルートは、2つの位置の間を走行するための一連の経由地点とすることができる。非限定的な例として、経由地点は、道路、交差点、全地球測位システム(GPS)座標などが含まれる。さらに、プランナシステム526は、第1の場所から第2の場所へのルートの少なくとも一部に沿って自律車両をガイドするための命令を生成できる。少なくとも1つの例では、プランナシステム526は、一連の経由地点内の第1の経由地点から一連の経由地点内の第2の経由地点まで自律車両をどのようにガイドするかを決定できる。いくつかの例では、命令は軌道または軌道の一部とすることができる。いくつかの例では、receding horizon技術に従って、複数の軌道を実質的に同時に(例えば、技術的許容範囲内で)生成することができ、複数の軌道のうちの1つが、車両502の走行のために選択される。従って、本明細書に記載の例示的な実施形態では、プランナシステム526は、車両が走行できる軌道を生成し得、軌道は運転可能エリア内に含まれる。
【0057】
運転可能エリア決定システム528は、運転可能エリア110などの運転可能エリアを決定するように構成される。メモリ518内の別個のブロックとして示されているが、いくつかの例および実施形態では、運転可能エリア決定システム528はプランナシステム526の一部であってもよい。運転可能エリア決定システム528は、センサシステム506からのセンサデータ、マップストレージ532からのマップデータ、物体情報ストア534からの物体情報、位置測定システム520、知覚システム522、および/または予測システム524のうちの1つまたは複数からの出力(例えば、処理済みデータ)にアクセスできる。非限定的な例として、運転可能エリア決定システム528は、1つまたは複数の計画経路にアクセス(例えば、検索または受信)し得る。計画経路は、環境を走行する潜在的な経路を表し得、例えば、マップデータ、物体情報、および/または知覚データに基づいて決定され得る。いくつかの例では、計画経路は、ミッションを実行するための候補経路として決定され得る。例えば、車両コンピューティングデバイス504は、目的地への最高レベルのナビゲーション、例えば、目的地に走行するための一連の道路、としてミッションを定義または決定し得る。ミッションが決定されると、その高レベルのナビゲーションを実行するための1つまたは複数のアクションが決定され得る。アクションは、ミッションをどのように実行するかをより頻繁に決定することを含み得る。例えば、アクションは、「車両に追従する」、「右側から車両を通過する」などのタスクを含み得る。いくつかの例では、本明細書に記載の予測経路は、各アクションに対して決定され得る。
【0058】
計画経路に対して、運転可能エリア決定システム528は、計画経路に沿った離散ポイントにて、経路から環境内の物体までの横方向距離を決定し得る。例えば、距離は、知覚システム522によって生成された知覚データとして受信され得る、および/またはレイキャスティング技術などの数学的および/またはコンピュータビジョンモデルを使用して決定され得る。次に、様々な横方向距離が他の要因を考慮して調整され得る。例えば、車両502と環境内の物体との間の最小距離を維持することが望ましい場合がある。本開示の実施形態において、意味分類を含む物体に関する情報を使用して、それらの距離調整を決定し得る。さらに、予測システム524はまた、物体の予測された動きに関する予測データを提供し得、距離は、それらの予測に基づいてさらに調整され得る。例えば、予測データは信頼度スコアを含み得、横方向距離は、例えば、信頼性の低い予測に対してより大きな調整を行うこと、およびより信頼性の高い予測に対してわずかなまたは全く調整を行わないことによって、信頼度スコアに基づいて調整され得る。調整された距離を使用して、運転可能エリア決定システム528は、運転可能エリアの境界を定義し得る。少なくともいくつかの例では、境界が離散化され得(例えば、10cm、50cm、1mごとなど)、境界に関する情報が符号化され得る(例えば、最も近い物体までの横方向距離、最も近い物体の意味分類、境界に関連付けられた信頼度および/または確率スコアなど)。本明細書に記載されるように、プランナシステム526によって決定される軌道は、運転可能エリアによって制限され、従い得る。運転可能エリア決定システム528はプランナシステム526とは別個のものとして示されているが、運転可能エリアシステム528の機能の1つまたは複数は、プランナシステム526によって実行され得る。いくつかの実施形態では、運転可能エリア決定システム528はプランナシステム526の一部であってもよい。
【0059】
少なくとも1つの例では、位置測定システム520、知覚システム522、予測システム524、プランナシステム526、および/または運転可能エリア決定システム528は、上述したように、センサデータを処理でき、ネットワーク536を介してコンピューティングデバイス538にそれぞれの出力を送信できる。少なくとも1つの例では、位置測定システム520、知覚システム522、予測システム524、および/またはプランナシステム526は、所定の期間の経過後、ほぼ実時間などで、特定の周波数にて、それぞれの出力をコンピューティングデバイス538に送信できる。
【0060】
少なくとも1つの例示において、車両コンピューティングデバイス504は、1つまたは複数のシステムコントローラ530を含むことができ、これは、車両502のステアリング、推進、ブレーキ、安全性、エミッタ、通信、および他のシステムを制御するように構成できる。これらのシステムコントローラ530は、駆動システム514および/または車両502の他のコンポーネントに対応するシステムと通信および/または制御できる。例えば、システムコントローラ530は、例えば、運転可能エリア決定システム528によって決定される運転可能エリア内において、プランナシステム526によって決定される運転経路に沿って車両を走行させ得る。
【0061】
少なくとも1つの例では、センサシステム506は、LIDARセンサ、RADARセンサ、超音波トランスデューサー、SONARセンサ、位置センサ(例えば、GPS、コンパスなど)、慣性センサ(例えば、慣性測定ユニット、加速度計、磁力計、ジャイロスコープなど)、カメラ(例えば、RGB、UV、IR、強度、深度など)、マイク、ホイールエンコーダ、環境センサ(例えば、温度センサ、湿度センサ、光センサ、圧力センサなど)などを含むことができる。センサシステム506は、これらまたは他のタイプのセンサのそれぞれの複数の実例を含むことができる。例えば、LIDARセンサは、車両502の角、前部、後部、側面、および/または上部に配置された個々のLIDARセンサを含むことができる。別の例として、カメラセンサは、車両502の外部および/または内部の周りの様々な位置に配置された複数のカメラを含むことができる。センサシステム506は、車両コンピューティングデバイス504に入力を提供できる。追加的および/または代替的に、センサシステム506は、所定の期間の経過後、ほぼ実時間などで、特定の周波数にて、コンピューティングデバイス538にネットワーク536を介してセンサデータを送信できる。
【0062】
車両502はまた、光および/または音を放出する1つまたは複数のエミッタ508を含むことができる。この例示のエミッタ508は車両502の乗客と通信するための内部オーディオおよびビジュアルエミッタを含む。例示の目的で、限定ではなく、内部エミッタは、スピーカー、ライト、標識、ディスプレイ画面、タッチ画面、触覚エミッタ(例えば、振動および/またはフォースフィードバック)、機械式アクチュエータ(例えば、シートベルトテンショナー、シートポジショナー、ヘッドレストポジショナーなど)などを含むことができる。この例示のエミッタ508は外部エミッタも含む。限定ではなく例として、この例示の外部エミッタは、歩行者、他のドライバー、他の近くの車両などと視覚的に通信するためのライトエミッタ(例えば、インジケータライト、標識、ライトアレイなど)、歩行者、他のドライバー、他の近くの車両などと音声で通信するための1つまたは複数のオーディオエミッタ(例えば、スピーカー、スピーカーアレイ、ホーンなど)などを含む。少なくとも1つの例において、エミッタ508は、車両502の外部および/または内部の周りの様々な位置に設置できる。
【0063】
車両502はまた、車両502と他のローカルまたはリモートコンピューティングデバイスとの間の通信を可能にする通信接続部510を含むことができる。例えば、通信接続部510は車両502および/または駆動システム514上の他のローカルコンピューティングデバイスとの通信を容易にできる。また、通信接続部510は、車両が他の近くのコンピューティングデバイス(例えば、他の近くの車両、交通信号など)と通信することを可能にできる。通信接続部510はまた、車両502が遠隔操作コンピューティングデバイスまたは他の遠隔サービスと通信することを可能にする。
【0064】
通信接続部510は、車両コンピューティングデバイス504を別のコンピューティングデバイスまたはネットワーク536などのネットワークに接続するための物理的および/または論理的インターフェースを含むことができる。例えば、通信接続部510は、IEEE802.11規格によって定義された周波数を介するようなWi-Fiベースの通信、BLUETOOTH(登録商標)などの短距離無線周波数、またはそれぞれのコンピューティングデバイスが他のコンピューティングデバイスとインターフェースで接続することを可能にする任意の適切な有線または無線通信プロトコルを可能にできる。
【0065】
少なくとも1つの例では、車両502は駆動システム514を含むことができる。いくつかの例では、車両502は、単一の駆動システム514を有することができる。少なくとも1つの例では、車両502が複数の駆動システム514を有する場合、個々の駆動システム514は車両502の両端部(例えば前部および後部など)に配置できる。少なくとも1つの例では、駆動システム514は駆動システム514および/または車両502の周辺の状態を検出するセンサシステムを含むことができる。限定ではなく例として、センサシステム506は、駆動モジュールのホイールの回転を感知するホイールエンコーダ(例えば、ロータリーエンコーダ)、駆動モジュールの位置および加速度を測定する慣性センサ(例えば、慣性測定ユニット、加速度計、ジャイロスコープ、磁力計など)、カメラまたは他の画像センサ、駆動モジュールの周辺の物体を音響的に検出する超音波センサ、LIDARセンサ、RADARセンサなどを含むことができる。ホイールエンコーダなどの一部のセンサは駆動システム514に固有とすることができる。場合によっては、駆動システム514上のセンサシステム506は車両502の対応するシステム(例えばセンサシステム506)と重複または補足できる。
【0066】
駆動システム514は、高電圧バッテリー、車両502を推進するモーター、バッテリーからの直流を他の車両システムで使用する交流に変換するインバーター、ステアリングモーターおよびステアリングラック(電動とすることができる)を含むステアリングシステム、油圧または電気アクチュエータを含むブレーキシステム、油圧および/または空気圧コンポーネントを含むサスペンションシステム、トラクションの損失を軽減し制御を維持するブレーキ力分散用の安定性制御システム、HVACシステム、照明(例えば車両の外部環境を照らすヘッド/テールライトなどの照明)、および1つまたは複数の他のシステム(例えば冷却システム、安全システム、車載充電システム、DC/DCコンバーター、高電圧ジャンクション、高電圧ケーブル、充電システム、充電ポートなどのその他の電装コンポーネント)を含む多くの車両システムを含むことができる。さらに、駆動システム514は、センサシステムからデータを受信および事前処理し様々な車両システムの操作を制御できる駆動モジュールコントローラを含むことができる。いくつかの例では、駆動モジュールコントローラは、プロセッサおよびプロセッサと通信可能に結合されたメモリを含むことができる。メモリは1つまたは複数のモジュールを格納して、駆動システム514の様々な機能を実行できる。さらに、駆動システム514はまた、それぞれの駆動モジュールによる他のローカルまたはリモートコンピューティングデバイスとの通信を可能にする通信接続部を含む。
【0067】
上記のように、車両502は、ネットワーク536を介してコンピューティングデバイス538にセンサデータを送信できる。いくつかの例では、車両502は未処理のセンサデータをコンピューティングデバイス538に送信できる。他の例では、車両502は、コンピューティングデバイス538に、処理済みセンサデータおよび/またはセンサデータの表現(例えば、位置測定システム520、知覚システム522、予測システム524、および/またはプランナシステム526から出力されたデータ)を送信できる。いくつかの例では、車両502は、所定の期間の経過後、ほぼ実時間などで、特定の周波数にて、センサデータをコンピューティングデバイス538に送信できる。
【0068】
コンピューティングデバイス538は、車両502および/または1つまたは複数の他の車両および/またはデータ収集デバイスからセンサデータ(未処理または処理済み)を受信でき、センサデータおよび他の情報に基づいて運転可能エリアを決定できる。少なくとも1つの例では、コンピューティングデバイス538は、プロセッサ540およびプロセッサ540と通信可能に結合されたメモリ542を含むことができる。図示の例では、コンピューティングデバイス538のメモリ542は、例えば、物体情報ストレージ546を含むことができる運転可能エリア決定コンポーネント544を格納する。少なくとも1つの例では、物体情報ストレージ546は、物体情報ストレージ534および/または物体情報ストレージに対応できる。
【0069】
運転可能エリア決定コンポーネント544は、上記の運転可能エリア決定システム528に対応し得る。例えば、運転可能エリア決定コンポーネント544はデータを処理して、車両から離れた運転可能エリアを決定し得る。例えば、運転可能エリア(または複数の運転可能エリアからの好ましい運転可能エリア)は、コンピューティングデバイス538にて決定され、例えばネットワーク536を介して車両502に転送され得る。さらに、運転可能エリア決定コンポーネント544は、上記のように、および、位置測定システム520、知覚システム522、予測システム524、および/またはプランナシステム526に起因する、1つまたは複数の操作を実行できる。少なくとも1つの例では、運転可能エリア決定コンポーネント544はセンサデータを分析して、環境内の物体の属性を決定し、(1)そのような物体が運転可能エリア内に含まれるべきかどうかを決定し、(2)運転可能エリアの境界を構成できる。例えば、運転可能エリア決定コンポーネント544は、物体に関する情報を、例えば、物体情報ストレージ546内に格納された分類情報と比較して、物体が車両によって影響を受けるかどうか、物体(または物体の予測される動き)が車両へ影響を与えるかどうか、および/または物体が運転可能エリアに影響を与える範囲を決定し得る。
【0070】
運転可能エリア決定コンポーネント544はまた、または代替的に、運転可能エリアを特徴づける物体の特徴を考慮し得る。特徴は、物体の範囲(例えば、高さ、重さ、長さなど)、物体の姿勢(例えば、x座標、y座標、z座標、ピッチ、ロール、ヨーなど)、物体の速度、物体の加速度、物体の進行方向(例えば、方位)、物体と近接する走行車線との間の距離、物体の意味分類(車、歩行者、自転車など)、現在の走行車線の幅、横断歩道への近さ、意味特徴、相互作用的特徴、などを含むことができる。いくつかの例では、特徴(例えば、範囲、姿勢など)の少なくとも一部は、センサデータソース(例えば、車両502および/または他の車両および/またはデータ収集装置)に搭載された知覚システムによって決定でき、他の特徴は、そのような特徴および/または他のセンサデータおよび/または環境のマップに関連付けられたマップデータに基づいて決定できる。いくつかの例では、サンプルを1つまたは複数のより短い時間期間に分割でき、特徴をより短い期間のそれぞれにたいして決定できる。サンプルの特徴は、短い時間期間のそれぞれの特徴の全体に基づいて決定できる。
【0071】
車両502のプロセッサ516およびコンピューティングデバイス538のプロセッサ540は、本明細書で説明されるように、データを処理し操作を実施するための命令を実行可能な任意の適切なプロセッサとすることができる。限定ではなく例として、プロセッサ516および540は、1つまたは複数の中央処理装置(CPU)、グラフィック処理装置(GPU)、または電子データを処理して電子データをレジスタまたはメモリに格納できる他の電子データに変換する他の任意のデバイスまたはデバイスの一部、を備えることができる。いくつかの例では、集積回路(例えば、ASICなど)、ゲートアレイ(例えば、FPGAなど)、および他のハードウェアデバイスはまた、それらが符号化された命令を実装するよう構成される限り、プロセッサと見なすことができる。
【0072】
メモリ518およびメモリ542は非一時的コンピュータ可読媒体の例である。メモリ518およびメモリ542は、オペレーティングシステムおよび1つまたは複数のソフトウェアプリケーション、命令、プログラム、および/またはデータを格納して、本明細書に記載の方法および様々なシステムに起因する機能を実装できる。様々な実施形態では、メモリを、スタティックランダムアクセスメモリ(SRAM)、シンクロナスダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、または情報を格納可能な他の任意のタイプのメモリなど、適切なメモリ技術を用いて実装できる。本明細書で説明されるアーキテクチャ、システム、および個々の要素は、多くの他の論理的、プログラム的、および物理的なコンポーネントを含むことができ、それらの添付図面に図示されるものは、本明細書での説明に関連する単なる例にすぎない。
【0073】
図5は分散システムとして示されているが、代替の例では、車両502のコンポーネントをコンピューティングデバイス538に関連付けることができ、および/またはコンピューティングデバイス538のコンポーネントを車両502に関連付けることができる、という事に留意すべきである。すなわち、車両502はコンピューティングデバイス538に関連付けられた機能の1つまたは複数を実行でき、逆もまた同様である。さらに、様々なシステムおよびコンポーネントが離散システムとして図示されているが、図示は単なる例であり、多かれ少なかれ、離散システムが本明細書に記載の様々な機能を実行し得る。
【0074】
本明細書に記載の様々な技術は、コンピュータ可読ストレージに格納され、図に示されているような1つまたは複数のコンピュータまたは他のデバイスのプロセッサによって実行される、コンピュータ実行可能命令またはプログラムモジュールなどのソフトウェアのコンテキストにおいて実装できる。一般に、プログラムモジュールには、ルーチン、プログラム、物体、コンポーネント、データ構造などが含まれ、特定のタスクを実行するための操作ロジックを定義する、または特定の抽象的なデータタイプを実装する。
【0075】
説明された機能を実装するために他のアーキテクチャを使用でき、本開示の範囲内にあることが意図されている。さらに、責任の具体的な分配は、議論目的のために上記に定義されているが、様々な機能および責任は、状況に応じて、異なるやり方において分配および分割され得る。
【0076】
同様に、ソフトウェアは、様々なやり方において、および異なる手段を使用して、格納および分配でき、上記の特定のソフトウェアの格納および実行構成は、多くの異なるやり方で変更できる。従って、上記の技術を実装するソフトウェアは、具体的に説明されているメモリの形態に限定されない、様々なタイプのコンピュータ可読媒体上に分配できる。
【0077】
[例示的な発明内容]
段落A.車両のための環境を通る運転可能エリアを決定するステップであって、前記運転可能エリアは、前記車両が走行し得る環境内の領域を表す、ステップと、前記車両が辿るための前記運転可能エリア内の軌道を決定するステップと、前記車両上のセンサからセンサデータを受信するステップと、前記センサデータに少なくとも部分的に基づいて、前記環境内の物体を検出するステップと、前記センサデータに少なくとも部分的に基づいて、前記物体に関連付けられた物体パラメータを決定するステップであって、前記物体パラメータは、速度、位置、分類、または範囲の1つまたは複数を含むステップと、前記物体パラメータに少なくとも部分的に基づいて、修正された運転可能エリアを決定するステップと、前記修正された運転可能エリアに少なくとも部分的に基づいて、前記軌道が無効であることを決定するステップと、前記軌道が無効であると決定するステップに少なくとも部分的に基づいて、修正された軌道を決定するステップと、前記修正された軌道に従って前記車両を制御するステップと、を含む方法。
【0078】
段落B.前記軌道が無効であると決定するステップは、前記修正された運転可能エリアおよび前記軌道に少なくとも部分的に基づいて、コストを決定するステップを含み、前記コストは前記車両と前記物体との間を維持する最小距離に少なくとも部分的に基づく、段落Aに記載の方法。
【0079】
段落C.前記物体パラメータに少なくとも部分的に基づいて、前記物体の予測軌道を決定するステップを、さらに含み、前記コストは前記予測軌道に少なくとも部分的に基づく、段落Bに記載の方法。
【0080】
段落D.前記物体パラメータは、前記車両に占有されている車線内への前記物体による車線変更または合流を示す、段落Aから段落Cのいずれかに記載の方法。
【0081】
段落E.前記修正された軌道に従って前記車両を制御するステップは、前記物体の相対速度または前記物体までの相対距離の1つまたは複数に少なくとも部分的に基づいて、前記物体に追従するように前記車両を制御するステップをさらに含む、段落Aから段落Dのいずれかに記載の方法。
【0082】
段落F.前記分類は、車、自転車、オートバイ、または歩行者を含む、段落Aから段落Eのいずれかに記載の方法。
【0083】
段落G.前記軌道が無効であると決定するステップは、前記軌道が前記修正された運転可能エリアの境界の閾値距離と交差する、または範囲内にあると決定するステップを含む、段落Aから段落Fのいずれかに記載の方法。
【0084】
段落H.車両上に設置されたセンサと、プロセッサと、前記プロセッサによって実行可能な命令を格納するコンピュータ可読媒体と、を備え、前記命令が実行されると、前記プロセッサに、前記車両ための運転可能エリアを決定するステップと、前記運転可能エリアに少なくとも部分的に基づいて、前記車両が辿るための基準軌道を決定するステップと、前記センサからセンサデータを受信するステップと、前記センサデータに少なくとも部分的に基づいて、前記車両が走行する環境内の物体の物体パラメータを決定するステップと、前記センサデータに少なくとも部分的に基づいて、前記運転可能エリアを修正し、修正された運転可能エリアを生成するステップと、前記修正された運転可能エリアおよび前記基準軌道に少なくとも部分的に基づいて、前記基準軌道を修正するかどうかを決定するステップと、前記基準軌道を修正するかどうかに少なくとも部分的に基づいて前記車両を制御するステップと、を含む操作を実行させる、車両。
【0085】
段落I.前記物体パラメータは、速度、位置、分類、または範囲の1つまたは複数を含む、段落Hに記載の車両。
【0086】
段落J.前記分類が、車、自転車、オートバイ、または歩行者を含む、段落Iに記載の車両。
【0087】
段落K.前記基準軌道を修正するステップは、前記車両と前記物体との間の相対距離および相対速度を維持するステップを含む、段落Hから段落Jのいずれかに記載の車両。
【0088】
段落L.前記操作は、前記物体の予測軌道を決定するステップと、前記予測軌道に関連付けられた確率を決定するステップと、をさらに含み、前記車両を制御するステップは、さらに前記予測軌道に関連付けられた前記確率に少なくとも部分的に基づく、段落Hから段落Kのいずれかに記載の車両。
【0089】
段落M.前記物体の前記物体パラメータは、車線変更または合流を示す、段落Hから段落Lに記載の車両。
【0090】
段落N.前記物体の前記物体パラメータは交差点での方向転換を示している、段落Hから段落Mに記載の車両。
【0091】
段落O.前記修正された運転可能エリアは第1の修正された運転可能エリアであり、前記操作は、第2の物体に基づく追加のセンサデータを受信するステップと、前記追加のセンサデータに少なくとも部分的に基づいて、前記運転可能エリアを修正し、第2の修正された運転可能エリアを生成するステップと、前記第2の修正された運転可能エリアおよび前記基準軌道に少なくとも部分的に基づいて、コストを決定するステップと、前記コストおよび前記第1の修正された運転可能エリアに少なくとも部分的に基づいて、前記車両を制御するステップと、をさらに含む、段落Hから段落Nに記載の車両。
【0092】
段落P.実行されると、1つまたは複数のプロセッサに、前記車両上のセンサからセンサデータを受信するステップと、車両が走行し得る領域を表す運転可能エリアを決定するステップと、前記車両が辿る前記運転可能エリア内の軌道を決定するステップと、前記センサデータに少なくとも部分的に基づいて、物体に関連付けられた物体パラメータを決定するステップと、前記物体パラメータに少なくとも部分的に基づいて、運転可能エリアを修正し、修正された運転可能エリアを生成するステップと、前記修正された運転可能エリアおよび前記軌道に少なくとも部分的に基づいて、コストを決定するステップと、前記コストに少なくとも部分的に基づいて、前記軌道を修正するかどうかを決定するステップと、を含む操作を実行させる命令を格納した非一時的コンピュータ可読媒体。
【0093】
段落Q.前記操作は、修正された軌道を決定するステップであって、前記修正された軌道は、前記軌道とは異なる長手方向の加速度プロファイルを含む、ステップと、前記修正された軌道に従って前記車両を制御するステップとをさらに含む、段落Pに記載の非一時的コンピュータ可読媒体。
【0094】
段落R.前記物体パラメータは、速度、位置、分類、または範囲の1つまたは複数を含む、段落Pから段落Qに記載の非一時的コンピュータ可読媒体。
【0095】
段落S.前記コストは前記車両と前記修正された運転可能エリアの境界との間の距離に少なくとも部分的に基づき、前記車両を制御するステップは、前記車両と前記物体との間の相対距離または相対速度に少なくとも部分的に基づいて決定された加速度に基づいて、前記車両を制御するステップを含む、段落Pから段落Rに記載の非一時的コンピュータ可読媒体。
【0096】
段落T.前記操作は、前記コストがコスト閾値以上であると決定するステップと、前記物体に追従するように前記車両を制御するステップと、をさらに含む、段落Pから段落Sに記載の非一時的コンピュータ可読媒体。
【0097】
上述の例示の発明内容は1つの特定の実装に関して説明しているが、この文書のコンテキストでは、例示の発明内容はまた、方法、デバイス、システムおよび/またはコンピュータ可読媒体、および/またはその他の実装を介して実装できることを理解されたい。
【0098】
[結論]
本明細書で説明する技術の1つまたは複数の例について説明したが、様々な変更、追加、置換、およびそれらの同等物が、本明細書で説明する技術の範囲内に含まれる。
【0099】
例示の説明では、本明細書の一部を形成する添付の図面を参照するが、これは例示として請求される主題の具体的な例を示す。他の例を使用でき、構造的変更などの変更または代替を行うことできることを理解されたい。そのような例示、変更または代替は、意図して請求される主題に関する範囲から必ずしも逸脱するものではない。本明細書のステップは特定の順序で提示できるが、場合によっては、説明したシステムおよび方法の機能を変更することなく、特定の入力を異なる時間または異なる順序で提供するように、順序を変更できる。開示された手順はまた異なる順序で実行できる。さらに、本明細書で説明される様々な計算は開示された順序で実行される必要はなく、計算の代替順序を使用する他の例を容易に実装できる。並べ替えに加えて、いくつかの例では、計算はまた、同じ結果となるサブ計算に分解できる。