(57)【要約】  本開示の態様は、自律型車両のルーティングに関する。例えば、車両（１００）は、第１の車線内の場所を表す第１の複数のノードと、第１の車線とは異なる第２の車線内の場所を表す第２の複数のノードとを特定する地図情報（２００）を使用して、第１の車線の経路（６７０）に沿って操縦され得る。操縦中に、第１の複数のノードのうちの第１のノードを第２の複数のノードのうちの第２のノードに接続するコストを評価することにより、いつ車両が車線変更を行うべきかが判定され得る。第１の車線から第２の車線に車線変更を行うために評価が使用され得る。【選択図】図９
2021505459.tif 000002
【特許請求の範囲】
【請求項１】
自律型車両をルーティングする方法であって、
第１の車線内の位置を表す第１の複数のノードと、第１の車線とは異なる第２の車線内の位置を表す第２の複数のノードとを特定する地図情報を使用して、第１の車線の経路に沿って前記車両を操縦することと、
操縦中に、前記第１の複数のノードうちの第１のノードを第２の複数のノードのうちの第２のノードに接続するコストを評価することにより、前記経路をたどるためにいつ前記車両が車線変更を行うかを判定することと、
前記第１の車線から前記第２の車線に前記車線変更を行うために前記評価を使用することと、を含む、方法。
【請求項２】
コストを評価することが、コスト関数を適用することを含む、請求項１に記載の方法。
【請求項３】
前記コスト関数が、前記第１のノードによって表される前記位置および前記第２のノードによって表される前記位置からの前記変更の持続時間に基づく、請求項２に記載の方法。
【請求項４】
前記コスト関数は、現在の交通状況に基づく、請求項２に記載の方法。
【請求項５】
前記コスト関数は、前記変更が以前に見逃されたかどうかに基づく、請求項２に記載の方法。
【請求項６】
前記コスト関数は、前記車両が白い実線を横切るかどうかに基づく、請求項２に記載の方法。
【請求項７】
前記コスト関数は、前記車両が交差点で変更を行うかどうかに基づく、請求項２に記載の方法。
【請求項８】
前記コスト関数は、前記変更が発生する時刻に基づく、請求項２に記載の方法。
【請求項９】
前記車両が前記変更を行うことができないとき、第１のノードによって表される前記位置と第２のノードによって表される前記位置との間で車線を変更するためのコストを増加させることをさらに含む、請求項１に記載の方法。
【請求項１０】
前記第１および第２の複数のノードのノードのペアを反復処理して、どこで前記変更を行うかを判定することをさらに含む、請求項１に記載の方法。
【請求項１１】
自律型車両をルーティングするためのシステムであって、
第１の車線内の位置を表す第１の複数のノードと、第１の車線とは異なる第２の車線内の位置を表す第２の複数のノードとを特定する地図情報を使用して、第１の車線の経路に沿って前記車両を操縦することと、
操縦中に、
前記第１の複数のノードうちの第１のノードを第２の複数のノードのうちの第２のノードに接続するコストを評価することにより、前記経路をたどるためにいつ前記車両が車線変更を行うかを判定することと、
前記第１の車線から前記第２の車線に前記車線変更を行うために前記評価を使用することと、をするように構成されている１つ以上のプロセッサを含む、システム。
【請求項１２】
コストを評価することが、コスト関数を適用することを含む、請求項１１に記載のシステム。
【請求項１３】
前記コスト関数が、前記第１のノードによって表される前記位置および前記第２のノードによって表される前記位置からの前記変更の持続時間に基づく、請求項１２に記載のシステム。
【請求項１４】
前記コスト関数は、現在の交通状況に基づく、請求項１２に記載のシステム。
【請求項１５】
前記コスト関数は、前記変更が以前に見逃されたかどうかに基づく、請求項１２に記載のシステム。
【請求項１６】
前記コスト関数は、前記車両が白い実線を横切るかどうかに基づく、請求項１２に記載のシステム。
【請求項１７】
前記１つ以上のプロセッサが、前記車両が前記変更を行うことができないとき、第１のノードによって表される前記位置と第２のノードによって表される前記位置との間で車線を変更するためのコストを増加させるようにさらに構成されている、請求項１５に記載のシステム。
【請求項１８】
前記１つ以上のプロセッサが、前記第１および第２の複数のノードのノードのペアを反復処理して、どこで前記変更を行うかを判定するようにさらに構成されている、請求項１５に記載のシステム。
【請求項１９】
前記地図情報を記憶するメモリをさらに含む、請求項１５に記載のシステム。
【請求項２０】
前記車両をさらに含む、請求項１５に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、「Ｒｅａｌ−Ｔｉｍｅ  Ｌａｎｅ  Ｃｈａｎｇｅ  Ｓｅｌｅｃｔｉｏｎ  Ｆｏｒ  Ａｕｔｏｎｏｍｏｕｓ  Ｖｅｈｉｃｌｅｓ」と題する、２０１７年１２月５日に出願された、米国特許出願第１５／８３１，６７８号の出願日の利益を主張し、その開示は参照により本明細書に組み込まれる。
【背景技術】
【０００２】
人間の運転手を必要としない車両などの自律型車両が、ある場所から他の場所への乗員乗客または物品の輸送を支援するために使用することができる。このような車両は、乗員乗客がピックアップ場所、目的地などのいくつかの初期入力を提供してもよく、車両は、１つ以上の車線変更を必要とし得る経路を判定し、それに従うなどして、その場所に自ら操縦する、完全な自律モードで動作してもよい。
【発明の概要】
【０００３】
この開示の一態様は、自律型車両をルーティングする方法を提供する。本方法は、車両を、第１の車線内の位置を表す第１の複数のノードと、第１の車線とは異なる第２の車線内の位置を表す第２の複数のノードとを特定する地図情報を使用して、第１の車線の経路に沿って操縦することと、操縦中に、第１の複数のノードのうちの第１のノードを第２の複数のノードのうちの第２のノードに接続するコストを評価することにより、経路をたどるためにいつ車両が車線変更を行うかを判定することと、評価を使用して、車線を第１の車線から第２の車線に変更することと、を含む。
【０００４】
一例では、コストを評価することが、コスト関数を適用することを含む。一例では、コスト関数は、第１のノードによって表される位置および第２のノードによって表される位置からの変更の持続時間に基づく。追加または代替として、コスト関数は、現在の交通状況に基づく。追加または代替として、コスト関数は、変更が以前に見逃されたかどうかに基づく。コスト関数は、車両が白い実線を横切るかどうかに基づく。追加または代替として、コスト関数は、車両が交差点で変更を行うかどうかに基づく。追加または代替として、コスト関数は、変更が発生する時刻に基づく。別の例では、本方法はまた、車両が変更を行うことができないとき、第１のノードによって表される位置と第２のノードによって表される位置との間で車線を変更するためのコストを増加させることを含む。別の例では、本方法はまた、第１および第２の複数のノードのノードのペアを反復処理して、どこで変更を行うかを判定することを含む。
【０００５】
本開示の他の態様は、自律型車両をルーティングするためのシステムを提供する。本システムは、第１の車線内の位置を表す第１の複数のノードと、第１の車線とは異なる第２の車線内の位置を表す第２の複数のノードとを特定する地図情報を使用して、第１の車線の経路に沿って車両を操縦することと、操縦中に、第１の複数のノードうちの第１のノードを第２の複数のノードのうちの第２のノードに接続するコストを評価することにより、経路をたどるためにいつ車両が車線変更を行うかを判定することと、評価を使用して、第１の車線から第２の車線に車線変更を行うことと、をするように構成されている１つ以上のプロセッサを含む。
【０００６】
一例では、コストを評価することが、コスト関数を適用することを含む。一例では、コスト関数は、第１のノードによって表される位置および第２のノードによって表される位置からの変更の持続時間に基づく。追加または代替として、コスト関数は、現在の交通状況に基づく。追加または代替として、コスト関数は、変更が以前に見逃されたかどうかに基づく。コスト関数は、車両が白い実線を横切るかどうかに基づく。追加または代替として、コスト関数が、車両が交差点で変更を行うかどうかに基づく。追加または代替として、コスト関数は、変更が発生する時刻に基づく。別の例では、１つ以上のプロセッサが、車両が変更を行うことができないとき、第１のノードによって表される位置と第２のノードによって表される位置との間で車線を変更するためのコストを増加させるようにさらに構成されている。別の例では、１つ以上のプロセッサが、第１および第２の複数のノードのノードのペアを反復処理して、どこで変更を行うかを判定するようにさらに構成されている。別の例では、このシステムはまた、地図情報を記憶するメモリをさらに含む。他の例では、システムはまた、車両も含む。
【図面の簡単な説明】
【０００７】
【図１】例示の実施形態による例示的な車両の機能図である。
【図２Ａ】本開示の態様による地図情報の一例である。
【図２Ｂ】本開示の態様による地図情報の一例である。
【図３】本開示の態様による車両の例示的な外観図である。
【図４】例示の実施形態による例示的なシステムの絵図である。
【図５】本開示の態様による、図４のシステムの機能図である。
【図６】本開示の態様による地理的区域の例示的な鳥瞰図である。
【図７】本開示の態様によるデータを伴う図６の地理的区域の例示的な図である。
【図８】本開示の態様によるデータを伴う図６の地理的区域の例示的な図である。
【図９】本開示の態様によるデータを伴う図６の地理的区域の例示的な図である。
【図１０】本開示の態様によるロータリーの例示的な鳥瞰図である。
【図１１】本開示の態様による例示的なフロー図である。
【発明を実施するための形態】
【０００８】
概要
この技術は、自律型車両、自律運転モードを有する車両などの車両が経路に沿って走行している間に車線をいつ変更するかを判定することに関する。場合によっては、車両のコンピューティングデバイスは、車両の環境を介して車両をルーティングする方法を判定するために、マップまたは道路図として互いに相互接続された複数のノードに依存することがある。したがって、車線変更により、車両は、ある車線のノードの１つのセットから異なる車線のノードの別のセットに効果的に通過する。移行時に異なるセットのどの個別のノードを使用するかを判定するには、コスト分析が使用され得る。
【０００９】
このコスト分析は、例えば、２つのノード間の移行に関する異なる要素の一連の個別コストを判定し、これらの個別コストを使用して２つのノード間の移行の全体コストを判定することを含み得る。個々のコストを判定するために、２つのノード間の特定の移行について、各因子が任意の値に変換され得る。
【００１０】
次いで、個々のコストのそれぞれの値を使用して、２つのノード間の移行の全体コストを判定し得る。次いで、コンピューティングデバイスは、考えられる異なる移行または車線変更に対応するノードのペアを反復処理し、ノードの各ペアの全体コストを特定し得る。考えられる異なる移行に対応するノードのペアを反復処理した後、コンピューティングデバイスは、特定のノードのペアを選択し得る。例えば、ノードのペアのすべてのうち全体のコストが最も低いノードのペアが選択され得る。次いで、この選択されたペアが、車線を変更するために車両を操縦する方法を判定するために車両のコンピューティングデバイスによって使用され得る。次いで、車線変更を完了するために車両が制御され得る。
【００１１】
本明細書で説明する特徴により、自律型車両または自律運転モードで動作している車両が、車線変更をリアルタイムで行うのに最適な場所を特定することができる。さらに、これにより、車両が無限ループに陥り、車線変更不能となることを防止する。
【００１２】
例示的なシステム
図１に示されるように、本開示の一態様による車両１００は、様々な構成要素を含む。本開示の特定の態様は、特定のタイプの車両に関連して特に有用であるが、車両は、どのタイプの車両であってもよく、車、トラック、オートバイ、バス、レクリエーション用車両などを含むが、これらに限定されない。車両は、１つ以上のプロセッサ１２０、メモリ１３０、および汎用コンピューティングデバイスに典型的に存在する他の構成要素を含むコンピューティングデバイス１１０のような１つ以上の制御コンピューティングデバイスを有し得る。
【００１３】
メモリ１３０は、１つ以上のプロセッサ１２０によってアクセス可能である情報を記憶し、その情報には、プロセッサ１２０によって実行または別様に使用され得る命令１３４およびデータ１３２が含まれる。メモリ１３０は、プロセッサによってアクセス可能である情報を記憶することができる任意のタイプのメモリであってもよく、それらには、コンピューティングデバイス可読媒体、またはハードドライブ、メモリカード、ＲＯＭ、ＲＡＭ、ＤＶＤ、もしくは他の光ディスク、ならびに他の書き込み可能および読み取り専用メモリなどの電子デバイスを使って読み取ることができるデータを記憶する他の媒体が含まれる。システムおよび方法は、上記の異なる組み合わせを含んでもよく、それによって、命令およびデータの様々な部分が、様々なタイプの媒体に記憶される。
【００１４】
命令１３４は、プロセッサにより直接（マシンコードなど）または間接的に（スクリプトなど）実行される任意の一連の命令であってもよい。例えば、命令は、コンピューティングデバイス可読媒体上のコンピューティングデバイスコードとして記憶されてもよい。その点において、「命令」および「プログラム」という用語は、本明細書では、互換的に使用され得る。命令は、プロセッサによる直接処理のための物体コード形式で、または要求に応じて解釈されるか、もしくは予めコンパイルされる独立したソースコードモジュールのスクリプトもしくは集合体を含む、任意の他のコンピューティングデバイス言語で記憶されてもよい。命令の機能、方法、およびルーチンについては、以下でさらに詳細に説明される。
【００１５】
データ１３２は、命令１３４に従ってプロセッサ１２０によって検索、記憶、または修正されてもよい。例えば、特許請求の範囲の主題は、いかなる特定のデータ構造にも限定されないが、データは、コンピューティングデバイスレジスタ内に、すなわち、複数の異なるフィールドおよびレコードを有する表、ＸＭＬドキュメント、またはフラットファイルとしてリレーショナルデータベース内に記憶されてもよい。データはまた、任意のコンピューティングデバイス可読形式でフォーマットされてもよい。
【００１６】
１つ以上のプロセッサ１２０は、市販されているＣＰＵなどの任意の従来のプロセッサであってもよい。別の方法として、１つ以上のプロセッサは、ＡＳＩＣまたは他のハードウェアベースプロセッサなどの専用デバイスであってもよい。図１は、プロセッサ、メモリ、およびコンピューティングデバイス１１０の他の要素を同じブロック内にあるものとして機能的に例示しているが、プロセッサ、コンピューティングデバイス、またはメモリは、実際には、同じ物理的な筐体内に格納されていてもいなくてもよい、複数のプロセッサ、コンピューティングデバイス、またはメモリを含むことができることは、当業者により、理解されるであろう。例えば、メモリが、ハードドライブ、またはコンピューティングデバイス１１０の筐体とは異なる筐体内に設置された他の記憶媒体であってもよい。したがって、プロセッサまたはコンピューティングデバイスへの言及は、並行に動作してもしなくてもよいプロセッサまたはコンピューティングデバイスまたはメモリの集合体への言及を含むことを理解されたい。
【００１７】
コンピューティングデバイス１１０は、上述したプロセッサおよびメモリ、ならびにユーザ入力１５０（例えば、マウス、キーボード、タッチスクリーンおよび／またはマイクロフォン）、様々な電子ディスプレイ（例えば、スクリーン、または情報を表示するように動作可能である任意の他の電気デバイスを有するモニタ）などのコンピューティングデバイスと接続して通常使用されるすべての構成要素であってもよい。この例では、車両は、内部の電子ディスプレイ１５２、ならびに１つ以上のスピーカー１５４を含み、情報または音響映像体験を提供する。この点について、内部の電子ディスプレイ１５２は、車両１００の車内に位置付けられてもよく、コンピューティングデバイス１１０によって使用されて、車両１００内の乗員乗客に情報を提供してもよい。
【００１８】
コンピューティングデバイス１１０はまた、１つ以上の無線ネットワーク接続１５６も含み、以下に詳細に説明するクライアントコンピューティングデバイスおよびサーバコンピューティングデバイスなどの他のコンピューティングデバイスとの通信を容易にし得る。無線ネットワーク接続には、ブルートゥース、ブルートゥースローエネルギー（ＬＥ）、携帯電話接続などの短距離通信プロトコル、ならびにインターネット、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、１つ以上の企業に専用の通信プロトコルを使用するプライベートネットワーク、イーサネット、ＷｉＦｉ、およびＨＴＴＰを含む様々な構成およびプロトコル、ならびに上記の様々な組み合わせが含まれてもよい。
【００１９】
一例では、コンピューティングデバイス１１０は、車両１００に組み込まれるか、または自律運転コンピューティングシステムのコンピューティングデバイスであり得る。この自律運転コンピューティングシステムは、メモリ１３０のプライマリ車両制御コードに従って車両１００の移動を制御するために、車両の様々な構成要素と通信することが可能であり得る。例えば、図１を参照すると、コンピューティングデバイス１１０は、メモリ１３０の命令１３４に従って車両１００の移動、速度などを制御するために、減速システム１６０、加速システム１６２、ステアリングシステム１６４、信号システム１６６、ルーティングシステム１６８、測位システム１７０、知覚システム１７２、および動力システム１７４（すなわち、車両のエンジンまたはモーター）などの、車両１００の様々なシステムと通信し得る。また、これらのシステムは、コンピューティングデバイス１１０の外部にあるものとして示されているが、実際には、これらのシステムもまた、車両１００を制御するための自律運転コンピューティングシステムとして再度、コンピューティングデバイス１１０の中に組み込まれてもよい。
【００２０】
一例として、コンピューティングデバイス１１０が、車両の速度を制御するために、車両のブレーキ、アクセルペダル、および／またはエンジン、もしくはモーターなどの減速システム１６０および／または加速システム１６２の１つ以上のアクチュエータと相互作用してもよい。同様に、ハンドル、ステアリングシャフト、ならびに／またはラックアンドピニオン式システム内のピニオンおよびラックなどのステアリングシステム１６４の１つ以上のアクチュエータが、車両１００の方向を制御するために、コンピューティングデバイス１１０によって使用され得る。例えば、車またはトラックなどの車両１００が道路上で使用するために構成されている場合、ステアリングシステムは、車両の向きを変えるために車輪の角度を制御するための１つ以上のアクチュエータを含んでもよい。信号システム１６６は、例えば、必要に応じて方向指示器またはブレーキライトを点灯させることによって、車両の意図を他の運転手または車両に知らせるために、コンピューティングデバイス１１０によって使用され得る。
【００２１】
ルーティングシステム１６８は、ある場所までの経路を判定し、これをたどるために、コンピューティングデバイス１１０によって使用され得る。この点について、ルーティングシステム１６８および／またはデータ１３２が、詳細な地図情報、例えば、道路の形状および標高、車線境界線、交差点、横断歩道、速度制限、交通信号、建物、標識、リアルタイム交通情報、植生、または他のそのような物体および情報を特定する高精密地図、を記憶してもよい。
【００２２】
図２Ａおよび２Ｂは、交差点２２０を含む道路の区画の地図情報の例である。図２Ａは、車線マーカーまたは車線ライン２１０、２１２、２１４の形状、位置、および他の特性を特定する情報、車線２３０、２３２、交通信号２４０、２４２（明確性と簡潔性のために図２Ａには示さず）、ならびに停止線２５０、２５２、２５４を定義する情報を含む地図情報の一部を示す。これらの特徴に加えて、地図情報はまた、各車線の交通の方向と制限速度を特定する情報、ならびにコンピューティングデバイス１１０が、車両が特定の操縦を完了する（つまり、ターンを完了するか、または交通または交差点の車線を横断する）先行権を有しているかどうか、および縁石、建物、水路、植生、標識などの他の特徴を判定できるようにする情報を含み得る。
【００２３】
特徴情報に加えて、地図情報が、一連の道路または車線セグメントを含み得る。これらの車線セグメントを互いに接続して、車線の実際のカーブを表すレールまたは滑らかなカーブを提供し得る。例えば、図２Ａは、レール２６０、２６２、２６４、２６６、２６８を含む。レール間を移行するために、コンピューティングデバイスは、以下でさらに説明するように、本質的に追加の曲線を描画し、これらの曲線をたどるように車両を制御する。２つの車線間をどのように移行するかを判定するために、コンピューティングデバイスは、複数のノードを特定することができる。各ノードは、規則的な感覚でレールに沿って本質的に「ドロップ」され得る。間隔は、距離で、例えば５メートル程度で、または走行の持続時間に基づいて、例えば車両の現在の速度もしくは予想される速度または道路の制限速度を使用して定義され得る。この例では、５メートルごとにノードをドロップする代わりに、２秒程度ごとにノードがドロップされ得る。これは、高速道路ではノードをさらに離して配置し、時速２５マイルのゾーン、駐車場などの低速区域ではノード同士をより近づけて配置する効果がある。図２Ｂは、複数のそのようなノードを示す。もちろん、多くのノードが示されているが、明確性と簡潔性のために、図２Ｂでは少数のみに符号が付されている。見て分かるように、ノードＡ〜Ｄの各々が、レール２６２に沿った位置を表し得る。同様に、ノードＥ〜Ｈの各々が、レール２６０に沿った位置を表し得る。図示されていないが、これらのノードの各々が、識別子、例えば、ノードまたはレールの相対位置または実際位置に対応する数値に関連付けられ得る。
【００２４】
本明細書では地図情報が画像ベースの地図として示されているが、地図情報は、完全に画像ベースである必要はない（例えば、ラスタ）。例えば、地図情報は、１つ以上の道路グラフ、または道路、車線、交差点、およびこれらの特徴間の接続などの情報のグラフネットワークを含み得る。各特徴は、グラフデータとして記憶されてもよく、地理的場所などの情報と関連付けられてもよく、いずれにせよ、他の関連する特徴にリンクされ、例えば、一時停止標識は、道路や交差点などにリンクされてもよい。いくつかの例では、関連付けられたデータは、道路グラフのグリッドベースのインデックスを含んで、ある道路グラフの特徴の効率的な検索を可能にし得る。
【００２５】
測位システム１７０は、地図上または地球上の車両の相対的または絶対的位置を判定するために、コンピューティングデバイス１１０によって使用され得る。例えば、測位システム１７０は、デバイスの緯度、経度、および／または標高の位置を判定するためのＧＰＳ受信機を含むことができる。レーザベースの位置決めシステム、慣性支援ＧＰＳ、またはカメラベースの位置決めなどの他の位置特定システムもまた、車両の位置を特定するために使用することができる。車両の位置は、緯度、経度、および標高などの絶対的な地理的位置だけでなく、多くの場合、より少ないノイズでその絶対的な地理的位置を判定することができる、車両のすぐ周りにある他の車に対する位置などの相対的な位置情報を含むことができる。
【００２６】
測位システム１７０はまた、車両の方向および速度、またはそれらの変化を判定するための加速度計、ジャイロスコープ、別の方向／速度検出デバイスなどの、コンピューティングデバイス１１０と通信する他のデバイスも含み得る。単なる例として、加速デバイスは、重力の方向、または重力に対して垂直な平面に対する車両の縦揺れ、偏揺れ、または横揺れ（またはそれらの変化）を判定することができる。このデバイスはまた、速度の増減、およびそのような変化の方向を追跡することもできる。本明細書で説明したように、デバイスの位置および配向データの提供は、コンピューティングデバイス１１０、他のコンピューティングデバイス、および上記の組み合わせに自動的に提供され得る。
【００２７】
知覚システム１７２はまた、他の車両、道路内の障害物、交通信号、標識、樹木などの車両の外部にある対象物を検出するために１つ以上の構成要素を含む。例えば、知覚システム１７２は、レーザ、ソナー、レーダー、カメラ、および／またはコンピューティングデバイス１１０が処理することができるデータを記録する任意の他の検出デバイスを含んでもよい。車両がミニバンなどの乗用車両である場合には、ミニバンは、屋根または他の都合のよい位置に搭載されるレーザまたは他のセンサを含んでもよい。例えば、図３は、車両１００の例示的な外観図である。この例では、屋上にある筐体３１０およびドーム状筐体３１２は、ライダーセンサ、ならびに各種のカメラおよびレーダーユニットを含んでもよい。さらに、車両１００の前端部に設置された筐体３２０、ならびに車両の運転手側および助手席側の筐体３３０、３３２は、各々、ライダーセンサを格納することができる。例えば、筐体３３０は、運転手ドア３６０の前部に位置付けられている。車両１００はまた、車両１００の屋根の上にさらに位置付けられたレーダーユニットおよび／またはカメラのための筐体３４０、３４２も含む。追加のレーダーユニットおよびカメラ（図示せず）は、車両１００の前端および後端に、および／または屋根または屋上にある筐体３１０に沿った他の位置に位置付けることができる。
【００２８】
コンピューティングデバイス１１０は、様々な構成要素を制御することによって車両の方向および速度を制御してもよい。例として、コンピューティングデバイス１１０は、詳細な地図情報およびルーティングシステム１６８からのデータを使用して、車両を目的地の位置に完全に自律的にナビゲートし得る。コンピューティングデバイス１１０は、車両の場所を判定するために測位システム１７０を使用し、その場所に安全に到着する必要があるとき、物体を検出かつ物体に対応するために知覚システム１７２を使用してもよい。そうするために、コンピューティングデバイス１１０は、車両を、（例えば、加速システム１６２により、エンジンに提供される燃料または他のエネルギーを増加させることによって）加速させ、（例えば、エンジンに供給される燃料を低減させ、ギヤを切り替え、および／または減速システム１６０によりブレーキをかけることによって）減速させ、（例えば、ステアリングシステム１６４により、車両１００の前輪または後輪の向きを変えることによって）方向を変更させ、（例えば、信号システム１６６の方向指示器を点灯することによって）かかる変更を伝えさせてもよい。このため、加速システム１６２および減速システム１６０は、車両のエンジンと車両の車輪との間に様々な構成要素を含む、動力伝達装置の一部であり得る。再び、これらのシステムを制御することによって、コンピューティングデバイス１１０はまた、車両を自律的に操縦するために、車両の動力伝達装置を制御してもよい。
【００２９】
車両１００のコンピューティングデバイス１１０はまた、輸送サービスの一部であるコンピューティングデバイスならびに他のコンピューティングデバイスなどの他のコンピューティングデバイスとの間で情報を受信または転送し得る。図４および図５は、それぞれ、例示的なシステム４００の絵図および機能図であり、システムは、ネットワーク４６０を介して接続された複数のコンピューティングデバイス４１０、４２０、４３０、４４０、および記憶システム４５０を含む。システム４００はまた、車両１００、および車両１００と同様に、または類似して構成され得る車両１００Ａ、１００Ｂを含む。簡潔にするため、いくつかの車両およびコンピューティングデバイスのみを図示しているが、典型的なシステムは、これよりもはるかに多くのものを含み得る。
【００３０】
図４に示されるように、コンピューティングデバイス４１０、４２０、４３０、４４０の各々は、１つ以上のプロセッサ、メモリ、データ、および命令を含むことができる。そのようなプロセッサ、メモリ、データ、および命令は、コンピューティングデバイス１１０の１つ以上のプロセッサ１２０、メモリ１３０、データ１３２、および命令１３４と同様に構成されてもよい。
【００３１】
ネットワーク４６０および仲介ノードは、ブルートゥース、ブルートゥースＬＥ、インターネット、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、１つ以上の企業に専用の通信プロトコルを使用するプライベートネットワーク、イーサネット、ＷｉＦｉ、およびＨＴＴＰ、ならびに上記の様々な組み合わせなどの短距離通信プロトコルを含む様々な構成およびプロトコルを含んでもよい。そのような通信は、モデムおよび無線インターフェースなどの、他のコンピューティングデバイスとの間でデータを送受信することができる任意のデバイスによって容易に行われ得る。
【００３２】
一例では、１つ以上のコンピューティングデバイス１１０は、複数のコンピューティングデバイスを有する１つ以上のサーバ、例えば、負荷分散サーバファームを含んでもよく、負荷分散サーバファームは、他のコンピューティングデバイスとの間でデータを受信、処理、および送信する目的で、ネットワークの異なるノードと情報を交換する。例えば、１つ以上のコンピューティングデバイス４１０は、ネットワーク４６０を介して、車両１００のコンピューティングデバイス１１０、または車両１００Ａの同様のコンピューティングデバイス、ならびにコンピューティングデバイス４２０、４３０、４４０と通信することが可能である１つ以上のサーバコンピューティングデバイスを含んでもよい。例えば、車両１００、１００Ａは、サーバコンピューティングデバイスによって様々な位置に派遣され得る車両の集団の一部であり得る。この点について、サーバコンピューティングデバイス４１０は、派遣システムとして機能し得る。さらに、集団の車両は、車両のそれぞれの測位システムによって提供される位置情報、および以下でさらに説明する車両のステータスに関する他の情報をサーバコンピューティングデバイスに定期的に送信でき、１つ以上のサーバコンピューティングデバイスは集団の車両の各々の位置とステータスを追跡し得る。
【００３３】
加えて、サーバコンピューティングデバイス４１０は、ネットワーク４６０を使用して、コンピューティングデバイス４２０、４３０、４４０のディスプレイ４２４、４３４、４４４などのディスプレイ上に、ユーザ４２２、４３２、４４２などのユーザに情報を送信および提示することができる。この点について、コンピューティングデバイス４２０、４３０、４４０は、クライアントコンピューティングデバイスとみなされてもよい。
【００３４】
図４に示すように、各クライアントコンピューティングデバイス４２０、４３０、４４０は、ユーザ４２２、４３２、４４２が使用することを意図されたパーソナルコンピューティングデバイスであってもよく、１つ以上のプロセッサ（例えば、中央処理装置（ＣＰＵ））、データおよび命令を格納するメモリ（例えば、ＲＡＭおよび内蔵ハードドライブ）、ディスプレイ４２４、４３４、４４４などのディスプレイ（例えば、画面を有するモニタ、タッチスクリーン、プロジェクタ、テレビ、または情報を表示するように動作可能である他のデバイス）、およびユーザ入力デバイス４２６、４３６、４４６（例えば、マウス、キーボード、タッチスクリーン、またはマイクロフホン）を含む、パーソナルコンピューティングデバイスと接続して通常使用されるすべての構成要素を有し得る。クライアントコンピューティングデバイスはまた、ビデオストリームを記録するためのカメラ、スピーカー、ネットワークインターフェースデバイス、およびこれらの要素を互いに接続するために使用されるすべての構成要素を含んでもよい。
【００３５】
クライアントコンピューティングデバイス４２０、４３０、および４４０は、各々、フルサイズのパーソナルコンピューティングデバイスを含んでもよいが、代替的に、インターネットなどのネットワークを介してサーバとデータを無線で交換することが可能であるモバイルコンピューティングデバイスを含んでもよい。ほんの一例として、クライアントコンピューティングデバイス４２０は、携帯電話、または無線対応ＰＤＡ、タブレットＰＣ、ウェアラブルコンピューティングデバイスもしくはシステムなどのデバイス、またはインターネットもしくは他のネットワークを介して情報を取得することができるネットブックであってもよい。別の例では、クライアントコンピューティングデバイス４３０は、図４に示したように、腕時計として示されるウェアラブルコンピューティングシステムであってもよい。一例として、ユーザは、小型キーボード、キーパッド、マイクロフォンを使用して、カメラを用いた映像信号、またはタッチスクリーンを使用して、情報を入力し得る。
【００３６】
いくつかの例では、クライアントコンピューティングデバイス４４０は、集団の車両にデポサービスを提供するためにデポの管理者またはオペレータによって使用されるコンシェルジュワークステーションであり得る。図４および図５には、単一のコンシェルジュワークステーション４４０のみが示されているが、典型的なシステムには、任意の数のそのようなワークステーションが含まれ得る。
【００３７】
メモリ１３０と同様に、記憶システム４５０は、ハードドライブ、メモリカード、ＲＯＭ、ＲＡＭ、ＤＶＤ、ＣＤ−ＲＯＭ、書き込み可能メモリ、および読み出し専用メモリなどの、サーバコンピューティングデバイス４１０によりアクセス可能である情報を記憶することができる、任意のタイプのコンピュータ化された記憶装置であり得る。さらに、記憶システム４５０は、データが、同じまたは異なる地理的位置に物理的に設置され得る複数の異なる記憶デバイス上に格納される分散型記憶システムを含んでもよい。記憶システム４５０は、図４および図５に示すように、ネットワーク４６０を介してコンピューティングデバイスに接続されてもよく、かつ／またはコンピューティングデバイス１１０、４１０、４２０、４３０、４４０などのいずれかに直接接続されるか、もしくは組み込まれてもよい。
【００３８】
記憶システム４５０は、以下でより詳細に説明されるように、様々なタイプの情報を記憶することができる。この情報は、本明細書で記載する特徴のうちのいくつかまたはすべてを実行するために、１つ以上のサーバコンピューティングデバイス４１０などのサーバコンピューティングデバイスによって検索または別様にアクセスされ得る。輸送サービスをユーザに提供するために、記憶システム４５０の情報が、資格情報などのユーザアカウント情報（例えば、従来の単一要素認証の場合のようなユーザ名およびパスワード、ならびにランダム識別子、生体認証などの多要素認証で通常使用される他のタイプの資格情報）を含んでもよく、１つ以上のサーバコンピューティングデバイスに対してユーザを識別するために使用することができる。ユーザアカウント情報はまた、ユーザの名前、連絡先情報、ユーザのクライアントコンピューティングデバイス（または、同じユーザアカウントで複数のデバイスが使用されている場合はそれらデバイス）の識別情報などの個人情報、ユーザについての１つ以上の固有の信号、および他のユーザプリファレンスまたは設定データを含み得る。
【００３９】
記憶システム４５０はまた、ユーザに表示するためにクライアントコンピューティングデバイスに提供され得る情報を記憶してもよい。例えば、記憶システム４５０は、所与の集荷または目的地の場所について車両が停止する可能性が高い区域を判定するための所定の距離情報を記憶し得る。記憶システム４５０はまた、以下で論じられるように、ユーザに表示され得る図式、アイコン、および他の項目を記憶し得る。
【００４０】
例示的な方法
上述し、図に例示した動作に加えて、様々な動作が、ここで説明される。以下の動作は、以降に説明された正確な順序で実行される必要はないことを理解されたい。むしろ、様々なステップが、異なる順序で、または同時に処理されてもよく、ステップもまた、追加または省略されてもよい。
【００４１】
車両のコンピューティングデバイスは、経路をたどるために車両を制御し得る。図６は、図２Ａおよび２Ｂの地図情報で定義された道路の区画に対応する道路の区画で操縦されている車両１００の例示的な図である。例えば、図６は、交差点２２０に対応する交差点６２０を示す。さらに、車線ライン６１０、６１２、および６１４の形状、位置、および他の特性は、車線ライン２１０、２１２、２１４の形状、位置、および他の特性に対応する。同様に、交通信号６３０、６３２は交通信号２３０、２３２に対応し、停止線６５０、６５２、６５４は停止線２５０、２５２、２５４に対応する。レールをたどって、これらをまとめて接続することにより、ルーティングシステム１６８は、２つの位置の間の経路を生成し得る。例えば、図６に示すように、車両１００は現在、経路６７０をたどる車線６３２を走行している。経路６７０は、交差点６２４で右折するために、車両１００が車線６３２から車線６３０に変更することを要求する。
【００４２】
いつおよびどこで車線を変更するかを判定するために、車両のコンピューティングデバイスは、地図情報のノードのペア間で移行するコストを評価し得る。そうするために、コンピューティングデバイス１１０は、地図情報からノードのペアを特定し得る。各ペアは、車両のソース車線または現在の車線に対応する地図情報からの１つのノードと、ターゲット車線またはむしろ隣接する車線に対応して車両が移行する必要がある車線からの１つのノードを含み得る。この例では、隣接する車線は、例えば、車線が左または右に直接隣接する平行な走行方向を有していることを意味することができる。そのような場合、コンピューティングデバイス１１０は、ノードをペアにするか、むしろ、車線が隣接車線のままである限り（すなわち、分岐または合流がない）、ソース車線のノードからターゲット車線のノードへの車線変更の機会を許可し、それらが長すぎないと仮定する。
【００４３】
場合によっては、隣接する車線が特定されると、コンピューティングデバイス１１０は、地図情報からの速度制限情報または車両の現在または予想される将来の速度を使用することにより、一定の持続時間までの車線変更のための機会またはノードのペアを特定し得る。例えば、車線Ｊのノードから、コンピューティングデバイス１１０は、これらの車線変更の機会のいずれかが一定の持続時間よりも少ない限り、隣接車線Ｋ、またはさらには車線Ｋの隣接車線、車線Ｌへの車線変更移行を可能にし得る。この一定の持続時間は、４０秒程度の長さになる場合もあれば、それより短いこともあり得る。この例では、車線Ｊ、Ｋ、Ｌの速度制限が３０ｍｐｈである場合、最大距離約５３０メートルに相当する。また、メモリ使用量を節約するために、コンピューティングデバイス１１０は、４０秒までのすべての可能な車線変更またはすべての可能なペアのノードを特定しないことがある。例えば、コンピューティングデバイスは、１秒、２秒、４秒、１０秒、２０秒、および４０秒の長さの車線変更の機会を構築することを選択することができる。これは、コンピューティングデバイス１１０に多くの機会を「スキップ」させるかもしれないが、実際には同様のルーティング挙動をもたらし得る。
【００４４】
ただし、多くの場合、車線の直接隣接する車線は反対方向に進む可能性がある。この場合、ノードから反対側の隣接する車線のノードへの移行を構築することは、車線の変更ではなく、Ｕターンまたはマルチポイントターンのいずれかで達成され得る進行方向の１８０度の変更を表すだろう。このような移行は、低速の住宅道路でのみ許可され得る。さらに、ノード間のすべての遷移が実行可能であるとは限らないため、無視されることがある。例えば、コンピューティングデバイス１１０は、車線変更中に車が「後退」することを可能にするノードをペアにしなくてもよい。
【００４５】
図６の例では、車線６３２はソース車線であり、車線６３０はターゲット車線である。コンピューティングデバイス１１０は、車線６３０および６３２のそれぞれにおける、車両１００の現在位置と交差点６２０との間のノードをペアにし得る。そのようなノードは、ソース車線６３０に対応する複数のノードＡ〜Ｄおよびターゲット車線６３２に対応する複数のノードＥ〜Ｈを含み得る。図７は、車両の現在位置と交差点６２０との間の図２Ｂに示されている地図情報のノードＡ〜Ｈを、図６の例から経路６７０を差し引いて重ねている。図８は、ソース車線６３２とターゲット車線６３０との間の車線変更をもたらすために車両１００が遷移することができる例示的なノードのペア８１０、８２０、８３０を示す。言い換えると、コンピューティングデバイス１１０は、車両１００が現在走行している車線６３２に対応する地図情報からの１つのノードと車線６３２に対応する地図情報からの１つのノードをそれぞれ含む３つのノードのペアを特定している。したがって、ノードのペア８１０、８２０、および８３０の各々は、車線６３２に対応する１つのノードおよび車線６３０に対応する１つのノードを含む。
【００４６】
上述したように、これらのノードのペアの各々について、コンピューティングデバイス１１０は、車両がノード間を移行するためのコストを評価することができる。例えば、コンピューティングデバイス１１０は、車両１００の（ノードのペア８１０の）ノードＡからノードＦへの移動、（ノードのペア８２０の）ノードＢからノードＧへの移動、および（ノードのペア８２０の）ノードＣからノードＨへの移動についてのコスト値を判定し得る。
【００４７】
このコスト評価は、例えば、特定されたノードのペアの各々の２つのノード間の移行に関連する様々な要素の一連の個別コストを判定し、これらの個別コストを使用して２つのノード間の移行の全体コストを判定することを含む。例として、要素は、変更の持続時間、過去に変更が見逃されたかどうか、車両が白い実線を横切るかどうか、車両が交差点内で変更を開始または行うかどうか、現在の区域内での交通状況、変更が発生する時刻（つまり、学校が終わって子供がいるかどうか）、現在の車線がまもなく出口に変更されるかどうか、他者がどのように車線を変更、または区域で合流しようとしているか、および変更により特定の車両を太陽のまぶしさの経路に直接置くことになるどうかを含み得る。他の車両がどのように車線を変更しようとしているかの例として、他の車両が合流している車線の高速道路に車両１００が現在いる場合、車両が車線をすぐに変更する方が良いだろう（つまり、簡単で低コストであるべきである）。
【００４８】
個々のコストを判定するために、２つのノード間の特定の移行について、各因子が任意の値に変換され得る。これに関して、各要素は、その要素をコストにマッピングするために使用できる独自の個別のスケールまたは重みを有し得る。これらの重みには、べき法則、指数、区分的、二次、線形などが含まれる。
【００４９】
例えば、持続時間は、区分的線形関数を使用して判定され得る。例示的な範囲は、０（移行を行うための有意または最大の時間）から５０００（移行を行うための時間がほとんどまたはまったくない）までである。この最大時間は、４０秒程度など、車両の乗員乗客の快適な車線変更体験に関連するいくつかの値に対応し得る。場合によっては、コストが実際にゼロにならないことがあり、追加することを検討し得ることの１つは、コストが実際には完全に０に下がるのではなく、１００程度のようなゼロ以外の値で横ばいになることがある。これにより、所与の経路についての車線変更の総数を最小限に抑える効果を有することができる。これがなければ、コンピューティングデバイス１１０は、実際に、車両に「あまりに多くの」車線変更を行わせる、またはむしろ、車両を車線間で前後にジャンプさせる可能性がある。
【００５０】
車両が白い実線に交差するかどうかは、バイナリ値（はい、またはいいえ）であるか、２つのノード間の面積にどの程度白い実線が含まれるかに応じた区分的線形関数を使用して判定され得る。前述の例のいずれかで、例示的な範囲は０（いいえ、または白い実線を交差しない）から「２０００」（はい、または２つのノード間の距離の全長の間の白の実線）までであり得る。別の例として、車両が交差点内の２つのノード間で車線変更を開始するかどうかは、バイナリ（はいまたはいいえ）であり得る。いいえの例示的な値は０で、はいの例示的な値は「２０００」であり得る。
【００５１】
次に、個々のコストの各々の値を使用して、コスト関数を用いた２つのノード間の移行の全体コストを判定し得る。一例では、コスト関数は線形関数であってもよく、値が合計されて、その移行または車線変更の全体コストを生成することができる。代替的には、コスト関数は、重み付けされた線形和であり、値が重み付けされて合計されるか、正規化されて合計されて、全体コストを生成することができる。さらに、場合によっては、コスト関数または値の合計が正規化されて、全体コストを判定することができる。多くの場合、車線変更を実行するためにできるだけ多くの時間を車両に提供するために、最長の車線変更（つまり、最長の持続時間を有する車線変更）のコストが最も低くてもよい。
【００５２】
次いで、コンピューティングデバイスは、考えられる異なる移行または車線変更に対応するノードのペアを反復処理し、上記のようなコスト関数を使用して、ノードの各ペアの全体コストを特定することができる。この点について、コンピューティングデバイス１１０は、最初にノードのペア８１０の全体コストを判定し、その後、ノードのペア８２０の全体コストを判定し、最後にノードのペア８３０の全体コストを判定することができる。例えば、コンピューティングデバイスは、「２５００」に等しい、ノードのペア８１０の全体コスト、「２０００」に等しい、ノードのペア８２０の全体コストを判定することができる。
【００５３】
考えられる異なる移行に対応するノードのペアを反復処理した後、コンピューティングデバイスは、特定のノードのペアを選択することができる。例えば、すべてのノードのペアのうち全体コストが最も低いノードのペアが選択され得る。この点について、ノードＢおよびＧに対応するノードのペア８２０が、全体コストが最も低いものとして選択され得る。
【００５４】
次いで、この選択されたペアが、車線を変更するために車両を操縦する方法を判定するために車両のコンピューティングデバイスによって使用され得る。この点について、コンピューティングデバイスは、これらのノードを使用して、選択されたノードのペアの一方のノードからそのペアの他方のノードへ、または選択されたノードのペアの２つのノードの間を通過する車両の将来の位置を定義する１つ以上のパスまたは軌跡を生成することができる。例えば、図９は、経路６７０をたどり、交差点６２４で右折するために、ノードＢとＧの間を通過する車両を含む軌道９７０を示す。次いで、車線変更を完了するために、車両を制御して１つ以上の軌道をたどることができる。
【００５５】
さらに、車両が、選択されたノードのペアを使用して変更を行うことができない場合、選択されたノードのペア間で車線を変更するためのコストが増加する可能性がある。次いで、この増加は、後で使用するために、例えば地図内に保存され得る例えば、過去に選択したノードのペア間の車線変更を車両が逃した回数が増えると、将来、同じノード間のこの個別のコスを増やし、同様にこれらのノード間の移行の全体コストを大きくする。これにより、車両が将来のその区域での車線変更に対してその車線変更（つまり、これらの２つのノード）を選択する可能性を減らすことにより、車両が特定の車線変更を行えないという無限ループに陥ることを回避できる。これは、ループの車線変更の全体コストが一定である場合に、全体コストが最小である２つのノード間の車線変更を車両が行うことができない場合、車両が無限ループに陥る可能性がある（つまり、車線を変更できずに、サークルをまわり続ける）サークルで車両が車線変更を試みるケースに特に関連があり得る。
【００５６】
さらに、車両が選択されたノードのペアに対して車線変更を行うことができず、その車線変更が目的地に到達する唯一の方法である場合、コンピューティングデバイス１１０は、目的地に実際には到達できないと判定することができる。そのような場合、コンピューティングデバイス１１０は、できるだけ早くプルオーバーし、新しい目的地を選択し、サーバコンピューティングデバイス４１０、コンシェルジュワークステーション４４０、または乗員乗客のクライアントコンピューティングデバイスなどから支援またはさらなる指示を要求し得る。
【００５７】
例えば、図１０は、ロータリー１０００の例である。この例では、車両１００は、ポイント１０１０とポイント１０１０の間のロータリー１０００のまわりに車両を導く経路（図示せず）をたどるために、ポイント（またはノード）１０１０でロータリーに入り、ポイント（またはノード）１０２０でロータリーを出る必要があることがある。現在、車両１００は内側車線１０３０を走行しているが、ポイント１０１０でロータリー１０００を出るために外側車線１０３２に変更しなければならない。コンピューティングデバイス１１０は、内側車線１０３０と外側車線１０３２との間の移行に全体コストが最も小さいノードのペアがノードＰおよびＱであると判定していることがある。しかしながら、なんらかの理由、例えば、移行を完了するのに十分な時間または距離がないためか、または他の車両または物体が車両１００の移行を妨げているために、車両１００がノードＰとＱの間の移行を完了することができない場合、車両１００は、内側車線１０３０のサークル１０００のまわりをループすることがある。特定の状況では、このループが不明確になることさえある。したがって、これを回避するために、ノードＰとＱとの間の移行の全体コストを増やすことにより、コンピューティングデバイス１１０は、車線変更のための別のノードのペアを特定することができ、したがって、異なるノードのペア間の別の場所で車線変更をもたらすことができ、ポイント１０２０またはおそらくポイント（またはノード）１０４０のいずれかでロータリー１０００を出発し、車両の最終目的地がどこにあっても再ルーティングすることができ得る。
【００５８】
これらのコストの増加は、時間的に制限される可能性がある。例えば、コストの増加が、この１回のトリップのみ、営業時間中のみ、週末のみ、次の２０分間のみ有効としてもよい。実際の例として、車線内の特定のノードを妨害している配達、ゴミ収集などの静止車両が、車両の車線変更の実行を妨げることがある。ただし、これらの車両は短時間で移動することが予想されるため、コスト増加について２０分程度の短時間制限が適切であり得る。同様に、車両が交通量のために車線変更を行うことができない場合、次の１時間だけ、同じ曜日の同じ時間帯など、少し長いまたはより具体的な時間制限が使用され得る。上記のサークルの例では、困難が続く可能性が高いため、時間制限がないことがある。これにより、車両は、経時的に同じ車線変更のコストを削減または減らすことができ得る。
【００５９】
車両のコンピューティングデバイスはまた、ノードのペアの個々のコストの増減を他の車両と共有し得る。例えば、この情報は、ネットワークを介して、もしくは所定の距離（１マイル程度）内の車両１００Ａなどの近くの車両にブロードキャストされるか、車両の集団の全部の車両にブロードキャストされるか、または派遣サービスから情報を受信する他の車両の全部もしくは一部に中継する派遣サーバに送信され得る。
【００６０】
いくつかの例では、特定の状況に応じて、個別のコストが調整されるか、スケールが変更されることがある。例えば、２つのノード間の車線変更の継続時間の個々のコストは、トラフィックまたは時刻に応じて自動的に増減することがある。また、この情報は地図情報に記憶されてもよい。
【００６１】
ローカルに最適化されたソリューションを使用して単一の車線変更の状況を考慮することに加えて、コンピューティングデバイスは実際に複数の車線変更の影響を一度に考慮することがある。例えば、車両１００が車線Ｘから車線Ｙに、車線Ｙから車線Ｚに連続して複数の車線変更を行う必要がある場合、ＸからＹに、およびＹからＺに移動する機会が多くなることがある。場合によっては、ＸからＹへの最善なソリューションが、ＹからＺへの車線変更の機会を制限または妨げることがある。この点について、ノードと移行のセットがルーティングネットワークを形成する。したがって、コンピューティングデバイス１１０は、ネットワークを介して全体的に最適化された経路を選択してもよい。つまり、ＸからＹに、ＹからＺに変更する場合を検討するときに、コンピューティングデバイスは、ＸからＹに移動し、ＹからＺに移動する総コストを最小化する車線変更の機会を選択してもよい。これらのいずれもこれらの車線変更に対するそれぞれの局地的最適ソリューションでないことがあるが、全体の総コストは最小化され得る。
【００６２】
図１１は、プロセッサ１１０などの１つ以上のプロセッサによって実行され得る、車両１００などの自律型車両をルーティングするためのいくつかの例の例示的なフロー図１１００を含む。例えば、ブロック１１１０で、車両は、第１の車線内の位置を表す第１の複数のノードと、第１の車線とは異なる第２の車線内の位置を表す第２の複数のノードとを特定する地図情報を使用して、第１の車線の経路に沿って操縦される。ブロック１１２０で、操縦中に、車両がいつ変更を行うべきかが、第１の複数のノードのうちの第１のノードを第２の複数のノードのうちの第２のノードに接続するコストを評価することによって判定される。ブロック１１３０で、車線を第１の車線から第２の車線に変更するために評価が使用される。
【００６３】
特段の記述がない限り、前述の代替例は、相互に排他的ではないが、独自の利点を達成するために様々な組み合わせで実施することができる。上述した特徴のこれらおよび他の変形ならびに組み合わせは、特許請求の範囲によって定義される主題から逸脱せずに利用され得るため、前述の実施形態の説明は、特許請求の範囲によって定義された主題を限定するものとしてではなく、例示するものとしてみなされるべきである。加えて、本明細書に説明された実施例、ならびに「など」、「含む」などとして表現された語句の提供は、特許請求の範囲の主題を特定の例に限定するものと解釈されるべきではなく、むしろ、それらの例は、多くの可能性のある実施形態のうちの単なる１つを例示することが意図されている。さらに、異なる図面中の同じ参照番号は、同じまたは類似の要素を識別することができる。
【図１】
2021505459.tif 000003
【図２Ａ】
2021505459.tif 000004
【図２Ｂ】
2021505459.tif 000005
【図３】
2021505459.tif 000006
【図４】
2021505459.tif 000007
【図５】
2021505459.tif 000008
【図６】
2021505459.tif 000009
【図７】
2021505459.tif 000010
【図８】
2021505459.tif 000011
【図９】
2021505459.tif 000012
【図１０】
2021505459.tif 000013
【図１１】
2021505459.tif 000014
【国際調査報告】
2021505459.tif 000015
2021505459.tif 000016