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

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

▶ ウェイモ エルエルシーの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-04-19
(45)【発行日】2023-04-27
(54)【発明の名称】自律走行車の動的ルート決定
(51)【国際特許分類】
   G08G 1/0968 20060101AFI20230420BHJP
   G01C 21/34 20060101ALI20230420BHJP
   G09B 29/10 20060101ALI20230420BHJP
【FI】
G08G1/0968
G01C21/34
G09B29/10 A
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2021022319
(22)【出願日】2021-02-16
(62)【分割の表示】P 2019524052の分割
【原出願日】2017-11-14
(65)【公開番号】P2021082331
(43)【公開日】2021-05-27
【審査請求日】2021-02-16
(31)【優先権主張番号】15/355,658
(32)【優先日】2016-11-18
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】317015065
【氏名又は名称】ウェイモ エルエルシー
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100126480
【弁理士】
【氏名又は名称】佐藤 睦
(72)【発明者】
【氏名】ハーバック,ジョシュア
(72)【発明者】
【氏名】フェアフィールド,ナサニエル
【審査官】増子 真
(56)【参考文献】
【文献】特開2012-168169(JP,A)
【文献】特開2015-230547(JP,A)
【文献】特開2016-017914(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00 - 99/00
G01C 21/00 - 21/36
G01C 23/00 - 25/00
B60W 10/00 - 10/30
B60W 30/00 - 60/00
B60K 35/00 - 37/06
(57)【特許請求の範囲】
【請求項1】
車両を操縦する方法であって、
1つまたは複数のプロセッサによって、複数の車線セグメントを含むマップ情報を使用して、第1の位置から目的地までの走行ルートを作成するステップと、
前記1つまたは複数のプロセッサによって、前記車両の現在位置に基づいて前記マップ情報の局所マップ領域に関する車線セグメントのセットを決定するステップであって、前記局所マップ領域は、所定時間内で前記車両が到達する可能性がある全てのエリアに対応する、ステップと、
前記1つまたは複数のプロセッサによって、前記目的地に基づいて、前記局所マップ領域の前記車線セグメントのセットの各々の車線セグメントにコスト値を割り当てるステップと、
前記1つまたは複数のプロセッサによって、前記割り当てられたコスト値のいくつかを使用して、(i)物体を含む局所領域内の複数のパスのそれぞれにおける前記車両の現在位置から前記局所領域内の端まで到達するためのコスト値と、(ii)前記複数のパスのそれぞれの前記局所領域内の前記端から前記目的地まで到達するためのコスト値と、に基づいて、前記複数のパスのうちいずれのパスを使用するかを決定するステップと、
前記1つまたは複数のプロセッサによって、前記決定されたパスに基づいて前記車両を操縦するステップと
を含む、前記方法。
【請求項2】
前記物体は、前記車両と同じ車線内の別の車両である、請求項1に記載の方法。
【請求項3】
前記物体は、前記車両と同じ車線内の停車している車両である、請求項1に記載の方法。
【請求項4】
前記パスを決定することは、前記車両が走行している第1の車線に隣接する第2の車線の車線セグメントに対して割り当てられたコスト値にさらに基づく、請求項1に記載の方法。
【請求項5】
前記パスを決定することは、前記車両が方向転換せずに交差点を通過することに対応する車線セグメントに対して割り当てられたコスト値にさらに基づく、請求項1に記載の方法。
【請求項6】
前記パスを決定することは、前記車両が交差点を左折することに対応する車線セグメントに対して割り当てられたコスト値にさらに基づく、請求項1に記載の方法。
【請求項7】
前記車線セグメントのセットのうちの前記車線セグメントの少なくともいくつかは、前記コスト値が割り当てられる時に前記車両が走行している車線セグメントに隣接する車線の車線セグメントに対応する、請求項1に記載の方法。
【請求項8】
前記コスト値は、さらに前記目的地の位置に基づいて割り当てられる、請求項1に記載の方法。
【請求項9】
前記割り当てられたコスト値のいくつかのうちの少なくとも1つを前記車線セグメントのセットのうちの所与の車線セグメントに対して割り当てることは、ローカルキャッシュから割り当て済みのコスト値を取り込むことを含む、請求項1に記載の方法。
【請求項10】
前記割り当てられたコスト値のいくつかのうちの少なくとも第2の1つを前記車線セグメントのセットのうちの第2の所与の車線セグメントに対して割り当てることは、前記目的地に基づいて新しい値を生成することを含む、請求項1に記載の方法。
【請求項11】
車両を操縦するためのシステムであって、
複数の車線セグメントを含むマップ情報を使用して、第1の位置から目的地までの走行ルートを作成し、
前記車両の現在位置に基づいて、前記マップ情報の、所定時間内で前記車両が到達する可能性がある全てのエリアに対応する局所マップ領域に関する車線セグメントのセットを決定し、
前記目的地に基づいて、前記局所マップ領域の前記車線セグメントのセットの各々の車線セグメントにコスト値を割り当てて、
前記割り当てられたコスト値のいくつかを使用して、(i)物体を含む局所領域内の複数のパスのそれぞれにおける前記車両の現在位置から前記局所領域内の端まで到達するためのコスト値と、(ii)前記複数のパスのそれぞれの前記局所領域内の前記端から前記目的地まで到達するためのコスト値と、に基づいて、前記複数のパスのうちいずれのパスを使用するかを決定し、
前記決定されたパスに基づいて前記車両を操縦する
ように構成された1つまたは複数のプロセッサを備える、前記システム。
【請求項12】
前記物体は、前記車両と同じ車線内の別の車両である、請求項11に記載のシステム。
【請求項13】
前記物体は、前記車両と同じ車線内の停車している車両である、請求項11に記載のシステム。
【請求項14】
前記1つまたは複数のプロセッサは、前記車両が走行している第1の車線に隣接する第2の車線の車線セグメントに対して割り当てられたコスト値にさらに基づいて、前記パスを決定するようにさらに構成される、請求項11に記載のシステム。
【請求項15】
前記1つまたは複数のプロセッサは、前記車両が方向転換せずに交差点を通過することに対応する車線セグメントに対して割り当てられたコスト値にさらに基づいて、前記パスを決定するようにさらに構成される、請求項11に記載のシステム。
【請求項16】
前記1つまたは複数のプロセッサは、前記車両が交差点を左折することに対応する車線セグメントに対して割り当てられたコスト値にさらに基づいて、前記パスを決定するようにさらに構成される、請求項11に記載のシステム。
【請求項17】
前記車線セグメントのセットのうちの前記車線セグメントの少なくともいくつかは、前記コスト値が割り当てられる時に前記車両が走行している車線セグメントに隣接する車線の車線セグメントに対応する、請求項11に記載のシステム。
【請求項18】
前記1つまたは複数のプロセッサは、前記車線セグメントのセットのうちの所与の車線セグメントに対して前記割り当てられたコスト値のいくつかのうちの少なくとも1つを割り当てるようにさらに構成され、前記割り当てることは、ローカルキャッシュから割り当て済みのコスト値を取り込むことを含む、請求項11に記載のシステム。
【請求項19】
前記1つまたは複数のプロセッサは、前記車線セグメントのセットのうちの第2の所与の車線セグメントに対して前記割り当てられたコスト値のいくつかのうちの少なくとも第2の1つを割り当てるようにさらに構成され、前記割り当てることは、前記目的地に基づいて新しい値を生成することを含む、請求項11に記載のシステム。
【請求項20】
前記車両をさらに含む、請求項11に記載のシステム。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
[0001] 本願は、2016年11月18日に出願された米国特許出願第15/355,658号の継続出願であり、この開示内容を参照によって本願明細書に引用したものとする。
【背景技術】
【0002】
[0002] 人間の運転手を必要としない自動車のような自律走行車は、ある場所から別の場所への乗客または物品の輸送を支援するのに使用され得る。該車両は、乗客がピックアップ位置または目的位置のような何らかの初期入力を行い得、車両がその位置まで自身を誘導する完全自律式に動作し得る。
【0003】
[0003] 該車両は、典型的には、環境の物体を検出するために、様々なタイプのセンサが装備されている。例えば、自律走行車は、車両の環境からのデータを走査して記録するレーザ、ソーナ、レーダ、カメラ、および他のデバイスを含み得る。これらのデバイスのうちの1つまたは複数からのセンサデータは、物体およびその個々の特性(位置、形状、向き、速度など)を検出するのに使用され得る。これらの特性は、物体が将来の短時間の間にどんな振る舞いをしそうであるかを予測するのに使用され、この予測は、これらの物体を避けるために車両を制御するのに使用され得る。したがって、検出、識別、および予測は、自律走行車の安全な動作にとって重要な機能である。
【0004】
[0004] これらの車両は、センサを使用する以外に、車両の環境の非常に詳細なマップに依存し得る。これらのマップは、ナビゲーション(例えば、2つの位置間にたどり着く方法を決定する)および位置特定(車両が世界中のどこにいるのかを決定する)の両方にとって重要である。
【発明の概要】
【0005】
[0005] 本開示の態様は、車両を操縦する方法を提供する。該方法は、1つまたは複数のプロセッサによって、道路の形状および位置を画定する道路セグメントを含み、さらに車両が自律走行モードで走行することができない道路セグメントを画定する少なくとも1つの立ち入り禁止道路セグメントを識別するマップ情報を使用して、第1の位置から目的地までの走行ルートを作成するステップと、1つまたは複数のプロセッサによって、マップ情報から、複数の立ち入り禁止道路セグメントからルートに関連する立ち入り禁止道路セグメントのセットを識別するステップと、1つまたは複数のプロセッサによって、車両の現在位置の周囲の局所領域を決定するステップと、1つまたは複数のプロセッサによって、局所領域内の位置に対応するマップ情報の道路セグメントを含む局所マップ領域を識別するステップと、1つまたは複数のプロセッサによって、局所マップ領域の道路セグメントから複数の立ち入り禁止道路セグメントのセットをフィルタリングするステップと、1つまたは複数のプロセッサによって、局所マップ領域のフィルタリングされた道路セグメントの各々の道路セグメントにコスト値を割り当てるステップと、1つまたは複数のプロセッサによって、任意の割り当てられたコスト値を使用して将来の所定時間における車両操縦プランを決定するステップと、1つまたは複数のプロセッサによって、プランに従って車両を操縦するステップとを含む。
【0006】
[0006] 一実施例では、該方法はさらに、目的地を始点とするグラフウォークを使用して車両を目的地に到達させることができない少なくとも1つの追加の立ち入り禁止道路セグメントを識別するステップを含み、立ち入り禁止道路セグメントのセットは、少なくとも1つの立ち入り禁止道路セグメントおよび少なくとも1つの追加の道路セグメントを含む。別の実施例では、局所マップ領域は、マップ情報上でグラフカットを実行することによって識別される。別の実施例では、局所領域は、車両が将来の第2の所定時間内で車両の現在位置から到達し得るエリアに対応する。別の実施例では、局所領域は、周期的に決定され、立ち入り禁止道路セグメントのセットは、走行に対して一回だけ識別される。別の実施例では、コスト値は、局所マップ領域のフィルタリングされた道路セグメントの道路セグメントに対して、道路セグメントに対応する建設エリアに基づいて割り当てられる。別の実施例では、コスト値は、局所マップ領域のフィルタリングされた道路セグメントの道路セグメントに対して、道路セグメントに対応する非優先左折に基づいて割り当てられる。別の実施例では、コスト値は、局所マップ領域のフィルタリングされた道路セグメントの道路セグメントに対して、道路セグメントから目的地に到達するまでの時間に基づいて割り当てられる。別の実施例では、該方法はさらに、少なくとも1つの割り当てられたコスト値をローカルキャッシュに記憶するステップと、少なくとも部分的に局所領域と重なる第2の局所領域を決定するステップと、第2の局所領域内の位置に対応するマップ情報の道路セグメントを含む第2の局所マップ領域を識別するステップと、第2の局所マップ領域の道路セグメントから複数の立ち入り禁止道路セグメントのセットをフィルタリングするステップと、ローカルキャッシュから少なくとも1つの割り当てられたコスト値を取り込むことによって第2の局所マップ領域のフィルタリングされた道路セグメントの各々の道路セグメントにコスト値を割り当てるステップと、第2の局所マップ領域のフィルタリングされた道路セグメントの各々の道路セグメントに対する任意の割り当てられたコスト値を使用して、将来の第2の所定時間における第2の車両操縦プランを決定するステップと、第2のプランに従って車両を操縦するステップとを含む。別の実施例では、プランは、局所領域から案内し、最も低い累積コスト値を有する局所マップ領域のフィルタリングされた道路セグメントの接続された道路セグメントのセットを含む。別の実施例では、プランを決定するステップは、車両の車線変更をせざるを得ないかどうかを決定するステップを含む。別の実施例では、プランを決定するステップは、2車線の道路セグメント間で車両を移動させるために方向転換を行うべきかどうかを決定するステップを含む。別の実施例では、プランを決定するステップは、ルートの道路セグメントに対応する第1のパスが利用できない場合に第2のパスを識別するステップを含む。
【0007】
[0007] 本開示の別の態様は、車両を操縦するためのシステムを提供する。該システムは、道路の形状および位置を画定する道路セグメントを含み、さらに車両が自律走行モードで走行することができない道路セグメントを画定する複数の立ち入り禁止道路セグメントを識別するマップ情報を使用して、第1の位置から目的地までの走行ルートを作成し、複数の立ち入り禁止道路セグメントからルートに関連する立ち入り禁止道路セグメントのセットを識別し、車両の現在位置の周囲の局所領域を決定し、局所領域内の位置に対応するマップ情報の道路セグメントを含む局所マップ領域を識別し、局所マップ領域の道路セグメントから複数の立ち入り禁止道路セグメントのセットをフィルタリングし、局所マップ領域のフィルタリングされた道路セグメントの各々の道路セグメントにコスト値を割り当てて、任意の割り当てられたコスト値を使用して将来の所定時間における車両操縦プランを決定し、プランに従って車両を操縦するように構成された1つまたは複数のプロセッサを含む。
【0008】
[0008] 一実施例では、1つまたは複数のプロセッサはさらに、目的地を始点とするグラフウォークを使用して車両を目的地に到達させることができない少なくとも1つの追加の立ち入り禁止道路セグメントを識別するように構成され、立ち入り禁止道路セグメントのセットは、少なくとも1つの立ち入り禁止道路セグメントおよび少なくとも1つの追加の道路セグメントを含む。別の実施例では、局所領域は、周期的に決定され、立ち入り禁止道路セグメントのセットは、走行に対して一回だけ識別される。別の実施例では、コスト値は、局所マップ領域のフィルタリングされた道路セグメントの道路セグメントに対して、道路セグメントに対応する建設エリアに基づいて割り当てられる。別の実施例では、コスト値は、道路セグメントに対応する非優先左折に基づいて、局所マップ領域のフィルタリングされた道路セグメントの道路セグメントに割り当てられる。別の実施例では、コスト値は、局所マップ領域のフィルタリングされた道路セグメントの道路セグメントに対して、道路セグメントから目的地に到達するまでの時間に基づいて割り当てられる。
【0009】
[0009] 本開示のさらに別の態様は、命令が記憶される非一時的なコンピュータ可読媒体を提供する。命令は、1つまたは複数のプロセッサによって実行されたときに、1つまたは複数のプロセッサに、車両を操縦する方法を実行させる。該方法は、道路の形状および位置を画定する道路セグメントを含み、さらに車両が自律走行モードで走行することができない道路セグメントを画定する複数の立ち入り禁止道路セグメントを識別するマップ情報を使用して、第1の位置から目的地までの走行ルートを作成するステップと、複数の立ち入り禁止道路セグメントからルートに関連する立ち入り禁止道路セグメントのセットを識別するステップと、車両の現在位置の周囲の局所領域を決定するステップと、局所領域内の位置に対応するマップ情報の道路セグメントを含む局所マップ領域を識別するステップと、局所マップ領域の道路セグメントから複数の立ち入り禁止道路セグメントのセットをフィルタリングするステップと、局所マップ領域のフィルタリングされた道路セグメントの各々の道路セグメントにコスト値を割り当てるステップと、任意の割り当てられたコスト値を使用して将来の所定時間における車両操縦プランを決定するステップと、プランに従って車両を操縦するステップとを含む。
本発明によれば、
【図面の簡単な説明】
【0010】
図1】[0010]本開示の態様に従う車両の一例の機能図である。
図2A】[0011]本開示の態様に従うマップ情報を示す図である。
図2B】[0011]本開示の態様に従うマップ情報を示す図である。
図3A】[0012]本開示の態様に従う車両の外観図の例である。
図3B】[0012]本開示の態様に従う車両の外観図の例である。
図3C】[0012]本開示の態様に従う車両の外観図の例である。
図3D】[0012]本開示の態様に従う車両の外観図の例である。
図4】[0013]本開示の態様に従うシステムの絵図である。
図5】[0014]本開示の態様に従う図4のシステムの機能図である。
図6】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図7】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図8】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図9】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図10】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図11】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図12】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図13】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図14】[0015]本開示の態様に従う道路およびデータの一部を示す図である。
図15】[0016]本開示の態様に従うフロー図である。
【発明を実施するための形態】
【0011】
[0017] 本開示の技術は、自律走行車のためのルートのプランニングに関する。例えば、自律走行車は、目的地までのルートを作成する(すなわち、長期プランニング)およびルートに沿ったパスを作成する(すなわち、短期プランニング)のためのルート決定またはナビゲーションシステムを含むコンピューティングシステムによって制御され得る。ルート決定システムは、道路グラフを参照し、車両の現在位置を目的位置とつなぐ一連の道路セグメントもしくは車線セグメント(車線ID、始点、終点)を識別することによって、ルートを決定する。プランニングシステムは、その後、このルートを基準線として使用して、目的地に到達するために、どのような方向転換をして、どの車線を取るべきかを決定する。プランニングシステムがルートをたどらないパスを作成することができることにより、車両の現在の環境に対してより敏感に車両を制御することができる。
【0012】
[0018] ルートを作成するために、ルート決定システムは、マップ情報にアクセスする必要がある。マップ情報は、道路表面、車線区画線、縁石、横断歩道などのような道路特徴の形状および向きを示し得る。上述したように、道路は、識別子、始点、および終点によって識別される車線内のセグメントによって画定され得る。セグメントを接続することによって、2つの位置間のルートが作成され得る。(車両の速度制約のため、危険エリアであるため、セグメントが十分にマッピングされていないために、または他の理由により)車両が安全に走行することができない場所のような特定のエリアを避けるために、マップ情報は、車両が走行できないセグメントまたは「立ち入り禁止領域」を含み得る。
【0013】
[0019] ルートが識別されると、目的地に対する全ての関連する立ち入り禁止領域が識別され得る。目的地を始点とするスタート位置(典型的には、車両の現在位置)までの単純なグラフウォークが使用され得る。基本的には、これは、目的地が一定のままであることを前提とし、車両を目的地まで案内しない全てのセグメントを識別する。この時点で他の詳細な分析は必要でなく、したがって、この決定は1つの目的地に対して1回だけ行われ得る。
【0014】
[0020] 車両の現在位置を使用して、車両の周囲の局所領域が識別され得る。この局所領域は、車両の後方の小さな領域および車両の前方(走行方向)および周囲(車両の横方向)のエリアを含み得る。例えば、局所領域は、ある所定時間内で車両が到達する可能性がある全てのエリアに対応し得る。この局所領域は、周期的に識別され得る。
【0015】
[0021] 局所領域は、その後、単純なグラフカットを実行するのに使用され、すなわち、マップ領域をマップ情報の残りから分離するのに使用する周辺を画定し得る。あるいは、マップ情報のセグメントは、領域のエリア内で単純なグラフウォークを行うことによって識別され得る。任意の識別済み立ち入り禁止領域は、その後、フィルタリングされたマップ領域を取得するためにマップ領域から除去される。
【0016】
[0022] フィルタリングされたマップ領域内の全ての残りのセグメントに、その後、コスト値が割り当てられる。コストは、車両の環境に関する先験的知識に基づいて(例えば、マップ情報のデータから)割り当てられる。コスト値の多くの領域間にはかなりの重複部分があるので、この情報は迅速な取り込みのためにローカルキャッシュに記憶され得る。
【0017】
[0023] コスト値は、その後、車両を操縦する方法を決定するためにプランニングシステムに提供され得る。例えば、車両のコンピューティングデバイスは、局所領域から案内するセグメントの最低コストセットを決定し得る。その結果が、将来の短時間の間に車両を制御する方法をプランニングするのに使用され得る。
【0018】
[0024] プランニングシステムは、1秒につき複数回新しいプランを決定するので、コスト値の多くは、ローカルキャッシュから簡単に取り込まれ得る。車両が局所領域内で移動したときに変化する可能性があるコスト値(例えば、目的地までの時間に関連するコスト値など)は、必要に応じて再計算され得る。さらに、コスト値の全てまたはそれ未満のコスト値は、新しい局所領域が計算されたときに再計算され得る。
【0019】
[0025] 上述したようにコスト値を使用することによって、車両のコンピューティングデバイスは、ゆっくり進んでいるまたは停止している物体の側を通り抜けるまたは通過するかどうかに関して情報に基づいたより良い決定を行うことができる。したがって、本明細書に記載されている特徴により、車両のコンピューティングデバイスは、車両をリアルタイムで制御する方法に関して情報により十分に基づいたより良い決定を行うことができる。例えば、ルート決定システムは、2車線のセグメント間で移動するために多地点で方向転換する必要がある場合、または第1のパスが利用出来ない場合に第2のパスを使用する必要がある場合、車線変更を行うべきかどうかを決定することができる。このことは、周辺の環境条件に対する車両の利用可能な応答性を大きく改善し向上させ、その結果、プランニングシステムは目的地までの最良のパスを迅速かつ効率的に見つけることができる。さらに、このようにコスト値計算を制限し、1つの目的地に対して1回だけ全ての関連する立ち入り禁止領域を識別することによって、上述したルート決定システムおよびプランニングシステムの効率を劇的に向上させる。
システム例
【0020】
[0026] 図1に示されているように、本開示の一態様の車両100は、さまざまなコンポーネントを含む。本開示の特定の態様は、車両の特定のタイプに関して特に有用であるが、車両は、これらに限定されないが、自動車、トラック、オートバイ、バス、RV車などを含む車両いずれかのタイプであり得る。車両は、1つまたは複数のプロセッサ120、メモリ130、および典型的に汎用コンピューティングデバイスに存在する他のコンポーネントを含むコンピューティングデバイス110のような1つまたは複数のコンピューティングデバイスを有し得る。
【0021】
[0027] メモリ130は、1つまたは複数のプロセッサ120によって実行され得る、またはそれ以外の形で使用され得る命令132およびデータ134を含む、1つまたは複数のプロセッサ120によってアクセス可能な情報を記憶する。メモリ130は、コンピューティングデバイス可読媒体、または電子デバイスを用いて読み取られ得るデータを記憶する他の媒体を含む、プロセッサによってアクセス可能な情報を記憶することができる任意のタイプのメモリ、例えば、ハードドライブ、メモリカード、ROM、RAM、DVDもしくは他の光学ディスク、および他の書き込み可能かつ読み込み可能なメモリであり得る。システムおよび方法は、上述の様々な組み合わせを含み得るので、命令およびデータの様々な部分が様々なタイプの媒体上に記憶される。
【0022】
[0028] 命令132は、プロセッサによって直接実行される命令セット(例えば、機械コード)または間接的に実行される命令セット(例えば、スクリプト)の任意の命令セットであり得る。例えば、命令は、コンピューティングデバイス可読媒体上にコンピューティング・デバイス・コードとして記憶され得る。この点に関して、用語「命令」および「プログラム」は、本明細書において区別なく使用され得る。命令は、プロセッサによって直接処理するためにオブジェクトコード形式で記憶され得るか、スクリプトまたは要求に応じて解釈されるもしくは予めコンパイルされた独立したソース・コード・モジュールの集合を含む任意の他のコンピューティングデバイス言語で記憶され得る。命令の機能、方法、およびルーチンについて、以下でさらに詳細に説明する。
【0023】
[0029] データ134は、命令132に従って、プロセッサ120よって取り込まれ、記憶され、または修正され得る。例えば、請求される主題は任意の特定のデータ構造によって制限されないが、データは、コンピューティング・デバイス・レジスタ内に、複数の異なるフィールドおよびレコードを有するテーブル、XML文書またはフラットファイルとして関係データベースで記憶され得る。データはさらに、任意のコンピューティングデバイス可読フォーマットでフォーマットされ得る。
【0024】
[0030] 1つまたは複数のプロセッサ120は、市販のCPUのような任意の従来のプロセッサであり得る。あるいは、1つまたは複数のプロセッサは、ASICもしくは他のハードウェアベースのプロセッサのような専用のデバイスであり得る。図1は、プロセッサ、メモリ、および同一ブロック内にあるようなコンピューティングデバイス110の他の要素の機能図であるが、プロセッサ、コンピューティングデバイス、またはメモリは、実際に、複数のプロセッサ、コンピューティングデバイス、または同一の物理的筐体内に記憶される、もしくは記憶され得ないメモリを含み得ることは当業者によって理解されるであろう。例えば、メモリは、コンピューティングデバイス110とは異なる筐体内に配置されたハードドライブまたは他のストレージ媒体であり得る。したがって、プロセッサまたはコンピューティングデバイスへの言及は、同時に動作し得る、または同時に動作し得ないプロセッサまたはコンピューティングデバイスまたはメモリの集合への言及を含むことが理解されるであろう。
【0025】
[0031] コンピューティングデバイス110は、上述のプロセッサおよびメモリ、さらにユーザ入力装置150(例えば、マウス、キーボード、タッチスクリーンおよび/またはマイク)および様々な電子ディスプレイ(例えば、スクリーンを有するモニタまたは情報を表示するように動作可能な電気デバイス)のように、通常はコンピューティングデバイスと共に使用されるコンポーネントの全てを含み得る。この実施例では、車両は、情報または視聴覚体験を提供するために車内電子ディスプレイ152および1つまたは複数のスピーカ154を含む。この点に関して、車内電子ディスプレイ152は、車両100の車室内に配置され得、車両100内の乗客に情報を提供するためにコンピューティングデバイス110によって使用され得る。
【0026】
[0032] コンピューティングデバイス110はさらに、以下で詳細に説明するクライアント・コンピューティング・デバイスおよびサーバ・コンピューティング・デバイスのような他のコンピューティングデバイスとの通信を容易にするために1つまたは複数の無線ネットワーク接続156を含み得る。無線ネットワーク接続は、Bluetooth、Bluetooth low energy(LE)、セルラー接続、および様々な構成のような近距離通信プロトコル、およびInternet、World Wide Web、イントラネット、仮想プライベートネットワーク、広域ネットワーク、ローカルネットワーク、1つまたは複数の会社専用の通信プロトコルを使用するプライベートネットワーク、Ethernet、WiFiおよびHTTPを含むプロトコル、およびこれらの様々な組み合わせを含み得る。
【0027】
[0033] 一実施例では、コンピューティングデバイス110は、車両100に組み込まれた自律駆動コンピューティングシステムであり得る。自律駆動コンピューティングシステムは、車両の様々なコンポーネントと通信可能であり得る。例えば、図1に戻ると、コンピューティングデバイス110は、メモリ130の命令132に従って車両100の移動、速度などを制御するために、減速システム160、加速システム162、操舵システム164、シグナリングシステム166、ルート決定システム168、測位システム170、知覚システム172のような車両100の様々なシステムと通信状態であり得る。さらに、これらのシステムはコンピューティングデバイス110の外部のシステムとして図示されているが、車両100を制御するための自律駆動コンピューティングシステムのように、コンピューティングデバイス110に組み込まれてもよい。
【0028】
[0034] 一実施例として、コンピューティングデバイス110は、車両の速度を制御するために、減速システム160および加速システム162と相互作用し得る。同様に、操舵システム164は、車両100の方向を制御するために、コンピューティングデバイス110によって使用され得る。例えば、車両100が自動車またはトラックのように路上で使用するように構成されている場合、操舵システムは、車両の方向を変えるために車輪の角度を制御するためのコンポーネントを含み得る。シグナリングシステム166は、例えば、必要に応じて方向指示器またはブレーキライトを点灯させることによって、車両の意図を他の運転手または車両に知らせるために、コンピューティングデバイス110によって使用され得る。
【0029】
[0035] ルート決定システム168は、ある位置までのルートを決定して、そのルートをたどるために、コンピューティングデバイス110によって使用され得る。この点に関して、ルート決定システム168および/またはデータ134は、詳細なマップ情報(例えば、道路の形状および高度、車線境界線、交差点、横断歩道、制限速度、信号機、建物、標識、リアルタイムの交通情報、植生、または他のこのような物体ならびに情報を識別する非常に詳細なマップ)を記憶し得る。すなわち、この詳細なマップ情報は、道路およびこれらの道路の速度制限(法定最高速度)を含む車両の想定される環境の形状を画定し得る。さらに、このマップ情報は、所与の位置においてどの通行方向が優先通行権を有するかを決定するために知覚システム172から受信されたリアルタイムの情報と共にコンピューティングデバイス110によって使用され得る、信号機、停止標識、譲れの標識などのような交通規制に関する情報を含み得る。
【0030】
[0036] 図2Aおよび図2Bは、交差点220、222、224を含む道路の一部のマップ情報の一例である。図2Aは、車線マークもしくは車線境界線210、212、214、信号機230、232、234(明確化かつ簡略化するために他の図には図示せず)、停止標識240(明確化かつ簡略化するために他の図には図示せず)および停止線250、252、254の形状、位置、および他の特性を識別する情報を含むマップ情報の一部を示す。これらの特徴に加えて、マップ情報はさらに、車線境界線によって画定される車線ならびに各々の車線の通行方向を識別する情報およびコンピューティングデバイス110に車両が特定の操縦を完了させる(すなわち、車線もしくは交差点を曲がるもしくは渡る)ために優先通行権を有するかどうかを決定させる情報を含み得る。
【0031】
[0037] 特徴情報に加えて、マップ情報は、一連の道路セグメントもしくは車線セグメントを含み得る。各々の車線セグメントは、始点、終点、および識別子によって画定される。例えば、図2Bは、例えば、車線セグメント270、272、274を含む複数の車線セグメントを加えた図2Aの情報の大部分を示している。当然ながら、多くの車線セグメントが示されているが、明確化かつ簡略化するために、数本の車線セグメントのみを取り上げる。図2Bは、これらの始点および終点を白丸260、262、264、266のような白丸で示している。当然ながら、各々が始点および終点を表す多くの白丸が示されているが、明確化かつ簡略化するために、数個の白丸のみを取り上げる。図示されているように、白丸260は車線セグメント270の始点を表しており、白丸262は車線セグメント270の終点を表している。同様に、白丸262は車線セグメント272の始点を表しており、白丸264は車線セグメント272の終点を表している。さらに、白丸264は車線セグメント274の始点を表しており、白丸266は車線セグメント274の終点を表している。図示されていないが、これらの車線セグメントの各々は、識別子(例えば、車線セグメントの相対位置もしくは実際の位置に対応する数値)に関連付けられ得る。
【0032】
[0038] マップ情報はさらに、セグメントに関する追加の情報を識別し得る。例えば、図2Bに示されているように、車線セグメント270、272は実線で示されており、車両が自律走行するために車線セグメント270、272が利用可能であることを示している。同時に、車線274は、車線セグメントが車両通行不可能な立ち入り禁止領域に対応することを示すために、破線で示されている。これは、例えば、既知の構造のエリア、過密エリア、高速道路の進入ランプへと案内する車線(例えば、車両が高速道路上またはそのような高速で走行することができない場所)、十分にマッピングされていない(すなわち、マップ情報に十分に記載されていない)エリアへと案内する車線、または他の理由によるエリアなどを含み得る。当然ながら、(車両が自律走行するのに利用可能な)多くの実線車線セグメントおよび破線車線セグメント(立ち入り禁止領域)が示されているが、明確化かつ簡略化するために、数本の車線セグメントのみを取り上げる。
【0033】
[0039] マップ情報は、本明細書では、画像ベースのマップとして示されているが、マップ情報は完全に画像ベース(例えば、ラスター)である必要はない。例えば、マップ情報は、1つまたは複数の道路グラフまたは情報(例えば、道路、車線、交差点、およびこれらの特徴間の接続)のグラフネットワークを含み得る。各々の特徴は、グラフデータとして記憶され、地理的位置のような情報に関連付けられ得、各々の特徴が他の関連特徴(例えば、一時停止標識)と関係しているがどうかは、道路および交差点などに関係し得る。いくつかの実施例では、関連データは、特定の道路グラフの特徴の効率的な参照を可能にするために、道路グラフのグリッドベースの指標を含み得る。
【0034】
[0040] 測位システム170は、マップ上もしくは地球上の車両の相対的もしくは絶対的な位置を決定するために、コンピューティングデバイス110によって使用され得る。例えば、測位システム170は、デバイスの緯度、経度、および/または海抜位置を決定するために、GPS受信機を含み得る。レーザベースの位置決めシステム、慣性援用GPS、またはカメラベースの位置決めシステムのような他の位置測定システムも車両の位置を特定するのに使用され得る。車両の位置は、緯度、経度、および海抜のような絶対的地理位置、さらにすぐ周囲の他の自動車に対する位置のような相対的位置情報を含み得、相対的位置情報は、絶対的地理位置よりも少ないノイズで決定され得ることが多い。
【0035】
[0041] 測位システム170はさらに、加速度計、ジャイロスコープまたは車両の方向および速度またはその変化を決定するための別の方向/速度検出デバイスのようなコンピューティングデバイス110と通信する他のデバイスを含み得る。単なる一例として、加速装置は、重力の向きまたは加速装置に垂直な平面に対するピッチ、ヨー、ロール(またはその変化)を決定し得る。該装置はさらに、速度上昇または低下およびそのような変化の向きを追跡し得る。本明細書で述べた該装置の位置および向きのデータの提供は、コンピューティングデバイス110、他のコンピューティングデバイスおよびこれらの組み合わせに対して自動的に行われ得る。
【0036】
[0042] 知覚システム172はさらに、車両、道路の障害物、信号機、標識、樹木などのような車両の外側の物体を検出するための1つまたは複数のコンポーネントを含み得る。例えば、知覚システム172は、コンピューティングデバイス110によって処理され得るレーザ、ソーナ、レーダ、カメラおよび/または他の検出デバイスを含み得る。車両が自動車のような小型の乗用車である場合、自動車は、屋根または他の都合の良い場所に取りつけられたレーザまたは他のセンサを含み得る。例えば、車両の知覚システムは、物体およびその特性(例えば、位置、向き、サイズ、形状、種類、移動の方向および速度など)を検出するために、LIDAR、ソーナ、レーダ、カメラなどのような様々なセンサを使用し得る。センサからの生データおよび/または上記の特性は、コンピューティングデバイス110によって処理するために、記述関数またはベクトルに定量化され得る、またはまとめられ得る。以下でさらに詳細に説明するように、コンピューティングデバイス110は、車両の位置を決定するために測位システム170を使用し、その位置に安全に到達するのに必要な場合に物体を検出して物体に反応するために知覚システム172を使用し得る。
【0037】
[0043] 図3A図3Dは、車両100の外観図の例である。図示されているように、車両100は、ヘッドライト302、フロントガラス303、テールランプ/方向指示器304、リヤウィンドウ305、ドア306、サイドミラー308、タイヤ・ホイール310、方向指示器/駐車灯312のような典型的な車両の多くの特徴を含む。ヘッドライト302、テールランプ/方向指示器304、および方向指示器/駐車灯312は、シグナリングシステム166に関連付けられ得る。さらに、ライトバー307もシグナリングシステム166に関連付けられ得る。
【0038】
[0044] 車両100はさらに、知覚システム172のセンサを含む。例えば、ハウジング314は、360度またはそれより狭い視野を有するための1つまたは複数のレーザ素子、および1つまたは複数のカメラ装置を含み得る。ハウジング316、318は、例えば、1つまたは複数のレーダおよび/またはソーナ装置を含み得る。さらに、知覚システム172の装置は、テールランプ/方向指示器304および/またはサイドミラー308のような典型的な車両コンポーネントに組み込まれ得る。これらのレーダ装置、カメラ装置、およびレーザ装置は、知覚システム172の一部としてこれらの装置からのデータを処理し、コンピューティングデバイス110にセンサデータを提供する処理コンポーネントに関連付けられ得る。
【0039】
[0045] データ134は、所定時間(例えば、10秒またはそれより長い、もしくはそれより短い時間)の物体の将来の挙動を予測するために様々な挙動ー時間モデルを記憶し得る。一実施例では、挙動ー時間モデルは、知覚システム172から受信された物体のデータ、および特に別の道路使用者のデータ(以下でさらに詳細に説明する道路使用者の特性および追加の文脈情報を含む)を使用するように構成され得る。一実施例として、位置、向き、速度、および他の特性が知覚システム172からのデータに含まれる場合には、挙動ー時間モデルは、所定時間の間に物体がどのような挙動を取り得るかの1つまたは複数の予測のセット、および各々の予測に対応する尤度値を提供し得る。予測は、例えば、所定時間に対応する将来の様々な時点で物体が存在すると予想される場所である将来位置のセットを定義する軌跡を含み得る。尤度値は、どの予測が(互いに対して)発生する可能性が高いかを示し得る。この点に関して、最大尤度値を有する予測は、発生する可能性が最も高く、低い尤度値を有する予測は、発生する可能性が低くなり得る。
【0040】
[0046] したがって、挙動-時間モデルは、特定の道路使用者が特定の範囲または所定時間(例えば、10秒)でどのような振る舞いをするかについて起こり得る仮説のセット、および各々の仮説に対する相対的な尤度を生成するように構成され得る。これらのモデルは、その位置で観察された物体が過去にどのような挙動を取ったかに関するデータ、直感などを使用してトレーニングされ得、さらに特定の種類の物体(例えば、車両、歩行者、オートバイ、自転車運転者など)に対して特別に指定され得る。コンピューティングデバイス110は、その後、車両の軌跡と相互作用し、考慮に値する十分な可能性のある仮説について推論し得る。
【0041】
[0047] コンピューティングデバイス110は、様々なコンポーネントを制御することによって車両の方向および速度を制御し得る。例として、コンピューティングデバイス110は、詳細なマップ情報、知覚システム172,およびルート決定システム168からのデータを使用して、完全に自律的に車両を目的位置までナビゲートし得る。車両を操作するために、コンピューティングデバイス110は、車両に、(例えば、加速システム162によってエンジンに供給される燃料または他のエネルギーを増加させることによって)加速させ、(例えば、減速システム160によって、エンジンに供給される燃料を減少させることによって、ギアチェンジすることによって、および/またはブレーキをかけることによって)減速させ、(例えば、操舵システム164によって車両100の前輪または後輪の方向を変えることによって)方向転換させ、(例えば、シグナリングシステム166の方向指示器を点灯させることによって)この方向転換を伝えさせ得る。したがって、加速システム162および減速システム160は、車両のエンジンと車両の車輪との間の様々なコンポーネントを含むドライブトレインの一部であり得る。また、これらのシステムを制御することによって、コンピューティングデバイス110はさらに、車両を自律的に操縦するために、車両のドライブトレインを制御し得る。
【0042】
[0048] 車両100の1つまたは複数のコンピューティングデバイス110はさらに、他のコンピューティングデバイスから情報を受信し、他のコンピューティングデバイスに情報を送信し得る。図4および図5はそれぞれ、ネットワーク460を介して接続された複数のコンピューティングデバイス410、420、430、440およびストレージシステム450を含むシステム例400の絵図および機能図である。システム400はさらに、車両100および車両100と同様に構成され得る車両100Aを含む。簡略化するために数台の車両およびコンピューティングデバイスしか示されていないが、典型的なシステムは、それよりもはるかに多い車両およびコンピューティングデバイスを含み得る。
【0043】
[0049] 図4に示されているように、コンピューティングデバイス410、420、430、440の各々は、1つまたは複数のプロセッサ、メモリ、データ、および命令を含み得る。このようなプロセッサ、メモリ、データ、および命令は、コンピューティングデバイス110の1つまたは複数のプロセッサ120、メモリ130、データ134、および命令132と同様に構成され得る。
【0044】
[0050] ネットワーク460および介在ノードは、Bluetooth、Bluetooth LEのような近距離通信プロトコル、Internet、World Wide Web、イントラネット、仮想プライベートネットワーク、広域ネットワーク、ローカルネットワーク、1つまたは複数の会社専用の通信プロトコルを使用するプライベートネットワーク、Ethernet、WiFiならびにHTTPおよびこれらの様々な組み合わせを含む様々な構成およびプロトコルを含み得る。このような通信は、モデムおよび無線インターフェースのように、他のコンピューティングデバイスに対してデータを送信することができる任意のデバイスによって促進され得る。
【0045】
[0051] 一実施例では、1つまたは複数のコンピューティングデバイス410は、他のコンピューティングデバイスからデータを受信し、他のコンピューティングデバイスからのデータを処理し、他のコンピューティングデバイスにデータを送信するために、ネットワークの異なるノードと情報を交換する複数のコンピューティングデバイスを有するサーバ(例えば、負荷分散サーバファーム)を含み得る。例えば、1つまたは複数のコンピューティングデバイス410は、ネットワーク460を介して、車両100の1つまたは複数のコンピューティングデバイス110または車両100Aの同様のコンピューティングデバイス、さらにクライアント・コンピューティング・デバイス420、430、440と通信することができる1つまたは複数のサーバ・コンピューティング・デバイスを含み得る。例えば、車両100、100Aは、サーバ・コンピューティング・デバイスによって、様々な位置へ配車され得る車両群の一部であり得る。この点に関して、車両群の車両は、サーバ・コンピューティング・デバイスに、車両の個々の測位システムによって提供された位置情報を周期的に送信し得、1つまたは複数のサーバ・コンピューティング・デバイスは、車両の位置を追跡し得る。
【0046】
[0052] さらに、サーバ・コンピューティング・デバイス410は、ネットワーク460を使用して、ユーザ422、432、442のようなユーザに情報を送信して、コンピューティングデバイス420、430、440のディスプレイ424、434、444のようなディスプレイ上に提示し得る。この点に関して、コンピューティングデバイス420、430、440は、クライアント・コンピューティング・デバイスと見なされ得る。
【0047】
[0053] 図5に示されているように、各々のクライアント・コンピューティング・デバイス420、430、440は、ユーザ422、432、442によって使用されることを目的としたパーソナル・コンピューティング・デバイスであり得、1つまたは複数のプロセッサ(例えば、中央処理ユニット(CPU)、データならびに命令を記憶するメモリ(例えば、RAMならびに内蔵ハードドライブ)、ディスプレイ424、434、444のようなディスプレイ(例えば、スクリーンを有するモニタ、タッチスクリーン、プロジェクタ、テレビ、または情報を表示するために動作可能な他のデバイス)、およびユーザ入力装置(例えば、マウス、キーボード、タッチスクリーンもしくはマイク)を含む、通常はパーソナル・コンピューティング・デバイスと共に使用されるコンポーネントの全てを有し得る。クライアント・コンピューティング・デバイスはさらに、ビデオストリームを記録するためのカメラ、スピーカ、ネットワーク・インターフェース・デバイス、およびこれらの要素を互いに接続するのに使用されるコンポーネントの全てを含み得る。
【0048】
[0054] クライアント・コンピューティング・デバイス420、430、440はそれぞれ、フルサイズのパーソナル・コンピューティング・デバイスを備え得るが、代替形態として、Internetのようなネットワークを介して、サーバと無線でデータを交換することができるモバイル・コンピューティング・デバイスを備え得る。単なる例として、クライアント・コンピューティング・デバイス420は、携帯電話、またはInternetもしくは他のネットワークを介して情報を取得することができる無線機器対応PDA、タブレットPC、ウェアラブル・コンピューティング・デバイスもしくはシステム、ラップトップ、またはネットブックのようなデバイスであり得る。別の実施例では、クライアント・コンピューティング・デバイス430は、図4に示されているような「スマートウオッチ」のようなウェアラブル・コンピューティング・デバイスであり得る。一実施例として、ユーザは、キーボード、キーパッド、マルチファクション入力ボタン、マイク、カメラまたは他のセンサによる可視信号(例えば、手または他のジェスチャ)、タッチスクリーンなどを使用して情報を入力し得る。
【0049】
[0055] いくつかの実施例では、クライアント・コンピューティング・デバイス440は、ユーザ422、432のようなユーザにコンシェルジュサービスを提供するために管理者によって使用されるコンシェルジュ・ワーク・ステーションであり得る。例えば、ユーザ442は、コンシェルジュ・ワーク・ステーション440を使用して、以下でさらに詳細に説明するように、車両100もしくは車両100Aの安全な動作およびユーザの安全性を保証するために、ユーザの個々のクライアント・コンピューティング・デバイスまたは車両100もしくは車両100Aによるユーザとの通話またはオーディオ接続を介して通信し得る。図4および図5には1つのコンシェルジュ・ワーク・ステーション440のみしか示されていないが、典型的なシステムには、任意の数のこのようなワークステーションが含まれ得る。
【0050】
[0056] ストレージシステム450は、様々なタイプの情報を記憶し得る。この情報は、本明細書に記載されている特徴のいくつかまたは全てを実行するために、1つまたは複数のサーバ・コンピューティング・デバイス410のようなサーバ・コンピューティング・デバイスによって検索され、またはそれ以外の方法でアクセスされ得る。例えば、情報は、1つまたは複数のサーバ・コンピューティング・デバイスに対するユーザを識別するために使用され得る認証情報(例えば、単一要素認証の場合のユーザ名およびパスワード、およびランダムな識別子、生体認証などのような多要素認証で一般に使用される他のタイプの認証情報)のようなユーザアカウント情報を含み得る。ユーザアカウント情報はさらに、ユーザの氏名、連絡先情報、ユーザのクライアント・コンピューティング・デバイス(または複数のデバイスが同一のユーザアカウントで使用される場合には、複数のデバイス)の識別情報、およびユーザ用の1つまたは複数の固有信号のような個人情報を含み得る。
【0051】
[0057] メモリ130と同様に、ストレージシステム450は、ハードドライブ、メモリカード、ROM、RAM、DVD、CD-ROM、書き込み可能メモリ、読み取り専用メモリのようなサーバ・コンピューティング・デバイス410によってアクセス可能な情報を記憶することができる任意のタイプのコンピュータ化ストレージであり得る。さらに、ストレージシステム450は、物理的に同一または異なる地理的位置に配置され得る複数の異なるストレージデバイス上にデータが記憶される分散ストレージシステムを含み得る。ストレージシステム450は、図4に示されているようにネットワーク460を介してコンピューティングデバイスに接続され得、および/またはコンピューティングデバイス110、410、420、430、440などのいずれかに直接接続され得る、もしくは組み込まれ得る。
方法例
【0052】
[0058] 図面に示されている上述の動作に加えて、様々な動作について説明する。以下の動作は以下で説明する正確な順序で実行される必要はないことを理解されたい。むしろ、様々なステップが、異なる順序で、もしくは同時に処理され得、さらにステップが追加され得る、または省略され得る。
【0053】
[0059] 一態様では、ユーザは、クライアント・コンピューティング・デバイスに、車両を要求するためのアプリケーションをダウンロードし得る。例えば、ユーザ422、432は、ウェブサイトから直接、またはアプリケーションストアから電子メール内のリンクを介して、クライアント・コンピューティング・デバイス420、430にアプリケーションをダウンロードし得る。例えば、クライアント・コンピューティング・デバイスは、ネットワーク経由で、例えば、1つまたは複数のコンピューティングデバイス410に、アプリケーションの要求を送信し、それに対して、アプリケーションを受信し得る。アプリケーションは、クライアント・コンピューティング・デバイスでローカルにインストールされ得る。
【0054】
[0060] ユーザは、その後、自身のクライアント・コンピューティング・デバイスを使用して、アプリケーションにアクセスし、車両を要求し得る。一実施例として、ユーザ432のようなユーザは、クライアント・コンピューティング・デバイス430を使用して、車両に対する1つまたは複数のサーバ・コンピューティング・デバイス410に要求を送信し得る。要求は、ピックアップ位置もしくはエリアおよび/または目的位置もしくはエリアを識別する情報を含み得る。これに対して、1つまたは複数のサーバ・コンピューティング・デバイス410は、例えば、予約状況および位置に基づいて、車両を識別し、ピックアップ位置まで車両を配車し得る。この配車は、車両をユーザ(および/またはユーザのクライアント・コンピューティング・デバイス)、ピックアップ位置、および目的位置もしくはエリアに割り当てるために、ユーザ(および/またはユーザのクライアントデバイス)を識別する車両に情報を送信することを伴い得る。
【0055】
[0061] 車両100が車両の配車の情報を受信すると、車両の1つまたは複数のコンピューティングデバイス110は、上述の様々な特徴を使用して車両をピックアップ位置まで操縦し得る。ユーザ(ここでは乗客)が安全に車両内に乗車すると、コンピューティングデバイス110は、車両を目的位置までルートに沿って自律的に制御するために、必要なシステムを始動させ得る。例えば、ナビゲーションシステム168は、データ134のマップ情報を使用してマップ情報の車線セグメントのセットに沿った目的位置までのパスまたはルートを決定し得る。コンピューティングデバイス110は、その後、上述したように、目的地に向けてルートに沿って車両を自律的に(または自律走行モードで)操縦し得る。
【0056】
[0062] 図6は、図2Aおよび図2Bのマップ情報内に画定された道路の一部に対応する道路の一部の例の図である。例えば、図6は、交差点220、222、224に対応する交差点620、622、624を示す。さらに、車線境界線610、612、614の形状、位置、および他の特性は、車線境界線210、212、214の形状、位置、および他の特性に対応する。同様に、信号機630、632、634(明確化かつ簡略化するために他の図には図示せず)は交通信号230、232、234に対応し、停止標識640(明確化かつ簡略化するために他の図には図示せず)は停止標識240に対応し、停止線650、652、654は停止線250、252、254に対応する。
【0057】
[0063] ルート決定システム168は、セグメントを接続することによって、2つの位置間のルートを作成し得る。例えば、図6は、スタート位置(すなわち、車両100のスタート位置)を表すマーカ670と目的位置を表すマーカ672との間のルート660を示している。図示されているように、ルート660は、スタート位置と目的位置との間でつながれた図2Bのマップ情報の複数の車線セグメントを含む。当然ながら、このようなルートは、マップ情報内で立ち入り禁止領域として識別された車線セグメントを含まない。
【0058】
[0064] ルートが識別されると、目的位置に対して全ての関連する立ち入り禁止領域が識別され得る。目的地を始点とするスタート位置までの単純なグラフウォークが使用され得る。基本的には、これは、目的地が一定のままであることを前提とし、車両を目的地まで案内しない全てのセグメントを識別する。例えば、マーカ672で表された目的地が一定のままであることを前提として、図7は、車線セグメント274を含む、ルート660が通過する領域内にある図2Bのマップ情報からの立ち入り禁止領域の全て(破線で示された車線セグメント)を示している。さらに、図7は、車線セグメント710、720、730(破線で示されている)に対応する追加の立ち入り禁止を示しているが、これは、詳細なマップ情報には立ち入り禁止として含まれないが、マーカ671の目的位置まで車両を案内しない車線セグメントに対応する。この時点で他の詳細な分析は必要でなく、したがって、この決定は1つの目的地に対して1回だけ行われ得る。
【0059】
[0065] 車両の現在位置を使用して、局所領域が識別され得る。この局所領域は、車両の後方の小さな領域および車両の前方(走行方向)および周囲(車両の横方向)のエリアを含み得る。例えば、局所領域は、ある所定時間内で、例えば、この先のおよそ45秒間、および車両が位置していた時点の直近のおよそ10秒間で、車両が到達する可能性がある全てのエリアに対応し得る。図8は、図2Aおよび図2Bのマップ情報と共にマーカ670(図示せず)のスタート位置における車両100を示している。局所領域800は、車両100が所定時間内で到達し得る車線セグメントを含むエリアを表している。この局所領域は、周期的に、例えば、およそ2~3秒ごとに、識別され得る。
【0060】
[0066] 局所領域は、その後、単純なグラフカットを実行するのに使用され、すなわち、マップ領域をマップ情報の残りから分離するのに使用する周辺を画定する。例えば、局所領域800のグラフカットにより、図9に示されているようにマップ領域900が得られる。これは、マップ領域内の車線セグメントの全てを識別する。あるいは、マップ情報のセグメントは、領域のエリア内で単純なグラフウォークを行うことによって識別され得る。
【0061】
[0067] (マップ情報および目的位置に基づいて識別された任意の追加の立ち入り禁止領域からの)任意の識別済み立ち入り禁止領域は、その後、フィルタリングされたマップ領域を取得するためにマップ領域から除去される。例えば、マップ領域900から図7に示されている識別済み立ち入り禁止領域(破線で示された車線セグメント)をフィルタリングすることにより、図10のフィルタリングされたマップ領域1000が得られる。
【0062】
[0068] その後、フィルタリングされたマップ領域内の全ての残りの車線セグメントに、コスト値が割り当てられる。コストは、車両の環境の先験的知識に基づいて割り当てられ得る。例えば、車線セグメントでは車両100が新しい車線に合流する必要があるかどうか、車線セグメントでは別の車両が新しい車線に合流しなければならないかどうか、車線セグメントは交通量の多い商業エリア(すなわち、路上駐車、ある場所から移動またはバックする車両、歩行者の往来が多い)内の最右車線であるかどうか、車線が単数または複数のアクティブドライブウェイ(すなわち、他の車両が単数または複数のドライブウェイから出ようとしている)の最右車線であるかどうか、車線セグメントが狭い道路に対応するかどうか、車線セグメントが片側もしくは両側に常に多くの車両が駐車していることによって狭くなった道路に対応するかどうか、車線セグメントでは車両が特定のタイプの方向転換(すなわち、優先左折、全方向一旦停止の十字路における左折、交通整理のされていない左折、非優先左折など)をする必要があるかどうか、車線セグメントが特定の分類を有する道路(すなわち、無料高速道路、有料高速道路、幹線道路、大通り、郊外の道路、都市の道路、生活道路、駐車場など)に対応するかどうか、車線セグメントが建設エリアに対応するかどうか、車線セグメントから目的地に到達するまでの時間などに基づいて、コストが各々の車線セグメントに割り当てられ得る。コスト値の多くに対する領域間にかなりの重複部分があるので、この情報は迅速な取り込みのためにローカルキャッシュに記憶され得る。
【0063】
[0069] コスト値は、その後、車両を操縦する方法を決定するためにプランニングシステムに提供され得る。例えば、車両のコンピューティングデバイスは、局所領域から案内するセグメントの最低コストセットを決定し得る。目的地に到達するまでの時間に関して、コンピューティングデバイスは、車両の現在位置または将来位置から局所領域の端まで到達するためのコストを最小化することを試み得る。さらに、コンピューティングデバイスは、局所領域の端のさまざまな車線セグメントから目的地まで行くコストも考慮し、局所領域内のどのパスを使用すべきかを識別するときに、これを一要素として使用し得る。例えば、局所領域からの出口が2つ存在する、つまり、目的地から2分に位置にある出口と目的地から20分の位置にある出口とが存在する場合、コンピューティングデバイスに局所領域内のどのパスが他のパスより好ましいか(低いコストを有するか)を知らせるために、その18分差が使用され得る。その結果が、将来の短時間の間(例えば、この先のおよそ10秒間)に車両を制御する方法をプランニングするのに使用され得る。
【0064】
[0070] プランニングシステムは、1秒につき複数回新しいプランを決定するので、コスト値の多くは、車両のコンピューティングデバイス内のローカルキャッシュに簡単に記憶され、そこから簡単に取り込まれ得る。車両が局所領域内で移動したときに変化する可能性があるコスト値(例えば、目的地までの時間に関するコスト値など)は、必要に応じて再計算され得る。さらに、コスト値の全てまたはそれ未満のコスト値は、新しい局所領域が計算されたときに再計算され得る。
【0065】
[0071] 上述したようにコスト値を使用することによって、車両のコンピューティングデバイスは、ゆっくり進んでいるまたは停止している物体の側を通り抜けるまたは通過するかどうかに関して情報に基づいたより良い決定を行うことができる。図11図14は、このようなシナリオの例を示している。図11は、ゆっくり進んでいるまたは停車している車両の側を通り抜ける一例を示しており、この場合、そのまま直進を続けることは、曲がるよりも最適でないが、直進が選択されている。この実施例では、車両100は、交差点624に向かって進んでいる。車両1100は、同様に交差点624に接近しており、車両100と同じ車線内にある。上述したように、車両1100は、ゆっくり進んでいるまたは停車している車両であり得る。
【0066】
[0072] 図2Bの車線セグメントのサブセットは、黒実線、グレー実線、または破線で示されている。黒実線の車線セグメント(例えば、車線セグメント1120、1122、1124)は、低いコスト値を有する車線セグメントを表している。この点に関して、これらの黒実線の車線セグメントは、実際には、車両が目的地(図示せず)まで辿っているルートであって、車両が交差点624で右折することを含むルートに対応し得る。グレー実線の車線セグメント(例えば、車線セグメント1130、1132、1134)は、黒実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。破線の車線セグメント(例えば、車線セグメント1140、1142、1144)は、(図2Bに示されているような)立ち入り禁止領域に関連する車線セグメントまたは単にグレー実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。当然ながら、明確化かつ簡略化するために、図2Bの車線セグメントのサブセットのみが示されている。この実施例では、コンピューティングデバイスは、車両1100を回避して、実際に交差点624で右折せずに交差点624を通過するように車両100を制御することができる。当然ながら、コンピューティングデバイス110は、高いコスト値が付与された破線の車線セグメントを使用する可能性がある。
【0067】
[0073] 図12は、ゆっくり進んでいるまたは停車している車両の側を通り抜ける一例を示しており、この場合、そのまま直進を続けることは最適ではない。この実施例では、車両100は、交差点624に向かって進んでいる。車両1200は、同様に交差点624に接近しており、車両100と同じ車線内にある。上述したように、車両1200は、ゆっくり進んでいるまたは停車している車両であり得る。
【0068】
[0074] 図2Bの車線セグメントのサブセットは、黒実線、グレー実線、または破線で示されている。黒実線の車線セグメント(例えば、車線セグメント1220、1222、1224)は、低いコスト値を有する車線セグメントを表している。この点に関して、これらの黒実線の車線セグメントは、実際には、車両が目的地(図示せず)まで辿っているルートであって、車両が交差点620で右折することを含むルートに対応し得る。グレー実線の車線セグメント(例えば、車線セグメント1230、1232、1234)は、黒実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。破線の車線セグメント(例えば、車線セグメント1240、1242)は、(図2Bに示されているような)立ち入り禁止領域に関連する車線セグメントまたは単にグレー実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。当然ながら、明確化かつ簡略化するために、図2Bの車線セグメントのサブセットのみが示されている。この実施例では、コンピューティングデバイスは、車両1200を回避するが、交差点620を通過しないように車両100を制御することができる。ここでは、コンピューティングデバイスは、車線セグメント1240、1242は立ち入り禁止領域(あるいは、非常に高いコスト値)を表しているので、この車線セグメントを使用しない。したがって、車両100は、交差点620を右折せずにそのまま通過することができなくなる。
【0069】
[0075] 同様に、コンピューティングデバイス110は、特定の車線内で走行すべきかどうかに関して決定することができる。例えば、交通量が多い道路上では、右車線での走行を回避しようとする必要があり得るが、図13の実施例に見られるように、左車線を回避することも安全上の理由から重要であり得る。この実施例では、車両100は、交差点622に向かって進んでいる。図2Bの車線セグメントのサブセットは、黒実線、グレー実線、または破線で示されている。黒実線の車線セグメント(例えば、車線セグメント1320、1322、1324)は、低いコスト値を有する車線セグメントを表している。この点に関して、これらの黒実線の車線セグメントは、実際には、車両が目的地(図示せず)まで辿っているルートであって、車両が交差点622を通過することを含むルートに対応し得る。グレー実線の車線セグメント(例えば、車線セグメント1330、1332、1334)は、黒実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。破線の車線セグメント(例えば、車線セグメント1340、1342、1344)は、(図2Bに示されているような)立ち入り禁止領域に関連する車線セグメントまたは単にグレー実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。当然ながら、明確化かつ簡略化するために、図2Bの車線セグメントのサブセットのみが示されている。この実施例では、コンピューティングデバイスは、より低いコスト値であるという理由から車線セグメント1320、1322、1324(中央車線)を優先して、車線セグメント1320、1322、1324、1330、1332、1334(右車線または中央車線)のいずれかにおいて車両100を操縦するために車両100を制御することができる。ここでは、コンピューティングデバイスは、車線セグメント1340、1342、1344(左車線)は立ち入り禁止領域(あるいは、非常に高いコスト値)を表しているので、この車線セグメントを使用しない。したがって、車両100は、左車線で走行するができなくなるが、中央車線または右車線での走行は許可される。
【0070】
[0076] また、コスト値により、車両のコンピューティングデバイスは一方向(図12の実施例に示されている)または複数の方向への強制的な車線変更を識別することができる。例えば、図14は、強制的な車線変更を示しているが、2つの選択肢(右折または左折/Uターン)を含む。 この実施例では、車両100は、交差点622に向かって進んでいる。図2Bの車線セグメントのサブセットは、黒実線、グレー実線、または破線で示されている。黒実線の車線セグメント(例えば、車線セグメント1320、1322、1324)は、低いコスト値を有する車線セグメントを表している。この点に関して、これらの黒実線の車線セグメントは、実際には、車両が目的地(図示せず)まで辿っているルートであって、車両が交差点622を通過し、右折することを含むルートに対応し得る。グレー実線の車線セグメント(例えば、車線セグメント1330、1332、1334)は、黒実線の車線セグメントよりも高いコスト値を有する車線セグメントを表しており、この実施例では、車両が交差点622を通過して交差点622で左折またはUターンすることに対応する。破線の車線セグメント(例えば、車線セグメント1340、1342、1344)は、(図2Bに示されているような)立ち入り禁止領域に関連する車線セグメントまたは単にグレー実線の車線セグメントよりも高いコスト値を有する車線セグメントを表している。当然ながら、明確化かつ簡略化するために、図2Bの車線セグメントのサブセットのみが示されている。この実施例では、コンピューティングデバイスは、より低いコスト値であるという理由から車線セグメント1320、1322、1324(右車線)を優先して、車線セグメント1320、1322、1324、1330、1332、1334(右車線または中央車線)のいずれかにおいて車両100を操縦するために車両100を制御することができる。ここでは、コンピューティングデバイスは、車線セグメント1340、1342、1344(左車線)は立ち入り禁止領域(あるいは、非常に高いコスト値)を表しているので、この車線セグメントを使用しない。したがって、車線セグメント1340、1342、1344により、車両は右車線、中央車線または左車線で交差点を通過することができなくなる。さらに、車線セグメント1340、1342、1344は、コンピューティングデバイス110に、交差点622において(車線セグメント1322、1324に沿って)右折または(車線セグメント1432、1434に沿って)左折/Uターンのいずれかをするように車両100を制御させる。
【0071】
[0077] 図15は、車両100を自律走行モードで操縦するために車両100のコンピューティングデバイス110のような車両の1つまたは複数のコンピューティングデバイスによって実行され得るフロー図1500の一例である。この実施例では、ブロック1510において、マップ情報を使用して第1の位置から目的地までの走行ルートが作成される。マップ情報は、道路の形状および位置を画定する道路セグメントを含み、車両が自律走行モードで走行することができない道路セグメントを画定する複数の立ち入り禁止道路セグメントを識別する。ブロック1520において、複数の立ち入り禁止道路セグメントからルートに関連する立ち入り禁止道路セグメントのセットがマップ情報から識別される。ブロック1530において、車両の現在位置の周囲の局所領域が決定される。ブロック1540において、局所領域内の位置に対応するマップ情報の道路セグメントを含む局所マップ領域が決定される。ブロック1550において、複数の立ち入り禁止道路セグメントのセットが局所マップ領域の道路セグメントからフィルタリングされる。ブロック1560において、局所マップ領域のフィルタリングされた道路セグメントの各々の道路セグメントにコスト値が割り当てられる。ブロック1570において、任意の割り当てられたコスト値を使用して、将来の所定時間における車両操縦プランが決定される。ブロック1580において、車両がプランに従って操縦される。
【0072】
[0078] 特に明記しない限り、上述の代替の実施例は互いに排他的でなく、固有の利点を達成するために様々な組み合わせで実施され得る。上述した特徴の上記および他の変形形態および組み合わせは、請求項によって定義された主題から逸脱せずに利用され得、実施形態の上記説明は、請求項によって定義された主題を制限するものではなく、単なる例であると解釈すべきである。さらに、本明細書に記載されている実施例および「~のような」、「~を含む」などのような表現の節の提示は、請求項の主題を特定の実施例に制限するものであると解釈すべきでなく、むしろ、実施例は、多くの可能な実施形態のうちの単なる1つの実施形態を例示するものである。また、異なる図面内の同一の参照番号は、同一または同様の要素を特定し得る。
【産業上の利用可能性】
【0073】
[0079] 本明細書に記載されている技術は、例えば、自律走行車の動的ルート決定を含む広範囲の産業上の利用可能性を有する。
図1
図2A
図2B
図3A
図3B
図3C
図3D
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15